@charset "utf-8";
/* CSS Document */


body{width: 100%;
	overflow-y: scroll;
	color: rgba(35,24,21,1.00);}

.font-acu1{font-family: acumin-pro-condensed, sans-serif;
font-weight: 700;
font-style: normal;}

.font-acu2{font-family: acumin-pro-wide, sans-serif;
font-weight: 600;
font-style: normal;}

.font-goth1{font-family: source-han-sans-cjk-ja, sans-serif;
font-weight: 300;
font-style: normal;}

.font-goth2{font-family: source-han-sans-cjk-ja, sans-serif;
font-weight: 400;
font-style: normal;}

.font-goth3{font-family: source-han-sans-cjk-ja, sans-serif;
font-weight: 500;
font-style: normal;}

.font-goth4{font-family: source-han-sans-cjk-ja, sans-serif;
font-weight: 700;
font-style: normal;}

.font-goth5{font-family: source-han-sans-cjk-ja, sans-serif;
font-weight: 900;
font-style: normal;}

.bg_box1{width: 100%;
	height: 100vh;
	position: fixed; top: 0; left: 0;
	z-index: 0;
	background: url("../img/bg_circle2.png");
	background-repeat: repeat;
	animation: bgiLoop 5s linear infinite;}
	
@-webkit-keyframes bgiLoop {
	0% { background-position: 0 0;}
  100% { background-position: -65px 82px;}
}
@-moz-keyframes bgiLoop {
	0% { background-position: 0 0;}
  100% { background-position: -65px 82px;}
}
@-o-keyframes bgiLoop {
	0% { background-position: 0 0;}
  100% { background-position: -65px 82px;}
}	
@keyframes bgiLoop {
    0% { background-position: 0 0;}
  100% { background-position: -65px 82px;}
}

.bg_white{background: rgba(255,255,255,0.90);}
.bg_white07{background: rgba(255,255,255,0.70);}
.bg_white05{background: rgba(255,255,255,0.50);}
.bg_black05{background: rgba(0,0,0,0.50);}
.bg_green{background:rgba(41,209,50,0.70);}
.bg_blue{background:rgba(126,206,244,1.00);}
.bg_blue2{background:rgba(126,206,244,1.00);}
/*.bg_blue2{background:rgba(0,197,255,0.90);}*/
.bg_pink{background:rgba(238,135,180,1.00);}
.bg_pink2{background:rgba(238,135,180,1.00);}


.start_filter{width: 100vw;
	height: 100vh;
	position: fixed; top: 0; left: 0;
	background:rgba(255,255,255,1.00);
	z-index: 9999;}

.loading_logo{width: 100%;
	text-align: center;
	position:absolute; top: 40%;}
	
.loading_logo img{width: 20%;}

header{width: 100%;
	height: 60px;
	background: rgba(255,255,255,0.90);
	border-bottom: rgba(126,204,244,1.00) solid 1px;
	position: fixed; top: 0;
	z-index: 9;
	overflow: hidden;}

.header_logo{height: 50px;
	padding: 5px 10px;
	float: left;}
	
.header_logo img{height: 100%;}

.pc_menu{padding-left: 20px;
	float: left;}

.pc_menu_btn1{padding: 0 10px;
	font-size: 24px;
	line-height: 60px;
	float: left;}

.pc_menu_btn1 a{display: block;
	color: rgba(0,0,0,1.00);
	transition:0.3s all;}
	
.pc_menu_btn1 a:hover{color: rgba(238,135,180,1.00);}

.main_img{width: 100%;
	padding-top: 60px;
	/*background: url("../img/bg1.webp");*/
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
	position: relative;
	z-index: 1;}

.main_img_inner{width: 100%;
	margin: 0 auto;
	position: relative;}

.main_img_inner img{width: 100%;}

.main_img_cat{width: 100%;
	position: absolute; top: 0;}

.nijilogo_white{width: 8%;
	position: absolute; bottom: 5%; left: 2%;}

.con_block1{width: 100%;
	text-align: center;
	position: relative;
	z-index: 1;}

