@import url('https://fonts.googleapis.com/css2?family=Raleway:wght@400;500;600&display=swap');

/* ****************************************************************************
 *
 * 1. common
 *
 * ***************************************************************************/
/* ======================================================
 * 1-1. Reset
 * =================================================== */
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,
a,address,del,em,font,img,small,strike,strong,sub,sup,b,u,i,center,
dl,dt,dd,ul,li,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{
	padding: 0;
	margin: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
}
body,table,input,textarea,select,option{
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
}
ol,ul,dl,li{
	list-style: none;
}
h1,h2,h3,h4,h5,h6{
	font-size: 100%;
}
blockquote,q{
	quotes: none;
}
ins{
	text-decoration: none;
}
del{
	text-decoration: line-through;
}
img{
	max-width: 100% !important;
	height: auto;
	vertical-align: text-bottom;
}
*{
	font-size: 100%;
	font-weight: normal;
	font-style: normal;
	text-align: left;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
h1,h2,h3,h4,h5,h6,strong{
	font-weight: bold;
}
body{
	font-size: 16px;
	*font-size: small; /* for IE */
	*font: x-small; /* for IE in quirks mode */
	line-height: 100%;
/*	font-family: "Noto Sans JP", "YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif; */
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: 400;
}

/* ======================================================
 * 1-2. Style
 * =================================================== */
body{
	width: 100%;
	margin: 0;
	padding: 0;
	color: #373534;
	text-align: left;
}
body.en{
	font: 400 15px/150% 'Raleway', sans-serif;
}
.en{
	font-family: 'Raleway', sans-serif;
}

.aligncenter{
	display: block;
	clear: both;
	margin: 0.5em auto;
}
.alignleft{
	float: left;
	clear: both;
	margin: 0.25em 1em 0.25em 0;
}
.alignright{
	float: right;
	clear: both;
	margin: 0.25em 0 0.25em 1em;
}
.alignnone{
	float: none;
	clear: both;
	margin: 0;
}
img.aligncenter,
img.alignleft,
img.alignright{
	position: relative;
	z-index: 2;
}

strong{
	font-weight: bold;
}
.large{
	font-size: 1.2em;
	line-height: 180%;
}
.small,
small{
	font-size: 0.8em;
	line-height: 120% !important;
}
.red{
	color: red;
}
.clear{
	clear: both !important;
}

a:link		{ color: #008400; text-decoration: none;}
a:visited	{ color: #008400; text-decoration: none; }
a:hover		{ color: #005100; text-decoration: none;}
a:active	{ color: #005100; text-decoration: none;} 
a{ -webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
}
a img:hover{
	opacity: 0.7;
	-moz-opacity: 0.7;
	filter:progid:DXImageTransform.Microsoft.Alpha(opacity=70);
	-webkit-transition: opacity .3s linear;
	-moz-transition: opacity .3s linear;
	-o-transition: opacity .3s linear;
	transition: opacity .3s linear;
}

a:before{
	vertical-align: middle;
}


/* ======================================================
 * 1-3. Header
 * =================================================== */
#header{
	display: flex;
	flex: auto;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	width: 100%;
	height: 80px;
	background-color: rgba(0,81,0,0.9);
	z-index: 100;
}
#header *{
	color: #fff;
}
#header h1{
	width: 210px;
	padding: 5px;
	text-align: center;
}
#header h1 a{
	display: block;
	width: 200px;
	height: 35px;
	background: url(assets/images/common/logo.png) left center / contain no-repeat;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	z-index: 2;
}
#header h1 span{
	display: block;
	padding-left: 50px;
	margin-top: -5px;
	font: 400 14px/100% 'Raleway', sans-serif;
}
#header h2{
	display: none;
}

/* Language */
nav#lang ul{
	display: flex;
	flex: auto;
	flex-wrap: nowrap;
	align-items: center;
	padding: 0 1em;
}
nav#lang *{
	padding: .5em:
	color: #fff;
	font: 400 90%/150% 'Raleway', sans-serif;
}
nav#lang li{
	white-space: nowrap;
}
nav#lang a{
	color: #d6d6d6;
}
nav#lang a.active{
	color: #fff;
	font-weight: 600;
}

/* rsv */
p#rsv{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-grow: 0;
	width: 10em;
	height: 100%;
	padding: 0 1em;
	background: #000;
	font-size: 14px;
}
p#rsv a{
	display: block;
	white-space: nowrap;
}
p#rsv a:before{
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: .5em;
	background: url(./assets/images/common/ico_search_w.svg) left center / contain no-repeat;
}
p#rsv a:hover{
	color: yellow;
}

/* 旧サイトでの予約 */
#prevbooking{
	position: fixed;
	top: 86px;
	right: 0;
	width: 160px;
	background-color: rgba(0,132,0,0.8);
	color: #fff;
	font-size: 80%;
	z-index: 999;
	opacity: 0.8;
	border-radius: 5px 0 0 5px;
}
#prevbooking p{
	padding: .5em 0 0 .5em;
}
#prevbooking a{
	display: block;
	padding: .3em 0;
	color: #fff;
	text-align: center;
}
#prevbooking a:hover{
	background-color: rgba(0,132,0,1);
}


/* ======================================================
 * 1-4. Nav
 * =================================================== */
#gnav{
	flex-grow: 2;
	z-index: 2;
}
#gnav ul{
	display: flex;
	flex: auto;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
}
body:not(.home) #gnav li a{
	display: block;
	padding: 1em;
	color: #fff;
	font-size: 14px;
	text-decoration: none;
	text-align: center ;
	-webkit-transition: all .5s ease;
	-moz-transition: all .5s ease;
	-o-transition: all .5s ease;
	transition: all .5s ease;
}
#gnav li a.active,
#gnav li a:hover{
	color: #ffff99 !important;
}
body:not(.home) #gnav > ul > li > a:hover,
body:not(.home) #gnav li a.active{
	opacity: 0.8;
}

