@charset "utf-8";

/*================================
	Layout
================================*/
body{
	padding-top: 5rem;
}
#contents{
	padding-bottom: 4rem;
}
main{

}

input[type=text] {
  font-size: 16px;
  transform: scale(0.8);
}
select {
  font-size:16px!important;
}


/*================================
	Elements
================================*/
body,div,pre,p,blockquote,
form,fieldset,input,textarea,select,option,
h1,h2,h3,h4,h5,h6,
dl,dt,dd,
ul,ol,li,
table,th,td,
embed,object,
figure,
small{
	font-size:1.2rem;
	line-height:2;
}
a{

}
main .note p:not(:last-of-type){
	margin-bottom: 1.5em;
}
.pconly{
	display:none !important;
}





/*================================
	SNS Icon
================================*/
.snslist{

}
.snslist li{
	display: inline-block;
	line-height:1;
}
.snslist li a{
	position:relative;
	display:block;
	line-height:1;
	font-size:0;
}
.snslist li a::before{
	display:block;
	font-size:1.5rem;
}



/*================================
	header
================================*/
#siteheader {
	width: 100%;
	height: 5rem;
	background: #2D2D2D;
	padding: 1rem 5%;
	position: fixed;
	left: 0;top: 0;
	z-index: 9998;
}
#siteheader .logo img{
	height: 3rem;
}
#siteheader .infonav{
	display: none;
}


/*--------------------------
	Menu Button
---------------------------*/
#siteheader .menu{
	width: 5rem;height: 5rem;
	background: #2b170a;
	padding: 1rem .5rem;
	position: absolute;
	top: 0;right: 5rem;
	text-align: center;
    font-family: �⥴���å�, Yu Gothic, �ҥ饮�γѥ� Pro W3, Hiragino Kaku Gothic Pro, �ᥤ�ꥪ, Meiryo, Osaka, sans-serif;
	font-size: .8rem;
	letter-spacing: .2em;
	line-height: 1;
	color: #fff;
}
#siteheader .menu::before,
#siteheader .menu::after{
	content: "";
	display: block;
	width: 2.5rem;
	border-top: 1px solid  #fff;
}
#siteheader .menu::before{
	height: 1.5rem;
	border-bottom: 1px solid  #fff;
	margin: 0 auto .5rem;
}
#siteheader .menu::after{
	position: absolute;
	top: 1.78rem;left: 1.25rem;
}



/*----------------------------------------
	SNS List
------------------------------------------*/
#siteheader .snslist {
	margin: 2rem 5% 0;
	text-align: center;
}
#siteheader .snslist li{
	letter-spacing: 0;
}
#siteheader .snslist li:not(:last-of-type){
	margin-right: 3rem;
}
#siteheader .snslist li a::before{
	font-size: 2rem;
	color: #fff;
}





/*================================
	Grobal Navi
================================*/
#gnav {
	width: 100%;height: calc(100% - 5rem);
	background: #2b170a;
	position: fixed;
	left: 100vw;top: 5rem;
	z-index: 9999;
	opacity: 0;
	-webkit-transition:left .5s ease-out, opacity .3s ease-out;
	-moz-transition:left .5s ease-out, opacity .3s ease-out;
	-ms-transition:left .5s ease-out, opacity .3s ease-out;
	transition:left .5s ease-out, opacity .3s ease-out;
}
	#gnav.open{
		left: 0;
		opacity: 1;
	}
#gnav *{
	opacity: 0;
	-webkit-transition:opacity .7s ease-out;
	-moz-transition:opacity .7s ease-out;
	-ms-transition:opacity .7s ease-out;
	transition:opacity .7s ease-out;
}
	#gnav.open *{
		opacity: 1;
	}