.con_title{width: 40%;
	min-width: 350px;
	margin: 0 auto;
	font-size: max(4vw,50px);
	line-height: 120%;
	text-align: center;
	background: rgba(238,135,180,1.00);}

.con_block_inner{width: 65%;
	min-width: 700px;
	margin: 0 auto;}

.top_link_box{width: 75%;
	margin: 0 auto;
	overflow: hidden;}
	
.top_link1{width: 49%;
	padding: 0 0.5%;
	float: left;}
	
.top_link1 img{transition: 0.3s all;}

.top_link1 img:hover{opacity: 0.7;}

.news_box{width: 100%;
	margin: 0 auto;
	overflow: hidden;}
	
.topics_box{width: calc(60% - 32px);
	height: 318px;
	padding: 15px;
	margin-right: 10px;
	text-align: left;
	float: left;
	overflow-y: scroll;
	background: rgba(250,250,250,1.00);
	border: rgba(238,135,180,0.50) solid 1px;}
	
.topic_block1{width: 100%;}

.topic_date{font-size: max(1.2vw,16px);
	line-height: 120%;}
	
.topic_title{font-size: max(1.2vw,18px);
	line-height: 140%;}
	
.topic_text{font-size: max(0.9vw,14px);
	line-height: 140%;}

.topic_text a{color: rgba(126,206,244,1.00);}

.topic_text img{width: 80%;
	margin: 0 10%;}

.topic_bar{width: 100%;
	height: 1px;
	background: rgba(0,0,0,0.10);}
	
.twitter_box{width: calc(40% - 12px);
	height: 300px;
	background: rgba(197,197,197,1.00);
	float: left;}

.cast_box1{width: 100%;
	display: flex;
	flex-direction: row; /* 左から */
	flex-wrap: wrap; /* 複数行に配置、左から右へ、上から下へ、の順番に。 */
	justify-content: center; /* 中央寄せ */
	align-items: flex-start; /* アイテムを先頭にまとめて配置。*/}

.title1{width: 30%;
	margin: 0 auto;
	font-size: max(2.2vw,24px);
	line-height: 150%;
	text-align: center;
	border-bottom: rgba(126,206,244,1.00) solid 3px;}

.text1{font-size: max(1.4vw,18px);
	line-height: 150%;}

.text2{font-size: max(1.2vw,16px);}

.text3{font-size: max(1.8vw,22px);}

.text4{font-size: max(1.0vw,14px);}

.text5{font-size: max(3.2vw,42px);
	line-height: 150%;}

.cast_logo{width: 25%;
	margin: 0 auto;}

.cast_block1{width: 19%;
	padding: 0 0.5%;}
	
.cast_img1{width: 100%;
	padding-bottom: 5px;}
	
.cast_img1 img{width: 100%;}

.cast_name1{width: 100%;
	padding: 5px 0;
	font-size: max(1.6vw,20px);
	line-height: 120%;
	text-align: center;
	background: rgba(255,255,255,0.70);}
	
.cast_name2{width: 100%;
	margin-top: 5px;
	font-size: max(1.2vw,16px);
	line-height: 120%;
	text-align: center;
	background: rgba(255,255,255,0.70);}

.cast_name3{font-size: 0.8vw;
	line-height: 100%;}

.btn_m1{width: 80%;
	margin: 0 auto;}

.cast_date{width: 100%;
	padding-bottom: 3px;
	margin-bottom: 5px;
	font-size: max(1.4vw,18px);
	line-height: 110%;
	background:rgba(126,206,244,1.00);
	color: rgba(255,255,255,1.00);
	border-radius: 100px;}

.schedule_block1{width: calc(100% - 32px);
	padding: 0 15px;
	border: rgba(255,255,255,1.00) solid 3px;}

.schedule_date{font-size: max(4vw,50px);
	text-align: left;
	line-height: 100%;
	border-bottom: rgba(255,255,255,1.00) solid 3px;}

.schedule_block_inner1{width: 100%;
	overflow: hidden;}

