<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "utf-8";
/* ===================================================
	Base CSS
====================================================== */
:root {
	--color-accent: #856c34;
	--color-tit: #cbb481;
	--color-bg: #f5f5f5;
}

body {
	min-width: 1100px; background: #fff; color: #1a1a1a;
	font-size: 16px; font-weight: normal; line-height: 1.5;
	font-family: "Yu Mincho", YuMincho, serif;
	position: relative; letter-spacing: 0.04em;
	-webkit-text-size-adjust: 100%;
	/* font-feature-settings: 'palt'; */
}

header,
nav,
footer,
section,
h1,
h2,
h3,
h4,
h5,
div,
p,
ul,
ol,
li,
dl,
dt,
dd,
th,
td,
span,
em,
strong,
img,
a { box-sizing: border-box; }
a { color: #1a1a1a; text-decoration: none; transition: opacity 0.5s; }

#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;}

body.pos_fix { overflow: hidden; }
html.pos_fix { overflow: auto; scrollbar-gutter: stable; }
.inner_md { width: 1200px; max-width: 92%; margin: 0 auto; }
.inner_lg { width: 1400px; max-width: 92%; margin: 0 auto; }
.ofi { object-fit: cover; }
.sp { display: none;}

@media screen and (min-width: 601px) and (hover: hover) {
	a:hover { opacity: 0.7; }
}
@media screen and (max-width: 600px) {
	body { min-width: 0; }
	.sp { display: block;}
	.pc { display: none !important;}
	.inner_md,
	.inner_lg { max-width: 88%; }
}


/* ---------------------------------------------------
	Base Layout
------------------------------------------------------ */
section.bg {
	background-color: var(--color-bg);
}
.cmn_color {
	font-size: 32px;
	color: var(--color-accent);
}
@media screen and (max-width: 600px) {
	.cmn_color {
		font-size: 24px;
	}
}


/* ---------------------------------------------------
	Slider
------------------------------------------------------ */
/* .slick_arrow */
.slick .slick-prev,
.slick .slick-next {
	z-index: 1;
	opacity: 0.75;
	transition: opacity 0.3s;
}
.slick .slick-prev {
	left: 0;
}
.slick .slick-next {
	right: 0;
	transform: scale(-1, 1) translateY(-50%);
}
.slick .slick-prev,
.slick .slick-next,
.slick .slick-prev:before,
.slick .slick-next:before {
	content: '';
	display: block;
	width: 25px;
	height: 45px;
	background: url(../img/slick_arrow.svg)no-repeat center/contain;
}
/* circle arrow */
.ccl .slick-prev {
	left: -15px;
}
.ccl .slick-next {
	right: -15px;
	transform: scale(-1, 1) translateY(-50%);
}
.ccl .slick-prev,
.ccl .slick-next {
	opacity: 1;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background-color: #fff !important;
	z-index: 1;
}
.ccl .slick-prev::before,
.ccl .slick-next::before {
	content: '';
	display: block;
	width: 28px;
	height: 4px;
	margin: 0 auto;
	border-bottom: 1px solid var(--color-accent);
	border-left: 1.5px solid var(--color-accent);
	transform: skew(-55deg) translateX(3px);
	transition: transform 0.5s ease;
}

.slick .slick-dots {
	left: 0;
}
.slick .slick-dots li,
.slick .slick-dots li button,
.slick .slick-dots li button::before {
	width: 16px !important;
	height: 16px !important;
}
.slick .slick-dots li button::before {
	content: '';
	opacity: 1 !important;
	border-radius: 50%;
	transform: scale(0.5);
	color: transparent;
	background-color: #aaa;
	transition: transform 0.6s, background-color 0.5s;
}
.slick .slick-dots li.slick-active button::before {
	transform: scale(1);
	background-color: var(--color-accent);
}

@media screen and (hover: hover) and (min-width: 601px) {
	.ccl .slick-prev:hover::before,
	.ccl .slick-next:hover::before {
		transform: skew(-55deg) translateX(-5px);
	}
}
@media screen and (max-width: 600px) {
	.ccl .slick-prev,
	.ccl .slick-next {
		width: 45px;
		height: 45px;
	}
	.ccl .slick-prev {
		left: 0;
	}
	.ccl .slick-next {
		right: 0;
		transform: scale(-1, 1) translateY(-50%);
	}
	.ccl .slick-prev::before,
	.ccl .slick-next::before {
		width: 20px;
	}
	.slick .slick-dots li,
	.slick .slick-dots li button,
	.slick .slick-dots li button::before {
		width: 11px !important;
		height: 11px !important;
	}
}


/* ---------------------------------------------------
	Header
------------------------------------------------------ */
#g_header {
	position: relative;
	z-index: 2;
	background-color: #fff;
}
#g_header .hd_h1 a {
	color: var(--color-accent);
}
#g_header #hd_fix {
	position: fixed;
	top: 0;
	left: 0;
	min-width: 1100px;

	z-index: 11;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	height: 90px;
	background-color: #fff;
}
#g_header .lang {
	width: 310px;
	padding: 30px;
}
#g_header .lang a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	column-gap: 10px;
	width: 120px;
	padding: 2px;
	border: 1px solid #aaa;
	transition: background-color 0.5s, opacity 0.5s;
}
#g_header .lang a::before {
	content: '';
	display: block;
	width: 20px;
	height: 20px;
	margin-left: -10px;
	background: url(../img/icon_lang_bk.svg)no-repeat center/contain;
}
#g_header .hd_logo {
	display: flex;
	line-height: 1.3;	
}
#g_header .hd_logo&gt;span {
	padding-left: 10px;
    font-size: 30px;
    text-align: center;
}
#g_header .hd_logo .en {
	display: block;
	font-size: 13px;
}
#g_header .reserve_btn {
	width: 200px;
	line-height: 60px;
	font-size: 18px;
}
#hd_nav {
	position: relative;
	z-index: 1;
	justify-content: center;
	column-gap: 20px;
	padding-top: 90px;
	background-color: #fff;
}
#hd_nav&gt;li&gt;a {
	padding: 0 1em;
}
#hd_nav a {
	line-height: 70px;
	letter-spacing: 0.08em;
	transition: color 0.7s;
}
#hd_nav .sub_menu {
	display: none;
	position: absolute;
    left: 50%;
    bottom: 0px;
    transform: translate(-50%, 100%);
    z-index: 1;
    width: 100vw;
	min-width: 1100px;
    padding: 0px 4%;
    background-color: var(--color-bg);
}
#hd_nav .sub_menu ul {
	display: flex;
	justify-content: center;
	column-gap: 2em;
}
#hd_nav .sub_menu li a {
	display: inline-block;
	line-height: 60px;
}
#hd_nav&gt;li.current&gt;a, 
#hd_nav .hd_menu.active&gt;a {
	opacity: 1;
	color: var(--color-accent);
}
#hd_nav&gt;li.current&gt;a::after,
#hd_nav .hd_menu.active&gt;a::after {
	transform: scaleX(1);
}

