@import url('https://fonts.googleapis.com/css2?family=Open+Sans&display=swap');
/* @import url('https://fonts.googleapis.com/css2?family=Open+Sans&family=Raleway:wght@400;500;600&display=swap'); */
/* @import url('https://fonts.googleapis.com/css2?family=Raleway:wght@400;500;600&display=swap'); */
/* @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500&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;
	object-fit: cover;
}
*{
	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: 'optima', 'Avenier', 'Open Sans', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: 400;
}

/* ======================================================
 * 1-2. Style
 * =================================================== */
html{
	scroll-behavior: smooth;
}
body{
	width: 100%;
	margin: 0;
	padding: 0;
	background-color: rgba(238,222,206,0.3);
	color: #373534;
	text-align: left;
}
body.en{
	font: 400 15px/150% 'optima', 'Avenier', 'Open Sans', sans-serif;
}
.en{
	font-family: 'optima', 'Avenier', 'Open Sans', 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: #373737; text-decoration: none;}
a:visited	{ color: #373737; text-decoration: none; }
a:hover		{ color: #333; text-decoration: none;}
a:active	{ color: #333; 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;
}


@media print{
	@page{
		margin: 0mm 5mm;
		size: A4 portrait;
		font-size: 10pt;
	}
	*{
		-webkit-print-color-adjust: exact;
	}
	body{
		background: none !important;
		color: #000;
	}
}


/* ======================================================
 * 1-3. Header
 * =================================================== */
body:not(.home) #header{
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	width: 100%;
	height: 80px;
	background-color: rgba(166,142,142,0.8);
	z-index: 100;
}
.top #header{
	background: none;
}
#header *{
	color: #fff;
}
#header h1{
	padding: 5px;
}
#header h1 a{
	display: block;
	width: 220px;
	height: 41px;
	background: url(./assets/images/common/logo_6.svg) left center / contain no-repeat;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	z-index: 2;
}

body#post #header h1 a,
body.home #header h1 a{
	width: 220px;
	height: 38px;
	background: url(./assets/images/common/logo_2.svg) left center / contain no-repeat;
}
#nihonbashi_hamacho #header h1 a,
#kanazawa_korinbo #header h1 a,
#kumamoto #header h1 a{
	width: 222px;
	height: 42px;
	background: url(./assets/images/common/logo_p.svg) left center / contain no-repeat;
}
#asakusa_tawaramachi #header h1 a,
#asakusa_kappabashi #header h1 a{
	width: 175px;
	height: 42px;
	background: url(./assets/images/common/logo_r.svg) left center / contain no-repeat;
}
#header h1 span{
	display: block;
	font: 400 13px/100% 'optima', 'Avenier', 'Open Sans', sans-serif;
	text-align: center;
}
#header h2{
	display: none;
}

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

/* rsv */
p#rsv{
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	flex-grow: 0;
	width: 10em;
	height: 100%;
	padding: 0 1em;
	background: #5f4949;
	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;
}

/* 旧サイトでの予約 */
#prevbooking{
	position: fixed;
	top: 86px;
	right: 0;
	width: 160px;
	background: #a68e8e;
	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: #5f4949;
}


/* ======================================================
 * 1-4. Nav
 * =================================================== */
#gnav{
	flex-grow: 2;
	z-index: 2;
}
#gnav ul{
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-around;
	align-items: center;
}
#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.active small,
#gnav li a:hover,
#gnav li a:hover small{
	color: #ffff99 !important;
}
nav.ja a,
nav.cn a{
	letter-spacing: .4em;
}
nav.en a{
	padding: 1em 0;
}
body:not(.home) nav.en small{
	display: none !important;
}
#gnav small{
	display: block;
	padding-top: .5em;
	text-align: center;
}
#gnav > ul > li > a:hover,
#gnav li a.active{
	opacity: 0.8;
}


/* thin */
#header.thin{
	height: 55px !important;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
}
.top #header.thin{
	background-color: rgba(166,142,142,0.8);
}
#header.thin h1 a{
	width: 160px;
	height: 28px;
}
#nihonbashi_hamacho #header h1 a,
#kanazawa_korinbo #header h1 a,
#kumamoto #header h1 a{
	width: 169px;
	height: 32px;
}
#asakusa_tawaramachi #header h1 a,
#asakusa_kappabashi #header h1 a{
	width: 134px;
	height: 32px;
}
#header.thin #gnav li a{
	padding: .5em 1em;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
}
#header.thin #gnav li a small{
	display: none;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
}

body.home #gnav{
	display: none;
}


.sp_only,
label#menubtn,
input#menucheck{
	display: none !important;
}
/*
#sp_btn,
#sp_nav,
*/


/* width 変更時はcontactも修正*/
#footer ul,
#main{
	width: 90%;
	margin: 0 auto;
}
@media screen and (max-width: 1024px){
	#footer ul,
	#main{
		width: 96%;
	}
}


/* ======================================================
 * 1-6. footer
 * =================================================== */
/* PageTop */
#pagetop{
	display: none;
	position: fixed;
	bottom: 0px;
	right: 0px;
	padding: 10px;
	background-color: rgba(238,222,206,0.2);
	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-between;
	align-items: center;
	width: 100%;
	padding: 1em 5%;
/*	background-color: rgba(238,222,200,0.8); */
	background-color: rgba(166,142,142,0.2);
/*	background: #a68e8e; */
}
@media screen and (max-width: 1024px){
	div#contact{
		padding: 1em 2%;
	}
}
div#contact #address{
	position: relative;
	width: 60%;
}
div#contact #address p{
	padding: .5em 0;
}
div#contact #address p.ttl{
	font-size: 120%;
	font-weight: 500;
	letter-spacing: .2em;
}
div#contact #address a.tel{
	display: inline-block;
	margin-top:.5em;
}
div#contact #address ul#sns{
	position: absolute;
	bottom: 0;
	right: 0;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-end;
	width: 150px;
}
div#contact #address ul#sns li{
	padding: 0 5px;
}
div#contact #address ul#sns a{
	display: inline-block;
	width: 40px;
	height: 40px;
	background-size: contain;
	background-posistion: center center;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
