@import url('https://fonts.googleapis.com/css2?family=Open+Sans&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: "Noto Sans JP", "YuGothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif; */
/*	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; */
	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{
	position: fixed;
	width: 100%;
	height: 60px;
/*	background-color: rgba(55,55,55,0.9); */
	background-color: rgba(166,142,142,0.8);
	z-index: 100;
}
#header *{
	color: #fff;
}
#header h1{
	width: 180px;
	padding: 10px 0 0 15px;
}
#header h1 a{
	display: block;
	width: 160px;
	height: 30px;
	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: 160px;
	height: 28px;
	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: 169px;
	height: 32px;
	background: url(./assets/images/common/logo_p.svg) left center / contain no-repeat;
}
#asakusa_tawaramachi #header h1 a,
#asakusa_kappabashi #header h1 a{
	width: 134px;
	height: 32px;
	background: url(./assets/images/common/logo_r.svg) left center / contain no-repeat;
}
#header h1 span{
	display: block;
	padding-top: 5px;
	font: 400 13px/100% 'optima', 'Avenier', 'Open Sans', sans-serif;
	text-align: center;
}
#header h2{
	display: none;
}

/* rsv */
p#rsv{
	position: absolute;
	top: 0;
	right: 50px;
	height: 100%;
	padding: 0 1em;
	background-color: rgba(95,73,73,1); /*#5f4949; */
	font-size: 14px;
}
p#rsv a{
	display: block;
	height: 60px;
	line-height: 60px;
}
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: absolute;
	top: 64px;
	width: 100%;
	background: #5f4949;
	color: #fff;
	font-size: 80%;
	z-index: 999;
	opacity: 0.8;
}
#prevbooking p{
	display: inline-block;
	padding: .5em;
}
#prevbooking a{
	display: inline-block;
	padding: .5em;
	margin-left: 1em;
	color: #fff;
	text-align: center;
}


/* ======================================================
 * 1-4. Nav
 * =================================================== */
#menubtn{
	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.trpwid,
#gnav ul.lang,
#gnav div.adr{
	width: 100%;
	padding-bottom: 30px;
}
ul#nav{
	display: flex;
	flex: auto;
	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.trpwid a{
	font-size: 100%;
}
#gnav ul.trpwid li a:before{
	background: url(./assets/images/common/ico_search_w.svg)left center / contain no-repeat;
}
#gnav ul.trpwid li a.search:before{
	background-image: url(./assets/images/common/ico_search_w.svg);
}
#gnav ul.trpwid li a.confirm:before{
	background-image: url(./assets/images/common/ico_calendarcheck_w.svg);
}
#gnav ul.trpwid li a.signup:before{
	background-image: url(./assets/images/common/ico_userplus_w.svg);
}
#gnav ul.trpwid li a.signin:before{
	background-image: url(./assets/images/common/ico_usercheck_w.svg);
}
#gnav ul.trpwid li a.organization:before{
	background-image: url(./assets/images/common/ico_users_w.svg);
}

#gnav ul.lang{
	display: flex;
	flex: auto;
	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{
	padding: .5em 0;
}
#gnav div.adr p.ttl{
	font-size: 120%;
	font-weight: 500;
}
#gnav div.adr a.mail:before{
	background-image: url(./assets/images/common/ico_mail_w.svg);
}
#gnav div.adr a.tel:before{
	background-image: url(./assets/images/common/ico_search_w.svg);
}


#post #gnav div.wrap{/* lang */
	position: absolute;
	top: 25px;
	left: 30px;
	width: calc(100% - 60px);
	z－index: 1;
}
#post ul#nav1,
#post ul#nav2{
	display: inline-block;
	float: left;
	width: 50%;
	padding-top: 40px;
	z－index: 2;
}
#post ul#nav1 li a,
#post ul#nav2 li a{
	display: block;
	padding: .5em 0;
	margin: .5em;
	white-space: nowrap;
}
#post #gnav li.ttl a{
	padding: .5em;
	border: solid 1px #fff;
}




.pc_only,
nav#lang,
ul small{
	display: none !important;
}


/* ======================================================
 * 1-6. footer
 * =================================================== */
