/*=====================================
	TEMP css
====================================== */

/*	reset
============================== */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video,main {margin:0;padding:0;border:0;font-size:100%;}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main {display:block;}
body {font-family:Verdana,"Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1;}
ol,ul {list-style:none;}
blockquote,q {quotes:none;}
blockquote:before,blockquote:after,q:before,q:after {content:'';content:none;}
table {border-collapse:collapse;border-spacing:0;}
wbr:after {content:"\00200B";}

/*	TBS reset
============================== */
.alt {position:absolute;top:-5000px;left:-9999px;}
.clearfix:after {content:"";clear:both;display:block;}
.hide-txt {text-indent:110%;white-space:nowrap;overflow:hidden;}
.fp-causion {display:none;}
.nocontxt {-webkit-touch-callout: none;-webkit-user-select: none;user-select: none;-webkit-user-drag:none;}
.nocontxt img {pointer-events: none;}
@media all and (min-width:768px) {
.alt-pc {position:absolute;top:-5000px;left:-9999px;}
.clearfix-pc:after {content:"";clear:both;display:block;}
.hide-txt-pc {text-indent:110%;white-space:nowrap;overflow:hidden;}
}
@media all and (max-width:767px) {
.alt-smp {position:absolute;top:-5000px;left:-9999px;}
.clearfix-smp:after {content:"";clear:both;display:block;}
.hide-txt-smp {text-indent:110%;white-space:nowrap;overflow:hidden;}
}
div.embed-tbsplayer {
background-color:#000;
position:relative;
height:0;
padding-top:56.25%;
}
div.embed-tbsplayer .tbs-player {
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
}
div.embed-tbsplayer-audio {
background-color:#fff;
}
div.embed-tbsplayer-audio .tbs-player {
height:46px;
}
div.lbx-overlay {
z-index:10000;position:absolute;background-color:#000;width:100%;height:100%;left:0;top:0;right:0;bottom:0;opacity:0.9;
}

/*	both
============================== */
#wrapper{
	width: 100%;
	height: 100%;
}
.cover{
	
}
.z-index-ie{
	z-index:2;
}

li{
	list-style: none;
}

/* text */
body {
	font-family: "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	word-break: break-all;
	color:#222222;
	-webkit-text-size-adjust:100%;
	-ms-text-size-adjust: 100%;
}
a:link {
	text-decoration:none;
	color:#7a6846;
}
a:visited {
	text-decoration:none;
	color:#7a6846;
}
a:hover {
	text-decoration:underline;
	color:#7a6846;
	opacity: 1; filter: alpha(opacity=100); -ms-filter: "alpha(opacity=100)"; transition:all 0.5s ease
}
a:active {
	text-decoration:underline;
	color:#7a6846;
}
.copyright a:link{color:#ffffff; text-decoration:none}
.copyright a:visited{color:#ffffff; text-decoration:none}
.copyright a:active{color:#ffffff; text-decoration:none}
.copyright a:hover{color:#ffffff; text-decoration:none; opacity: 1; filter: alpha(opacity=100); -ms-filter: "alpha(opacity=100)"; transition:all 0.5s ease;
}

img{
	vertical-align:bottom;
}
a:hover img{ 
	opacity:0.5;
	transition:0.5s;
}
.link-container {
	display: block;
	text-decoration: none;
	color: inherit;
}

.link-container .divlink {
	transition: opacity 0.5s ease;
	opacity: 1;
}

.link-container:hover .divlink {
  opacity: 0.6;
}
.cleartext {
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-bottom:2em;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
.alttext{
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}
.tbs-gfooter-btn,
.tbs-gfooter-share{
	z-index: 998 !important;
}
@media all and (min-width: 768px) {
	.br-pc {
		display:block;
	}
	.br-sp {
		display:none;
	}
	.sp_none{
		display:block;
	}
	.youtube_wrap {
		width: 560px;
		margin: 0 auto;
	}
	.pc-only{
		display:block;
	}
	.sp-only{
		display:none;
	}
}
@media all and (max-width: 767px) {
	.br-pc {
		display:none;
	}
	.br-sp {
		display:block;
	}
	.sp_none{
		display:none;
	}
	.pc-only{
		display:none;
	}
	.sp-only{
		display:block;
	}
}


/*	background
============================== */
#section-intro{
	background-image: 
		url('../img/item03@2x.png'), 
		url('../img/item04@2x.png'), 
		url('../img/item06_b@2x.png'); 
}
#section-news{
	background-image: 
		url('../img/item01@2x.png'), 
		url('../img/item02@2x.png'), 
		url('../img/item05@2x.png'); 
}
#section-comics{
	background-image: 
		url('../img/item08@2x.png'), 
		url('../img/item07_b@2x.png'); 
	overflow: hidden;
}

@media all and (min-width: 768px) {
	#section-intro{
		background-position: 
			calc(50% - 630px) 25%, 
			calc(50% + 650px) 70%, 
			calc(50% - 620px) bottom;
		background-repeat: no-repeat;
		background-size: 
			296px,
			285px,
			131px;
	}
	#section-news{
		background-position: 
			calc(50% + 630px) 35%, 
			calc(50% - 650px) 70%, 
			calc(50% + 660px) bottom;
		background-repeat: no-repeat;
		background-size: 
			159px,
			170px,
			156px;
	}
	#section-comics{
		background-position: 
			calc(50% - 630px) 25%, 
			calc(50% + 620px) bottom;
		background-repeat: no-repeat;
		background-size: 
			157px,
			216px;
	}
	
}

@media all and (max-width: 767px) {
	#section-intro{
		background-position: 
			calc(50% - 55%) 33%, 
			calc(50% + 53%) 52%,
			calc(50% + 45%) 95%;
		background-repeat: no-repeat;
		background-size: 
			29.6%,
			28.5%,
			13.1%;
	}
	#section-news{
		background-position: 
			calc(50% + 45%) 10%, 
			calc(50% - 53%) 52%,
			calc(50% + 55%) 95%;
		background-repeat: no-repeat;
		background-size: 
			15.9%,
			17.0%,
			15.6%;
	}
	#section-comics{
		background-position: 
			calc(50% - 50%) 15%, 
			calc(50% + 55%) bottom;
		background-repeat: no-repeat;
		background-size: 
			15.7%,
			21.6%;
	}
	
}



/*	text
============================== */
.sans-serif{
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}
.serif{
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
}
.font-color01{
	color: #222222;
}
.font-color02{
	color: #e4007f;
}
.update-block p{
	transform: scale(1.05, 1);
}
.update-text a:link {
	text-decoration:none;
	color:#e4007f;
}
.update-text a:visited {
	text-decoration:none;
	color:#e4007f;
}
.update-text a:hover {
	text-decoration:underline;
	color:#e4007f;
}
.update-text a:active {
	text-decoration:none;
	color:#e4007f;
}