div#contact #address ul#sns a.line{
	background: url(./assets/images/common/sns-line.svg) no-repeat;
}
div#contact #address ul#sns a.insta{
	background: url(./assets/images/common/sns-insta.svg) no-repeat;
}
div#contact #address ul#sns a.ta{
	background: url(./assets/images/common/sns-ta.svg) no-repeat;
}
div#contact #address ul#sns a.youtube{
	background: url(./assets/images/common/sns-youtube.svg) no-repeat;
}

a.sns-insta{
	display: inline-block;
	width: 50px;
	height: 50px;
	background: url(./assets/images/common/sns-insta.svg) no-repeat;
	background-size: contain;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
table a.sns-insta{
	width: 30px;
	height: 30px;
}

div#contact > ul{
	position: relative;
	width: 40%;
}
div#contact > ul li{
	padding: 0;
	text-align: right;
}
div#contact a.btn{
	position: relative;
	min-width: 240px;
	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);
}

#contact p.notice{
	display: inline-block;
	padding: .5em !important;
	margin-top: .5em;
	border: solid 1px #a68e8e;
	font-weight: bold;
	font-size: 90%;
}
#contact p.notice a{
	font-weight: bold;
}

/* Footer */
#footer{
	width: 100%;
	padding: 1.5em 0;
/*	background-color: rgba(55,55,55,0.9); */
	background: #5f4949;
}
#footer a,
#footer *{
	color: #fff;
	text-align: center;
}
#footer a:hover{
	color: #ccc;
}
#footer ul{
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	padding-bottom: 1.5em;
}
#footer ul#group{
	flex-wrap: wrap;
	justify-content: flex-start;
	padding-bottom: 1.5em;
	border-top: solid 1px #473636;
	border-bottom: solid 1px #473636;
}
#footer ul#group li.ttl{
	width: 100%;
	margin: 1.5em .2em .5em .2em;
	font-family: 'optima', 'Avenier', 'Open Sans', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: 600;
}
#footer ul#group li{
	min-width: 12.5%;
	text-align: left;
}
#footer ul a{
	display: inline-block;
	padding: .3em 2em .3em 0;
	font-size: 90%;
}

#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: #5f4949 url(./assets/images/logo/logo_bw.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% 'optima', 'Avenier', 'Open Sans', sans-serif;
}


/* ****************************************************************************
 *
 * 2. Contents
 *
 * ***************************************************************************/
/* ======================================================
 * 2-1. HOME
 * =================================================== */
/* style_home.css */


/* ======================================================
 * 2-2. HOTEL LIST
 * =================================================== */
/*----------------------
  HOTEL LIST
------------------------*/
div#hotellist{
	position: relative;
	max-width: 1200px;
	margin: 0 auto;
	text-align: center;
	box-sizing: border-box;
}
/* 地図とポイント */
div#hotellist #groupmap{
	position: relative;
	width: 400px;
	height: 420px;
	margin: 0 auto;
}
div#hotellist #groupmap img{
	width: 400px;
	height: auto;
}
/* 地図周りのホテルリスト */
div#hotellist dt{
	display: inline-block;
	padding: 5px 1em 3px 1em;
	margin-bottom: 0.5em;
	border: solid 1px #ccc;
	background: #e6ebf1;
	font-size: 90%;
	font-weight: bold;
	line-height: 100%;
}
div#hotellist dd{
	margin: 0 0 5px 2em;
	line-height: 120%;
}
div#hotellist dd span{
	display: block;
	text-align: right;
}
div#hotellist dl a:hover{
	text-decoration: underline;
}
div#hotellist dl.map_hokkaido{
	position: absolute;
	top: 0;
	right: 15%;
}
div#hotellist dl.map_tohoku{
	position: absolute;
	top: 5%;
	left: 30%;
}
div#hotellist dl.map_syutoken{
	position: absolute;
	top: 30%;
	right: 10%;
}
div#hotellist dl.map_chubu{
	position: absolute;
	bottom: 0;
	left: 60%;
}
div#hotellist dl.map_kinki{
	position: absolute;
	top: 30%;
	left: 20%;
}
div#hotellist dl.map_chugoku{
	position: absolute;
	bottom: 0;
	left: 40%;
}
div#hotellist dl.map_kyusyu{
	position: absolute;
	bottom: 0;
	left: 10%;
}

/* ホテル詳細情報リスト */
.hotelinfo{
	display: flex;
	flex-wrap: wrap;
}
.hotelinfo .section{
	width: 33.333%;
	margin-bottom: 50px;
}
.hotelinfo h5{
	width: 100%;
	border-bottom: none;
}
.hotelinfo span.room{
	font-size: 80%;
}
.hotelinfo a.lnk,
.hotelinfo a.mail{
	font: 400 90%/150% 'optima', 'Avenier', 'Open Sans', sans-serif;
}
.hotelinfo p.thum{
	margin-bottom: 10px;
	overflow: hidden;
}
.hotelinfo .section img,
.home main li .thum img{
	width: 100%;
	height: auto;
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}
.hotelinfo .section:hover{
	cursor: pointer;
	opacity: 0.7;
	-moz-opacity: 0.7;
	filter:progid:DXImageTransform.Microsoft.Alpha(opacity=70);
}
.hotelinfo .section:hover img,
.home main li .thum img:hover{
	-webkit-transform: scale(1.3);
	transform: scale(1.3);
}
.hotelinfo .section:first-child,
.hotelinfo .section:nth-child(3n+1){
	padding-right: 20px
}
.hotelinfo .section:nth-child(2),
.hotelinfo .section:nth-child(3n+2){
	padding: 0 10px;
}
.hotelinfo .section:nth-child(3n){
	padding-left: 20px
}