/* thin */
#header.thin{
	height: 55px !important;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
}
#header.thin h1 a{
	width: 240px;
	height: 30px;
}
#header.thin #gnav li a{
	padding: .5em 1em;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
}
#header.thin h1 span{
	padding-left: 42px;
	font-size: 13px;
}


#menubtn,
#menucheck,
.sp_only{
	display: none !important;
}


/* ======================================================
 * 1-6. footer
 * =================================================== */
/* PageTop */
#pagetop{
	display: none;
	position: fixed;
	bottom: 0;
	right: 0;
	padding: 10px;
	background-color: rgba(255,255,255,0.5);
	z-index: 1000;
}
#pagetop a{
	display: block;
	width: 30px;
	height: 30px;
	background: url(./assets/images/common/ico_arrow_up.svg) center center / contain no-repeat;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
#pagetop a:hover{
	opacity: 0.8;
	transform: rotateY(180deg);
}

/* Contact */
div#contact{
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-around;
	align-items: center;
	padding: 1em 0;
	margin: 0 auto;
	background: #f2f2f2;
}
div#contact #address p{
	padding: .5em 1em;
}
div#contact #address p.ttl{
	font-size: 120%;
	font-weight: 500;
	letter-spacing: .2em;
}
div#contact ul{
	width: 40%;
}
div#contact li{
	padding: 0 1em;
	text-align: right;
}
div#contact a.btn{
	position: relative;
	min-width: 300px;
	padding: 12px !important;
	margin-top: 0 !important;
}
div#contact > ul a:before{
	content: '';
	position: absolute;
	top: 50%;
	left: 1em;
	transform: translateY(-50%);
	width: 1em;
	height: 1em;
	background: url(./assets/images/common/ico_arrow_right_w.svg) left center / contain no-repeat;
}
div#contact a.search:before{
	background-image: url(./assets/images/common/ico_search_w.svg);
}
div#contact a.confirm:before{
	background-image: url(./assets/images/common/ico_calendarcheck_w.svg);
}
div#contact a.plane:before{
	background-image: url(./assets/images/common/ico_plane_w.svg);
}
div#contact li a.mail:before{
	background-image: url(./assets/images/common/ico_mail_w.svg);
}

/* Footer */
#footer{
	width: 100%;
	padding: 1.5em;
	background: #000;
}
#footer a,
#footer *{
	color: #fff;
	text-align: center;
}
#footer a:hover{
	color: #ccc;
}
#footer ul{
	display: flex;
	flex: auto;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
	width: 100%;
}
#footer ul a{
	padding: 1em;
	font-size: 90%;
}
#footer ul#group{
	padding: 1em 2em;
	margin-top: 1.5em;
	border-top: solid 1px #333;
	border-bottom: solid 1px #333;
}

#footer #grouplnk{
	padding-top: 1.5em;
}
#footer #grouplnk strong{
	display: block;
	margin-bottom: 1em;
	font: 500 100%/110% 'optima', 'Avenier', 'Open Sans', sans-serif;
	text-align: center;
}
#footer #grouplnk div{
	display: flex;
	justify-content: center;
}
#footer #grouplnk a{
	display: inline-block;
	width: 70px;
	height: 50px;
	margin: 2px;
	background: url(./assets/images/logo/logo_vth.svg) no-repeat center center;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
#footer #grouplnk a:hover{
	opacity: .7;
}
#footer #grouplnk a.bw{
	background-image: url(./assets/images/logo/logo_bw.svg);
}
#footer #grouplnk a.bw_p{
	background-image: url(./assets/images/logo/logo_bw_p.svg);
}
#footer #grouplnk a.bw_ss{
	background-image: url(./assets/images/logo/logo_bw_ss.svg);
}
#footer #grouplnk a.bw_c{
	background-image: url(./assets/images/logo/logo_bw_c.svg);
}
#footer #grouplnk a.koko{
	background-image: url(./assets/images/logo/logo_koko.svg);
}
#footer #grouplnk a.koko_p{
	background-image: url(./assets/images/logo/logo_koko_p.svg);
}
#footer #grouplnk a.koko_r{
	background-image: url(./assets/images/logo/logo_koko_r.svg);
}
#footer #grouplnk a.wing{
	background-image: url(./assets/images/logo/logo_wing.svg);
}
#footer #grouplnk a.wing_p{
	background-image: url(./assets/images/logo/logo_wing_p.svg);
}
#footer #grouplnk a.wing_s{
	background-image: url(./assets/images/logo/logo_wing_s.svg);
}
#footer #grouplnk a.tenza{
	background-image: url(./assets/images/logo/logo_tenza.svg);
}
#footer #grouplnk a.vth{
	background-image: url(./assets/images/logo/logo_vth.svg);
}

#footer #copy{
	padding-top: 1.5em;
	font: 400 80%/150% 'Raleway', sans-serif;
}


/* ****************************************************************************
 *
 * 2. Contents
 *
 * ***************************************************************************/
/* ======================================================
 * 2-1. トップページ
 * =================================================== */
/* トップ動画 */
.swiper-container{
	margin-bottom: 50px;
}
.slider1{
	background: #fff;
/*	background: #f2f2f2; */
}
.swiper-slide{
	width: 100%;
	padding-bottom: 10px;
	overflow: hidden;
	z-index: -1;
}
#main .swiper-slide{
	padding-bottom: 30px;
}
.slider1 .swiper-slide{
	margin-top: 80px;
}
.swiper-slide img{
	width: 100%;
	object-fit: cover;
}
.swiper-slide .txt{
	padding: 1em;
	font: 500 120%/180% "ヒラギノ明朝 ProN W6","HiraMinProN-W6","HG明朝E","ＭＳ Ｐ明朝","MS PMincho","MS 明朝",serif;
}
.swiper-slide .txt p{
	text-align: center;
}

.top main{
	position: relative;
	padding-top: 40px;
}
.top h3{
	padding-bottom: 1em;
	color: #008400 !important;
}
.top h3 span.en:first-letter{
	color: #005100 !important;
}

.top main > div,
.top main > .section{
	position: relative;
	width: 100%;
	padding: 20px 0;
	margin-bottom: 80px;
	line-height: 150%;
	overflow: hidden;
}