/* PageTop */
#pagetop{
	display: none;
	position: fixed;
	bottom: 0px;
	right: 0px;
	padding: 5px;
	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{
	padding: 1em;
	background-color: rgba(166,142,142,0.2);
}
div#contact #address p{
	padding: .5em 0;
	text-align: center;
}
div#contact #address p.ttl{
	margin-bottom: .5em;
	font-size: 130%;
	font-weight: 500;
}
div#contact #address a.tel{
	display: inline-block;
	margin-top:.5em;
	font-size: 120%;
}
div#contact #address ul#sns{
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	width: 100%;
}
div#contact #address ul#sns li{
	padding: 10px;
}
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: 40px;
	height: 40px;
	background: url(./assets/images/common/sns-insta.svg) no-repeat;
	background-size: contain;
/*	text-indent: -9999em; */
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}

div#contact > ul{
	width: 100%;
	margin-top: 20px;
}
div#contact > ul li{
	text-align: center;
}
div#contact a.btn{
	position: relative;
	min-width: 80%;
	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: 1em 5%;
	background: #5f4949;
}
#footer a,
#footer *{
	color: #fff;
}
#footer a:hover{
	color: #ccc;
}
#footer ul{
	display: flex;
	flex: auto;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width: 100%;
}
#footer ul li{
	min-width: 33%;
	padding: .2em;
	text-align: left;
}
#footer ul#group{
	flex-wrap: wrap;
	justify-content: flex-start;
	padding-bottom: 1em;
	margin-top: 1em;
	border-top: solid 1px #473636;
	border-bottom: solid 1px #473636;
}
#footer ul#group li.ttl{
	width: 100%;
	margin: 1em .2em .2em .2em;
	font-family: 'optima', 'Avenier', 'Open Sans', "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	font-weight: 500;
}
#footer ul#group li{
	min-width: 33%;
	text-align: left;
}
#footer ul a{
	padding: .2em 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: 60px;
	height: 40px;
	margin: 2px 2px 4px 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.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;
	text-align: center;
}


/*
#kagoshima_tenmonkan #header,
#kagoshima_tenmonkan #footer{
	background-color: rgba(215,63,56,0.9);
}
#kagoshima_tenmonkan p#rsv{
	background: #87201b;
}
#kagoshima_tenmonkan #footer ul#group{
	border-top: solid 1px #a82822;
	border-bottom: solid 1px #a82822;
}*/


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


/* ======================================================
 * 2-2. HOTEL LIST
 * =================================================== */
.hotelinfo a.lnk,
.hotelinfo a.mail{
	font: 400 90%/150% 'optima', 'Avenier', 'Open Sans', sans-serif;
}
.hotelinfo p.thum{
	margin-bottom: 10px;
}


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


/*----------------------
  Toppage(ホテルトップ)
------------------------*/
.swiper-container #hotelinfo{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 120px 5% 0 5%;
	background-color: rgba(0,0,0,0.3);
	color: #fff;
	line-height: 180%;
	z-index: 1;
}
.swiper-container #hotelinfo,
.swiper-container #hotelinfo *{
	font-weight: 500;
	text-align: center !important;
}
.swiper-container #hotelinfo h2 img{
	width: 220px;
	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;
}
.top h3{
	padding-bottom: 1em;
}

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

/* リード */
#top-tsumugu{
	width: 100%;
	padding: 50px 5%;
	background: #a68e8e;
	color: #fff;
}
#top-tsumugu h2{
	width: 100%;
	height: auto;
	background: none;
	text-indent: 0;
}
#top-tsumugu h2 img{
	width: 60%;
	max-width: 200px;
	padding-bottom: 30px;
}
#top-tsumugu p{
	font-family: "リュウミン R-KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	text-align: left;
	line-height: 2em;
}
span.optima{
	font-family: 'optima', 'Avenier', 'Open Sans', sans-serif;
}

