@charset "utf-8";
/* ===================================================
	Base CSS
====================================================== */
body {
	min-width: 1200px; min-height: 100vh; background: #fff; color: #414141;
	font-size: 18px; font-weight: normal; line-height: 1.8;
	font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif;
	-webkit-text-size-adjust: 100%; position: relative;

	font-feature-settings: "palt"; letter-spacing: 0.03em;

}

/* sorts-mill-goudy-regular - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Sorts Mill Goudy';
	font-style: normal;
	font-display: swap;
	font-weight: 400;
	src: url('../fonts/sorts-mill-goudy-v16-latin-regular.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* sorts-mill-goudy-italic - latin */
@font-face {
	font-display: swap;
	/* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Sorts Mill Goudy';
	font-style: italic;
	font-display: swap;
	font-weight: 400;
	src: url('../fonts/sorts-mill-goudy-v16-latin-italic.woff2') format('woff2');
	/* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

.font_en { font-family: 'Sorts Mill Goudy'; font-style: italic;}
.ui-widget.ui-widget-content { z-index: 9 !important;}

input,
select,
textarea { font-size: 18px;}

div { box-sizing: border-box;}

a {
	color: #414141;
	text-decoration: none;
	outline: none;
	transition: opacity 0.5s;
}

.btn_reserve {
	position: relative;
	display: inline-block;
	color: #fff;
	background-image: linear-gradient(90deg, rgba(168, 132, 143, 1), rgba(152, 110, 122, 1));
	overflow: hidden;
	font-style: italic;
	text-align: center;
}

.btn_reserve::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: linear-gradient(90deg, rgba(153, 114, 126, 1), rgba(135, 94, 105, 1));
	opacity: 0;
	transition: opacity 0.5s ease;
}

.btn_dayplan {
	position: relative;
	display: inline-block;
	color: #fff;
	background-image: linear-gradient(90deg, rgba(133, 117, 114, 1), rgba(108, 92, 89, 1));
	overflow: hidden;
	font-style: italic;
	text-align: center;
}

.btn_dayplan::before {
	content: "";
	position: absolute;
	inset: 0;
	background-image: linear-gradient(90deg, rgba(117, 100, 96, 1), rgba(91, 74, 71, 1));
	opacity: 0;
	transition: opacity 0.5s ease;
}

.btn_reserve span,
.btn_dayplan span {
	position: relative;
	z-index: 1;
}

.flex_col { display: flex; justify-content: space-between;}

.link_line {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 1em;
	padding-bottom: 24px;
	color: #414141;
	text-decoration: none;
	line-height: 1.5;
}

.link_line::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background: #cfcfcf;
}

.link_line::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 16px;
	height: 1px;
	background: #2f2f2f;
	transition: width 0.6s ease;
}

.link_line2 {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 1em;
	padding-bottom: 24px;
	color: #414141;
	text-decoration: none;
	line-height: 1.5;
}

.link_line2::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1px;
	background: rgba(255,255,255,0.15);
}

.link_line2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 16px;
	height: 1px;
	background: #fff;
	transition: width 0.6s ease;
}

@media screen and (hover: hover) and (min-width: 601px) {

	a:hover,
	button:hover {
		opacity: 0.6;
	}

	.btn_dayplan:hover,
	.btn_reserve:hover { opacity: 1;}

	.btn_dayplan:hover::before,
	.btn_reserve:hover::before {
		opacity: 1;
	}

		.link_line:hover::after,
		.link_line2:hover::after {
			width: 100%;
		}

}

/* a:hover { color: #555; text-decoration: underline;}
a:hover img { opacity: 0.75;} */

#lineup-font-size-sampler { bottom: 0; left: 0;}
/* .fixed { width: 100%; min-width: 1100px; position: fixed; top:0; left: 0; z-index: 999;} */
iframe[name="google_conversion_frame"] { position: absolute; bottom: 0; left: 0;}

.ofi { object-fit: cover; width: 100%; height: 100%;}
.view_sp { display: none;}

@media screen and (max-width: 600px) {
	body,
	input,
	select,
	textarea { font-size: 16px;}

	body { min-width: 0; font-size: 16px;}
	.view_sp { display: block;}
	.view_pc { display: none !important;}

	.flex_col { display: block;}
}


/* ---------------------------------------------------
	Base Layout
------------------------------------------------------ */
/* コンテンツ幅 */
.inner_lg {
	width: 1400px;
	max-width: 85%;
	margin: 0 auto;
}

.inner_md {
	width: 1200px;
	max-width: 85%;
	margin: 0 auto;
}

.inner_sm {
	width: 1000px;
	max-width: 85%;
	margin: 0 auto;
}

@media screen and (max-width: 600px) {
	.inner_lg,
	.inner_md,
	.inner_sm {
		max-width: 90%;
	}
}


/* ---------------------------------------------------
	Header
------------------------------------------------------ */

@keyframes fade_nav {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

#g_header {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 999;
	width: 100%;
	min-width: 1200px;
	animation: fade_nav ease-in-out 0.7s;
	padding: 20px 0 10px 48px;
	border-bottom: 1px solid rgba( 255,255,255,0.5);
	box-sizing: border-box;
}

/* #g_header::after {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 200px;
	content: "";
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 70%, rgba(0, 0, 0, 0) 100%);
} */

.header_shadow {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 200px;
	z-index: 998;
	pointer-events: none;

	background: linear-gradient(to bottom,
			rgba(0, 0, 0, 0.7) 0%,
			rgba(0, 0, 0, 0) 70%);
}

@keyframes fix_opacity {
	0% {
		opacity: 0;
	}

	100% {
		opacity: 1;
	}
}

@keyframes close_nav {
	0% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

#g_header.scroll {
	animation: fix_opacity 0.7s both;
	padding: 0 0 0 48px;
	background: #fff;
}

#g_header.scroll::after {
	content: none;
}