.top #toppost h4{
	color: #008400;
	font: 500 32px/100% 'Raleway', sans-serif;
}
.top #toppost h4:first-letter{
	color: #005100;
	font-size: 40px;
}

/* News */
#news{
	text-align: center;
}
ul#news_list{
	display: inline-block;
	padding-bottom: 20px;
	margin: 0 auto;
}
ul#news_list li{
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	width: 100%;
	padding: .5em 1em;
	border-bottom: dotted 1px #ccc;
	background: #fff;
	line-height: 150% !important;
}
ul#news_list li:hover{
	cursor: pointer;
	background: #f2f2f2;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}
ul#news_list span{
	display: inline-block;
}
ul#news_list span.date{
	width: 100px;
}
ul#news_list span.subject{
	width: calc(100% - 100px);
	color: #6f3700;
}

/* Recommend(L-banner) */
#recommend dl{
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	width: 100%;
	padding-bottom: 30px;
}
#recommend dl.i-right{
	flex-direction: row-reverse;
}
#recommend dl dt{
	padding: 20px;
}
#recommend dl dt strong{
	display: block;
	padding: 1em 0 .5em 0;
	margin-bottom: 1em;
	border-bottom: solid 1px #008400;
	color: #008400;
	font: 500 28px/150% "ヒラギノ明朝 ProN W6","HiraMinProN-W6","HG明朝E","ＭＳ Ｐ明朝","MS PMincho","MS 明朝",serif;
}
#recommend dl dt strong:first-letter{
	color: #005100 !important;
	font-size: 40px;
}
#recommend dl dd{
	flex-shrink: 0;
	width: 60%;
	padding: 25px;
}
#recommend dl dd img{
	box-shadow: 15px 15px 10px 0 rgb(102,102,102, 0.5);
	outline: 1px solid rgb(255, 255, 255);
	outline-offset: -10px;
}
#recommend dl p.btn a{
	width: 16em;
	padding: .2em !important;
	margin-top: 3em;
}

/* Rooms */
body.top #room h4{
	border-bottom: none !important;
}
body.top h4 span.en{
	display: block;
	font: 400 24px/150% 'Raleway', sans-serif;
}
body.top #room .section{
	padding: 0 50px;
}
body.top .thum,
body.top .thum_left{
	width: 60% !important;
}
body.top .thum img,
body.top .thum_left img{
	outline: 1px solid rgb(255, 255, 255);
	outline-offset: -10px;
}

/* bnr */
div.bnr ul{
	display: flex;
	flex: auto;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
}
div.bnr ul li{
	width: 50%;
	padding: 1em;
	text-align: center;
}
div.bnr ul li img{
	width: 100%;
}

/* 下部バナー */
div#bnr{
	padding: 20px 0;
	background: #d6d6d6;
	background-size: auto auto;
	background-color: rgba(214, 214, 214, 0.91);
	background-image: repeating-linear-gradient(135deg, transparent, transparent 3px, rgba(214, 214, 214, 1) 3px, rgba(214, 214, 214, 1) 6px );
}
div#bnr ul{
	display: flex;
	flex: auto;
	flex-wrap: wrap;
	justify-content: center;
}
div#bnr ul li{
	width: 220px;
	padding: .5em;
	box-sizing: content-box;
}
div#bnr img{
	width: 100%;
}

/*----------------------
  予約フォーム
------------------------*/
#rsvform form{
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 2em;
	background-color: rgba(242,242,242,1);
/*	background-color: rgba(0,132,0,0.1); */
}
#rsvform div#rsvopt{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	width: 70%;
	padding-right: 2em;
}
#rsvform div#rsvopt > div{
	padding: 0 1em;
	border-left: solid 1px #ccc;
}
#rsvform div#rsvopt > div.cal{
	padding-left: 0;
	border: none;
}
#rsvform input[type="text"],
#rsvform select{
	padding: .5em 1em;
	margin: .5em 0;
	border: none;
	background: none;
	font: 1.1em/150% "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif !important;
}
#rsvform input.datepicker{
	background: url(./assets/images/common/ico_calendar.svg) no-repeat center right;
	background-size: 1em 1em;
}
#rsvform select{
	appearance: none;
	min-width: 3em;
	background: url(./assets/images/common/ico_arrow_down.svg) no-repeat center right;
	background-size: .6em .6em;
	color: #373534;
}
#rsvform button[type="submit"]{
	position: relative;
	padding: 1em 1.5em 1em 3em;
	margin: 0 1em;
	border: none;
	background: #008400;
	color: #fff;
	font: 1em/100% "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif !important;
/*	font: 1em/100% 'optima', 'Avenier', 'Open Sans', sans-serif !important; */
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
	border-radius: 30px;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
}
#rsvform button[type="submit"]:before{
	content: '';
	position: absolute;
	top: 1em;
	left: 1.5em;
	width: 1em;
	height: 1em;
	background: url(./assets/images/common/ico_search_w.svg) no-repeat;
	background-size: contain;
}
#rsvform button[type="submit"]:hover{
	cursor: pointer;
	background-color: rgba(0,132,0,0.5);
}
#rsvform strong{
	display: block;
	padding-bottom: .5em;
	border-bottom: dotted 2px #008400;
	font: 500 1em/100% 'optima', 'Avenier', 'Open Sans', sans-serif;
	text-align: center;
}
#rsvform span{
	font-size: 90%;
}
#rsvform div#rsvopt p{
	padding: 1em 0;
}

#rsvform div#rsvtl{
	width: 30%;
}
#rsvform div#rsvtl li{
	padding: .5em 0;
}
#rsvform div#rsvtl a{
	position: relative;
	display: block;
	padding: 1em 1em 1em 2em;
	border: solid 1px #008400;
/*	background: #5f4949; */
	font-weight: 500;
	text-align: center;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
}
div#rsvtl a:before{
	content: '';
	position: absolute;
	top: .7em;
	left: 1em;
	width: 1.5em;
	height: 1.5em;
	background-size: contain;
}
div#rsvtl a.plane:before{
	background: url(./assets/images/common/ico_plane.svg) no-repeat;
}
div#rsvtl a.car:before{
	background: url(./assets/images/common/ico_car.svg) no-repeat;
}
div#rsvtl a:hover{
	background-color: rgba(0,132,0,0.5);
}

