@charset "UTF-8";

/*------------------------------------------------------------
	ベースライン
------------------------------------------------------------*/

h1#siteID a {
    width: 215px;
    height: 60px;
    position: absolute;
    top: 14px;
    left: 20px;
}

h4 {
	line-height: 1.8;
	margin-bottom: 15px;
}


#category-news h4,
#restaurant-news h4,
#plan-list h4 {
	font-size: 2.5rem;
	margin-bottom: 60px;
}

#category-news h4 span,
#restaurant-news h4 span,
#plan-list h4 span {
	font-size: 1.3rem;
}

#category-news h4:before,
#restaurant-news h4:before,
#plan-list h4:before {
    width: 42px;
    height: 48px;
    top: -46px;
}

#category-news h4:after,
#restaurant-news h4:after,
#plan-list h4:after {
    bottom: -22px;
    margin-left: -30px;  
}


/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/

a.site-logo {
	display: none;
}

header {
	background: rgba(255, 255, 255, 0.95);
	height: 137px;
	position: relative;
}


header .head-upper {
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 68px;
	z-index: 10;
}

header .head-upper.is-scrolled {
	box-shadow: 0px 5px 15px rgba(0,0,0,.3);
	height: 58px;
}

header .head-upper.is-scrolled #siteID a {
	width: 145px;
	top: 10px;
	-webkit-transition: all .2s;
	transition: all .2s;
}

@media only screen and (min-width: 1261px) {
	
	header .head-upper p {
		display: block;
		font-size: 1.1rem;
		color: #3c3c3c;
		position: absolute;
	    top: 24px;
	    left: 260px;
		-webkit-transition: all .3s;
		transition: all .3s;
		color: #3f3c32;
	}
	
	header .head-upper.is-scrolled p {
		font-size: 1.2rem;
		top: 19px;
		left: 220px;
	}

}


.upper-navi {
	display: block;
	font-size: 0;
	position: absolute;
	top: 5px;
	right: 340px;
	z-index: 100;
	-webkit-transition: all .2s;
	transition: all .2s;
}

.is-scrolled .upper-navi {
	top: -2px;
}


.upper-navi li {
	display: inline-block;
}

.upper-navi li a {
	display: block;
	height: 68px;
	font-size: 1.1rem;
	font-weight: 500;
	line-height: 63px;
	color: #2d2d2d;
	text-decoration: none;
	margin-left: 15px;
	position: relative;
	overflow: hidden;
	-webkit-transition: all .1s;
	transition: all .1s;
	z-index: 2;
}

.upper-navi li a:hover {
	text-decoration: underline;
}

.upper-navi li a svg {
	margin-right: 5px;
}



/*予約ボタン*/
.navi-btn-area {
	text-align: center;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 100;
}

.navi-btn-area p {
	font-size: 1.1rem;
	font-weight: 500;
	color: #3c3c3c;
	margin: 0 0 3px;
}

.navi-btn {
	display: block;
	font-size: 0;
}

.navi-btn li {
	display: inline-block;
}

.navi-btn li a {
	display: block;
	background: #346556;
	width: 155px;
	height: 68px;
	font: 500 1.4rem/1.9 "Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	text-align: center;
	color: #fff;
	padding: 13px 5px;
	position: relative;
	overflow: hidden;
	z-index: 1;
	-webkit-transition: all .1s;
	transition: all .1s;
}

header .head-upper.is-scrolled .navi-btn li a {
	height: 58px;
	line-height: 1.4;
	padding: 11px 5px;
}

.navi-btn li a:hover {
	text-decoration: none;
}

.navi-btn li a span {
	display: block;
	font:400 0.9rem/1.7 sans-serif;
	color: #d3d9c9;
}

.navi-btn li a:after {
	content: '';
	background: #3B7462;
	width: 100%;
	height: 100%;
	position: absolute;
	left: -100%;
	bottom: 0;
	-webkit-transition: all .2s;
	transition: all .2s;
	z-index: -1;
}

.navi-btn li a:hover:after {
	left: 0;
}

.navi-btn li:nth-child(2) a {
	background: #1c1c1c;
	color: #fff;
}

.navi-btn li:nth-child(2) a span {
	color: #e7dec6;
}