/*	header
============================== */

.header-area{
	width: 100%;
	background: #111111;
	position: sticky;
	top: 0;
	z-index: 998;
}
.header-logo img,
.modal-open img{
	width: 100%;
}
#humberger{
	display: inline-block;
	box-sizing: border-box;
	cursor: pointer;
}
#humberger:hover div{
  background-color: #ffffff;
}
#humberger div{
	background-color: #e4007f;
	display: inline-block;
	box-sizing: border-box;
	transition: background-color 0.3s ease;
}

@media all and (min-width: 768px) {
	.header-area{
		padding: 16px 0 16px;
	}
	.header-logo{
		width: 200px;
		margin: 0 auto;
	}
	#humberger{
		width: 80px;
		height: 40px;
		position: absolute;
		top: 18px;
		right: 24px;
	}
	#humberger div{
		position: absolute;
		left: 0;
		height: 3px;
		width: 80px;
	}
	#humberger div:nth-of-type(1) {
		bottom: 40px;
	}
	#humberger div:nth-of-type(2) {
		bottom: 20px;
	}
	#humberger div:nth-of-type(3) {
		bottom: 0;
	}
}

@media all and (max-width: 767px) {
	.header-area{
		padding: 10px 0 10px;
	}
	.header-logo{
		width: 30%;
		margin: 0 auto;
	}
	#humberger{
		width: 40px;
		height: 20px;
		position: absolute;
		top: 30%;
		right: 1.5%;
	}
	#humberger div{
		position: absolute;
		left: 0;
		height: 2px;
		width: 40px;
	}
	#humberger div:nth-of-type(1) {
		bottom: 20px;
	}
	#humberger div:nth-of-type(2) {
		bottom: 10px;
	}
	#humberger div:nth-of-type(3) {
		bottom: 0;
	}
}


/*	footer
============================== */

.top-footer{
	width: 100%;
	background: #000;
	text-align: center;
}
.footer-logo img{
	width: 100%;
}
.sns_links img{
	width: 100%;
}

@media all and (min-width: 768px) {

	.top-footer{
		padding: 100px 0 100px;
	}
	.footer-inner{
		width: 980px;
		margin: 0 auto;
	}
	.footer-logo{
		width: 640px;
		margin: 0 auto 40px;
	}
	.sns_links{
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0 auto 32px;
	}
	.sns-btn-list{
		display: flex;
	}
	.sns-text{
		width: 210px;
		margin-right: 10px;
	}
	.sns-btn{
		width: 60px;
		margin-left: 20px;
	}
}

@media all and (max-width: 767px) {
	
	.top-footer{
		padding: 10% 0 20%;
	}
	.footer-inner{
		width: 90%;
		margin: 0 auto;
	}
	.footer-logo{
		width: 80%;
		margin: 0 auto 1em;
	}
	.sns_links{
	}
	.sns-btn-list{
		display: flex;
		justify-content: center;
	}
	.sns-text{
		width: 50%;
		margin: 0 auto;
	}
	.sns-btn{
		width: 15%;
		margin: 5%;
	}
	
}


/*	H2
============================== */
.top-h2{
	
}
.top-h2-intro{
	background: url("../img/top_h2_intro@2x.png") no-repeat;
}
.top-h2-news{
	background: url("../img/top_h2_news@2x.png") no-repeat;
}
.top-h2-comics{
	background: url("../img/top_h2_comics@2x.png") no-repeat;
}
.top-h2-staffcast{
	background: url("../img/top_h2_staffcast@2x.png") no-repeat;
}
.top-h2-character{
	background: url("../img/top_h2_character@2x.png") no-repeat;
}
.top-h2-movie{
	background: url("../img/top_h2_movie@2x.png") no-repeat;
}
.top-h2-music{
	background: url("../img/top_h2_music@2x.png") no-repeat;
}
.top-h2-streaming{
	background: url("../img/top_h2_streaming@2x.png") no-repeat;
}
.top-h2-story{
	background: url("../img/top_h2_story@2x.png") no-repeat;
}
.top-h2-disc{
	background: url("../img/top_h2_disc@2x.png") no-repeat;
}
.copyright{
	color: #ffffff;
}

@media all and (min-width: 768px) {
	.top-h2{
		width: 960px;
		height: 160px;
		margin: 0 auto 32px;
		background-size: cover;
	}
	.copyright{
		font-size: 14px;
		line-height: 1.5em;
		letter-spacing: 0.05em;
	}

}

@media all and (max-width: 767px) {
	.top-h2{
		width: 100%;
		margin: 0 auto 0.5em;
		padding-top: 13%;
		background-size: contain;
	}
	.copyright{
		font-size: 0.7em;
		line-height: 1.5em;
		letter-spacing: 0.05em;
	}
	
}



/*	TOP
============================== */
#section-top{
	width: 100%;
	position: relative;
}
#section-top img{
	width: 100%;
}
.top-right{
	background: url("../img/bg_white@2x.jpg") no-repeat;
	background-size: 100%;
}
#wrapper a img {
  display: block;
  transition: opacity 0.5s ease;
  opacity: 1;
}

#wrapper a img:hover {
  opacity: 0.6;
}
.top-main-wrap{
}