.room #rsvform{
	margin: -40px 0 60px 0;
}


/* ↑全て削除 */
/* Tripla */
#Resv{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	padding: 2em;
	background-color: rgba(242,242,242,1);
}
div#rsvtrp{
	width: 75%;
}
div#rsvtrp form{
	display: flex;
	align-items: center;
}
div#rsvtrp div{
	margin-right: 1em;
	border-left: solid 1px #ccc;
	white-space: nowrap;
}
div#rsvtrp div.cal{
	border: none;
}
#Resv select{
	padding: .5em 1em;
	margin: .5em 0;
	border: none;
	background: none;
	font: 1.1em/150% "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
#Resv input#dateRangePicker{
	min-width: 260px;
	padding: .5em;
	margin: .5em 0;
	border: none;
	background: url(./assets/images/common/ico_calendar.svg) right center / 1em 1em no-repeat;
	font: 1.1em/150% "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
#Resv select{
	appearance: none;
	min-width: 3em;
	background: url(./assets/images/common/ico_arrow_down.svg) right center / .6em .6em no-repeat;
	color: #373534;
	font-size: 90%;
}
#Resv button{
	position: relative;
	padding: 1em 1.5em 1em 3em;
	margin: 0 1em;
	border: none;
	background-color: rgba(0,132,0,1);
	color: #fff;
	font: 1em/100% "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif !important;
	white-space: nowrap;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
	border-radius: 30px;
	-moz-border-radius: 30px;
	-webkit-border-radius: 30px;
}
#Resv button:before{
	content: '';
	position: absolute;
	top: 50%;
	left: 1em;
	transform: translateY(-50%);
	width: 1em;
	height: 1em;
	background: url(./assets/images/common/ico_search_w.svg) left center / contain no-repeat;
}
#Resv button:hover{
	cursor: pointer;
	background-color: rgba(0,132,0,0.6);
}
#Resv .cal label{
	display: block;
	padding-bottom: .5em;
	border-bottom: dotted 2px #a68e8e;
	font: 500 1em/100% 'optima', 'Avenier', 'Open Sans', sans-serif;
	text-align: center;
}
#Resv span{
	font-size: 90%;
}
#Resv ul.trpwid{
	display: flex;
	padding: 1em 0;
}
#Resv ul.trpwid li{
	padding-right: 1em;
}
#Resv ul.trpwid a{
	position: relative;
	display: inline-block;
	padding-left: 1.5em;
	font-size: 90%;
}
#Resv ul.trpwid li a:before{
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 1em;
	height: 1em;
	background: url(./assets/images/common/ico_arrow_right.svg) left center / contain no-repeat;
}
#Resv ul.trpwid li a.confirm:before{
	background-image: url(./assets/images/common/ico_calendarcheck.svg);
}
#Resv ul.trpwid li a.signup:before{
	background-image: url(./assets/images/common/ico_userplus.svg);
}
#Resv ul.trpwid li a.signin:before{
	background-image: url(./assets/images/common/ico_usercheck.svg);
}
#Resv ul.trpwid li a.organization:before{
	background-image: url(./assets/images/common/ico_users.svg);
}

#Resv div#rsvtl{
	width: 25%;
}
#Resv div#rsvtl li{
	padding: .5em 0;
}
#Resv div#rsvtl a{
	position: relative;
	display: block;
	padding: 1em 1em 1em 3em;
	border: solid 1px #008400;
	font-weight: 500;
	text-align: center;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
}
div#rsvtl a:before{
	content: '';
	position: absolute;
	top: 50%;
	left: 1em;
	transform: translateY(-50%);
	width: 1.5em;
	height: 1.5em;
	background: url(./assets/images/common/ico_arrow_right.svg) left center / contain no-repeat;
}
div#rsvtl a.plane:before{
	background-image: url(./assets/images/common/ico_plane.svg);
}
div#rsvtl a.car:before{
	background-image: url(./assets/images/common/ico_car.svg);
}
div#rsvtl a:hover{
	background-color: rgba(0,132,0,0.6);
}

#Resv p.notice{
	display: inline-block;
	padding: .5em;
	margin-top: 1em;
	border: solid 1px #008400;
	font-size: 90%;
}

.room #Resv{
	margin: -40px 0 60px 0;
}

@media screen and (max-width: 1024px){
	#Resv > div{
		width: 100% !important;
	}
	#Resv div#rsvtl ul{
		display: flex;
		flex-wrap: nowrap;
	}
	#Resv div#rsvtl li{
		width: 50%;
		padding: 1em;
	}
}


/* ======================================================
 * 2-2. Group Page
 * =================================================== */
.home #header label{
	display: none;
}
/* Slider */
.home .slider1{
	margin-bottom: 100px;
	background: #fff;
}
.home .swiper-slide img{
	height: 600px;
}
.home .swiper-slide .txt-h{
	position: absolute;
	top: 50px;
	right: 50px;
	width: 30%;
	padding: 2em;
	border: solid 2px #81b75a;
	background-color: rgba(255, 255, 255, .9);
	font: 500 110%/180% "ヒラギノ明朝 ProN W6","HiraMinProN-W6","HG明朝E","ＭＳ Ｐ明朝","MS PMincho","MS 明朝",serif;
	z-index: 1;
}
.home .swiper-slide .txt-h::after{
	content: "";
	position: absolute;
	top: 6px;
	right: -12px;
	bottom: -12px;
	left: 6px;
	border: solid 2px #81b75a;
	background-color: rgba(255,255,255,.5);
	z-index: -1;
}
.home .swiper-slide .txt-h h3{
	display: block;
	text-align: left;
	font-size: 110%;
	font-weight: 500;
}
.home .swiper-slide .txt p{
	margin-bottom: .5em;
}