/* open_menu */
.open_menu {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 110px;
	height: 90px;
	color: #fff;
	background-color: #1a1a1a;
	font-size: 0;
}
.open_menu::before,
.open_menu span::before,
.open_menu span::after {
	content: '';
	display: block;
	width: 40px;
	height: 1px;
	background-color: #fff;
	transition: transform 0.5s, opacity 0.5s;
}
.open_menu span::before {
	margin: 8px 0;
}
.pos_fix span::before {
	opacity: 0;
	margin: 0;
}
.pos_fix .open_menu::before {
	transform: rotate(-45deg) translate(-1px, 1px);;
}
.pos_fix .open_menu span::after {
	transform: rotate(45deg);
}

@media screen and (hover: hover) and (min-width: 601px) {
	#hd_nav a:hover {
		opacity: 1;
		color: var(--color-accent);
	}
}
@media screen and (min-width: 601px) {
	#hd_nav,
	#g_header .hd_btns {
		display: flex;
	}
}
@media screen and (max-width: 600px) {
	#g_header {
        top: 0;
        left: 0;
        z-index: 11;
        width: 100%;
	}
	#g_header #hd_fix {
		position: relative;
		justify-content: center;
		min-width: 0;
		height: auto;
		padding: 15px 3vw;
	}
	#g_header .lang {
		width: auto;
		padding: 0;
		position: absolute;
		top: 50%;
		left: 3vw;
		transform: translateY(-50%);
	}
	#g_header .lang a {
		column-gap: 5px;
		width: auto;
		padding: 2px 8px;
		font-size: 14px;
	}
	#g_header .lang a::before {
		width: 13px;
		height: 13px;
		margin: 0;
	}
	#g_header .hd_logo img {
		width: max(30px, 9.3vw);
	}
	#g_header .hd_logo&gt;span {
		padding-left: 8px;
		font-size: 18px;
	}
	#g_header .hd_logo .en {
		font-size: 11px;
	}
}


