@charset "utf-8";
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td { margin: 0; padding: 0;}
body {
    overflow-x: hidden;
    font-family: 
       'M PLUS 1p', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Noto Sans", "Noto Sans JP", "Helvetica Neue",
        "Hiragino Sans", "Yu Gothic", "Meiryo", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
        font-weight: 500;
}


ul { list-style: none; }
fieldset,img { border: 0; vertical-align: top; overflow: hidden; }
a {color:#ff7c7c; text-decoration:none; transition: color 0.4s;  }
a:hover {color:#c0000a; text-decoration: none;}
img{ max-width:100%;}


.sp_none{ display: block; }
.pc_none{ display: none; }
.an_scl{ opacity: 0; }


.red_cl{ color:#eb000c; }
.white_cl{ color:#fff; }
.black_cl{ color: #000; }

.fs14{ font-size:0.7em; line-height: 150%; }
.fs16{ font-size:0.8em; line-height: 160%; }
.fs18{ font-size:0.9em; line-height: 160%; }
.fs22{ font-size:1.1em; line-height: 170%; }
.fs24{ font-size:1.2em; line-height: 170%; }
.fs26{ font-size:1.3em; line-height: 170%; }
.fs28{ font-size:1.4em; line-height: 170%; }
.fs30{ font-size:1.5em; line-height: 160%; }
.fs32{ font-size:1.6em; line-height: 150%; }
.fs34{ font-size:1.7em; line-height: 140%; }
.fs36{ font-size:1.8em; line-height: 140%; }
.fs38{ font-size:1.9em; line-height: 140%; }
.fs40{ font-size:2em; line-height: 120%; }
.fs60{ font-size:3em; line-height: 120%; }

.fws{ font-weight: 300; }
.fwb{ font-weight: 600; }

.align_center{text-align: center;}
.align_left{text-align: left;}
.align_right{text-align: right;}

.small-text {
    font-size: 0.7em; /* 元のフォントサイズの70%にする */
}

.palt{font-feature-settings: "palt";-webkit-font-feature-settings: "palt";}



.pd_t10{ padding-top: 0.1rem; }
.pd_t20{ padding-top: 0.2rem; }
.pd_t30{ padding-top: 0.3rem; }
.pd_t40{ padding-top: 0.4rem; }
.pd_t50{ padding-top: 0.5rem; }
.pd_t70{ padding-top: 0.7rem; }
.pd_b10{ padding-bottom: 0.1rem; }
.pd_b20{ padding-bottom: 0.2rem; }
.pd_b30{ padding-bottom: 0.3rem; }
.pd_b40{ padding-bottom: 0.4rem; }
.pd_b50{ padding-bottom: 0.5rem; }
.pd_b70{ padding-bottom: 0.7rem; }


:root{
	--htmlfont:100px;
}




/******************************************************************/
html{ font-size:var(--htmlfont); /* opacity: 0; transition: opacity 1s;visibility: hidden; */}
html.pgshow{ opacity: 1;visibility: visible; }
/* html.wf-active,html.loading-delay{visibility: visible;} */
body{font-size: 0.2rem; opacity: 1; transition: opacity 0.6s; line-height:155%; font-weight: 400;position: relative; }
.bgmob{--sc: 0px; position: fixed; top: 0; left: 0; width:calc(100% + 1px); height: 100vh; background: #faf4fa; z-index: 1; overflow: hidden;}
	.bgmob .picbg{ width: 100%; height: 100%; display: block; position: relative; }
	.bgmob .picbg img{ object-fit: cover; width: 100%; height: 100%; }
	.bgpop{animation: translateY 8s infinite cubic-bezier(.445,.05,.55,.95); }
	.pop_01{ position: absolute; top: 0; left:calc(50% + 0.7rem); margin-top:calc(2.77rem - var(--sc) * 1.1); width: 4.82rem; z-index: 2; /* animation: fadeInins 1.3s infinite linear; */ animation-delay:.1s; }
	.pop_02{ position: absolute; top: 0; left:calc(50% - 3.8rem); margin-top:calc(.77rem + var(--sc) * 0.6); width: 1.61rem; z-index: 2; animation-delay:1.1s; }
	.pop_03{ position: absolute; top: 0; left:calc(50% + 5.8rem); margin-top:calc(6.55rem - var(--sc) * 0.9); width: 1.06rem; z-index: 2; animation-delay:2.4s; }
	.pop_04{ position: absolute; top: 0; left:calc(50% - 6.2rem); margin-top:calc(6.3rem + var(--sc) * 1.2); width: 0.69rem; z-index: 2; animation-delay:1.6s; }
	.pop_05{ position: absolute; top: 0; left:calc(50% - 8.9rem); margin-top:calc(10rem - var(--sc) * 1.6); width: 1.18rem; z-index: 2;  animation-delay:0.3s;}
	.pop_06{ position: absolute; top: 0; left:calc(50% + 7.2rem); margin-top:calc(11rem - var(--sc) * 3.9); width: 0.8rem; z-index: 2; animation-delay:1.9s; }



/* loading ani */
.loading{height: 100vh; overflow: hidden; opacity: 0;}
/* loading ani */



/* wrap */
.wrap{ position: relative; z-index: 10; }
header{ display: block; max-width: 100%;margin: 0 auto -2% auto;padding:0; box-sizing: border-box; position: relative; text-align: center;}
	.headinpre{display: inline-block; }
	.top{ position: relative; }
	.top img{ width: 100%; }
	.top_tx{position: absolute; top:0%; left: 50%;  width:1200px; max-width:69.36%;transform: translate(-50%,0); z-index: 10;}
	.top_logo{position: absolute; top:5.513%; left: 50%;  width: 420px; max-width:24.27%;transform: translate(-50%,0); z-index: 10; }
	.top_info{ position: absolute; top:59.43%; left:50%; width: 964px; max-width:55.7%; transform: translate(-50%,0); z-index: 10; }
		.top_tx_ph{display: inline-block;}
		.topinfo_ph{ position: relative; z-index: 12; }
		.topinfo_bg{ position: absolute; top: 0; left: 0; width: 100%; z-index: 10; }


/* menu */
.menu_mob{ width: 100%; box-sizing:border-box; margin-top:49%; position: absolute; bottom:0; left:0; width: 100%;}
.menulds{ font-size: 0.21rem; line-height: 110%; color:#ad002d; font-weight:bold; padding: 0rem 0.2rem 0.1rem 0.2rem; box-sizing:border-box;}
.menu_inlist{ display:flex; justify-content:center; }
.menu_inlist li{ --mt:0rem; transition:margin 0.8s; }
	.news_mn{width: 1.62rem;margin-top:calc(1.17rem - var(--mt));}
	.release_mn{width: 2.2rem;margin:calc(0rem - var(--mt)) 0.37rem 0 0.22rem;}
	.event_mn{width: 1.8rem;margin:calc(1.17rem - var(--mt)) 0.45rem 0 0;}
	.profile_mn{width: 2.14rem;margin-top:calc(0.48rem - var(--mt));}

.menu_inlist li a{ position: relative; display: block; }
.menu_inlist li:hover{--mt:0.15rem;}


/*.sccmod .menulds{ position: fixed; top: 0; left: 0; width: 100%; z-index: 100; padding:0 0.2rem;background: #000; }
.sccmod .menu_inlist li a{padding:0.5em 0.2rem; }
*/




.main{position: relative; z-index: 1;}

	#news.inner_mob{margin-top: 0;}
	.inner_mob{ margin: 1rem auto 0.3rem auto; position: relative; z-index: 5;width: 1200px; max-width: 100%; padding: 0 0.5rem;box-sizing: border-box; }
		.mob_title{--phw:2.8rem;--sc:#f1d9bf;text-align: center; margin: 0rem 0 0.2rem 0; position: relative;}
		.mob_title img{ height:1.4rem;}
		.mob_title::before{content: ""; display: block; position: absolute; top: calc(50% - 1px);left: 0; width: calc(50% - var(--phw) / 2); height: 2px; background-image: linear-gradient(to right, #f4d6e9, #fff);box-shadow: 0 0 0.3rem  0.05rem var(--sc);}
		.mob_title::after{content: ""; display: block; position: absolute; top: calc(50% - 1px);right: 0; width: calc(50% - var(--phw) / 2); height: 2px; background-image: linear-gradient(to left, #f4d6e9, #fff);box-shadow: 0 0 0.3rem  0.05rem var(--sc);}


		.inner_cont{padding-top:0.2rem;}
		.inner_cont02{ width: 960px; max-width:calc(100% - 0.8rem);padding: 0.5rem 0.4rem;margin: 0 auto;}
		.inner_cont03{ width: 960px; max-width:100%;margin: 0 auto;}
		.inner_cont04{ width:1100px; max-width:96%;margin: 0 auto;}

		.newslist{ padding:0; font-size:0.8em; line-height:1.3em; }
			.newslist_in{display: flex; width: 100%; padding:1.625em 4.0625em; margin-bottom:0.2rem; background:#fdfbfd; position:relative; border-radius:20em; box-sizing:border-box; transition: all 0.4s;}
			 .newslist_in::before{content: ">"; position: absolute; top: calc(50% - 0.7em); right: 1em;color: #e66fcc; font-size: 1.4em; line-height: 1em;}
				.newstime{ width:8.2em; color:#ff6d9d; }
				.newstit{ width:calc(100% - 8.2em); color:#ae7575; }
			.newslist_in:hover{background: #f7e9f3;}

		.title_s01{ font-size:2.4em; line-height:2em; text-shadow: 0 0 0.3em #ae7575, 0 0 0.5em #ae7575;color:#fff; text-align:center; font-weight:300; }
		.title_s02{ font-size:1.8em; line-height:1.3em; text-shadow: 0 0 0.3em #ae7575, 0 0 0.5em #ae7575;color:#fff; text-align:center; font-weight:300; }
		.tx_s01{ font-size:1.5em; line-height:1.2; padding-top:1em; color:#ff6d9d; }


		.conbox{ background:linear-gradient(-45deg,#d8ccfd ,#fdbcd4); padding:0.6rem 0rem; border-radius:0.46rem;  margin:0.5rem 0; display: flex;}
			.cdinner{ width:50%; box-sizing:border-box; padding:0 0.6rem; display:flex; flex-wrap:wrap;  }
			.conbox .cdinner:nth-child(1){ border-right:1px solid #fff; }
			.cd_pic{ padding:0 0.6rem; }
			.ico_01{color: #ff6d9d; background: #fff; padding: 0.3em 0.5em; line-height: 1; border-radius: .2em; display: inline-block; margin-bottom: 0.1rem;}
			.cd_info{font-size:0.9em; line-height: 2.1em; color: #fff; text-align: center;letter-spacing: -0.05em; padding: 1.5em 0 0 0; width: 100%;}
			.cd_index{padding-top:2.5em; margin: 3em 0.6rem 0 0.6rem; color:#fff; width: 100%; border-top:1px solid #fff;margin-top:3em;}



			.premobs{ display: flex; flex-wrap: wrap; margin:1em 0 4em 0;background: linear-gradient(-45deg, rgb(216,204,253,0.7), rgb(253,188,212,0.7));position: relative; border-radius:0.46rem}
				.pre_img{ width: 32.4%; position: relative; z-index: 10;}
				/*.pre_img img{position: relative;top: -1em;left: -1em;height: 100%;width: 100%;object-fit: cover;object-position: top center;}*/
				.pre_cont{ width:67.6%; box-sizing: border-box; padding: 2em 1em 2em 2em;  line-height: 180%;position: relative; z-index: 10; }
					.prename{ font-size: 1.8em; line-height: 1; padding-bottom: 0.9em; color: #ff6d9d; letter-spacing: 0.3em;font-weight: 500; }
					.name_en{ font-size: 0.8em; display: inline-block; padding-left: 0.8em; font-weight: 400; letter-spacing: 0; }
					.prectin{color:#fff;}
						/*.prectin{ height: 23.5em; overflow-y: auto; padding-right: 1em; font-feature-settings: "palt" 1; }
						.prectin::-webkit-scrollbar {width:0.5em;height:0.5em;}
						.prectin::-webkit-scrollbar-track {background:rgba(0,0,0,0); border-radius:2em;}
						.prectin::-webkit-scrollbar-thumb {background:rgba(0,0,0,0.1); border-radius:2em;}
						.prectin::-webkit-scrollbar-thumb:hover {background:rgba(0,0,0,0.35) }*/

			.ban_mbs01{ display:inline-block; font-size:1.1em; line-height:1.2; padding:0.4em 2em; border-radius:5em; background: linear-gradient(-45deg, #c2aeff, #ff99bf, #c2aeff); background-repeat: repeat-x; background-size: 200% 100%;color:#fff; transition: all 0.5s;}
			.ban_mbs01:hover{ color:#fff0f0; background-position:50% 0; }


/* ------wrap----- */


/*page*/
	.innermob{ width: 100%; padding:2em; margin-bottom:0.4rem; background:rgb(253,251,253, 0.5); color:#4f2727; position:relative; border-radius:1em; box-sizing:border-box; }
		.newsin_title{ font-weight:400; font-size:1.3em; line-height:1.3; padding-bottom:0.2em; color:#ae7575;}
		.newsin_time{ color:#ff6d9d; font-size: 0.9em; display: inline-block; padding-bottom: 1em;}



.text_ins07{padding-left: 0.64em; text-indent:-0.64em; padding-top: 0.15em; padding-bottom: 0.15em; line-height: 140%; }
.text_in01{padding-left: 1em; text-indent:-1em; line-height: 150%; padding-bottom: 0.3em; }
.text_in02{padding-left: 2em; text-indent:-2em; }
.text_in03{padding-left: 3em; text-indent:-3em; }
.text_in04{padding-left: 4em; text-indent:-4em; }
.text_in045{padding-left: 4.5em; text-indent:-4.5em; }
.text_in05{padding-left: 5em; text-indent:-5em; }

.page_up{opacity: 0; position: fixed; bottom: 1.2rem; right: 0.3rem; z-index: 20; transition: opacity 0.8s;pointer-events: none; width: 1.6rem; max-width:8%; display: block;}
.page_up.visible {opacity: 1;pointer-events: auto;}
footer{ display: block; padding:0.6rem 1em 0.5rem 1em; text-align: center;  position: relative; z-index: 10;background:linear-gradient(-45deg,#d8ccfd ,#fdbcd4);}
	.footinner_l{ display: flex; flex-wrap: wrap;justify-content: center }
	.footinner_l img{ max-height: 100%;}
	.ban_bandai{ height:0.5rem; margin-right: 0.2rem; }
	.ban_lantis{ height:0.33rem; }
	footer .ftcopy{font-size: 0.7em; line-height:1.2;  display: block; color: #fff; padding-top: 0.25rem;}
	footer .ftcopy a{color: #fff;}



/* animation */
.scoll_ani{opacity: 0;}
.animated {animation-fill-mode: both;}
.fadeIn {
    animation-name: fadeIn;
    animation-duration: 1s;
}

.fadeInZoom {
    animation-name: fadeInZoom;
    animation-duration: 1s;
}

.fadeInUp {
    animation-name: fadeInUp;
    animation-duration: 1s;
}

.fadeInDown {
    animation-name: fadeInDown;
    animation-duration: 1s;
}

.fadeInline {
    animation-name: fadeInline;
    animation-duration: 1s;
}

@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes fadeInins {
    from { opacity: 0.6; }
    50% { opacity: 1; }
    to {opacity: 0.6;}
}


@keyframes fadeInZoom {
    from { opacity: 0; transform: scale(0.5); }
    to { opacity: 1; transform: scale(1); }
}

@keyframes fadeInUp {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes fadeInDown {
    0% { opacity: 0; transform: translateY(-20px); }
    100% { opacity: 1; transform: translateY(0); }
}

@keyframes fadeInline {
    from { opacity: 0; transform: translateX(-50px); }
    to { opacity: 1; transform: translateX(0); }
}
@keyframes translateY {
	0%, 100% {transform: translateY(0);}
	50% {transform: translateY(-0.6rem);}
}



@media screen and (max-width:1920px) {
	.top{width: 1200px;max-width: 100%; margin: 0 auto;}
	.top img{max-width: none; width: 160%;margin-left: -30%;}
}





@media screen and (max-width:1200px) {
	:root{--htmlfont:8.33vw;}
}




@media screen and (max-width:768px) {
	:root{--htmlfont:13.33vw;}

	html{ width: 100%; overflow-x: hidden; }
	body{ overflow-x: hidden; font-size: 0.2rem;}
	.sp_none{ display: none; }
	.pc_none{ display: block; }



	header{ width: 100%;margin-bottom: -2%;padding-bottom: 3%;}
	/* .menu_mob{top:4.25rem;} */
	.mob_title img{height: 1.2rem;}

	.newslist{font-size:1em;}
		.newslist_in::before{right: 0.7em;}
		.newslist_in{padding: 1.2em 2.3em;}

	.title_s01{font-size: 2em;line-height: 2em;}
	.conbox{ flex-wrap:wrap; }
	.cdinner{ width:100%;padding-top:0.6rem; }
	.conbox .cdinner:nth-child(1){border:0;padding-top:0;}
	.cd_info{ font-size:1.1em; }

	footer .ftcopy{font-size:9px;}
	.page_up{bottom: 0.6rem; max-width:10%;  }



}



/* 注釈（small）を詰める */
.newsin_txc small {
  display: block;        /* 独立させて制御しやすく */
  line-height: 1.6;      /* 行間を狭く（1.1〜1.25で調整） */
  margin: .2em 0;        /* 余白も最小限に */
}
/* small の直後に置かれた <br> を無効化（余計な空き対策） */
.newsin_txc small + br { display: none; }