#g_header.close_nav {
	animation: close_nav 0.7s both;
}

#g_header .hd_inner {
	display: flex;
	align-items: center;
	height: 70px;
	padding: 0 100px 0 0;
	font-size: 15px;
	transition: opacity 0.5s;
}

#g_header .hd_inner .fixed {
	display: none;
}

#g_header.scroll .hd_inner {
	background: #fff;
}

#g_header.scroll .hd_inner .fixed {
	display: block;
}

#g_header.scroll .hd_inner .unfixed {
	display: none;
}

#g_header.menu_active .hd_inner {
	opacity: 0;
}

#g_header>.btn_menu {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 110;
	width: 100px;
	height: 100px;
	border: none;
	border-left: 1px solid rgba( 255,255,255,0.5);
	background: inherit;
}

#g_header>.btn_menu .icon {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
}

#g_header>.btn_menu .icon span {
	width: 33px;
	height: 1px;
	background: #fff;
	transition: opacity 0.5s, transform 0.5s;
}

#g_header>.btn_menu .icon span+span {
	margin: 7px 0 0;
}

#g_header.menu_active>.btn_menu .icon span:first-of-type {
	transform: rotate(45deg);
}

#g_header.menu_active>.btn_menu .icon span:last-of-type {
	transform: rotate(-45deg);
}

#g_header.menu_active>.btn_menu .icon span+span {
	margin-top: -1px;
}


#g_header .hd_nav { display: flex; margin: 0 0 0 auto;}
#g_header .hd_nav li { margin: 0 30px 0 0;}
#g_header .hd_nav a { position: relative; color: #fff; padding: 5px 0; opacity: .6; font-size: 15px;}
#g_header .hd_nav a::after {
	position: absolute;
	right: 50%;
	bottom: 0;
	left: 50%;
	height: 1px;
	content: "";
	background: rgba(255, 255, 255, 0.6);
	transition: right 0.5s, left 0.5s;
}

#g_header .gtranslate_wrapper {
    position: relative;
    margin: 0 30px 0 0;
}

