/******************************************************************************/
/*テーマデザイン*/
/*

薄いグレー：#F9F9F9
グレー：#EEE
濃いグレー：#CCC
濃い茶：#331100
*/
/******************************************************************************/
body{
	min-height:100vh;
  	display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
  	-webkit-box-orient: vertical;
  	-webkit-box-direction: normal;
  	-ms-flex-direction: column;
  	flex-direction: column;
}

.wrap__maxwidth--1280{
	max-width:1280px;
}

/******************************************************************************/
/*配色*/

header{
	background:#F9F9F9;
	border-top:solid 5px #000;
	border-bottom:solid 1px #EEE;
}

footer{
	background:#F9F9F9;
	border-bottom:solid 3px #000;
}

article{
	width:100%;
	min-height:100vh;
}

h1{
	border-top:solid 5px #CCC;
	border-bottom:solid 1px #CCC;
	background:#F9F9F9;
}

h2{
	background:;
	border-bottom:solid 1px #CCC;
}


/******************************************************************************/
/*ヘッダー*/
/******************************************************************************/

header{
	width:100%;
	height:100px;
	margin:0;
	padding:1rem;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}

.header__logo--left{
	width:240px;
	height:40px;
}


.site__summary{
	font-size:0.6rem;
	margin:0;
	padding:0;
}

.site__summary strong{
	font-weight:100;
}

/******************************************************************************/
/*フッター*/
/******************************************************************************/
footer{
	margin:auto 0 0 0;
	padding:1.5rem;
}

footer .copyright{
	margin:1em auto 1em auto;
	padding:0;
	text-align:center;
	font-size:0.8em;
}

.footer__logo--center img{
	display:block;
	margin:0 auto 1em auto;
	padding:0;
}

.fotter__info--wrap{
	margin:0 auto 0 auto;
	padding:1rem 0 1rem 0;
	border-top:dashed 1px #666;
	border-bottom:dashed 1px #666;
	display:flex;
	flex-wrap:wrap;
}

.fotter__info--wrap address{
	flex:1 1 25em;
	font-size:0.8em;
}

.fotter__info--wrap address h6{
	margin:0;
	padding:0;
	line-height:1.8;
}

.fotter__info--wrap address p{
	margin:0;
	padding:0;
	line-height:1.6;
}

.fotter__info--wrap address p span{
	display:inline-block;
}

.fotter__info--wrap address p span:last-child{
	margin-left:1em;
}

@media screen and (max-width: 768px){
	.fotter__info--wrap address *{
		text-align:center;
	}
}



/******************************************************************************/
/*PAGE*/
/******************************************************************************/
main{
	margin:0 auto 0 auto;
	padding:4em 2em 4em 2em;
	max-width:1280px;
}

.youtube{
	margin:0 0 2em 0;
}


h1{
	margin:0 0 1em 0;
	padding:0.5em;
	font-size:2em;
	line-height:1.2;
}

h2{
	margin:0 0 1em 0;
	padding:0.5em;
	font-size:2em;
	line-height:1.2;
}

h3{
	margin:0 0 1em 0;
	padding:0.5em;
	font-size:1.3em;
	line-height:1.2;
}

h3::before{
	content:"\02981";
	display:inline-block;
	margin:0 0.5em 0 0;
}

.bt__center--big{
	display:block;
	margin:1em auto 2em auto;
	padding:0.5em;
	width:80%;
	height:auto;
	text-align:center;
	font-weight:800;
	font-size:1.5em;
	background:#331100;
	border:double 5px #FFF;
	border-radius:0.25rem;
	filter: drop-shadow(1px 1px 10px rgb(0, 0, 0));
}

.bt__center--big a{
	display:block;
	width:100%;
	height:auto;
	text-align:center;
	text-decoration:none;
	color:#FFF;
}

.bt__center--big a::before{
	content:"\0276F\0276F";
	display:inline-block;
	margin:0.5em;
}

.bt__center--big a::after{
	content:"\0276E\0276E";
	display:inline-block;
	margin:0.5em;
}


.admission--fee{
	margin-bottom:1em;
}

.admission--fee dl{
	margin:0 auto 0 auto;
	padding:0;
	width:95%;
	display:flex;
	border-bottom:dashed 1px #CCC;
}

.admission--fee dl dt{
	flex:1 1 auto;
	width:30%;
	margin:0;
	padding:0.5em;
	
}

.admission--fee p{
	margin:1em 0 1em 2em;;
}

.admission--fee dl dd{
	flex:1 1 auto;
	margin:0;
	padding:0.5em;
	text-align:right;
}

.open--close{
	margin-bottom:1em;
}

.open--close dl{
	margin-left:2em;
	border-bottom:dashed 1px #CCC;
}

.open--close dl dt{
	font-weight:800;
}

.location dl{
	margin:0 auto 0 2em;
	padding:0;
}

.location dl dt{
	font-weight:800;
}

.location dl dd{
	margin:0;
	padding:0;
}

.col__regularorder{
	display:flex;
	flex-wrap:wrap;
}

.col__regularorder figure{
	flex:1 1 calc(30% - 1em);
	margin:0 1em 1em 0;
	min-width:180px;
}

.col__regularorder div.text{
	flex:1 1 70%;
}

.col__reverseorder{
	display:flex;
	flex-wrap:wrap;
	flex-direction: row-reverse;
}

.col__reverseorder figure{
	flex:1 1 calc(30% - 1em);
	margin:0 0 1em 1em;
	min-width:180px;
}

.col__reverseorder div.text{
	flex:1 1 70%;
}