@charset "utf-8";

/*================================
	Layout
================================*/
body{
	/* opacity: 0; */
	padding-top: 9rem;
}
#contents{
	padding-bottom: 7rem;
}





/*================================
	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.3rem;
	line-height:2;
}
a,
.linkarea_parent{
	-webkit-transition:opacity .3s ease-out;
	-moz-transition:opacity .3s ease-out;
	-ms-transition:opacity .3s ease-out;
	transition:opacity .3s ease-out;
}
a:hover,
.linkarea_parent:hover{
	opacity:.6;
	-webkit-opacity:.6;
	-moz-opacity:.6;
	filter:alpha(opacity=60);
	-ms-filter:"alpha(opacity=60)";
}
main .note p:not(:last-of-type){
	margin-bottom: 1.5em;
}
.sponly{
	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: 9rem;
	background: #2D2D2D;
	position: fixed;
	left: 0;top: 0;
	z-index: 9999;
}
#siteheader .logo{
	width: 9rem;
	position: absolute;
	left: 3rem;top:50%;
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	transform:translateY(-50%);
}
#siteheader .logo img{
	max-height: 5rem;
}
#siteheader .copy{
    font-family: �⥴���å�, Yu Gothic, �ҥ饮�γѥ� Pro W3, Hiragino Kaku Gothic Pro, �ᥤ�ꥪ, Meiryo, Osaka, sans-serif;
	font-size: .9rem;
	color: #666;
}
	@media screen and (max-width: 920px) {
		#siteheader .copy{
			display: none;
		}
	}
#siteheader .menu{
	display: none;
}


/*----------------------------------------
	Info Navi
------------------------------------------*/
#siteheader .infonav {
	display:flex;
	display: -webkit-flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-align-items: center;
	align-items: center;
	padding: 1.5rem 1.5rem 1.5rem 12rem;
}
#siteheader .infonav *{
	line-height: 1;
}
#siteheader .infonav a{
	color: #fff;
}


/*----------------------------------------
	Info List
------------------------------------------*/
#siteheader .infonav .infolist{
	margin: 0 2rem;
}
#siteheader .infonav .infolist li{
	display: inline-block;
	font-size: 1.1rem;
}
#siteheader .infonav .infolist li:not(:last-of-type)::after{
	content: "｜";
	margin-left: .5em;
	color: #fff;
}


/*----------------------------------------
	TEL
------------------------------------------*/
#siteheader .tel {
	font-size: 1.1rem;
	color: #fff;
}
#siteheader .tel span {
	font-size: 1.4rem;
}


/*----------------------------------------
	SNS List
------------------------------------------*/
#siteheader .snslist {
	margin: 0 2rem;
	letter-spacing: -.5em;
}
#siteheader .snslist li{
	letter-spacing: 0;
}
#siteheader .snslist li:not(:last-of-type){
	margin-right: 1rem;
}
#siteheader .snslist {

}


/*----------------------------------------
	Member
------------------------------------------*/
#siteheader .member a{
	display: block;
	border: 1px solid  #2b170a;
	padding: .5rem 1rem .5rem 2rem;
	font-size: 1rem;
	line-height: 1;
	color: #fff;
	position: relative;
}
#siteheader .member a::before{
	content:"";
	display: block;
	border: .3rem solid transparent;
	border-left: .4rem solid #2b170a;
	position:absolute;
	left:.5rem;top:50%;
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	transform:translateY(-50%);
}



/*================================
	Grobal Navi
================================*/
#gnav {
	width: 100%;
	position: absolute;
	bottom: 0;
	padding: 0 21rem 0 14rem;
}
	@media screen and (max-width: 920px) {
		#gnav{
			padding-right: 19rem;
		}
	}
#gnav .gnavlist {
	display:flex;
	display: -webkit-flex;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-align-items: center;
	align-items: center;
	width: 100%;
}
#gnav .gnavlist li:not(:first-of-type){
	margin-left: 2rem;
}
#gnav .gnavlist>li>a,
#gnav .gnavlist>li>span{
	display: block;
	height: 4rem;
	padding-top: 1rem;
	text-align: center;
	font-size: 1.2rem;
	line-height: 1.4;
	color: #fff;
	position: relative;
}
	@media screen and (max-width: 1150px) {
		#gnav .gnavlist>li>a,
		#gnav .gnavlist>li>span{
			font-size: 1vw;
		}
	}
	@media screen and (max-width: 1075px) {
		#gnav .gnavlist li:not(:first-of-type){
			margin-left: 1rem;
		}
		#gnav .gnavlist>li>a,
		#gnav .gnavlist>li>span{

		}
	}
	@media screen and (max-width: 920px) {
		#gnav .gnavlist>li>a,
		#gnav .gnavlist>li>span{
			padding-top: .5rem;
		}
	}
