/*
Theme Name: BOOTH 2.0
Them URL:
Description: BOOTH
Author: kono-direction co.,ltd.
Author URI: https://kono-d.jp
Version:2.0.0
*/
/*** root ***/
:root{
	--bk:#000000;
	--gr:#cccccc;
	--wh:#ffffff;
	--sub:#001eaa;
	--key:#990033;
	--gd:#d2c8aa;
	--bg:#eeeeee;
	
	--mincho:serif;
	--gothic:sans-serif ;
}
*, *:before, *:after{
	box-sizing:border-box;
	border:0;
	vertical-align:baseline;
	font-style:normal;
	/*transition:0.8s;*/
}
a, span,
b, i, em, small, big, strong,
del, ins,
label, select, textarea, input, button,
img{ display:inline-block; }

dl, dt, dd{ margin:0; padding:0; }

a{ cursor:pointer; }

.imgwrap{
	display:block;
	text-align:center;
	vertical-align:middle;
	line-height:0;
}
.imgwrap > img,
.imgwrap > video{
	max-width:100%;
}
.imgwrap > video{
	max-height:100vh;
}

/*画像保護*/
img{
	pointer-events:none;
	-webkit-touch-calluot:none;
	-moz-touch-calluot:none;
	touch-calluot:none;
	-webkit-user-select:none;
	-moz-user-select:none;
	user-select:none;
}
.mincho{ font-family:serif; }
.gothic{ font-family:sans-serif; }


html,
body{
	font-family:var(--gothic);
	font-size:calc( 100vw / 32.5 );/*390px=12px*/
	line-height:1.5em;
	color:var(--bk);
	width:100%;
	margin:0;
	padding:0;
}
@media screen and ( min-width:768px ){
	html,body{ font-size:14px; }
}
@media screen and ( min-width:960px ){
	html,body{ font-size:16px; }
}
/*** border ***/
.tline, .bline, .lline, rline,
.tline2, .bline2, .lline2, rline2,
.tbline, .lrline, .tbline2, .lrline2{ border-style:solid; }
.tdot, .bdot, .ldot, rdot,
.tdot2, .bdot2, .ldot2, rdot2,
.tbdot, .lrdot, .tbdot2, .lrdot2{ border-style:dotted; }
.tdash, .bdash, .ldash, rdash,
.tdash2, .bdash2, .ldash2, rdash2,
.tbdash, .lrdash, .tbdash2, .lrdash2{ border-style:dashed; }
.tline, .tdot, .tdash,
.tbline, .tbdot, .tbdash{ border-top-width:1px; }
.bline, .bdot, .bdash,
.tbline, .tbdot, .tbdash{ border-bottom-width:1px; }
.lline, .ldot, .ldash,
.lrline, .lrdot, .lrdash{ border-left-width:1px; }
.rline, .rdot, .rdash,
.lrline, .lrdot, .lrdash{ border-right-width:1px; }
.tline2, .tdot2, .tdash2,
.tbline2, .tbdot2, .tbdash2{ border-top-width:2px; }
.bline2, .bdot2, .bdash2,
.tbline2, .tbdot2, .tbdash2{ border-bottom-width:2px; }
.lline2, .ldot2, .ldash2,
.lrline2, .lrdot2, .lrdash2{ border-left-width:2px; }
.rline2, .rdot2, .rdash2,
.lrline2, .lrdot2, .lrdash2{ border-right-width:2px; }

/** color **/
/** font color **/
.keycolor{ color:var(--key); }
.subcolor{ color:var(--sub); }
.gdcolor{ color:var(--gd); }
.kuro{ color:var(--bk); }
.shiro{ color:white; }

/** border color **/
.bdrgd{ border-color:var(--gd); }
.bdrkey{ border-color:var(--key); }
.bdrsub{ border-color:var(--sub); }
.bdrgr{ border-color:var(--gr); }

/** background color **/
.bggd{ background-color:var(--gd); }
.bgkey{ background-color:var(--key); }
.bgbg{ background-color:var(--bg); }
.bggr{ background-color:var(--gr); }

/** font size **/
small	{  font-size:0.75em; }
.small	{ font-size:calc( 1rem - 4px ); }
.smaller{ font-size:calc( 1rem - 2px ); }
.regular{ font-size:1rem; }
.middle	{ font-size:calc( 1rem + 2px ); }
.larger	{ font-size:1.25rem; }
.larg	{ font-size:1.5rem; }
.bigger	{ font-size:calc( 1.5rem + 4px ); }
big,
.big	{ font-size:2rem; }
.catch	{ font-size:3rem; }
.normal	{ font-size:1rem; }

.low	{ line-height:1.25em; }
.mid	{ line-height:1.5em; }
.tall	{ line-height:2em; }
.lh15r	{ line-height:1.5rem; }
.lh20r	{ line-height:2rem; }
.narrow	{ line-height:calc( 1em + 4px ); }

small, .small,
.smaller{ font-weight:normal; }
.bold	{ font-weight:bold; }
.normal	{ font-weight:normal; }

.reset	{ font-size:1rem; font-weight:normal; }

.txtcenter	{ text-align:center; }
.txtright	{ text-align:right; }
.txtleft	{ text-align:left; }

/** broken **/
br.sbr,
br.mbr,
br.lbr,
br.mbbr{ display:none; }
@media screen and ( max-width:599px ){
	br.sbr{ display:inline; }
	br.mbbr{ display:inline; }
}
@media screen and ( min-width:600px ) and ( max-width:767px ){
	br.mbr{ display:inline; }
	br.mbbr{ display:inline; }
}
@media screen and ( min-width:768px ){
	br.lbr{ display:inline; }
}

/** List **/
ul.disc, ol.disc,
ul.circle, ol.circle,
ul.square, ol.square,
ul.decimal, ol.decimal,
ul.maru, ol.marul,
ul.rnr, ol.rnr,
ul.nr, ol.nr{
	padding-left:1.5em;
}
ul.disc, ol.disc{
	list-style-type:disc;
}
ul.circle, ol.circle{
	list-style-type:circle;
}
ul.square, ol.square{
	list-style-type:square;
}
ol.decimal, ul.decimal{
	list-style-type:decimal;
}
ul.maru > li, ol.maru > li,
ul.rnr > li, ol.rnr > li,
ul.nr > li, ol.nr > li{
	position:relative;
}
ul.maru > li:before, ol.maru > li:before{
	position:absolute;
	left:-1.25em;
	content:"●";
	display:block;
	font-size:inherit;
}
ul.none, ol.none,
ul.rnr, ol.rnr,
ul.nr, ol.nr{
	list-style:none;
}
ul.rnr > li, ol.rnr > li,
ul.nr > li, ol.nr > li{
	counter-increment:cunt;
}
ul.rnr > li:before,
ol.rnr > li:before,
ul.nr > li:before,
ol.nr > li:before{
	position:absolute;
	display:block;
	width:2em;
	text-align:right;
}
ul.rnr > li:before,
ol.rnr > li:before,
ul.nr > li:before,
ol.nr > li:before{
	left:-2em;
}
ul.rnr > li:before,
ol.rnr > li:before{
	content:"（" counter(cunt) "）";
}
ul.nr > li:before,
ol.nr > li:before{
	content:counter(cunt) "）";
}
ul.none, ol.none{
	padding-left:0;
}