#g_header .gtranslate_wrapper::after {
    content: "▼";
    position: absolute;
    left: 0;
    top: 55%;
    transform: translateY(-50%);
    color: #808080;
    pointer-events: none;
    font-size: 10px;
}

#g_header .gtranslate_wrapper select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background: inherit;
    border: none;
    color: #fff;
    font-family: "MS Pゴシック", sans-serif;
    font-size: 14px;
    padding-left: 16px;
}

#g_header .gtranslate_wrapper select option {
    color: #808080;
}

#g_header.scroll .gtranslate_wrapper select { color: #808080;}


#g_header.scroll .hd_nav a { color: #414141;}

#g_header.scroll>.btn_menu .icon span { background-color: #000; opacity: .3;}
#g_header.scroll> .hd_nav a::after { background: rgba( 255,255,255,0.3);}
#g_header.scroll .hd_nav a::after { background: #414141;}
#g_header.scroll>.btn_menu { width: 100px; height: 71px; border-left: 1px solid rgba(0, 0, 0, 0.3);}
#g_header.menu_active>.btn_menu .icon span { background: rgba(0, 0, 0, 0.3);}
#g_header.scroll.menu_active>.btn_menu .icon span { background: #000;}


@media screen and (hover: hover) and (min-width: 601px) {
	#g_header .hd_nav a:hover::after {
		right: 0;
		left: 0;
	}

	#g_header .hd_btns a:hover {
		background: #598d52;
		opacity: 1;
	}

		#g_header>.btn_menu { opacity: 1;}
}

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

	#g_header { min-width: inherit; padding: 6px 0 6px 24px;}
	#g_header .hd_inner { height: 45px; padding: 0 65px 0 0;}
	#hd_h1 { width: 73px;}
	#g_header>.btn_menu { width: 60px; height: 57px;}
	#g_header>.btn_menu .icon span { width: 20px;}
	#g_header>.btn_menu .icon span+span { margin: 3px 0 0;}
	#g_header.scroll>.btn_menu { width: 60px; height: 57px;}
	#g_header .hd_h1 { width: 50px;} 
	#g_header .gtranslate_wrapper { margin: 0 0 0 auto;}

	#g_header.scroll { padding: 6px 0 6px 24px;}
}


/* ---------------------------------------------------
	G-nav
------------------------------------------------------ */

/* ▼ jquery-dropdown 用のcss設定です ▼
	.pos_fix はjsで自動的に追加される要素です。
	別にgnavを囲むwrapper等を使用する場合はid名が被らないようにしてください。
*/
.pos_fix {
	overflow: hidden;
}

/* ▲ jquery-dropdown 用のcss設定です ▲ */
#g_nav {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 100;
	width: 100%;
	height: 100%;
	overflow: auto;
	pointer-events: none;
	opacity: 0;
	transition: opacity 0.5s;
}

#g_nav::before {
	position: fixed;
	top: 0;
	right: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	content: "";
	background: rgba(0, 0, 0, 0.3);
}

#g_header.menu_active #g_nav {
	pointer-events: auto;
	opacity: 1;
}

#g_nav .inner {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	position: relative;
	z-index: 0;
	width: 800px;
	min-height: 100vh;
	padding: 80px 0 0;
	margin: 0 0 0 auto;
	background: #fff;
}

#g_nav .inner .nav_col { padding: 0 115px;}
#g_nav .sub_nav { display: flex; justify-content: space-between; padding: 50px 60px 40px 45px; background-color: #f2f2f2; align-items: center;}
#g_nav .sub_nav ul:nth-of-type(1) { display: flex; flex-wrap: wrap; width: 70%;}
#g_nav .sub_nav ul:nth-of-type(1) li { margin-right: 30px;}
#g_nav .sub_nav ul:nth-of-type(1) a { opacity: .6;}
#g_nav .sub_nav ul:nth-of-type(2) { display: flex;}
#g_nav .sub_nav ul:nth-of-type(2) li:nth-of-type(1) { margin-right: 20px;}

