@charset "utf-8";
/* ===================================================
	Home CSS
====================================================== */

/* ---------------------------------------------------
main_img
------------------------------------------------------ */
#main_img { position: relative; overflow: hidden;}
#main_img .slick_main img { max-height: 100vh;}
#main_img .slick-slide div { vertical-align: bottom;}
#main_img .slick_main img { width: 100%; height: 100vh; transform: scale(1); transition: transform 10s linear;}
#main_img .slick_main .active img { transform: scale(1.1);}

#main_img .main_txt { display: flex; justify-content: space-between; position: absolute; left: 50%; transform: translate(-50%, 0); -webkit-transform: translate(-50%, 0); -ms-transform: translate(-50%, 0); width: 94%; margin: 0 auto 50px; bottom: 0; color: #fff; align-items: center; padding: 30px 0 0;}
#main_img .main_txt p { font-size: 50px; text-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5); }
#main_img .main_txt p span { display: block; font-size: 30px; font-family: "Times", serif; }



@media screen and (max-width: 600px) {
	#main_img .main_txt { display: block; margin: 0;}
	#main_img .main_txt p { font-size: 32px; line-height: 1.3; }
	#main_img .main_txt p span { width: 100%; font-size: 16px; margin-top: 10px; }
	#main_img .main_txt p+.circle { display: table; margin: -3% 0 0 auto; right: 93px;}

}


/* ---------------------------------------------------
sec_reserve
------------------------------------------------------ */
.sec_reserve { display: flex; justify-content: center; background-color: #f6f3ec;}
.sec_reserve .reserve_search { margin: 0; padding: 35px 50px 45px; }
.sec_reserve .reserve_search >dl { display: flex; align-items: center;}
.sec_reserve .reserve_search >dl >dt { margin: 0 30px 0 0; font-size: 22px; padding: 0 0 0 30px; background: url(../img/home/icon_search.svg) no-repeat left center; background-size: 21px;}
.sec_reserve .reserve_search >ul li::before { display: inline-block; content: ""; width: 10px; height: 10px; padding: 0 10px 0 0; background: url(../img/home/icon_arrow.svg)no-repeat center center;}

#search_489ban form {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
#search_489ban .inbox_489ban {
	position: relative;
	margin-left: 20px;
}
#search_489ban input[type="text"],
#search_489ban select {
	font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
	appearance: none;
	border: none;
	border-radius: 0;
	outline: none;
}
#search_489ban select {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 155px;
	height: 50px;
	font-size: 16px;
	opacity: 0;
}
#search_489ban button {
	flex-grow: 1;
	width: 190px;
	height: 60px;
	margin-left: 20px;
	font-size: 20px;
	color: #fff;
	text-decoration: none;
	letter-spacing: 2px;
	border: none;
	background-color: #e19797;
	font-family: "游明朝", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	transition: all 0.5s;
}
#search_489ban button:hover { background: #cd7d7d; }
#search_489ban .date_489ban dd {
	display: flex;
	align-items: center;
}
#search_489ban .date_489ban dt,
#search_489ban .inbox_489ban dt {
	font-size: 16px;
	line-height: 1.2;
}
#search_489ban .date_489ban input[type="text"] {
	box-sizing: border-box;
	width: 240px;
	padding: 10px 40px 10px 20px;
	font-size: 28px;
	letter-spacing: 1.5px;
	background: url(../img/home/icon_calendar.svg) no-repeat center right 13px;
	background-size: 16px;
	border-bottom: 1px solid #a6a6a6;
}
#search_489ban .date_489ban input[type="text"]:disabled {
	-webkit-text-fill-color: #81706c;
	color: #81706c;
	opacity: 1;
}
#search_489ban .date_489ban input[type="checkbox"]:checked {
	background: #000;
}
#search_489ban .date_489ban input[type="checkbox"]:checked::after {
	position: absolute;
	top: 0;
	left: 4px;
	display: block;
	width: 5px;
	height: 10px;
	content: "";
	border-right: 3px solid #fff;
	border-bottom: 3px solid #fff;
	transform: rotate(40deg);
}
#search_489ban .date_489ban input[type="checkbox"] {
	position: relative;
	width: 18px;
	height: 18px;
	margin: 0 10px 0 0;
	vertical-align: text-bottom;
	appearance: none;
	background: #fff;
	border: 1px solid #000;
	border-radius: 0;
}
#search_489ban .date_489ban dd label {
	display: flex;
	align-items: center;
	margin-left: 10px;
	font-size: 16px;
}
#search_489ban .stay_489ban dd {
	display: flex;
	align-items: flex-end;
	width: 155px;
	height: 61px;
}
#search_489ban #stay_label {
	width: 100%;
	height: 50px;
	font-size: 24px;
	letter-spacing: 1px;
	padding: 0 20px;
	background: url(../img/home/icon-stay_arrow.svg) no-repeat top calc(50% - 8px) right 7px;
	background-size: 10px;
	border-bottom: 1px solid #a6a6a6;
}
.ui-widget-header {
	background: #eaddd7;
}
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
	color: #fff;
	background: #965431;
	border-color: #965431;
}