ul li, ol li{
	margin-bottom:1em;
	line-height:1.25rem;
}
ul li h1, ol li h1,
ul li h2, ol li h2,
ul li h3, ol li h3,
ul li h4, ol li h4,
ul li h5, ol li h5{
	margin-bottom:0.5em;
}

ul li p, ol li p{
	margin:0.25em 0 0.75em 0;
}
ul > li:last-of-type,
ol > li:last-of-type{
	/*margin-bottom:0;*/
}


/**Table**/
.tb{ display:table; }
.tb,
table{
	border-collapse:collapse;
	border-spacing:0;
	width:100%;
}
.tb > .tbrow{ display:table-row; }
.tb > .tbrow dt,
.tb > .tbrow dd,
.tbcel{ display:table-cell;
	margin:0;
	vertical-align:top;
}
.tb > .tbrow dt{ width:25%; }
.tb > .tbrow dd{ width:75%; }

.tb .tbrow dt,
.tb .tbrow dd{
	padding:1rem 0.5rem;
}


/*** botton ***/
.btn,
.send,
.ahvbtn{
	width:100%;
	text-align:center;
	line-height:1;
	margin:2rem 0;
	clear:both;
}
.btn a,
.ahvbtn a,
.btn [type="submit"],
.btn [type="button"]{
	box-sizing:border-box;
	display:inline-block;
	vertical-align:top;
	text-align:center;
	text-decoration:none;
	line-height:1em;
	color:inherit;
	margin:0 0.75rem;
}
.btn a,
.ahvbtn a{
	padding:1rem 2rem;
	border:solid 1px;
	background-color:rgb(255 255 255 / 100%);
}
.ahvbtn a{
	width:50%;
	min-width:20rem;
	font-size:calc(1rem + 2px);
}
.btn [type="submit"],
.btn [type="button"]{
	color:#fff;
	font-size:calc(1rem + 2px);
	background-color:var(--bk);
	width:auto;
	padding:0.5rem 1.5rem;
	border-radius:3px;
}

.btn a:hover,
.ahvbtn a:hover{
	color:#fff;
	background-color:rgb(0 0 0 / 100%);
}
.btn [type="submit"]:hover,
.btn [type="button"]:hover{
	background-color:var(--gr);
}
.btn a.more{
	font-size:1rem;
}
.btn a + a{
	margin-left:1em;
}
.bnr{
	padding:10px;
}
a .arrow:after{
	font-family:'dashicons';
	content: "\f345";
	width:1.5em;
	padding:4px;
}
a:hover .arrow{
	transition:0.5s;
	padding-left:0.5em;
}
@media ( min-width:640px ){
	.btn a{
		max-width:320px;
	}
}
.arrow-right{
	display:inline-block;
	font-size:inherit;
	line-height:1;
	vertical-align:middle;
	width:1em;
	height:1em;
	margin-left:0.5em;
	overflow:hidden;
}
.arrow-right:after{
	content:'\2192';
	font-size:inherit;
	line-height:1;
}
a:hover .arrow-right{
	animation:rolling 1s forwards;
}
@keyframes rolling{
	0%{		text-indent:-200%;	}
	100%{	text-indent:0;	}
}


/**** Flex box ****/
.flx{
	display:flex;
	/*flex-flow:{flex-direction} {flex-wrap};*/
	flex-direction:column; /*配置軸 row左右/column上下 (reverse で反転);*/
	flex-wrap:wrap; /*折り返し nowrap/wrap/wrap-reverse */
	/*justify-content:	横揃え flex-start/center/flex-end/center/space-between/space-around */
	align-items:flex-start;/*高さ揃え stretch/flex-start/flex-start/flex-end/center/baseline */
	align-content:stretch; /*複数の高さ揃え stretch/flex-start/flex-end/center/space-between/space-around */
	width:100%;
	list-style:none;
	margin:0;
	padding:0;
}
.flxd,
.double,
.trisect,
.quarter{
	display:flex;
	flex-flow:row wrap;
	align-items:flex-start;
	align-content:stretch;
	width:100%;
}
ul.flxd, ol.flxd,
ul.flx, ol.flx,
ul.double, ol.double,
ul.trisect, ol.trisect,
ul.quarter, ol.quarter{
	list-style:none;
	padding:0;
}
ul.flx > li.cel, ol.flx > li.cel,
ul.double > li.cel, ol.double > li.cel,
ul.trisect > li.cel, ol.trisect > li.cel,
ul.quarter > li.cel, ol.quarter > li.cel{
	margin:0;
}
.flx.txtcenter{	 justify-content:center; }
.flx.txtleft{	 justify-content:flex-start; }
.flx.txtright{	 justify-content:flex-end; }

.cel,
.cel6-1, .cel6-2, .cel6-3 .cel6-4, .cel6-5,
.cel5-1, .cel5-2, .cel5-3, .cel5-4,
.cel4-1, .cel4-2, .cel4-3,
.cel3-1, .cel3-2
.cel2-1,
.cel1{
	order:0;
	/*flex:{flex-grow} {flex-shrink} {flex-basis}; */
	flex-grow:0;/*幅伸び率*/
	flex-shrink:1;/*幅縮比率*/
	/*flex-basis:	子要素の幅*/
	align-self:flex-start; /*子要素の垂直位置	flex-start/flex-end/center/stretch/baselne*/
	vertical-align:middle;
}
.double > .cel		{ flex-basis:50%; }
.trisect > .cel,
.trisect > .cel3-1	{ flex-basis:calc( 100% / 3 ); }
.trisect > .cel3-2	{ flex-basis:calc( 200% / 3 ); }
.quarter > .cel,
.quarter > .cel4-1	{ flex-basis:25%; }
.quarter > .cel4-2	{ flex-basis:50%; }
.quarter > .cel4-3	{ flex-basis:75%; }

.flx > .cel6-1, .flx > .cel6-2, .flx > .cel6-3, .flx > .cel6-4, .flx > .cel6-5,
.flx > .cel5-1, .flx > .cel5-2, .flx > .cel5-3, .flx > .cel5-4,
.flx > .cel4-1, .flx > .cel4-2, .flx > .cel4-3,
.flx > .cel3-1, .flx > .cel3-2,
.flx > .cel2-1,
.flx > .cel1{
	width:100%;
}
.flxd > .cel5-1{ flex-basis:20%; }
.flxd > .cel5-2{ flex-basis:40%; }
.flxd > .cel5-3{ flex-basis:60%; }
.flxd > .cel5-4{ flex-basis:80%; }
.flxd > .cel6-1{ flex-basis:calc( 100% / 6 ); }
.flxd > .cel6-2{ flex-basis:calc( 200% / 6 ); }
.flxd > .cel6-3{ flex-basis:calc( 300% / 6 ); }
.flxd > .cel6-4{ flex-basis:calc( 400% / 6 ); }
.flxd > .cel6-5{ flex-basis:calc( 500% / 6 ); }

.towcolumn,
.threecolumn{
	flex-flow:column wrap;
	align-items:flex-start;
	align-content:stretch;
	justify-content:center;
}
.towcolumn > .main,
.towcolumn > .side-l,
.towcolumn > .side-r,
.threecolumn > .main,
.threecolumn > .side-l,
.threecolumn > .side-r{
	flex:0 1 100%;
}