/* ---------------------------------------------------
	#g_nav
------------------------------------------------------ */
#gnav_wrap {
	opacity: 0;
	pointer-events: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 99;
	display: flex;
	width: 100%;
	height: 100vh;
	min-height: 100dvh;
	background-color: #1a1a1a;
	transition: opacity 0.5s;
}
#gnav_wrap::before {
	flex-grow: 1;
	content: '';
	display: block;
	min-height: 100vh;
	background: url(../img/gnav_img.webp)no-repeat center/cover;
}
#gnav_wrap.active {
	opacity: 1;
	pointer-events: auto;
}
#gnav_wrap .open_menu {
	position: absolute;
	top: 0;
	right: 0;
}
#g_nav {
	width: 800px;
	padding: 70px clamp(70px, 10vw, 120px);
    color: #fff;
	text-align: center;
	overflow: scroll;
}
#g_nav a {
	color: #fff;
}
#g_nav .logo {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	font-size: 15px;
	color: #fff;
	line-height: 1.3;
}
#g_nav .logo span {
	margin-top: 10px;
    font-size: 35px;
}
#g_nav .tel {
	margin: 30px 0;
}
#g_nav .tel-link {
	font-size: 32px;
	color: #fff;
}
#g_nav .g_menu {
	display: flex;
	flex-wrap: wrap;
	column-gap: 60px;
}
#g_nav .g_menu li {
	border-bottom: 1px solid #555;
	width: calc(50% - 30px);
}
#g_nav .g_menu li a {
	position: relative;
	display: block;
	padding: 23px 20px;
    text-align: left;
	transition: background-color 0.5s;
}
#g_nav .g_menu .btn {
	width: 100%;
	border-bottom: none;
	margin-top: 50px;
}
#g_nav .g_menu .btn a {
	color: #fff;
	background-color: var(--color-accent);
	text-align: center;
}

@media screen and (hover: hover) and (min-width: 601px) {
	#g_nav .g_menu li a:hover {
		opacity: 1;
		background-color: #383838;
	}
	#g_nav .g_menu .btn a:hover {
		background-color: #b39046;
	}
}
@media screen and (max-width: 600px) {
	#gnav_wrap .open_menu {
		width: 40px;
		height: 40px;
		top: 15px;
		right: 15px;
	}
	#g_nav {
		width: 100%;
		padding: 50px 7% calc(env(safe-area-inset-bottom) + 120px);
	}
	#g_nav .logo {
		font-size: 12px;
	}
	#g_nav .logo img {
		width: 50px;
	}
	#g_nav .logo span {
		margin: 8px 0 2px;
		font-size: 24px;
	}
	#g_nav .tel {
		margin: 20px 0;
	}
	#g_nav .tel-link {
		font-size: 22px;
	}
	#g_nav .g_menu {
		column-gap: 8%;
	}
	#g_nav .g_menu li {
		width: 46%;
	}
	#g_nav .g_menu li a {
		padding: 15px 0.75em;
	}
	#g_nav .g_menu .btn {
		margin-top: 30px;
	}
}



/* ---------------------------------------------------
	Main img
------------------------------------------------------ */
#main_img {
	position: relative;
	width: 100%;
	text-align: center;
}
#main_img .main_tit {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 0 4%;
	text-align: center;
	font-size: 22px;
	color: #fff;
	text-shadow: 0 0 16px #000, 0 0 10px rgba(0 0 0/30%);
}
#main_img h1 {
	font-size: 46px;
}
#main_img .en {
	text-transform: uppercase;
	letter-spacing: 0.12em;
}
#main_img .ofi {
	width: 100%;
	min-height: 400px;
}
@media screen and (max-width: 600px) {
	#main_img .main_tit {
		font-size: 14px;
	}
	#main_img h1 {
		font-size: 28px;
	}
	#main_img .ofi {
		min-height: 0;
	}
}


/* ---------------------------------------------------
	Contents
------------------------------------------------------ */
/* breadcrumb */
#breadcrumb { width: 1200px; max-width: 92%; margin: 0 auto; padding: 45px 0 20px; }
#breadcrumb li { display: inline-block; line-height: 1.6; }
#breadcrumb li:before { content: '&gt;'; margin: 0 5px;}
#breadcrumb li:first-child:before { display: none; }
@media screen and (max-width: 600px) {
	#breadcrumb { font-size: 14px; }
}

