@charset "UTF-8";
.contents_inner.info{
	display:grid;
	grid-template-columns:auto 25px auto 25px auto 25px auto;
	align-items:center;
}
.contents_inner.info dl{
	background-color:#ffffff;
	padding:1em;
}
.contents_inner.info dl dt{
	font-family: 'M PLUS 1p', sans-serif;
	color:#022D52;
	font-weight:500;
	font-size:1.2em;
	text-align:center;
}
.contents_inner.info dl dd{
	font-family: 'M PLUS 1p', sans-serif;
	font-size:1.6rem;
	margin-top:0.7em;
}
.reservation_button{
	display:grid;
	grid-template-columns:1fr 1fr;
	grid-column-gap:50px;
	margin-top: 50px;
}
.reservation_button a:hover{
	opacity:0.7;
}
/*料金表*/
#price table{
	width:100%;
	margin-bottom:30px;
}
#price table td{
	text-align:center;
}
#price table thead td{
	background-color:#022D52;
	color:#ffffff;
	font-weight:500;
	font-size:1.1em;
}
#price table th{
	color:#022D52;
	font-weight:500;
	background-color: #d9d7d7;
}
#price table td.color_a{
	background-color:#c3eef4;
}
#price table td.color_b{
	background-color:#eaf9a6;
}
#price table td.color_c{
	background-color:#fedede;
}
#price table td.color_d{
	background-color:#ffffff;
}
#price table td.color_e{
	background-color:#e8edf9;
}
#price ul.bigcircle li{
	position:relative;
	margin-bottom:1em;
	margin-left:1em;
}
#price ul.smallcircle li{
	margin:0.5em 0 0.5em 1em;;
}
#price ul.bigcircle li::before{
	content:"■";
	position:absolute;
	top:0.3em;
	left:-1.5em;
	font-size:0.7em;
	color:#0058A5;
}
#price ul.smallcircle li::before{
	content:"●";
	position:absolute;
	top:0.6em;
	left:-1.5em;
	font-size:0.5em;
	color:#000000;
}
#price h3{
	font-size:1.1em;
	font-weight:500;
	margin-bottom:1em;
}
#price .dates {
	font-size:min(5vw,2.4rem);
	text-align:center;
	background-color:#FFFFFF;
	max-width:18em;
	height:2em;
	display:grid;
	align-items:center;
	justify-content:center;
	margin:0 auto 1em;
	border-radius:.2em;
}
#price .price{
	background-color:#022D52;
	color:#ffffff;
	font-weight:500;
	font-size:min(5vw,2.0rem);
	text-align:center;
	border:5px solid #ffffff;
	padding:1em;
	margin-bottom:.8em
}
#price ul.tag{
	display:grid;
	grid-template-columns: repeat(7, 1fr);
	grid-column-gap:5px;
	border-bottom:10px solid #0078e0;
}
#price ul.tag li{
	text-align:center;
	padding:min(2vw,1em) 0;
	background-color:#abbfef;
	font-size:min(3.6vw,1.8rem);
	border-radius:10px 10px 0 0;
	color:#FFFFFF;
	cursor:pointer;
}
#price ul.tag li:hover {
	opacity:.75;
}
#price ul.tag li.active {
	background-color:#0078e0;
	color:#FFFFFF;
	transform:translateY(0);
}
#price .schedule tbody:not(.active) {
	display:none;
}

#acf-form {
	margin-bottom:30px;
	background-color:#FFFFFF;
	padding-bottom:30px;
}
#acf-form .acf-form-submit {
	text-align:center;
}

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

@media screen and (max-width:1200px){
	.contents_inner.info dl dd {
		font-size: 1.4rem;
	}
	.contents_inner.info {
		display: grid;
		grid-template-columns: auto 20px auto 20px auto 20px auto;
		align-items: center;
	}
	.contents_inner.info dl {
		padding: 0.7em;
	}
}

@media screen and (max-width:1024px){


}

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

@media screen and (max-width:640px){
	.contents_inner.info{
		grid-template-columns:1fr;
		justify-items: center;
	}
	.contents_inner.info dl{
		background-color:#ffffff;
		padding:1em;
	}
	.contents_inner.info dl dt{
		font-size:1.6rem;
	}
	.contents_inner.info dl dd{
		font-size:1.4rem;
	}
	img.arrow{
		width:25px;
		transform: rotateZ(90deg);
		margin-top:-16px;
		margin-bottom:-16px;
	}
	.reservation_button{
		grid-template-columns:1fr;
		grid-column-gap:inherit;
		grid-row-gap:20px;
		margin-top: 30px;
	}
	/*料金表*/
	#price table{
		width:100%;
	}
	#price table td{
		font-size:1.3rem;
		padding:.5em;
	}
	#price table thead td{
		font-size:1.5rem;
	}
	#price table th{
		color:#022D52;
		font-weight:500;
		background-color: #d9d7d7;
		width:auto;
		padding:.5em 0;
	}
	#price table thead th:first-child {
		width: 4.5em;
	}
	#price table span.r45{
		display: block;
		transform: rotateZ(90deg);
	}
	#price h3{
		font-size:1.5rem;
	}
	#price ul li{
		font-size:1.4rem;
	}
}

@media screen and (max-width:480px){
}
	
@media screen and (max-width:360px){
}