@media screen and ( min-width:767px ){

	.flx,
	.towcolumn, .threecolumn{
		flex-direction:row;
	}
	.flx .cel6-1{ flex-basis:calc( 100% / 6 ); }
	.flx .cel6-2{ flex-basis:calc( 200% / 6 ); }
	.flx .cel6-3{ flex-basis:calc( 300% / 6 ); }
	.flx .cel6-4{ flex-basis:calc( 400% / 6 ); }
	.flx .cel6-5{ flex-basis:calc( 500% / 6 ); }
	.flx .cel5-1{ flex-basis:20%; }
	.flx .cel5-2{ flex-basis:40%; }
	.flx .cel5-3{ flex-basis:60%; }
	.flx .cel5-4{ flex-basis:80%; }
	.flx .cel4-1{ flex-basis:25%; }
	.flx .cel4-2{ flex-basis:50%; }
	.flx .cel4-3{ flex-basis:75%; }
	.flx .cel3-1{ flex-basis:calc( 100% / 3 ); }
	.flx .cel3-2{ flex-basis:calc( 200% / 3 ); }
	.flx .cel2-1{ flex-basis:50%; }
	.flx .cel1-1{ flex-basis:100%; }
	
	.flx > .odr1{ order:1; }
	.flx > .odr2{ order:2; }
	.flx > .odr3{ order:3; }
	.flx > .odr4{ order:4; }
	.flx > .odr5{ order:5; }
	.flx > .odr6{ order:6; }
	.flx > .odr7{ order:7; }
	.flx > .odr8{ order:8; }
	.flx > .odr9{ order:9; }
	.flx > .odr10{ order:10; }
	
	.towcolumn > .side-l,
	.threecolumn > .side-l{
		order:1;
	}
	.towcolumn > .main,
	.threecolumn > .main{
		order:2;
	}
	.towcolumn > .side-r,
	.threecolumn > .side-r{
		order:3;
	}
	
	.towcolumn > .side-l,
	.towcolumn > .side-r{
		flex-basis:240px;
	}
	.towcolumn > .main{
		flex-basis:calc( 100% - 240px );
	}
	.threecolumn > .side-l{
		flex-basis:200px;
	}
	.threecolumn > .main{
		flex-basis:calc( 100% - 400px );
	}
	.threecolumn > .side-r{
		flex-basis:200px;
	}
	.odr1{ order:1; }
	.odr2{ order:2; }
	.odr3{ order:3; }
	.odr4{ order:4; }
	.odr5{ order:5; }
}





/**** Block ****/
#wrapper,
#contents,
.wrapper{
	margin:0;
	padding:0;
	width:100%;
}
#wrapper{
	/*overflow:hidden;*/
	min-height:100vh;
}
#contents{
	margin:0 auto;
	padding:4rem 0.5rem 2rem 0.5rem;
}
.content,
.wrap{
	margin:0 auto;
	width:100%;
	max-width:960px;
}
.content{
	margin-top:2rem;
	margin-bottom:10rem;
}
.section{
	margin-top:2rem;
	margin-bottom:6rem;
}
header + .section,
header + .content,
#topimg + .section,
#topimg + .content{
	margin-top:0;
}
.thin{
	width:100%;
	margin-left:auto;
	margin-right:auto;
	padding:1rem 0;
}
@media screen and ( min-width:767px ){

	#contents{
		padding-top:0;
		padding-left:0;
		padding-right:0;
	}
	.thin{
		width:70%;
		max-width:720px;
		padding-left:0;
		padding-right:0;
	}

}




/**** Header ***/
/*header.wrapper*/
header.wrapper{
	position:sticky;
	top:0;
	left:0;
	background-color:rgb(255 255 255 / 70% );
	padding:0.5rem;
	z-index:9000;
}
#siteheader{
	width:100%;
	max-width:1280px;
	margin:0 auto;
	text-align:center;
}
#sitecatch{
	margin:4px 0;
	font-size:calc( 1rem - 2px );
	line-height:1rem;
	text-align:center;
}
#sitelogo{
	display:block;
	margin:0 auto;
	width:40vw;
	max-width:15rem;
	height:4rem;
	padding:0;
}
#sitelogo > a{
	display:block;
	margin:0;
	padding:0;
	width:100%;
	height:100%;
	text-decoration:none;
	color:var(--bk);
}
#sitelogo > a img{
	display:block;
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	border:0;
}
#sitename{
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	text-indent:-999em;
	overflow:hidden;
	background-image:url('parts/booth_bk.svg');
	background-size:calc( 100% - 5rem ) auto;
	background-position:50% 50%;
	background-repeat:no-repeat;
}
#sitenav{
}
.topimg img{
	display:block;
	margin:0;
	padding:0;
	border:0;
	width:100%;
}
@media screen and ( min-width:768px ){
	
}
@media screen and ( min-width:820px ){
	#sitenav{
		flex-basis:calc( 100% - 15rem );
	}
}

/** Navigation **/
.pull{
	display:none;
}
.pull + label{
	position:absolute;
	top:0.5rem;
	z-index:9999;
	text-align:center;
	background-color:var(--wh);
	border-radius:0.25rem;
	width:4rem;
	height:4rem;
	padding:0.5rem;
	margin:0;
}
#menu-icon.pull + label{
	right:0.5rem;
}
#menu-icon.pull + label:before,
#menu-icon.pull + label:after{
	content:'';
	position:absolute;
	left:0.5rem;
	display:block;
	margin:0;
	padding:0;
	width:calc( 100% - 1rem );
	height:2px;
	background:#000;
	overflow:hidden;
	transition:0.4s;
}
#menu-icon.pull + label:before{
	top:33%;
}
#menu-icon.pull + label:after{
	top:66%;
}
#menu-icon.pull:checked + label:before,
#menu-icon.pull:checked + label:after{
	top:50%;
}
#menu-icon.pull:checked + label:before{
	transform:rotate(45deg);
}
#menu-icon.pull:checked + label:after{
	transform:rotate(-45deg);
}
#sitenav{
	position:absolute;
	z-index:9000;
	top:5rem;
	left:0;
	background-color:rgb(255 255 255 / 40%);
	overflow:hidden;
	width:100%;
	height:0; /* navgation close */
	padding:0 2rem;
	transition:1.2s;
}
.pull:checked + label + #sitenav{
	overflow:scroll;
	height:calc(100vh - 5rem); /* navigation open*/
	padding:3rem 2rem calc(25vw + 2rem) 2rem;
}
.menu,
.sub-menu{
	list-style:none;
	padding:0;
	margin:0;
}
ul#main-menu{
	text-align:center;
	width:100%;
}
#sitenav li > a,
#sitenav .menu-item > a,
#sitenav .child-menu-item > a{
	display:block;
	cursor:pointer;
	color:var(--wh);
	text-decoration:none;
	text-align:center;
	line-height:1.5em;
	font-size:calc( 1rem + 4px );
	padding:10px;
	border:solid 1px var(--bk);
	background-color:var(--bk);
	border-radius:6px;
	margin:0 auto;
}
#sitenav .menu-item > a small,
#sitenav .child-menu-item > a small{
	display:block;
	font-size:0.75em;
	line-height:1.5em;
	width:70%;
	padding:0.25em 0;
	border-top:solid 1px;
	margin:0 auto;
}
#sitenav #main-menu > li,
#sitenav .menu-item,
#sitenav .child-menu-item{
	text-align:center;
	text-decoration:none;
	line-height:1em;
	width:70%;
	padding:0.5rem;
	margin:0 auto;
}
#sitenav .child-menu-item{
	background-color:var(--bk);
	color:white;
}
#main-menu > li > a:hover,
#main-menu .menu-item a:hover,
#sitenav .child-menu-item a:hover{
	color:var(--bk);
	background-color:var(--wh);
}
@media screen and ( min-width:768px ){

	#main-menu{
		display:flex;
		flex-flow:row wrap;
		justify-content:center;
	}
	#sitenav #main-menu > li,
	#sitenav .menu-item{
		width:auto;
		flex-basis:33%;
		margin:0;
	}
}
@media screen and ( min-width:820px ){
	#sitenav li > a,
	#sitenav .menu-item > a,
	#sitenav .child-menu-item > a{
		padding:0.25rem;
	}
}