/* .cmn_lead */
.cmn_lead {
	padding: 90px 0;
	line-height: 1.8;
	text-align: center;
}
.cmn_lead h2 {
	margin-bottom: 25px;
}
.cmn_lead h2 span {
	display: inline-block;
}
@media screen and (max-width: 600px) {
	.cmn_lead {
		padding: 50px 0;
	}
	.cmn_lead h2 {
		line-height: 1.5;
	}
	.cmn_lead p {
		text-align: left;
	}
}


/* ---------------------------------------------------
	#sec_inq
------------------------------------------------------ */
#sec_inq {
    padding: 90px 0;
    text-align: center;
}
#sec_inq .tit {
    margin-bottom: 40px;
    font-size: 26px;
}
#sec_inq .tel {
    margin-top: 20px;
}
#sec_inq .tel-link {
    padding: 0 0.5em;
    font-size: 36px;
    letter-spacing: 0.08em;
}

@media screen and (max-width: 600px) {
	#sec_inq {
        padding: 60px 0 20px;
    }
    #sec_inq .tit {
        margin-bottom: 30px;
        font-size: 18px;
    }
    #sec_inq .cmn_link_02 {
        width: min(100%, 360px);
        font-size: 15px;
    }
    #sec_inq .tel-link {
        padding: 0 12px 0 0px;
        font-size: 24px;
    }
    #sec_inq .tel span {
        display: inline-block;
    }
}


/* /// Title /// */
.cmn_tit_01 {
	line-height: 1.3;
	color: var(--color-accent);
}
.cmn_tit_01 h2 {
	font-size: 40px;
}
.cmn_tit_01 .en {
	display: inline-block;
	margin-top: 5px;
	color: var(--color-tit);
}
@media screen and (max-width: 600px) {
	.cmn_tit_01 h2 {
		font-size: min(6.9vw, 26px);
	}
	.cmn_tit_01 .en {
		font-size: 14px;
	}
}


/* /// Link /// */
.reserve_btn {
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 10px;
	padding: 15px;
	color: #fff;
	background-color: var(--color-accent);
	letter-spacing: 0.08em;
	transition: background-color 0.7s;
}
.reserve_btn::before {
	content: ' ';
	display: block;
	width: 22px;
	height: 22px;
	margin-top: 2px;
	background: url(../img/icon_calendar_wh.svg)no-repeat center/contain;
}
[class^="cmn_link_"] {
	position: relative;
	display: inline-block;
}
.cmn_link_io::after {
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	display: block;
	width: 100%;
	height: 3px;
	background-color: var(--color-accent);
	transition: transform 0.5s;
	transform: scaleX(0);
}
.cmn_link_lr::after {
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background-color: #1a1a1a;
	transform-origin: left;
	transition: transform 0.5s;
	transform: scaleX(0);
}
.cmn_link_01 {
	position: relative;
	border: 1px solid var(--color-accent);
    min-width: 280px;
    padding: 15px 60px 15px 17px;
	background-color: #fff;
	text-align: left;
	transition: color 0.55s 0.2s cubic-bezier(.645, .045, .355, 1);
}
.cmn_link_01 span {
	position: relative;
	z-index: 1;
}
.cmn_link_01::before,
.cmn_link_01::after {
	position: absolute;
	content: '';
	display: block;
}
.cmn_link_01::before {
	top: 0;
	left: 0;
	width: 6px;
	height: 100%;
	background-color: var(--color-accent);
	transition: width 0.6s 0.2s cubic-bezier(.645, .045, .355, 1);
}
.cmn_link_01::after {
	top: calc(50% - 2px);
	right: 20px;
    width: 25px;
    height: 4px;
    border-bottom: 1px solid var(--color-accent);
    border-right: 1.5px solid var(--color-accent);
    transform: skew(55deg) translateX(3px);
    transition: right 0.6s 0.3s cubic-bezier(.645, .045, .355, 1), border-color 0.6s 0.3s cubic-bezier(.645, .045, .355, 1);
}
.cmn_link_02 {
	position: relative;
	width: min(100%, 460px);
    padding: 16px 15px;
    font-size: 18px;
    color: #fff;
	text-align: center;
    background-color: var(--color-accent);
	transition: background-color 0.5s;
}
.cmn_link_02::after {
	position: absolute;
	top: calc(50% - 2px);
	right: 20px;
	content: '';
	display: block;
    width: 25px;
    height: 4px;
    border-bottom: 1px solid #fff;
    border-right: 1.5px solid #fff;
    transform: skew(55deg) translateX(-3px);
    transition: transform 0.6s cubic-bezier(.645, .045, .355, 1);
}
.cmn_link_03 {
	position: relative;
	border-bottom: 1px solid #ccc;
	padding: 8px 40px 8px 0;
}
.cmn_link_03::before {
	position: absolute;
	left: 0;
	bottom: -1px;
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background-color: #1a1a1a;
	transform-origin: right;
	transition: transform 0.6s;
}
.cmn_link_03::after {
	position: absolute;
	top: calc(50% - 4px);
	right: 0;
	content: '';
	display: block;
    width: 25px;
    height: 4px;
    border-bottom: 1px solid var(--color-accent);
    border-right: 1.5px solid var(--color-accent);
    transform: skew(55deg) translateX(-3px);
    transition: transform 0.6s cubic-bezier(.645, .045, .355, 1);
}