/* リード（BrandStory） */
#top-tsumugu2{
	position: relative;
	padding: 50px 5% 80px 5%;
	background: #f7efe4;
	color: #3E3a39;
}
#top-tsumugu2 p.thum{
	padding: 0 1em 2em 1em;
	text-align: center;
}
#top-tsumugu2 > ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%;
	margin-bottom: 50px;
}
#top-tsumugu2 > ul li{
	width: 33%;
	padding: .5em 0;
	text-align: center;
}
#top-tsumugu2 > ul li:nth-child(n+4){
	width: 100%;
}
#top-tsumugu2 > ul img{
	display: block;
	width: 90%;
	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{
	padding: .5em;
	font-size: 100%;
	line-height: 120%;
}
#top-tsumugu2 section{
	width: 100%;
	padding-bottom: 50px;
}
#top-tsumugu2 h3{
	position: relative;
	display: inline-block;
	width: 100%;
	font: 500 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 sh3:after{
	right: 0;
}
#top-tsumugu2 section div{
	padding: 1em 0;
	font: 100%/150% "リュウミン 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: 50px;
	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{
	width: 40px;
	height: 40px;
	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{
	padding-bottom: 50px;
}
#brand h3,
#aroma h3{
	padding: 30px 0;
}
#brand ul li,
#aroma ul li{
	width: 100%;
	padding-bottom: 50px;
	text-align: center;
}
#brand ul h4,
#aroma h4{
	font: 600 120%/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;
	text-align: center;
	font: 500 120%/150% "リュウミン R-KL" , "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
#brand ul p{
	padding: 1em 0;
	text-align: left;
	line-height: 150%;
}

#aroma h3:before,
#aroma h3:after{
	width: calc(40% - 4em);
}
#aroma p{
	padding: .5em 0;
	text-align: left;
	line-height: 150%;
}
#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{
	padding: 1em;
	margin: 1em 0;
	background-color: rgba(166,142,142,0.4);
	line-height: 130%;
}

/* News */
ul#news_list{
	width: 100%;
	padding-bottom: 20px;
}
ul#news_list li{
	width: 100%;
	padding: .5em;
	border-bottom: dotted 1px #ccc;
	background-color: rgba(238,222,206,0.3);
	line-height: 150% !important;
}
ul#news_list span{
	display: block;
	width: 100%;
}
ul#news_list span.subject{
	color: #6f3700;
}

/* Topbnr */
ul#topbnr{
}
ul#topbnr li{
	width: 100%;
	padding-bottom: 1em;
}
ul#topbnr li img{
	width: 100%;
}

/* CheckInOut */
div#checkin ul{
	display: flex;
	flex: auto;
	flex-wrap: nowrap;
	align-items: center;
	width: 100%;
	margin: 0 auto;
}
div#checkin ul li{
	width: 50%;
	padding: 0 1em;
	margin: 2em 0;
	font-size: 34px;
	text-align: center;
}
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;
	text-align: center;
}
body.top h4 span.en{
	display: block;
	font: 400 24px/150% 'optima', 'Avenier', 'Open Sans', sans-serif;
	text-align: center;
}
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{
	position: relative;
	width: 100%;
}
div#room .slider2 .swiper-slide img,
.room .slider2 .swiper-slide img{
	width: 100%;
	height: auto;
	aspect-ratio: 3 / 2;
}
/*.slider2 .swiper-slide:before{
	content: "";
	display: block;
	padding-top: 68%;
}
div#room .slider2 .swiper-slide img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	object-fit: cover;
	font-family: 'object-fit: cover;'; IE
}*/
/* 客室ページ */
/* .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{
	white-space: nowrap;
}
div#service table th,
div#service table td{
	display: list-item;
	list-style: none;
	width: 100%;
	padding: .5em;
	border: none;
}
div#service h4{
	padding-bottom: 0 !important;
	margin-bottom: 0 !important;
	font-size: 14px;
}
div#service section h4 span.en{
	font-size: 24px;
}
div#service table td{
	margin-bottom: 2em;
}

/* bnr */
div#bnr{
	padding-bottom: 40px;
}
div#bnr > ul,
div#bnr > ul > li{
	width: 100%
	text-align: center !important;
}
div#bnr ul li > div{/* TA */
	display: flex;
	flex: auto;
	flex-wrap: nowrap;
	justify-content: center;
	padding: .5em;
}
div#bnr img{
	width: 100%;
	padding: .5em 1em;
}

/* Premier用 */
div#premier{
	width: 100%;
	padding: 30px 0;
	background: #f2f2f2;
	text-align: center;
}
div#premier > img{
	width: 300px;
}
div#premier > p{
	text-align: center;
}
div#premier ul{
	width: 100%;
	margin-top: 1em;
}
div#premier li{
	display: flex;
	flex-wrap: nowrap;
	position: relative;
	width: 100%;
	padding: .5em;
}
div#premier li strong{
	position: absolute;
	top: .5em;
	left: 43%;
	font: 500 22px/100% 'optima', 'Avenier', 'Open Sans', sans-serif;
	color: #000;
	z-index: 1;
}
div#premier li img{
	width: 40%;
	z-index: 0;
}
div#premier li p{
	width: 60%;
	padding: 2.5em 1em 1em 1em;
	line-height: 120%;
}