#gnav .gnavlist>li>span:hover{
	cursor: pointer;
}
#gnav .gnavlist>li>a:hover{
	opacity: 1;
}
#gnav .gnavlist>li:not(.hassub)>a::after{
	content: "";
	display: block;
	width: 0;height: 2px;
	background: #C4AB6F;
	position: absolute;
	left: 50%;bottom:0;
	-webkit-transform:translateX(-50%);
	-moz-transform:translateX(-50%);
	transform:translateX(-50%);
	-webkit-transition:width .5s ease-out;
	-moz-transition:width .5s ease-out;
	-ms-transition:width .5s ease-out;
	transition:width .5s ease-out;
}
#gnav .gnavlist>li:not(.hassub)>a:hover::after,
#gnav .gnavlist>li.here>a::after,
#gnav .gnavlist>li.active>a::after{
	width: calc(100% + 2rem);
}
#gnav .gnavlist>li.hassub>span::after{
	content:"";
	display: block;
	border: .4rem solid transparent;
	border-bottom: .4rem solid #C4AB6F;
	position: absolute;
	left: 50%;bottom:0;
	-webkit-transform:translateX(-50%);
	-moz-transform:translateX(-50%);
	transform:translateX(-50%);
	opacity: 0;
	-webkit-transition:opacity .3s ease-out;
	-moz-transition:opacity .3s ease-out;
	-ms-transition:opacity .3s ease-out;
	transition:opacity .3s ease-out;
}
#gnav .gnavlist>li.hassub:hover>span::after{
	opacity: 1;
}
#gnav .gnavlist>li.plan em{
	display: none;
}
#gnav .gnavlist .sublist{
	display: none;
	width: 100%;
	position: absolute;
	left: 0;top: 4rem;
	z-index: 9999;
	background: #F4F4F1;
	border-top: 3px solid  #C4AB6F;
	padding: 1.5rem 5%;
	text-align: center;
}
#gnav .gnavlist .sublist li{
	display: inline-block;
}
#gnav .gnavlist .sublist li a{
	font-size: 1.1rem;
}
#gnav .gnavlist li.guest,
#gnav .snslist{
	display: none;
}



/*================================
	Header Contact Navi
================================*/
#siteheader>.contact {
	width: 18rem;
	height: 4rem;
	position: absolute;
	right: 0;bottom: 0;
	background: #2b170a;
	padding: 0 1rem;
	text-align: center;
	font-size: 1.1rem;
	line-height: 4rem;
	color: #fff;
}
#siteheader>.contact::before {
	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%);
}
#siteheader>.contact:hover{
	cursor: pointer;
}
#siteheader>.contactnav{
	display: none;
	width: 30rem;
	background: #2b170a;
	padding: 2rem;
	position: absolute;
	right: 0;top: 9rem;
}
#siteheader>.contactnav *{
	color: #fff;
}