.sec_reserve .reserve_search >ul { display: flex; justify-content: center; margin: 45px 0 0;}
.sec_reserve .reserve_search >ul li { box-sizing: border-box; margin: 0 40px 0 0;}

@media screen and (max-width: 600px) {
	.sec_reserve { display: block;}
	.sec_reserve .reserve_best { margin: 0 auto; padding: 30px 0;}
	.sec_reserve .reserve_best h2 { font-size: 26px;}
	.sec_reserve .reserve_best h2 span { font-size: 16px;}
	.sec_reserve .reserve_best p span { font-size: 20px;}
	.sec_reserve .reserve_search { width: 100%; min-width: inherit; padding: 50px 4%; box-sizing: border-box;}
	.sec_reserve .reserve_search >dl { display: block;}
	.sec_reserve .reserve_search >dl >dt { display: table; margin: 0 auto 10px;}
	#search_489ban .date_489ban input[type="text"],
	#search_489ban select,#search_489ban #stay_label { font-size: 20px;}
	#search_489ban .date_489ban input[type="text"] { margin-right: 20px; flex-grow: 1; }
	#search_489ban .date_489ban { width: 100%;}
	#search_489ban .date_489ban dd { flex-wrap: wrap;}
	#search_489ban .date_489ban dd label { margin: 10px 0 0 0;}
	#search_489ban { padding: 0; clear: both;}
	#search_489ban form { flex-wrap: wrap;}
	#search_489ban .inbox_489ban { margin: 20px 0 0;}
	#search_489ban button { width: 80px; margin-left: 20px; }

	.sec_reserve .reserve_search >ul { gap: 0.5em 2em; flex-wrap: wrap;}
	.sec_reserve .reserve_search >ul li { width: calc(50% - 1em); margin: 0; text-indent: -20px; padding-left: 20px;}

}

/* ---------------------------------------------------
sec_lead
------------------------------------------------------ */
#sec_lead { margin: 0 auto; padding: 80px 0 250px; background: url(../img/home/lead_bg01.png)no-repeat top -135px right 0,url(../img/home/lead_bg02.png)no-repeat 60px bottom; background-size: 48%;}
#sec_lead >ul { display: flex; align-items: flex-end; justify-content: space-between;}
#sec_lead >ul li:nth-of-type(1) { width: 63%;}
#sec_lead >ul li:nth-of-type(2) { width: 35%; margin: 0 0 -160px; text-align: right;}
#sec_lead .inner_sm { display: flex; margin: 35px auto 0; box-sizing: border-box;}
#sec_lead .inner_sm div { padding: 75px 0 0 85px;}
#sec_lead .inner_sm div h2 { margin: 0 0 25px; font-size: 23px; line-height: 1.8;}
#sec_lead .inner_sm div h2 .font_en { display: block; margin: 0 0 20px; font-size: 80px; color: #e7dcc5; line-height: 1.2; letter-spacing: 0.1em; }
#sec_lead .inner_sm div p { padding: 0 0 45px; line-height: 2.4;}
#sec_lead .inner_sm div a { margin: 0 0 0 auto;}