/* Residence用 */
div#residence{
	width: 100%;
	padding: 30px 0;
	background: #f2f2f2;
	text-align: center;
}
div#residence h3{
	padding-top: 1em;
	font: 500 20px/150% "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif !important;
}
div#residence ul{
	width: 100%;
	margin: 2em auto 1em auto;
}
div#residence li{
	width: 100%;
	padding: 1em;
	line-height: 150%;
}
div#residence li p{
	position: relative;
	width: 70%;
	margin: 0 auto;
	text-align: center;
	overflow: hidden;
}
div#residence li img{
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
}
/*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;
	padding-bottom: 1em;
	font-size: 105%;
	text-align: center;
}

/*----------------------
  予約フォーム
------------------------*/
#rsvform form{
	padding: 2em 1em;
	margin-bottom: 50px;
	background-color: rgba(166,142,142,0.2);
}
#rsvform div#rsvopt{
	display: none;
}
#rsvform div#rsvtl li{
	padding: .5em 0;
}
#rsvform div#rsvtl li a{
	position: relative;
	display: block;
	width: 100%;
	padding: 1em;
	border: solid 1px #a68e8e;
	background-color: rgba(166,142,142,0.2);
	font: 1em/100% 'optima', 'Avenier', 'Open Sans', sans-serif !important;
	text-align: center;
}
div#rsvtl li a:before{
	content: '';
	position: absolute;
	top: .7em;
	left: 1em;
	width: 1.5em;
	height: 1.5em;
	background-size: contain;
}
div#rsvtl a.search:before{
	background: url(./assets/images/common/ico_search.svg) no-repeat;
}
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;
}
#rsvform div#rsvtl li a:hover{
	cursor: pointer;
}
div#rsvtl p.sp_only{
	padding-top: 1em;
}

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


/* ↑全て削除 */
/* Tripla */
#Resv{
	display: flex;
	flex-wrap: wrap;
	padding: 2em 1em;
	margin-bottom: 50px;
	background-color: rgba(166,142,142,0.2);
}
div#rsvtrp{
	order: 2;
}
div#rsvtrp form{
	display: none;
}
ul.trpwid{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	padding-top: 1em;
}
ul.trpwid li{
	min-width: 50%;
	padding: .5em;
}
ul.trpwid a{
	position: relative;
	display: inline-block;
	padding-left: 1.5em;
	font-size: 90%;
}
ul.trpwid li a:before{
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 1em;
	height: 1em;
	margin-right: 1em;
	background: url(./assets/images/common/ico_arrow_right.svg)left center / contain no-repeat;
}
ul.trpwid li a.confirm:before{
	background-image: url(./assets/images/common/ico_calendarcheck.svg);
}
ul.trpwid li a.signup:before{
	background-image: url(./assets/images/common/ico_userplus.svg);
}
ul.trpwid li a.signin:before{
	background-image: url(./assets/images/common/ico_usercheck.svg);
}
ul.trpwid li a.organization:before{
	background-image: url(./assets/images/common/ico_users.svg);
}

#Resv div#rsvtl{
	order: 1;
	width: 100%;
}
#Resv div#rsvtl li{
	padding-bottom: .5em;
}
#Resv div#rsvtl a{
	position: relative;
	display: block;
	padding: 1em 1em 1em 3em;
	border: solid 1px #a68e8e;
	background-color: rgba(166,142,142,0.1);
	font-weight: 500;
	text-align: center;
	-webkit-transition: all .8s ease;
	transition: all .8s ease;
}
div#rsvtl a:before{
	content: '';
	position: absolute;
	top: 0;
	left: 1em;
	width: 1.5em;
	height: 1.5em;
	background: url(./assets/images/common/ico_arrow_right.svg) left center / contain no-repeat;
}
div#rsvtl a.search:before{
	background-image: url(./assets/images/common/ico_search.svg);
}
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);
}}

#Resv p.notice{
	padding-top: 1.5em;
	font-weight: bold;
	font-size: 90%;
}

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


