@charset "utf-8";
/* CSS Document */

html{overflow-y: scroll;
	min-width: 1200px;}

.start_filter{width: 100vw;
	height: 100vh;
	position: fixed; top: 0; left: 0;
	background: rgba(255,255,255,1.00);
	z-index: 9999;}
	
.start_filter2{width: 100vw;
	height: 100vh;
	position: fixed; top: 0; left: 0;
	background: rgba(255,255,255,1.00);
	z-index: 9999;}

.loading_img2{width: 30%;
	position: fixed; top: 45%; left: 35%;}

header{width: 98%;
	padding: 0 1%;
	background: rgba(255,255,255,0.80);
	/*border-bottom: rgba(0,0,0,0.40) solid 1px;*/
	position: fixed; top: 0; left: 0;
	z-index: 9;
	overflow: hidden;}
	
.header_logo1{width: 18vw;
	float: left;}
	
.header_logo1 img{width: 100%;}

.pc_menu_box{float: right;
overflow: hidden;}
	
.pc_menu_btn1{width: 5vw;
	float: right;}
	
.pc_menu_btn2{width: 6.45vw;
	float: right;}
	
.pc_menu_btn3{width: 8.35vw;
	float: right;}


.pc_menu_btn1 a,.pc_menu_btn2 a,.pc_menu_btn3 a{display: block;
	color: rgba(0,0,0,1.00);
	transition: 0.3s all;}

.pc_menu_btn1 a:hover,.pc_menu_btn2 a:hover,.pc_menu_btn3 a:hover{transform: scale(1.05,1.05);}

.bg1{width: 100%;
	height: 100vh;
	background:url("../img/bg3.jpg");
	background-size: cover;
	background-position: center top;
	position: fixed; top: 0; left: 0;
	z-index: 0;}

.bg2{width: 100%;
	height: 100vh;
	background:url("../img/bg3_0_2.webp");
	background-size: cover;
	background-position: center top;
	position: fixed; top: 0; left: 0;
	z-index: 0;}

.bg3{width: 100%;
	height: 100vh;
	background: url("../img/bg3_1.webp");
	background-size: cover;
	background-position: center top;
	position: fixed; top: 0; left: 0;
	webkit-animation:bgblink 25s linear infinite;
	-moz-animation:bgblink 25s linear infinite;
	animation:bgblink 25s linear infinite;}
	
.bg4{width: 100%;
	height: 100vh;
	background: url("../img/bg3_2.webp");
	background-size: cover;
	background-position: center top;
	position: fixed; top: 0; left: 0;
	webkit-animation:bgblink 11s linear infinite;
	-moz-animation:bgblink 11s linear infinite;
	animation:bgblink 11s linear infinite;}

@-webkit-keyframes bgblink {
	0% {opacity: 0;
	background-size: 100% auto;}
	10%{opacity: 0;}
	20%{opacity: 1;}
	90%{opacity: 1;}
	100% {opacity: 0;
	background-size: 150% auto;}
}
@-moz-keyframes bgblink {
	0% {opacity: 0;
	background-size: 100% auto;}
	10%{opacity: 0;}
	20%{opacity: 1;}
	90%{opacity: 1;}
	100% {opacity: 0;
	background-size: 150% auto;}
}
@keyframes bgblink {
	0% {opacity: 0;
	background-size: 100% auto;}
	10%{opacity: 0;}
	20%{opacity: 1;}
	90%{opacity: 1;}
	100% {opacity: 0;
	background-size: 150% auto;}
}

.con_box1{width: 100%;
position: relative;}

.con_inner0{width: 90%;
	min-width: 950px;
	margin: 0 auto;}

.con_inner1{width: 80%;
	min-width: 900px;
	margin: 0 auto;}
	
.con_inner2{width: 60%;
	min-width: 900px;
	margin: 0 auto;}

.dummy_spacer{font-size: 1.0vw;
	text-align: center;
	height: 300px;}

.op_box{width: 65.5%;
	position: relative;
	float: left;}

.frame1{width: 102%;
	position: absolute; top: -2.5%; left: -1%;
	z-index: 2;}

