@charset "utf-8";


/*************************************************************
 
 基本設定

************************************************************ */
body,html{}
html{
	overflow:auto; }
*{
	box-sizing:border-box;
	transition:.2s; }
body{
	background:#fff;
	font-size:100%;
	line-height:150%;
	font-family:"M PLUS Rounded 1c", "メイリオ", sans-serif;
	font-weight: 500; }
@media screen and (min-width:980px){
body{
	overflow:hidden;
	min-width:980px; }
}
img{
	max-width:100%; }
	
.section .inner{
	max-width:1200px;
	margin:auto;
	padding:50px 20px 150px; }
@media screen and (max-width:640px){
.section .inner{
	padding:50px 10px 100px; }
}

.section .inner > h2{
	text-align:center;
	margin-bottom:30px;
	position:relative; }
.section .inner > h2 img{
	vertical-align:bottom; }

a{
	color:#00a6b3;
	text-decoration:none;
	transition:.3s; }
a:hover{
	opacity:.5; }

p{
	margin-bottom:1em; }

br.pc{
	display:block; }
@media screen and (max-width:640px){
br.pc{
	display:none; }
}
br.sp{
	display:none; }
@media screen and (max-width:640px){
br.sp{
	display:block; }
}


.notes,
ul.notes li{
	font-weight:400;
	position:relative;
	padding-left:1.5em;
	transform: rotate(0.05deg);/*アンチエイリアス対策*/ }
ul.notes{
	padding-left:0; }
ul.notes li + li{
	margin-top:10px; }
.notes::before,
ul.notes li::before{
	content:"※";
	position:absolute;
	left:0; }
ul.notes::before{
	display:none; }
.notes.nam{
	padding-left:2em; }
.notes.nam1::before{
	content:"※1"; }
.notes.nam2::before{
	content:"※2"; }
	
.spOnly{
	display:none; }
@media screen and (max-width:800px){
.spOnly{
	display:block; }

}

/*************************************************************
 
 ナビゲーション関連

************************************************************ */
.nav_inner{
	overflow:hidden; }
/*サイト全体の回り込み調整*/
#nav_flex{
	display:-webkit-flex;
	display:flex; }
@media screen and (max-width:800px){
#nav_flex{
	display:block; }
}
#nav_flex #site_wrapper{
	margin-left:200px;
	width:100%; }
@media screen and (max-width:1200px){
#nav_flex #site_wrapper{
	margin-left:160px; }
}
@media screen and (max-width:800px){
#nav_flex #site_wrapper{
	margin-left:0;
	width:100%; }
}
/*サイト全体の回り込み調整　ここまで*/


.drawer-hamburger{
	display:none; }
@media screen and (max-width:800px){
.drawer-hamburger{
	background:rgba(0,0,0,.8); }
}
nav.drawer-nav a{
	color:#000;
	display:block;
	/*max-width:90%;*/ }
	