.navi-btn li:nth-child(2) a:after {
	background: #2c2c2c;
}





.menu-btn{
	display: none;
}

header ul.social-link {
	float: right;
	display: block;
	position: relative;
	right: 665px;
	z-index: 10;
	margin-top: 21px;
	-webkit-transition: all .2s;
	transition: all .2s;
}

header ul.social-link li a {
    width: 28px;
    height: 28px;
    font-size: 1.2rem;
    line-height: 26px;
    color: #3d3d3d;
    border: 1px solid #3d3d3d;
}

header .is-scrolled .social-link {
	margin-top: 15px;
}


/*------------------------------------------------------------
	グランドメニュー
------------------------------------------------------------*/

#gNavi {
	display: block;
	width: 1040px;
	height: 60px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
}

#gNavi > ul {
	font-size: 0;/*ハック*/
	text-align: center;
}

#gNavi ul li {
	display: inline-block;
}

#gNavi ul li > a {
	display: block;
	font:500 1.3rem/1 Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	letter-spacing: 0.5px;
	color: #000;
	text-decoration: none;
	padding: 15px 17px 13px;
	position: relative;
	overflow: hidden;
	z-index: 1;
	-webkit-transition: all .2s;
	transition: all .2s;
}

#gNavi ul li a span {
	display: block;
	font:400 0.9rem/1 'helvetica',sans-serif;
	margin-top: 10px;
	color: #000;
}

#gNavi ul li:hover a {
	color: #fff;
}

#gNavi ul li:hover a span {
	color: #CEC19D;
}

#gNavi ul li a:after {
	content: '';
	background: #000;
	width: 100%;
	height: 0;
	border-radius: 2px 2px 0 0;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
	-webkit-transition: all .2s;
	transition: all .2s;
}

#gNavi ul li:hover a:after {
	height: 100%;
	left: 0;
}


/*------------------------------------------------------------
	メガメニュー 共通設定
------------------------------------------------------------*/

#gNavi ul li div.secondMenu {
	background: #000;
    position: absolute;
    color: #fff;
    top: 60px; /*ドロップダウンの表示開始位置*/
    visibility: hidden;
    opacity: 0;
}

#gNavi ul li:hover div.secondMenu {
    visibility: visible;
    opacity: 1;
    top: 60px; /*メガメニューの実際の表示位置*/
}

#gNavi ul li div.secondMenu a {
	color: #fff;
}

/*------------------------------------------------------------
	メガメニュー：ドロップダウン用
------------------------------------------------------------*/

#gNavi ul li.dropMenu div.secondMenu {
    width: 300px;
    padding: 20px 20px 25px;
}

#gNavi ul li.dropMenu div.secondMenu.w210 {
	width: 210px;
	}

#gNavi ul li.dropMenu div.secondMenu ul.subMenu li {
	clear: both;
	width: 100%;
	border: none;
}

#gNavi ul li.dropMenu div.secondMenu ul.subMenu li a {
	display: block;
	font-size: 1.2rem;
	font-family: '-apple-system', 'BlinkMacSystemFont','Hiragino Sans','Hiragino Kaku Gothic ProN',"segoe ui",'游ゴシック Medium','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	line-height: 1;
	padding: 15px;
    text-align: left;
	color: #fff;
}

#gNavi ul li.dropMenu div.secondMenu ul.subMenu li a:hover {
	background: #1d1d1d;
}

#gNavi ul li.dropMenu div.secondMenu ul.subMenu li a:after {
	content: none;
}

#gNavi ul li.dropMenu div.secondMenu ul.subMenu li a:before {
	display: block;
	content: '';
	background: url('../img/right_arrow_wht.svg') left top no-repeat;
	background-size: contain;
	width: 11px;
	height: 9px;
	position: absolute;
	top: 19px;
	right: 15px;
	z-index: 1;
}

/*------------------------------------------------------------
	メガメニュー：メガメニュー用
------------------------------------------------------------*/

#gNavi ul li.megaMenu div.secondMenu {
	display: flex;
	flex-flow: wrap;
    width: 1040px;
    height: 500px;
    left: 0;
	-webkit-transition:0.2s ease-in-out;
	transition:0.2s ease-in-out;
}