.frame1 img{width: 100%;}

.op_linkbn1{width: 23%;
	position: absolute; top: 3%; left: 2%;
	z-index: 2;
	transition: 0.3s all;}
	
.op_linkbn1:hover{filter: brightness(150%);}
	
.op_linkbn1 img{width: 100%;}

.bg_movie_box{width: 100%;
	margin: 0 auto;
	border-radius: 10px;
	overflow: hidden;
	position: relative;
	z-index: 1;}

#bg-movie{width: 100%;
	margin: 0 auto;
	position: relative; top: 0; left: 0;
	z-index: 0;
	}

.movie_text_box{width: 100%;
	height: 100vh;
	position: fixed; top: 0; left: 0;
	background: rgba(255,255,255,1.00);
	z-index: 99;
	webkit-animation:movietext 4.5s linear infinite;
	-moz-animation:movietext 4.5s linear infinite;
	animation:movietext 4.5s linear forwards;
	animation-delay: 0.5s;}

.movie_text_white{height: 100%;
	position: fixed; top: 0;
	z-index: 100;
	background: rgba(255,255,255,1.00);
	webkit-animation:movietext2 2.5s infinite;
	-moz-animation:movietext2 2.5s infinite;
	animation:movietext2 2.5s   forwards;
	animation-delay: 0.1s;
	animation-timing-function: cubic-bezier(.37,0,.14,1); /* easeOutExpo */}

.movie_text_text{width: 50%;
	font-size: 3.6vw;
	position: fixed; top: 42%; left: 25%;
	z-index: 99;}
	
.movie_text_text img{width: 100%;}

.movie_text_bg{width: 100%;
	height: 100%;
	background: rgba(7,12,43,1.00);
	position: fixed; top:0; left: 0;
	z-index: 98;
	}

@-webkit-keyframes movietext {
	0% {opacity: 1;}
	80%{opacity: 1;}
	99.99%{z-index: 99;}
	100% {opacity: 0;
	z-index: 0;}
}
@-moz-keyframes movietext {
	0% {opacity: 1;}
	80%{opacity: 1;}
	99.99%{z-index: 99;}
	100% {opacity: 0;
	z-index: 0;}
}
@keyframes movietext {
	0% {opacity: 1;}
	80%{opacity: 1;}
	99.99%{z-index: 99;}
	100% {opacity: 0;
	z-index: 0;}
}

@-webkit-keyframes movietext2 {
	0% {width: 0;}
	60% {width: 0;}
	100% {width: 100%;}
}
@-moz-keyframes movietext2 {
	0% {width: 0;}
	60% {width: 0;}
	100% {width: 100%;}
}
@keyframes movietext2 {
	0% {width: 100%;
		position: fixed; left: 0;}
	50% {width: 100%;
		position: fixed; left: 0;}
	100% {width: 0;
		position: fixed; left: 100%;}
}

.top_flyer_box{width: 33%;
	padding: 0 0 0 1.5%;
	float: left;
	position: relative;
	z-index: 3;}
	
.top_flyer1{width: 31%;
	padding: 0 1%;
	aspect-ratio:1/1.32;
	overflow: hidden;
	float: left;}
	
.top_flyer2{width: 48%;
	margin: 0 1%;
	overflow: hidden;
	float: left;
	position: relative;}

.top_flyer3{width: 100%;
	margin: 0 ;
	overflow: hidden;
	float: left;
	position: relative;}

.top_flyer_frame{width: 100%;
	position: relative;
	z-index: 2;}
	
.top_flyer2_img{width: 99%;
	position: absolute;bottom: 0; left: 0;
	z-index: 1;}
	
.top_flyer3_img{width: 99%;
	position: absolute;bottom: 0; left: 0;
	z-index: 1;}
	
.top_flyer2_img img{width: 100%;}

.top_flyer_text1{width: 48%;
	margin: 0 1%;
	background: rgba(7,12,43,1.00); 
	color: rgba(255,255,255,1.00);
	overflow: hidden;
	float: left;}