@media screen and (hover: hover) and (min-width: 601px) {
	.reserve_btn:hover {
		opacity: 1;
		background-color: #b39046;
	}
	.cmn_link_io:hover {
		opacity: 1;
	}
	.cmn_link_io:hover::after,
	.cmn_link_lr:hover::after {
		transform: scaleX(1);
	}
	.cmn_link_01:hover {
		opacity: 1;
		color: #fff;
	}
	.cmn_link_01:hover::before {
		width: 100%;
	}
	.cmn_link_01:hover::after {
		right: 15px;
		border-color: #fff;
	}
	.cmn_link_02:hover {
		opacity: 1;
		background-color: #b39046;
	}
	.cmn_link_03:hover::before {
		transform: scale(0);
	}
}
@media screen and (max-width: 600px) {
	.cmn_link_01 {
		min-width: 0;
		max-width: 100%;
		padding: 10px 55px 10px 17px;
	}
	.cmn_link_01::after {
		width: 20px;
		height: 3px;
	}
}

/* navi */
.cmn_nav_img {
	display: flex;
	column-gap: 1.7%;
	margin-top: 40px;
}
.cmn_nav_img img {
	transition: opacity 0.7s;
}
.cmn_nav_img figcaption {
	position: relative;
    padding: 10px;
    color: #fff;
    background-color: var(--color-accent);
	font-size: 20px;
}
.cmn_nav_img figcaption::after {
	position: absolute;
	top: calc(50% - 2px);
	right: 20px;
	content: '';
	display: block;
	width: 25px;
    height: 4px;
    border-bottom: 1px solid #fff;
    border-right: 1.5px solid #fff;
    transform: skew(55deg) translateX(3px);
    transition: right 0.5s;
}
.cmn_nav {
	display: flex;
	flex-wrap: wrap;
	gap: 20px 2.75%;
}
.cmn_nav li {
	width: 31.5%;
}
.cmn_nav li a {
	position: relative;
	border: 1px solid #aaa;
	display: block;
	line-height: 78px;
	font-size: 18px;
	text-align: center;
}
.cmn_nav li a::after {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translate(-50%, 0) rotate(-45deg);
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    border-bottom: 1px solid var(--color-accent);
    border-left: 1px solid var(--color-accent);
    transition: bottom 0.5s;
}

@media screen and (hover: hover) and (min-width: 601px) {
	.cmn_nav_img a:hover {
		opacity: 1;
	}
	.cmn_nav_img a:hover img {
		opacity: 0.7;
	}
	.cmn_nav_img a:hover figcaption::after {
		right: 15px;
	}
	.cmn_nav li a:hover {
		opacity: 1;
	}
	.cmn_nav li a:hover::after {
		bottom: 4px;
	}
}
@media screen and (max-width: 600px) {
	.cmn_nav_img {
		flex-direction: column;
		align-items: center;
		gap: 15px 0;
	}
	.cmn_nav_img li {
		max-width: 360px;
	}
	.cmn_nav_img img {
		flex-shrink: 0;
		width: 46.8%;
	}
	.cmn_nav_img figure {
		display: flex;
	}
	.cmn_nav_img figcaption {
		flex-grow: 1;
		align-content: center;
		font-size: 15px;
		text-align: center;
		padding-right: 30px;
	}
	.cmn_nav_img figcaption::after {
		width: 18px;
		height: 3px;
	}
	.cmn_nav {
		gap: 10px 0;
	}
	.cmn_nav li {
		width: 100%;
	}
	.cmn_nav li a {
		line-height: 60px;
		font-size: 16px;
	}
}