/* Common */
.home h3,
.home h4{
	margin-bottom: 1em;
	color: #008400;
	text-align: center;
	line-height: 200% !important;
}
.home h3 span:first-letter{
	color: #005100 !important;
}
.home h3 .ja{
	display: none;
}

/* News */
.home #news{
	width: 90%;
	margin: 0 auto 120px auto;
}

/* Banner */
.home div.bnr{
	max-width: 1200px;
	margin: 0 auto 120px auto;
}

/* Hotel List */
#hotellist{
	width: 100%;
}
#hotellist li{
	display: flex;
	align-items: center;
}
#hotellist > ul > li:nth-child(odd){
	flex-direction: row-reverse;
}
#hotellist .txt{
	width: 40%;
	padding: 2em;
	line-height: 150%;
}
#hotellist .txt p{
	margin-bottom: .5em;
	text-align: center;
}

ul.btn{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-top: 1em;
}
ul.btn li{
	padding: .5em;
}
ul.btn li a{
	position: relative;
	display: block;
	min-width: 10em;
	padding: .2em 1em;
	border: solid 1px #008400;
/*	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px; */
	text-align: center;
	font-weight: 500;
}
ul.btn li a:hover{
	background: #008400;
	color: #fff;
}
ul.btn a::before{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: '';
	background: #008400;
	z-index: -1;
	transform-origin: center center;
	transform: scale(0, 1);
	transition: transform .3s;
}
ul.btn a:hover::before{
	transform: scale(1, 1);
}
#hotellist .thum{
	width: 60%;
}


/* ======================================================
 * 2-3. Common
 * =================================================== */
#main{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 90%;
/*	max-width: 1200px; */
	min-height: calc(100vh - 300px);
	margin: 0 auto;
	overflow: hidden;
}

/* H3 */
body:not(.top):not(.home) h3{
	width: 100%;
	padding: 100px 0 20px 0;
	margin-bottom: 40px;
	background: #005100;
	color: #fff;
	font-size: 40px;
	line-height: 100%;
	text-align: center;
	background-color: rgba(0,81,0,0.9);/* #005100 */
	background-image:
	linear-gradient(45deg, rgba(0,81,0,1) 25%, transparent 25%,
	transparent 75%, rgba(0,81,0,1) 75%, rgba(0,81,0,1)),
	linear-gradient(-45deg, rgba(0,81,0,1) 25%, transparent 25%,
	transparent 75%, rgba(0,81,0,1) 75%, rgba(0,81,0,1));
	background-size: 20px 20px;
	background-position: 0 0, 10px 10px;
}
h3 span{
	display: block;
	text-align: center;
}
h3 span.en{
	font: 500 32px/100% 'Raleway', sans-serif;
}
h3 span.en:first-letter{
	color: #ffff99;
	font-size: 40px;
}
h3 span.ja{
	padding-top: .5em;
	font-size: 16px;
	line-height: 100%;
}

/* section */
.section{
	clear: both;
	position: relative;
	width: 100%;
	margin-bottom: 120px;
	line-height: 150%;
	overflow: hidden;
}
.section{
	transition: opacity 1.0s;
	-moz-transition: opacity 1.0s;
	-webkit-transition: opacity 1.0s;
	-o-transition: opacity 1.0s;
}
section.titleonly{
	margin-bottom: 0 !important;
}
.section p:not(.btn){
	padding: .2em 0;
}

.section h4{
	position: relative;
	width: 100%;
	margin-bottom: 2.5em;
	color: #005100;
	font-size: 26px;
	font-weight: 500;
	line-height: 180%;
	text-align: center;
}
body:not(.news) .section h4:before{
	content: '';
	position: absolute;
	bottom: -0.5em;
	display: inline-block;
	width: 50%;
	height: 2px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background: #008400;
	box-shadow: 0 3px 5px rgba(204,204,204,1);
}
.section h4 span.en{
	display: block;
	font: 400 30px/150% 'Raleway', sans-serif;
	text-align: center;
}
.section h5{
	padding: .3em 0 .3em .5em;
	margin-bottom: .5em;
	font-size: 110%;
	border-left: solid .3em #005100;
	color: #005100;
}
.section h6{
	display: inline-block;
	padding: .8em 0 .4em 0;
	border-bottom: solid 1px #ccc;
	font-weight: 600;
	margin-bottom: .2em;
}

.center,
.center *{
	text-align: center !important;
}
.center table{
	margin: 1em auto;
}
.center table td{
	text-align: left !important;
}
.hover:hover{
	cursor: pointer;
	opacity: .8;
}
p.date{
	padding-bottom: 1em;
	text-align: right;
}

.section div.thum{
	display: inline-block;
	float: right;
	width: 40%;
	padding-left: 2em;
	background: #fff;
}
.section div.thum_left{
	display: inline-block;
	float: left;
	width: 40%;
	padding-right: 2em;
	padding-left: 0;
	background: #fff;
}
.section div.thum img,
.section div.thum_left img{
	width: 100%;
	height: auto;
}

/* Gallery */
div.gallery{
	display: inline-block;
	float: left;
	width: 60%;
	padding: 0 2em 1em 0;
	background: #fff;
}
div.gallery p.main_pic{
	position: relative;
	width: 100%;
	height: auto;
	background: #f4f4f4;
}
div.gallery p.main_pic:before{
	content: "";
	display: block;
	padding-top: 66%;
}
div.gallery p.main_pic img{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	width: auto;
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;'; /* IE */
}
div.gallery ul.img{
	display: flex;
	flex: auto;
	flex-wrap: wrap;
	width: 100%;
}
div.gallery ul.img li{
	position: relative;
	width: 25%;
}
div.gallery ul.img li:before{
	content: "";
	display: block;
	padding-top: 100%;
}
div.gallery ul.img li img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	border: solid 1px #fff;
	object-fit: cover;
	font-family: 'object-fit: cover;'; /* IE */
}