/* ======================================================
 * 2-3. トップページ
 * =================================================== */
/*----------------------
  トップ動画
------------------------*/
.swiper-slide{
	width: 100%;
	background-color: transparent;
	overflow: hidden;
	z-index: -1;
}
.swiper-slide img{
	width: 100%;
	object-fit: cover;
}
.slider1 .swiper-slide img{
	aspect-ratio: 16 / 9;
}


/*----------------------
  Toppage(ホテルトップ)
------------------------*/
.swiper-container #hotelinfo{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding-top: 150px;
	background-color: rgba(0,0,0,0.3);
	color: #fff;
	z-index: 1;
}
.swiper-container #hotelinfo,
.swiper-container #hotelinfo *{
	font: 400 16px/200% "リュウミン R-KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	text-align: center !important;
}
.swiper-container #hotelinfo h2 img{
	width: 260px;
	height: auto;
}
.swiper-container #hotelinfo h3{
	padding-bottom: 1em;
	font-size: 18px;
	font-weight: 400;
}
.swiper-container #hotelinfo h3.en{
	font: 400 30px/150% 'optima', 'Avenier', 'Open Sans', sans-serif;
	letter-spacing: .2em;
}

.top main{
	position: relative;
	padding-top: 40px;
}
.top h3{
	padding-bottom: 1em;
}

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

/* リード */
#top-tsumugu{
	position: relative;
	padding: 50px;
	background: #a68e8e;
	color: #fff;
	text-align: center;
	z-index: 2;
}
#top-tsumugu h2{
	width: 100%;
	height: 80px;
	background: url(./assets/images/common/home_txt.svg) center top / 200px auto no-repeat;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	z-index: 2;
}
#top-tsumugu p{
	font-family: "リュウミン R-KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	text-align: center;
	line-height: 2em;
}
span.optima{
	font-family: 'optima', 'Avenier', 'Open Sans', sans-serif;
}

/* リード（BrandStory） */
#top-tsumugu2{
	position: relative;
	padding: 50px 0 80px 0;
	background: #f7efe4;
	color: #3E3a39;
}
#top-tsumugu2 > ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 90%;
	margin: 0 auto 80px auto;
}
#top-tsumugu2 > ul li{
	width: 25%;
	margin: 1em 3%;
	text-align: center;
}
#top-tsumugu2 > ul img{
	display: block;
	width: 50%;
	margin: 0 auto;
}
#top-tsumugu2 > ul p{
	background: #a68e8e;
	color: #fff;
	font: 500 120%/200% 'optima', 'Avenier', 'Open Sans', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	text-align: center;
	border-radius: 999px;
	-webkit-border-radius: 999px;
	-moz-border-radius: 999px;
}
.en #top-tsumugu2 > ul p,
.zh-cn #top-tsumugu2 > ul p{
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 4em;
	padding: .5em;
	font-size: 90%;
	line-height: 120%;
}
#top-tsumugu2 section{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	width: 80%;
	margin: 0 auto 50px auto;
}
#top-tsumugu2 section:nth-of-type(2) div.thum{
	order: 3;
}
#top-tsumugu2 section:nth-of-type(2) div.txt{
	order: 2;
}
#top-tsumugu2 h3{
	position: relative;
	display: inline-block;
	width: 100%;
	font: 600 150%/200% 'optima', 'Avenier', 'Open Sans', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	text-align: center;
}
#top-tsumugu2 h3:before,
#top-tsumugu2 h3:after{
	content: '';
	position: absolute;
	top: 50%;
	display: inline-block;
	width: calc(50% - 4em);
	height: 1px;
	background-color: black;
}
#top-tsumugu2 h3:before{
	left:0;
}
#top-tsumugu2 h3:after{
	right: 0;
}
#top-tsumugu2 section div{
	width: 50%;
	padding: 4em;
	font: 100%/200% "リュウミン R-KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.fadein{
	transition: opacity 5s;
	-moz-transition: opacity 5s;
	-webkit-transition: opacity 5s;
	-o-transition: opacity 5s;
}
#top-tsumugu2 .close{
	position: absolute;
	bottom: 60px;
	left: 50%;
	transform: translateX(-50%);
	width: 40px;
	height: 40px;
	background: url(./assets/images/common/ico_arrow_down.svg) center center / 100% auto no-repeat;
}
#top-tsumugu2 .close.active{
	background-image: url(./assets/images/common/ico_arrow_up.svg);
}
#top-tsumugu2 .close:hover{
	cursor: pointer;
}
#top-tsumugu2 .close::before{
	content: 'More';
	position: absolute;
	margin-top: 50px;
}
#top-tsumugu2 .close.active::before{
	content: 'Close';
}

/* SubBrad */
/* Aroma */
#brand,
#aroma{
	width: 90%;
	margin: 0 auto 80px auto;
	text-align: center;
}
#brand h3,
#aroma h3{
	padding: 30px 0;
}
#brand ul,
#aroma ul{
	display: flex;
	width: 100%;
}
#brand ul li{
	width: 33.33%;
	padding: 0 2em;
	text-align: center;
}
#brand ul h4,
#aroma h4{
	font: 500 150%/200% 'optima', 'Avenier', 'Open Sans', sans-serif;
	text-align: center;
}
#brand ul img{
	display: inline-block;
	width: 40%;
	margin: 2em 0;
}
#brand ul strong,
#aroma ul strong{
	display: block;
	min-height: 3em;
	text-align: center;
	font: 500 110%/150% "リュウミン R-KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