/*--------------------------
	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:not(:last-of-type){
	margin-bottom: 3rem;
}
#siteheader .contactnav .reserveinfo *{
	text-align: center;
}
#siteheader .contactnav .reserveinfo dt,
#siteheader .contactnav .reserveinfo .tel,
#siteheader .contactnav .reserveinfo .fair,
#siteheader .contactnav .reserveinfo .consult{
	width: 100%;
}
#siteheader .contactnav .reserveinfo dt{
	font-size: 1.2rem;
}
#siteheader .contactnav .reserveinfo .tel{
	margin: 1.5rem 0 1rem;
	line-height: 1;
	letter-spacing: .1em;
}
#siteheader .contactnav .reserveinfo .tel em{
	font-size: 2.2rem;
}
#siteheader .contactnav .reserveinfo p{
	margin-top: 1rem;
	font-size: 1rem;
	line-height: 1.7;
	color: #A5AF8B;
}
#siteheader .contactnav .reserveinfo span{
	display: block;
	font-size: 1rem;
	line-height: 1.7;
	color: #A5AF8B;
}
#siteheader .contactnav .reserveinfo dd:not(.tel){
	font-size: 1.1rem;
}
#siteheader .contactnav .reserveinfo dd.consult,
#siteheader .contactnav .reserveinfo dd.request,
#siteheader .contactnav .reserveinfo dd.contact{
	margin-top: .5rem;
}
#siteheader .contactnav .reserveinfo dd.request,
#siteheader .contactnav .reserveinfo dd.contact{
	width: 49%;

}
#siteheader .contactnav .reserveinfo dd:not(.tel) a{
	display: block;
	border: 1px solid  #8DA06E;
	padding: 1rem 1rem 1rem .5rem;
	text-align: center;
	color: #fff;
	position: relative;
}
#siteheader .contactnav .reserveinfo dd:not(.tel) a::after{
	content:"";
	display: block;
	border: .3rem solid transparent;
	border-left: .3rem solid #fff;
	position:absolute;
	right:.5rem;top:50%;
	-webkit-transform:translateY(-50%);
	-moz-transform:translateY(-50%);
	transform:translateY(-50%);
}




/*================================
	Footer : Reservation
================================*/
#footreserve {
	display:flex;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
	padding: 7rem 0 5rem;
}
#footreserve h6{
	width: 100%;
	margin-bottom: 5rem;
	text-align: center;
	font-weight: normal;
	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: 2.2rem;
	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 {
	width: 50%;
}
#footreserve .reserveinfo *{
	text-align: center;
}
#footreserve .reserveinfo:not(:last-of-type){
	border-right: 1px solid  #eee;
}
#footreserve .reserveinfo .tel{
	margin: 1.5rem 0 0;
	line-height: 1;
	letter-spacing: .1em;
	color: #B55245;
}
#footreserve .reserveinfo .tel em{
	font-size: 2.2rem;
}
#footreserve .reserveinfo p{
	margin-top: 1.5rem;
	font-size: 1.1rem;
	line-height: 1.7;
	color: #999;
}
#footreserve .reserveinfo span{
	display: block;
}


/*--------------------------
	Reserve List
---------------------------*/
#footreserve .reservelist {
	display:flex;
	display: -webkit-flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: stretch;
	align-items:stretch;
	width: 100%;
	margin-top: 5rem;
}
#footreserve .reservelist li{
	width: 24%;
	max-width: 18rem;
	margin: 0 .25rem;
}
#footreserve .reservelist li a{
	display: block;
	background: #2b170a;
	padding: .7rem 1rem;
	text-align: center;
	font-size: 1.1rem;
	color: #fff;
	position: relative;
}
#footreserve .reservelist li:first-of-type{
	margin-left: 0;
}
#footreserve .reservelist li:last-of-type{
	margin-right: 0;
}
#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 : Sitefooter
================================*/
#spfooter{
	display: none;
}
#sitefooter {
	background: #F4F4F1;
	padding-top: 5rem;
}
#sitefooter .logo{
	width: 10.5rem;
	margin: 0 auto 4rem;
}


/*----------------------------------------
	Footer Navi
------------------------------------------*/
#sitefooter .footnav {
	display:flex;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: stretch;
	align-items:stretch;
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
}
#sitefooter .footnav .footnavlist:nth-of-type(5) {
	width: 12%;
}
#sitefooter .footnav .footnavlist:nth-of-type(4),
#sitefooter .footnav .footnavlist:last-of-type{
	width: 14%;
}
#sitefooter .footnav .footnavlist:not(:nth-of-type(4)):not(:nth-of-type(5)):not(:last-of-type) {
	width: 17%;
}
#sitefooter .footnav .footnavlist>li>a{
	font-size: 1.2rem;
}
#sitefooter .footnav .footnavlist>li:not(:last-of-type){
	margin-bottom: 1rem;
}
#sitefooter .footnav .footnavlist .sublist{
	margin-top: 1rem;
}
#sitefooter .footnav .footnavlist .sublist>li:not(:last-of-type){
	margin-bottom: .5rem;
}
#sitefooter .footnav .footnavlist .sublist>li>a{
	font-size: 1rem;
	letter-spacing: .1em;
	color: #999;
}
#sitefooter .footnav .footnavlist .sublist>li>a::before{
	content: "-";
	margin-right: .5em;
}


/*----------------------------------------
	SNS Icons
------------------------------------------*/
#sitefooter .footnav .footnavlist .snslist li:not(:last-of-type){
	margin-right: 1rem;
}