/* ======================================================
 * 2-2. Common
 * =================================================== */
#main{
	width: 90%;
	margin: 0 auto;
	overflow: hidden;
}

/* H3 */
body:not(.top, .home) h3{
	width: 100%;
	padding: 100px 0 40px 0;/* header高さ＋ */
	margin-bottom: 40px;
	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;
	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;
}*/
.hover:hover{
	cursor: pointer;
	opacity: .8;
}
p.date{
	padding-bottom: 1em;
	text-align: right;
}

.section div.thum,
.section div.thum_left{
	padding-bottom: 1em;
	background-color: transparent;
}
.section div.thum img{
	width: 100%;
	height: auto;
}

/* Gallery */
div.gallery{
	width: 100%;
	padding-bottom: 1em;
	background-color: transparent;
}
div.gallery p.main_pic{
	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: nowrap;
	width: 100%;
}
div.gallery ul.img li{
	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{
	width: 100%;
	margin: 1em 0;
	border-top: solid 1px #eedec8;
	border-left: solid 1px #eedec8;
	border-collapse: separate;
}
table th{
/*	background: #f2f2f2; */
	background-color: rgba(238,222,200,0.2);
	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;
}

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

ul.list,
ul.kome{
	width: 98%;
	margin: 0 auto 1em auto;
}
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: auto;
	flex-wrap: wrap;
	width: 98%;
	margin: 0 auto 1em auto;
}
ul.flex > li,
ul.flexp > li{
	padding: .2em 0;
/*	margin: 0 3em 0 1em; */
	min-width: calc(50% - 1em);
	margin-left: 1em;
	list-style-type: disc;
}
/*
@media screen and (max-width: 600px){
	ul.flex > li{,
	ul.flexp > li{
		min-width: 45%;
		margin: 0 0 0 1em;
	}
} */

ol{
	margin: 1em 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: .2em;
}

.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;
	min-width: 80%;
	padding: .8em 1em;
	margin: 1em auto;
	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;
}

span.br::after {
	content: "\A";
	white-space: pre;
}

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

ul.rsvlnk{
	display: flex;
	flex: auto;
	flex-wrap: wrap;
	justify-content: center;
	padding: 1em 0;
}
ul.rsvlnk li{
	min-width: 80%;
	padding: .5em;
}
ul.rsvlnk a{
	display: block;
	padding: .8em 1em;
	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: 1em;
	height: 1em;
	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{
	width: 100%;
	height: 400px;
	border-style: none;
}


/*----------------------
  Service
------------------------*/
ul#service{
	display: flex;
	flex: auto;
	flex-wrap: wrap;
}
ul#service li{
	display: flex;
	flex: auto;
	flex-wrap: nowrap;
	align-items: center;
	width: 100%;
	min-height: 80px;
	padding: 1em 0;
	text-align: left;
}
ul#service li:before{
	content: '';
	display: block;
	width: 40px;
	height: 40px;
	margin-right: 30px;
	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{
	width: 100%;
	padding-bottom: 50px;
}
ul.premier li > img{
	width: 100%;
}
ul.premier li > div{
	position: relative;
	padding: 2em 2em 1em 2em;
}
ul.premier div strong{
	position: relative;
	display: block;
	padding-bottom: 1em;
	font-size: 130%;
	z-index: 1;
}
ul.premier div img{
	position: absolute;
	top: .5em;
	width: auto;
	height: 40px;
}

/* Residence */
.residence_concept ul.col2 li{
	width: 100%;
	padding: 0;
}
.residence_concept .center{
	text-align: left !important;
}
h4 span.ico{
	position: relative;
	left: 16px;
	color: #e3e3e3;
	font-size: 40px;
	z-index: -1;
}
ul.residence li{
	width: 100%;
	padding: 1em 0;
}
ul.residence li > div{
	padding: 1em 0;
}
ul.residence div strong{
	display: block;
	font-size: 110%;
}