nav.drawer-nav{
	/*background:rgba(215,20,24,1);*/
	background:#fff;
	position:fixed;
	/*width:150px;*/
	width:200px;
	height:100vh;
	border-right:solid 2px #fff; }
@media screen and (max-width:1200px){
nav.drawer-nav{
	width:160px; }
}
@media screen and (max-width:800px){
nav.drawer-nav{
	width:260px;
	/*background:rgba(215,20,24,1);*/
	background:#fff;
	border-left:solid 2px #fff; }
}
nav.drawer-nav div.nav_inner{}
@media screen and (max-width:640px){
nav.drawer-nav div.nav_inner{
	width: 100%;
	height: 100%;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch; }
}
nav.drawer-nav ul{
	max-width:90%;
	margin:auto; }
nav.drawer-nav li{
	font-weight:600;
	transform: rotate(0.05deg);/*アンチエイリアス対策*/
	padding:10px 0;
	text-align:center; }
nav.drawer-nav li div{
	position:relative;
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin:0 -10% 5px; }
nav.drawer-nav li div::before,
nav.drawer-nav li div::after{
	content:"";
	height:1px;
	background:#ccc;
	flex-grow:1; }
nav.drawer-nav li div::before{
	margin-right:5px; }
nav.drawer-nav li div::after{
	margin-left:5px; }
nav.drawer-nav li span{
	display:block;
	font-size:70%;
	color:#fff;
	background:#000;
	border-radius:30px;
	width:110px;
	text-align:center;
	font-weight:500; }

@media screen and (max-width:800px){
nav.drawer-nav li.home{
	display:none;}
}


nav.drawer-nav .nav_logo{
	max-width:100%;
	margin:0 auto 10px;
	text-align:center;
	padding:0;
	border-radius:10px;
	border-bottom:dotted 2px rgba(255,255,255,.3);
	transform:none; }
@media screen and (max-width:800px){
nav.drawer-nav .nav_logo{
	margin-bottom:0; }
}
nav.drawer-nav .nav_logo span.logo a{
	padding:35px 0 0; }
@media screen and (max-width:800px){
nav.drawer-nav .nav_logo span.logo a{
	padding:15px 0 0; }
}

nav.drawer-nav .nav_logo span.produce a{
	padding:0 0 20px;
	transform: rotate(0.05deg);/*アンチエイリアス対策*/
	line-height:1.5; }
@media screen and (max-width:800px){
nav.drawer-nav .nav_logo span.produce a{
	padding:0 0 15px; }
}

nav.drawer-nav .nav_logo span{
	background:none;
	width:auto; }




/*************************************************************
 
 ヘッダー

************************************************************ */
#header{
	background:url(../images/mv/bg.png) no-repeat center center , linear-gradient(0deg , #007ac6 0% , #00a0e8 15% , #fff000 100%);
	background-size:cover;
	padding:30px 0; }

#header .inner{
	max-width:1600px;
	width:90%;
	margin:auto; }
#header p.lead{
	text-align:center; }
@media screen and (max-width:800px){
#header p.lead{
	width:90%; }
}
@media screen and (max-width:480px){
#header p.lead{
	width:85%; }
}
#header ul.cast_pic{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	margin-bottom:30px; }
@media screen and (max-width:800px){
#header ul.cast_pic{
	margin-bottom:15px; }
}
#header ul.cast_pic li{
	width:50%;
	position:relative; }
@media screen and (max-width:800px){
#header ul.cast_pic li{
	width:100%; }
}
#header ul.cast_pic li.cast01,
#header ul.cast_pic li.cast02{
	width:37.5%; }
@media screen and (max-width:800px){
#header ul.cast_pic li.cast01,
#header ul.cast_pic li.cast02{
	width:80%; }
}
#header ul.cast_pic li.cast01{
	text-align:right; }
#header ul.cast_pic li.cast02{
	text-align:left; }
@media screen and (max-width:800px){
#header ul.cast_pic li.cast02{
	order:4; }
}
#header ul.cast_pic li.cast03,
#header ul.cast_pic li.cast04{
	margin-top:-25px; }

@media screen and (max-width:1200px){
#header ul.cast_pic li.cast03,
#header ul.cast_pic li.cast04{
	margin-top:-10px; }
}
@media screen and (max-width:800px){
#header ul.cast_pic li.cast03,
#header ul.cast_pic li.cast04{
	margin-top:0px; }
}

#header h1#logo{
	text-align:center; }
@media screen and (max-width:1400px){
#header h1#logo{
	width:80%;
	margin:auto; }
}
#header p.date{
	text-align:center;
	display:flex;
	justify-content:space-between;
	align-items:center;
	width:100%;
	margin-top:30px; }
@media screen and (max-width:800px){
#header p.date{
	margin-top:15px; }
}
#header p.date::before,
#header p.date::after{
	content:"";
	flex-grow:1;
	display:block;
	height:2px;
	background:#fff; }
#header p.date::before{
	margin-right:20px; }
#header p.date::after{
	margin-left:20px;}

#header p.date img{
	width:50%; }


@media screen and (max-width:800px){
#SpHeader{
	background:#fff;
	padding:15px; }
#SpHeader p.logo.sp{
	margin:0; }
}
	
	
/*************************************************************
 
 一行ニュース

************************************************************ */
#news_head{
	background:linear-gradient(to right , #b7deff 0% , #6296ff 50% , #b7deff 100%);
	padding:20px 0; }
@media screen and (max-width:1400px){
#news_head{
	padding:20px; }
}
#news_head p{
	margin:0 auto;
	padding:20px;
	font-weight:900;
	background:rgba(0,0,0,.5);
	max-width:1200px;
	font-size:1.5em; }