#gNavi ul li.megaMenu div.secondMenu a {
	padding: 0;/*reset*/
}

#gNavi ul li.megaMenu div.secondMenu a:after {
	background: none;
}

#gNavi ul li.megaMenu div.secondMenu div.w260,
#gNavi ul li.megaMenu div.secondMenu div.w390 {
	height: 100%;
	position: relative;
}

#gNavi ul li.megaMenu div.secondMenu div.w260 {
	width: 260px;
	padding: 40px 30px 0;
	border-right: 1px solid #555;
}

/*左側説明BOX*/
#gNavi ul li.megaMenu div.secondMenu div.w260 img {
	width: 190px;
	height: 190px;
	margin: 10px auto;
	border-radius: 190px;
}

#gNavi ul li.megaMenu div.secondMenu div.w260 dl {
	width: 200px;
	position: absolute;
	top: 280px;
	left: 30px;
}

#gNavi ul li.megaMenu div.secondMenu div.w260 dl dt {
	font-size: 1.5rem;
	font-weight: 500;
	margin-bottom: 10px;
}

#gNavi ul li.megaMenu div.secondMenu div.w260 dl dd.summary {
	font-size: 1.2rem;
	text-align: justify;
	line-height: 2;
	color: #ddd;
	margin-bottom: 30px;
}

/*右側メニューボタン*/
#gNavi ul li.megaMenu div.secondMenu div {
	display: flex;
	flex-flow: wrap;
}

#gNavi ul li.megaMenu div.secondMenu .w780 {
	width: 780px;
}

#gNavi ul li.megaMenu div.secondMenu .w390 {
	width: 390px;
}


#gNavi ul li.megaMenu div.secondMenu .w260 {
	width: 260px;
}

#gNavi ul li.megaMenu div.secondMenu .w195 {
	width: 195px;
}

#gNavi ul li.megaMenu div.secondMenu .w130 {
	width: 130px;
}

#gNavi ul li.megaMenu div.secondMenu .h100 {
	height: 500px;
}

#gNavi ul li.megaMenu div.secondMenu .h65 {
	height: 325px;
}

#gNavi ul li.megaMenu div.secondMenu .h50 {
	height: 250px;
}

#gNavi ul li.megaMenu div.secondMenu .h35 {
	height: 175px;
}

#gNavi ul li.megaMenu div.secondMenu .h25 {
	height: 125px;
}

#gNavi ul li.megaMenu div.secondMenu .h334 {
	height: 334px;
}

#gNavi ul li.megaMenu div.secondMenu .h167 {
	height: 167px;
}

#gNavi ul li.megaMenu div.secondMenu .h166 {
	height: 167px;
}



#gNavi ul li.megaMenu div.secondMenu div.hole-menu {
	display: flex;
	flex-wrap: wrap;
	width: 780px;
	height: 35%;
	border-top: 1px solid #555;
}

#gNavi ul li.megaMenu div.secondMenu div.hole-menu dl {
	width: 50%;
	padding: 22px 30px 0;
	position: relative;
}

#gNavi ul li.megaMenu div.secondMenu div.hole-menu dl:nth-of-type(2) {
	border-left: 1px solid #555;
}

#gNavi ul li.megaMenu div.secondMenu div.hole-menu dl dt {
	font-size: 1.8rem;
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	font-style: italic;
	margin-bottom: 13px;
	position: relative;
	z-index: 10;
}

#gNavi ul li.megaMenu div.secondMenu div.hole-menu dl dd {
	display: flex;
	flex-wrap: wrap;
}

#gNavi ul li.megaMenu div.secondMenu div.hole-menu dl dd ul {
	width: calc(100% / 3);
}

#gNavi ul li.megaMenu div.secondMenu div.hole-menu dl dd ul li {
	display: block;
	margin-bottom: 5px;
}

#gNavi ul li.megaMenu div.secondMenu div.hole-menu dl dd ul li a {
	display: inline-block;
	font-size: 1.2rem;
	line-height: 1.9;
	letter-spacing: 1px;
	padding: 0!important;
	margin: 0;
}

#gNavi ul li.megaMenu div.secondMenu div.hole-menu ul li a:hover {
	text-decoration: underline;
}