#g_nav .logo {
	margin: 25px 0;
	text-align: center;
}

#g_nav .main_nav {
	display: flex;
	justify-content: space-between;
	padding: 0 0 30px;
}

#g_nav .main_nav ul { width: 48%;}
#g_nav .main_nav ul li { padding: 17px 0; border-bottom: 1px solid #d9d9d9; font-size: 20px;}
#g_nav .reserve_links { display: flex; flex-wrap: wrap; justify-content: space-between;}
#g_nav .reserve_links li { width: 48.6%;}
#g_nav .reserve_links li:nth-of-type(1) { width: 100%; margin-bottom: 3%}
#g_nav .reserve_links li:nth-of-type(2) a { width: 100%; text-align: center; font-style: italic; font-size: 18px; display: block;}
#g_nav .reserve_links .btn_reserve { font-size: 18px; padding: 22px 0;}
#g_nav .reserve_links li:nth-of-type(2) a { width: 100%; text-align: center; font-style: italic; font-size: 18px; display: block;}
#g_nav .reserve_links .btn_dayplan { font-size: 18px; padding: 22px 0;}
#g_nav .reserve_links li:nth-of-type(3) a { width: 100%; text-align: center; font-style: italic; font-size: 18px; display: block;}
#g_nav .btn_present {  display: block; padding: 11px 0; background-color: #eee4e7; color: #a8848e; font-style: italic; font-size: 16px; text-align: center; line-height: 1.4 ;}
#g_nav .btn_present >span { display: block; font-size: 18px;}
#g_nav .btn_present >span span { font-size: 26px;}

#g_nav .nav_contact >a { font-size: 18px;  opacity: .6; border-bottom: 1px solid #414141;}

#g_nav .main_nav a {
	color: rgba(35, 35, 35, 0.7);
	display: block;
}
#g_nav .nav_contact { margin: 10px 0 70px;}
#g_nav .nav_contact .tel-link {
	opacity: .6;
	font-style: italic;
	font-size: 17px;
}

#g_nav .nav_contact .tel-link span {
	font-size: 26px;
}

#g_nav .nav_contact .tel-link .view_sp2 { display: none;}

@media screen and (hover: hover) and (min-width: 601px) {

	#g_nav .nav_contact>a:hover { border-bottom: none;}
	
}

@media screen and (max-width: 600px) {
	/* ▼ jquery-dropdown 用のcss設定です ▼
		#menuOuter,#menuInner,.pos_fix はjsで自動的に追加される要素です。
		別にgnavを囲むwrapper等を使用する場合はid名が被らないようにしてください。
	*/
	/* html,body 固定用クラス ※iphoneでは効きません。 */
	.pos_fix { overflow: hidden; /* メニューボタンがfixedじゃない場合は右記を追記 position: fixed; top: 0; width: 100%; */}
	/* gnav外側に追加する要素 画面全体を覆います。 */
	.pos_fix #g_header.scroll>.btn_menu { border-left: 1px solid #fff;}
	/* #g_header.scroll>.btn_menu { width: 82px; height: 82px;} */
	#g_nav .inner { width: 100%; padding: padding: 70px 0 0;}
	#g_nav .inner .nav_col { padding: 0 10%;}
	#g_nav .logo { position: absolute; top: -10px; left: 24px; width: 50px;}
	#g_nav .main_nav { display: block;}
	#g_nav .main_nav ul { width: 100%;}
	#g_nav .main_nav ul:nth-of-type(1) { border-top: 1px solid #d9d9d9;}
	#g_nav .main_nav ul li { font-size: 14px; padding: 10px 0;}

	#g_nav .btn_present { font-size: 12px;}
	#g_nav .btn_present>span { font-size: 14px;}
	#g_nav .btn_present>span span { font-size: 20px;}
	#g_nav .reserve_links li:nth-of-type(2) a,
	#g_nav .reserve_links li:nth-of-type(3) a { font-size: 16px; padding: 14px 0;}
	#g_nav .nav_contact { margin: 10px 0 40px;}
	#g_nav .nav_contact>a { font-size: 14px;}
	#g_nav .nav_contact .tel-link { display: block; font-size: 14px;
		line-height: 1.6em; padding: 15px 0 0;}

	#g_nav .sub_nav { display: block; padding: 30px 10%; font-size: 14px;}
	#g_nav .sub_nav ul:nth-of-type(1) { width: 100%; margin-bottom: 10px;}
	#g_nav .sub_nav ul:nth-of-type(2) { justify-content: end;}
	#g_nav .sub_nav ul:nth-of-type(2) li:nth-of-type(1) { margin-right: 10px;}
}