@media screen and (max-width:800px){
#news_head p{
	font-weight:500;
	font-size:1em; }
}
#news_head p a{
	color:#fff;
	display:block;
	position:relative;
	padding-right:20px; }
#news_head p a::before{
	position:absolute;
	content:"";
	top:50%;
	transform:translate(-50%,-50%);
	right:0;
    width: 4px;
    height: 4px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg); }




/*************************************************************
 
 SNS リンク

************************************************************ */
#snslink{
	background:#02a1e7; }
#snslink .inner{
	padding:10px 0; }
@media screen and (max-width:1400px){
#snslink .inner{
	padding:10px 20px; }
}
#snslink ul{
	display:-webkit-flex;
	display:flex;
	-webkit-justify-content:space-between;
	justify-content:space-between; }
@media screen and (max-width:1050px){
#snslink ul{
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap; }
}
#snslink ul li{
	width:15%;
	margin-bottom:10px;
	/*max-width:150px;*/ }
@media screen and (max-width:1050px){
#snslink ul li{
	width:32%; }
}
@media screen and (max-width:640px){
#snslink ul li{
	width:48%; }
}
#snslink ul a{
	display:block;
	color:#fff;
	text-align:center;
	position:relative;
	font-size:87%;
	padding:10px 5px;
	background:rgba(0,0,0,.7);
	transform: rotate(0.05deg);/*アンチエイリアス対策*/ }
@media screen and (max-width:880px){
#snslink ul  a{
	font-size:73%; }
}
@media screen and (max-width:640px){
#snslink ul  a{
	font-size:80%; }
}
#snslink ul a span{
	display:block;
	position:relative;
	font-size:140%; }
#snslink ul a::after{
	display:block;
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	content:"";
	height:2px; }
#snslink ul .twitter a::after{
	background: linear-gradient(to right, #fff 0%,#48b6f2 50%,#fff 100%); }
#snslink ul .instagram a::after{
	background: linear-gradient(to right, #4c64d3 0%,#cf2e92 35%,#f26939 65%,#ffdd83 100%); }
#snslink ul .linelive a::after{
	background: #00b900 }
#snslink ul .tiktok a::after{
	background: linear-gradient(to right, #00f3eb 0% , #ffffff 50% , #ff0050 100%); }
#snslink ul .website a::after{
	background: #e17a00; }
#snslink ul .blog a::after{
	background: #eaea13; }


/*************************************************************
 
 NEWS

************************************************************ */
#news{
	background:linear-gradient(to bottom , #02a1e7 0% , #fff 60%); }
#news h2::after{
	display:block;
	content:"";
	height:30px;
	background:linear-gradient(to right , #004ce6 0% , #4986ff 100%);
	margin-top:-20px; }
@media screen and (max-width:640px){
#news h2 img{
	max-width:50%; }
}
#news .news_list ul{
	display:-webkit-flex;
	display:flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap; }
#news .news_list ul li{
	width:24%;
	margin:0 .5% 10px;
	padding:10px;
	border-radius:10px;
	border:solid 2px #000;
	/*box-shadow:0 0 4px rgba(0,0,0,.3);*/
	transition:.3s;
	background:#fff;
	transform: rotate(0.05deg);/*アンチエイリアス対策*/ }

#news .news_list ul li:hover{
	background:#e8f7f8; }
#news .news_list ul li .thumbnail80{
	display:block;
	text-align:center;
	padding:10px;
	margin-bottom:10px;
	border-bottom:dotted 3px #000; }
#news .news_list ul li .thumbnail80 img{
	border-radius:5px;
	filter: drop-shadow(0 0 10px rgba(0,0,0,.3)); }

#news .news_list ul li .date80{
	display:block;
	margin-bottom:5px; }
#news .news_list ul li .date80 + br{
	display:none; }

@media screen and (max-width:980px){
#news .news_list ul li{
	width:29%;
	margin:0 2% 10px; }
}
@media screen and (max-width:640px){
#news .news_list ul {
	max-height:400px;
	overflow:auto; }
#news .news_list ul li{
	width:46%;
	margin:0 2% 10px; }
#news .news_list ul li .date80{
	font-size:80%; }
}


/*ニュースを一部非表示*/
#news .news_list ul li:nth-child(9),
#news .news_list ul li:nth-child(10){
	display:none; }