.top_flyer_spacer{clear: both;
	width: 100%;
	font-size: 0.8vw;}
	
.top_flyer_spacer img{width: 100%;
	height: 10px;}

.top_flyer1 img,.top_flyer2 img,.top_flyer3 img{width: 100%;}

.top_flyer1 img,.top_flyer2 img,.top_flyer3 img{transition: 0.3s all;}

.top_flyer1 img:hover,.top_flyer2:hover .top_flyer2_img img,.top_flyer3:hover .top_flyer3_img img{transform: scale(1.25,1.25);}

.top_img_box{width: 100%;}

.top_img_box img{width: 100%;}

.title1{width: 35%;
	margin: 0 auto;}

.title2{width: 50%;
	margin: 0 auto;}

.btn1{width: 20%;
	margin: 0 auto;
	line-height: 200%;
	background: rgba(8,14,77,1.00);
	border-radius: 10px;
	transition: 0.3s all;}
	
.btn2{width: 30%;
	margin: 0 auto;
	line-height: 200%;
	background: rgba(8,14,77,1.00);
	border-radius: 10px;
	transition: 0.3s all;}

.btn1:hover,.btn2:hover{transform: scale(1.05,1.05);}

.btn1 a,.btn2 a{display: block;}

.news_title{width: 12%;
	float: left;}

.news_box{width: calc(68% - 30px);
	padding: 15px;
	margin-left: 4%;
	/*background:rgba(255,255,255,1.00);
	border: rgba(0,0,0,0.40) solid 1px;*/
	float: left;}

.topic1{width: calc(100% - 30px);
	padding: 15px;
	/*background: rgba(255,255,255,0.90);
	border-radius: 5px;*/}

.date_box{overflow: hidden;}

.news_date{width: 9%;
	float: left;}

.news_cat1{width: 9%;
	padding: 3px 5px;
	margin: 0 0.5%;
	line-height: 100%;
	background: rgba(0,77,183,1.00);
	color: rgba(255,255,255,1.00);
	float: left;}
	
.news_cat2{width: 8.5%;
	padding: 3px 5px;
	margin: 0 0.5%;
	line-height: 100%;
	color: rgba(255,255,255,1.00);
	background:rgba(255,143,17,1.00);
	float: left;}
	
.news_cat3{width: 8.5%;
	padding: 3px 5px;
	margin: 0 0.5%;
	margin-left: 10px;
	line-height: 100%;
	color: rgba(255,255,255,1.00);
	background:rgba(73,177,82,1.00);
	float: left;}

.news_text1{width: calc(73% - 10px);
	margin-left: 1%;
	float: left;}
	
.news_pdf{width: 3%;
	float: right;}

.bar_dot{clear: both;
	width: 100%;
	height: 1px;
	border-top: rgba(0,0,0,0.40) dotted 1px;}

.stage_information_box1{width: calc(100% - 30px);
	min-width: 750px;
	margin: 0 auto;
	padding: 15px;
	background: rgba(255,255,255,0.50);
	border: rgba(0,0,0,0.20) solid 1px;
	position: relative;
	overflow: hidden;}

.stage_information_box2{width: calc(80% - 30px);
	min-width: 750px;
	margin: 0 auto;
	padding: 15px;
	background: rgba(255,255,255,0.50);
	border: rgba(0,0,0,0.20) solid 1px;
	overflow: hidden;
	position: relative;}
	
.stage_information_box3{width: calc(70% - 30px);
	min-width: 700px;
	margin: 0 auto;
	padding: 15px;
	background: rgba(255,255,255,0.50);
	border: rgba(0,0,0,0.20) solid 1px;
	overflow: hidden;
	position: relative;}

.stage_information_box_disp{width: 100%;
	display: flex;
	/* flex-flow: <flex-direction> || <flex-wrap>; */
	flex-direction: row; /* 左から */
	flex-wrap: wrap; /* 複数行に配置、左から右へ、上から下へ、の順番に。 */
	justify-content: center; /* 中央寄せ */
	align-items: flex-start; /* アイテムを先頭にまとめて配置。*/
	align-content: center; /* アイテムを中央に寄せて配置。 */}