#gnav .gnavlist {
	display:flex;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: stretch;
	align-items:stretch;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
}
#gnav .gnavlist>li:not(.guest){
	width: 100%;
}
#gnav .gnavlist>li{
	border-bottom: 1px solid  #8DA06E;
}
#gnav .gnavlist li a,
#gnav .gnavlist li span{
	display: block;
	color: #fff;
	position: relative;
}
#gnav .gnavlist>li>a,
#gnav .gnavlist>li>span{
	padding: 1.5rem 5%;
	font-size: 1.2rem;
}
#gnav .gnavlist .sublist {
	display: none;
	background: #8DA06E;
}
#gnav .gnavlist .sublist li{

}
#gnav .gnavlist .sublist a{
	padding: 1rem 5%;
	font-size: 1rem;
}
#gnav .gnavlist .sublist li:not(:first-of-type){
	border-top: 1px solid  #A5AF8B;
}
#gnav .gnavlist li.hassub span::before,
#gnav .gnavlist li.hassub span::after{
	content: "";
	display: block;
	position: absolute;
	top:50%;
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	transform:translateY(-50%);
}
#gnav .gnavlist li.hassub>span::before{
	width: 1rem;
	border-top: 1px solid  #8DA06E;
	right: 5%;
}
#gnav .gnavlist li.hassub>span::after{
	height: 1rem;
	border-left: 1px solid  #8DA06E;
	right: calc(5% + .45rem);
}
	#gnav .gnavlist li.hassub.active>span::after{
		display: none;
	}
#gnav .gnavlist li:not(.hassub) a::after,
#gnav .gnavlist li.hassub .sublist a::after{
	content:"";
	display:block;
	width:.5rem;height:.5rem;
	position:absolute;
	right:calc(5% + .25rem);top:50%;
	border-top:1px solid #8DA06E;
	border-right:1px solid #8DA06E;
	-webkit-transform:translateY(-50%) rotate(45deg) ;
	-moz-transform:translateY(-50%) rotate(45deg) ;
	transform:translateY(-50%) rotate(45deg) ;
}
#gnav .gnavlist>li.concept li.access{
	display: none;
}
#gnav .gnavlist>li.guest{
	width: calc(100% / 2);
}
#gnav .gnavlist>li.guest:not(:last-of-type){
	border-right: 1px solid  #8DA06E;
}
#gnav .gnavlist>li.guest a{
	padding-left: 10%;
	font-size: 1.1rem;
}



/*================================
	Header : Contact Navi
================================*/
/*--------------------------
	Button
---------------------------*/
#siteheader>.contact{
	width: 5rem;height: 5rem;
	background: #C4AB6F;
	padding: 1rem .5rem;
	position: absolute;
	top: 0;right: 0;
	z-index: 9999;
	text-align: center;
    font-family: �⥴���å�, Yu Gothic, �ҥ饮�γѥ� Pro W3, Hiragino Kaku Gothic Pro, �ᥤ�ꥪ, Meiryo, Osaka, sans-serif;
	font-size: .8rem;
	letter-spacing: .1em;
	line-height: 1;
	color: #fff;
}
#siteheader>.contact>span{
	display: none;
}
#siteheader>.contact::before{
	content: "\f274";
    font-family: �⥴���å�, Yu Gothic, �ҥ饮�γѥ� Pro W3, Hiragino Kaku Gothic Pro, �ᥤ�ꥪ, Meiryo, Osaka, sans-serif;
	display: block;
	margin-bottom: .5rem;
	font-size: 1.8rem;
}


/*--------------------------
	Contact Navi
---------------------------*/
#siteheader .contactnav {
	width: 100%;height: calc(100vh - 5rem);
	background: #C4AB6F;
	padding: 3rem 5%;
	position: fixed;
	left: 100vw;top: 5rem;
	z-index: 9999;
	opacity: 0;
	-webkit-transition:left .5s ease-out, opacity .3s ease-out;
	-moz-transition:left .5s ease-out, opacity .3s ease-out;
	-ms-transition:left .5s ease-out, opacity .3s ease-out;
	transition:left .5s ease-out, opacity .3s ease-out;
}
	#siteheader .contactnav.open{
		left: 0;
		opacity: 1;
	}