#brand ul p{
	padding: 1em 0;
	line-height: 150%;
}

#aroma h3:before,
#aroma h3:after{
	width: calc(40% - 4em);
}
#aroma p{
	padding: .5em 0;
	line-height: 150%;
	text-align: center !important;
}
#aroma ul{
	padding: 1em 0;
}
#aroma ul strong{
	font: 500 105%/150% "リュウミン R-KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
#aroma ul li{
	width: 31.33%;
	padding: 1em .5em;
	margin: 0 1%;
	background-color: rgba(166,142,142,0.4);
	line-height: 130%;
}
.en #aroma ul li,
.en #aroma ul li{
	padding: 1.5em;
	text-align: center;
}

@media screen and (max-width: 1200px){
	#top-tsumugu2 > ul li{
		width: 27%;
		margin: 1em 2%;
	}
}
@media screen and (max-width: 1024px){
	#top-tsumugu2 ul,
	#top-tsumugu2 section,
	#brand{
		width: 96%;
	}
	#top-tsumugu2 > ul img{
		width: 70%;
	}
	#top-tsumugu2 > ul p{
		font-size: 100%;
	}
	#top-tsumugu2 h3:before,
	#top-tsumugu2 h3:after{
		width: calc(48% - 4em);
	}
	#brand ul li{
		padding: 0 1em;
	}
}

/* News */
ul#news_list{
	width: 100%;
	padding-bottom: 20px;
}
ul#news_list li{
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	width: 100%;
	padding: .5em;
	border-bottom: dotted 1px #ccc;
	background-color: transparent;
	line-height: 150% !important;
}
ul#news_list li:hover{
	cursor: pointer;
	background-color: rgba(166,142,142,0.3);
	-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;
}

/* Topbnr */
ul#topbnr{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: flex-start;
}
ul#topbnr li{
	width: 50%;
	padding: 1em;
	text-align: center;
}
ul#topbnr li img{
	width: 100%;
	opacity: 0.7;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
}
ul#topbnr li a:hover img{
	opacity: 1;
}

/* CheckInOut */
div#checkin ul{
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	min-width: 60%;
	margin: 0 auto;
}
div#checkin ul li{
	padding: 0 2em;
	margin: 2em 0;
	font-size: 34px;
	text-align: center;
	letter-spacing: .2em;
}
div#checkin ul li:first-child{
	border-right: solid 1px #e5e5e5;
}
div#checkin ul span{
	display: block;
	padding-bottom: 2em;
	font-size: 16px;
	text-align: center;
}

/* Rooms */
body.top h4{
	padding-bottom: 1.5em;
	font-weight: 400;
}
body.top h4 span.en{
	display: block;
	font: 400 24px/150% 'optima', 'Avenier', 'Open Sans', sans-serif;
}
div#room .hide{
	padding-bottom: 100px;
}

.open{
	position: relative;
}
.open:hover{
	cursor: pointer;
}
.open:after{
	content: '';
	position: absolute;
	top: 1em;
	right: .5em;
	width: 20px;
	height: 20px;
	background: url(./assets/images/common/ico_plus.svg) center center / 100% auto no-repeat;
}
.open.active:after{
	background-image: url(./assets/images/common/ico_minus.svg);
}

div#room .slider2 .swiper-slide{
	width: 100%;
}
.slider2 .swiper-slide img{
	aspect-ratio: 2 / 1;
}
/*div#room .slider2 .swiper-slide:before{
	content: "";
	display: block;
	padding-top: 50%;
}
div#room .slider2 .swiper-slide img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}*/

/* 客室ページ */
.room .slider2 .swiper-slide img{
	aspect-ratio: 3 / 2;
}
/*.room .slider2 .swiper-slide:before{
	content: "";
	display: block;
	padding-top: 68%;
	overflow: hidden;
}
.room .slider2 .swiper-slide 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;';
}*/

/* Service */
div#service table{
	border: none !important;
}
div#service table th{
	padding-right: 3em !important;
	white-space: nowrap;
	background: none !important;
}
div#service table th,
div#service table td{
	padding: 1em 0;
	border: none !important;
	text-align: left;
	vertical-align: top;
}
div#service section h4{
	margin: 0 !important;
	font-size: 14px;
}
div#service section h4 span.en{
	font-size: 24px;
}
div#service td ul.flex > li{
	min-width: 30% !important;
}

/* bnr */
div#bnr{
	padding-bottom: 20px;
}
div#bnr > ul{
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
}
div#bnr > ul > li{
	width: 50%
}
div#bnr ul li.auto{
	width: auto !important;
	background: #ccc;
}
div#bnr img{
	width: 100%;
	padding: 1em;
}

/* Premier用 */
div#premier{
	width: 100%;
	padding: 50px 0;
	background: #f2f2f2;
	text-align: center;
}
div#premier > img{
	width: 300px;
}
div#premier p{
	text-align: center;
}
div#premier ul{
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	width: 90%;
	max-width: 1200px;
	margin: 2em auto 1em auto;
}
div#premier li{
	position: relative;
	width: 29%;
	padding: 1em;
	margin: 1em 2%;
	overflow: hidden;
	transform: skewX(-15deg);
}
div#premier li strong{
	position: absolute;
	left: .5em;
	font: 500 30px/100% 'optima', 'Avenier', 'Open Sans', sans-serif;
	color: #fff;
	transform:skewX(15deg);
	z-index: 1;
}
div#premier li img{
	width:100%;
	transform:skewX(15deg) scale(1.4);
	z-index: 0;
}
div#premier li p{
	padding-top: 50px;
	line-height: 120%;
	transform:skewX(15deg);
	z-index: 1;
}