.visual-img {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.visual-img img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

/*NEWS*/
.update-block{
	background: #ffffff;
	border: 2px solid #e4007f;
	color: #e4007f;
	box-shadow: 0px 5px 0px rgba(17, 17, 17, 0.4);
}
.btn-news-more{
	background: #e4007f;
}

/* COMICS */
.comics-text-block{
	background-image: url("../img/bg_white.jpg");
	background-image: image-set(url(../img/bg_white.jpg) 1x, url(../img/bg_white@2x.jpg) 2x);
	background-image: -webkit-image-set(url(../img/bg_white.jpg) 1x, url(../img/bg_white@2x.jpg) 2x);
	background-size: cover;
	background-position: center center;
	border: 2px solid #e4007f;
	box-shadow: 0px 5px 0px rgba(17, 17, 17, 0.4);
}

/* MOVIE */

.swiper-slide img{
	width: 100%;
}
.swiper-button-next img,
.swiper-button-prev img{
	width: 100%;
}


@media all and (min-width: 768px) {
	/* COMMON */
	.top-content-section{
		padding: 140px 0 20px;
	}
	.section-inner{
		width: 980px;
		margin: 0 auto;
	}
	
	/* TOP */
	.top-main-wrap{
		width: 100%;
		min-width: 980px;
		padding: 0 0 120px;
		background-image: url("../img/bg_visual_sq2.jpg");
		background-image: image-set(url("../img/bg_visual_sq2.jpg") 1x, url("../img/bg_visual_sq2@2x.jpg") 2x);
		background-image: -webkit-image-set(url("../img/bg_visual_sq2.jpg") 1x, url("../img/bg_visual_sq2@2x.jpg") 2x);
		background-attachment: fixed;
		background-position: center 80%;
		background-size: cover;
		background-repeat: no-repeat;
	}
	#section-top{
		display: flex;
		min-width: 980px;
	}
	.top-visual{
		/*
		width: 100%;
		height: 64.53125%;
		height: -webkit-calc(1920 / 1239 * 100%);
		height: calc(1920 / 1239 * 100%);
		background-image: url(../img/top_visual_yoko.png);
		background-image: image-set(url("../img/top_visual_yoko.png") 1x, url(../img/top_visual_yoko.png) 2x);
		background-image: -webkit-image-set(url(../img/top_visual_yoko.png) 1x, url(../img/top_visual_yoko.png) 2x);
		background-size: cover;
		background-repeat: no-repeat;
		padding-top: 64.53125%;
		position: relative;
		opacity: 1;
 		transition: opacity 1.0s ease-in-out;
		*/
		/*FINISH VISUAL*/
		position: relative;
		aspect-ratio: 1920 / 1358; /* ← これ一発でOK（近似：高さ 70.729%） */
		width: 100%;
		overflow: hidden;
		margin-bottom: 48px;
	}
	/* 出し分け */
	.visual-img--pc { display: block; }   /* ← 修正 */
	.visual-img--sp { display: none; }    /* ← 修正 */
	.sidebar-visual{
		width: 5%;
		position: absolute;
		bottom: 8%;
		right: 1%;
	}
	.visual-nav{
		
	}
	.visual-nav li{
		margin: 10% 0 0;
		
	}
	.top-left{
		width: 50%;
	}
	.top-right{
		width: 50%;
	}
	.top-right-inner{
		width: 78.125%;
		margin: 12% auto;
	}
	.top-logo{
		width: 40.625%;
		position: absolute;
        top: 27.2%;
        left: 6.4%;
	}
	.top-onair{
		width: 37.70833333%;
		position: absolute;
		top: 43.6%;
		left: 8.1%;
	}
	.top-catch{
		width: 34.63541667%;
		position: absolute;
		top: 15.6%;
		left: 9.6%;
	}
	.top-text{
		margin: 0 auto 9.4%;
	}
	.top-banner-movie{
		margin: 0 auto 5.7%;
	}
	.top-banner-x{
		
	}
	
	/* INTRO */
	.top-introtext{
		width: 960px;
		height: 604px;
		background-image: url("../img/top_intro_text_0520.png");
		background-image: image-set(url("../img/top_intro_text_0520.png") 1x, url("../img/top_intro_text_0520@2x.png") 2x);
		background-image: -webkit-image-set(url("../img/top_intro_text_0520.png") 1x, url("../img/top_intro_text_0520@2x.png") 2x);
		background-size: cover;
		background-repeat: no-repeat;
	}
	
	/* NEWS */
	#section-news{
		padding: 0% 0% 0% !important;
	}
	.update-list{
		width: 960px;
		margin: 0 auto;
	}
	.update-block{
		margin: 0 auto 32px;
		padding: 32px 24px;
		display: flex;
		font-weight: bold;
		line-height: 1.6em;
	}
	.update-date{
		width: 10%;
		font-size: 14px;
		margin: 0 24px 0 0;
	}
	.update-text{
		width: 80%;
		font-size: 20px;
		line-height: 1.5em;
	}
	.btn-news-more{
		width: 164px;
		height: 26px;
		margin: 0 auto;
		padding: 10px 398px;
	}
	.btn-news-more img{
		width: 100%;
	}
	
	/* COMICS */
	.comics-text-block{
		width: 860px;
		margin: 0 auto;
		padding: 50px 50px 80px;
		border-radius: 50px;
	}
	.comics-text{
		width: 860px;
		height: 450px;
		margin: 0 auto;
		background-image: url("../img/comics_text_pc.png");
		background-image: image-set(url(../img/comics_text_pc.png) 1x, url(../img/comics_text_pc@2x.png) 2x);
		background-image: -webkit-image-set(url(../img/comics_text_pc.png) 1x, url(../img/comics_text_pc@2x.png) 2x);
		background-size: cover;
	}
	
	/* MOVIE */
	.swiper-slide{
	}
	.swiper-button-next{
		width: 50px;
		position: absolute !important;
		right: 132px !important;
	}
	.swiper-button-prev{
		width: 50px;
		position: absolute !important;
		left: 132px !important;
	}
	
}