#gNavi ul li.megaMenu div.secondMenu figure {
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	position: relative;
}

#gNavi ul li.megaMenu div.secondMenu figure.border-t {
	border-top: 1px solid #555;
}

#gNavi ul li.megaMenu div.secondMenu figure.border-l {
	border-left: 1px solid #555;
}

#gNavi ul li.megaMenu div.secondMenu figure:after,
#gNavi ul li.megaMenu div.secondMenu div.hole-menu dl:after {
	content: '';
	background: rgba(0,0,0,0.7);
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition:0.2s ease-in-out;
	transition:0.2s ease-in-out;
}

#gNavi ul li.megaMenu div.secondMenu figure:hover:after {
	background: rgba(0,0,0,0.30);
}


#gNavi ul li.megaMenu div.secondMenu div.w780 {
	background-size: cover;
}

#gNavi ul li.megaMenu div.secondMenu div.coursePanel {
	background-image: url(../img/nav_course@1x.jpg);
}

#gNavi ul li.megaMenu div.secondMenu div.facilitiesPanel {
	background-image: url(../img/nav_facilities@1x.jpg);
}

#gNavi ul li.megaMenu div.secondMenu div.stayPanel {
	background-image: url(../img/nav_stay@1x.jpg);
}

#gNavi ul li.megaMenu div.secondMenu div.diningPanel {
	background-image: url(../img/nav_restaurant_new@1x.jpg);
}

#gNavi ul li.megaMenu div.secondMenu div.compePanel {
	background-image: url(../img/nav_competition@1x.jpg);
}

@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 2dppx) {
	
	#gNavi ul li.megaMenu div.secondMenu div.coursePanel {
		background-image: url(../img/nav_course@2x.jpg);
	}
	
	#gNavi ul li.megaMenu div.secondMenu div.facilitiesPanel {
		background-image: url(../img/nav_facilities@2x.jpg);
	}
	
	#gNavi ul li.megaMenu div.secondMenu div.stayPanel {
		background-image: url(../img/nav_stay@2x.jpg);
	}
	
	#gNavi ul li.megaMenu div.secondMenu div.diningPanel {
	background-image: url(../img/nav_restaurant_new@2x.jpg);
	}
	
	#gNavi ul li.megaMenu div.secondMenu div.compePanel {
		background-image: url(../img/nav_competition@2x.jpg);
	}

		
}



/*ABOUT HISTORY*/

#gNavi ul li.megaMenu div.secondMenu figure.about-01 {
	background-image: url(../img/nav_about_01.jpg);
}

#gNavi ul li.megaMenu div.secondMenu figure.about-02 {
	background-image: url(../img/nav_about_02.jpg);
}

#gNavi ul li.megaMenu div.secondMenu figure.about-03 {
	background-image: url(../img/nav_about_03.jpg);
}


/*ご予約*/
#gNavi ul li.megaMenu div.secondMenu figure.reserve-01 {
	background-image: url(../img/nav_reserve_01.jpg);
}

#gNavi ul li.megaMenu div.secondMenu figure.reserve-02 {
	background-image: url(../img/nav_reserve_02.jpg);
}

#gNavi ul li.megaMenu div.secondMenu figure.reserve-03 {
	background-image: url(../img/nav_reserve_03.jpg);
}

#gNavi ul li.megaMenu div.secondMenu figure.reserve-04 {
	background-image: url(../img/nav_reserve_04.jpg);
}

/*料金*/
#gNavi ul li.megaMenu div.secondMenu figure.fee-01 {
	background-image: url(../img/nav_fee_01.jpg);
}

/*料金*/
#gNavi ul li.megaMenu div.secondMenu figure.fee-02 {
	background-image: url(../img/nav_fee_02.jpg);
}

#gNavi ul li.megaMenu div.secondMenu figure figcaption {
	width: 100%;
	height: 23px;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	z-index: 20;
}

#gNavi ul li.megaMenu div.secondMenu figure figcaption {
	font-size: 1.2rem;
	line-height: 1;
	font-weight: 500;
	text-shadow: 0 0 12px #333;
}