/*************************************************************
 
 ABOUT

************************************************************ */
#about{
	background:url(../images/contents_bg.png) no-repeat top center ,
			   linear-gradient(to right , #0084ff 0% , #3dc1ff 100%); }
#about h2::after{
	display:block;
	content:"";
	height:30px;
	background:linear-gradient(to right , #004ce6 0% , #4986ff 100%);
	margin-top:-20px; }
@media screen and (max-width:640px){
#about h2 img{
	max-width:50%; }
}

#about.section .inner{
	padding:50px 20px; }


#about .intro p:first-child{
	background:#fff;
	padding:10px 20px;
	text-align:center;
	color:#e73079;
	font-weight:900;
	font-size:2em;
	border-radius:30px;
	letter-spacing:2px; }
@media screen and (max-width:920px){
#about .intro p:first-child{
	font-size:3vw; }
}
@media screen and (max-width:640px){
#about .intro p:first-child{
	font-size:5vw; }
}

#about .about_main{
	color:#fff;
	border-radius:10px;
	font-size:1.3em;
	text-align:center;
	line-height:200%;
	background:rgba(0,0,0,.3);
	padding:70px 30px;
	margin-bottom:50px; }
@media screen and (max-width:920px){
#about .about_main{
	font-size:2vw; }
}
@media screen and (max-width:800px){
#about .about_main{
	font-size:2.5vw; }
}
@media screen and (max-width:640px){
#about .about_main{
	text-align:justify;
	text-justify:inter-ideograph;
	font-size:1.3em;
	padding:20px; }
#about .about_main br{
	display:none; }
}
#about .about_main p:first-child{
	margin-bottom:100px;
	position:relative; }
	
#about .about_main p:first-child::after{
	content:"";
	position:absolute;
	bottom:-50px;
	left:50%;
	transform:translate(-50%,-50%);
	height:3px;
	width:40%;
	background:#81c0d9;
	border-radius:30px; }
	
	
	
	

/*************************************************************
 
 CAST

************************************************************ */
#cast{
	background:linear-gradient(to right , #0084ff 0% , #3dc1ff 100%); }
#cast h2::after{
	display:block;
	content:"";
	height:30px;
	background:linear-gradient(to right , #004ce6 0% , #4986ff 100%);
	margin-top:-20px; }
@media screen and (max-width:640px){
#cast h2 img{
	max-width:40%; }
}

#cast.section .inner{
	padding:0 20px 200px; }
@media screen and (max-width:640px){
#cast.section .inner{
	padding:0 20px 100px; }
}

#cast .cast_main{
	color:#fff;
	border-radius:10px;
	font-size:1.8em;
	text-align:center;
	line-height:200%;
	background:rgba(0,0,0,.3);
	padding:70px 30px;
	margin-bottom:50px; }
@media screen and (max-width:1200px){
#cast .cast_main{
	font-size:1.3em; }
}
@media screen and (max-width:640px){
#cast .cast_main{
	text-align:justify;
	text-justify:inter-ideograph;
	padding:20px; }
}


#cast .cast_main br{ }
@media screen and (max-width:640px){
#cast .cast_main br{
	display:none; }
}
#cast .cast_main p{
	margin-bottom:50px; }
#cast .cast_main p.etc{
	display:flex;
	justify-content:space-between;
	align-items:center;
	font-size:1.5em;
	margin:0; }
@media screen and (max-width:1200px){
#cast .cast_main p.etc{
	font-size:1.2em; }
}
@media screen and (max-width:1000px){
#cast .cast_main p.etc{
	font-size:3vw; }
}
@media screen and (max-width:640px){
#cast .cast_main p.etc{
	font-size:4vw; }
}
@media screen and (max-width:480px){
#cast .cast_main p.etc{
	border-top:solid 2px #fff;
	padding-top:30px;
	font-size:1.2em; }
}
#cast .cast_main p.etc::before,
#cast .cast_main p.etc::after{
	content:"";
	display:block;
	flex-grow:1;
	height:2px;
	background:#fff; }
@media screen and (max-width:480px){
#cast .cast_main p.etc::before,
#cast .cast_main p.etc::after{
	display:none; }
}
#cast .cast_main p.etc::before{
	margin-right:20px; }
#cast .cast_main p.etc::after{
	margin-left:20px; }


	


	

/*************************************************************
 
 MOVIE

************************************************************ */
#movie{
	background:#fff; }