.schedule_time{width: 10%;
	font-size: max(2.2vw,28px);
	line-height: 100%;
	text-align: left;
	float: left;}
	
.schedule_text{width: 90%;
	font-size: max(1.2vw,18px);
	text-align: left;
	float: left;
	overflow: hidden;}

.schedule_text_block{padding-right: 2%;
	padding-bottom: 10px;
	float: left;}
	
.schedule_text_block2{clear: both;
	padding-right: 2%;
	float: left;}

.schedule_bar{width: 100%;
	height: 1px;
	background: rgba(255,255,255,1.00);}


.schedule_table{width: 100%;}

.schedule_table table{width: 100%;
	font-size: max(2.2vw,28px);
	line-height: 150%;
	border-left: rgba(255,255,255,1.00) solid 2px;
	border-top: rgba(255,255,255,1.00) solid 2px;}
	
.schedule_td1,.schedule_td2,.schedule_td3,.schedule_td4{border-right: rgba(255,255,255,1.00) solid 2px;
	border-bottom: rgba(255,255,255,1.00) solid 2px;
	text-align: center;
	vertical-align: middle;}

.schedule_td3,.schedule_td4{width: 14%;}

.schedule_td3{background: rgba(255,255,255,0.50);}

.schedule_td3 img{width: 25%;
	margin-top: 8%;
	padding: 0;}

.schedule_td4{font-size: max(1.4vw,16px);
	line-height: 150%;
	background: rgba(139,139,139,0.80);
	color: rgba(255,255,255,1.00);}

.cast_table{text-align: left;
	line-height: 100%;
	color: rgba(255,255,255,1.00);}

.cast_table table tr td{vertical-align: middle;
	padding: 5px 0;
	color: rgba(255,255,255,1.00);
	line-height: 100%;}

.cast_table.text4,.cast_table table tr td.text4{line-height: 150%;}

.cast_table.guest_table tr td{vertical-align: middle;}

/* map */
#map_wrapper {
    position: relative;
    width: 100%;
	min-width: 700px;
	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%;
}	

.ticket_btn1{width: 25%;
	margin: 0 auto;
	line-height: 200%;
	background: rgba(238,135,180,1.00);
	border-radius: 5px;
	transition:0.3s all;}
	
.ticket_btn2{width: 25%;
	margin: 0 auto;
	line-height: 200%;color: rgba(255,255,255,1.00);
	background:rgba(112,112,112,1.00);
	border-radius: 5px;}
	
.ticket_btn1:hover{opacity: 0.7;}
	
.ticket_btn1 a{display: block;
	color: rgba(255,255,255,1.00);}

.goods_box1{width: calc(100% - 30px);
	padding: 15px;
	background: rgba(255,255,255,1.00);}
	
.goods_text1{}

.goods_item_block1{width: 100%;
	overflow: hidden;}
	
.item_img1{width: calc(25% - 4px);
	margin: 0 auto;
	border: rgba(238,135,180,1.00) solid 2px;}

.item_img1 img{width: 100%;}

.item_text_box1{width: 100%;
	text-align: center;}

.item_caution1{display: inline-block;
	padding: 5px 10px;
	color: rgba(179,85,156,1.00);
	border: rgba(179,85,156,1.00) solid 1px;}

.goods_img1{width: 100%;}

.goods_img1 img{width: 100%;}

footer{width: 100%;
	padding-bottom: 10px;
	background:rgba(255,255,255,1.00);
	border-top: rgba(238,135,180,1.00) solid 1px;
	position: relative;
	z-index: 1}

.footer_logo{width: 10%;
	margin: 0 auto;}

.copyright{font-size: max(1.0vw,14px);
	line-height: 150%;
	text-align: center;}