#gNavi ul li.megaMenu div.secondMenu figure figcaption span {
	display: block;
	font-size: 0.9rem;
	color: #9d9d9d;
}

#gNavi ul li.megaMenu div.secondMenu figure:hover figcaption span {
	color: #fff;
}
	



/*------------------------------------------------------------
	コンテンツ：レイアウト
------------------------------------------------------------*/

div.contents,
div.contents-narrow,
div.contents-wrap {
	width: 100%;
}

div.contents,
div.contents-narrow {
	padding: 50px 4vw;
}

div.contents-wrap {
	padding: 0 4vw 50px;
}

div.contents p:not(:last-child),
div.contents-narrow p:not(:last-child),
div.contents-wrap p:not(:last-child) {
	margin-bottom: 10px;
}

@media only screen and (min-width: 1040px) {
	
	div.contents-narrow {
		width:980px;
	}
	
}

@media only screen and (min-width: 1160px) {
	
	div.contents {
		width:1140px;
		padding: 90px 0;
	}
	
	div.contents-wrap {
		width: 1140px;
		padding: 0 0 90px;
	}
	
}


/*------------------------------------------------------------
	FLEX-BOX
------------------------------------------------------------*/

.flex {
	display: flex;
	flex-wrap: wrap;
}

.one-half {
	width: 50%;
}

.one-third {
	width: calc(100% / 3);
}

.one-fourth {
	width: 25%;
}

.one-fifth {
	width: calc(92% / 5);
}

.one-sixth {
	width:15%;
}

.one-fifth:nth-child(5n),
.one-sixth:nth-child(6n) {
	margin-right:0;
}

.two-third {
	width: calc(100% / 3 * 2);
}

.two-fifth {
	width: calc(100% / 5 * 2);
}

.three-fifth {
	width: calc(100% / 5 * 3);
}



/*------------------------------------------------------------
	2カラム（サイドナビ有り）
------------------------------------------------------------*/

div#mainRight {
	width:calc(100% - 320px - 80px);
	float:right;
}

div#mainLeft {
	width:calc(100% - 320px - 80px);
	float:left;
	position: relative;
}

div#sideLeft {
	display:block;
	width:320px;
	float:left;
}

div#sideRight {
	display:block;
	width:320px;
	float:right;
}

/*------------------------------------------------------------
	カテゴリーセレクト（タブ）　
------------------------------------------------------------*/

.selectTab div.scrollArea {
	margin: 0 auto 30px;
}

.selectTab ul.scrollWrap {
	width: 1140px!important;
	margin-bottom: 20px;
}

.selectTab ul.scrollWrap li a {
	display: block;
	width: calc(1140px / 6);
	height: 50px;
	font-size: 1.3rem;
	line-height: 45px;
    margin: 0;/*reset*/
}

.selectTab ul.scrollWrap li a:hover {
	color: #000;
	position: relative;
}

.selectTab ul.scrollWrap li a:hover:after,
.selectTab ul.scrollWrap li a.selected:after,
.selectTab ul.scrollWrap li.current a:after {
	content: '';
	background: #A69A78;
	width: 60px;
	height: 1px;
	position: absolute;
	bottom: 8px;
	left: 50%;
	margin-left: -30px;
}

/*------------------------------------------------------------
	お知らせ/ブログ 一覧
------------------------------------------------------------*/

#news-list article {
	width: 23.5%;
	margin: 0 2% 40px 0;
}

#blog-list {
	max-width: 1080px;
	margin: 0 auto;
}

#blog-list article {
	width: 30%;
	margin: 0 4% 40px 0;
}

#news-list article:nth-child(4n),
#blog-list article:nth-child(3n) {
	margin-right: 0;
}


#news-list article figure {
	height: 185px;
}

#blog-list article figure {
	height: 50%;
}

#news-list article figure img,
#blog-list article figure img {
	-webkit-transition:0.2s ease-in-out;
	transition:0.2s ease-in-out;
}

#news-list article figure img:hover,
#blog-list article figure img:hover  {
	-webkit-transform:scale(1.05,1.05);
	transform:scale(1.05,1.05);
	opacity:0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	background: #fff;
}

#news-list article dl,
#blog-list article dl {
	padding: 20px 20px 18px;
	position: relative;
}