/* Table */
table{
	max-width: 100% !important;
	min-width: 40%;
	margin: 1em 0;
	border-top: solid 1px #e5e5e5;
	border-left: solid 1px #e5e5e5;
	border-collapse: separate;
	border-spacing: 0;
}
table th{
	background: #f2f2f2;
	font-weight: 500;
	text-align: center;
}
table th,
table td{
	padding: .5em;
/*	padding: 0 1em 0 0; */
	border-right: solid 1px #e5e5e5;
	border-bottom: solid 1px #e5e5e5;
}
table.nobd,
table.nobd th,
table.nobd td{
	background: none;
	border: none !important;
}

/* 周辺観光 */
section.col2{
	width: 50%;
	padding-right: 1em;
	padding-left: 1em;
}
section.col3{
	width: 33.3%;
	padding-right: 1em;
	padding-left: 1em;
}
section.col2 h4,
section.col3 h4{
	margin-bottom: .5em !important;
	color: #333;
	font-size: 22px;
	line-height: 150%;
}
section.col2 h4:before,
section.col3 h4:before{
	bottom: 0;
	width: 0 !important;
	height: 0 !important;
	background: #fff;
	box-shadow: 0 0 0;
}

section.col2 div.thum,
section.col3 div.thum{
	display: block;
	float: none;
	width: 100%;
	padding: 1em 0 !important;
}
section.w100{
	width: 100%;
}
.calc{
	width: 60%;
}

ul.col3,
ul.col4{
	display: flex;
	flex: auto;
	flex-wrap: wrap;
	width: 100%;
	margin: 1em 0;
}
ul.col3 li{
	width: 33%;
	padding: 1em;
}
ul.col4 li{
	width: 25%;
	padding: 1em;
}
ul.col3 img,
ul.col4 img{
	width: 100%;
	padding-bottom: 1em;
}

ul.list,
ul.kome{
	margin: 0 0 1em 0;
}
ul.list li{
	padding: .2em 0;
	margin-left: 1em;
	list-style-type: disc;
}
ul.kome li{
	padding: .2em 0;
	margin-left: 1em;
	text-indent: -1em;
}
ul.kome li:before {
	content: '※';
}

ol{
	margin: 0 0 1em -1em;
}
ol > li{
	padding: .2em 0 .2em .2em;
	list-style-type: decimal;
}
ol.num li {
	padding: .2em 0;
	list-style-type: none;
	list-style-position:inside;
	counter-increment: cnt;
}
ol.num li::before {
	content: "(" counter(cnt) ")";
	padding-right: .5em;
}

.center ul,
.center ol{
	display: inline-block;
	width: auto;
	margin: 1em auto !important;
}
.center ul li,
.center ol li{
	text-align: left !important;
}
.center ul:after,
.center ol:after{
	display: block;
	content: "";
}

.waku,
.waku2{
	padding: 2em !important;
	margin: 1em 0;
	border: solid 1px #ccc;
	background: #f2f2f2;
}
.waku2{
	display: inline-block;
}

p.btn{
	text-align: center;
}
p.btn a,
a.btn{
	display: inline-block;
	padding: .6em 1em;
	margin-top: 1em;
	border: none;
	background: #707070;
	color: #fff;
	text-align: center;
	background-size: 200% 100%;
	background-image: -webkit-linear-gradient(left, transparent 50%, rgba(0, 0, 0, 1) 50%);
	background-image: linear-gradient(to right, transparent 50%, rgba(0, 0, 0, 1) 50%);
	-webkit-transition: background-position .3s cubic-bezier(0.19, 1, 0.22, 1) .1s, color .5s ease 0s, background-color .5s ease;
	transition: background-position .3s cubic-bezier(0.19, 1, 0.22, 1) .1s, color .5s ease 0s, background-color .5s ease;
	border-radius: 1px;
	-moz-border-radius: 1px;
	-webkit-border-radius: 1px;
}
p.btn a:hover,
a.btn:hover{
	background-color: #333;
	background-position: -100% 100%;
	text-decoration: none;
}

a.tel:before{
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: .5em;
	background: url(./assets/images/common/ico_tel.svg) left center / contain no-repeat;
}
a.mail:before{
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: .5em;
	background: url(./assets/images/common/ico_mail.svg) left center / contain no-repeat;
}
a.yazi:before{
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	background: url(./assets/images/common/ico_arrow_right.svg) left center / contain no-repeat;
}
a.lnk:before{
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: .5em;
	background: url(./assets/images/common/ico_link.svg) left center / contain no-repeat;
}
a.map:before{
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: .5em;
	background: url(./assets/images/common/ico_map.svg) left center / contain no-repeat;
}
a.pdf:before{
	width: 1em;
	display: inline-block;
	content: '';
	height: 1em;
	margin-right: .5em;
	background: url(./assets/images/common/ico_pdf.svg) left center / contain no-repeat;
}

.pt1{
	padding-top: 1em;
}
.mt1{
	margin-top: 1em;
}
.mb1{
	margin-bottom: 1em;
}


/*----------------------
  Stay
------------------------*/
ul.roomurl{
	display: flex;
	flex: auto;
	flex-wrap: wrap;
	justify-content: center;
	min-width: 40%
	margin-bottom: 1em;
}
ul.roomurl li{
	min-width: 50%;
	padding: 1em .2em 0 .2em;
}
ul.roomurl li a{
	position: relative;
	display: block;
	padding: .5em 1em .5em 3em;
	border: solid 1px #008400; /*#005100 */
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	text-align: center;
	font-weight: bold;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
}
ul.roomurl li a:hover{
	background-color: rgba(0,132,0,0.5);
}
ul.roomurl li a:before{
	content: '';
	position: absolute;
	top: 50%;
	left: 1em;
	transform: translateY(-50%);
	width: 1.5em;
	height: 1.5em;
	background: url(../../../../images/common/ico_search_w.svg) left center / contain no-repeat;
}
ul.roomurl li.nonsmoking a:before{
	background-image: url(./assets/images/common/ico_nonsmoking.svg);
}
ul.roomurl li.smoking a:before{
	background-image: url(./assets/images/common/ico_smoking.svg);
}
ul.roomurl li.ladies a:before{
	background-image: url(./assets/images/common/ico_female.svg);
}
ul.roomurl li.others a:before{
	background-image: url(./assets/images/common/ico_search.svg);
}