.flex_box{display: flex;
	/* flex-flow: <flex-direction> || <flex-wrap>; */
	flex-direction: row; /* 左から */
	/*flex-direction: row-reverse;　/* 右から */
	/*flex-direction: column; /* 上から */
	/*flex-direction: column-reverse; /* 下から */
	/*flex-wrap: nowrap; /* 単一行に配置、アイテムは幅に収まるように縮小される。 */
	flex-wrap: wrap; /* 複数行に配置、左から右へ、上から下へ、の順番に。 */
	/*flex-wrap: wrap-reverse; /* 複数行に配置、左から右へ、下から上へ、の順番に。 */
	/*justify-content: flex-start; /* 左寄せ */
	/*justify-content: flex-end; /* 右寄せ */
	justify-content: center; /* 中央寄せ */
	/*justify-content: space-between; /* 両端+等間隔 */
	/*justify-content: space-around; /* 等間隔 */
	/*align-items: stretch; /*アイテムをコンテナの高さ（または幅）いっぱいに配置。*/
	align-items: flex-start; /* アイテムを先頭にまとめて配置。*/
	/*align-items: flex-end; /*アイテムを後尾にまとめて配置。*/
	/*align-items: center; /*アイテムを中央にまとめて配置。*/
	/*align-items: baseline; /* アイテムをベースラインに沿って配置。 */
	/*align-content: stretch; /* すべてのアイテムを等間隔に配置。サイズがautoであるアイテムはコンテナに合わせて引き延ばす。 */
	/*align-content: flex-start; /* アイテムを先頭に寄せて配置。 */
	/*align-content: flex-end; /* アイテムを後尾に寄せて配置。 */
	align-content: center; /* アイテムを中央に寄せて配置。 */
	/*align-content: space-between; /* 先頭と後尾は端に、残りは等間隔に配置。 */
	/*align-content: space-around; /* すべてのアイテムを等間隔に配置、各アイテムの両側に半分のサイズの間隔。 */
	/*align-content: space-evenly; /* すべてのアイテムを等間隔に配置、各アイテムの周りに同じサイズの間隔 */}
	

.flex_item1{width: calc(25% - 20px);
	height: 100px;
	margin: 10px;
	font-size: 5vw;
	background: rgba(229,159,160,1.00);}
	
.flex_item2{width: calc(25% - 20px);
	height: 150px;
	margin: 10px;
	font-size: 5vw;
	background: rgba(153,181,247,1.00);}
	
.flex_item3{width: calc(25% - 20px);
	height: 75px;
	margin: 10px;
	font-size: 5vw;
	background:rgba(134,249,137,1.00);}

.btn_information{width: 50%;
	min-width: 450px;
	margin: 0 auto;
	padding: 10px 20px;
	font-size: max(1.2vw,16px);
	line-height: 130%;
	text-align: left;
	background: rgba(126,206,244,1.00);
	border-radius: 5px;
	transition:0.3s all;}
	
.btn_information:hover{opacity: 0.8;}
	
.btn_information a{display: block;
	color: rgba(255,255,255,1.00);}

.btn_information table tr td {color: rgba(255,255,255,1.00);
	font-size: max(1.2vw,16px);}

.informaiton_box{width: 60%;
	margin: 80px auto;
	padding: 20px;
	background: rgba(255,255,255,1.00);
	border: rgba(0,0,0,0.20) solid 1px;
	position: relative;}

.bar1{width: 100%;
	height: 1px;
	background: rgba(0,0,0,0.20);}