ul.cover{
	width: 100%;
	overflow: hidden;
}
ul.cover li{
	position: relative;
	width: 100%;
	margin: -10% 0;
	background: #333;
	overflow: hidden;
}
ul.cover p.txt{
	position: absolute;
	top: 30%;
	width: 100%;
	color: #fff;
	text-align: center;
	z-index: 1;
}
ul.cover li strong{
	display: block;
	width: 100%;
	color: #fff;
	font-weight: 500;
	text-align: center;
	z-index: 1;
}
ul.cover p.txt span{
	display: inline-block;
	padding: .2em 2em;
	margin-top: 1em;
	border: solid 1px #fff;
	text-align: center;
}
ul.cover a img{
	width: 100%;
	padding: 0;
	opacity: .5;
	z-index: 0;
}
ul.cover a:hover img{
	opacity: 1;
}


/*----------------------
  News
------------------------*/
.news .thum_left{
	position: relative;
	display: inline-block;
	float: left;
	width: 40%;
	margin: 0 1em 1em 0;
}
.news .thum_left img{
	aspect-ratio: 1 / 1;
}
/*.news .thum_left:before{
	content: "";
	display: block;
	padding-top: 100%;
}
.news .thum_left img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: solid 1px #fff;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}*/


/*----------------------
  Access
------------------------*/
#gmap{
	width: 100%;
	height: 300px;
	margin-top: 2em;
}

ul.access{
	width: 100%;
	margin: 1em 0 2em 0;
}
ul.access li{
	width: 100%;
}
ul.access li span{
	display: block;
	padding: 1em .5em;
}
ul.access li:not(.start,.hotel) span{
	border: solid 1px #ccc;
}
ul.access li:not(.hotel)::after{
	display: block;
	content: "";
	width: 100%;
	height: 2em;
	padding: .5em;
	background: url(./assets/images/common/ico_arrow_right-l.svg) left center / 4em 2em no-repeat;
	text-align: center;
}
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{
	display: inline-block;
	content: "";
	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{
	width: 100%;
}
ul.area li{
	padding: 1em .5em 2em .5em;
	border-bottom: dotted 2px #a68e8e;
}
ul.area h5{
	padding: 0 0 .5em 0;
	border: none;
	color: #a68e8e;
}
ul.area li p.txt{
	margin-bottom: 1em;
}
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: auto;
	flex-wrap: wrap;
	width: 100%;
	margin: 2em 0;
}
ul.tab_nav li{
	width: 50%;
	padding: .2em;
}
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: .5em 0;
	border-bottom: solid 1px #f1f1f1;
}
.tab_content dl dt,
.tab_content dl dd{
	padding: .5em 1em;
	padding-left: 30px;
	text-indent: -30px;
}
.tab_content dt{
	position: relative;
	width: 100%;
	padding-right: 2em;
	font-weight: 500;
}
.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 dt:after{
	content: '';
	position: absolute;
	top: 1em;
	right: 0;
	width: 1em;
	height: 1em;
	background: url(./assets/images/common/ico_plus.svg) center center / contain no-repeat;
}
.tab_content dt.active:after{
	background: url(./assets/images/common/ico_minus.svg) center center / contain no-repeat;
}
.tab_content a{
	text-decoration: underline;
}


/*----------------------
  KOKOMarche
------------------------*/
.kokomarche h4{
	font: 500 120%/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: 90%;
	margin: 3em auto !important;
}
form#mailform strong{
	display: block;
	margin-top: 2em;
}
form#mailform input[type="text"],
form#mailform select,
form#mailform textarea{
	width: 100% !important;
	padding: .5em;
	margin: .5em 0;
	border: solid 1px #ccc;
	font: 16px/150% "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif !important;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
form#mailform input[type="button"],
form#mailform input[type="radio"],
form#mailform input[type="checkbox"]{
	width: auto !important;
}
form#mailform textarea{
	width: 100% !important;
	height: calc(1.5em * 10);
	line-height: 1.5;
}
form#mailform table input[type="button"]{
	padding: .5em;
	border: none;
	border-radius: 0;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
    -webkit-appearance: none;
    appearance: none;
}
form#mailform label{
	padding-right: 1.5em;
	white-space: nowrap;
}
form#mailform label input{
	padding-left: .5em;
}
.form_btn{
	text-align: center;
	justify-content: center;
}
.form_btn input{
	width: 80%;
	padding: .5em;
	margin: 1em auto;
	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;
}
.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{
	width: 8em;
}
.cookie-agree, .cookie-reject{
	padding: .5em 1.5em;
	margin-left: 20px;
	color: #fff;
	background: #333;
	white-space: nowrap;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
}
.cookie-agree{
	margin-bottom: 8px;
}
.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;
	}
}