.stage_information_year{width: 100%;
	font-size: 2vw;
	color: rgba(198,156,104,1.00);
	line-height: 180%;
	background: rgba(11,21,81,1.00);}

.stage_information_box_inner1{width: 49%;
	padding-right: 1%;
	float: left;
	overflow: hidden;}
	
.stage_information_box_inner_img1{width: 50%;
	float: left;}
	
.stage_information_box_inner_img1 img{width: 100%;}
	
.stage_information_box_inner_text1{width: 48%;
	padding-left: 2%;
	float: left;}

.stage_information_title{width: 100%;}

.stage_movie1{width: 58%;
	float: left;}

.stage_information_text1{width: 40%;
	padding-left: 2%;
	float: left;}

.stage_information_img1{width: 90%;
	margin: 0 auto;}
	
.stage_information_img2{width: 25%;
	float: left;
	overflow: hidden;}
	
.stage_information_img3{width: 40%;
	float: left;
	overflow: hidden;}
	
.stage_information_img4{width: 20%;
	float: left;
	overflow: hidden;}
	
.stage_information_img1 img,.stage_information_img2 img,.stage_information_img3 img,.stage_information_img4 img{width: 100%;
	transition: 0.3s all;}

.stage_information_img2 img:hover,.stage_information_img3 img:hover,.stage_information_img4 img:hover{transform: scale(1.2,1.2);}

.img100{width: 100%;
	overflow: hidden;}
	
.img100 img{transition: 0.3s all;}

.img100 img:hover{transform: scale(1.2,1.2);}

.stage_information_text2{width: 73%;
	padding-left: 2%;
	float: left;}
	
.stage_information_text3{width: 58%;
	padding-left: 2%;
	float: left;}

.stage_information_link1{padding: 10px;
	position: absolute; bottom: 5px; right: 0;
	background: rgba(0,0,0,1.00);}

.slider_main{width: 100%;
	margin: 0 auto;
	position: relative;}

.movie_img1{width: 20%;
	margin: 0 ;
	overflow: hidden;}

.movie_img1 img{width: 100%;
	aspect-ratio: 15 / 10;
	transition: 0.3s all;}

.stage_information_item1{width: 30%;
	padding: 10px 1.5%;
	float: left;}
	
.stage_information_item_img1{width: 100%;}

.stage_information_item_img1 img{width: 100%;}

.sns_linkbox1{width: 15%;
	margin: 0 auto;
	position: relative;
	overflow: hidden;}
		
.sns_linkbox1 img{width: 100%;
	transition: 0.3s all;}
	
.sns_linkbox1 img:hover{transform: scale(1.05,1.05);}

.sns_link_img{width: 50%;
	float: left;}

/* movie */
#movie_wrapper {
    position: relative;
    width: 100%;
	margin: 0 auto;
}

#movie_wrapper:before {
    content:"";
    display: block;
    padding-top: 56.25%; /* 高さと幅の比を16:9に固定。9/16*100=56.25 */
}

#movie_content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.under_top_img img{width: 100%;}

.company_title_box{width: 18%;
	padding: 0 10px;
	min-width: 150px;
	background: rgba(0,0,0,1.00);}

.company_box1{width: calc(100% - 32px);
	padding: 15px;
	background: rgba(255,255,255,0.90);
	border: rgba(0,0,0,1.00) solid 1px;
	overflow: hidden;}

.company_box1 table{width: 100%;}

.company_td1{width: 20%;
	padding: 5px 10px;
	margin-bottom: 10px;
	text-align: center;
	border-right: rgba(0,0,0,1.00) solid 1px;}
	
.company_td2{padding: 5px 10px;}

.company_box_inner_left{float: left;}

.company_box_inner_right{width: 30%;
	float: right;}
	
.company_box_inner_right img{width: 100%;}

.com_img1{width: 90%;
	margin: 0 auto;}
	
.com_img1 img{width: 100%;}

.logo_group{width: 50%;
	margin: 0 auto;}
	