#news-list article dl dt,
#blog-list article dl dt {
	font-size: 1.1rem;
	margin-bottom: 10px;
}

#news-list article dl dd.ttl a,
#blog-list article dl dd.ttl a {
	font-size: 1.3rem;
	font-weight: 400;
	margin-bottom: 12px;
}

.single #news-list article dl dd.ttl a {
	margin-bottom: 0;	
}

#news-list article dd.postCat {
	min-width: 60px;
	top: 20px;
	right: 20px;
	padding: 0 10px 1px;
}

#news-list article dl dd a:hover ,
#blog-list article dl dd a:hover {
	text-decoration: underline;
}

#news-list article dl dd.excerpt,
#blog-list article dl dd.excerpt {
	display: block;
	border-top: 1px solid #ddd;
	padding-top: 15px;
	font-size: 1.2rem;
	line-height: 1.8;
	color: #5d5d5d;
	text-align: justify;
}


/*------------------------------------------------------------
	プラン 一覧
------------------------------------------------------------*/

#plan-list {
	padding-bottom: 100px;
}

.home #plan-list {
	border-top: none;
	padding-top: 40px;
	margin-top: 0;
}

#plan-list .scroll-area {
	overflow-x: visible;
	overflow-y: visible;
}

/*横スクロールするラップ全体の設定*/
#plan-list .scroll-wrap,
#plan-list section {
	width: 1200px!important; /*JSで自動取得する幅を強制リセット */
	height:auto; 
	margin: 0 auto;
	padding-right: 0;
	display: flex;
	flex-wrap: wrap;
}

/*横スクロールするアイテム単体の設定*/
#plan-list .post {
	width: 48.5%; /*個別に設定 or ここで一括設定 */
	margin: 0 3% 40px 0;
	display: flex;
	flex-wrap: wrap;
}

#plan-list .post:nth-child(2n) {
	margin-right: 0;
}

#plan-list .post figure {
	width: 44%;
	height: 100%;
	position: relative;
}

#plan-list .post figure:hover {
	opacity: 0.9;
}

#plan-list .post dl {
	width: 56%;
	padding: 46px 24px 12px;
}

#plan-list .post dl dt.plan-stickers {
	margin-bottom: 10px;
}

#plan-list .post dl dt.plan-stickers span {
    font-size: 1rem;
    font-weight: 400;
    padding: 6px 7px;
}

#plan-list .post dl dd.ttl a {
	line-height: 2;
}

#plan-list .post dl dd.postCat {
	top: 18px;
	right: auto;
}

#plan-list .post dl dd.postCat span {
	display: inline-block;
	font-size: 1.1rem;
	font-weight: 400;
    min-width: 60px;
    padding: 1px 10px;
    margin: 0 5px 0 0;
}

#plan-list .post dl dd.excerpt {
	padding: 12px 0;
	margin: 12px 0;
}

#plan-list .post dl dd.plan-date {
	font-size: 1.2rem;
}
	
#plan-list a.button-blk {
	width: 280px;
}

/*------------------------------------------------------------
	パンくず
------------------------------------------------------------*/

div.breadcrumbArea svg {
	margin: 0 10px;
}

div.breadcrumbArea a:hover {
	text-decoration: underline;
}

div.breadcrumb {
	width: 1140px;
	font-size: 1.2rem;
	padding: 25px 0;
}

/*下層ページ 上部のパンくず*/

.main-vis-inner div.breadcrumb {
	font-size: 1.1rem;
}
	
.main-vis-inner div.breadcrumbArea {
	top: auto;
	bottom: 60px;
	left: 20px;
}

div.breadcrumbArea span {
	max-width: 300px;
}

/*------------------------------------------------------------
	バナー（カルーセル）
------------------------------------------------------------*/

#bnr-area {
	padding: 50px 0 10px;
}


/*------------------------------------------------------------
	ご予約案内（全ページ共通）
------------------------------------------------------------*/

#reserve-area {
	padding: 50px 4vw;
}

#reserve-area div.flex-box {
	max-width: 1140px;
	margin: 0 auto;
}

#reserve-area .by-phone,
#reserve-area .by-online  {
		padding: 0;
		border: none;
}