#sec_map { margin-top: -250px; padding-left: 20px; padding-bottom: 95px; }
#sec_map .txt { width: 55%; margin: 0 0 0 auto;}
#sec_map .txt h2 { font-size: 23px; margin-bottom: 20px; }
#sec_map .txt p { line-height: 1.8; }
#sec_map .txt a { margin: 30px 0 0 auto; }

@media screen and (max-width: 600px) {
	#sec_lead { padding: 0; margin: 0 auto; background: none;}
	#sec_lead >ul { width: 100%; display: block; position: relative;}
	#sec_lead >ul li:nth-of-type(1) { width: 100%; height: 40vh;}
	#sec_lead >ul li:nth-of-type(2) { margin: -18% 0 0 auto; width: 55%;}
	#sec_lead .inner_sm { max-width: 100%; padding: 0 5% 80px; flex-wrap: wrap; background: url(../img/home/lead_bg01.png)no-repeat top right,url(../img/home/lead_bg02.png)no-repeat left bottom; background-size: 50%;}
	#sec_lead .inner_sm div { position: relative; padding: 0; margin: -70px 0 0; order: 1;}
	#sec_lead .inner_sm >img { order: 2; width: min(230px, 80%); margin: 0 auto;}
	#sec_lead .inner_sm div h2 { font-size: 20px; }
	#sec_lead .inner_sm div h2 .font_en { font-size: 53px;}
	#sec_lead .inner_sm div p { padding: 0 0 45px; line-height: 2;}
	#sec_lead .inner_sm div a { margin: 0 auto 45px;}

	#sec_map { max-width: 86%; margin-top: 30px; padding-left: 0; padding-bottom: 95px; }
	#sec_map .map { margin: 0 -7vw;}
	#sec_map .txt { width: 100%; margin: 30px 0 0;}
	#sec_map .txt h2 { font-size: 18px; margin-bottom: 10px; }
	#sec_map .txt a { margin: 20px auto 0; }
}

/* ---------------------------------------------------
sec_loc
------------------------------------------------------ */
#sec_loc .sec_photo { position: relative;}
#sec_loc .sec_photo div { width: 520px; display: flex; flex-direction: column; justify-content: center; position: absolute; left: 0; top: 0; height: 100%; padding: 80px 60px 50px 90px; color: #fff; background-color: rgba(0, 0, 0, 0.6);}
#sec_loc .sec_photo div h2 { position: relative; font-size: 50px; color: #ac9761;}
#sec_loc .sec_photo div p { font-size: 16px; line-height: 2;}
#sec_loc .sec_photo div p span { display: block; padding:20px 0 15px; font-size: 25px; line-height: 1.6; }
#sec_loc .sec_photo >img { height: 680px;}
#sec_loc .sec_col { padding: 100px 0 120px; color: #fff; background: url(../img/home/sec_loc_bg.png)no-repeat top right #150e05;}
#sec_loc .sec_col .inner_md { display: flex; justify-content: space-between; align-items: center;}
#sec_loc .sec_col .inner_md .sec_slide { width: 50%; flex-shrink: 0; }
#sec_loc .sec_col .inner_md .slick-list div { vertical-align: bottom;}
#sec_loc .sec_col .inner_md .slick-dots { line-height: 0; font-size: 0; text-align: right;}
#sec_loc .sec_col .inner_md .slick-dots li { width: 10px; height: 10px; margin: 0 5px;}
#sec_loc .sec_col .inner_md .slick-dots li:first-of-type { margin-left: 0;}
#sec_loc .sec_col .inner_md .slick-dots li button { width: 10px; height: 10px; padding: 0;}
#sec_loc .sec_col .inner_md .slick-dots li button::before { content: ''; width: 15px; height: 15px; background: #9c8a79; border-radius: 50%; opacity: 1; transform: scale(.5); transition: transform .5s;}
#sec_loc .sec_col .inner_md .slick-dots li.slick-active button::before { background: #ccb49d; transform: scale(1);}
#sec_loc .sec_col .inner_md .txt { margin: 0 auto; width: 460px; }
#sec_loc .sec_col .inner_md .txt h3 { padding: 0 0 20px; font-size: 23px;}
#sec_loc .sec_col .inner_md .txt p { padding: 0 0 50px; line-height: 2;}