#movie h2::after{
	display:block;
	content:"";
	height:30px;
	background:linear-gradient(to right , #004ce6 0% , #4986ff 100%);
	margin-top:-20px; }
@media screen and (max-width:640px){
#movie h2 img{
	max-width:50%; }
}

#movie .linelive{
	text-align:center;
	position:relative; }
@media screen and (max-width:640px){
#movie .linelive{
	display:block; }
}
#movie .linelive::after{
	position:absolute;
	content:"";
	bottom:0;
	left:50%;
	transform:translate(-50%,-50%);
	width:calc(100% - 40px);
	max-width:1200px;
	height:2px;
	background:#ccc; }
#movie .linelive .inner{}

#movie .linelive h3{
	text-align:center;
	max-width:500px;
	margin:20px auto;
	font-size:130%;
	color:#fff;
	font-family:"Rounded Mplus 1c";
	background:rgba(0,0,0,.7);
	padding:5px 10px;
	border-radius:30px; }
@media screen and (max-width:640px){
#movie .linelive h3{
	font-size:100%; }
}


#movie .linelive_wrapper {
	text-align:center; }
#movie .linelive_wrapper iframe{
	border-radius:10px; }
 
@media screen and (max-width:640px){

#movie .linelive_wrapper iframe{
	width:230px !important;
	height:230px !important; }
	
}

#movie .linelive p.bt{
	margin:20px 0; }
#movie .linelive p.bt a{
	display:block;
	background:#0ac4f7;
	color:#fff;
	text-align:center;
	width:500px;
	padding:15px 10px;
	margin:auto;
	font-size:110%;
	border-radius:5px;
	position:relative;
	font-weight:bold; }
@media screen and (max-width:640px){
#movie .linelive p.bt a{
	width:280px; }
}
#movie .linelive p.bt a::after{
	position:absolute;
	content:"";
	top:50%;
	margin-top:-4px;
	right: 10px;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 4px solid transparent;
	border-left: 4px solid #fff; }

/*YOUTUBE
---------------------------------------*/
#movie .youtube{
	margin:0 0 0;
	padding:50px 0 0;
	background:linear-gradient(to bottom , #fff 300px , #c7efff 300px); 
	/*border-top:dotted 5px #fff;*/ }
#movie .youtube .inner{
	padding-top:0;}
#movie .youtube_wrapper{
	position:relative;
	width:100%;
	height:0;
	padding-top:56.25%;
	border-radius:10px;
	overflow:hidden; }
#movie .youtube_wrapper iframe{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%; }

#movie .youtube .movie_list{
	display:-webkit-flex;
	display:flex;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	margin-top:20px; }
#movie .youtube .movie_list li{
	width:49%;}
#movie .youtube .movie_list li + li{
	margin-bottom:20px; }



/*************************************************************
 
 TICKET

************************************************************ */
#ticket{
	background:url(../images/contents_bg.png) no-repeat top center ,
			   linear-gradient(to right , #0084ff 0% , #3dc1ff 100%); }
/*#ticket .bg_layer{
	background:url(../images/ticket_bg_top.png) repeat-x top center; }*/
#ticket h2::after{
	display:block;
	content:"";
	height:30px;
	background:linear-gradient(to right , #004ce6 0% , #4986ff 100%);
	margin-top:-20px; }
@media screen and (max-width:640px){
#ticket h2 img{
	max-width:50%; }
}

#ticket .sale{
	color:#fff;
	background:rgba(0,0,0,.4);
	padding:50px 30px; }
@media screen and (max-width:640px){
#ticket .sale{
	padding:20px 20px; }
}
#ticket .sale + .sale{
	margin-top:100px; }

#ticket .sale h3{
	text-align:center;
	font-size:2em;
	padding-bottom:50px;
	border-bottom:solid 2px #fff;
	margin-bottom:50px; }
@media screen and (max-width:640px){
#ticket .sale h3{
	font-size:1.3em;
	padding-bottom:20px;
	margin-bottom:20px; }
}

#ticket .sale h3 br{
	display:none; }
@media screen and (max-width:640px){
#ticket .sale h3 br{
	display:block; }
}

#ticket .sale h4{
	background:#00a8ff;
	border-radius:30px;
	padding:10px 20px;
	text-align:center;
	font-size:1.3em;
	margin-bottom:30px; }