@media all and (max-width: 767px) {
	
	/* COMMON */
	.top-content-section{
		padding: 10% 0 0%;
	}
	.section-inner{
		width: 94%;
		margin: 0 auto;
	}
	
	/* TOP */
	.top-main-wrap{
		position: relative;
		width: 100%;
		padding: 0 0 16%;
	}
	.top-main-wrap::before{
		content: "";
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background-image: url("../img/bg_visual_sq2.jpg");
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center bottom;
		z-index:-1;
	}
	.top-visual{
		/*
		width: 100%;
		height: 140.234375%;
		height: -webkit-calc(1280 / 1795 * 100%);
		height: calc(1280 / 1795 * 100%);
		background-image: url(../img/sp_visual.jpg);
		background-image: image-set(url("../img/sp_visual.jpg") 1x, url(../img/sp_visual.jpg) 2x);
		background-image: -webkit-image-set(url(../img/sp_visual.jpg) 1x, url(../img/sp_visual.jpg) 2x);
		background-size: cover;
		background-repeat: no-repeat;
		padding-top: 140.234375%;
		position: relative;
		*/
		/*FINISH VISUAL*/
		
		width: 100%;
		height: 70.729166666%;
		height: -webkit-calc(1920 / 1358 * 100%);
		height: calc(1920 / 1358 * 100%);
		position: relative;
		/*
		background-image: url("../img/top_visual_finish2.jpg");
		background-image: image-set(url("../img/top_visual_finish2.jpg") 1x, url("../img/top_visual_finish2.jpg") 2x);
		background-image: -webkit-image-set(url("../img/top_visual_finish2.jpg") 1x, url("../img/top_visual_finish2.jpg") 2x);
		background-size: cover;
		background-repeat: no-repeat;
		padding-top: 70.729166666%;
		*/
	}
	.visual-img--pc { display: none; }
	.visual-img--sp { display: block; }
	.sidebar-visual{
		width: 11%;
        position: absolute;
        bottom: 2%;
        right: 2%;
	}
	.visual-nav li{
		margin: 10% 0 0;
		
	}
	/* クリックしやすく */
	.visual-nav li { cursor: pointer; }
	#section-top{
		width: 100%;
	}
	
	.top-left{
		width: 100%;
	}
	.top-right{
		width: 100%;
	}
	.top-right-inner{
		width: 80%;
		margin: 0 auto;
		padding: 6% 0 10%;
	}
	.top-logo{
		margin: 0 auto 4%;
	}
	.top-text{
		margin: 0 auto 8%;
	}
	.top-banner-movie{
		margin: 0 auto 5.7%;
	}
	.top-banner-x{
		
	}
	.top-logo{
		width: 71.625%;
		position: absolute;
		top: 13.2%;
		left: 14.4%;
	}
	.top-onair{
		width: 66.4%;
        position: absolute;
        top: 26.6%;
        left: 17.2%;
	}
	.top-catch{
		display: none;
	}
	
	/* INTRO */
	.top-introtext{
		width: 100%;
		padding-top: 122%;
		background-image: url("../img/top_intro_text_sp_0520.png");
		background-image: image-set(url("../img/top_intro_text_sp_0520.png") 1x, url("../img/top_intro_text_sp_0520@2x.png") 2x);
		background-image: -webkit-image-set(url("../img/top_intro_text_sp_0520.png") 1x, url("../img/top_intro_text_sp_0520@2x.png") 2x);
		background-size: contain;
		background-repeat: no-repeat;
	}
	
	/* NEWS */
	#section-news{
	}
	.update-list{
		width: 90%;
		margin: 0 auto;
	}
	.update-block{
		margin: 0 auto 1em;
		padding: 1em 1em;
		font-weight: bold;
		line-height: 1.6em;
	}
	.update-date{
		font-size: 0.8em;
	}
	.update-text{
		font-size: 1em;
	}
	.btn-news-more{
		width: 26%;
		margin: 0 auto;
		padding: 2% 32%;
	}
	.btn-news-more img{
		width: 100%;
	}
	
	/* COMICS */
	.comics-text-block{
		width: 80%;
		margin: 0 auto;
		padding: 10% 5% 5%;
		border-radius: 50px;
	}
	.comics-text{
		width: 90%;
		margin: 0 auto;
		padding-top: 82%;
		background-image: url("../img/comics_text_sp.png");
		background-size: contain;
		background-repeat: no-repeat;
	}
	
	/* MOVIE */
	.swiper-button-next{
		width: 5% !important;
		position: absolute !important;
		right: 10% !important;
	}
	.swiper-button-prev{
		width: 5% !important;
		position: absolute !important;
		left: 10% !important;
	}
}


/*	UNDER TEMP
============================== */

@media all and (min-width: 768px) {
	.under-content-section{
		padding: 100px 0 20px;
	}
	.under-main-wrap{
		width: 100%;
		padding: 0 0 90px;
		background-image: url("../img/bg_visual_sq2.jpg");
		background-image: image-set(url("../img/bg_visual_sq2.jpg") 1x, url("../img/bg_visual_sq2@2x.jpg") 2x);
		background-image: -webkit-image-set(url("../img/bg_visual_sq2.jpg") 1x, url("../img/bg_visual_sq2@2x.jpg") 2x);
		background-attachment: fixed;
		background-position: center 70%;
		background-size: cover;
		background-repeat: no-repeat;
	}
}

@media all and (max-width: 767px) {
	.under-content-section{
		padding: 10% 0 0%;
	}
	.under-main-wrap{
		position: relative;
		width: 100%;
		padding: 0 0 16%;
	}
	.under-main-wrap::before{
		content: "";
		display: block;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background-image: url("../img/bg_visual_sq2.jpg");
		background-size: cover;
		background-position: center bottom;
		z-index:-1;
	}
}


/*	NEWS
============================== */
.newspage-wrap{
	background-color:rgba(255,255,255,.8);
	border: 2px solid #e4007f;
	color: #e4007f;
	box-shadow: 0px 5px 0px rgba(17, 17, 17, 0.4);
}
.news-header{
	border-bottom: 2px solid #e4007f;
}
.news-date{
	font-weight: bold;
}
.page-h4{
	color: #ffffff;
	background: #222222;
}
.page-img,{
	width: 100%;
}
.page-img-50{
	width: 50%;
}
.page-img-30{
	width: 30%;
}
.page-img img,
.page-img-column img,
.page-img-column-land img,
.page-img-30 img,
.page-img-50 img{
	width: 100%;
}
.page-text,
.page-text-caution{
	color: #222222;	
}


@media all and (min-width: 768px) {
	.newspage-wrap{
		width: 776px;
		margin: 0 auto 32px;
		padding: 90px 90px;
		line-height: 1.6em;
	}
	.news-header{
		margin: 0 0 28px;
		padding: 0 0 14px;
	}
	.news-date{
		font-size: 14px;
		margin: 0 0 8px;
	}
	.news-title{
		font-size: 28px;
		margin: 0;
		line-height: 1.5em;
	}
	.page-img{
		margin: 2em auto 2em;
	}
	.page-img-30,
	.page-img-50{
		margin: 2em auto 2em;
	}
	.page-h4{
		font-size: 20px;
		line-height: 1.4em;
		margin: 2em 0 1em;
		padding: 0.2em 0.5em;
	}
	.page-text{
		font-size: 16px;
		margin: 1em 0 1.5em;
		line-height: 1.6em;
	}
	.page-text-caution{
		font-size: 12px;
		margin: -1em 0 2em;
		line-height: 1.5em;
	}
	.page-text-small{
		font-size: 12px;
		margin: 1em 0 2em;
		line-height: 1.5em;
	}
	.news-2column{
		display: flex;
	}
	.page-img-column{
		width: 200px;
		margin: 20px 0 0 0;
	}
	.page-text-column{
		width: 530px;
		margin-left: 30px;
	}
	.page-img-column-land{
		width: 350px;
		margin: 20px 0 0 0;
	}
	.page-text-column-land{
		width: 380px;
		margin-left: 30px;
	}
}

@media all and (max-width: 767px) {
	.newspage-wrap{
		width: 80%;
		margin: 0 auto 2em;
		padding: 8% 6%;
		line-height: 1.6em;
	}
	.news-header{
		margin: 0 0 1.5em;
		padding: 0 0 1em;
	}
	.news-date{
		font-size: 0.8em;
		margin: 0 0 8px;
	}
	.news-title{
		font-size: 1.1em;
		margin: 0;
		line-height: 1.5em;
	}
	.page-img,
	.page-img-30,
	.page-img-50{
		margin: 2em auto 2em;
	}
	.page-img-column{
		width: 50%;
		margin: 2em auto;
	}
	.page-img-column-land{
		width: 80%;
		margin: 2em auto;
	}
	.page-h4{
		font-size: 1em;
		line-height: 1.4em;
		margin: 1.5em 0 1em;
		padding: 0.2em 0.5em;
	}
	.page-text{
		font-size: 0.9em;
		margin: 1em 0 1.5em;
		line-height: 1.5em;
	}
	.page-text-caution{
		font-size: 0.7em;
		margin: -1em 0 2em;
		line-height: 1.5em;
	}
	.page-text-small{
		font-size: 0.7em;
		margin: 1em 0 2em;
		line-height: 1.5em;
	}

}