@media screen and (max-width: 500px) {
	#g_nav .nav_contact .tel-link .view_sp2 { display: inline;}
}

@media screen and (max-width: 400px) {
	#g_nav .reserve_links li { width: 100%;}
	#g_nav .reserve_links li:last-of-type { margin: 10px 0 0;}
}


/* ---------------------------------------------------
	open-barrier-modal
------------------------------------------------------ */

#barrier-modal {
	position: fixed;
	align-items: center;
	opacity: 0;
	display: flex;
	transition: opacity 0.3s ease, visibility 0.3s ease;
	z-index: 99999;
	pointer-events: none;
}

#barrier-modal.visible {
	opacity: 1;
	pointer-events: auto;
	background-color: rgba(0, 0, 0, 0.5);
}

#barrier-modal .modal-content {
	position: relative;
	width: 100%;
	margin: 0 auto;
	background: #fff;
}

#modal-title {
	margin-bottom: 40px;
	font-size: 24px;
	text-align: center;
	font-weight: bold;
}

#modal-title h2 img {
	display: block;
	margin: 0 auto;
}

#modal-title h2 { 
	font-size: 36px;
	font-style: italic;
	opacity: .6;
	margin: 70px 0 0;
}

#modal-title .en {
	letter-spacing: 0.08em;
	font-size: 12px;
	opacity: 0.5;
}

.modal-body p:nth-of-type(1) {
	text-align: center;
	font-size: 16px;
	opacity: .6;
	margin: 0 0 40px;
}

.modal-body img {
	display: block;
	margin: 0 auto;
}

.modal-body p.note {
	margin: 25px 0 50px;
	text-align: center;
	font-size: 14px; 
}

.modal-body ul { 
	font-size: 14px; 
	opacity: .6;
}
.modal-body li {
		padding-left: 1em;
		text-indent: -1em;
}
.modal-body li::before { content: "※";}


#barrier-modal .close-btn {
	display: block;
	width: 200px;
	height: 40px;
	margin: 40px auto 0;
	border: 1px solid #aaa;
	background: none;
	transition: background-color 0.5s, border-color 0.5s;
	color: #000;
}

#barrier-modal .close-btn:hover {
	border-color: #000;
	background-color: #ddd;
}
#barrier-modal .close-btn.ver2 {
	position: absolute;
	z-index: 1;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	top: 0;
	right: 4%;
	background: rgba(0, 0, 0, 0.05);
	border: none;
	cursor: pointer;
}

#barrier-modal .close-btn.ver2::before,
#barrier-modal .close-btn.ver2::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 18px;
	height: 1px;
	background: #666;
	transform-origin: center;
}

#barrier-modal .close-btn.ver2::before {
	transform: translate(-50%, -50%) rotate(45deg);
}

#barrier-modal .close-btn.ver2::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