.logo_group img{width: 100%;}

.bar_gold{width: 100%;
	height: 10px;
	position: relative;}

.bar_gold img{width: 100%;
	height: 100%;}

.bg_color1{background: url("../img/bg_color1.png");
	background-size: 100% 100%;
	position: relative;
	overflow: hidden;}
	
.bg_color2{background: url("../img/bg_color2.png");
	background-size: 100% 100%;
	position: relative;
	overflow: hidden;}
	
.bg_color3{background: url("../img/bg_color3.png");
	background-size: 100% 100%;
	position: relative;
	overflow: hidden;}

.bg_color4{background: url("../img/bg_color4.png");
	background-size: 100% 100%;
	position: relative;
	overflow: hidden;}

.particle_l{width: 50%;
	position: absolute; left: 0; top: 0;}

.particle_r{width: 50%;
	position: absolute; right: 0; bottom: 0;}

.particle_l img,.particle_r img{width: 100%;}

footer{width: 98%;
	padding: 0 1% 10px;
	margin: 0;
	background: rgba(242,216,170,0.70);
	position: relative;
	font-family: 'Zen Kaku Gothic New', sans-serif;
	font-weight: 500;}
	
.footer_logo{width: 20%;
	float: left;}
	
.footer_logo img{width: 100%;}

.footer_box1{width: 95%;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	}

.footer_menu{
	overflow: hidden;
	float: right;}
	
.footer_menu_btn1{line-height: 280%;
	float: left;}

.footer_menu_btn1 a{display: block;
	color: rgba(0,0,0,1.00);
	transition: 0.3s all;}

.footer_menu_btn1 a:hover{color:rgba(59,137,211,1.00);}

/* map */
#map_wrapper {
    position: relative;
    width: 50%;
	margin: 0 auto;
}

#map_wrapper:before {
    content:"";
    display: block;
    padding-top: 28.12%; /* 高さと幅の比を16:9に固定。9/16*100=56.25 */
}

#map_content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}	

form{}

.cart_table{width: 80%;
	margin: 0 auto;}

.cart_table table{width: 100%;}

.cart_table_td1{width: 30%;}

.cart_table_td2{width: 70%;
	padding: 5px 0;}

.cart_table_td2_2{width: calc(70% - 20px);
	padding: 5px 10px;
	background:rgba(255,255,255,1.00); 
	border: rgba(0,0,0,0.30) solid 1px;}

.input1{width: 90%;
	padding: 5px 10px;}
	
.textarea1{width: 90%;
	padding: 5px 10px;}

button.cart_btn{width: 200px;
	margin: 30px auto;
	line-height: 40px;
	cursor: pointer;}
	
button.cart_btn:hover{opacity: 0.7;}

.btn_block1{width: 200px;
	height: 40px;
	margin: 0 auto;}

/*.contact_box{min-height: 72vh;}*/

.bunka_logo{width: 20%;
	margin: 0 auto;}
	
.bunka_logo img{width: 100%;}