ul.group{
	display: flex;
	flex: auto;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	padding-left: .5em;
}
ul.group li{
	position: relative;
	width: 25%;
	padding: 0 1em 5em 1em;
	margin-bottom: 1em;
}
ul.group strong{
	position: absolute;
	top: 0;
	left: 0;
	padding: .5em;
	background: #008400;
	color: #fff;
	z-index: 1;
	transform: rotate(-10deg);
	-moz-transform: rotate(-10deg);
	-webkit-transform: rotate(-10deg);
}
ul.group div{
	position: absolute;
	bottom: 0;
	right: 0;
	display: inline-block;
	width: 70%;
	height: 60%;
	padding: .5em;
	background-color: rgba(255,255,255,0.9);
/*	background-color: rgba(102,102,102,0.8); */
	border-radius: 3px;
	color: #000;
	line-height: 140%;
	font-size: 90%;
	z-index: 1;
}
ul.group img{
	position: relative;
	width: 100%;
	z-index: 0;
}
#yamoto ul.group li{
	width: 33.33%;
}
#yamoto ul.group div{
	height: 30%;
}

ul.faci{
	display: flex;
	flex: auto;
	flex-wrap: wrap;
	width: 100%;
	margin: .5em 0;
}
ul.faci > li.ttl{
	width: 100%;
	padding-left: .5em;
	margin: 1em 0 .5em 0;
	font-size: 110%;
	font-weight: 500;
	border-left: solid .3em #005100;
	color: #005100;
}
ul.faci > li:not(.ttl){
	min-width: 18%;
	padding: 0 2em .5em 0;
	margin-left: 1em;
	list-style-type: circle;
}

/*----------------------
  Service
------------------------*/
/*
<ul id="service">
<li class="faci_pc">PC</li>
<li class="faci_wifi">WI-FI</li>
<li class="faci_net">有線Net</li>
<li class="faci_vending">自動販売機</li>
<li class="faci_ice">製氷機</li>
<li class="faci_conveni">コンビニ</li>
<li class="faci_coffee">コーヒーサービス</li>
<li class="faci_laundry">ランドリーコーナー</li>
<li class="faci_laundryservice">ランドリーサービス</li>
<li class="faci_copy">コピー・FAX</li>
<li class="faci_delivery">宅急便</li>
<li class="faci_smoking">喫煙コーナー</li>
<li class="faci_business">ビジネスコーナー</li>
<li class="faci_presser">ズボンプレッサー</li>
<li class="faci_valuables">貴重品</li>
<li class="faci_clock">時計</li>
<li class="faci_taxi">タクシー</li>
<li class="faci_post">郵便</li>
<li class="faci_massage">マッサージ</li>
<li class="faci_suitcase">荷物預かり</li>
<li class="faci_humidifier">加湿器</li>
<li class="faci_iron">アイロン</li>
<li class="faci_oven">電子レンジ</li>
</ul>
*/
ul#service{
	display: flex;
	flex: auto;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
	width: 100%;
	border-bottom: dotted 1px #ccc;
}
ul#service li{
	display: flex;
	flex: auto;
	flex-wrap: nowrap;
	align-items: flex-start;
	width: calc(50% - 62px);
	padding: 1em 0;
	margin: 0 1px;
	border-top: dotted 1px #ccc;
}
ul#service li:before{
	flex-basis: 50px;
	flex-shrink: 0;
	content: '';
	display: inline-block;
	width: 50px;
	height: 50px;
	margin-right: 10px;
	background: #fff url(assets/images/common/ico_facilities.png);
	background-size: 1250px 50px;
}
ul#service li.faci_pc:before{
	background-position: 0 0;
}
ul#service li.faci_wifi:before{
	background-position: -50px 0;
}
ul#service li.faci_air:before{
	background-position: -100px 0;
}
ul#service li.faci_vending:before{
	background-position: -150px 0;
}
ul#service li.faci_ice:before{
	background-position: -200px 0;
}
ul#service li.faci_conveni:before{
	background-position: -250px 0;
}
ul#service li.faci_coffee:before{
	background-position: -300px 0;
}
ul#service li.faci_laundry:before{
	background-position: -350px 0;
}
ul#service li.faci_laundryservice:before{
	background-position: -400px 0;
}
ul#service li.faci_copy:before{
	background-position: -450px 0;
}
ul#service li.faci_delivery:before{
	background-position: -500px 0;
}
ul#service li.faci_smoking:before{
	background-position: -550px 0;
}
ul#service li.faci_business:before{
	background-position: -600px 0;
}
ul#service li.faci_presser:before{
	background-position: -650px 0;
}
ul#service li.faci_valuables:before{
	background-position: -700px 0;
}
ul#service li.faci_clock:before{
	background-position: -750px 0;
}
ul#service li.faci_taxi:before{
	background-position: -800px 0;
}
ul#service li.faci_post:before{
	background-position: -850px 0;
}
ul#service li.faci_massage:before{
	background-position: -900px 0;
}
ul#service li.faci_suitcase:before{
	background-position: -950px 0;
}
ul#service li.faci_humidifier:before{
	background-position: -1000px 0;
}
ul#service li.faci_iron:before{
	background-position: -1050px 0;
}
ul#service li.faci_oven:before{
	background-position: -1100px 0;
}
ul#service li.faci_tv:before{
	background-position: -1150px 0;
}
ul#service li.faci_stand:before{
	background-position: -1200px 0;
}


/*----------------------
  Access
------------------------*/
#gmap{
	width: 100%;
	height: 600px;
}


/*----------------------
  News
------------------------*/
main.news .section h4{
	border-bottom: solid 1px #008400;
	color: #008400;
	text-align: left;
}


/*----------------------
  FAQ
------------------------*/
ul.tab_nav{
	display: flex;
	flex: auto;
	flex-wrap: wrap;
	width: 100%;
	margin: 2em 0;
}
ul.tab_nav li{
	min-width: 16%;
	padding: .2em .5em;
}
ul.tab_nav li a{
	display: block;
	padding: .5em .1em;
	border: solid 1px #bcbcbc;
	background: #f1f1f1;
	font-size: 90%;
	text-align: center;
}
ul.tab_nav li a:hover,
ul.tab_nav li.active a{
	background: #b0b0b0;
	color: #fff;
	text-decoration: none;
}