@media screen and (min-width: 601px) {


	#barrier-modal {
		inset: 0;
	}

	#barrier-modal .modal-content {
		width: min(90%, 700px);
		padding: 50px 4% 90px;
		outline-offset: -10px;
		box-shadow: 0 4px 8px -3px rgba(0, 0, 0, 0.5);
	}
}

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

	#barrier-modal {
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: #fff;
		box-shadow: 0 4px 8px -3px rgba(0, 0, 0, 0.5);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}

	#barrier-modal.visible {
		display: block;
	}

	#barrier-modal .modal-content {
		padding: 50px 5%;
		outline-offset: -10px;
	}

	#barrier-modal .close-btn.ver2 {
		top: 0;
		right: 5%;
		width: 30px;
		height: 30px;
	}

	#modal-title h2 {
		margin: 50px 0 0;
		font-size: 26px;
		line-height: 1.2;
	}
	#modal-title h2 img {
		margin: 0 auto 20px;
	}
	#modal-title { 
		margin-bottom: 20px;
	}
	.modal-body p:nth-of-type(1) { 
		margin-bottom: 20px;
		text-align: left;
	}
	.modal-body p.note {
		margin: 10px 0 30px; 
		text-align: left;
	}
}


/* ---------------------------------------------------
	Main img
------------------------------------------------------ */
.page_cont #main_img { position: relative; width: 100%; z-index: 8;}
.page_cont #main_img img { width: 100%; height: 980px;}
.page_cont #main_img .main_txt { position: absolute; width: 85%; margin: 0 auto; left: 0; right: 0; bottom: 40px; z-index: 2;}
.page_cont #main_img::after {
	position: absolute;
	content: "";
	bottom: 0;
	width: 100%;
	height: 600px;
	display: block;
	z-index: 1;
	background: linear-gradient(
		to bottom,
		rgba(0, 0, 0, 0) 30%,
		rgba(0, 0, 0, 0.45) 72%,
		rgba(0, 0, 0, 0.72) 100%
	);

	transition: opacity 0.5s;
}

.page_cont #main_img .flex_col { align-items: end;}
.page_cont #main_img .flex_col > div { margin: 0 0 50px; color: #fff; font-style: italic; font-size: 18px;}
.page_cont #main_img .flex_col div h1,
.page_cont #main_img .flex_col div .cap_txt { font-size: 55px; line-height: 1.5;}
.page_cont #main_img .flex_col div h1+p,
.page_cont #main_img .flex_col div .cap_txt+p { color: rgba(255,255,255,.8);}
.page_cont #main_img .reserve_fixed { position: fixed; right: 50px; bottom: 50px; display: flex; justify-content: space-between; width: 500px; z-index: 10;}
.page_cont #main_img .reserve_fixed li { width: 49%;}
.page_cont #main_img .reserve_fixed li a { width: 100%; padding: 16px 0; border-bottom: 1px solid rgba(255,255,255,.5);}
.page_cont #main_img .reserve_fixed li a span { font-size: 18px;}

@media screen and (max-width: 600px) {
	.page_cont #main_img::after { background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.5) 75%, rgba(0, 0, 0, 0.7) 100%); height: 100%;}
	.page_cont #main_img img { height: 100svh;}
	.page_cont #main_img .main_txt { width: 90%;}
	.page_cont #main_img .flex_col > div { margin: 0 0 70px; font-size: 15px;}
	.page_cont #main_img .flex_col div h1,
	.page_cont #main_img .flex_col div .cap_txt { font-size: 30px; padding: 0 0 10px;}
	.page_cont #main_img .flex_col div h1+p br,
	.page_cont #main_img .flex_col div .cap_txt+p br { display: none;}

	.page_cont #main_img .reserve_fixed { width: 90%; bottom: 20px; left: 5%;}
	.page_cont #main_img .reserve_fixed li { width: 50%; line-height: 0; font-size: 0;}
	.page_cont #main_img .reserve_fixed li:first-of-type { border-right: 1px solid #ccb7bd;}
	.page_cont #main_img .reserve_fixed li:first-of-type a { border-radius: 6px 0 0 6px;}
	.page_cont #main_img .reserve_fixed li:last-of-type a { border-radius: 0 6px 6px 0;}
	.page_cont #main_img .reserve_fixed li a { border-bottom: none;}
	.page_cont #main_img .reserve_fixed li a span { font-size: 14px; line-height: 1.5;}
}


