@charset "utf-8";



.comingsoon{ font-size: 36px; line-height: 1em; padding-bottom: 3em;font-style: italic;text-align: center;}


.pop_block{ background-color: #fff; color: #000; border: 14px solid #284150; padding: 50px;}
.pop_block .tit{ font-size: 20px; font-weight: bold; color: #284150; margin-bottom: 40px;}
.pop_block .info_box{ text-align: left; margin-bottom: 40px; border: 1px solid #284150;; padding: 20px 20px 14px;}
.pop_block .info_box .stit{ font-size: 16px; line-height: 1.5em; background-color: #284150;; color: #fff; padding: 5px 12px 8px;}
.pop_block .info_box p{ font-size: 16px; line-height: 1.5em;}
.pop_block .txt_box{ text-align: left; margin-bottom: 40px;}
.pop_block .txt_box .stit{ font-size: 18px; font-weight: bold; margin-bottom: 8px;}
.pop_block .txt_box p{}


@media only screen and (max-width: 769px){
	.comingsoon{ font-size: 24px;}
.cancel{ font-size: 12px; padding: 12px 0; bottom: 0;}

.pop_block{ border: 6px solid #284150; padding: 20px 12px;}
.pop_block .tit{ font-size: 18px; margin-bottom: 20px;}
.pop_block .info_box{ padding: 8px; margin-bottom: 12px;}
.pop_block .info_box .stit{ font-size: 14px; padding: 2px 8px;}
.pop_block .info_box p{ font-size: 14px; line-height: 1.5em;}
.pop_block .txt_box{ margin-bottom: 28px;}
.pop_block .txt_box .stit{ font-size: 16px; margin-bottom: 4px;}
.pop_block .txt_box p{ font-size: 14px; line-height: 1.5em;}
}

/********************** top *******************************/
#top main{ }

#top .container{max-width: 1200px;width: 94%;margin:0 auto;}
.in_container{ max-width:1000px; margin:0 auto;}
/*
.top_catch{mix-blend-mode: overlay; }
.top_catch span{position: fixed; left: 0; bottom: 5vh; width: 100%; background-image: url("../images/main_catch.png"); z-index: 1; height: 100vh; background-repeat: no-repeat; background-position: bottom left; background-size: 50%; }
*/
@media only screen and (max-width: 768px){
.top_catch span{background-size: 100%; bottom: 5vw; }
}

#top .top_main{width: 100%; height: 52vw; margin: 0 0 12vw; position: relative; background-image: url(../images/main_bg_02.jpg); background-repeat: no-repeat; background-position: 14% 0%; background-size: contain; top: 42px;}
.top_main img{width:100%;transition: 0.2s;}

.top_main .main_tit{position:absolute;top: 5.2vw;right: 7vw;width: 40vw;z-index:80;opacity:0;}
.top_main .main_tit h2{margin-bottom: 2.8vw;}
.top_main .main_tit h2 img {filter: drop-shadow(0px 0px 6px rgba(0,0,0,1)) drop-shadow(0px 0px 6px rgba(0,0,0,0.2));}
.top_main .main_tit p{ margin-bottom: 3.3vw;}
.top_main .main_tit a{margin: 0 auto 0.6vw;display: block;line-height: 0;width: 90%;}
.top_main .main_tit a:hover{opacity:0.8;transition: 0.2s;}
.top_main .top_cast{ position: relative; top: 0; right: 0; margin-left:auto; width: 70vw; z-index:70; opacity:0;}


@media only screen and (max-width: 1050px){
	
}


.top #news{width: 100%;max-width: 1400px;margin: 0 auto;display: flex;justify-content: space-between;padding: 0;}
.top #news div.block{width: 46%;}

.top_main .modal_pop{ position: absolute; width: 42vw; top: 39vw; left: 6vw; z-index: 90; opacity: 0; margin-top: 48px;}
.pop_box{ background-color: #000; padding: 3vw 4vw 2vw; color: #fff; text-align: left; border: 3px solid #ffffff; word-break: break-all;}
.pop_box h3{text-align: center;font-size: 24px;font-weight: bold;line-height: 1.5em;margin-bottom: 2em;color: #e60012;}
.pop_box .txt_box{ margin-bottom: 40px;}
.pop_box .txt_box p{ font-size: 16px; line-height: 1.9em; font-weight: bold;}
.pop_box .txt_box p span{}
.pop_box .txt_box a{ text-decoration:underline;}
.pop_box .comment_box{border: 1px solid #e60012;padding: 30px;margin-bottom: 20px;}
.pop_box .comment_box h4{font-size: 20px;font-weight: bold;line-height: 1.5em;margin-bottom: 20px;color: #e60012;}
.pop_box .comment_box h5{ background-color: #e60012; font-size: 16px; font-weight: bold; line-height: 1.5em; padding: 4px 12px; margin-bottom: 8px;}
.pop_box .comment_box p{font-size: 16px;font-weight: bold;line-height: 1.8em;}
.pop_box figure{ line-height: 0; margin-bottom: 40px;}
.pop_box figure img{ max-width: 400px; width: auto;}

.pop_box .cast_com{margin-bottom: 40px;padding-bottom: 40px;border-bottom:1px solid #ccc;}
.pop_box .cast_com.first{ border-top: 1px solid #ccc; padding-top: 20px;}
.pop_box .cast_com dl{float:left;width: 70%;padding-right: 20px;}
.pop_box .cast_com dt{font-size: 24px;line-height: 1.5em;font-weight: bold;margin-bottom: 1em;text-align: center;}
.pop_box .cast_com dt span{ display: block; font-size: 0.8em; line-height: 1em; margin-bottom: 5px;}
.pop_box .cast_com dd{}
.pop_box .cast_com dd p{font-size: 18px;line-height: 1.5em;}
.pop_box .cast_com figure{float:right;width: 30%;}
.pop_box .cast_com figure img{ width:100%;}

.pop_box .cast_com.img_n dl{ width: 100%; float: none; padding-right: 0;}
/* アニメーション */
.intro_loader{ overflow:hidden; height:100vh;}
.loader_bg{ background-color:#000; width:50%; height:100vh; position:absolute; top:0; z-index: 1000;}
.loader_bg.left{ left:0;}
.loader_bg.right{ right:0;}
.loader{background-image:url("../images/top_logo_2.png");background-repeat : no-repeat; background-size:16%; background-position : 50% 46%; z-index:9999; position:absolute; top:0; left:0; width: 100%; height: 100vh; opacity:0; animation: anime_loader 0.4s;  animation-fill-mode:both;}

#news{ opacity:0; transition: 1s;}

@keyframes anime_loader {
0%  { opacity:0;}
100%  { opacity:1;}
}
.intro_r_fo .loader{ animation-fill-mode: inherit;}

.intro00{}
.intro00 .loader_bg{ transition: 0.5s ease-out; width:0;}
.intro00 main{ left:0; transition: 0.4s ease-out; opacity:1;}

.intro01{}
.intro01 .main_tit{ animation: anime_fade 2s; animation-delay:0.3s; opacity:0; animation-fill-mode: both;}
@keyframes anime_fade {
0%  { opacity:0;}
100%  { opacity:1;}
}

.intro02{}
.intro02 .top_cast,
.intro02 .main_tit,
.intro02 header.top,
.intro02 #news,
.intro02 .modal_pop{ opacity:1;}

.in .top_main{ height: auto; margin-top:80px;}
.in .top_main h2{ width: 100%;  opacity:1; top: inherit; right: inherit; margin: 11vw auto 7vw;padding: 7vw 0 4vw;position: relative;}
.in .top_main h2.head_news{max-width: 219px;}
.in .top_main h2.head_about{max-width: 527px;}
.in .top_main h2.head_sc{max-width: 731px;}
.in .top_main h2.head_goods{max-width: 250px;}
.in .top_main h2.head_guide{max-width: 232px;}
.in .top_main h2.head_cast{max-width: 462px;}
.in .top_main h2.head_stream{ max-width: 226px;}
.in .top_main h2.head_dvd{ max-width: 342px;}
.in .top_main h2{}
.twt_area iframe{ height:350px!important; }

.mainvisual{ display:table; overflow:hidden; width:100%;}
.mainvisual figure{  display:table-cell; line-height:0; max-height:90vh; max-width:50%; background-color:#3485c5;}
.mainvisual img{ max-height:90vh; max-width:100%; }
.mainvisual .txtarea{  width:50%; padding:3%; display:table-cell; vertical-align:middle;}

.mainvisual h2{ font-size:24px; margin-bottom:25px; font-weight:bold;}
.mainvisual h3{ font-size:18px; line-height:1em; font-weight:bold;}
.mainvisual h3:after{content:"."; font-size:0; line-height:0; border-bottom:1px solid #003366; display:block; width:36px; padding-top:15px; margin:0 auto 15px;}
.mainvisual .txt{ font-size:16px; line-height:1.6em; text-align:left;}


@media only screen and (max-width: 768px){
.loader{ background-size:40%;}

#top main{ width: 100%;}
#top .top_main{}
#top .top_main{height: 214vw;background-size: 100%;background-repeat: no-repeat;top: 42px;}
.top_main h2{width: 100%;position:inherit;margin:0 auto;display: none;}
.top_main .top_cast{ top: 0; left: 0; right: inherit; margin-left: inherit; width: 100%;}
.top_main .main_tit{width: 88%;position: inherit;right: 0;top: 0;padding-top: 137vw;margin:0 auto;}
.top_main .main_tit a{width: 94%;font-size: 16px;margin-bottom: 8px;}

.top_main .modal_pop{ top:195.1vw; left:3vw; width:94vw;}

.pop_box{border-width: 4px;padding: 20px 12px;}
.pop_box h3{ text-align:left; font-size:17px; margin-bottom: 20px;}
.pop_box .txt_box{ margin-bottom: 24px;}
.pop_box .txt_box p{ font-size: 14px; line-height: 1.6em;}
.pop_box .comment_box{ padding: 12px; margin-bottom:12px;}
.pop_box .comment_box h4{ font-size:16px; font-weight:bold; margin-bottom:12px;}
.pop_box .comment_box h5{ font-size: 14px; padding: 2px 12px; margin-bottom: 6px;}
.pop_box .comment_box p{ font-size: 14px; line-height: 1.7em;}
.pop_box figure{ margin-bottom: 20px;}
.pop_box figure img{ max-width: 100%; width: 100%;}

.pop_box .cast_com{ margin-bottom:20px; padding-bottom:12px;}
.pop_box .cast_com.first{ border-top: 1px solid #ccc; padding-top: 16px;}
.pop_box .cast_com dl{ float:none; width:100%; padding-right: 0;}
.pop_box .cast_com dt{ font-size: 16px; line-height: 1.5em; font-weight: bold; margin-bottom: 16px;}
.pop_box .cast_com dt span{ font-size: 0.7em; margin-bottom: 5px;}
.pop_box .cast_com dd{}
.pop_box .cast_com dd p{ font-size: 13px; line-height: 1.4em;}
.pop_box .cast_com figure{ float:none; width:100%;}

.in .top_main{ margin-bottom:10px; margin-top: 80px; background: none;}
.in .top_main h1{ width:76%; padding:26px 0 0; }
.in .top_main h2{ width: 76%; margin:0 auto;}

.in .top_main h2{ width: 100%;  opacity:1; position: inherit; top: inherit; right: inherit; margin: 26vw auto 20vw;padding: 7vw 0 4vw;position: relative;}
.in .top_main h2.head_news{max-width: 119px;}
.in .top_main h2.head_about{max-width: 247px;}
.in .top_main h2.head_sc{max-width: 251px;}
.in .top_main h2.head_goods{max-width: 150px;}
.in .top_main h2.head_guide{max-width: 132px;}
.in .top_main h2.head_cast{max-width: 192px;}
.in .top_main h2.head_stream{ max-width: 150px;}
.in .top_main h2.head_dvd{ max-width: 200px;}

.in h3{ line-height:1em;}
.in h3 img{ max-height:20vw;}
.in h3.cast{ text-align:left;}

.twt_area iframe{ height:250px!important; width:94vw !important;}

    .top #news{ display: inherit;}
    .top #news div.block{ width: 100%; }    

}
.top h3 {position: relative;margin-bottom: 6vw !important;}
.in .top_main h2:before,
.top h3:before{position: absolute; content: "";background: url(../images/heading_bg.png) center top no-repeat;width: 324px; height: 332px;left: 50%;top: 50%;transform: translate3d(-50%, -50%, 0);z-index: -1;}

/********************** NEWS *******************************/
#news{text-align:left;position:relative;padding:0 0 6vw 0;z-index: 80;}
#news .container{}
#news .skew{}
#news h3{margin-bottom:20px;text-align: center;padding-top: 3vw;}
#news h3 img{ width:auto;}
#news .block{}

#news .news_area{
    width: 100%;margin-bottom: 80px;
}
#news .news_area .top_a{display:block;transition:0.2s;padding: 20px;border-bottom: 1px solid #000;}
#news .news_area .top_a:hover{background-color: rgba(255,255,255,0.1);transition:0.2s;}
#news .news_area dl{margin-bottom: 0;/*font-style: italic;*/}
#news .news_area dt{font-weight:bold;position:relative;padding-left: 5.4em;font-size: 16px;line-height:1.5em;margin-bottom: 0.4em;color: rgb(255, 255, 255);}
#news .news_area dt span{display:block;letter-spacing:0.02em;text-align:left;position:absolute;left:0;top: 2px;font-size: 1em;font-weight: bold;color: #000; font-family: 'Oswald', sans-serif;}
#news .news_area dd{color: rgb(255, 255, 255);font-size: 14px;font-weight: bold;line-height: 1.5em;}
#news .news_area dl a{ color:#011a29; transition:0.3s; display:block;}
#news .news_area dd a:hover,
#news .news_area dt a:hover{ color:#1976a5; transition:0.3s;}

#news .twt_area{}

#news .news_more{text-align:center;width: 50%;display: block;padding: 18px;border: 1px solid #fff;color: #fff; margin: 40px auto 0;font-size: 16px;font-weight: bold;transition: all 0.3s;position:relative;font-style: italic;}
/* #news .news_more:before{ content:""; position:absolute; background-image:url(../images/news_btn_bg.png); background-repeat:repeat-x; background-size:1px; width: calc(100% - 82px); height: 5px; left: 0; top: calc(50% - 3px); transition: all 0.3s;}
#news .news_more:after{content: "\025b6";position: absolute;right: 0;font-size: 10px;color: #1eba88;transition: all 0.3s;}
#news .news_more:hover:before{ background-image:url(../images/news_btn_bg_h.png); transition: all 0.3s;}
#news .news_more:hover:after{ right:-2px;}
#news .news_more:hover:after, */
#news .news_more:hover{ color: #e60012; transition:0.3s;background-color: #fff;}

@media only screen and (max-width: 768px){
#news{ display:inherit; padding:0 0 8vw 0; margin-top:0;}
#news .block{ display:inherit; width:100%; margin-bottom: 20vw;} 

#news h3{ margin-bottom:10px; line-height: 0;}
#news h3 img{ height: 13vw !important;}
.top h3{position: relative;margin-bottom: 20vw !important;}
.in .top_main h2:before,
.top h3:before{position: absolute; content: "";background: url(../images/heading_bg_sp.png) center top no-repeat;width: 220px; height: 220px;left: 50%;top: 50%;transform: translate3d(-50%, -50%, 0);z-index: -1;}

#news .news_more:before{ width: calc(100% - 80px);}

#news .news_area .top_a{padding: 8px 12px;}
#news .news_area{ padding-right:0;}
#news .news_area dl{margin-bottom: 0;}
#news .news_area dt{padding-left: 0;font-size: 14px;line-height: 1.5em;margin-bottom: 4px;}
#news .news_area dt span{margin-bottom: 2px;text-align: left;font-size: 14px;position: relative;}
#news .news_area dd{ font-size:13px; line-height:1.5em;}

#news .news_more{margin: 20px auto 0;padding: 10px 20px;font-size: 16px;width: 100%;}
}


#movie{ max-width:1100px; width:95%; text-align:left; margin:0 auto 4vw;}
#movie h3{ margin-bottom:10px; text-align:left;}
#movie h3 img{ width:auto;}
#movie p{  font-size:18px; font-weight:bold; line-height:1.5em;}
#movie .movie_wrap{ width: 80%; margin:0 auto;}
#movie .movie_wrap .iframe_box{ position: relative; height: 0px; width: 100%; padding-bottom: 56.25%;}
#movie iframe{ width: 100%; height: 100%; position: absolute; top: 0; left: 0;}


@media only screen and (max-width: 768px){
#movie h3{ margin-bottom:10px;}
#movie h3 img{ height: 8vw !important;}
#movie p{ margin-bottom:6px; font-size:16px;}
#movie .movie_wrap{ width:100%; margin-right:0; float:none; margin-bottom:5px;}
}



.cs{ padding:100px 0 200px; width:50%;}
@media only screen and (max-width: 768px){
.cs{ padding:100px 0; width:70%;}
}

/********************** NEWS *******************************/
#news_in{ width:95%; max-width:1000px; margin:0 auto 3vw; text-align:left; position:relative; }
#news_in h3{ margin-bottom:20px}

#news_in .news_area{ width:100%; margin-bottom:100px;}
#news_in .news_area dl{}
#news_in .news_area dt{font-weight:bold;position:relative;padding-left: 5.5em;font-size:20px;line-height:1.4em;margin-bottom: 0.4em;}
#news_in .news_area dt span{display:block;color: #000;width: 6.4em;letter-spacing: 0.02em;text-align: left;position: absolute;left: 0;top: 2px;font-size: 1em; font-family: 'Oswald', sans-serif;}
#news_in .news_area dd{ font-size: 14px; line-height: 1.8em;}
#news_in .news_area a{color: #fff;font-weight: bold;display:block;transition:0.2s;/*font-style: italic;*/padding: 20px;border-bottom: 1px solid #000;}
#news_in .news_area a:hover{ background-color:rgba(255,255,255,0.1); transition:0.2s;}

#news_in .twt_area{ border:1px solid #2cabd4; border-radius:5px;width:36%;}
#news_in .twt_area h2{ background-color:#2cabd4; color:#fff; padding:0 20px; font-size:26px;}

#news_in #tickets .note_box .stit{ color: #ffff01; display: inline-block;}
#news_in #tickets .note_box a{ color: #ffff00;}

.pagination {
	clear: both;
	padding: 20px 0;
	position: relative;
	font-size: 14px;
	line-height: 14px;
        text-align: center;
}
.pagination-box {
	display: inline-block;
}
.pagination span, .pagination a {
	display: block;
	float: left;
	margin: 2px 2px 2px 0;
	padding: 10px 15px 10px 15px;
	text-decoration: none;
	width: auto;
	color: #fff; /* 文字色 */
	background: #2cabd4; /* 背景色 */
}
.pagination a:hover{
	color: #2cabd4; /* マウスホバー時の文字色 */
	background: #fff; /* マウスホバー時の背景色 */
}
.pagination .current{
	padding: 10px 15px 10px 15px;
	/*background: #F9D635; /* 現在のページの文字色 */
	/*color: #47BEA0; /* 現在のページの背景色 */
}
@media only screen and (max-width: 413px) {
.pagination {
	font-size: 12px;
	line-height: 12px;
}
.pagination span, .pagination a {
	padding: 8px 10px 8px 10px;
}
.pagination .current{
	padding: 8px 10px 8px 10px;
}
}


@media only screen and (max-width: 768px){
#news_in{ width:100%;}
#news_in h2{ margin-bottom:5px}
#news_in .news_area{ margin-bottom:25px;}
#news_in .news_area a{ padding: 12px;}
#news_in .news_area dl{}
#news_in .news_area dt{ padding-left:0; font-size:16px; line-height:1.3em; margin-bottom:5px;}
#news_in .news_area dt span{  width:6.4em; letter-spacing:0.02em; position:relative; left:0; top:0; font-size:16px; margin-bottom:8px;}
}

/********************** NEWS_SINGLE *******************************/
#news_in .news_single{ width:74%; float: left; margin-bottom:20px}
#news_in .news_single dl{ border-bottom:1px solid #000; padding-bottom:18px; margin-bottom:15px;}
#news_in .news_single dt{font-weight:bold;position:relative;padding-left: 5.4em;font-size: 20px;line-height:1.4em;color: #fff;border-bottom: 1px solid #000;padding-bottom: 18px;margin-bottom: 18px;}
#news_in .news_single dt span{display: block;color: #000; width: 4.4em;letter-spacing: 0.02em;text-align: left;position: absolute;left: 0;top: 1px;font-size: 1em; font-family: 'Oswald', sans-serif;}
#news_in .news_single dd{}
#news_in .news_single a{ color:#ffff00;}

#news_in .news_single p{ font-size: 15px; line-height: 1.7em; margin-bottom:1em;}
#news_in .news_single p strong{ font-size: 2em; line-height: 2em;}

#news_in .news_single .single_bottom{ width: 100%; text-align: center; font-size: 15px;}
#news_in .news_single .single_bottom a{ margin: 0 5px; border: 1px solid #fff; padding: 6px 20px; transition: all 0.5s; display:inline-block; color: #fff;}
#news_in .news_single .single_bottom a:hover{ opacity:0.8;}
#news_in .news_single .single_bottom a:nth-child(3n){ margin: 0; }
#news_in .news_single img{ max-width:100%;}

#news_in .news_single hr{ border: none; background-color: #63462b; height: 1px; width: 100%; margin: 26px 0;}
#news_in .news_single .info{}
#news_in .news_single .info .tit{ background-color: #e60012; padding: 3px 12px; font-size: 18px; font-weight: bold; line-height: 1.5em;}
#news_in .news_single .info .stit{ color: #e60012; font-size: 17px; font-weight: bold; line-height: 1.5em; margin-bottom: 8px; border-left: 4px solid #e60012; padding-left: 8px;}
#news_in .news_single .info p{}

#news_in .side_bar{ width: 23%; float: right; }
#news_in .side_bar h3{ font-size: 18px; font-weight: 600; background-color: #000; color: #fff; text-align: center; padding: 10px 0; margin-bottom: 14px;}
#news_in .side_bar dl{ margin-bottom: 14px; padding-bottom: 13px; border-bottom: 1px solid #000;}
#news_in .side_bar dt{ color:#ffff00; font-size: 14px; line-height: 1.3em; font-weight: bold; }
#news_in .side_bar dd{color: #fff;font-size: 13px;line-height: 1.5em;}
#news_in .side_bar a{ color:#ffff00;}
#news_in .side_bar a.news_more{ text-align:center; display:block; border: 1px solid #fff; padding: 6px 0; color: #fff;}
#news_in .side_bar a.news_more:hover{ opacity:0.8;}


@media only screen and (max-width: 768px){
#news_in .news_single{ width:100%; float: none;}
#news_in .side_bar{ float:none; width:100%; margin-bottom:20px;}
#news_in .side_bar dl{ margin-bottom:10px; padding-bottom:10px;}

#news_in .news_single p{ font-size: 14px;}
#news_in .news_single p strong{ font-size: 1.5em;}
#news_in .news_single dl{ padding-bottom:10px; margin-bottom:10px;}
#news_in .news_single dt{ padding-left:0; font-size:16px; line-height:1.3em; margin-bottom:16px;}
#news_in .news_single dt span{  width:6.4em; letter-spacing:0.02em; position:relative; left:0; top:0; font-size:16px; margin-bottom:8px;}

#news_in .news_single hr{ margin: 16px 0;}
#news_in .news_single .info .tit{ font-size: 16px; padding: 2px 10px;}
#news_in .news_single .info .stit{ font-size: 15px;}

#news_in .news_single .single_bottom{ margin-bottom:30px;}
}


/********************** ABOUT *******************************/
#about{ margin-bottom:120px;}

#about{ font-size: 20px;  line-height: 2.2em;}
#about h3{ width: 50%; margin: 0 auto 60px;}
#about h3 img{ width:100%;}
#about p{ margin-bottom: 30px;font-family: "游ゴシック","ヒラギノ角ゴ ProN",sans-serif;font-style: italic;}
#about .intro_link{ display: block; color: #000; border: 1px solid; font-size: 24px; line-height: 1.5em; padding: 24px 0; margin-top: 60px; transition: 0.2s ease; text-align: center;}
#about .intro_link:hover{ color: #1eba88; border-color: #1eba88; transition: 0.2s ease;}

@media only screen and (max-width: 768px){
#about{ margin-bottom:60px; text-align: left;}
#story{ margin-bottom:0;}

#about,
#story{ font-size:16px; font-weight:bold; line-height:1.7em;}
#about h3,
#story h3{ width: 100%; margin: 0 auto 46px;}
#story p.strong{ font-size:16px;}
#story p.strong span{ font-size:32px;}

#story .story_wrap .txt{ float: none;  font-size: 16px; line-height: 1.7em; width:100%; margin-bottom: 24px; padding-right: 0;}

#about .intro_link{ font-size: 14px; padding: 18px 0; margin-top: 0;}

}


/********************** CAST&STAFF *******************************/

.container.cast{ max-width:inherit;}

#cast{ padding-bottom:200px; font-size:24px; line-height:1.6em;}
#cast h3{ margin: 0 auto 26px; font-size: 30px; line-height: 1.5em;}
#cast h3 img{ width:100%;}

#cast .cast_wrap{ margin-bottom: 140px;}
#cast .cast_list{ margin-bottom: 4em;}
#cast .cast_list li,
#cast .cast_list2 li{ display: inline-block; vertical-align: top; width: 30.1%; margin: 0 1%;}

#cast .cast_list li figure{ width:100%; line-height: 0; margin-bottom: 16px; padding:4%; background-image: url("../images/cast_img_bg.png"); background-size: 100%; position:relative;}
#cast .cast_list li figure:hover img{ transform:translateX(-50%); transition: 0.2s ease;}
#cast .cast_list li figure div{ overflow:hidden;}
#cast .cast_list li img{ width:200%; transition: 0.2s ease;}
#cast .cast_list li h4{font-size: 1.5vw;font-weight: bold;line-height:1em;color: #fff;padding: 0.4em 0 0.6em;background-image: url("../images/cast-bg.png");background-repeat: no-repeat;background-size: 70%;background-position: 40% 140%;}
#cast .cast_list li h4 span{display:block;color: #ffff00;font-size:0.9em;font-weight: bold;line-height:1em;margin-bottom: 1em;}

#cast .cast_list li.parts figure:before,
#cast .cast_list li.parts figure:after{ content:""; position:absolute; background-size:contain; background-repeat:no-repeat; width: 100%; z-index: 50;}
#cast .cast_list li.parts figure:before{/* background-image:url(../images/cast_before.png); */height: 30.4%;top: -12px;left: -12px;}
#cast .cast_list li.parts figure:after{/* background-image:url(../images/cast_after.png); */height: 23%;bottom: -13.6px;right: -16px;background-position: right;}

#cast .cast_list li.single figure img{ width:100%; transition:none;}
#cast .cast_list li.single figure:hover img{ transform:none; transition:none;}

#cast .other{ max-width: 1000px; width: 100%; margin: 0 auto;}
#cast .other p{ font-size: 16px; margin-bottom: 8px; line-height: 2em;}
#cast .other p span{ color: #ffff00; margin-right: 1em;}

#cast .cast_list_txt{ margin-bottom:2em;}
#cast .cast_list_txt.last{ margin-bottom:100px;}
#cast .cast_list_txt dl{ display:table; width: 100%; margin: 0 auto 0.5em;}
#cast .cast_list_txt dt{ display:table-cell; text-align: right; width: 50%; font-size: 18px;padding-right: 20px;}
#cast .cast_list_txt dd{ display:table-cell; width: 50%; text-align: left;  font-size: 18px;}

#cast .staff_wrap{ margin: 0 auto 60px;}
#cast .staff_wrap p{ font-size: 20px; line-height:1.5em; margin-bottom: 8px;}
#cast .staff_wrap span{ color:#ffff00; font-size:15px; display: inline-block; margin-right: 3px; }

#cast .cast_list.ver2 li{ width: 22%;}
#cast .cast_list.ver2 li h4{ background-position: 40% 107%;}

#cast .sub_character{ line-height:2em;}
#cast .sub_character .sname{color: #e60012; font-size:0.8em;}

#cast .another_cast{ margin-bottom:20px; padding-top:30px;}
#cast .another_cast dt{ font-weight: bold; line-height:1.5em; display: inline-block; width: 50%; color:#e60012; margin-bottom: 12px;}
#cast .another_cast dd{ font-size: 16px; line-height: 1.5em;}

/*キャストテキスト表記*/
#cast .cast_wrap{ margin-bottom: 140px;}
#cast .cast_txt{ margin-bottom: 30px;}
#cast .cast_txt dl{ display: flex; width: 100%; align-items: center;}
#cast .cast_txt dt{ width: 50%; text-align: right; font-size: 14px; }
#cast .cast_txt dd{ width: 50%; text-align: left; padding-left: 1em; line-height: 2em;}


#cast .cast_textlist { margin-bottom: 2em;}
#cast .cast_textlist li {font-size: 24px; line-height: 2em; letter-spacing: 0.05em;}
#cast .cast_textlist li span {color:#ffff00;}

#cast .other .title {font-size: 24px; font-weight: bold;}

@media only screen and (max-width: 768px){
#cast{ padding-bottom: 20px;}
#cast h3{ width: 100%; margin: 0 auto 10px; text-align: center;}
#cast p{ font-size:16px;}
#cast p span{ font-size:16px;}


/*キャストテキスト表記*/
#cast .cast_wrap{ margin-bottom: 100px;}
#cast .cast_txt{ margin-bottom: 30px;}
#cast .cast_txt dl{ display: flex; width: 100%; align-items: center; margin-bottom: 0.2em;}
#cast .cast_txt dt{ font-size: 12px; line-height: 1.3em; }
#cast .cast_txt dd{ padding-left: 1em;  font-size: 18px;}

#cast .cast_textlist li {font-size: 20px; line-height: 2em;}

#cast .cast_wrap{ margin-bottom: 80px;}
#cast .cast_list{ margin-bottom: 12px;}
#cast .cast_list li{ float: none; width: 80%; margin: 0 auto 16px; margin-right: auto;}
#cast .cast_list li figure{ margin-bottom:12px;}
#cast .cast_list li figure:hover img{ transform: inherit;}
#cast .cast_list li img{ width:100%;}
#cast .cast_list li h4{font-size:16px;font-weight:bold;padding:0.4em 0;background-position: 40% 160%;}

#cast .cast_list2{ font-size:0;}
#cast .cast_list2 li{ width:49%; display:inline-block;}
#cast .cast_list2 li img{ width:200%;}
#cast .cast_list2 li:nth-child(2n){ margin-left:2%;}

#cast .other{}
#cast .other p{ font-size: 14px; margin-bottom: 16px;}

#cast .cast_list_txt{ margin-bottom:1em;}
#cast .cast_list_txt.last{ margin-bottom:100px;}
#cast .cast_list_txt dl{ display:block; margin: 0 auto; text-align:left; line-height: 1.3em;}
#cast .cast_list_txt dt{ display:inline; text-align: left; width: inherit; font-size: 14px;  padding-right:0;}
#cast .cast_list_txt dd{ display:inline; width: inherit; font-size: 14px;}

#cast .staff_wrap{margin: 0 auto 30px;}
#cast .staff_wrap p{ font-size: 14px; line-height: 1.5em; position: relative; margin-bottom: 6px;}
#cast .staff_wrap span{ font-size: 14px;}
    
#cast .cast_list.ver2 li{ width: 45%; margin: 0 1% 16px;}
#cast .cast_list.ver2 li h4{ background-position: 40% 95%;}

#cast .another_cast{ margin-bottom:0;}
#cast .another_cast dt{ width: 80%; font-size:18px; margin-bottom: 8px;}
#cast .another_cast dd{ font-size: 14px;}

#cast .other .title {font-size: 20px; font-weight: bold;}

}

/********************** SCHEDULE *******************************/

#schedule{ padding-top: 50px; margin-bottom: 120px;}
#schedule .sc_block{ margin-bottom: 120px;}
#schedule .all_date{}
#schedule .all_date .strong{}

#schedule .venue{ font-size:20px; line-height:1.4em; margin-bottom:30px;}
#schedule .place{color: #000;background-color: #fff;font-size: 30px;font-weight: bold;line-height: 1.5em;width: 6em;margin: 0 auto 1.5em;}
#schedule .datetit{font-size:36px;line-height:1.5em;margin-bottom:0.5em;font-weight:bold;font-family: "游ゴシック","ヒラギノ角ゴ ProN",sans-serif;}
#schedule .datetit strong{ font-size:1.8em;}
#schedule .datetit .venue{ font-size: 0.9em;}
#schedule .map{display:inline-block;background-color: #000;color:#fff;margin-left:15px;padding:4px 0;width: 130px;transition:0.2s;font-size: 15px;position:relative;top:-3px;}
#schedule .map:hover{opacity: 0.8;transition:0.2s;}
#schedule .bar{ margin-bottom:16px;}
#schedule .bar img{ max-width: 735px; width: 100%;}

.schedule_table {margin-bottom: 12px;position:relative;}

.schedule_table .add{ color: #ff0;}
.schedule_table .addtxt{color: #ff0;text-align: left;}

.calendar01{ width:100%;  font-size:18px; line-height:1em; table-layout:fixed; }
.calendar01 th	{text-align: center;border: 1px solid #666;color: #fff;padding:10px 0;font-size: 16px;font-weight: bold;background-color: #111111;}
.calendar01 th.wd{width: 6em;}
.calendar01 th.blue{background-color: #0f507c;color: #fff;}
.calendar01 th.red{background-color: #9b0000;color: #fff;}
.calendar01 td{text-align: center;color: #fff;border: 1px solid #666;background-color: rgba(0,0,0,0.6);padding:15px 0;font-size: 18px;}
.calendar01 td.time{background-color: #111111;color: #fff;font-size: 16px;}
.calendar01 td:first-child	{ text-align: center;}
.calendar01.pc_only{ display:table; margin-bottom: 6px;}

#schedule .note{margin: 0;font-size: 14px;line-height: 1.5em;text-align: left;}
#schedule .block_btn{ width: 80%; display: block; background-color: #e60012; color: #fff; margin: 0 auto 20px; font-size: 16px; font-weight: bold; line-height: 1.5em; padding: 24px 0;}
#schedule .block_btn.yellow{ background-color: #ff0; color: #000;}

@media only screen and (max-width: 768px) { 

#schedule{  margin:0 auto; padding-bottom:20px; }
#schedule .all_date{ margin-bottom:38px;}
#schedule .sc_block{ margin-bottom: 40px;}

#schedule .venue{ font-size: 12px; font-weight:bold; line-height: 1.4em; margin-bottom: 10px; text-align: left; position: relative;}
#schedule .place{font-size: 18px;}
#schedule .datetit{ font-size:20px;}
#schedule .map{padding: 4px 15px;position: absolute;width: 20%;right: 0;text-align:center;font-size: 12px;top: -4px;}

.schedule_table{margin-bottom: 6px;}

.calendar01{ border-collapse: separate; font-size: 14px;}
.calendar01 th.wd{ width:5em; }
.calendar01 th{padding:8px 0; font-size: 12px;}
.calendar01 td{ padding:5px 0; font-size:14px;}
.calendar01 td.time{ font-size: 12px;}
.calendar01 td img{ max-width: 18px;}
.calendar01.sp_only{ display:table; margin-bottom: 4px;}

#schedule .note{ font-size: 12px; text-align: left;}
#schedule .block_btn{ width: 100%; font-size: 14px; padding: 16px 0; margin-bottom: 12px;}
}

#tickets{ /*margin-bottom: 120px;*/ margin-bottom:0;}
#tickets p.cs{ font-size:24px;}

#tickets p.yotei {font-size: 40px; line-height: 1.7em; font-weight: bold;}

#tickets .price{ max-width:720px; width:100%; margin:0 auto 60px;}
#tickets .price p{ font-size: 18px; line-height: 1.5em; padding-top: 12px;}
#tickets .price .note{ margin-top: 20px;}

#tickets .info_box{ text-align:left; max-width: 720px; margin: 0 auto 80px; width:100%;font-size: 16px; line-height: 1.5em;}


#tickets dl{ display:table; width:100%;  font-weight:bold; text-align:left; border-bottom: 1px solid #aaa; padding: 30px 0;}
#tickets dt{display:table-cell;vertical-align:text-top;width:50%;padding-left: 20px;font-size:26px;line-height:1em;}
#tickets dt span{font-size: 0.5em;line-height: 1.5em;display: block;margin-top: 6px;}
#tickets dd{display:table-cell;vertical-align:text-top;width:50%;font-size: 42px;line-height:1em;text-align: right;padding-right: 20px;}
#tickets dd span{font-size: 0.35em;line-height: 2.2em;display: block;}

#tickets .playguide ul{text-align:left;color:#000;margin-bottom: 20px;}
#tickets .playguide li{position:relative;margin-bottom: 40px;padding:3% 33% 4% 4%;background-color: #fff;}

#tickets .playguide li .pl_tit{font-size:32px;line-height:1.4em;margin-bottom:10px;font-weight:bold;color:#c00;text-align: left;}

#tickets .playguide li .date_detail{font-family: "游ゴシック","ヒラギノ角ゴ ProN",sans-serif;}

#tickets .playguide li .start{font-size: 26px;line-height:1.4em;font-weight:bold;text-align:left;margin-bottom:0;}
#tickets .playguide li .start strong{font-size: 1.5em;color:#c00;}
#tickets .playguide li .start span{ font-size:1.1em;color:#000;}

#tickets .playguide li .end{ font-size:16px; line-height:1.5em; margin-bottom:20px;}
#tickets .playguide li .ticket_link a{display: block;background-color: #e60012;color: #fff;font-weight: bold;font-size: 16px;padding: 30px 0;line-height: 1em;width: 28%;position: absolute;text-align: center;top: calc(50% - 38px);right: 3%;}
#tickets .playguide li .ticket_link a:hover{ opacity:0.8;}

#tickets .playguide li .note{ margin-top: 16px;}
#tickets .playguide li .note p{ font-size: 14px; line-height: 1.5em; margin-bottom: 0;}

/* プレイガイド 複数 */
#tickets .playguide li.multi{ padding:3% 4%;}
#tickets .playguide li.multi .start{text-align:center;margin-bottom: 24px;} 
#tickets .playguide li.multi .ticket_link ul{ display: flex; flex-wrap: wrap; justify-content: center;}
#tickets .playguide li.multi .ticket_link li{ width: 30%; margin: 0 5px; margin-bottom: 10px; padding: 0;}
#tickets .playguide li.multi .ticket_link li:last-child{ margin-right:0!important;}
#tickets .playguide li.multi .ticket_link li a{ position: relative; top: inherit; right: inherit; width: 100%; padding: 25px 15px 16px;}
#tickets .playguide li.multi .ticket_link li h5{font-size: 18px;line-height: 1.5em;font-weight: bold;height: 62px;}
#tickets .playguide li.multi .ticket_link li h5 span{display: block;font-size: 0.8em;}
#tickets .playguide li.multi .ticket_link li p{ background-color: #fff; color: #000; font-size: 16px; font-weight: bold; padding: 6px 0; line-height: 1.5em; margin-bottom: 0; position:relative;}
#tickets .playguide li.multi .ticket_link li p:after{ content: "\025b6"; position: absolute; right: 10px; font-size: 10px; color:#000;}
#tickets .playguide li.multi .ticket_link a:after{ display:none;}

/* プレイガイド 3 */
#tickets .playguide li.multi.three .ticket_link li{width: 48%;margin-bottom: 1.33%;float: none;}

/* 受付前 */
#tickets .playguide li.dis .ticket_link a{ background-color: #eee; color: #666;}
#tickets .playguide li.dis .ticket_link a:hover{ cursor:inherit; opacity:1;}
#tickets .playguide li.dis p{ color: #666;}
#tickets .playguide li.dis a:after{ display:none;}

/* 受付終了 */
#tickets .playguide li.end{ border: 1px solid #666; padding: 20px 27% 20px 30px; width: 100%; margin: 10px auto 10px; background-color: rgba(0,0,0,0.3);}
#tickets .playguide li.end h4,
#tickets .playguide li.end h4 strong,
#tickets .playguide li.end p,
#tickets .playguide li.end p span{ font-size:18px; margin-bottom: 6px; color:#666; text-decoration: line-through;}
#tickets .playguide li.end h4{ text-align:left;}
#tickets .playguide li.end h4 span{ font-size:18px; color:#666;}
#tickets .playguide li.end .start{ margin:0;}
#tickets .playguide li.end:after{ display:none;}
#tickets .playguide li.end .ticket_link a{ background-color: transparent; border: 1px solid #666; color:#666; right: 12px; padding: 18px; top: calc(50% - 27px);}
#tickets .playguide li.end .ticket_link a:hover{ cursor:inherit; opacity:1;}
#tickets .playguide li.end .ticket_link a:after{ display:none;}
#tickets .playguide li.end .note p{ font-size: 13px;}

#tickets .playguide li.end.multi { padding: 18px 20px;}
#tickets .playguide li.end.multi .ticket_link ul{ margin-top: 6px; margin-bottom: 0;}
#tickets .playguide li.end.multi .ticket_link li{ background-color: transparent;}
#tickets .playguide li.end.multi .ticket_link li h5{margin-bottom: 6px;font-size: 14px;height: inherit;}
#tickets .playguide li.end.multi .ticket_link li a{ padding: 10px 8px 8px;}
#tickets .playguide li.end.multi .ticket_link li p{ color: #666; font-size: 12px; border: 1px solid #666; padding: 4px 0; text-decoration: inherit; background-color: transparent;}
#tickets .playguide li.end.multi .ticket_link li p:after{ display:none;}

@media only screen and (max-width: 768px) { 
#tickets{ margin-bottom:30px;}
#tickets h3{}

#tickets p.yotei {font-size: 25px; line-height: 1.7em;}

#tickets .price{ width:100%; margin:0 auto 20px;}
#tickets dl{padding: 8px 3% 16px;}
#tickets dt{margin-bottom:3px;padding-left: 0;font-size: 18px;line-height:1.5em;}
#tickets dd{padding-left:5%;text-align: right;font-size: 20px;line-height:1.5em;padding-right: 0;}
#tickets dd span{ font-size: 0.6em; line-height: 1.5em;}

#tickets .price .note{ margin-top: 12px; text-align: left; font-size: 12px; line-height: 1.5em;}

#tickets .playguide ul{ margin-bottom:20px;}

#tickets .playguide li{ margin-bottom: 10px; padding:3% 4% 4%; }
#tickets .playguide li .start{ font-size:16px; margin-bottom:10px; line-height:1.7em;}
#tickets .playguide li .start strong{margin-bottom:5px;}

#tickets .playguide li .pl_tit{font-size:18px; margin-bottom:0px;}
#tickets .playguide li .ticket_link a{ position:relative; top:0; right:0; width:100%; padding:20px 0;}

#tickets .playguide li .note{ margin-top: 6px;}
#tickets .playguide li .note p{ font-size: 13px;}

#tickets .playguide li.multi{ padding: 5% 4%;}
#tickets .playguide li.multi .start{ margin-bottom: 10px;}
#tickets .playguide li.multi .ticket_link li{ width: 100%; float: none; margin-right: 0; margin-bottom: 6px;}
#tickets .playguide li.multi .ticket_link li a{ padding:10px 10px 15px;}
#tickets .playguide li.multi .ticket_link li h5{margin-bottom: 6px;font-size:14px;height: inherit;}
#tickets .playguide li.multi.three .ticket_link li{ width:100%; float:none; margin-bottom:8px;}
#tickets .playguide li.multi .ticket_link li p{ font-size:14px;}

#tickets .playguide li.end{padding: 15px; width: 100%; margin: 0px auto 6px;}
#tickets .playguide li.end.first{  margin: 22px auto 6px;}
#tickets .playguide li.end .ticket_link a{ right:0; padding: 6px; font-size: 12px;}
#tickets .playguide li.end h4{ font-size: 12px; margin-bottom: 2px;}
#tickets .playguide li.end .start{font-size: 12px; margin-bottom: 4px;}

#tickets .playguide li.end.multi{ padding: 14px 12px 10px;}
}


#tickets .note_box{box-shadow: 0px 4px 23px -15px #0e4434;background-color: #e60012;padding: 50px;margin-bottom: 60px;text-align: left;word-break: break-all;}
#tickets .note_box.white{ background-color: #fff; color: #000;}
#tickets .note_box .tit{ font-size: 26px; text-align: center; margin-bottom: 1.5em;}
#tickets .note_box .stit{ color: #e60012; font-size: 1.3em; font-weight: bold; line-height: 2em; display: block;}
#tickets .note_box .sstit{ display: inline-block; color: #fff; background-color: #e60012; padding: 2px 20px; margin: 8px auto 5px;}
#tickets .note_box strong{ font-size: 17px; line-height: 2em;}
#tickets .note_box a{ color: #e60012; text-decoration: underline;}
#tickets .note_box p{}
#tickets .note_box p.m_6px{ margin-bottom: 6px;}
#tickets .note_box a{ color: #e60012; text-decoration: underline;}
#tickets .note_box ul{list-style: disc;padding-left: 18px;margin-bottom: 30px;}
#tickets .note_box ul.no_flex li{ display:block;}
#tickets .note_box ul.long{}
#tickets .note_box ul.m_6px{ margin-bottom: 6px;}
#tickets .note_box li{line-height: 1.5em;margin-bottom: 0.3em;display: flex;position: relative;}
#tickets .note_box li p:first-child{width: 9em;margin: 0;}
#tickets .note_box ul.l_long li p:first-child{ width: 39em; margin: 0;}
#tickets .note_box ul.long li p:first-child{ width: 8em; margin: 0;}
#tickets .note_box li p:last-child{ width: calc(100% - 6em); margin: 0;}
#tickets .note_box li:before{content:"\025cf";position: absolute;font-size: 10px;left: -16px;}
#tickets .note_box figure{ line-height: 0; margin-bottom: 20px;}
#tickets .note_box figure img{width: auto;max-width: 100%;}
#tickets .note_box hr{ border: none; background-color: #ccc; height: 1px; width: 100%; margin: 2em 0;}

@media only screen and (max-width: 768px) {
#tickets .note_box{ padding: 20px 12px; margin-bottom: 30px;}
#tickets .note_box .tit{ font-size: 17px;}
#tickets .note_box .stit{ font-size: 1.2em; line-height: 1.5em;}
#tickets .note_box strong{ font-size: 14px; line-height: 1.7em;}
#tickets .note_box p{ font-size: 12px; line-height: 1.5em;}
#tickets .note_box ul{ padding-left: 17px; margin-bottom: 20px;}
#tickets .note_box li{ font-size: 12px; display: block;}
#tickets .note_box li p:first-child,
#tickets .note_box ul.l_long li p:first-child{ width: 100%;}
#tickets .note_box li p:last-child{ width: 100%;}
#tickets .note_box p{ font-size: 13px; line-height: 1.5em;}
#tickets .note_box figure{}
#tickets .note_box hr{margin: 1em 0;}
}



.sec_tit{ font-size: 34px; font-weight: 400; line-height: 1.5em; margin-bottom: 3em; font-style: italic; font-family: 'Oswald'; letter-spacing: 0.1em;}
#tickets .lead_txt{ font-size: 30px; line-height: 1.5em;}
@media only screen and (max-width: 768px) {
.sec_tit{ font-size: 24px; margin-bottom: 1.5em !important;}
#tickets .lead_txt{ font-size: 16px; margin-bottom: 10px;}
}


/****アフターイベント****/




.after_btn{ border: 2px solid #de2e12; background-color: #fff; display: block; width: 70%; margin: 0 auto 100px; padding: 14px 0; font-size: 20px; line-height: 1.4em; color: #de2e12; position: relative; transition:0.2s;}
.after_btn:after{ content: "\025b6"; position: absolute; right: 10px; font-size: 10px; top: calc(50% - 12px);}
.after_btn:hover{ opacity:0.8; color:#de2e12; transition:0.2s;}



.after_eve{ text-align: left; padding: 3vw 4vw 2vw; border:10px solid #1a7cad;}
.after_eve h4{ color: #1a7cad; font-size: 28px; font-weight: bold; line-height: 1.5em; text-align:center; margin-bottom: 12px;}
.after_eve .eve_box{ margin-bottom: 30px;}
.after_eve .eve_box h4{ padding-bottom: 4px; margin-bottom: 12px; color: #1a7cad; font-size: 20px; font-weight: bold; line-height: 1.5em;}
.after_eve .eve_box p{ font-size: 15px; line-height: 1.5em; padding-left: 16px;}

.after_eve .eve_box.day_cast{}
.after_eve .eve_box.day_cast h4{}
.after_eve .eve_box.day_cast p{ margin-bottom: 22px;}
.after_eve .eve_box.day_cast p strong{ font-size: 22px; display: inline-block; width: 5.4em;}
.after_eve .eve_box.day_cast p span{}
.after_eve .eve_box.day_cast p span.place{ background-color: #0e4f7c; color: #fff; display: inline-block; text-align: center; line-height: 1.5em; margin: 0 12px 6px 0 !important; padding: 2px 18px 0; position: relative; top: -2px;}
.after_eve .eve_box.day_cast p span.place.fukuoka{ background-color: #7c0e32;}
.after_eve .eve_box.day_cast p span.place.osaka{ background-color: #7c6e0e;}
.after_eve .eve_box.day_cast p span.cat{ margin-left: 16px; font-size: 21px;}
.after_eve .eve_box.day_cast p span.cast{ background-color: #eee; display: block; padding: 4px 12px;}

.after_eve .eve_box.info{}
.after_eve .eve_box.info h4{}
.after_eve .eve_box.info p{ font-size: 14px;}

.after_eve .eve_box.note{}
.after_eve .eve_box.note h4{}
.after_eve .eve_box.note p{ font-size: 14px;}

@media only screen and (max-width: 768px) {
.after_btn{ width: 100%; font-size: 16px; font-weight: bold; margin-bottom: 0;}

.after_eve{ border: 4px solid #1a7cad; padding: 20px 12px;}
.after_eve h4{ font-size: 20px;}
.after_eve .eve_box h4{ padding-bottom: 0; margin-bottom: 8px; font-size: 18px;}
.after_eve .eve_box p{ font-size: 14px; line-height: 1.4em; padding-left: 0;}

.after_eve .eve_box.day_cast p{ margin-bottom: 28px;}
.after_eve .eve_box.day_cast p strong{ font-size:18px;}
.after_eve .eve_box.day_cast p span.place{ padding: 2px 8px 0;}
.after_eve .eve_box.day_cast p span.cat{ margin-left: 0; font-size: 16px;}
.after_eve .eve_box.day_cast p span.cast{ position: relative; top: 4px;}

.after_eve .eve_box.info p{ font-size: 13px; font-weight: bold;}

.after_eve .eve_box.note p{ font-size: 13px; font-weight: bold;}
}




/********************** GOODS *******************************/
#goods{ /*width:95%; /*max-width:1000px;*/ margin:0 auto 60px; text-align:center;}
#goods .goods_lead{ background-color: #e60012; color: #fff; display: block; font-size: 20px; line-height: 1.5em; padding: 30px 0; margin-bottom: 20px;}
#goods .goods_lead:hover{ opacity:0.8;}

#goods .info{ background-color: #fff; color: #000; padding: 60px 40px 30px; text-align: left; margin-bottom: 40px;}
#goods .info img{ width:100%;}
#goods .info .tit{ text-align: center; font-size: 30px; font-weight: bold; line-height: 1.4em; margin-bottom: 1.3em; color: #c00;}
#goods .info .stit{ font-size: 18px; font-weight: bold; line-height: 1.5em; margin-bottom: 0.5em;}
#goods .info .block{ border-top: 1px solid #ccc; padding: 24px 0;}
#goods .info .block p:last-child{ margin-bottom: 0;}
#goods .info p{}
#goods .info p.note{ font-size: 0.8em; line-height: 1.5em; margin: 0;}
#goods .info ul{ margin-bottom: 0;}
#goods .info li{ border-bottom: 1px dashed #ccc; padding: 12px 0; line-height: 1.5em;}
#goods .info li:last-child{ border-bottom:none;}
#goods .info li span{ display: block; font-size: 0.8em; line-height: 1.5em;}
#goods .info a{ text-decoration:underline;}
#goods .goods_btn{display: block;background-color: #e60012;color: #fff;width: 80%;margin: 20px auto 40px;padding: 30px 0;font-size: 20px;line-height: 1.5em;transition: 0.2s;text-align: center; text-decoration: none !important;}
#goods .goods_btn:hover{ background-color: #ff0014; transition: 0.2s;}

#goods .list{ margin-bottom: 60px;}
#goods .list li{display: table;width:100%;margin-bottom:3%;padding:16px;background-color: #fff;color: #000;position:relative;}
#goods .list li:nth-child(3n){ margin-right:0;}
#goods .list li figure{ display: table-cell; width: 40%; line-height: 0;}

#goods .list li figure img{width:100%;border: 1px solid #ccc;}
#goods .list li .right{ display: table-cell; vertical-align: top; padding-left: 24px;}
#goods .list li h3{color: #e60012;font-size:20px;font-weight:bold;line-height:1.4em;margin-bottom:12px;text-align:left;}
#goods .list li h3 span{display: block;font-size: 14px;line-height: 1.5em;}
#goods .list li p.txt{font-size:13px;line-height: 1.5em;text-align:left;margin:0;}
#goods .list li p.price{font-size:18px;margin-top:14px;padding-top: 14px;text-align:right;margin-bottom: 0;border-top: 1px solid #666;}

#goods .two{ display: flex; justify-content: space-between; margin-bottom: 20px;}
#goods .two img{ width: 49%; border: 1px solid #ccc;}

@media only screen and (max-width: 768px) { 
#goods .goods_lead{ font-size: 14px; padding: 12px; margin-bottom: 12px;}

#goods .info{padding: 20px 12px;margin-bottom: 20px;}
#goods .info .tit{ font-size: 18px; margin-bottom: 1em;}
#goods .info .stit{ font-size: 16px; margin-bottom: 0.3em;}
#goods .info .block{ padding: 14px 0;}
#goods .info p{ font-size: 14px; line-height: 1.6em;}
#goods .info p.note{ font-size: 0.7em;}
#goods .info li{ padding: 8px 0; font-size: 14px;}
#goods .goods_btn{ width: 100%; font-size: 16px; padding: 16px 0; margin: 0 0 20px;}

#goods .list{ margin-bottom: 40px;}
#goods .list li{ float:none; width: 100%; margin: 0 auto 4%; padding: 12px;}
#goods .list li:nth-child(3n){ margin-right:auto;}
#goods .list li figure{display: block;width: 100%;margin-bottom: 8px;}
#goods .list li .right{ display: block; width: 100%; padding-left: 0;}
#goods .list li h3{font-size: 14px;line-height: 1.3em;margin-bottom: 6px;}
#goods .list li h3 span{ font-size: 12px;}
#goods .list li p.txt{ font-size:12px; line-height: 1.4em;}
#goods .list li p.price{ font-size: 16px; margin-top: 7px; padding-top: 10px;}

#goods .two{ display: block; margin-bottom: 6px;}
#goods .two img{ width: 100%;}
}





/********************** GUIDE *******************************/
#guide{ margin:0 auto 60px; text-align:left; }
#guide h2{ text-align:center;}
#guide h3{ padding:15px 0; font-weight:bold; font-size:30px; line-height:1.5em; color: #ffff00;}
#guide .guide_block{ border-bottom:1px solid #ccc; padding-bottom:10px; margin-bottom:10px;}
#guide .guide_block:last-child{ border-bottom:none; padding-top: 20px;}
#guide .guide_block strong{ color: #ffff00; font-size: 1.2em; display: block; line-height: 1.7em;}
#guide .guide_block p{ padding-left: 14px; font-size: 15px; line-height: 1.7em; margin-bottom: 18px;}

#guide .guide_block dl{ line-height:2em;}
#guide .guide_block dt{ font-weight: bold; color: #ffff00; font-size: 20px; line-height: 1.7em; margin-bottom: 0.2em; }
#guide .guide_block dd:before{content: "A."; display: block; position: absolute; left: 0;}
#guide .guide_block dd{ margin-bottom: 2em;  padding-left: 2em; position: relative;}
#guide .guide_block dd p{ font-size: 16px; padding-left: 0;}
#guide .guide_block dd ul{ list-style: disc;padding-left: 1.5em;}
#guide .guide_block dd li{}
#guide .guide_block a{text-decoration: underline;color: #ffff00;}

#guide .guide_block .guide_stit{ font-weight: bold; padding: 0; font-size: 20px; line-height: 1.7em; color: #ffff00; margin-bottom: 0.5em;}

#guide.covid{ padding-top: 100px;}
#guide .guide_end{ margin: 2em 0;}

@media only screen and (max-width: 768px) { 
#guide h3{ padding:5px 0 10px; font-size: 20px; line-height: 1.5em;}
#guide .guide_block{ padding-bottom:0; word-break: break-all;}
#guide .guide_block:last-child{ padding-top: 8px;}
#guide .guide_block p{ padding-left: 0; font-size: 14px; margin-bottom: 12px;}
#guide .guide_block strong{ font-size: 1em;}

#guide .guide_block dl{ line-height:1.7em;}
#guide .guide_block dt{ font-weight: bold; color: #e60012; font-size: 18px; line-height: 1.7em; margin-bottom: 0.5em; }
#guide .guide_block dd{ margin-bottom: 2em;  padding-left: 1.4em; position: relative; font-size: 14px;}
#guide .guide_block dd p{ font-size: inherit; padding-left: 0;}    
}


/********************** MOVIE *******************************/
#movie_in{}
#movie_in ul{max-width: 1400px;width: 94%;margin: 0 auto 60px;display: flex;flex-wrap: wrap;justify-content: space-between;}
#movie_in li{width: 48%;position: relative;margin-bottom: 3vw;}
#movie_in .youtube{position:relative;width:100%;margin-bottom: 1vw;display: block;line-height: 0;background-color: #000;padding: 20px 0 6px;}
#movie_in .youtube iframe{position:absolute;top:0;right:0;width:100%;height:100%;}
#movie_in img{ width:100%; transition: 0.2s ease;}
#movie_in a{position:relative;}
#movie_in a:hover{ opaxity:0.9; transition: 0.2s ease;}
#movie_in a .ro{position:absolute;visibility: hidden;opacity: 0;}
#movie_in a .ro{top: 50%;left: 50%;transform: translate(-50%,-50%);transition: 0.2s ease;}
#movie_in a:hover .ro{ visibility: visible; opacity: 1;}
#movie_in .tit{color: #e60012;font-size: 1.3vw;font-weight: bold;line-height: 1.5em;position: relative;text-align: center;margin: 0;}

@media only screen and (max-width: 769px){
#movie_in ul{}
#movie_in .tit{ font-size: 12px;}
}


/*lightbox*/

#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden;}
#cboxOverlay{position:fixed; width:100%; height:100%;}
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
#cboxContent{position:relative;}
#cboxLoadedContent{overflow:auto;}
#cboxTitle{margin:0;}
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}




.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none;}
.cboxIframe{width:100%; height:100%; display:block; border:0;}
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box;}
/* 
    User Style:
    Change the following styles to modify the appearance of ColorBox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay{background:#000;}
#colorbox{outline:none;}
   /* #cboxContent{margin-bottom:60px; overflow:visible;}*/
    #cboxContent{margin-right:60px; overflow:visible; margin-bottom:0;}
        .cboxIframe{background:#000;}
        #cboxError{padding:50px; border:1px solid #ccc;}
        #cboxLoadedContent{background:#fff; position:relative; z-index:10000;}
        #cboxLoadingGraphic{background:url(../images/loading.gif) no-repeat center center;}
        #cboxLoadingOverlay{background:#fff;}
        #cboxTitle{position:absolute; top:-22px; left:0; color:#000;}
        #cboxCurrent{position:absolute; top:-22px; right:205px; text-indent:-9999px;}
        #cboxSlideshow, #cboxClose{text-indent:-9999px; width:40px; height:100%; position:absolute; top:0;background:url(../images/controls2.png) no-repeat 0 0;}
		
        #cboxClose{background-position:7px 0; right:-50px; border:0; outline:none;}
        #cboxClose:hover{background-position:-40px 0;}


@media screen and (max-width: 768px) {
#cboxContent{ margin-right:0; margin-bottom:50px;}
#cboxClose{ right:0; top:inherit; bottom:-35px; height: 22px;}
}