@media screen and (max-width:640px){
#ticket .sale h4{
	font-size:1em; }
}
#ticket .sale h4 span{
	display:inline-block;
	background:#e73079;
	padding:2px 10px;
	margin-right:10px;
	font-weight:500; }
@media screen and (max-width:640px){
#ticket .soldout h4 span{
	display:block;
	max-width:300px;
	background:#fff;
	color:#e73079;
	border-radius:30px;
	margin:0 auto 5px;
	padding:0; }
}

#ticket .sale .area + .area{
	margin-top:50px; }

#ticket .sale .area ul{
	margin-bottom:20px; }
#ticket .sale .area ul li{
	display:flex;
	align-items:center;
	padding-bottom:20px;
	border-bottom:dotted 3px #4e99b7;}
@media screen and (max-width:640px){
#ticket .sale .area ul li{
	display:block; }
}
#ticket .sale .area ul li + li{
	margin-top:20px; }
#ticket .sale .area ul li h5{
	background:#fff;
	padding:5px 10px;
	color:#016a99;
	width:100px;
	text-align:center;
	display:flex;
	align-items:center;
	justify-content:center;
	margin-right:30px; }
@media screen and (max-width:640px){
#ticket .sale .area ul li h5{
	display:block;
	width:100%;
	margin-bottom:10px;
	padding:2px 10px; }
}
#ticket .sale .area ul li p{
	margin:0;
	transform: rotate(0.05deg);/*アンチエイリアス対策*/ }
#ticket .sale .area ul li p.yellow{
	color:#fee415; }
	
	
#ticket .sale .area p.bt{
	max-width:600px;
	margin:50px auto 0; }
#ticket .sale .area p.bt a{
	display:block;
	color:#fff;
	font-size:1.5em;
	text-align:center;
	padding:40px 20px; }
@media screen and (max-width:640px){
#ticket .sale .area p.bt a{
	font-size:1em;
	padding:20px 20px; }
}
#ticket .pre_sale .area p.bt a{
	background:#f27c37; }
#ticket .sale_info .area p.bt a{
	background:#ee3184; }

@media screen and (max-width:640px){
#sale_ippan p.bt a{
	font-size:1em;
	padding:20px 20px; }
}


#sale_ippan p.bt{
	font-size:2em;
	font-weight:bold;
	text-align:center;
	max-width:800px;
	margin:30px;
	padding:10px 10px;
	background:#ee3184; }
#sale_ippan p.sold_out{
	font-size:2em;
	font-weight:bold;
	text-align:center;
	margin:30px auto;
	padding:10px 10px;
	background:#ee3184; }



#ticket ul.notes{
	color:#fff;
	margin-top:50px;}


#ticket .tel{
	margin-top:25px;
	border-top:solid 2px #fff;
	padding-top:25px;
	color:#fff;
	display:flex;
	justify-content:space-between;
	align-items:center; }
@media screen and (max-width:1200px){
#ticket .tel{
	display:block; }
}

/*iosの電話番号リンク対策
----------------------------*/
#ticket .tel a[href^="tel:"] {
	color: inherit;
	text-decoration: none;
	pointer-events: none; }
/*----------------------------*/


#ticket .tel h3{
	background:#fff;
	color:#016a99;
	font-size:1.2em;
	padding:10px 20px; }
@media screen and (max-width:1200px){
#ticket .tel h3{
	margin-bottom:20px;
	display:block;
	text-align:center; }
}
@media screen and (max-width:640px){
#ticket .tel h3{
	font-size:.9em; }
}
@media screen and (max-width:400px){
#ticket .tel h3{
	font-size:.8em; }
}
#ticket .tel h3 + p{
	font-size:2.5em;
	margin:0; }
@media screen and (max-width:1200px){
#ticket .tel h3 + p{
	text-align:center; }
}
@media screen and (max-width:640px){
#ticket .tel h3 + p{
	font-size:1.8em; }
}
#ticket .tel h3 + p span{
	display:block;
	margin-top:10px;
	font-size:40%; }
	



/*************************************************************
 
 グッズ

************************************************************ */
#goods{
	background:#fff;
	color:#5e7179 }
#goods h2{ }
#goods h2::after{
	display:block;
	content:"";
	height:30px;
	background:linear-gradient(to right , #004ce6 0% , #4986ff 100%);
	margin-top:-20px; } }
@media screen and (max-width:640px){
#goods h2 img{
	max-width:70%; }
}