/* ---------------------------------------------------
	Contents
------------------------------------------------------ */
/* #contents_wrap { clear: both; padding: 5px 0 55px; flex-grow: 1;} */

@media screen and (max-width: 600px) {
	/* #contents_wrap { width: 92%; padding: 25px 0 55px;} */
}


/* breadcrumb */
#contents_wrap #breadcrumb { margin: 5px auto 25px; width: 90%; font-size: 16px; text-align: left; color: rgba( 65,65,65,0.6);}
#contents_wrap #breadcrumb li a { color: rgba(65, 65, 65, 0.6);}
#contents_wrap #breadcrumb li { display: inline-block; line-height: 1.6;}
#contents_wrap #breadcrumb li:before { content: '－'; margin: 0 5px;}
#contents_wrap #breadcrumb li:first-child:before { display: none;}


@media screen and (max-width: 600px) {
	#contents_wrap #breadcrumb { font-size: 14px;}
}


/* section */
/* #contents_wrap section { margin: 0 auto 25px;} */


/* ---------------------------------------------------
	Footer
------------------------------------------------------ */

#f_reserve { padding: 160px 0 110px; background: url(../img/f_photo.jpg); background-size: cover; color: #fff;}
#f_reserve p { opacity: .6;}
#f_reserve .f_tit { font-size: 40px; font-style: italic; text-align: center;}
#f_reserve p.price { display: table; margin: 0 auto; font-size: 22px; font-style: italic; border-bottom: 1px solid #fff;}
#f_reserve p.price span { font-size: 34px;}
#f_reserve p.price+p { margin: 20px 0 50px; text-align: center; font-size: 16px;}
#f_reserve p.price+p a { color: #fff; border-bottom: 1px solid #fff;}
#f_reserve .f_reserve_list { display: flex; justify-content: space-between;}
#f_reserve .f_reserve_list li { width: 49%;}
#f_reserve .f_reserve_list li a { display: block; padding: 43px 0; font-size: 24px; font-style: italic; text-align: center; color: #fff; background-color: rgba(255,255,255,0.15); border-bottom: 1px solid rgba(255, 255, 255, 0.3);}
#f_reserve .f_reserve_list li a span { opacity: .6;}
#f_reserve .f_reserve_list+a { display: table; margin: 30px auto 55px; color: #fff; opacity: .6; border-bottom: 1px solid #fff; font-size: 16px;}
#f_reserve .f_reserve_lang { display: flex; justify-content: space-between;}
#f_reserve .f_reserve_lang li { width: 31%;}
#f_reserve .f_reserve_lang li a { display: block; padding: 17px 0; font-size: 16px; font-style: italic; text-align: center; color: #fff; background-color: rgba(0,0,0,0.2); border: 1px solid rgba(255, 255, 255, 0.2);}
#f_reserve .f_reserve_lang li a >span { opacity: .6;}
#f_reserve .f_reserve_lang li a >span span { display: block; font-size: 14px;}

.f_flex { background-color: #000; color: rgba( 255,255,255,0.6); padding: 125px 0 75px; font-size: 16px;}
.f_flex #f_logo { display: flex; justify-content: space-between; align-items: flex-end; border-bottom: 1px solid #262626; padding: 0 0 27px;}
.f_flex #f_logo img { opacity: .7;}
.f_flex #f_logo p { font-size: 14px;}
.f_flex #f_logo p .tel-link span { font-size: 20px;}

#f_cont { display: flex; padding: 50px 0 60px; border-bottom: 1px solid #262626; justify-content: space-between;}
#f_cont address a {
	line-height: 0;
	display: table;
	margin: 0 0 30px;
}

#f_nav .acc_tit { display: none;}
#fnav { display: flex; justify-content: space-between; width: 580px;}
#fnav li { margin-bottom: 10px;}
#fnav li.no_link { color: #fff; opacity: .3;}
#fnav li a { color: #fff; opacity: .6;}