#siteheader .contactnav *{
	opacity: 0;
	-webkit-transition:opacity .7s ease-out;
	-moz-transition:opacity .7s ease-out;
	-ms-transition:opacity .7s ease-out;
	transition:opacity .7s ease-out;
}
	#siteheader .contactnav.open *{
		opacity: 1;
	}


/*--------------------------
	Reserve Info
---------------------------*/
#siteheader .contactnav .reserveinfo{
	display:flex;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: stretch;
	align-items:stretch;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
}
#siteheader .contactnav .reserveinfo *{
	text-align: center;
}
#siteheader .contactnav .reserveinfo dt{
	width: 100%;
	color: #fff;
}
#siteheader .contactnav .reserveinfo:not(:last-of-type){
	margin-bottom: 3rem;
}
#siteheader .contactnav .reserveinfo .tel{
	width: 100%;
	background: #F4F4F1;
	margin: 1rem 0 0;
	padding: 1.5rem 1rem;
	line-height: 1;
	letter-spacing: .1em;
	color: #B55245;
}
#siteheader .contactnav .reserveinfo .tel em{
	font-size: 2.2rem;
}
#siteheader .contactnav .reserveinfo p{
	margin-top: 1rem;
	font-size: .9rem;
	line-height: 1.5;
	color: #999;
}
#siteheader .contactnav .reserveinfo span::before{
	content: "（";
}
#siteheader .contactnav .reserveinfo span::after{
	content: "）";
}
#siteheader .contactnav .reserveinfo dd:not(.tel){
	margin-top: 1rem;
	width: 100%;
}
#siteheader .contactnav .reserveinfo dd:not(.tel) a{
	display: block;
	background: #2b170a;
	padding: 1.2rem .5rem;
	text-align: center;
	color: #fff;
}
#siteheader .contactnav .reserveinfo dd.request,
#siteheader .contactnav .reserveinfo dd.contact{
	width: 48%;
}



/*================================
	Footer : Reservation
================================*/
#footreserve {
	padding: 4rem 0;
}
#footreserve h6,
#footreserve .reserveinfo{
	padding-left: 5%;padding-right: 5%;
}
#footreserve h6{
	margin-bottom: 3rem;
	text-align: center;
	font-weight: normal;
	font-size: 1rem;
	line-height: 1;
	color: #C4AB6F;
}
#footreserve h6 span{
	display: block;
    font-family: �⥴���å�, Yu Gothic, �ҥ饮�γѥ� Pro W3, Hiragino Kaku Gothic Pro, �ᥤ�ꥪ, Meiryo, Osaka, sans-serif;
	font-size: 1.6rem;
	letter-spacing: .2em;
	color: #2D2D2D;
}
#footreserve h6 span::after{
	content: "";
	display: block;
	width: 80%;
	max-width: 30rem;
	border-top: 1px solid  #2D2D2D;
	margin: 1.5rem auto;

}
#footreserve .reserveinfo {

}
#footreserve .reserveinfo *{
	text-align: center;
}
#footreserve .reserveinfo dt{
	font-size: 1rem;
}
#footreserve .reserveinfo:not(:last-of-type){
	margin-bottom: 2rem;
}
#footreserve .reserveinfo .tel{
	border: 1px solid  #eee;
	margin: 1rem 0 0;
	padding: 1.5rem 1rem;
	line-height: 1;
	letter-spacing: .1em;
	color: #B55245;
}
#footreserve .reserveinfo .tel em{
	font-size: 2.2rem;
}
#footreserve .reserveinfo p{
	margin-top: 1rem;
	font-size: .9rem;
	line-height: 1.5;
	color: #999;
}
#footreserve .reserveinfo span{

}
#footreserve .reserveinfo span::before{
	content: "（";
}
#footreserve .reserveinfo span::after{
	content: "）";
}