#reserve-area .by-phone dl,
#reserve-area .by-online dl {
	width: 100%;
	line-height: 1.6;
	padding-left: 75px;
}

#reserve-area .by-phone dl:before,
#reserve-area .by-online dl:before {
	width: 60px;
	height: 60px;
	font-size: 3.4rem;
	line-height: 60px;
	top: 17px;
	left: 0;
}

#reserve-area .by-phone dd {
	font-size: 3.2rem;
}

#reserve-area .by-phone dd span {
	font-size: 1.1rem;
}
	
#reserve-area .by-online ul.reserve-button li a.button {
	height: 36px;
	font-size: 1.2rem;
	line-height: 36px;
}

#reserve-area .by-online ul.reserve-link li,
#reserve-area .by-online ul.reserve-link li:first-child {
	font-size: 1rem;
	margin-right: 1vw;
}

@media only screen and (min-width: 1000px) {
	
	#reserve-area .by-phone dl,
	#reserve-area .by-online dl {
		padding-left: 85px;
	}
		
	#reserve-area .by-phone dd {
		font-size: 3.4rem;
	}

	#reserve-area .by-online ul.reserve-button li {
		width: 32%;
	}
	
	#reserve-area .by-online ul.reserve-button li:not(:last-child) {
		margin-right: 2%;
	}
		
	#reserve-area .by-online ul.reserve-button li a.button:before {
	    top: 15px;
	}
	
	#reserve-area .by-online ul.reserve-link li {
		font-size: 1.1rem;
	}

}

@media only screen and (min-width: 1160px) {
	
	#reserve-area {
		padding: 50px 0;
	}

}

	
/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/

footer {
	padding: 0;
}

/*フッターナビゲーション*/
#footer-top {
	padding: 50px 0 10px;
}


/*アコーディオンメニュー*/

#footer-top dl.footMenu {
	width: 30%;
	margin-bottom: 40px
}

#footer-top dl.footMenu:not(:nth-child(3n)) {
	margin-right: 5%;
}


 
#footer-top dl.footMenu dt {
	padding-bottom: 10px;
	margin-bottom: 10px;
}

#footer-top dl.footMenu dt span {
	display: none;
}

#footer-top dl.footMenu dd {
	margin: 5px 0 0;
}

#footer-top dl.footMenu dd ul li:after {
	content: none;
}

#footer-top dl.footMenu dd ul li a {
	font-size: 1.15rem;
	letter-spacing: 0.5px;
	line-height: 2;
	text-decoration: none;
}

#footer-top dl.footMenu dd ul li a:hover {
	color: #fff;
}

/*ロゴ・住所・受賞歴・SNS*/
#footer-middle div {
	padding: 40px 0;
	height: 134px;
	position: relative;
}

#footer-middle img {
	width: 200px;
	margin: 0;
}

#footer-middle dl {
	font-size: 1.1rem;
	text-align: left;
	border-left: 1px solid #1d1d1d;
	padding: 7px 0 5px 18px;
	position: absolute;
	top: 0;
	left: 255px;
}

#footer-middle ul.social-link {
	position: absolute;
	top: 12px;
	right: 0;
	margin: 0;
}

#footer-middle ul.social-link li {
	margin: 0 0 0 12px;
}

/*facebook*/
ul.social-link li a:hover {
	background: #4267b2;
	border-color: #4267b2!important;
	color: #fff!important;
}

/*Instagram*/
ul.social-link li:nth-child(2) a:hover {
	background: #e33f7e;
	border-color: #e33f7e!important;
}

/*LINE*/
ul.social-link li:nth-child(3) a:hover {
	background: #00c300;
	border: 1px solid #00c300;
	border-color: #00c300!important;
}

/*YouTube*/
ul.social-link li:nth-child(4) a:hover {
	background: #cd201f;
	border-color: #cd201f!important;
}

/*TripAdviser*/
ul.social-link li:nth-child(5) a:hover {
	background: #00a680;
	border-color: #00a680!important;
}

#footer-middle div.award-box {
	width: 552px;
	height: auto;
	margin: 0;
	position: absolute;
	padding: 13px 10px 13px 54px;
	top: 78px;
	left: 0;
}