#f_sns { padding: 15px 0 50px; display: flex; justify-content: space-between;}
#f_sns dl { display: flex;}
#f_sns dl dt { margin-right: 15px; font-size: 14px;}
#f_sns dl ul { display: flex;}
#f_sns dl ul li:nth-of-type(1) { margin-right: 15px;}
#f_sns > ul { display: flex;}
#f_sns>ul li:nth-of-type(1) { margin-right: 24px;}
#f_sns>ul li img { margin: 0 6px 0 0; vertical-align: middle;}

.f_flex #copyright { font-size: 10px;}

@media screen and (hover: hover) and (min-width: 601px) {
	#f_reserve p.price+p a:hover { border-bottom: none;}

	#fnav li a:hover { opacity: .3;}

}

@media screen and (max-width: 600px) {
	#f_reserve { padding: 80px 0 70px;}
	#f_reserve .f_tit { font-size: 26px;}
	#f_reserve p.price { margin: 30px auto 0; text-align: center; font-size: 18px; line-height: 1.5;}
	#f_reserve p.price span { font-size: 26px;}
	#f_reserve p.price+p { text-align: left;}
	#f_reserve .f_reserve_list { display: block;}
	#f_reserve .f_reserve_list li { width: 100%;}
	#f_reserve .f_reserve_list li:nth-of-type(1) { margin-bottom: 10px;}
	#f_reserve .f_reserve_list li a { padding: 15px 0; font-size: 16px;}
	#f_reserve .f_reserve_list+a { margin: 20px auto 40px; font-size: 14px;}
	#f_reserve .f_reserve_lang { display: block;}
	#f_reserve .f_reserve_lang li { width: 100%; margin-bottom: 10px;}
	#f_reserve .f_reserve_lang li a { line-height: 1.5;}

	.f_flex { padding: 100px 0;}
	.f_flex #f_logo { display: block; text-align: center;}
	.f_flex #f_logo p a { color: rgba(255, 255, 255, 0.6);}

	#f_cont { display: block; padding: 40px 0 0; border-bottom: none;}
	#f_nav .acc_tit { position: relative; display: block; text-align: center; margin: 30px 0 0; padding: 20px; border: 1px solid #333; color: #fff; font-size: 12px;}
	#f_nav .acc_tit:after { content: ''; width: 6px; height: 6px; margin: auto 0; position: absolute; top: 0; bottom: 0; right: 15px; border-bottom: 1px solid #fff; border-right: 1px solid #fff; transform: rotate(45deg); transition: transform 0.3s ease;}
	#f_nav .acc_tit.active:after { transform: rotate(-135deg);}
	#fnav { width: 100%; flex-wrap: wrap; margin: 20px 0 0 ; font-size: 14px;}
	#fnav ul { width: 50%;}

	#f_sns { flex-direction: column-reverse;}
	#f_sns dl { margin: 50px 0 0; justify-content: center;}
	#f_sns dl dt { display: none;}
}

@media screen and (max-width: 400px) {
	.f_flex #f_logo p a { display: table; margin: 0 auto;}
	.f_flex #f_logo p { margin: 10px 0 0; line-height: 1.6;}
}



/* ---------------------------------------------------
	clear
------------------------------------------------------ */


/* ---------------------------------------------------
	更新履歴
------------------------------------------------------

180228_〇〇_cssを更新したらここに更新履歴を追加していきます。多くなったら上の方は削除。
180205_kamiguchi_更新履歴コメントひな形追加
200828_akimoto_IEで游ゴシック体を使用すると謎の余白ができるバグがあるため、IEでのみfont-familyを変更する記述を追記
201029_maehata_bodyタグにfont-feature-settings: "palt";追加
201223_akimito_下記内容の修正
　・bodyのdisplay:flex;の削除。
　・iPhoneセーフエリアの対応記述。
　・object-fitのIE対応の記述およびjs追加。

------------------------------------------------------ */