/*	STAFF&CAST
============================== */
.staffcastpage-wrap{
	background-color:rgba(255,255,255,.8);
	border: 2px solid #e4007f;
	color: #e4007f;
	box-shadow: 0px 5px 0px rgba(17, 17, 17, 0.4);
}
.h3-staff img,
.h3-cast img{
	width: 100%; 
}
.staff-list,
.cast-list{
	color: #222222;
	font-weight: bold;
	letter-spacing: 0.2em;
}

@media all and (min-width: 768px) {
	.staffcastpage-wrap{
		width: 716px;
		margin: 0 auto 32px;
		padding: 120px 120px;
		line-height: 1.6em;
	}
	.stafcast-list-wrap{
		display: flex;
	}
	.stafflist-block{
		width: 330px;
		margin: 0 60px 0 30px;
	}
	.castlist-block{
		width: 330px;
	}
	.h3-staff,
	.h3-cast{
		width: 260px;
		height: 30px;
		margin: 0 0 48px;
	}
	.staff-list li,
	.cast-list li{
		margin: 0 0 36px;
		
	}
	.staff-roll{
		font-size: 18px;
		line-height: 1.4em;
		margin: 0 0 12px;
	}
	.staff-name{
		font-size: 28px;
		line-height: 1.5em;
		letter-spacing: 0.1em;
	}
	.staff-name-gensaku{
		font-size: 28px;
		line-height: 1.5em;
		letter-spacing: 0.1em;
		margin: 0 0 0 -0.5em;
	}
	.staff-name-small{
		font-size: 12px;
		margin: 1em 0 0;
	}
}

@media all and (max-width: 767px) {
	.staffcastpage-wrap{
		width: 64%;
		margin: 0 auto 2em;
		padding: 12% 12%;
		line-height: 1.6em;
	}
	.stafcast-list-wrap{
		
	}
	.stafflist-block{
		margin: 0 auto 2em;
	}
	.castlist-block{
		margin: 0 auto;
	}
	.h3-staff,
	.h3-cast{
		width: 80%;
		margin: 0 0 1.3em;
	}
	.staff-list li,
	.cast-list li{
		margin: 0 0 1em;
		
	}
	.staff-roll{
		font-size: 0.8em;
		line-height: 1.4em;
		margin: 0 0 0.5em;
	}
	.staff-name{
		font-size: 1.2em;
		line-height: 1.5em;
	}
	.staff-name-gensaku{
		font-size: 1.2em;
		margin: 0 0 0 -0.5em;
	}
	.staff-name-small{
		font-size: 0.6em;
		letter-spacing: 0.1em;
		margin: 1em 0 0;
	}
}


/*	CHARACTER
============================== */
.charapage-wrap{
	background-color:rgba(0,0,0,.6);
	border: 2px solid #e4007f;
	color: #e4007f;
	box-shadow: 0px 5px 0px rgba(17, 17, 17, 0.4);
}
.chara-contents-left img,
.chara-contents-right img,
.btn-chara-prev img,
.btn-chara-next img,
.chara-nav img{
	width: 100%;
}


@media all and (min-width: 768px) {
	.charapage-wrap{
		width: 776px;
		margin: 0 auto 32px;
		padding: 90px 90px 30px;
		line-height: 1.6em;
	}
	.chara-contents-wrap{
		display: flex;
	}
	.chara-contents-left{
		width: 390px;
	}
	.chara-contents-right{
		width: 390px;
		margin: 40px 0 0;
	}
	.chara-stand-01{
		margin: 70px 0 0;
	}
	.btn-chara{
		position: relative;
	}
	.btn-chara-prev,
	.btn-chara-next{
		width: 74px;
		height: 127px;
	}
	.btn-chara-prev{
		position: absolute;
		top: 220px;
		left: -74px;
	}
	.btn-chara-next{
		position: absolute;
		top: 220px;
		right: -74px;
	}
	.chara-nav{
		display: flex;
		margin: 0 auto 24px;
		justify-content: center;
	}
	.chara-nav li{
		width: 96px;
		margin: 10px;
	}
}

@media all and (max-width: 767px) {
	.charapage-wrap{
		width: 80%;
		margin: 0 auto 2em;
		padding: 8% 6%;
		line-height: 1.6em;
	}
	.chara-contents-wrap{
		
	}
	.chara-contents-left{
		width: 90%;
		margin: 0 auto 1em;
	}
	.chara-contents-right{
		width: 95%;
		margin: 0 0 0 4%;
	}
	.chara-stand-01{
		margin: 0 0 1em;
	}
	.btn-chara{
		position: relative;
	}
	.btn-chara-prev,
	.btn-chara-next{
		width: 10%;
	}
	.btn-chara-prev{
		position: absolute;
		top: 20vw;
		left: -2vw;
	}
	.btn-chara-next{
		position: absolute;
		top: 20vw;
		right: -2vw;
	}
	.chara-nav{
		display: flex;
		margin: 0 auto 1em;
		justify-content: center;
	}
	.chara-nav li{
		width: 20%;
		margin: 2%;
	}
}


/*	ONAIR
============================== */
.onairpage-wrap{
	background-color:rgba(255,255,255,.8);
	border: 2px solid #e4007f;
	box-shadow: 0px 5px 0px rgba(17, 17, 17, 0.4);
}

.stream-list{
	font-weight: bold;
	text-align: center;
}
.stream-text{
	font-weight: bold;
	border-top: 2px solid #222;
}
.onair-h4{
	text-align: center;
	margin: 0 auto 0.5em;
	color: #e4007f;
}
.stream-name a:link{
	text-decoration:underline;
	color:#222;
}
.stream-name a:visited{
	text-decoration:none;
	color:#222;
}
.stream-name a:hover{
	text-decoration:none;
	color:#e4007f;
}
.stream-name a:active{
	text-decoration:none;
	color:#222;
}

/* List */
.stream-list{
	background: rgba(255,255,255,0.5);
}
.stream-list tr{
	border: solid 1px #222222;
}
.stream-list td{
	border: solid 1px #222222;
	padding: 0.5em 1em;
}
.stream-date{
	color: #e4007f;
	font-weight: bold;
}