/*** Banner ***/
#reservebnr{
	position:sticky;
	z-index:9999;
	bottom:0;
	width:100%;
	padding:1rem;
	margin-left:0;
	background-color:rgb(255 255 255 / 30% );
}
a.bnr-reserve{
	container-type:size;
	display:block;
	text-align:center;
	text-decoration:none;
	line-height:1;
	color:#fff;
	background-image:url('parts/bnr_reserve.jpg');
	background-position:50% 50%;
	background-size:cover;
	width:100%;
	max-width:720px;
	aspect-ratio:4 / 1;
	margin:0 auto;
}

a.bnr-reserve span.title{
	display:block;
	margin:24cqh 0 20cqh 46cqw;
}
a.bnr-reserve span.big,
a.bnr-reserve small{
	display:block;
	line-height:1;
}
a.bnr-reserve span.big{
	font-size:30cqh;
}
a.bnr-reserve small{
	font-size:20cqh;
	margin-top:6cqh;
}

@media screen and ( min-width:768px ){
	a.bnr-reserve{
		max-width:480px;
	}
}
@media screen and ( min-width:880px ){
	a.bnr-reserve{
		max-width:480px;
	}
}




/*** Slider ***/
#topSlidWrap,
.slidwrap{
	position:relative;
	padding:0;
	z-index:6000;
}
#topSlidWrap{
	width:100vw;
	height:calc( 400vw / 3 );
	margin:0 auto;
	container-type:size;
	overflow:hidden;
}

@keyframes logoMove{
	
	0%,93.01%,100%{
		transform:scale(1) rotate(0);
		opacity:0.0;
		background-position:50% 50%;
		background-size:250% auto;
		mix-blend-mode:normal;
	}
	12%{
		transform:scale(1) rotate(0);
		opacity:1;
		background-position:50% 50%;
		background-size:65% auto;
		mix-blend-mode:normal;
	}
	12.01%,41.99%{
		mix-blend-mode:difference;
	}
	42%{
		transform:scale(1) rotate(0);
		opacity:1;
		background-position:50% 50%;
		background-size:65% auto;
		mix-blend-mode:overlay;
	}
	57%{
		transform:scale(7) rotate(450deg);
		opacity:0.0;
		background-position:50% 50%;
	}
	57.01%{
		transform:scale(1) rotate(0);
		opacity:1;
		background-position:-150% 105%;
		background-size:500% auto;
	}
	68%{
		transform:scale(1) rotate(0);
		opacity:1;
		background-position:250% 105%;
		background-size:500% auto;
	}
	68.01%{
		transform:scale(2) rotate(-90deg);
		opacity:1;
		background-position:-100% 40%;
		background-size:200% auto;
	}
	81%{
		transform:scale(2) rotate(-90deg);
		opacity:1;
		background-position:400% 40%;
		background-size:200% auto;
	}
	81.01%{
		transform:scale(1) rotate(180deg);
		opacity:1;
		background-position:-150% 105%;
		background-size:500% auto;
	}
	93%{
		transform:scale(1) rotate(180deg);
		opacity:1;
		background-position:250% 105%;
		background-size:500% auto;
		mix-blend-mode:overlay;
	}
	
}

@keyframes logoMove_y{
	
	0%,93.01%,100%{
		transform:scale(1) rotate(0);
		opacity:0.0;
		background-position:50% 50%;
		background-size:250% auto;
		mix-blend-mode:normal;
	}
	12%{
		transform:scale(1) rotate(0);
		opacity:1;
		background-position:50% 50%;
		background-size:40% auto;
		mix-blend-mode:normal;
	}
	12.01%,41.99%{
		mix-blend-mode:difference;
	}
	42%{
		transform:scale(1) rotate(0);
		opacity:1;
		background-position:50% 50%;
		background-size:40% auto;
		mix-blend-mode:overlay;
	}
	57%{
		transform:scale(3) rotate(450deg);
		opacity:0.0;
		background-position:50% 50%;
	}
	57.01%{
		transform:scale(1) rotate(0);
		opacity:1;
		background-position:-150% 105%;
		background-size:200% auto;
	}
	68%{
		transform:scale(1) rotate(0);
		opacity:1;
		background-position:250% 105%;
		background-size:200% auto;
	}
	68.01%{
		transform:scale(2) rotate(-90deg);
		opacity:1;
		background-position:-100% 20%;
		background-size:120% auto;
	}
	81%{
		transform:scale(2) rotate(-90deg);
		opacity:1;
		background-position:400% 20%;
		background-size:120% auto;
	}
	81.01%{
		transform:scale(1) rotate(180deg);
		opacity:1;
		background-position:-150% 105%;
		background-size:200% auto;
	}
	93%{
		transform:scale(1) rotate(180deg);
		opacity:1;
		background-position:250% 105%;
		background-size:200% auto;
		mix-blend-mode:overlay;
	}
	
}
#topSlidWrap:after{
	content:'';
	position:absolute;
	top:0; left:0;
	z-index:7000;
	display:block;
	width:100cqw;
	height:100cqh;
	background-image:url('parts/slide_logo.svg');
	background-size:65% auto;
	background-position:50% 50%;
	background-repeat:no-repeat;
	opacity:0.0;
	
	transform-origin:center;
	will-change:transform;
	
	animation:logoMove 30s linear infinite;
}

#topSlider{
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	list-style:none;
	overflow:hidden;
}
.slideItem{
	width:100cqw;
	height:100cqh;
	margin:0 auto;
	padding:0 0;
	border:0;
	display:block;
	background-size:cover;
	background-position:50% 50%;
	vertical-align:top;
	overflow:hidden;
}
.slideItem img.slide{
	display:block;
	width:100cqh;
	height:100cqh;
	margin:0 calc( 50cqw - 50cqh );
	object-fit:cover;
	object-position:50% 50%;
}

@media screen and ( min-width:481px ){
	
}
@media screen and ( min-width:768px ){
	
	#topSlidWrap{
		width:100vw;
		height:calc( 300vw / 4 );
	}
	#topSlidWrap:after{
		animation:logoMove_y 30s linear infinite;
	}
	.slideItem img.slide{
		width:100cqw;
		height:100cqw;
		margin:0;
	}
}
@media screen and ( min-width:960px ){
	
	#topSlidWrap{
		aspect-ratio: 4 / 3;
		width:auto;
		max-width:100vw;
		height:calc(100vh - 5rem);
	}
}