/*--------------------------
	Reserve List
---------------------------*/
#footreserve .reservelist {
	display:flex;
	display: -webkit-flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: stretch;
	align-items:stretch;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	margin-top: 3rem;
}
#footreserve .reservelist li{
	width: 50%;
}
#footreserve .reservelist li a{
	display: block;
	background: #2b170a;
	padding: 2rem .5rem;
	text-align: center;
	font-size: 1.2rem;
	color: #fff;
	position: relative;
}
#footreserve .reservelist li:nth-of-type(odd){
	border-right: 1px solid  #fff;
}
#footreserve .reservelist li:not(:first-of-type):not(:nth-of-type(2)){
	border-top: 1px solid  #fff;
}
#footreserve .reservelist li a::after{
	content:"";
	display: block;
	border: .3rem solid transparent;
	border-left: .3rem solid #fff;
	position:absolute;
	left:1rem;top:50%;
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	transform:translateY(-50%);
}




/*================================
	Footer : SP Footer
================================*/
#sitefooter {
	display: none;
}
#spfooter{
	background: #F4F4F1;
	padding: 3rem 0 0;
}
#spfooter .logo{
	margin-bottom: 2rem;
	padding: 0 5%;
	text-align: center;
}
#spfooter .logo img{
	height: 4rem;
}


/*--------------------------
	Contents Nav
---------------------------*/
#spfooter .contnav ul{
	display:flex;
	display: -webkit-flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: stretch;
	align-items:stretch;
	background: #2D2D2D;
}
#spfooter .contnav li a{
	display: block;
	padding: 1rem .5rem;
	text-align: center;
	font-size: 1rem;
	color: #fff;
}
#spfooter .contnav ul li:not(:last-of-type) a::after{
	content: "|";
	margin: 0 .5rem 0 1rem;
	color: #999;
}



/*================================
	Fixed Footer
================================*/
#fixedfooter {
	width: 100%;
	position: fixed;
	left: 0;bottom: 0;
	z-index: 9;
}
#fixedfooter .fixednav ul{
	display:flex;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: stretch;
	align-items:stretch;
	width: 100%;
}
#fixedfooter .fixednav li{
	width: calc(100% / 3);
}
#fixedfooter .fixednav li a{
	display: block;
	background: #C4AB6F;
	padding: 1rem;
	text-align: center;
	font-size: 1.3rem;
	color: #fff;
	position: relative;
}
#fixedfooter .fixednav ul li:not(:last-of-type){
	border-right: 1px solid  #fff;
}
#fixedfooter .fixednav li.tel a{
	padding-left: 2.5rem;
}
#fixedfooter .fixednav li.tel a::before{
	content:"\f095";
	font-weight: 900;
    font-family: �⥴���å�, Yu Gothic, �ҥ饮�γѥ� Pro W3, Hiragino Kaku Gothic Pro, �ᥤ�ꥪ, Meiryo, Osaka, sans-serif;
	position: absolute;
	left: 1.5rem;top:50%;
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	transform:translateY(-50%);
}



/*================================
	Footer Info
================================*/
#footerinfo {
	padding: 2rem 5% 6rem;
}
#footerinfo ul{
	text-align: center;
}
#footerinfo ul li{
	display: inline-block;
	font-size: 1rem;
}
#footerinfo ul li:not(:last-of-type)::after{
	content: "|";
	margin: 0 1em 0 1.5em;
	color: #ccc;
}
#copyright {
	margin-top: 2rem;
	text-align: center;
    font-family: �⥴���å�, Yu Gothic, �ҥ饮�γѥ� Pro W3, Hiragino Kaku Gothic Pro, �ᥤ�ꥪ, Meiryo, Osaka, sans-serif;
	letter-spacing: .1em;
	font-size: .8rem;
}