@media all and (min-width: 768px) {
	.onairpage-wrap{
		width: 756px;
		margin: 0 auto 32px;
		padding: 120px 100px;
		line-height: 1.6em;
	}
	.stream-read{
		width: 643px;
		height: 193px;
		margin: 0 auto;
		background-image: url("../onair/img/streaming_text_02.png");
		background-image: image-set(url("../onair/img/streaming_text_02.png") 1x, url("../onair/img/streaming_text_02@2x.png") 2x);
		background-image: -webkit-image-set(url("../onair/img/streaming_text_02.png") 1x, url("../onair/img/streaming_text_02@2x.png") 2x);
		background-size: cover;
	}
	.stream-text{
		margin: 40px auto 0;
		padding: 32px 0 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.stream-text li{
		font-size: 24px;
		margin: 0.5em;
	}
	.stream-text li span{
		font-size: 18px;
	}
	.stream-list-footer{
		font-size: 20px;
		margin: 24px auto 32px;
	}
	.stream-caution{
		font-size: 16px;
		line-height: 1.5em;
		margin: 0 0 0.5em;
	}
	
	/* List */
	.stream-wrap{
		width: 700px;
		margin: 40px auto 0;
	}
	.stream-block{
		margin: 0 0 40px;
	}
	.onair-h4{
		font-size: 24px;
	}
	.stream-list{
		width: 100%;
	}
	.stream-list tr{
		width: 100%;
		padding: 0.5em 1em;	
	}
	.stream-name{
		width: 55%;
	}
	.stream-date{
		width: 45%;
		line-height: 1.5em;
	}
	.stream-date span{
		font-size: 80%;
	}

}

@media all and (max-width: 767px) {
	.onairpage-wrap{
		width: 82%;
		margin: 0 auto 2em;
		padding: 12% 4%;
		line-height: 1.6em;
	}
	.stream-read{
		width: 94%;
		margin: 0 auto 1em;
		padding-top: 24%;
		background-image: url("../onair/img/streaming_text_02.png");
		background-size: contain;
		background-repeat: no-repeat;
	}
	.stream-text{
		margin: 1em auto 0;
		padding: 1em 0 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.stream-text li{
		font-size: 0.9em;
		margin: 0.3em 0.5em;
	}
	.stream-text li span{
		font-size: 0.6em;
	}
	.stream-list-footer{
		font-size: 0.8em;
		margin: 1em auto 2em;
	}
	.stream-caution{
		font-size: 0.6em;
		line-height: 1.5em;
		margin: 0 0 1em;
	}
	
	/* List */
	.stream-wrap{
		width: 95%;
		margin: 0 auto 5%;
	}
	.stream-block{
		margin: 0 0 2em;
	}
	.stream-list{
		width: 100%;
		font-size: 0.8em;
		line-height: 1.4em;
	}
	.stream-list tr{
		width: 100%;
		padding: 0.5em 1em;	
	}
	.stream-name{
		width: 55%;
	}
	.stream-date{
		width: 45%;
		line-height: 1.5em;
	}
	.stream-date span{
		font-size: 60%;
	}
	
}

/*	MUSIC
============================== */

.music-op-block{
	border-bottom: 2px solid #e4007f;
}
.music-title span{
	font-weight: lighter;
}
.h3-music img,
.artist-img img{
	width: 100%;
}
.music-title-block{
	text-align: center;
	font-weight: bold;
}

@media all and (min-width: 768px) {
	.music-op-block{
		width: 760px;
		margin: 0 auto 64px;
		padding: 0 0 64px;
	}
	.music-ed-block{
		width: 760px;
		margin: 0 auto;
		padding: 0 0 32px;
	}
	.h3-music{
		width: 260px;
		height: 30px;
		margin: 0 auto 32px;
	}
	.music-artist{
		font-size: 56px;
		margin: 0 auto 40px;
	}
	.music-title{
		font-size: 48px;
		margin: 0 auto 24px;
	}
	.music-caption{
		font-size: 20px;
		margin: 0 auto 10px;
	}
	.music-com{
		font-size: 14px;
	}
	.artist-img{
		width: 560px;
		margin: 40px auto;
	}
	.artist-comment{
		font-size: 18px;
		line-height: 1.5em;
	}

}

@media all and (max-width: 767px) {
	.music-op-block{
		width: 100%;
		margin: 0 auto 3em;
		padding: 0 0 3em;
	}
	.music-ed-block{
		width: 100%;
		margin: 0 auto;
		padding: 0 0 0;
	}
	.h3-music{
		width: 60%;
		margin: 0 auto 1.0em;
	}
	.music-artist{
		font-size: 2em;
		margin: 0 auto 0.3em;
	}
	.music-title{
		font-size: 1.25em;
		margin: 0 auto 0.3em;
	}
	.music-caption{
		font-size: 0.6em;
		margin: 0 auto 0.8em;
	}
	.music-com{
		font-size: 0.4em;
	}
	.artist-img{
		width: 80%;
		margin: 1em auto 2em;
	}
	.artist-comment{
		font-size: 0.9em;
		line-height: 1.5em;
	}
}


/*	DISC
============================== */

.disc-title span{
	font-weight: lighter;
}
.disc-title-block{
	text-align: center;
	font-weight: bold;
	border-bottom: 2px solid #e4007f;
}
.h4-disc{
	line-height: 1.4em;
}
.disc-text{
	line-height: 1.5em;
}
.disc-img img{
	width: 100%;
}
.disc-text small{
	font-size: 70%;
}
/* 特典 */
.disc-tokuten-wrap{
	border-top: 2px solid rgb(228, 0, 127);
}
.tokuten-shop{
	margin: 0 0 0.5em;
	font-weight: bolder;
}
.tokuten-item{
	margin: 0 0 0.5em;
	line-height: 1.4em;
}
.tokuten-price{
	font-style: italic;
	margin: 0 0 1em;
}
.tokuten-shop small,
.tokuten-item small{
	font-size: 70%;
}
.tokuten-shop a:link{
	text-decoration:underline;
	color:#e4007f;
}
.tokuten-shop a:visited{
	text-decoration:none;
	color:#e4007f;
}
.tokuten-shop a:hover{
	text-decoration:none;
	color:#e4007f;
}
.tokuten-shop a:active{
	text-decoration:none;
	color:#e4007f;
}
.tokuten-img{
	border: 1px solid #000;
}
.tokuten-img img{
	width: 100%;
}

@media all and (min-width: 768px) {
	.disc-block{
		width: 760px;
		margin: 0 auto 64px;
		padding: 0 0 0px;
	}
	.disc-title-block{
		margin: 0 0 32px 0;
	}
	.disc-title-small{
		font-size: 32px;
		margin: 0 auto 12px;
	}
	.disc-title{
		font-size: 48px;
		margin: 0 auto 24px;
	}
	.h4-disc{
		font-size: 1.2em;
		margin: 2em 0 0.5em;
	}
	.disc-text{
		font-size: 1em;
		margin: 0 0 1em;
	}
	.disc-img{
		width: 100%;
		margin: 1em 0 3em;
	}
	/* 特典 */
	.disc-tokuten-wrap{
		margin: 56px 0 0;
		padding: 32px 0 0;
	}
	.tokuten-wrap{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
	}
	.tokuten-block{
		width: 46%;
		margin: 2% 1.5%;
	}
	.tokutensp-block{
		width: 45%;
		margin: 2% 1.5%;
	}
	.tokuten-shop{
		font-size: 20px;
	}
	.tokuten-item{
		font-size: 16px;
		line-height: 1.4em;
		height: 2.5em;
	}
	.tokuten-price{
		font-size: 12px;
	}
	.tokuten-img{
		width: 100%;
	}
}

@media all and (max-width: 767px) {
	.disc-block{
		width: 100%;
		margin: 0 auto 1em;
	}
	.disc-title-block{
		margin: 0 0 1em 0;
		padding: 0 0 0.5em 0;
	}
	.disc-title-small{
		font-size: 1.0em;
		margin: 0 auto 0.3em;
	}
	.disc-title{
		font-size: 1.4em;
		margin: 0 auto 0.3em;
	}
	.h4-disc{
		font-size: 1em;
		margin: 1.5em 0 0.5em;
	}
	.disc-text{
		font-size: 0.9em;
		margin: 0 0 1em;
	}
	/* 特典 */
	.disc-tokuten-wrap{
		margin: 2em 0 0;
		padding: 1em 0 0;
	}
	.tokuten-wrap{
		width: 100%;
		margin: 0 auto;
	}
	.tokuten-block,
	.tokutensp-block{
		width: 100%;
		margin: 0.5em 1.5% 2em;
		text-align: center;
	}
	.tokuten-shop{
		font-size: 1.1em;
	}
	.tokuten-item{
		font-size: 0.9em;
	}
	.tokuten-price{
		font-size: 0.8em;
	}
	.tokuten-img{
		width: 60%;
		margin: 0 auto;
	}
}



/*	MOVIE
============================== */
.movie-list{
	text-align: center;
	font-weight: bold;
}
.movie-img img{
	width: 100%;
}
@media all and (min-width: 768px) {
	.movie-list{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	.movie-block{
		width: 46%;
		margin: 2%;
	}
	.movie-title{
		font-size: 20px;
		margin: 0.5em 0 0;
	}

}

@media all and (max-width: 767px) {
	.movie-list{

	}
	.movie-block{
		width: 90%;
		margin: 0 auto 5%;
	}
	.movie-title{
		font-size: 1em;
		margin: 0.5em 0 0;
	}
}


/*	COMICS
============================== */
.comicspage-wrap{
	background-color:rgba(255,255,255,.8);
	border: 2px solid #e4007f;
	color: #e4007f;
	box-shadow: 0px 5px 0px rgba(17, 17, 17, 0.4);
}

@media all and (min-width: 768px) {
	.comicspage-wrap{
		width: 860px;
		margin: 0 auto 32px;
		padding: 80px 50px;
		line-height: 1.6em;
	}
	.comics-text-inner{
		width: 860px;
		height: 450px;
		margin: 0 auto;
		background-image: url("../img/comics_text_pc.png");
		background-image: image-set(url(../img/comics_text_pc.png) 1x, url(../img/comics_text_pc@2x.png) 2x);
		background-image: -webkit-image-set(url(../img/comics_text_pc.png) 1x, url(../img/comics_text_pc@2x.png) 2x);
		background-size: cover;
	}
}

@media all and (max-width: 767px) {
	.comicspage-wrap{
		width: 80%;
		margin: 0 auto 2em;
		padding: 12% 5%;
		line-height: 1.6em;
	}
	.comics-text-inner{
		width: 90%;
		margin: 0 auto;
		padding-top: 82%;
		background-image: url("../img/comics_text_sp.png");
		background-size: contain;
		background-repeat: no-repeat;
	}
	
}


/*	STORY
============================== */
.storypage-wrap{
	background-color:rgba(0,0,0,.6);
	border: 2px solid #e4007f;
	color: #ffffff;
	box-shadow: 0px 5px 0px rgba(17, 17, 17, 0.4);
}
.story-nav img{
	width: 100%;
}
.story-header{
	text-align: center;
	font-weight: bold;
}
.story-img-area{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.story-img{
	box-shadow: 0px 5px 0px rgba(17, 17, 17, 0.4);
}
.story-img img{
	width: 100%;
}

@media all and (min-width: 768px) {
	.storypage-wrap{
		width: 776px;
		margin: 0 auto 32px;
		padding: 60px 90px 90px;
		line-height: 1.6em;
	}
	.story-nav{
		display: flex;
		margin: 0 auto 24px;
		justify-content: center;
	}
	.story-nav li{
		width: 72px;
		margin: 10px;
	}
	.story-header{
		margin: 0 auto 1.5em;
	}
	.story-number{
		font-size: 24px;
		margin: 0 auto 0.3em;
	}
	.story-number span{
		font-size: 32px;
	}
	.story-subtitle{
		font-size: 48px;
	}
	.story-subtitle span{
		font-size: 56px;
	}
	.story-img-area{
		margin: 0 auto 2em;
	}
	.story-img{
		width: 48%;
		margin: 1% 0.5%;
	}
	.story-text{
		font-size: 20px;
		line-height: 1.6em;
	}
}

@media all and (max-width: 767px) {
	.storypage-wrap{
		width: 80%;
		margin: 0 auto 2em;
		padding: 8% 6%;
		line-height: 1.6em;
	}
	.story-nav{
		width: 90%;
		display: flex;
		margin: 0 auto 1em;
		justify-content: center;
	}
	.story-nav li{
		width: 14%;
		margin: 2%;
	}
	.story-header{
		margin: 0 auto 0.8em;
	}
	.story-number{
		font-size: 16px;
		margin: 0 auto 0.3em;
	}
	.story-number span{
		font-size: 20px;
	}
	.story-subtitle{
		font-size: 28px;
	}
	.story-subtitle span{
		font-size: 32px;
	}
	.story-img-area{
		margin: 0 auto 1em;
	}
	.story-img{
		width: 48%;
		margin: 1% 0.5%;
	}
	.story-text{
		font-size: 0.9em;
		line-height: 1.6em;
	}
}



/*	OTHER
============================== */

.tbs-gfooter-share{
	display: none !important;
}

#g-nav-sp{
	position:fixed;
	z-index: -1;
	opacity: 0;
	top:0;
	width:100%;
	height: 100vh;
	background-image: url("../img/bg_visual_sq2.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	transition: all 0.5s;
}
#g-nav-list{
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#111111+0,151515+100 */
	/*background: linear-gradient(to bottom,  #111111 0%,#151515 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	/*
	border-left: 1px solid #7a6846;
	border-right: 1px solid #7a6846;
	box-shadow: 0px 0px 10px #111111;
	*/
}

#g-nav-sp.panelactive{
	opacity: 1;
	z-index:999;
}

.header-area.btnoff{
	opacity: 1;
	z-index:-1;
}


#g-nav-sp.panelactive #g-nav-list{
    /*position: fixed;*/
    z-index: 999; 
    /*width: 100%;*/
    height: 100vh;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}

#g-nav-sp ul {
	width: 100%;
    display: none;
}
#g-nav-sp ul li a,
.g-nav-close a{
	color: #ffffff;
	text-decoration: none;
	font-weight: bold;
	display: inline-block;
	background-color: #000;
	padding: 0.1em 0.3em;
}
#g-nav-sp ul li a:link {
	text-decoration:none;
	color:#fff;
}
#g-nav-sp ul li a:visited {
	text-decoration:none;
	color:#fff;
}
#g-nav-sp ul li a:hover,
.g-nav-close a:hover{
	text-decoration:none;
	color:#e4007f;
}
#g-nav-sp ul li a:active {
	text-decoration:none;
	color:#fff;
}
.g-nav-list-inner{
    position: absolute;
    z-index: 999;
    top:40%;
	left:50%;
    transform: translate(-50%,-50%);
	width: 70%;
}