@keyframes fadezoom {
	0% {
		transform: scale(1);
	}
	
	100% {
		transform: scale(1.3);
	}
}

.slick-animation {
	animation: fadezoom 8s 0s forwards ease-out;
}





/**** page ****/
.ami{
	background-image:url('parts/bg_dot.png');
	background-position:50% 50%;
	background-size:auto;
	background-repeat:repeat;
	background-color:rgb(0 0 0 / 8%);
	padding:1rem;
	margin-top:0;
	margin-bottom:0;
}

/***  title ***/
.boxtitle{
	display:block;
	margin:1rem 0;
	padding:0;
}
.boxtitle > .title{
	display:inline-block;
	font-size:2rem;
	font-weight:bold;
	line-height:3rem;
	background-color:rgb( 0 0 0 / 100% );
	color:rgb( 255 255 255 / 100% );
	padding:0.5rem 2rem;
	border:0;
	margin:0;
}
.boxtitle > .title > small{
	display:inline-block;
	font-size:1.25rem;
	line-height:inherit;
	vertical-align:top;
	margin:0;
}
.pagetitle{
	text-align:center;
	font-size:1.5rem;
	line-height:2rem;
	background-image:url('parts/bg_dot.png');
	background-position:50% 50%;
	background-size:auto;
	background-repeat:repeat;
	background-color:rgb(0 0 0 / 8%);
	padding:1rem;
	border-top:solid 1px;
	margin:0 0 2rem 0;
}
.sectiontitle{
	margin:2rem 0 1rem 0;
	font-size:2rem;
	font-weight:bold;
	line-height:calc( 2rem + 4px );
	color:#666;
}
.sectiontitle > small,
.sectiontitle > span,
.sectionttule > em{
	line-height:calc(1em + 4px);
	vertical-align:baseline;
}
.subtitle{
	line-height:1.375em;
	padding:0.5rem;
	border-style:solid;
	border-bottom-width:1px;
	margin:1rem 0;
}
span.subtitle,
em.subtitle{
	display:inline-block;
	padding:0.25rem 1rem;
	border-top-width:2px;
	border-bottom-width:2px;
	margin:0;
}


a.ahvlink{
	display:inline-block;
	margin:3rem 0;
	font-size:calc( 1rem + 2px );
	line-height:1.5rem;
	color:inherit;
	text-decoration:none;
}
.price{
	text-align:right;
}



/*** front page ***/
.ami, .ami + .wrapper{
	padding-bottom:8rem;
	margin-top:0;
}
.ami .boxtitle,
.ami + .wrapper .boxtitle{
	margin-top:-3rem;
}

#icatch,
#icatch > .inner{
	width:100%;
}
#icatch > .inner{
	container-type:inline-size;
}
#icatch #topimg{
	position:relative;
	z-index:1;
	text-align:right;
	padding:0 0 0 2rem;
	margin:2rem auto 1rem auto;
}
#topimg > img{
	display:block;
	margin:0;
}
#mainCopy{
	position:absolute;
	top:-1rem;
	left:0;
	writing-mode:vertical-rl;
	text-align:left;
	font-size:calc(100cqw / 14);
	font-weight:bold;
	width:6em;
	padding:0;
	margin:0;
}
#mainCopy > span{
	display:inline-block;
	line-height:1;
	color:#000;
	background-color:#fff;
	padding:0.25em;
	margin:0 0 0 0.5em;
}
#introduction{
	position:relative;
	z-index:2;
}
#introduction > p{
	background:#fff;
	color:#000;
	font-size:calc( 100cqw / 24 );
	line-height:2em;
	padding:1em;
	margin:2rem auto;
}
dl.course-plan dd > small.aid{
	display:block;
}

@media screen and ( min-width:768px ){
	.ami #introduction > .boxtitle{
		margin-top:0;
	}
	#icatch{
	}
	#icatch > .inner{
		display:inline-block;
		width:54%;
		padding:1rem 1rem;
		margin:2rem auto 1rem auto;
	}
	#icatch >  #introduction.inner{
		margin-left:-10%;
	}
	#about_menu dl.course-plan{
		width:34rem;
		margin:1rem auto;
	}
	dl.course-plan dd > small.aid{
		display:inline-block;
	}
}


/** Menu **/
.course-item{
	font-size:calc(1rem + 2px);
	margin:2rem 0 3rem 0;
}
.course-plan{
	display:grid;
	grid-template-columns:11em calc(100% - 12em);
	gap:1rem;
	margin:1rem 0;
}


/** NEWS **/
.item-wrap{
	width:100%;
	padding:1em;
	margin:1rem auto;
}
.ami #news_list .item-wrap{
	background-color:#fff;
	filter:drop-shadow(2px 2px 0 rgb(100 100 100));
	padding:0.5rem;
}
dl.news-item{
	display:flex;
	flex-flow:row nowrap;
}
.news-item .date{
	font-size:1rem;
}
dl.news-item .date{
	text-align:center;
	flex-basis:12ch;
}
dl.news-item .title{
	flex-basis:calc( 100% - 12ch );
}
.news-item .title,
.news-item .announce{
	text-align:left;
	font-size:calc( 1rem + 2px );
	padding:0 1rem;
}
article.news-item .date{
	padding:0 1rem;
}
article.news-item .announce .article{
	padding:0 0.5rem;
}

@media screen and ( min-width:768px ){
	article.news-item{
		display:flex;
		flex-flow:row nowrap;
		margin:3rem auto 8rem auto;
	}
	article.news-item .date{
		line-height:2rem;
		flex-basis:18ch;
	}
	article.news-item .announce{
		font-size:1rem;
		flex-basis:calc( 100% - 18ch );
	}
	article.news-item .announce > .subtitle{
		padding-top:0;
		margin-top:0;
	}
}

/*** SNS Button ***/
#sns{
	padding:1rem;
}
#sns .flxd{
	flex-flow:row nowrap;
	justify-content:center;
}
#sns .flxd > .icon_btn{
	flex-basis:20%;
	margin:1rem;
}
#sns .icon_btn > a{
	display:block;
	text-indent:-9999em;
	overflow:hidden;
	background-position:50% 50%;
	background-size:100% auto;
	background-repeat:no-repeat;
	width:100%;
	max-width:6rem;
	height:auto;
	aspect-ratio:1;
	padding:0;
	border:0;
	margin:0 auto;
}
#sns_fb.icon_btn > a{ background-image:url('parts/icon_fb.png'); }
#sns_ig.icon_btn > a{ background-image:url('parts/icon_ig.png'); }
#sns_ln.icon_btn > a{ background-image:url('parts/icon_ln.png'); }

@media screen and ( min-width:481px ){
	
}
@media screen and ( min-width:768px ){
	
}
@media screen and ( min-width:960px ){
	
}