/*----------------------------------------
	Contents Navi
------------------------------------------*/
#sitefooter .contnav {
	width: 90%;
	margin: 3rem auto 5rem;
}
#sitefooter .contnav ul li{
	display: inline-block;
}
#sitefooter .contnav ul{
	text-align: center;
	letter-spacing: -.5em;
}
#sitefooter .contnav li a{
	font-size: 1rem;
	letter-spacing: .1em;
	color: #999;
}
#sitefooter .contnav li:not(:last-of-type)::after{
	content: "|";
	margin: 0 1.5rem 0 1rem;
	color: #ccc;
}


/*----------------------------------------
	関連会社
------------------------------------------*/
#sitefooter .associatenav {
	background: #2D2D2D;
	padding: 5rem 0;
}
#sitefooter .associatenav *{
	color: #fff;
}
#sitefooter .associatenav h5{
	max-width: 16rem;
	margin: 0 auto 4rem;
	text-align: center;
	font-weight: normal;
	font-size: 1;
}
#sitefooter .associates {
	display:flex;
	display: -webkit-flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: stretch;
	align-items:stretch;
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
}
#sitefooter .associatenav section:not(:last-of-type) {
	width: calc((100% - 14em - 4%) / 3);
}
#sitefooter .associatenav section:last-of-type{
	width: 18em;
}
#sitefooter .associatenav h6{
	margin-bottom: 1.5rem;
    font-family: �⥴���å�, Yu Gothic, �ҥ饮�γѥ� Pro W3, Hiragino Kaku Gothic Pro, �ᥤ�ꥪ, Meiryo, Osaka, sans-serif;
	font-weight: normal;
	font-size: 1.2rem;
	letter-spacing: .1em;
	color: #ccc;
}
#sitefooter .associatenav .associatelist *{
	font-size: 1.1rem;
	color: #ccc;
}
#sitefooter .associatenav dl.associatelist {
	overflow: hidden;
}
#sitefooter .associatenav dl.associatelist dt{
	clear: both;
	float: left;
}
#sitefooter .associatenav dl.associatelist dd{
	float: right;
}
#sitefooter .associatenav section:not(:nth-of-type(3)) dl.associatelist dt{
	width: 3em;
}
#sitefooter .associatenav section:not(:nth-of-type(3)) dl.associatelist dd{
	width: calc(100% - 5em);
}
#sitefooter .associatenav section:nth-of-type(3) dl.associatelist dt{
	width: 6em;
}
#sitefooter .associatenav section:nth-of-type(3) dl.associatelist dd{
	width: calc(100% - 8em);
}
#sitefooter .associatenav dl.associatelist dt:not(:first-of-type),
#sitefooter .associatenav dl.associatelist dt:not(:first-of-type) + dd{
	padding-top: 1rem;
}



/*================================
	Fixed Footer
================================*/
#fixedfooter {
	display: none;
}



/*================================
	Footer Info
================================*/
#footerinfo {
	padding: 3rem 5%;
}
#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: .9rem;
}



/*================================
	Pagetop
================================*/
#pagetop{
	display:none;
	position:fixed;
	bottom:1.5rem;
	right:1.5rem;
	z-index:999;
}
#pagetop a {
	width:3rem;
	height:3rem;
	display:block;
	background:rgba(0,0,0,.9);
	border-radius:50%;
	text-align:center;
	text-decoration:none;
	text-indent:-9999px;
	font-size:0;
	color:#666;
}
#pagetop a::before{
	content:"";
	display:block;
	width:1rem;height:1rem;
	border-left:1px solid #ccc;
	border-top:1px solid #ccc;
	position:absolute;
	top:50%;left:1rem;
	margin-top:-.4rem;
	-webkit-transform:rotate(45deg);
	-moz-transform:rotate(45deg);
	transform:rotate(45deg);
}



/*================================
	Page Header
================================*/
#pageheader {
	padding: 7rem 5%;
}
#pageheader *{
	text-align: center;
}
#pageheader h1,
#pageheader .pagetitle{
	font-size: 1.2rem;
	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: 2.2rem;
	letter-spacing: .1em;
	color: #2D2D2D;
}
#pageheader .note::before{
	content: "";
	display: block;
	width: 5rem;
	border-top: 1px solid  #2D2D2D;
	margin: 3rem auto;
}

/*============================
	パンくず
============================*/
#breadlist {
	display:flex;
	display: -webkit-flex;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
	position: absolute;
	top: 10rem;
	left: 5%;
	z-index: 1;
}
#breadlist li {
	padding: 0 2rem 0 0;
	position: relative;
	line-height: 1em;
}
#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: 1rem;
	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: 0 10px;
}


.topInfo{
	background: #C6AF87;
	padding: 20px 0;
}
.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;
}
