@charset "UTF-8";
/* ////////////////////////////////////////
PC,SP
//////////////////////////////////////// */
/*タイトル*/
#title-section{
	padding-top:130px;
	padding-bottom:40px;
}
.main-title-wrap:before{
	position: absolute;
	z-index: 0;
	content:'';
	background-image: url("../img/ticket/en-ticket.png");
	background-repeat: no-repeat;
	background-size: contain;
	width:362px;
	height:84px;
	left:50%;
	margin-left:-181px;
	top:-70px;
}
/*昆虫画像*/
.head-insect:before{
	position:absolute;
	content:'';
	background-image: url("../img/ticket/head-insect.png");
	background-size: contain;
	background-repeat: no-repeat;
	width:194px;
	height:146.5px;
	left:-80px;
	top:-70px;
}
/*サブメニュー*/
#submenu{
	padding-top:36px;
	padding-bottom:20px;
}
#submenu ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; /* これで中央寄せOK */
  gap: 1.25%;              /* 要素間の余白を自動で調整 */
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
}
#submenu li {
  flex: 0 0 32.5%; /* 3つで横幅いっぱい */
  margin-top: 10px;
  position: relative;
  background: #eee; /* 確認用 */
	border-radius:10px;
}
#submenu li:nth-child(3n){
	margin-right:0;
}
#submenu li .subtitle{
	display: block;
	background-color: #fff;
	color:#5EAF00;
	transition: 0.3s;
}
#submenu li .maintitle{
	display: block;
	background-image: url("../img/common/arrow-down-green.png");
	background-size: 24px 24px;
	background-repeat: no-repeat;
	background-position: center right 10px;
	padding:5px 36px 10px 10px;
	transition: 0.3s;
}
#submenu li a{
	height:100%;
	display: block;
	line-height: 1.5em;
	background-color: #5EAF00;
	border-radius:10px;
	border:3px solid #fff;
	padding:7px 7px 0 7px;
	text-align: center;
	color:#fff;
	transition: 0.3s;
}
#submenu li a:hover{
	background-color: #fff;
	border:3px solid #5EAF00;
	color:#5EAF00;
}
#submenu li a:hover .maintitle{
	background-image: url("../img/common/arrow-down-green-over.png");
}
#submenu li a:hover .subtitle{
	background-color: #5EAF00;
	color:#fff;
}
/*2カラム*/
.col2-wrap dd{
	margin-bottom:0;
}
.col2-wrap figure{
	max-width:355px;
	margin-left:auto;
	margin-right:auto;
}
/*コンテンツ枠*/
.price-table{
	width:100%;
	text-align: center;
	margin-bottom:10px;
}
.price-table th{
	width:25%;
	padding:12px 3px;
	background-color: #5EAF00;
	color:#fff;
	text-align: center;
	border-right:solid 2px #fff;
	border-bottom:solid 2px #fff;
	font-weight: 900;
	vertical-align: middle;
}
.price-table th:last-child{
	border-right:solid 2px #5EAF00;
}
.price-table tr:last-child th{
	border-bottom:solid 2px #5EAF00;
}
.price-table td{
	width:25%;
	padding:12px 3px;
	border:solid 2px #5EAF00;
	vertical-align: middle;
}
/*プレイガイド*/
.ticket-box{
	border-top:1px solid #848484;
	padding:15px 0;
}
.ticket-box:last-child{
	padding-bottom:0;
}
.ticket-box dt>*:last-child{
	margin-bottom: 0;
}
.ticket-box dd{
	margin-bottom: 0;
}
/*////////////////////////////////////////
印刷時　PC・タブレットのみ
//////////////////////////////////////// */
@media screen and (min-width:768px) , print{
}
/* ////////////////////////////////////////
印刷時　PCのみ
//////////////////////////////////////// */
@media screen and (min-width:1100px) , print{	
	/*2カラム*/
	.col2-wrap {
		display: table;
		width:100%;
	}
	.col2-wrap>*{
		display: table-cell;
		vertical-align: top;
	}
	.col2-wrap dt{
		width:38%;
	}
	.col2-wrap dd{
		width:63%;
		padding-left:20px;
	}
	/*プレイガイド*/
	.ticket-box{
		width:100%;
		display: table;
	}
	.ticket-box dt{
		width:calc(100% - 350px);
		display: table-cell;
		vertical-align: top;
		padding-right:10px;
	}
	.ticket-box dd{
		width:350px;
		display: table-cell;
		vertical-align: top;
	}
}
@media screen and (min-width:1100px) and (max-width: 1600px) , print{
}
@media screen and (min-width:1600px) , print{
}
/* ////////////////////////////////////////
タブレット・SPのみ
//////////////////////////////////////// */
@media screen and (max-width: 1100px) {
	/*昆虫画像*/
	.head-insect:before{
		width:160px;
		height:136px;
		top:-65px;
		left:-80px;
	}
	/*タイトル*/
	.main-title-wrap:before{
		background-position: center bottom;
		width:198px;
		height:45px;
		margin-left:-99px;
		left:50%;
		top:-16px;
	}
	/*プレイガイド*/
	.ticket-box dt{
		padding-bottom:10px;
	}
}
/* ////////////////////////////////////////
タブレットのみ
//////////////////////////////////////// */
@media screen and (min-width: 767px) and (max-width: 1100px) {
	/*タイトル*/
	.main-title-wrap:before{
		width:264px;
		height:60px;
		margin-left:-132px;
		top:-52px;
	}
	/*サブメニュー*/
	#submenu li {
    	flex: 0 0 48%; /* タブレットでは2列 */
	}
}
/* ////////////////////////////////////////
SPのみ
//////////////////////////////////////// */
@media screen and (max-width: 767px){
	#title-section{
		padding-top:65px;
	}
	/*サブメニュー*/
	#submenu{
		padding-top:20px;
		padding-bottom:20px;
	}
	#submenu li{
		flex: 0 0 100%; /* スマホでは1列 */
	}
	/*本文*/
	.app-box{
		text-align: center;
	}
	.app-box>*:last-child{
		margin-top:10px;
	}
	.sounds-box audio{
		width:100%;
	}
}
@media screen and (max-width: 410px){
}
/* ////////////////////////////////////////
スライド調整用　sm(540px以上)
//////////////////////////////////////// */
@media screen and (min-width:540px) {
}