/*** Gallery ***/
.gallery-all{
	max-width:1280px;
	margin-left:auto;
	margin-right:auto;
}
.gallery-all > .title{
	margin-left:2rem;
	margin-right:2rem;
}
ul.gallery{
	display:flex;
	flex-flow:row wrap;
	justify-content:center;
	list-style:none;
	padding:1px;
	margin:1rem 0 5rem 0;
}
.gallery .cel,
.gallery-all .cel{
	padding:1px;
	margin:0;
}
.gallery > .cel{
	flex-basis:calc( 100% / 3 );
}
.lightbox{
	height:100vh;
}
@media screen and ( min-width:480px ){
	
	.gallery > .cel{
		flex-basis:calc( 100% / 4 );
	}
}
@media screen and ( min-width:768px ){
	
	.gallery{
		padding:2px;
	}
	.gallery-part .cel,
	.gallery-all .cel{
		padding:2px;
	}
	.gallery > .cel{
		flex-basis:calc( 100% / 6 );
	}
}


/*** Access ***/
#map{
	width:100%;
	height:auto;
	aspect-ratio:3 / 4;
}
#map iframe{
	filter: grayscale(1);
}
#information.flx .cel2-1{
	padding:1rem 2rem;
}
#information address > p{
	line-height:1.75rem;
	margin:0 0 1.5rem 0;
}
@media screen and (min-width:768px){
	
	#map{
		aspect-ratio:8 / 5;
	}

}



/*** Reserve ***/
#fbuilder{
	padding:10px;
	font-size:calc( 1rem + 2px );
	line-height:1.5em;
}
#fbuilder .fields,
#fbuilder .captcha{
	margin-left:1rem;
	margin-right:1rem;
}
#fbuilder .fields.unflx{
	display:block;
}
#fbuilder .small{
	font-size:inherit;
}
#fbuilder span.uh{
	line-height:1.5em;
}
.ahbfield_quantity_div{
	width:100%;
	margin:12px 0;
}
#fbuilder .ui-datepicker .ui-datepicker-prev,
#fbuilder .ui-datepicker .ui-datepicker-next{
	background-image:none !important;
}
label.ahbfield_quantity_label + br{
	display:none;
}
.fieldCalendar{
	padding:10px;
}
#fbuilder table.ui-datepicker-calendar{
	max-width:14rem
	margin:1rem 0 0.5rem 0;
	font-size:calc( 1rem - 1px );
}
.ahb_m3 #fbuilder .ui-datepicker th{
	line-height:1em !important;
}
#fbuilder table.ui-datepicker-calendar th,
#fbuilder table.ui-datepicker-calendar td{
}
#fbuilder table.ui-datepicker-calendar span,
#fbuilder table.ui-datepicker-calendar a{
	display:inline-block;
	height:calc( 1em + 24px );
	padding:12px;
	/*line-height:1em;*/
	vertical-align:top;
}
#fbuilder table.ui-datepicker-calendar .ui-state-default{
	color:#222;
}
#fbuilder table.ui-datepicker-calendar .ui-datepicker-unselectable .ui-state-default{
	color:#999;
}
#fbuilder table.ui-datepicker-calendar .ui-datepicker-current-day a.ui-state-active{
	color:#a11;
}
#fbuilder .slotsCalendar,
#fbuilder .slots{
	width:100% !important;
	margin:0 0 1rem 0;
}
#fbuilder .slotsCalendar{
	border:solid 1px #ddd;
}
#fbuilder .slotsCalendar .slots .availableslot,
#fbuilder .slotsCalendar .slots .htmlUsed{
	margin:10px;
	padding:0;
}
#fbuilder .slotsCalendar .availableslot a,
#fbuilder .slotsCalendar .htmlUsed a{
	display:block;
	width:100%;
	padding:6px 12px;
	color:inherit;
	text-align:center;
	text-decoration:none;
}
.dfield input[type="text"],
.dfield input[type="email"]{
	width:auto;
}
#fbuilder button.pbSubmit{
	display:block;
	width:100%;
	margin:1rem auto;
	padding:12px;
	color:var(--wh);
	background-color:var(--bk);
}
#fbuilder button.pbSubmit:hover{
	background-color:var(--key);
}
#fbuilder .fields.unset{
	margin-top:1em;
	margin-left:0;
}
#fbuilder .unset .dfield{
	display:none;
}
@media screen and ( min-width:768px ){
	
}

/*** MENU ***/
.menu-plan{
	max-width:736px;
	margin:1rem 1rem 5rem 1rem;
}
.course{
	padding:0.25rem;
	border:solid 4px #333;
}
ul.plan-list{
	list-style:none;
	margin:0;
	padding:3rem 2rem 1rem 2rem;
	border:solid 2px #333;
}
.plan-item + .plan-item{
	margin:3rem 0 0 0;
}
#helpPlan.plan-item{
	padding:2rem 1.5rem;
	background-color:#eee;
}
.plan-title{
	margin:0 0 1rem 0;
	font-size:1.5rem;
}
.plan-title,
.price > small{
	font-feature-settings:"palt";
}
.sectiontitle > small,
.plan-title > small{
	padding-left:6px;
}
.plan-item .flx{
	flex-shrink:0;
	flex-grow:1;
}
.plan-item .flx > div{
	width:100%;
}
.plan-item .flx > .plan-img,
.plan-item .flx > .plan-spec,
.plan-item .flx > .plan-price{
	padding:0.5rem 0;
}
.plan-img > .imgwrap{
	position:relative;
}
.plan-img > .imgwrap > .caption{
	position:absolute;
	bottom:0;
	display:block;
	width:100%;
	margin:0;
	padding:0.5em;
	text-align:right;
	line-height:calc( 1em + 4px );
	font-size:1rem;
}
.plan-item .price{
	font-size:calc( 1em + 3px );
}
.plan-spec > p:only-child,
.plan-price > p:only-child{
	margin:0;
}
.plan-note{
	margin:3rem 0 1rem 0;
}
.plan-note small{
	text-align:left;
}
.plan-note small + small{
	margin-top:0.25rem;
}
.notes{
	position:relative;
	padding-left:1em;
	font-size:1rem;
}
.notes:before{
	content:"◯";
	position:absolute;
	left:0;
}
@media screen and ( min-width:768px ){
	.menu-plan{
		margin-left:auto;
		margin-right:auto;
	}
	ul.plan-list{
		padding:5rem 4rem 2rem 4rem;
	}
	#helpPlan.plan-item{
		padding:2rem 2rem;
	}
	.plan-item .flx > div{
		flex-basis:50%;
	}
	.plan-item .flx .plan-spec:not(:has(.plan-title)){
		flex-basis:65%;
	}
	.plan-item .flx .plan-spec:not(:has(.plan-title)) + .plan-price{
		flex-basis:35%;
	}
	.plan-item .flx > .plan-img.odr1{
		padding-right:2rem;
	}
	.plan-item .flx > .plan-img.odr2{
		padding-left:2rem;
	}
	.plan-item .flx .plan-price{
		align-self:end;
	}
}



/*** contact ***/
form .btn .submit{
	width:min(12rem,45%);
	padding:1rem 2rem;
}
form{
	padding:0 1.5rem;
}
.ftb{
	width:100%;
	margin:3rem auto;
}
.ftb .tbrow dt,
.ftb .tbrow dd{
	padding:1rem 1rem;
	border-style:solid;
}
form .ftb .tbrow dt,
form .ftb .tbrow dd{
	line-height:1.5em;
}
form .ftb .tbrow dd input{
	line-height:1.25em;
}
.ftb > .tbrow:last-child > dt,
.ftb > .tbrow:last-child > dd{
}
.ftb .tbrow dt{
}
.ftb .tbrow dd{
	border-color:var(--key);
	border-bottom-width:2px;
}
.ftb .tbrow dd p{
	margin:0 0 1em 0;
}
.ftb .tbrow dt p:only-child,
.ftb .tbrow dd p:only-child{
	margin:0;
}