.tab_content{
	overflow: hidden;
}
.tab_content dl{
	padding: 1em 0;
	border-bottom: solid 1px #f1f1f1;
}
.tab_content dt{
	width: 100%;
	font-weight: 500;
}
.tab_content dl dt,
.tab_content dl dd{
	padding: .5em 1em;
	padding-left: 30px;
	text-indent: -30px;
}
.tab_content dt:before{
	content: 'Q. ';
	width: 30px;
	font: 24px/140% 'Raleway', sans-serif;
}
.tab_content dd:before{
	content: 'A. ';
	width: 30px;
	font: 24px/140% 'Raleway', sans-serif;
}
.tab_content dt:hover{
	cursor: pointer;
}
.tab_content dt:after{
	content: '';
	display: inline-block;
	float: right;
	width: 1em;
	height: 1em;
	background: url(./assets/images/common/ico_plus.svg) center center / 100% auto no-repeat;
}
.tab_content dt.active:after{
	content: '';
	display: inline-block;
	float: right;
	width: 1em;
	height: 1em;
	background: url(./assets/images/common/ico_minus.svg) center center / 100% auto no-repeat;
}


/*----------------------
  Company
------------------------*/
.company table{
	margin: 0 auto;
}


/*----------------------
  Cookie
------------------------*/
.cookie-consent{
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	bottom: 0;
	padding: 1.2em;
	width: 100%;
	font-size: 12px;
	color: #fff;
	background: rgba(0,0,0,.7);
	visibility: hidden;
	z-index: 1001;
}
.cookie-consent.is-show{
	visibility: visible;
}
.cookie-consent a{
	color: #fff !important;
}
.cookie-consent .btn{
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
.cookie-agree, .cookie-reject{
	display: inline-block;
	padding: .5em 1.5em;
	margin-left: 20px;
	color: #fff;
	background: #333;
	text-align: center;
	white-space: nowrap;
}
.cookie-agree:hover, .cookie-reject:hover{
	cursor: pointer;
}
/* パッと消える */
.cc-hide1{
	display: none;
}
/* ゆっくり消える */
.cc-hide2{
	animation: hide 1s linear 0s;
	animation-fill-mode: forwards;
}
@keyframes hide{
	from{
opacity: 1;
	}
	to{
opacity: 0;
visibility: hidden;
	}
}

@media screen and (max-width: 960px){
.cookie-consent .btn{
	flex-wrap: wrap;
	justify-content: center;
}
.cookie-agree{
	margin-bottom: 8px;
}
}


/* ======================================================
 * Responsive
 * =================================================== */
@media screen and (max-width: 1200px){
	ul.group div{
		width: 90%;
		line-height: 120%;
	}
	.home .swiper-slide .txt-h{
		width: 40%;
		padding: 1em;
	}
}
@media screen and (max-width: 1000px){
	#header{
		height: 55px;
	}
	body:not(.home) nav#lang{
		display: none;
	}
	.pc_only{
		display: none;
	}
	.sp_only{
		display: block;
	}
	body:not(.home) p#rsv{
		position: absolute;
		top: 0;
		right: 60px;
		font-size: 12px;
	}

	/* 表示切替 */
	body:not(.home) #menubtn{
		display: block !important;
		position: absolute;
		top: 5px;
		right: 0;
		width: 30px;
		height: 30px;
		margin: 10px;
		background: none;
		border: none;
		overflow: hidden;
		appearance: none;
		cursor: pointer;
		z-index: 3;
	}
	#menubtn span{
		display: inline-block;
		position: absolute;
		right: 0;
		width: 30px;
		height: 4px;
		background-color: #fff;
		border-radius: 4px;
		transition: all .4s;
	}
	#menubtn span:nth-of-type(1){
		top: 0;
	}
	#menubtn span:nth-of-type(2){
		top: 12px;
	}
	#menubtn span:nth-of-type(3){
		top: 24px;
	}
	#menubtn.active span:nth-of-type(1){
		-webkit-transform: translateY(12px) rotate(-45deg);
		transform: translateY(12px) rotate(-45deg);
	}
	#menubtn.active span:nth-of-type(2){
		opacity: 0;
	}
	#menubtn.active span:nth-of-type(3){
		-webkit-transform: translateY(-12px) rotate(-45deg);
		transform: translateY(-12px) rotate(45deg);
	}
	#menubtn.active span,
	#menubtn.black span{
		background-color: #fff;
	}
	input#menucheck{
		display: none;
	}

	body:not(.home) #gnav{
		display: block;
		position: absolute;
		top: 55px;
		left: 0;
		width: 100%;
		height: 0;
		background-color: rgba(55,55,55,0.9);
		border-top: solid 1px #222;
		overflow: hidden;
		opacity: 0;
		visibility: hidden;
		transition: .8s;
	}
	input#menucheck:checked + #gnav{
		height: auto;
		opacity: 1;
		visibility: visible;
	}
	body:not(.home) ul#nav{
		display: flex;
		flex: auto;
		flex-wrap: wrap !important;
		align-items: center;
		width: 100%;
		border-top: solid 1px #222;
		background-color: rgba(55,55,55,0.9);
	}
	ul#nav li{
		width: 25%;
		border-bottom: solid 1px #222;
	}
	ul#nav li a{
		display: block;
		padding: 1em !important;
		background-color: rgba(55,55,55,0.9);
		text-align: center;
	}
	ul#nav li.sp_only{
		background-color: rgba(34,34,34,0.9);
	}
	ul#nav li a:hover{
		background-color: rgba(55,55,55,1);
	}

	#main{
		width: 98%;
	}
	div#contact #address,
	div#contact ul{
		width: 49%;
		max-width: 98%;
	}
	.slider1 .swiper-slide{
		margin-top: 55px;
	}
}