@media screen and (max-width: 600px) {
	#sec_loc { background-color: #150d05;}
	#sec_loc .sec_photo >img { height: 50vh;}
	#sec_loc .sec_photo div { position: relative; width: 100%; margin: -25vh 0 0; padding: 0 5%; height: auto; -ms-writing-mode: inherit; writing-mode: inherit; z-index: 1;}
	#sec_loc .sec_col .inner_md { display: block;}
	#sec_loc .sec_photo div h2 { font-size: 44px; border-left: none;}
	#sec_loc .sec_photo div p span { padding: 20px 0; font-size: 23px;}
	#sec_loc .sec_col { background: #150d05; margin: -21vh 0 0; padding: 21vh 0 50px;}
	#sec_loc .sec_col .inner_md .sec_slide { width: 100%; margin: 20px 0;}
	#sec_loc .sec_col .slick-dots { text-align: center;}
	#sec_loc .sec_col .inner_md .txt { width: 100%; padding: 20px 0 0;}
	#sec_loc .sec_col .inner_md .txt h3 { padding: 0 0 10px; font-size: 21px;}
	#sec_loc .sec_col .inner_md .txt p { padding: 0; }

}


/* ---------------------------------------------------
sec_wrap
------------------------------------------------------ */
.sec_wrap .sec_tit { text-align: center; margin-bottom: 65px; }
.sec_wrap .sec_tit h2 { color: #e7dcc5; font-size: 60px; letter-spacing: 0.1em; }
.sec_wrap .sec_tit h2 + p { font-size: 23px; margin-top: 10px; }
.sec_wrap .flex_col + div { padding-top: 30px; }
.sec_wrap .flex_col + div p { line-height: 2.2; font-size: 16px; }

/* slick共通設定 */
.sec_wrap .slick-list div { vertical-align: bottom;}
.sec_wrap .slick-dots { line-height: 0; font-size: 0; text-align: center;}
.sec_wrap .slick-dots li { width: 10px; height: 10px; margin: 0 5px;}
.sec_wrap .slick-dots li:first-of-type { margin-left: 0;}
.sec_wrap .slick-dots li button { width: 10px; height: 10px; padding: 0;}
.sec_wrap .slick-dots li button::before { content: ''; width: 15px; height: 15px; background: #9c8a79; border-radius: 50%; opacity: 1; transform: scale(.5); transition: transform .5s;}
.sec_wrap .slick-dots li.slick-active button::before { background: #ccb49d; transform: scale(1);}


@media screen and (max-width: 600px) {
	.sec_wrap .sec_tit { margin-bottom: 40px; padding: 0 5%; box-sizing: border-box; }
	.sec_wrap .sec_tit h2 { font-size: 40px; }
	.sec_wrap .sec_tit h2 + p { font-size: 18px; margin-top: 5px; }

	.sec_wrap .flex_col .sec_slide img { height: 50vh; }
	.sec_wrap .slick-dots { text-align: center;}
	.sec_wrap .flex_col + div p { line-height: 2; }
}

/* ---------------------------------------------------
sec_meal
------------------------------------------------------ */
#sec_meal { padding: 80px 0 180px; }
#sec_meal .flex_col { display: grid; grid-template-rows: 50% 1fr; grid-template-columns: 66.7% 1fr; gap: 1px; }
#sec_meal .flex_col img:nth-child(1) { grid-row: 1 / 3; grid-column: 1; }
#sec_meal .flex_col img:nth-child(2) { grid-row: 1; grid-column: 2; }
#sec_meal .flex_col img:nth-child(3) { grid-row: 2; grid-column: 2; }
#sec_meal div[class^=sec_col] h3 { text-align: center; font-size: 40px; margin-bottom: 40px; }
#sec_meal div[class^=sec_col] { margin-top: 110px;}

#sec_meal .sec_col ul { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 35px 20px; }
#sec_meal .sec_col ul li { width: calc(50% - 10px); position: relative; }
#sec_meal .sec_col ul li .photo .season { padding: 10px 25px; position: absolute; top: 0; left: 0; color: #fff; font-size: 30px; line-height: 1; }
#sec_meal .sec_col ul li:nth-child(1) .photo .season { background: #ab7874e6;}
#sec_meal .sec_col ul li:nth-child(2) .photo .season { background: #64627fe6;}
#sec_meal .sec_col ul li:nth-child(3) .photo .season { background: #844c30e6;}
#sec_meal .sec_col ul li:nth-child(4) .photo .season { background: #7a828ce6;}
#sec_meal .sec_col ul li .photo + p { margin-top: 10px; font-size: 16px; line-height: 1.6; }

#sec_meal .sec_col2 { position: relative; margin: 0 auto 60px;}
#sec_meal .sec_col2 .detail { background-color: #332a23; color: #fff; height: 100%; }
#sec_meal .sec_col2 img { position: absolute; left: 0; top: 0; height: 100%; width: 60%;}
#sec_meal .sec_col2 .txt { position: relative; width: 55%; height: 100%; margin: 0 0 0 auto; padding: 50px 50px 50px 70px; color: #fff; min-height: 450px; background: rgba(21, 14, 5, .6); z-index: 2; }
#sec_meal .sec_col2 .txt h4 { padding: 0 0 20px; font-size: 25px; border-bottom: 1px solid #fff;}
#sec_meal .sec_col2 .txt p { margin: 20px 0 0; line-height: 2;}
#sec_meal .sec_col2 .slick-dots { text-align: right; bottom: 25px; right: 0; box-sizing: border-box; padding-right: 50px; width: 55%; }
#sec_meal .sec_col2 .slick-track { display: flex; }
#sec_meal .sec_col2 .slick-slide { height: auto !important; }
#sec_meal .sec_col2 .slick-slide > div { height: 100%; }

#sec_meal .sec_col3 .photo { display: grid; grid-template-rows: 50% 1fr; grid-template-columns: 68% 1fr; gap: 1px; }
#sec_meal .sec_col3 .photo div:nth-child(1) { grid-row: 1 / 3; grid-column: 1; }
#sec_meal .sec_col3 .photo div:nth-child(2) { grid-row: 1; grid-column: 2; }
#sec_meal .sec_col3 .photo div:nth-child(3) { grid-row: 2; grid-column: 2; }
#sec_meal .sec_col3 .photo + p { font-size: 16px; margin-top: 20px; }

@media screen and (max-width: 1300px) {
}

@media screen and (max-width: 600px) {
	#sec_meal { padding: 60px 0 50px; background-size: cover; background-position: -550px 100px;}
	#sec_meal .flex_col { display: flex; flex-wrap: wrap; }
	#sec_meal .flex_col img:nth-child(1) { width: 100%; }
	#sec_meal .flex_col img:nth-child(2),
	#sec_meal .flex_col img:nth-child(3) {width: calc(50% - 0.5px); }
	#sec_meal div[class^=sec_col] h3 { font-size: 26px; margin-bottom: 20px; }
	#sec_meal div[class^=sec_col] { margin-top: 60px;}

	#sec_meal .sec_col ul { flex-direction: column; }
	#sec_meal .sec_col ul li { width: 100%; }
	#sec_meal .sec_col ul li .photo .season { padding: 10px 15px; font-size: 18px; }
	#sec_meal .sec_col ul li .photo + p { margin-top: 5px; font-size: 14px; }

	#sec_meal .sec_col2 { margin: 0 auto; margin-bottom: 30px; }
	#sec_meal .sec_col2 .txt { width: 100%;}
	#sec_meal .sec_col2 img { position: static; width: 100%;}
	#sec_meal .sec_col2 .txt { padding: 30px 5%; min-height: auto;}
	#sec_meal .sec_col2 .txt h4{ font-size: 20px;}
	#sec_meal .sec_col2 .txt p { line-height: 1.8;}
	#sec_meal .sec_col2 .slick-dots { text-align: center; bottom: -25px; padding-right: 0; width: 100%; }
	#sec_meal .sec_col2 .detail { display: flex!important; flex-direction: column; height: 100%; }
	#sec_meal .sec_col2 .txt { background: none;}
	#sec_meal .sec_col2 .detail .photo { margin: auto 0 0 0; }

	#sec_meal .sec_col3 { margin-top: 0!important; padding-top: 60px;}
	#sec_meal .sec_col3 .photo { display: flex; flex-wrap: wrap; }
	#sec_meal .sec_col3 .photo div:nth-child(1) { width: 100%; }
	#sec_meal .sec_col3 .photo div:nth-child(2),
	#sec_meal .sec_col3 .photo div:nth-child(3) { width: calc(50% - 0.5px); }
}

/* ---------------------------------------------------
sec_room
------------------------------------------------------ */
#sec_room { background: #160e05; color: #fff; padding: 60px 0 120px; }
#sec_room .sec_slide { background-color: #fff;}
.sec_wrap #sec_room .flex_col + div { margin-top: 50px; }

#sec_room .box_tabs { margin-top: 105px; position: relative;}
#sec_room .box_tabs input[name="tab_item"] { display: none;}
#sec_room .box_tabs h3{ margin-bottom: 15px; font-size: 22px;}
#sec_room .box_tabs h3:nth-of-type(2){ padding-top: 30px;}

#sec_room .box_tabs .tab_item {
	display: block; width: 340px; padding: 15px 20px;
	color: #fff; font-size: 17px; line-height: 1.3; border-bottom: 1px solid #7f7f7f;
	transition: all 0.2s ease; box-sizing: border-box; cursor: pointer; position: relative;
}
#sec_room .box_tabs .tab_item span{ display: block; margin: 7px 0 0 0; font-size: 13px; line-height: 1.5; letter-spacing: 0; }
#sec_room .box_tabs .tab_item:hover { color: #222; background-color: #f6eed9; border-bottom: 1px solid #7f7f7f; }
#sec_room .box_tabs input:checked + .tab_item { color: #222; background-color: #f6eed9; border-bottom: 1px solid #7f7f7f;}

#sec_room .box_tabs .tab_content {
	visibility: hidden; clear: both; overflow: hidden;
	width: 720px; position: absolute; top: 0; right: 0;
}
#sec_room .box_tabs .tab_content .photo_area{ position: relative;}
#sec_room .box_tabs .tab_content p:not(.plan_link, .name) { padding: 15px 0 0; font-size: 15px; line-height: 1.8;}
#sec_room .box_tabs .name { display: none;}
#sec_room .box_tabs .plan_link{ margin-top: 65px; text-align: right;}
#sec_room .box_tabs .plan_link a{
	display: inline-block; padding: 22px 85px;
	color: #fff; font-size: 16px; line-height: 1;
	background: #e19797; transition: background-color .5s, color .5s;
}
#sec_room .box_tabs .plan_link a:hover{ background: #cd7d7d; text-decoration: none;}
@media screen and (min-width: 601px) {
	#sec_room .box_tabs #tab01:checked ~ #tab01_content,
	#sec_room .box_tabs #tab02:checked ~ #tab02_content,
	#sec_room .box_tabs #tab03:checked ~ #tab03_content,
	#sec_room .box_tabs #tab04:checked ~ #tab04_content,
	#sec_room .box_tabs #tab05:checked ~ #tab05_content,
	#sec_room .box_tabs #tab06:checked ~ #tab06_content{ /*display: block;*/ visibility: visible;}
}
@media (hover: hover) {
	#sec_room .sec_col .inner_md ul li:hover img { transform: scale(1.05);}
	#sec_room .sec_col .inner_md ul li:hover img { opacity: .75;}
}
@media screen and (max-width: 600px) {
	#sec_room { padding: 60px 0 50px; }
	.sec_wrap #sec_room .flex_col + div { margin-top: 30px; }

	#sec_room .box_tabs { margin-top: 50px; display: flex; flex-wrap: wrap; justify-content: space-between; }
	#sec_room .box_tabs h3{ width: 100%; margin-bottom: 10px;}
	#sec_room .box_tabs h3:nth-of-type(2){ clear: both; padding-top: 35px;}
	#sec_room .box_tabs .tab_content {
		display: block; visibility: visible;
		width: 100%; margin: 0; position: static; padding: 20px 10px; border-bottom: 1px solid #7f7f7f;
	}
	#sec_room .box_tabs .name { display: flex; align-items: center; justify-content: space-between; font-size: 17px; line-height: 1.5;}
	#sec_room .box_tabs .name span span { display: block; font-size: 13px; margin: 5px 0 0 0; }
	#sec_room .box_tabs .name + div { margin: 20px 0; }
	#sec_room .box_tabs .plan_link{ text-align: center; margin-top: 30px; }
	#sec_room .box_tabs .plan_link a { padding: 15px; width: 100%; text-align: center; line-height: 1.6; box-sizing: border-box;}

	#sec_room .box_tabs .name .icon { display: flex; flex-direction: column; flex-grow: 0; flex-shrink: 0; align-items: center; justify-content: center; width: 16px; margin: 0 0 0 15px; transition: transform 0.5s; }
	#sec_room .box_tabs .name .icon::before,
	#sec_room .box_tabs .name .icon::after { width: 16px; height: 2px; content: ""; background: #aeaeae; transition: opacity 0.5s; }
	#sec_room .box_tabs .name .icon::after { margin: -2px 0 0; transform: rotate(90deg); }
	#sec_room .box_tabs .name.active .icon { transform: rotate(90deg); }
	#sec_room .box_tabs .name.active .icon::before { opacity: 0; }
}