@media screen and ( min-width:768px ){
	.ftb{
		display:table;
		border-collapse:collapse;
		border-spacing:0;
	}
	.ftb .tbrow{
		display:table-row;
	}
	.ftb .tbrow dt,
	.ftb .tbrow dd{
		display:table-cell;
		border-top-width:2px;
		border-bottom-width:0;
	}
	.ftb > .tbrow:last-child > dt,
	.ftb > .tbrow:last-child > dd{
		border-bottom-width:2px;
	}
	.ftb .tbrow dt{
		width:10rem;
		border-color:var(--key);
	}
	.ftb .tbrow dd{
		background-color:var(--bg);
		width:calc( 100% - 10rem );
		border-color:#777;
	}
}

/** contactform7 **/
form.submitting .wpcf7-submit.has-spinner,
form:not(.submitting) .wpcf7-spinner{
	display:none;
}
form:not(.submitting) .wpcf7-submit.has-spinner,
form.submitting .wpcf7-spinner{
	display:inline-block;
}


/*** guidance ***/
#guidance li{
	margin-bottom:8rem;
}
/*** privacy-policy ***/
ul.privacy-list{
	list-style:none;
	padding-left:1rem;
}
.privacy-list strong{
	margin-left:-1rem;
}


/****　footer　*****/
#sitefooter{
	padding:5rem 0 0 0;
	text-align:center;
	background-color:var(--bk);
	color:var(--wh);
}


#footername h2{
	margin:0;
	font-size:1.75rem;
}
#footername small{
	font-size:calc( 1rem - 4px );
}
#copyright{
	padding:2rem;
}





/***** Form *****/

label,
input,select,textarea{
	font-family:var(--gothic);
	font-size:inherit;
	font-weight:normal;
	line-height:1.25em;
}
input,select,textarea{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	box-sizing:border-box;
	border:solid 1px;
	background-color:#fff;
}
input[type="button"],input[type="submit"]{
	border:0;
}
input[type="text"],input[type="email"],input[type="password"],
input[type="number"],
input[type="button"]{
	width:100%;
	padding:0.125rem 0.25rem !important;
}
textarea{
	width:90%;
	max-width:100%;
	padding:0.125rem 0.25rem;
}
input[type="text"]#name1,
input[type="text"]#name2,
input[type="text"]#name3,
input[type="text"]#name4{
	width:40%;
}
input[type="radio"],
input[type="checkbox"]{
	display:none;
}
label > input[type="radio"] + span:before,
input[type="radio"] + label > span:before{
	background-image:url('css/parts_radio.svg');
}
label > input[type="checkbox"] + span:before,
input[type="checkbox"] + label > span:before{
	background-image:url('css/parts_checkbox.svg');
}
label > input[type="radio"] + span:before,
input[type="radio"] + label > span:before,
label > input[type="checkbox"] + span:before,
input[type="checkbox"] + label:not(.triger) > span:before{
	content:'';
	display:inline-block;
	width:1em;
	height:1em;
	margin-right:0.25em;
	background-position:50% 0;
	background-size:1em auto;
	background-repeat:no-repeat;
	vertical-align:middle;
}
label > input[type="radio"]:checked + span:before,
input[type="radio"]:checked + label > span:before,
label > input[type="checkbox"]:checked + span:before,
input[type="checkbox"]:checked + label > span:before{
	background-position:0 100%;
}

select{
	padding:0.25em 1.75em 0.25em 0.5em;
	margin-left:4px;
	margin-right:4px;
	background-image:url('css/parts_select.svg');
	background-position:100% 50%;
	background-size:2em;
	background-repeat:no-repeat;
}
button{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	font-size:1rem;
	color:var(--gd);
	border:0;
	background:none;
}
/*
button:hover{
	color:var(--sub);
}
*/
input[type="text"] + [type="button"],
select + [type="button"]{
	margin:0 0 0 0.5em;
}
.mwform-zip-field{
	display:block;
	margin-bottom:0.5em;
}