@media screen and ( max-width:820px )
{
body{min-width: 320px;}

.nijilogo_white{width: 15%;
	position: absolute; bottom: 2%; left: 2%;}

.loading_logo img{width: 60%;}

.main_img{padding-top: 0;}

.con_title{width: 70%;
	min-width: 0;
	font-size: max(10.0vw,36px);
	text-align: center;}

.con_block_inner{width: 90%;
	min-width: 0;
	margin: 0 auto;}

.top_link_box{width: 90%;
	margin: 0 auto;
	overflow: hidden;}
	
.top_link1{width: 100%;
	padding: 0 0;
	float: left;}
	
.top_link1 img{transition: 0.3s all;}

.top_link1 img:hover{opacity: 1.0;}

.news_box{width: 100%;
	margin: 0 auto;
	overflow: hidden;}
	
.topics_box{width: calc(100% - 32px);
	height: 250px;
	padding: 15px;
	margin-right: 0;
	float: none;}
	
.topic_date{font-size: max(4.4vw,16px);
	line-height: 120%;}
	
.topic_title{font-size: max(4.4vw,16px);
	line-height: 140%;}
	
.topic_text{font-size: max(4.0vw,12px);
	line-height: 140%;}

.topic_text img{width: 100%;
	margin: 0;}

.topic_bar{width: 100%;
	height: 1px;
	background: rgba(0,0,0,0.10);}
	
.twitter_box{width: 100%;
	margin-top: 15px;
	float: none;}

.title1{width: 60%;
	font-size: max(4.6vw,22px);
	line-height: 150%;}

.text1{font-size: max(4.0vw,16px);
	line-height: 150%;}

.text2{font-size: clamp(18px,3.8vw,14px);}

.text3{font-size: max(4.4vw,20px);}

.text4{font-size: max(3.6vw,12px);}

.text5{font-size: max(8.0vw,28px);}

.cast_logo{width: 50%;}

.cast_block1{width: 48%;
	padding: 0 1%;}
	
.cast_img1{width: 100%;}
	
.cast_img1 img{width: 100%;}

.cast_name1{font-size: max(4.4vw,18px);
	text-align: center;}
	
.cast_name2{font-size: max(3.6vw,14px);
	text-align: center;}
	
.cast_name3{font-size: 2.8vw;
	text-align: center;}

.cast_date{font-size: max(4.2vw,16px);}

.schedule_date{font-size: max(10vw,50px);
	text-align: center;}

.schedule_block_inner1{width: 100%;
	overflow: hidden;}

.schedule_time{width: 100%;
	padding-bottom: 10px;
	font-size: max(7vw,36px);
	line-height: 100%;
	text-align: center;
	float: none;}
	
.schedule_text{width: 100%;
	font-size: max(3.8vw,14px);
	text-align: left;
	float: none;
	overflow: hidden;}

.schedule_text_block{padding-right: 2%;
	padding-bottom: 10px;
	float: left;}
	
.schedule_text_block2{clear: both;
	padding-right: 2%;
	float: left;}

.schedule_bar{width: 100%;
	height: 1px;
	background: rgba(255,255,255,1.00);}

.schedule_table{width: 100%;
	overflow-x: scroll;
	overflow-y: hidden;}

.schedule_table table{width: 200%;
	max-width: 900px;
	margin: 0 auto;
	font-size: clamp(24px,6.4vw,30px);}

.schedule_td3 img{width: 25%;
	margin: 10% 0;
	padding: 0;}

.schedule_td4{font-size: max(1.4vw,16px);
	line-height: 150%;
	background: rgba(139,139,139,0.80);
	color: rgba(255,255,255,1.00);}

/* map */
#map_wrapper {
    position: relative;
    width: 100%;
	min-width: 0;
	margin: 0 auto;
}

#map_wrapper:before {
    content:"";
    display: block;
    padding-top: 56.25%; /* 高さと幅の比を16:9に固定。9/16*100=56.25 */
}

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

.ticket_btn1,.ticket_btn2{width: 70%;
	line-height: 200%;}
	
.ticket_btn1:hover{opacity: 1.0;}

.item_img1{width: 70%;
	margin: 0 auto;
	border: rgba(238,135,180,1.00) solid 2px;
	float: none;}

.item_img1 img{width: 100%;}

.item_text_box1{width: 100%;
	padding-left: 0;
	text-align: left;
	float: none;}

.item_caution1{width: calc(100% - 22px);
	padding: 5px 10px;
	color: rgba(179,85,156,1.00);
	border: rgba(179,85,156,1.00) solid 1px;}

.footer_logo{width: 40%;}

.copyright{font-size: max(3.8vw,12px);}

.btn_information{width: calc(90% - 40px);
	min-width: 250px;
	font-size: max(4vw,12px);}

.btn_information table tr td{font-size: max(4vw,12px);}

.btn_information:hover{opacity: 1.0;}

.informaiton_box{width: calc(90% - 20px);
	padding: 10px;
	margin: 15px auto;}

}


