#g-nav-sp.panelactive ul {
    /*display: block;*/
}

#g-nav-sp li{
	width: 100%;
	margin: 0 0 6%;
	list-style: none;
	text-align: center; 
}
#g-nav-sp li img{
	width: 100%;
}
.sp-nav-logo{
	
}

@media all and (min-width: 768px) {
	#g-nav-sp{
		width: 100%;
	}
	#g-nav-list{
		margin: 0 auto;
	}
	#g-nav-list ul{
		width:700px;
		margin: 0 auto 32px;
		display: flex;
		flex-wrap: wrap;
	}
	#g-nav-list ul li{
		width: 350px;
		font-size: 32px;
	}
	.g-nav-logo{
		width: 480px;
		margin: 0 auto 64px;
	}
	.g-nav-logo img{
		width: 100%
	}
	.g-nav-close{
		margin: 0 auto;
		text-align: center;
		font-size: 24px;
	}
	#g-nav-sp{
		background-position: center bottom;
	}
	

}

@media all and (max-width: 767px) {
	#g-nav-sp{
		width: 100%;
	}
	#g-nav-list{
		margin: 0 auto;
	}
	#g-nav-list ul{
		width:95%;
		margin: 0 auto 32px;
		display: flex;
		flex-wrap: wrap;
	}
	#g-nav-list ul li{
		width: 100%;
		font-size: 1.4em;
		margin: 0 0 1em;
	}
	.g-nav-logo{
		width: 100%;
		margin: 0 auto 2em;
	}
	.g-nav-logo img{
		width: 100%;
	}
	.g-nav-close{
		margin: 0 auto;
		text-align: center;
		font-size: 1em;
	}
	#g-nav-sp{
		background-position: center center;
	}
}