/* ---------------------------------------------------
sec_spa
------------------------------------------------------ */
#sec_spa { padding: 100px 0 120px; }

@media screen and (max-width: 600px) {
	#sec_spa { padding: 50px 0; }
}

/* ---------------------------------------------------
sec_access
------------------------------------------------------ */
#sec_access { padding: 100px 0 110px; background-color: #160e05; color: #fff; }
#sec_access .gmap { width: 100%; position: relative; overflow: hidden; padding-bottom: 650px; }
#sec_access .gmap iframe { width: 100%; height: 100%; position: absolute; top: 0; left: 0; filter: grayscale(50%); }
#sec_access h2 { margin: 0 0 50px; text-align: center; }
#sec_access h2 .font_en { display: block; font-size: 60px; color: #d6c6a4; }
#sec_access h3 { margin: 0 0 50px; text-align: center; font-size: 30px; line-height: 1; }
#sec_access h3 img { display: block; margin: 0 auto 25px;}
#sec_access h3 .font_en { display: block; }
#sec_access h3 + p { padding: 0 0 40px; text-align: center; line-height: 2; }
#sec_access .sec_col { padding: 90px 0 0; }
#sec_access .sec_col + .sec_col { padding-top: 75px; margin-top: 120px; border-top: 1px solid #8a8682; }
#sec_access .sec_col > ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 60px 70px; }
#sec_access #sec_car.sec_col > ul { width: 750px; }
#sec_access #sec_bus.sec_col > ul { gap: 50px; }
#sec_access .sec_col > ul li { width: 320px; max-width: 100%; display: flex; flex-direction: column; }
#sec_access .sec_col > ul li p { padding: 0 0 15px; font-size: 18px; text-align: center;}
#sec_access .sec_col > ul li p + p { font-size: 15px; text-align: left; margin-top: auto; }
#sec_access .sec_col > ul a { display: block; width: 100%; background-color: #fff; text-align: center; font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro W3","Hiragino Kaku GothicPro","Osaka","Verdana","Helvetica","Arial","ＭＳ Ｐゴシック", sans-serif; transition: all .5s;}
#sec_access .sec_col > ul a span { display: table; margin: 0 auto; padding: 19px 32px 19px 0; background: url(../img/common/map_arrow.svg)no-repeat right center; background-size: 20px 27px;}
#sec_access .sec_col > ul .tab span { background: url(../img/common/icon_arrow.svg)no-repeat right center; background-size: 13px; background-color: #fff;}