/* Residence用 */
div#residence{
	width: 100%;
	padding: 50px 0;
	background: #f2f2f2;
	text-align: center;
}
div#residence h3{
	padding-top: 1em;
	font: 500 26px/150% "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif !important;
}
div#residence ul{
	display: flex;
	flex-wrap: nowrap;
	width: 90%;
	max-width: 1200px;
	margin: 2em auto 1em auto;
}
div#residence li{
	width: 29%;
	padding: 1em;
	margin: 1em 2%;
	line-height: 130%;
}
div#residence li img{
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}
/*
div#residence li p{
	position: relative;
	overflow: hidden;
}
div#residence li p:before{
	content: "";
	display: block;
	padding-top: 100%;
}
div#residence li img{
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	object-fit: cover;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}*/
div#residence li:last-child img{
	object-position: left top;
}
div#residence li strong{
	display: block;
	padding: 1em 0;
	font-size: 110%;
	text-align: center;
}

/*----------------------
  予約フォーム
------------------------*/
#rsvform form{
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 2em;
	background-color: rgba(166,142,142,0.2);
}
#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 right center;
	background-size: 1em 1em;
}
#rsvform select{
	appearance: none;
	min-width: 3em;
	background: url(./assets/images/common/ico_arrow_down.svg) no-repeat right center;
	background-size: .6em .6em;
	color: #373534;
}
#rsvform button[type="submit"]{
	position: relative;
	padding: 1em 1.5em 1em 3em;
	margin: 0 1em;
	border: none;
	background: #5f4949;
	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(166,142,142,0.6);
}
#rsvform strong{
	display: block;
	padding-bottom: .5em;
	border-bottom: dotted 2px #a68e8e;
	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 #a68e8e;
/*	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(166,142,142,0.6);
}

.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(166,142,142,0.2);
}
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: #5f4949;
	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(166,142,142,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 #a68e8e;
	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(166,142,142,0.6);
}

#Resv p.notice{
	display: inline-block;
	padding: .5em;
	margin-top: 1em;
	border: solid 1px #a68e8e;
	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-4. Common
 * =================================================== */
#main{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	min-height: calc(100vh - 300px);
	overflow: hidden;
}

/* H3 */
body:not(.top, .home) h3{
	width: 100%;
	padding: 100px 0 20px 0;
	margin-bottom: 40px;
/*	background: #e4e4e4; */
	background-color: rgba(238,222,200,0.6);
	font-size: 40px;
	line-height: 100%;
	text-align: center;
}
h3 span{
	display: block;
	text-align: center;
}
h3 span.en{
	color: #a68e8e;
	font: 500 32px/100% 'optima', 'Avenier', 'Open Sans', sans-serif;
}
h3 span.en:first-letter{
	color: #5f4949;
	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{
	width: 100%;
	margin-bottom: 1.5em;
	color: #a68e8e;
	font-size: 26px;
	font-weight: 500;
	line-height: 180%;
	text-align: center;
}
.section h4 span.en{
	display: block;
	font: 400 30px/150% 'optima', 'Avenier', 'Open Sans', sans-serif;
	text-align: center;
}
.section h4.ttl{
	padding: .3em 0 .3em .5em;
	margin: 3em 0 1em 0;
	border-left: solid .3em #5f4949;
	border-bottom: solid 1px #5f4949;
	color: #5f4949;
	font-size: 18px;
	text-align: left;
}/* 情報シート */
.section h5{
	padding: .3em 0 .3em .5em;
	margin: 1em 0 .2em 0;
	font-size: 110%;
	border-left: solid .3em #373534;
}
body.info .section h5{
	padding: .3em 0;
	margin: 1em 0 .2em 0;
	font-size: 16px;
	border-left: none;
}

.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-color: transparent;
}
.section div.thum_left{
	display: inline-block;
	float: left;
	width: 40%;
	padding-right: 2em;
	background-color: transparent;
}
.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-color: transparent;
}
div.gallery p.main_pic{
/*	position: relative; */
	width: 100%;
	height: auto;
	background-color: transparent;
}
div.gallery p.main_pic img{
	aspect-ratio: 3 / 2;
}
/*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;';
}*/
div.gallery ul.img{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}
div.gallery ul.img li{
	position: relative;
	width: 25%;
}
div.gallery ul.img li img{
	aspect-ratio: 1 / 1;
}
/*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;';
}*/

/* Table */
table{
	max-width: 100% !important;
	min-width: 40%;
	margin: 1em 0;
/*	border-top: solid 1px #e5e5e5;
	border-left: solid 1px #e5e5e5; */
	border-top: solid 1px #eedec8;
	border-left: solid 1px #eedec8;
	border-collapse: separate;
}
table th{
/*	background: #f2f2f2; */
	background-color: rgba(238,222,200,0.4);
	font-weight: 500;
	text-align: center;
}
table th,
table td{
	padding: .5em;
/*	padding: 0 1em 0 0; */
	border-right: solid 1px #eedec8;
	border-bottom: solid 1px #eedec8;
}
table.nobd,
table.nobd th,
table.nobd td{
	background: none;
	border: none !important;
}
table.ub{
	border: none !important;
}
table.ub th,
table.ub td{
	background: none;
	border-right:  none;
	text-align: left !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;
	font-size: 26px;
	line-height: 150%;
}
section.col2 div.thum,
section.col3 div.thum{
	display: block;
	float: none;
	width: 100%;
	padding: 0 0 1em 0 !important;
}

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

/* 分割 */
.w100{
	width: 100% !important;
}
.w80{
	width: 80% !important;
}
.w50{
	width: 50% !important;
}
.w40{
	width: 40% !important;
}
.w30{
	width: 30% !important;
}
.calc{
	width: 60% !important;
}

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