/*================================
	Pagetop
================================*/
#pagetop{
	display:none;
	position:fixed;
	bottom:15px;
	right:15px;
}
#pagetop a {
	width:50px;
	height:50px;
	display:block;
	background:rgba(0,0,0,.8);
	text-align:center;
	text-decoration:none;
	text-indent:-9999px;
	color:#666;
}
#pagetop a::before{
	content:"";
	display:block;
	width:15px;height:15px;
	border-left:1px solid #ccc;
	border-top:1px solid #ccc;
	position:absolute;
	top:50%;left:17.5px;
	margin-top:-5px;
	-webkit-transform:rotate(45deg);
	-moz-transform:rotate(45deg);
	transform:rotate(45deg);
}



/*================================
	Page Header
================================*/
#pageheader{
	padding: 7rem 5% 5rem 5%;
}
#pageheader *{
	text-align: center;
}
#pageheader h1,
#pageheader .pagetitle{
	font-size: 1rem;
	line-height: 1;
	color: #C4AB6F;
}
#pageheader h1 span,
#pageheader .pagetitle span{
	display: block;
	margin-bottom: 1rem;
    font-family: �⥴���å�, Yu Gothic, �ҥ饮�γѥ� Pro W3, Hiragino Kaku Gothic Pro, �ᥤ�ꥪ, Meiryo, Osaka, sans-serif;
	font-size: 2rem;
	letter-spacing: .1em;
	color: #2D2D2D;
}
#pageheader .note ::before{
	content: "";
	display: block;
	width: 5rem;
	border-top: 1px solid  #2D2D2D;
	margin: 3rem auto;
}
#pageheader .note p{
	text-align: justify;
}

/*============================
	パンくず
============================*/
#breadlist {
	width: 95%;
	margin: 0 auto;
	text-align: left;
	line-height: 1.5;
	position: absolute;
	top: 5.5rem;
	left: 5vw;
	z-index: 1;
}
#breadlist li {
	display: inline-block;
	padding: 0 2rem 0 0;
	line-height: 1em;
	position: relative;
}
#breadlist li.home img {
	vertical-align: middle;
}
#breadlist li:after {
	content: ">";
	display: block;
	font-size: .8rem;
	position:absolute;
	right:.6rem;top:50%;
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	transform:translateY(-50%);
}
#breadlist li:last-of-type:after {
	content: "";
}
#breadlist li a span {
	font-size: .9rem;
	color: #92979b;
}


/*==================================================
	WOVN Widgets
================================================== */
#wovn-languages{
	background: #323232;
	padding: 10px;
}
#wovn-languages *{
	color: #fff;
}
#wovn-languages .wovn-lang-list{
	text-align: center;
}
#wovn-languages .wovn-lang-list li{
	display: inline-block;
}
#wovn-languages .wovn-lang-list li:not(:last-of-type)::after{
	content: "|";
	margin: 15px;
}
.topInfo{
	background: #C6AF87;
    padding: 20px 0;
    margin-top: 50px;
}
.topInfo h4{
    font-family: �⥴���å�, Yu Gothic, �ҥ饮�γѥ� Pro W3, Hiragino Kaku Gothic Pro, �ᥤ�ꥪ, Meiryo, Osaka, sans-serif;
	text-align: center;
    color: #fff;
    font-size: 16px;
}
.topInfo p{
	text-align: center;
    color: #fff;
    font-size: 13px;
}
.footInfo{
	background: #2b170a;
    padding: 20px 0;
}
.footInfo h4{
    font-family: �⥴���å�, Yu Gothic, �ҥ饮�γѥ� Pro W3, Hiragino Kaku Gothic Pro, �ᥤ�ꥪ, Meiryo, Osaka, sans-serif;
	text-align: center;
    color: #fff;
    font-size: 16px;
}
.footInfo p{
	text-align: center;
    color: #fff;
    font-size: 13px;
}