/* /// Table /// */
.cmn_table {
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #aaa;
	font-size: 15px;
	line-height: 1.8;
	letter-spacing: 0;
}
.cmn_table dt,
.cmn_table dd {
	width: 100%;
}
.cmn_table dt {
	padding: 10px 4%;
	background-color: var(--color-bg);
}
.cmn_table dd {
	padding: 12px 4%;
	border-bottom: 1px solid #aaa;
}
@media screen and (min-width: 601px) {
	.cmn_table dt,
	.cmn_table dd {
		padding: 25px 30px;
	}
	.cmn_table dt {
		width: 200px;
		border-bottom: 1px solid #aaa;
	}
	.cmn_table dd {
		width: calc(100% - 200px);
	}
}

/* /// List /// */
.list_num {
	counter-reset: num_ccl 0;
}
.list_num li {
	position: relative;
	padding-left: 18px;
}
.list_num li::before {
	position: absolute;
	top: 0.33em;
	left: 0;
	counter-increment: num_ccl 1;
	content: counter(num_ccl) '';
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid;
    border-radius: 50%;
    font-size: 13px;
    width: 16px;
    height: 16px;
	font-family: serif;
	box-sizing: border-box;
}
_::-webkit-full-page-media, _:future, :root .list_num li::before {
	padding-top: 3px;
}
.list_dot li {
	position: relative;
	padding-left: 8px;
}
.list_dot li::before {
	position: absolute;
	top: 1.2em;
	left: 0;
	content: '●';
	color: var(--color-accent);
	font-size: 6px;
}


/* ---------------------------------------------------
	Footer
------------------------------------------------------ */
#footer_wrap {
	color: #fff;
	background-color: #1a1a1a;
}
#footer {
	padding: 80px 0 55px;
	text-align: center;
}
#footer .logo {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	font-size: 15px;
	color: #fff;
	line-height: 1.3;
}
#footer .logo span {
	margin-top: 10px;
	font-size: 35px;
}
#footer .tel-link {
	color: #fff;
}
address&gt;span {
	display: inline-block;
}
address&gt;span:first-child {
	margin-right: 0.5em;
}
#f_nav {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 0 2em;
	margin: 0 auto;
	padding: 40px 0 55px;
	text-align: left;
}
#f_nav a {
	padding: 3px 0;
	color: #fff;
}
#f_nav a::after {
	background-color: rgba(255 255 255/65%);
}
#footer .add_col {
	margin-top: 45px;
	line-height: 1.85;
}
#footer .add_col .num {
	font-size: 26px;
}
#copy {
	font-size: 13px;
}

@media screen and (max-width: 600px) {
	#footer {
		padding: 45px 0 calc(env(safe-area-inset-bottom) + 90px);
	}
	#footer .logo {
		font-size: 12px;
	}
	#footer .logo img {
		width: 50px;
	}
	#footer .logo span {
		margin: 5px 0 2px;
		font-size: 24px;
	}
	#footer .add_col {
		margin-top: 30px;
		line-height: 1.6;
	}
	#footer .add_col .num {
		font-size: 22px;
	}
	#f_nav {
		justify-content: flex-start;
		gap: 10px 0;
		width: min(92%, 380px);
		padding: 30px 0;
		font-size: 14px;
	}
	#f_nav li {
		width: 50%;
		padding: 0 0 0 2em;
		box-sizing: border-box;
	}
	#copy {
		font-size: 12px;
	}
}



/* ---------------------------------------------------
	#sp_nav
------------------------------------------------------ */
#sp_nav {
	position: fixed;
    bottom: 0;
    left: 0;
	z-index: 11;
	font-size: 13px;
	text-align: center;
}
#sp_nav li {
	width: 25vw;
}
#sp_nav li a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 3px 0;
	height: 100%;
	padding: 13px 8px calc(env(safe-area-inset-bottom) + 15px);
}
#sp_nav .tel {
	color: #555;
	background-color: #fff;
}
#sp_nav .tel a::before {
	content: '';
	display: block;
	width: 25px;
	height: 22px;
	background: url(../img/icon_tel.svg)no-repeat center/contain;
}
#sp_nav .reserve {
	width: 50vw;
}
#sp_nav .reserve_btn {
}
#sp_nav .reserve_btn::before {
	margin: 0;
}
#sp_nav .open_menu {
	gap: 0;
	width: auto;
}

@media screen and (max-width: 600px) {
	#sp_nav {
		display: flex;
	}
}


/* ---------------------------------------------------
	Update Log
------------------------------------------------------


------------------------------------------------------ */
</pre></body></html>