@media screen and ( max-width:821px )
{
html{min-width: 320px;}

.loading_img2{width: 70%;
	position: fixed; top: 45%; left: 15%;}

.movie_text_text{width: 80%;
	font-size: 6vw;
	position: fixed; top: 44%; left: 10%;
	z-index: 99;}

.top_text1{width: 90%;}

header{height: 60px;}

.header_logo1{width: 250px;}

.header_logo1 img{width: 100%;}

.op_box{width: 98%;}

.op_linkbn1{width: 100%;
	margin: 0 auto;
	position: relative; top: 0; left: 0;
	z-index: 2;
	transition: 0.3s all;}
	
.op_linkbn1:hover{filter: brightness(100%);}

.con_inner0{width: 90%;
	min-width: 0;}

.con_inner1{width: 90%;
	min-width: 0;}
	
.con_inner2{width: 90%;
	min-width: 0;}

.title1,.title2{width: 100%;}

.top_flyer_box{width: 100%;
	padding: 0;
	float: none;}
	
.top_flyer1{width: 32%;
	padding: 10px 0.5% 0;
	overflow: hidden;
	float: left;}
	
.top_flyer1 img:hover,.top_flyer2 img:hover,.top_flyer3 img:hover{transform: scale(1.0,1.0);}

.news_box{width: 100%;
	min-width: 0;
	padding: 0;}

.news_title{width: 50%;
	margin: 0 auto;
	float: none;
	font-size:6vw;}

.news_date{width: 20%;}

.news_cat1,.news_cat2,.news_cat3{width: 25%;}

.news_text1{padding-top: 10px;
	width: 100%;
	margin: 0;}

.news_pdf{width: 8%;
	padding-top: 10px;
	float: none;}

.stage_information_year{font-size: 7vw;}

.stage_information_box1,.stage_information_box2,.stage_information_box3{width: calc(100% - 20px);
	min-width: 0;
	padding: 10px;}

.stage_movie1{width: 90%;
	margin: 0 auto;
	float: none;}

.stage_information_text1{width: 90%;
	padding-left: 0;
	margin: 0 auto;
	float: none;}

.slider_main{width: 100%;
	margin: 0 auto;
	position: relative;}

.movie_img1{width: 50%;
	margin: 0 ;
	overflow: hidden;}

.btn1{width: 75%;
	line-height: 250%;}
	
.btn2{width: 90%;
	line-height: 250%;}

.btn1:hover,.btn2:hover{transform: scale(1.0,1.0);}

.stage_information_box_inner1{width: 100%;
	padding: 0;}

.stage_information_box_inner_img1{width: 60%;
	margin: 0 auto;
	float: none;}
	
.stage_information_box_inner_img1 img{width: 100%;}
	
.stage_information_box_inner_text1{width: 90%;
	margin: 0 auto;
	padding-left: 0;
	float: none;}

.stage_information_img2{width: 90%;
	margin: 0 auto;
	float: none;}
	
.stage_information_img3{width: 90%;
	margin: 0 auto;
	float: none;}
	
.stage_information_img4{width: 75%;
	margin: 0 auto 10px;
	float: none;}

.stage_information_img2 img:hover,.stage_information_img3 img:hover,.stage_information_img4 img:hover{transform: scale(1.0,1.0);}

.img100 img:hover{transform: scale(1.0,1.0);}

.stage_information_text2{width: 90%;
	margin: 0 auto;
	float: none;}
	
.stage_information_text3{width: 90%;
	margin: 0 auto;
	float: none;}

.sns_linkbox1{width: 40%;}
		
.sns_linkbox1 img{width: 100%;
	transition: 0.3s all;}
	
.sns_linkbox1 img:hover{transform: scale(1.0,1.0);}

.company_title_box{width: 50%;
	min-width: 0;
	background: rgba(0,0,0,1.00);}

.particle_l{width: 100%;
	position: absolute; left: 0; top: 0;}

.particle_r{width: 100%;
	position: absolute; right: 0; bottom: 0;}


.company_td1{width: auto;
	display: block;
	margin-bottom: 10px;
	text-align: center;
	border-right: none;
	border-top: rgba(0,0,0,1.00) solid 1px;
	border-bottom: rgba(0,0,0,1.00) solid 1px;}
	
.company_td2{width: auto;
	display: block;
	padding: 5px 10px;}

.company_box_inner_right{width: 70%;
	margin: 0 auto;
	float: none;}

.com_img1{padding: 10px 0;}

.logo_group{width: 90%;}

.footer_logo{width: 50%;
	margin: 0 ;}

.footer_menu{clear: both;
	float: none;}

.footer_menu_btn1{clear: both;}

/* map */
#map_wrapper {
    position: relative;
    width: 90%;
	margin: 0 auto;
}

#map_wrapper:before {
    content:"";
    display: block;
    padding-top: 56.25%; /* 高さと幅の比を16:9に固定。9/16*100=56.25 */
}

.cart_table_td1{width: auto;
	display: block;}

.cart_table_td2,.cart_table_td2_2{width: auto;
	display: block;}
	
.bunka_logo{width: 50%;}
	
}

