#footer-middle div.award-box:after {
	top: 4px;
}	

/*コピーライト＆リンク*/
#footer-bottom {
	padding: 55px 0 45px;
}

#footer-top div,
#footer-middle div,
#footer-bottom div {
	width: 100%;
	padding: 0 4vw;
	margin: 0 auto;
	position: relative;
}

#footer-bottom address {
	font-size: 1.2rem;	
}

#footer-bottom ul.utility-link {
	position: absolute;
	top: 0;
	right: 4vw;
	margin: 0;
}

#footer-bottom ul.utility-link li {
	margin: 0 0 0 15px;
}

#footer-bottom ul.utility-link li a {
	font-size: 1.2rem;
}


@media only screen and (min-width: 1160px) {
	
	#footer-middle {
		padding: 40px 0;
		height: 138px;
	}
	
	#footer-top div,
	#footer-middle div,
	#footer-bottom div {
		width: 1140px;
		padding: 0;
	}
	
	#footer-middle div.award-box {
		width: 312px;
		padding: 10px 10px 10px 54px;
		top: 1px;
		right: 261px;
		left: auto;
	}
	
	#footer-middle div.award-box:after {
		top: 10px;
	}
	
	#footer-top dl.footMenu,
	#footer-top dl.footMenu:not(:nth-child(3n)) {
		width: 15%;
		margin-right: 2%;
	}	
	
	#footer-top dl.footMenu:last-child {
		margin-right: 0;
	}
	
	#footer-bottom ul.utility-link {
		right: 0;
	}
	
}

/*------------------------------------------------------------
	フッターフロート
------------------------------------------------------------*/

#footerMenu {
	display: none;
}

/*------------------------------------------------------------
	横スクロールコンテンツ
------------------------------------------------------------*/

.scrollArea {
	overflow-x: hidden;
}

/*横スクロールするラップ全体の設定*/
.scrollArea .scrollWrap {
	width: 1160px!important; /*JSで自動取得する幅を強制リセット */
	margin: 0 auto;
	height:auto; 
}

/*横スクロールするアイテム単体の設定*/
.scrollArea .scrollWrap .scrollItem {
/* 	width: 32%; */ /*個別に設定 or ここで一括設定 */

}
/*

.scrollArea .scrollWrap .scrollItem:not(:nth-child(3n)) {
	margin-right: 2%;
}
*/


/*------------------------------------------------------------
	ページトップへ
------------------------------------------------------------*/

a#page-top {
    width: 54px;
    height: 54px;
    font-size: 3rem;
    line-height: 50px;
    bottom: 152px;
    right: 21pt;
}

/*------------------------------------------------------------
	ボタン
------------------------------------------------------------*/

a.button {
    font-size: 1.2rem;
    width: 100%;
    max-width: 340px;
	line-height: 52px;
}

    
a.button:before {
    width: 12px;
    height: 6px;
    top: 50%;
    right: 13px;
    transform: translateY(-50%);
}

a.button:hover:before {
	right: 10px;
}

a.button:after {
	display: block;
	content: '';
	background: #3B7462;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: -100%;
	z-index: -1;
}

a.button:hover:after {
	left: 0;
}

/*------------------------------------------------------------
	ボタン（2）
------------------------------------------------------------*/


a.button-blk,
a.button-wht {
	width: 250px;
	height: 46px;
	line-height: 46px;
}

a.button-blk:hover {
	 color: #fff!important;
}

a.button-wht:hover {
	 color: #000!important;
}

a.button-blk:before,
a.button-wht:before {
	width: 10px;
	height: 8px;
	top: 21px;
	right: 10px;
}
  
a.button-blk:hover:before {
	background-image: url(../img/right_arrow_wht.svg);
}

a.button-wht:hover:before {
	background-image: url(../img/right_arrow_blk.svg);
}
 
a.button-blk::after,
a.button-wht:after {
	top: 44px;
}

a.button-blk:hover:after,
a.button-wht:hover:after {
	top: 0;
}

/*------------------------------------------------------------
	SLICK調整
------------------------------------------------------------*/

.three-fifth .slick-dots {
	margin-top: -48px;
}

.three-fifth .slick-dots li button:before {
	font-size: 1rem;
}