.hide-area{
	display: none;
}
.modaal-close:after, 
.modaal-close:before{
	background:#ccc;	
}
.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before{
	background:#666;
}
.modaal-video-wrap{
	margin: auto 20px;
}

.modaal-overlay{
	background: #000 !important;
}

.modaal-video .modaal-inner-wrapper{
	padding:0;
}


img{
	touch-callout:none;
	user-select:none;
	-webkit-touch-callout:none;
	-webkit-user-select:none;
	-moz-touch-callout:none;
	-moz-user-select:none;
}

/* =========================================================
 * TOP モーダル（1日1回・JST 基準）
 *   - 対応 JS: js/topmodal.js
 *   - 画像  : img/modal_260523.jpg
 *   - 既存モーダル（modaal）とは独立
 * ========================================================= */
.top-modal[hidden]{
	display: none;
}
.top-modal{
	position: fixed;
	inset: 0;
	z-index: 100000;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 4vh 4vw;
	background: rgba(0, 0, 0, 0);
	transition: background-color 0.45s ease;
	box-sizing: border-box;
}
.top-modal.is-open{
	background: rgba(0, 0, 0, 0.72);
}
.top-modal__overlay{
	position: absolute;
	inset: 0;
	cursor: pointer;
}
.top-modal__panel{
	position: relative;
	max-width: 92vw;
	max-height: 90vh;
	display: inline-block;
	opacity: 0;
	transform: scale(0.96) translateY(8px);
	transition: opacity 0.45s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
	will-change: opacity, transform;
}
.top-modal.is-open .top-modal__panel{
	opacity: 1;
	transform: scale(1) translateY(0);
}
@media (prefers-reduced-motion: reduce){
	.top-modal,
	.top-modal__panel{
		transition: none;
	}
	.top-modal__panel{
		transform: none;
	}
}
.top-modal__link{
	display: block;
	line-height: 0;
}
.top-modal__image{
	display: block;
	max-width: 92vw;
	max-height: 90vh;
	width: auto;
	height: auto;
	object-fit: contain;
	cursor: pointer;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.45);
	border-radius: 4px;
}
.top-modal__close{
	position: absolute;
	top: -44px;
	right: 0;
	width: 32px;
	height: 32px;
	padding: 0;
	border: none;
	background: transparent;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	cursor: pointer;
	opacity: 0.85;
	transition: opacity 0.2s ease, transform 0.2s ease;
}
.top-modal__close::before,
.top-modal__close::after{
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 26px;
	height: 1px;
	background: #e4007f;
	transform-origin: center;
}
.top-modal__close::before{
	transform: translate(-50%, -50%) rotate(45deg);
}
.top-modal__close::after{
	transform: translate(-50%, -50%) rotate(-45deg);
}
.top-modal__close:hover,
.top-modal__close:focus-visible{
	opacity: 1;
	transform: rotate(90deg);
}
.top-modal__close:focus{
	outline: none;
}
@media all and (min-width: 769px){
	/* PC のみ画像表示域を約 10% 縮小 */
	.top-modal__panel{
		max-width: 82vw;
		max-height: 80vh;
	}
	.top-modal__image{
		max-width: 82vw;
		max-height: 80vh;
	}
}
@media all and (max-width: 768px){
	.top-modal{
		padding: 6vh 4vw;
	}
	.top-modal__close{
		top: -68px;
		right: 0;
		width: 56px;
		height: 56px;
	}
	.top-modal__close::before,
	.top-modal__close::after{
		width: 44px;
	}
}