#goods .area + .area{
	margin-top:50px; }

#goods h3{
	color:#00a9ff;
	text-align:center;
	font-size:2em;
	line-height:150%;
	margin-bottom:20px; }
@media screen and (max-width:640px){
#goods h3{
	font-size:1.5em; }
}
	
#goods h3 span{
	display:inline-block;
	padding:5px 10px;
	margin-right:10px;
	line-height:normal;
	background:#e73079;
	font-size:80%;
	color:#fff;
	font-weight:500; }
@media screen and (max-width:640px){
#goods h3 span{
	display:block;
	background:none;
	color:#e73079; }
}

#goods h3 br{
	display:none; }
@media screen and (max-width:640px){
#goods h3 br{
	display:block; }
}

#goods .area ul.notes{
	color:#0187cb;
	padding:30px 0 0;
	margin:30px 0 0;
	border-top:solid 2px #0187cb; }


#goods p.pic{
	text-align:center; }





/*************************************************************
 
 ACCESS

************************************************************ */
#access{
	color:#fff;
	background:url(../images/contents_bg.png) no-repeat top center ,
			   linear-gradient(to right , #0084ff 0% , #3dc1ff 100%); }
#access h2::after{
	display:block;
	content:"";
	height:30px;
	background:linear-gradient(to right , #004ce6 0% , #4986ff 100%);
	margin-top:-20px; }
@media screen and (max-width:640px){
#access h2 img{
	max-width:70%; }
}
	

#access .googlemap.outer{
	position:relative;
	margin:auto;
	width:100%;
	padding-top:40%;
	border-radius:10px;
	overflow:hidden; }
@media screen and (max-width:640px){
#access .googlemap.outer{
	padding-top:60%; }
}
#access .googlemap.outer iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important; }


#access .address_data{
	border:solid 3px #fff;
	padding:30px;
	text-align:center;
	margin-bottom:50px; }
@media screen and (max-width:400px){
#access .address_data{
	padding:30px 15px; }
}


#access .address_data h3{
	font-size:2.5em;
	padding-bottom:30px;
	margin-bottom:30px;
	position:relative; }
@media screen and (max-width:400px){
#access .address_data h3{
	font-size:2em; }
}
#access .address_data h3::after{
	position:absolute;
	content:"";
	bottom:-3px;
	left:50%;
	transform:translate(-50%,-50%);
	height:3px;
	background:#fff;
	width:50px; }
#access .address_data p{
	margin:0; }
#access .address_data p + p{
	margin-top:10px; }

#access .address_data p br{
	display:none; }
@media screen and (max-width:450px){
#access .address_data p br{
	display:block }
}



/*************************************************************
 
 FOOD

************************************************************ */
#food{
	color:#fff;
	background:url(../images/contents_bg.png) no-repeat top center ,
			   linear-gradient(to right , #0084ff 0% , #3dc1ff 100%); }
#food h2::after{
	display:block;
	content:"";
	height:30px;
	background:linear-gradient(to right , #004ce6 0% , #4986ff 100%);
	margin-top:-20px; }
@media screen and (max-width:640px){
#food h2 img{
	max-width:70%; }
}


#food .area + .area{
	margin-top:50px; }
#food .area + .area.caution{
	margin-top:70px;
	background:rgba(0,0,0,.1);
	padding:15px; }

#food h3{
	color:#fff;
	font-weight:500;
	text-align:center;
	font-size:2em;
	line-height:150%;
	margin-bottom:20px; }
@media screen and (max-width:640px){
#food h3{
	font-size:1.5em; }
}
	
#food h3 span{
	display:block;
	max-width:500px;
	padding:5px 10px;
	margin-right:10px;
	line-height:normal;
	border:solid 2px #fff;
	margin:auto;
	border-radius:30px;
	font-size:80%;
	color:#fff;
	font-weight:500;
	background:rgba(255,255,255,.3); }


#food h3 br{
	display:none; }
@media screen and (max-width:640px){
#food h3 br{
	display:block; }
}

#food .area ul.notes{
	color:#fff;
	padding:30px 0 0;
	margin:30px 0 0;
	border-top:solid 2px #fff; }


#food p.pic{
	text-align:center; }

#food .area.caution h4{
	text-align:center;
	font-weight:500;
	font-size:120%;
	border-bottom:solid 2px #fff;
	padding-bottom:10px;
	margin-bottom:10px; }