ul.flex,
ul.flexp{
	display: flex;
	flex-wrap: wrap;
	padding: 0 .5em;
}
ul.flex > li{
	min-width: 23%;
	padding: 0 2em .5em 0;
	margin-left: 1em;
	list-style-type: circle;
}
ul.flexp > li{
	min-width: 30%;
	padding: 0 2em .5em 0;
	margin-left: 1em;
	list-style-type: circle;
}

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{
	padding: 2em !important;
	margin: 1em 0;
	border: solid 1px #ccc;
	background: #f2f2f2;
}
div.line{
	padding: 1em 0;
	margin: 1em 0;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
}

p.btn{
	text-align: center;
}
p.btn a,
a.btn{
	display: inline-block;
	padding: .6em 1em;
	margin-top: 1em;
	border: none;
	background: #a68e8e;
	color: #fff;
	text-align: center;
	background-size: 200% 100%;
	background-image: -webkit-linear-gradient(left, transparent 50%, rgba(95, 73, 73, 1) 50%);
	background-image: linear-gradient(to right, transparent 50%, rgba(95, 73, 73, 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: #5f4949;
	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.yazi-t{
	position: relative;
}
a.yazi-t:after{
	content: '';
	position: absolute;
	top: 50%;
	right: 1.5em;
	transform: translateY(-50%);
	width: 1em;
	height: 1em;
	background: url(./assets/images/common/ico_arrow_right-t.svg) left center / contain no-repeat;
}
.top a.yazi-t{
	min-width: 240px;
}
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;
}

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


/*----------------------
  Stay
------------------------*/
.co h3{
	font: 400 30px/150% "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif !important;
}

ul.rsvlnk{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 1em 0;
}
ul.rsvlnk li{
	min-width: 50%;
	padding: .5em;
}
.top ul.rsvlnk li{
	min-width: 30%;
}
@media screen and (max-width: 1400px){
	ul.rsvlnk li{
		min-width: 80%;
		padding: .5em;
	}
}
ul.rsvlnk a{
	position: relative;
	display: block;
	padding: .5em 1em .5em 3em;
	background: #a68e8e;
	color: #fff;
	text-align: center;
	background-size: 200% 100%;
	background-image: -webkit-linear-gradient(left, transparent 50%, rgba(95, 73, 73, 1) 50%);
	background-image: linear-gradient(to right, transparent 50%, rgba(95, 73, 73, 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;
}
ul.rsvlnk a:hover{
	background: #5f4949;
	background-position: -100% 100%;
	text-decoration: none;
}
ul.rsvlnk 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.rsvlnk li.nonsmoking a:before{
	background-image: url(./assets/images/common/ico_nonsmoking_w.svg);
}
ul.rsvlnk li.smoking a:before{
	background-image: url(./assets/images/common/ico_smoking_w.svg);
}
ul.rsvlnk li.rsv a:before{
	background-image: url(./assets/images/common/ico_search_w.svg);
}
a.layout:before{
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: .5em;
	background: url(./assets/images/common/ico_layout.svg) left center / contain no-repeat;
}

div.vr iframe{
	clear: both;
	width: 100%;
	height: 600px;
	border-style: none;
}


/*----------------------
  Service
------------------------*/
ul#service{
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
}
div#service ul#service{
	justify-content: flex-start;
}
ul#service li{
	min-width: 120px;
	padding: 1em;
	text-align: center;
	font-size: 90%;
}
ul#service li:before{
	content: '';
	display: block;
	width: 100%;
	height: 40px;
	margin-bottom: 10px;
	background: url(./assets/images/common/logo_8.svg) center top / 40px 40px no-repeat;
}
ul#service li.wifi:before{
	background-image: url(./assets/images/common/ico_wifi.svg);
}
ul#service li.laundry:before{
	background-image: url(./assets/images/common/ico_tshirt.svg);
}
ul#service li.vending:before{
	background-image: url(./assets/images/common/ico_mug.svg);
}
ul#service li.ice:before{
	background-image: url(./assets/images/common/ico_glass.svg);
}
ul#service li.smoking:before{
	background-image: url(./assets/images/common/ico_smoking.svg);
}
ul#service li.business:before{
	background-image: url(./assets/images/common/ico_laptop.svg);
}
ul#service li.lounge:before{
	background-image: url(./assets/images/common/ico_couch.svg);
}
ul#service li.conference:before{
	background-image: url(./assets/images/common/ico_users.svg);
}
ul#service li.store:before{
	background-image: url(./assets/images/common/ico_store.svg);
}
ul#service li.delivery:before{
	background-image: url(./assets/images/common/ico_delivery.svg);
}
ul#service li.copy:before{
	background-image: url(./assets/images/common/ico_copy.svg);
}
ul#service li.vod:before{
	background-image: url(./assets/images/common/ico_tv.svg);
}
ul#service li.massage:before{
	background-image: url(./assets/images/common/ico_hands.svg);
}

/* Premier */
ul.premier li{
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row;
	align-items: center;
	width: 100%;
	padding: 2em 0;
}
ul.premier li:nth-child(even){
	flex-direction: row-reverse;
}
ul.premier li > img{
	width: 45%;
}
ul.premier li > div{
	position: relative;
	width: 55%;
	padding: 1em 2em;
}
ul.premier div strong{
	position: relative;
	display: block;
	padding: 1em 0 1em 1em;
	font-size: 150%;
	z-index: 1;
}
ul.premier div img{
	position: absolute;
	top: 0.5em;
	width: auto;
	height: 60px;
	z-index: 0;
}


