@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&family=Noto+Serif+KR:wght@200..900&family=Noto+Serif:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500&display=swap');

/* FONTS 
font-family: "Zen Kaku Gothic New", sans-serif;
*/

/* MATERIALS */

a:link,
a:visited{
	color:#f3ce00;
}
a:hover,
a:active{
	color:#fff99e;
}

/* INTERFACE */

br.pc{
	display:block;
}

br.sp{
	display:none;
}

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

body{
	-webkit-text-size-adjust:100%;
	margin:0;
	padding:0;
	background-color:#000;
	color:#fff;
	font-family:"Noto Serif JP", "Noto Serif", "Noto Serif KR", serif;
}

body>footer{
	background-color:#480000;
}

#footer_sns{
	padding:20px 60px;
	text-align:center;
	background-color:#380000;
}

#footer_sns a img{
	width:30px;
	margin:0 15px;
}

#footer_copyright{
	padding:30px 60px 60px;
	text-align:center;
}

#footer_copyright .logo{
	width:40px;
}

#footer_copyright .fund{
	width:30px;
	margin:30px 0;
}

#footer_copyright small{
	font-family:Verdana,sans-serif;
	font-size:9px;
	color:#906f6f;
}


#home_key_area a.logo{
	display:table;
	margin:0 auto;
}

#home_key_area a.logo img{
	width:100%;
	max-width:150px;
	margin:40px 0 0;
}

#home_key_area nav {
	position: absolute;
	top: 15px;
	right: 15px;
}

#home_key_area nav ul{
	display: flex;
	font-size: 24px;
	list-style-type: none;
	margin: 0;
}

#home_key_area nav ul li a{
	padding: 0 0 0 20px;
	color: #fff;
	text-decoration: none;
}

#home_lead_area{
	max-width:1600px;
	margin:0 auto;
	padding:0 0 100px;
	text-align:center;
	background-image:url("../img/key_bg02.jpg");
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center bottom;
}

#home_lead_area img{
	width:70px;
}

#home_title_area{
	max-width:1600px;
	margin:0 auto 100px;
	padding:80px 50px 100px;
	text-align:center;
	background-image:url("../img/key_bg02.jpg");
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center bottom;
}

#home_title_area h2{
	margin:0 0 1em;
	font-size:30px;
	line-height:1.3;
	color:#fff9b0;
}

#home_title_area p{
	margin:0 0 2.5em;
	font-size:18px;
	line-height:1.4;
	color:#f9c584;
}

#home_title_area p.stage{
	margin:0 0 2.5em;
	font-size:20px;
	font-weight:600;
	color:#fff;
}

#home_ticket_area{
	padding: 0 50px 150px;
}

#home_ticket_area div{
	max-width:600px;
	margin:0 auto;
	padding: 10px 30px 30px;
	border: solid 1px #fff;
	font-size: 17px;
}

#home_ticket_area h2 {
	text-align:center;
	font-size: 24px;
	font-weight: 500;
	line-height: 1.3;
}

#home_ticket_area p {
	font-size: 17px;
	line-height: 1.8;
}

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

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

@media only screen and (max-width:767px){
	#home_key_area a.logo{
		margin:10% auto 0;
	}

	#home_key_area nav ul{
		font-size: 3.8vw;
	}

	#home_lead_area{
		padding:0 0 10%;
		background-size:200%;
	}
	
	#home_lead_area img{
		width:15vw;
	}
	#home_title_area{
		padding:5% 5% 10%;
	}
	
	#home_title_area h2{
		font-size:4.7vw;
	}
	
	#home_title_area p{
		font-size:3.7vw;
	}
	
	#home_title_area p.stage{
		font-size:4.2vw;
	}

	#home_ticket_area{
		padding:0 5% 20%;
	}

	#home_ticket_area h2{
		font-size:4.2vw;
	}
	
	#home_ticket_area div{
		font-size:3.5vw;
		padding: 2% 5% 5%;
	}

	#home_ticket_area p{
		font-size:3.5vw;
	}
}

#home_prot_area{
	max-width:1300px;
	margin:0 auto 150px;
	padding:0 50px 200px;
}

#home_prot_area>div{
	max-width:650px;
	margin:0 auto;
}

#home_prot_area h2{
	margin:0 auto 2em;
	font-size:30px;
	font-weight:500;
	line-height:1.3;
}