#food .area.caution p{
	margin:0;
	padding-left:1.5em;
	position:relative; }
#food .area.caution p::before{
	position:absolute;
	content:"※";
	left:0;
	top:0; }
#food .area.caution p + p{
	margin-top:.5em; }






/*************************************************************
 
 FLOORMAP

************************************************************ */
#floormap{
	color:#fff;
	background:url(../images/contents_bg.png) no-repeat top center ,
			   linear-gradient(to right , #0084ff 0% , #3dc1ff 100%); }
#floormap h2::after{
	display:block;
	content:"";
	height:30px;
	background:linear-gradient(to right , #004ce6 0% , #4986ff 100%);
	margin-top:-20px; }
@media screen and (max-width:640px){
#floormap h2 img{
	max-width:70%; }
}


#floormap .area + .area{
	margin-top:50px; }
#floormap .area + .area.caution{
	margin-top:70px;
	background:rgba(0,0,0,.1);
	padding:15px; }

#floormap h3{
	color:#fff;
	font-weight:500;
	text-align:center;
	font-size:2em;
	line-height:150%;
	margin-bottom:20px; }
@media screen and (max-width:640px){
#floormap h3{
	font-size:1.5em; }
}
	
#floormap h3 span{
	display:block;
	max-width:500px;
	padding:5px 10px;
	margin-right:10px;
	line-height:normal;
	border:solid 2px #fff;
	margin:auto;
	border-radius:30px;
	font-size:80%;
	color:#fff;
	font-weight:500;
	background:rgba(255,255,255,.3); }


#floormap h3 br{
	display:none; }
@media screen and (max-width:640px){
#floormap h3 br{
	display:block; }
}

#floormap .area ul.notes{
	color:#fff;
	padding:30px 0 0;
	margin:30px 0 0;
	border-top:solid 2px #fff; }


#floormap p.pic{
	text-align:center; }

#floormap .area.caution h4{
	text-align:center;
	font-weight:500;
	font-size:120%;
	border-bottom:solid 2px #fff;
	padding-bottom:10px;
	margin-bottom:10px; }
#floormap .area.caution p{
	margin:0;
	padding-left:1.5em;
	position:relative; }
#floormap .area.caution p::before{
	position:absolute;
	content:"※";
	left:0;
	top:0; }
#floormap .area.caution p + p{
	margin-top:.5em; }







/*************************************************************
 
 FOOTER

************************************************************ */

footer{
	padding:70px 10px;
	text-align:center;
	background:#185fee;
	color:#fff;
	border-top:solid 3px #fff; }
footer .sponsor{
	max-width:980px;
	margin:auto;
	margin-bottom:15px;
	padding-bottom:15px;
	border-bottom:dotted 1px #ccc; }
footer .sponsor ul{
	display:flex;
	justify-content:center;
	align-items:center;
	font-size:12px; }
footer .sponsor ul li{
	display:flex;
	align-items:center; }
footer .sponsor li + li{
	margin-left:20px;}
	

footer .syusai_kikaku ul{
	display:flex;
	justify-content:center;
	align-items:center;
	flex-wrap:wrap;
	font-size:12px;
	text-align:center; }
@media screen and (max-width:480px){
footer .syusai_kikaku ul{
	display:block; }
}
footer .syusai_kikaku ul li{
	width:100%;
	display:flex;
	align-items:center;
	justify-content:center; }
footer .syusai_kikaku ul li + li{
	/*margin-left:20px;*/ }
@media screen and (max-width:480px){
footer .syusai_kikaku ul li + li{
	margin-left:0; }
}
footer .syusai_kikaku ul li img{
	margin-left:10px; }
	

/*コピーライト
----------------------------*/
footer .copyright{}
@media screen and (max-width:640px){
footer .copyright{
	font-size:.9em; }
}
@media screen and (max-width:480px){
footer .copyright{
	font-size:.7em; }
}

/*アーカイブ
----------------------------*/
footer .archive a{
	display:block;
	width:200px;
	background:#fff;
	padding:10px;
	border-radius:10px;
	margin:0 auto 20px; }
footer .archive p.pic{
	margin:0 0 5px; }
footer .archive p.title{
	background:#00a8ff;
	color:#fff;
	text-align:center;
	margin:0;
	font-size:.9em;
	border-radius:30px; }