@media screen and (hover: hover) {
	#sec_access .sec_col > ul a:hover { opacity: .5;}
}

@media screen and (max-width: 600px) {
	#sec_access { padding: 50px 0;}
	#sec_access h2 { margin: 0 0 30px; }
	#sec_access h2 .font_en { font-size: 40px; }
	#sec_access .gmap { padding-bottom: 50vh; }
	#sec_access h3 { margin: 0 0 30px; font-size: 26px; }
	#sec_access h3 img { width: 26px; margin: 0 auto 15px; }
	#sec_access #sec_airplane h3 img { width: 50px; }
	#sec_access h3 + p { padding: 0 5% 40px; font-size: 14px; text-align: left;}
	#sec_access .sec_col + .sec_col { padding-top: 55px; margin-top: 65px; }
	#sec_access .sec_col > ul { display: block;}
	#sec_access .sec_col > ul li { margin: 0 auto 30px; display: block;; }
	#sec_access .sec_col > ul li p { padding: 0 0 10px; font-size: 15px; margin: 0; }
	#sec_access .sec_col > ul li p + p { font-size: 13px; }
	#sec_access .sec_col > ul a { margin: 0 auto;}
}


/* ---------------------------------------------------
sec_info
------------------------------------------------------ */
#sec_info { padding: 90px 0 135px; }
#sec_info h2 { font-size: 15px; color: #fff; text-align: center; margin-bottom: 70px; }
#sec_info h2 .font_en { display: block; font-size: 60px; letter-spacing: 0.1em; color: #e7dcc5; }
#sec_info dl { display: flex; border-bottom: 1px solid #ada29d; line-height: 2;}
#sec_info dl dt { display: flex; align-items: center; width: 280px; padding: 25px 50px; background-color: rgba(214, 198, 164, 0.1); box-sizing: border-box;}
#sec_info dl dd { width: calc(100% - 265px); padding: 25px 60px; box-sizing: border-box;}
#sec_info dl dd li { padding-left: calc(0.6em * 1.05); text-indent: calc(-0.6em * 1.05);}
#sec_info dl dd li.list { margin: 20px 0 0;}
#sec_info dl dd li::before { content: "▪︎";}
#sec_info dl dd p.detail { padding-left: .5em; text-indent: -.5em;}
#sec_info dl dd p.detail::before { content: "*";}
#sec_info dl dd a { border-bottom: 1px solid #222;}

@media screen and (hover: hover) {
	#sec_info dl dd a:hover { border-bottom: none;}
}

@media screen and (max-width: 600px) {
	#sec_info { padding: 50px 0 70px;}
	#sec_info h2 { margin-bottom: 40px;}
	#sec_info h2 .font_en { font-size: 36px; letter-spacing: 0.05em; }
	#sec_info .info_list { display: block; margin: 25px auto 50px;}
	#sec_info dl { display: block; line-height: 1.5; }
	#sec_info dl dt,
	#sec_info dl dd { width: 100%; padding: 20px 5%;}
	#sec_info dl dd { display: block;}
	#sec_info dl dd li:not(:first-child),
	#sec_info dl dd p.detail { margin-top: calc(1em * 0.5); }
}