/** margin **/
.center{
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.m0{ margin:0; }
.m05em{ margin:0.5em; }
.m1em{ margin:1rem; }
.m15em{ margin:1.5rem; }
.m2em{ margin:2rem; }
.m25em{ margin:2.5rem; }
.m3em{ margin:3rem; }
.m35em{ margin:3.5rem; }
.m4em{ margin:4rem; }
.m45em{ margin:4.5rem; }
.m5em{ margin:5rem; }
.m55em{ margin:5.5rem; }

.mtb05em{ margin-top:0.5rem; margin-bottom:0.5rem; }
.mtb1em{ margin-top:1rem; margin-bottom:1rem; }
.mtb15em{ margin-top:1.5rem; margin-bottom:1.5rem; }
.mtb2em{ margin-top:2rem; margin-bottom:2rem; }
.mtb25em{ margin-top:2.5rem; margin-bottom:2.5rem; }
.mtb3em{ margin-top:3rem; margin-bottom:3rem; }
.mtb35em{ margin-top:3.5rem; margin-bottom:3.5rem; }
.mtb4em{ margin-top:4rem; margin-bottom:4rem; }
.mtb45em{ margin-top:4.5rem; margin-bottom:4.5rem; }
.mtb5em{ margin-top:5rem; margin-bottom:5rem; }
.mtb55em{ margin-top:5.5rem; margin-bottom:5.5rem; }

.mlr{	 margin-left:auto; margin-right:auto; }
.mlr05em{ margin-left:0.5rem; margin-right:0.5rem; }
.mlr1em{ margin-left:1rem; margin-right:1rem; }
.mlr15em{ margin-left:1.5rem; margin-right:1.5rem; }
.mlr2em{ margin-left:2rem; margin-right:2rem; }
.mlr25em{ margin-left:2.5rem; margin-right:2.5rem; }
.mlr3em{ margin-left:3rem; margin-right:3rem; }
.mlr35em{ margin-left:3.5rem; margin-right:3.5rem; }
.mlr4em{ margin-left:4rem; margin-right:4rem; }
.mlr45em{ margin-left:4.5rem; margin-right:4.5rem; }
.mlr5em{ margin-left:5rem; margin-right:5rem; }
.mlr55em{ margin-left:5.5rem; margin-right:5.5rem; }

.mt0{ margin-top:0; }
.mt05em{ margin-top:0.5rem; }
.mt1em{ margin-top:1rem; }
.mt15em{ margin-top:1.5rem; }
.mt2em{ margin-top:2rem; }
.mt25em{ margin-top:2.5rem; }
.mt3em{ margin-top:3rem; }
.mt35em{ margin-top:3.5rem; }
.mt4em{ margin-top:4rem; }
.mt45em{ margin-top:4.5rem; }
.mt5em{ margin-top:5rem; }
.mt55em{ margin-top:5.5rem; }

.mb0{ margin-bottom:0; }
.mb05em{ margin-bottom:0.5rem; }
.mb1em{ margin-bottom:1rem; }
.mb15em{ margin-bottom:1.5rem; }
.mb2em{ margin-bottom:2rem; }
.mb25em{ margin-bottom:2.5rem; }
.mb3em{ margin-bottom:3rem; }
.mb35em{ margin-bottom:3.5rem; }
.mb4em{ margin-bottom:4rem; }
.mb45em{ margin-bottom:4.5rem; }
.mb5em{ margin-bottom:5rem; }
.mb55em{ margin-bottom:5.5rem; }

.ml0{ margin-left:0; }
.ml05em{ margin-left:0.5rem; }
.ml1em{ margin-left:1rem; }
.ml15em{ margin-left:1.5rem; }
.ml2em{ margin-left:2rem; }
.ml25em{ margin-left:2.5rem; }
.ml3em{ margin-left:3rem; }
.ml35em{ margin-left:3.5rem; }
.ml4em{ margin-left:4rem; }
.ml45em{ margin-left:4.5rem; }
.ml5em{ margin-left:5rem; }
.ml55em{ margin-left:5.5rem; }

.mr0{ margin-right:0; }
.mr05em{ margin-right:0.5rem; }
.mr1em{ margin-right:1rem; }
.mr15em{ margin-right:1.5rem; }
.mr2em{ margin-right:2rem; }
.mr25em{ margin-right:2.5rem; }
.mr3em{ margin-right:3rem; }
.mr35em{ margin-right:3.5rem; }
.mr4em{ margin-right:4rem; }
.mr45em{ margin-right:4.5rem; }
.mr5em{ margin-right:5rem; }
.mr55em{ margin-right:5.5rem; }

/** padding **/
.p0{ padding:0; }
.p05em{ padding:0.5rem; }
.p1em{ padding:1rem; }
.p15em{ padding:1.5rem; }
.p2em{ padding:2rem; }
.p25em{ padding:2.5rem; }
.p3em{ padding:3rem; }
.p35em{ padding:3.5rem; }
.p4em{ padding:4rem; }
.p45em{ padding:4.5rem; }
.p5em{ padding:5rem; }
.p55em{ padding:5.5rem; }

.ptb05em{ padding-top:0.5rem; padding-bottom:0.5rem; }
.ptb1em{ padding-top:1rem; padding-bottom:1rem; }
.ptb15em{ padding-top:1.5rem; padding-bottom:1.5rem; }
.ptb2em{ padding-top:2rem; padding-bottom:2rem; }
.ptb25em{ padding-top:2.5rem; padding-bottom:2.5rem; }
.ptb3em{ padding-top:3rem; padding-bottom:3rem; }
.ptb35em{ padding-top:3.5rem; padding-bottom:3.5rem; }
.ptb4em{ padding-top:4rem; padding-bottom:4rem; }
.ptb45em{ padding-top:4.5rem; padding-bottom:4.5rem; }
.ptb5em{ padding-top:5rem; padding-bottom:5rem; }
.ptb55em{ padding-top:5.5rem; padding-bottom:5.5rem; }

.plr0{	 padding-left:0;  padding-right:0;}
.plr05em{ padding-left:0.5rem; padding-right:0.5rem; }
.plr1em{ padding-left:1rem; padding-right:1rem; }
.plr15em{ padding-left:1.5rem; padding-right:1.5rem; }
.plr2em{ padding-left:2rem; padding-right:2rem; }
.plr25em{ padding-left:2.5rem; padding-right:2.5rem; }
.plr3em{ padding-left:3rem; padding-right:3rem; }
.plr35em{ padding-left:3.5rem; padding-right:3.5rem; }
.plr4em{ padding-left:4rem; padding-right:4rem; }
.plr45em{ padding-left:4.5rem; padding-right:4.5rem; }
.plr5em{ padding-left:5rem; padding-right:5rem; }
.plr55em{ padding-left:5.5rem; padding-right:5.5rem; }

.pt0{ padding-top:0; }
.pt05em{ padding-top:0.5rem; }
.pt1em{ padding-top:1rem; }
.pt15em{ padding-top:1.5rem; }
.pt2em{ padding-top:2rem; }
.pt25em{ padding-top:2.5rem; }
.pt3em{ padding-top:3rem; }
.pt35em{ padding-top:3.5rem; }
.pt4em{ padding-top:4rem; }
.pt45em{ padding-top:4.5rem; }
.pt5em{ padding-top:5rem; }
.pt55em{ padding-top:5.5rem; }

.pb0{ padding-bottom:0; }
.pb05em{ padding-bottom:0.5rem; }
.pb1em{ padding-bottom:1rem; }
.pb15em{ padding-bottom:1.5rem; }
.pb2em{ padding-bottom:2rem; }
.pb25em{ padding-bottom:2.5rem; }
.pb3em{ padding-bottom:3rem; }
.pb35em{ padding-bottom:3.5rem; }
.pb4em{ padding-bottom:4rem; }
.pb45em{ padding-bottom:4.5rem; }
.pb5em{ padding-bottom:5rem; }
.pb55em{ padding-bottom:5.5rem; }

.pl0{ padding-left:0; }
.pl05em{ padding-left:0.5rem; }
.pl1em{ padding-left:1rem; }
.pl15em{ padding-left:1.5rem; }
.pl2em{ padding-left:2rem; }
.pl25em{ padding-left:2.5rem; }
.pl3em{ padding-left:3rem; }
.pl35em{ padding-left:3.5rem; }
.pl4em{ padding-left:4rem; }
.pl45em{ padding-left:4.5rem; }
.pl5em{ padding-left:5rem; }
.pl55em{ padding-left:5.5rem; }

.pr0{ padding-right:0; }
.pr05em{ padding-right:0.5rem; }
.pr1em{ padding-right:1rem; }
.pr15em{ padding-right:1.5rem; }
.pr2em{ padding-right:2rem; }
.pr25em{ padding-right:2.5rem; }
.pr3em{ padding-right:3rem; }
.pr35em{ padding-right:3.5rem; }
.pr4em{ padding-right:4rem; }
.pr45em{ padding-right:4.5rem; }
.pr5em{ padding-right:5rem; }
.pr55em{ padding-right:5.5rem; }




/****: Wordpress :****/
.alignnone,
.alignright,
.alignleft,
.aligncenter{
	vertical-align:top;
}
.alignnone{
}
.alignright{
	text-align:right;
}
.alignleft{
	text-align:left;
}
.aligncenter{
	text-align:center;
	margin-left:auto;
	margin-right:auto;
}
img.alignright,
img.aligncenter{
	display:block;
}
img.alignright{
	float:right;
}
img.alignleft{
	float:left;
}
img:not(.slide){
	max-width:100% !important;
	height:auto !important;
}
.clf{
	overflow:hidden;
	zoom:1;
}
.clf:after{
	content:"";
	display:block;
	clear:both;
}

@media screen and (min-width:481px){

}
@media screen and (min-width:751px){

}
@media screen and (min-width:871px){


/*---- Wordpress ----*/


/***** Login *****/
#login h1 a{
	width:100%;
	height:0;
	padding-bottom:30%;
	background-size:contain;
	background-image:url('parts/sitelogo.png');
}
#adminlink{
	text-align:center;
	line-height:1;
	background-color:var(--gd);
}
#adminlink a{
	color:var(--gd);
	text-decoration:none;
	line-height:2em;
}