#home_prot_area p{
	margin:0 auto 2.5em;
	text-align:justify;
	font-size:17px;
	line-height:1.8;
}

#home_prot_area p:last-of-type{
	margin:0 auto 8em;
}

#home_prot_area>a{
	display:block;
	text-align:center;
}

#home_prot_area>a img{
	width:100%;
	max-width:650px;
}

#home_info_area{
	max-width:600px;
	margin:0 auto;
	padding:0 60px;
}

#home_info_area section{
	margin:0 0 120px;
}

#home_info_area section h2{
	margin:0 0 2em;
	text-align:center;
	font-size:30px;
	font-weight:400;
	line-height:1.3;
	color:#eab97c;
}

#home_info_area section p{
	margin:0 0 2.5em;
	font-size:18px;
	line-height:1.8;
}

#schedule{
	width:100%;
	border-collapse:collapse;
	border-left:1px solid #f9c584;
	border-top:1px solid #f9c584;
}

#schedule th{
	padding:10px;
	text-align:left;
	font-size:17px;
	font-weight:300;
	color:#f9c584;
	border-bottom:1px solid #f9c584;
	border-right:1px solid #f9c584;
}

#schedule td{
	padding:10px;
	font-size:17px;
	font-weight:300;
	border-bottom:1px solid #f9c584;
	border-right:1px solid #f9c584;
}

#schedule td:empty{
	background-image: linear-gradient(to top left, transparent, transparent 49%,
	#f9c584 49%,
	#f9c584 50%,  /* 線の太さ */
	transparent 51%, transparent);
}

#map{
	width:100%;
	height:0;
	padding:75% 0 0;
	position:relative;
}

#map iframe{
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}

@media only screen and (max-width:767px){
	#home_prot_area{
		margin:0 auto 15%;
		padding:0 5% 25%;
		background-size:150%;
	}
	
	#home_prot_area h2{
		font-size:6vw;
	}
	
	#home_prot_area p{
		margin:0 0 2em;
		font-size:3.5vw;
	}
	
	#home_info_area{
		padding:0 5%;
	}
	
	#home_info_area section{
		margin:0 0 15%;
	}
	
	#home_info_area section h2{
		font-size:6vw;
	}
	
	#home_info_area section p{
		margin:0 0 2em;
		font-size:3.7vw;
	}
	
	#schedule th{
		padding:3%;
		font-size:3.7vw;
	}
	
	#schedule td{
		padding:3%;
		font-size:3.7vw;
	}
}

#sub_cast_area{
	margin:10% 40px;
	text-align:center;
}

#sub_cast_area>img{
	width:100%;
	max-width:1400px;
}

#sub_cast_area h1{
	margin:0 0 4em;
	font-size:40px;
	font-weight:400;
	line-height:1.2;
	color:#fff9b0;
}

#sub_cast_area>div{
	display:flex;
	flex-wrap:wrap;
	max-width:1400px;
	margin:0 auto 10%;
}

#sub_cast_area section{
	width:33.3333333333%;
	box-sizing:border-box;
	padding:2%;
	text-align:center;
}

#sub_cast_area section img{
	width:70%;
	border-radius:50%;
}

#sub_cast_area section h2{
	margin:0.2em 0 0;
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size:35px;
	font-weight:400;
	line-height:1.3;
}

#sub_cast_area section h2 span{
	display:block;
	font-size:16px;
}

#sub_cast_area section h3{
	margin:1em 0;
	font-size:20px;
	font-weight:400;
	line-height:1.3;
	color:#fff9b0;
}

#sub_cast_area section h3 span{
	display:block;
	font-size:15px;
}

#sub_cast_area section p{
	margin:0;
	text-align:justify;
	font-size:15px;
	line-height:1.7;
}

@media only screen and (max-width:900px){
	#sub_cast_area section img{
		width:100%;
	}
}

@media only screen and (max-width:767px){
	#sub_cast_area section{
		width:50%;
		padding:4%;
	}
	#sub_cast_area section img{
		width:80%;
	}
	#sub_cast_area section h3 span{
		font-size:14px;
	}
}

@media only screen and (max-width:500px){
	#sub_cast_area h1{
		margin:2em auto 2em;
		font-size:35px;
	}

	#sub_cast_area{
		margin:10% 30px;
	}

	#sub_cast_area section{
		width:100%;
		padding:10% 0;
	}
	#sub_cast_area section img{
		width:70%;
	}
}