/* Residence */
h4 span.ico{
	position: relative;
	left: 16px;
	color: #d6d6d6;
	font-size: 50px;
	z-index: -1;
}
ul.residence{
	position: relative;
}
ul.residence:before{
	position: absolute;
	right: 0;
	top: 10%;
	content: '';
	width: 70%;
	height: 80%;
	background: #efefef;
	z-index: -1;
/*	background: linear-gradient(to right, #fff 30%, #efefef 30%); */
}
ul.residence li{
	display: flex;
	flex-wrap: nowrap;
	flex-direction: row-reverse;
	align-items: center;
	width: 100%;
	padding: 2em 0;
}
ul.residence li:nth-child(even){
	flex-direction: row;
}
ul.residence li > img{
	width: 50%;
	padding: 0 3em;
}
ul.residence li > div{
	position: relative;
	width: 50%;
	padding: 0 1em;
}
ul.residence div strong{
	display: block;
	font-size: 130%;
	z-index: 1;
}
ul.residence li > div p{
	display: inline-block;
	margin-left: 4em;
}

ul.cover{
	display: flex;
	flex-wrap: nowrap;
	width: 100%;
}
ul.cover li{
	position: relative;
	width: 50%;
	background: #333;
}
ul.cover li p{
	padding: 0 !important;
}
ul.cover p.txt{
	position: absolute;
	top: 30%;
	width: 100%;
	color: #fff;
	text-align: center;
	z-index: 1;
}
ul.cover p.txt strong{
	display: block;
	font-size: 120%;
	line-height: 150%;
	text-align: center;
}
ul.cover p.txt span{
	display: inline-block;
	padding: .2em 2em;
	margin-top: 2em;
	border: solid 1px #fff;
}
ul.cover a img{
	position: relative;
	width: 100%;
	opacity: .5;
	z-index: 0;
}
ul.cover a:hover img{
	opacity: 1;
}


/*----------------------
  News
------------------------*/
.news .thum_left{
	position: relative;
}
.news .thum_left img{
	aspect-ratio: 16 / 9;
}
/*.news .thum_left:before{
	content: "";
	display: block;
	padding-top: 70%;
}
.news .thum_left img{
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	padding-right: 2em;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}*/


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

ul.access{/* 札幌大通 */
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	width: 100%;
	margin: 1em 0 2em 0;
}
ul.access li{
	padding: .5em 0;
}
ul.access li span{
	display: inline-block;
	padding: 1em .5em;
}
ul.access li:not(.start,.hotel) span{
	border: solid 1px #ccc;
}
ul.access li:not(.hotel)::after{
	content: "";
	display: inline-block;
	width: 2em;
	height: 1em;
	margin: 0 .5em;
	background: url(./assets/images/common/ico_arrow_right-l.svg) left center / contain no-repeat;
}
ul.access li.start span{
	background-color: rgba(166,142,142,0.8);
	color: #fff;
}
ul.access li.hotel span{
	background-color: rgba(166,142,142,0.9);
	color: #fff;
}
ul.access li.hotel span::before{
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: .5em;
	border: none;
	background: url(./assets/images/common/logo_m.svg) center center / contain no-repeat;
}

/* 経路図 沼津2店舗*/
ul.route{
	display: flex;
	justify-content: space-between;
	width: 100%;
}
ul.route li{
	padding: 1em .5em;
}
ul.route li.start,
ul.route li.hotel,
ul.route li.point{
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
ul.route li.start{
	border: solid 1px #a68e8e;
	background-color: rgba(166,142,142,0.3);
}
ul.route li.hotel{
	background-color: rgba(166,142,142,0.9);
	color: #fff;
}
ul.route li.point{
	margin: 0 .2em;
	border: solid 1px #a68e8e;
}
ul.route li.way,
ul.route li.way_s{
	align-self: center;
	padding: 0 1em;
	margin: 0 .5em;
	background: url(./assets/images/common/img_ellipsis.svg) center center / 20px auto repeat-x;
}
ul.route li.way{
	width: 100%;
}
ul.route li.way_s{
	white-space: nowrap
}
ul.route p{
	text-align: center;
	line-height: 200%;
}

/* 周辺観光 沼津IC */
ul.area{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}
ul.area li{
	width: 48%;
	padding: 1em .5em;
	margin: 0 1%;
	border-bottom: dotted 2px #a68e8e;
}
ul.area h5{
	padding: 0 0 .5em 0;
	border: none;
	color: #a68e8e;
}
ul.area li p.txt{
	min-height: 4em;
	margin-bottom: .5em;
}
ul.area li p.time:before{
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: .5em;
	background: url(./assets/images/common/ico_car.svg) left center / contain no-repeat;
}
ul.area li p.adr: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;
}


/*----------------------
  FAQ
------------------------*/
ul.tab_nav{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: 2em 0;
}
ul.tab_nav li{
	min-width: 25%;
	padding: .2em .5em;
}
ul.tab_nav li a{
	display: block;
	height: 100%;
	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% 'optima', 'Avenier', 'Open Sans', sans-serif;
}
.tab_content dd:before{
	content: 'A. ';
	width: 30px;
	font: 24px/140% 'optima', 'Avenier', 'Open Sans', 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;
}
.tab_content a{
	text-decoration: underline;
}


/*----------------------
  KOKOMarche
------------------------*/
.kokomarche h4{
	font: 500 130%/150% "リュウミン R-KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important;
}
.kokomarche .section p{
	padding: .2em 0;
	line-height: 150%;
}
.kokomarche .thum img,
.kokomarche .thum_left img{
	width: 100%;
	outline: 1px solid rgb(255, 255, 255);
	outline-offset: -10px;
}


/*----------------------
  Contact
------------------------*/
form#mailform{
	width: 80%;
	margin: 3em auto !important;
}
form#mailform strong{
	display: block;
	margin-top: 2em;
}
form#mailform input[type="text"],
form#mailform select,
form#mailform textarea{
	padding: .5em;
	margin: .5em 0;
	border: solid 1px #ccc;
	font: 1em/150% "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif !important;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}
form#mailform input[type="text"]{
	width: 100% !important;
}
form#mailform textarea{
	width: 100% !important;
	height: calc(1.5em * 10);
	line-height: 1.5;
}
form#mailform table input[type="button"]{
	padding: .5em;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}
form#mailform label{
	padding-right: 1.5em;
	white-space: nowrap;
}
form#mailform label input{
	padding-left: .5em;
}
.form_btn{
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
}
.form_btn input{
	min-width: 30%;
	padding: .5em;
	margin: 1em;
	border: none;
	background: #707070;
	color: #fff;
	font: 16px/150% "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif !important;
	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: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}
.form_btn input:hover{
	cursor: pointer;
	background-color: #333;
	background-position: -100% 100%;
	text-decoration: none;
}


/*----------------------
  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
 * =================================================== */
.sp_only{
	display: none;
}

@media screen and (max-width: 1200px){
	#gnav ul{
		justify-content: center;
	}
	#main{
		width: 98%;
	}
	div#contact #address,
	div#contact ul{
		width: 49%;
		max-width: 98%;
	}
	ul.flex li{
		min-width: 31%;
	}
}
@media screen and (max-width: 1024px){
	nav#lang{
		display: none;
	}

	body:not(.home) #header{
		height: 60px !important;
	}
	#header h1 a{
		width: 160px;
		height: 28px;
	}
	#nihonbashi_hamacho #header h1 a,
	#kanazawa_korinbo #header h1 a,
	#kumamoto #header h1 a{
		width: 169px;
		height: 32px;
	}
	#asakusa_tawaramachi #header h1 a,
	#asakusa_kappabashi #header h1 a{
		width: 134px;
		height: 32px;
		background: url(./assets/images/common/logo_r.svg) no-repeat;
		background-size: contain;
	}
	p#rsv{
		position: absolute;
		top: 0;
		right: 60px;
	}

	/* 表示切替 */
	#menubtn{
		display: block;
		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: 2px;
		background-color: #fff;
		border-radius: 2px;
		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;
	}

	#gnav{
		display: flex;
		flex-wrap: wrap;
		align-content: flex-start;
		position: absolute;
		top: 60px;
		right: 0;
		width: 80%;
		height: 0;
		padding: 30px 20px;
		background: #5f4949;
	/*	background-color: rgba(166,142,142,0.9); #a68e8e; */
		overflow: hidden;
		opacity: 0;
		visibility: hidden;
		transition: .8s;
		z-index: 2;
	}
	input#menucheck:checked + #gnav{
		height: 100vh;
		opacity: 1;
		visibility: visible;
	}
	#gnav ul#nav,
	#gnav ul.lang,
	#gnav div.adr{
		width: 100%;
		padding-bottom: 50px;
	}
	ul#nav{
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
	}
	ul#nav li{
		width: 50%;
		padding: 0 .5em;
	}
	ul#nav li a{
		display: block;
		height: 50px;
		line-height: 50px;
	}

	#gnav ul.lang{
		display: flex;
		flex-wrap: nowrap;
		width: 100%;
	}
	#gnav ul.lang a{
		display: inline-block;
		padding: .5em .5em .5em 0;
		font-family: 'optima', 'Avenier', 'Open Sans', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	}

	#gnav div.adr p{
	}
	#gnav div.adr p{
		padding: .5em 0;
	}
	#gnav div.adr p.ttl{
		font-size: 120%;
		font-weight: 500;
	}

}



/* グループページ用HBメニュー表示 */
#post #header{
		height: 60px !important;
}

#post nav.sp_only{
		display: block !important;
}
#post #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;
	}
#post #menubtn span{
		display: inline-block;
		position: absolute;
		right: 0;
		width: 30px;
		height: 2px;
		background-color: #fff;
		border-radius: 2px;
		transition: all .4s;
	}
#post #menubtn span:nth-of-type(1){
		top: 0;
	}
#post #menubtn span:nth-of-type(2){
		top: 12px;
	}
#post #menubtn span:nth-of-type(3){
		top: 24px;
	}
#post #menubtn.active span:nth-of-type(1){
		-webkit-transform: translateY(12px) rotate(-45deg);
		transform: translateY(12px) rotate(-45deg);
	}
#post #menubtn.active span:nth-of-type(2){
		opacity: 0;
	}
#post #menubtn.active span:nth-of-type(3){
		-webkit-transform: translateY(-12px) rotate(-45deg);
		transform: translateY(-12px) rotate(45deg);
	}
#post #menubtn.active span,
#post #menubtn.black span{
		background-color: #fff;
	}
#post input#menucheck{
		display: none;
	}

#post #gnav{
		display: flex;
		flex-wrap: wrap !important;
		align-content: flex-start;
		position: absolute;
		top: 60px;
		right: 0;
		width: 80%;
		height: 0;
		padding: 20px;
		background: #5f4949;
		overflow: hidden;
		opacity: 0;
		visibility: hidden;
		transition: .8s;
		z-index: 2;
	}
#post input#menucheck:checked + #gnav{
		height: 100vh;
		opacity: 1;
		visibility: visible;
	}
#post ul#nav1,
#post ul#nav2{
	display: inline-block;
	float: left;
	width: 50%;
	padding-top: 40px;
	z－index: 2;
}
#post ul#nav1 li,
#post ul#nav2 li{
	display: inline-block;
	float: left;
	width: 50%;
}
#post ul#nav1 li.ttl,
#post ul#nav2 li.ttl{
	width: 98%;
	margin-right: 2%;
}
#post ul#nav1 li a,
#post ul#nav2 li a{
	display: block;
	padding: .5em;
	margin: .5em;
	text-align: left;
	white-space: nowrap;
}
#post #gnav li.ttl a{
	padding: .5em;
	border: solid 1px #fff;
}
