@charset "utf-8";


.cf:before, .cf:after { content:""; display:table; }
.cf:after { clear:both; }
.cf { *zoom: 1; }

.dn-pc { display:none !important; }
.dn-pc2 { display:none !important; }
.dn-sp { display:block !important; }
.dn-sp2 { display:inline-block !important; }
.hidden { display:none !important; }
.lcp { opacity:1 !important; transform:none !important; transition:none !important; }

@media screen and (max-width:768px){
.dn-pc { display:block !important; }
.dn-pc2 { display:inline-block !important; }
.dn-sp { display:none !important; }
.dn-sp2 { display:none !important; }
}

*, *::before, *::after { box-sizing:border-box; }



/* ----------------------------------------------
 ! normalize
 ---------------------------------------------- */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

html { font-family:sans-serif; -ms-text-size-adjust:100%; -webkit-text-size-adjust:100%; }
body { line-height:1; background:#fff; font-size:1em; color:#000; }
}

/* html5 format */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary { display: block; }

audio,
canvas,
progress,
video { display:inline-block; vertical-align:baseline; }

audio:not([controls]) { display:none; height:0; }

a { background-color:transparent; }
a:active,
a:hover { outline:0; }

b,
strong { font-weight:600; }

small { font-size:80%; }

sub,
sup { font-size:75%; line-height:0; position:relative; vertical-align:baseline; }

sup { top:-0.5em; }
sub { bottom:-0.25em; }

img { border:0; vertical-align:middle; }

hr { -moz-box-sizing:content-box; box-sizing:content-box; height:0; }

pre { overflow:auto; }

code,
kbd,
pre,
samp { font-family:monospace, monospace; font-size:1em; }

table { border-collapse:collapse; border-spacing:0; }

td,
th { padding:0; }




/* ----------------------------------------------
 ! Base
 ---------------------------------------------- */

body { width:100%; overflow-x:hidden; background:#fff; color:#392B28; font-family:"Noto Serif JP", serif !important; font-optical-sizing:auto; font-weight:400; font-style: normal; }
.font-en { font-family:"Prata", serif; font-weight:400; font-style:normal; }
#content {}

@media screen and (min-width:1380px){
body { min-width:1380px; }
#content {}
}

@media screen and (max-width:768px){
body { min-width:280px; }
#content {}
}




/* ----------------------------------------------
 ! Animation
 ---------------------------------------------- */

.fade {
  transform: translateY(20px);
  opacity: 0;
  transition: all 0.8s ease;
}
.fade.active {
  transform: translateY(0);
  opacity: 1;
}




/* ----------------------------------------------
 ! Slider
 ---------------------------------------------- */

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list { position:relative; display:block; overflow:hidden; margin:0; padding:0; }
.slick-list:focus { outline:none; }
.slick-list.dragging { cursor:pointer; cursor:hand; }

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track { position:relative; top:0; left:0; display:block; margin-left:auto; margin-right:auto; }
.slick-track:before,
.slick-track:after { display:table; content:''; }
.slick-track:after { clear:both; }
.slick-loading .slick-track { visibility:hidden; }
.slick-slide { display:none; float:left; height:100%; min-height:1px; }
[dir='rtl'] .slick-slide { float:right; }
.slick-slide img { display:block; }
.slick-slide.slick-loading img { display:none; }
.slick-slide.dragging img { pointer-events:none; }
.slick-initialized .slick-slide { display:block; }
.slick-loading .slick-slide { visibility:hidden; }
.slick-vertical .slick-slide { display:block; height:auto; border:1px solid transparent; }
.slick-arrow.slick-hidden { display: none; }




/* ----------------------------------------------
 ! header
 ---------------------------------------------- */

body {}
body.clicked-nav { height:100vh; overflow:hidden; }
header { background:#fff; }
#header-wrap { height:15.38vw; position:relative; z-index:99991; }
#header-top-tit { width:44.1vw; margin:0 0 0 3.85vw; padding:4.35vw 0 0.64vw; font-size:2.07vw; color:#392B28; text-align:justify; text-align-last:justify; }
#header-logo { width:44.1vw; margin:0 0 0 3.85vw; }
#header-logo a { display:block; text-decoration:none; }
#header-logo a img { width:44.1vw; height:4.61vw; object-fit:cover; object-position:center bottom; }

@media screen and (min-width:769px){
header {}
#header-wrap { height:5.22vw; margin:0 auto; }
#header-top-tit  { width:14.85vw; margin:0 0 0 2.9vw; padding:1.16vw 0 0.14vw; font-size:0.72vw; }
#header-logo { width:14.85vw; margin:0; }
#header-logo a {}
#header-logo a:hover { opacity:0.7; transition:1s ease; }
#header-logo a img { width:14.85vw; height:1.45vw; }
}
@media screen and (min-width:1381px){
header {}
#header-wrap { width:1380px; height:72px; }
#header-top-tit  { width:205px; margin:0 0 0 40px; margin:16px 0 2px; font-size:10px; }
#header-logo { width:205px; }
#header-logo a {}
#header-logo a img { width:205px; height:20px; }
}




#header-nav {}
#header-nav-menu { position:fixed; top:0; left:100%; width:calc( 100% - 10.25vw ); height:calc( 100% ); background:rgba(250,250,250,0.92); overflow-y:scroll; margin:0 0 0 10.25vw; padding:12.3vw 0 0; transition:all 0.4s linear; z-index:999998; }
#header-nav-menu.clicked { left:0; transition:all 0.2s linear; }

@media screen and (min-width:769px){
#header-nav {}
#header-nav-menu { position:static; width:100%; background:none; overflow-y:visible; margin:0; padding:0; }
}
@media screen and (min-width:1381px){
#header-nav {}
#header-nav-menu {}
}




#header-bnr-ul { padding:20.51vw 3.59vw 10.77vw; }
#header-bnr-ul li { list-style:none; }
#header-bnr-ul li:not(:last-child) { padding:0 0 5.13vw; }
#header-bnr-ul li a { display:block; }
#header-bnr-ul li a img { width:100%; height:auto; }

@media screen and (min-width:769px){
#header-bnr-ul { display:none; }
}
@media screen and (min-width:1381px){

}




#btn-main-navi { position:absolute; position:fixed; top:0; right:0; width:17.94vw; height:15.38vw; background:#fff; text-align:center; color:#392B28; transition:all 0.4s linear; z-index:999999; }
#btn-main-navi span:nth-child(1) { position:absolute; top:4.61vw; left:6.41vw; width:5.13vw; height:0.27vw; background:#392B28; }
#btn-main-navi span:nth-child(2) { position:absolute; top:6.66vw; left:6.41vw; width:5.13vw; height:0.27vw; background:#392B28; }
#btn-main-navi span:nth-child(3) { position:absolute; top:8.71vw; left:6.41vw; width:5.13vw; height:0.27vw; background:#392B28; }
#btn-main-navi strong { position:absolute; top:10.77vw; left:0; width:100%; text-align:center; font-size:2.31vw; font-weight:300; font-style:normal; }
#btn-main-navi strong em { font-style:normal; }
#btn-main-navi strong em:last-child { display:none; }
.btn-hn-on {}
.btn-hn-on strong em:first-child { display:none; transition:all 0.2s linear; }
.btn-hn-on strong em:last-child { display:block !important; transition:all 0.2s linear; }
.btn-hn-on span:nth-child(1) { top:7.18vw !important; left:6.41vw !important; width:5.13vw !important; background:#392B28 !important; transform:rotate(45deg); transition:all 0.2s linear; }
.btn-hn-on span:nth-child(2) { display:none; }
.btn-hn-on span:nth-child(3) { top:7.18vw !important; left:6.41vw !important; width:5.13vw !important; background:#392B28 !important; transform:rotate(-45deg); transition:all 0.2s linear; }

@media screen and (min-width:769px){
#btn-main-navi { display:none; }
}
@media screen and (min-width:1381px){
#btn-main-navi {}
}




.clicked-nav { position:relative; }
.clicked-nav:after { content:""; position:fixed; top:0; left:0; width:100%; height:calc(100% - 17.94vw); background:rgba(0,0,0,0.16); z-index:9997; }
.clicked-nav #header-wrap { background:none; }




#header-nav-ul { border-top:1px #B8B1AE solid; margin:0 0 7.69vw; }
#header-nav-ul > li { border-bottom:1px #B8B1AE solid; list-style:none; position:relative; }
#header-nav-ul > li > a,
#header-nav-ul > li > mark { display:flex; align-items:center; height:11.28vw; line-height:1.5; background:#83706C; padding:0 9.74vw; font-size:3.59vw; color:#fff; font-weight:500; text-decoration:none; position:relative; }
#header-nav-ul > li:not(:first-child) > a:before,
#header-nav-ul > li:not(:first-child) > mark:before { content:""; position:absolute; top:50%; left:4.61vw; width:2.34vw; height:0.28vw; background:#fff; transform:rotate(50deg); transform-origin:right top; }
#header-nav-ul > li:not(:first-child) > a:after,
#header-nav-ul > li:not(:first-child) > mark:after { content:""; position:absolute; bottom:50%; left:4.61vw; width:2.34vw; height:0.28vw; background:#fff; transform:rotate(-50deg); transform-origin:right bottom; }
#header-nav-ul > li:first-child > a { background:#83706C url(../img/common/ico_home.svg) 3.59vw center/5.13vw auto no-repeat; }

@media screen and (min-width:769px){
#header-nav-ul { display:flex; flex-flow:row nowrap; justify-content:space-between; align-items:center; position:absolute; top:2.17vw; left:21.15vw; width:60.86vw; border-top:none; margin:0; }
#header-nav-ul > li { border-bottom:none; }
#header-nav-ul > li > a,
#header-nav-ul > li > mark { height:1.45vw; line-height:1; background:none; padding:0; font-size:0.94vw; color:#392B28; }
#header-nav-ul > li:not(:first-child) > a:before,
#header-nav-ul > li:not(:first-child) > mark:before { display:none; }
#header-nav-ul > li:not(:first-child) > a:after,
#header-nav-ul > li:not(:first-child) > mark:after { display:none; }
#header-nav-ul > li:first-child > a { background:none; }
#header-nav-ul > li > a:hover { opacity:0.7; color:#EC6D4E; transition:1s ease; }
}
@media screen and (min-width:1381px){
#header-nav-ul { top:30px; left:292px; width:840px; }
#header-nav-ul > li {}
#header-nav-ul > li > a,
#header-nav-ul > li > mark { height:20px; font-size:13px; }
#header-nav-ul > li:not(:first-child) > a:before,
#header-nav-ul > li:not(:first-child) > mark:before {}
#header-nav-ul > li:not(:first-child) > a:after,
#header-nav-ul > li:not(:first-child) > mark:after {}
#header-nav-ul > li:first-child > a {}
}




.header-ul-sub {}
.header-ul-sub ul { border-top:1px #6DABD5 solid; }
.header-ul-sub li { list-style:none; position:relative; }
.header-ul-sub li:not(:last-child) { border-bottom:1px #BCBCBC solid; }
.header-ul-sub li:after { content:""; position:absolute; top:calc(50% - 0.26vw); right:36vw; width:3.08vw; height:0.51vw; background:#fff; }
.header-ul-sub li a { display:flex; align-items:center; height:11.28vw; line-height:1.3; background:#F4F6F7; padding:0 0 0 13.58vw; font-size:3.59vw; color:#392B28; text-decoration:none; position:relative; }
.header-ul-sub li a:before { content:""; position:absolute; top:50%; left:9.74vw; width:2.34vw; height:0.28vw; background:#392B28; transform:rotate(50deg); transform-origin:right top; }
.header-ul-sub li a:after { content:""; position:absolute; bottom:50%; left:9.74vw; width:2.34vw; height:0.28vw; background:#392B28; transform:rotate(-50deg); transform-origin:right bottom; }

@media screen and (max-width:768px){
.header-ul-sub { max-height:0; overflow:hidden; transition:max-height .3s ease; }
.header-ul-sub-on { max-height:2000px; }
.btn-hd-sub-open { position:absolute; top:0; right:0; width:100%; height:11.28vw; }
.btn-hd-sub-open:before { content:""; position:absolute; top:50%; right:4.1vw; width:5.13vw; height:0.25vw; background:#fff; }
.btn-hd-sub-open:after { content:""; position:absolute; top:50%; right:4.1vw; width:5.13vw; height:0.25vw; background:#fff; transform:rotate(90deg); }
.btn-hs-on:after { display:none; transition:all 0.2s linear; }
}
@media screen and (min-width:769px){ 
.header-ul-sub { opacity:0; max-height:0; overflow:hidden; pointer-events:none; transition:max-height .25s ease, opacity .25s ease; position:absolute; top:1.45vw; left:0; width:100%; padding:1.59vw 0 0; z-index:999999; }
.header-ul-sub-on { opacity:1; max-height:500px; pointer-events:auto; }
.header-ul-sub ul { border-top:none; }
.header-ul-sub li { background:#E96F2E; }
.header-ul-sub li:after { display:none; }
#header-nav-ul .dn-annai:hover { cursor:pointer; }
#header-nav-ul .dn-annai:before { content:""; position:absolute; bottom:-0.72vw; left:50%; width:0.43vw; height:1px; background:#E96F2E; transform:rotate(-40deg); transform-origin:left bottom; }
#header-nav-ul .dn-annai:after { content:""; position:absolute; bottom:-0.72vw; right:50%; width:0.43vw; height:1px; background:#E96F2E; transform:rotate(40deg); transform-origin:right bottom; }
.header-ul-sub li:not(:last-child) { border-bottom:0.5px #fff dashed; }
.header-ul-sub li a { height:2.54vw; background:#E96F2E; padding:0 1.09vw 0 2.17vw; font-size:0.94vw; color:#fff; }
.header-ul-sub li a:before { left:1.3vw; width:0.43vw; height:1px; background:#fff; }
.header-ul-sub li a:after { left:1.3vw; width:0.43vw; height:1px; background:#fff; }
.header-ul-sub li a:hover { background:#392B28; transition:0.6s ease; }
}
@media screen and (min-width:1381px){
.header-ul-sub { top:20px; left:0; width:100%; padding:22px 0 0; }
.header-ul-sub-on {}
.header-ul-sub ul {}
.header-ul-sub li {}
.header-ul-sub li:after {}
#header-nav-ul .dn-annai:hover {}
#header-nav-ul .dn-annai:before { bottom:-10px; width:6px; }
#header-nav-ul .dn-annai:after { bottom:-10px; width:6px; }
.header-ul-sub li:not(:last-child) {}
.header-ul-sub li a { height:35px; padding:0 15px 0 30px; font-size:13px; }
.header-ul-sub li a:before { left:18px; width:6px; }
.header-ul-sub li a:after { left:18px; width:6px; }
}




#header-info { padding:0 4.35vw 28.19vw; }
#header-info table { width:100%; border-top:1px #CBB9B6 solid; border-bottom:1px #CBB9B6 solid; margin:0 0 5.13vw; font-size:3.33vw; }
#header-info table thead th { border-bottom:1px #CBB9B6 solid; text-align:center; padding:2.82vw 0; }
#header-info table tbody th { width:21.28vw; text-align:left; padding:2.82vw 0; }
#header-info table tbody td { text-align:center; padding:2.82vw 0; color:#CBB9B6; }
#header-info dl { display:flex; flex-flow:row wrap; line-height:1.46; font-size:3.33vw; }
#header-info dt { width:21.28vw; }
#header-info dd { width:calc(100% - 21.28vw); }
#header-info small { display:block; line-height:1.46; padding:0 0 11.54vw; font-size:3.07vw; }
#header-info p { width:61.54vw; margin:0 auto; }
#header-info p a { display:flex; justify-content:center; align-items:center; height:12.82vw; background:url(../img/common/ico_gmap_b.svg) 6.66vw center/4.61vw auto no-repeat; border:0.5px #392B28 solid; padding:0 0 0 5.64vw; font-size:3.59vw; color:#392B28; text-decoration:none; }

@media screen and (min-width:769px){
#header-info { display:none; }
}
@media screen and (min-width:1381px){

}




#bottom-nav { position:absolute; position:fixed; bottom:0; left:0; width:100%; z-index:999999; }
#bottom-nav ul { display:flex; flex-flow:row nowrap; box-shadow:2px 0 3px 0px #fff; }
#bottom-nav li { width:calc(100% / 3); list-style:none; }
#bottom-nav li:not(:last-child) { border-right:1px #fff solid; }
#bottom-nav li a { display:flex; justify-content:center; align-items:center; height:17.94vw; padding:9.48vw 0 0; color:#fff; text-decoration:none; }
#bottom-nav li:nth-child(1) a { background:#392B28 url(../img/common/ico_tel.svg) center 3.59vw/5.38vw auto no-repeat; }
#bottom-nav li:nth-child(2) a { background:#392B28 url(../img/common/ico_line.svg) center 2.82vw/7.69vw auto no-repeat; }
#bottom-nav li:nth-child(3) a { background:#392B28 url(../img/common/ico_reservation.svg) center 2.56vw/8.21vw auto no-repeat; }

@media screen and (min-width:769px){
#bottom-nav { position:static; }
#bottom-nav ul { flex-flow:column nowrap; box-shadow:none; }
#bottom-nav li { width:auto; }
#bottom-nav li:not(:last-child) { border-right:none; }
#bottom-nav li:nth-child(1) { position:absolute; top:0; left:50%; margin:0 0 0 35.86vw; }
#bottom-nav li:nth-child(2) { position:absolute; position:fixed; bottom:15.57vw; left:auto; right:0; }
#bottom-nav li:nth-child(3) { position:absolute; position:fixed; bottom:3.62vw; left:auto; right:0; }
#bottom-nav li a { display:flex; justify-content:center; align-items:center; height:auto; line-height:1; padding:0; color:#fff; text-decoration:none; }
#bottom-nav li:nth-child(1) a { flex-flow:column nowrap; width:14.13vw; height:5.21vw; line-height:1.4; background:#5EAB97 url(../img/common/ico_tel.svg) 0.58vw 2.61vw/1.37vw auto no-repeat; pointer-events:none }
#bottom-nav li:nth-child(1) a span { display:block; font-size:0.87vw; }
#bottom-nav li:nth-child(1) a strong { display:block; padding:0 0 0 1.59vw; font-size:1.74vw; }
#bottom-nav li:nth-child(2) a { width:2.9vw; height:10.72vw; background:#392B28 url(../img/common/ico_line.svg) center 1.45vw/1.74vw auto no-repeat; text-align:center; border-radius:0.43vw 0 0 0.43vw; padding:2.17vw 1.45vw 0; font-size:0.94vw; word-break:break-all; }
#bottom-nav li:nth-child(3) a { width:2.9vw; height:10.72vw; background:#392B28 url(../img/common/ico_reservation.svg) center 1.45vw/1.45vw auto no-repeat; text-align:center; border-radius:0.43vw 0 0 0.43vw; padding:2.17vw 1.45vw 0; font-size:0.94vw; word-break:break-all; }
#bottom-nav li a:hover { opacity:0.7; transition:0.6s ease; }
}
@media screen and (min-width:1381px){
#bottom-nav {}
#bottom-nav ul {}
#bottom-nav li {}
#bottom-nav li:not(:last-child) {}
#bottom-nav li:nth-child(1) { margin:0 0 0 495px; }
#bottom-nav li:nth-child(2) { bottom:215px; }
#bottom-nav li:nth-child(3) { bottom:50px; }
#bottom-nav li a {}
#bottom-nav li:nth-child(1) a { width:195px; height:72px; background:#5EAB97 url(../img/common/ico_tel.svg) 8px 36px/19px auto no-repeat; }
#bottom-nav li:nth-child(1) a span { font-size:12px; }
#bottom-nav li:nth-child(1) a strong { padding:0 0 0 22px; font-size:24px; }
#bottom-nav li:nth-child(2) a { width:40px; height:148px; background:#392B28 url(../img/common/ico_line.svg) center 20px/24px auto no-repeat; border-radius:6px 0 0 6px; padding:30px 20px 0; font-size:13px; }
#bottom-nav li:nth-child(3) a { width:40px; height:148px; background:#392B28 url(../img/common/ico_reservation.svg) center 20px/20px auto no-repeat; border-radius:6px 0 0 6px; padding:30px 20px 0; font-size:13px; }
}




/* ----------------------------------------------
 ! footer
 ---------------------------------------------- */

footer { background:#392B28; padding:0 0 20.51vw; color:#fff; }
#footer-wrap {}

@media screen and (min-width:769px){
footer { background:#83706C; padding:4.35vw 0 0; }
#footer-wrap { display:flex; flex-flow:row nowrap; justify-content:space-between; align-items:start; width:79.71vw; margin:0 auto; }
}
@media screen and (min-width:1381px){
footer { padding:60px 0 0; }
#footer-wrap { width:1100px; }
}




#footer-info { background:#83706C; padding:11.54vw 3.85vw 12.82vw; }
#footer-logo { width:61.54vw; margin:0 0 4.1vw; }
#footer-logo img { width:100%; height:auto; }
#footer-ad { line-height:1.46; padding:0 0 6.41vw; font-size:3.33vw; }
#footer-info-dl { display:flex; flex-flow:row wrap; line-height:1.46; padding:0 0 3.07vw; font-size:3.33vw; }
#footer-info-dl dt { width:21.02vw; }
#footer-info-dl dd { width:calc(100% - 21.02vw); }
#footer-note {}
#footer-note li { line-height:1.46; padding:0 0 0 3.33vw; font-size:3.07vw; list-style:none; position:relative; }
#footer-note li:before { content:"※"; position:absolute; top:0; left:0; }

@media screen and (min-width:769px){
#footer-info { width:28.98vw; background:none; border-right:1px #fff solid; padding:0 1.45vw 2.17vw 0; }
#footer-logo { width:22.1vw; margin:0 0 1.74vw; }
#footer-logo img {}
#footer-ad { padding:0 0 0.43vw; font-size:0.94vw; }
#footer-info-dl { padding:0 0 0.87vw; font-size:0.94vw; }
#footer-info-dl dt { width:6.88vw; }
#footer-info-dl dd { width:calc(100% - 6.88vw); }
#footer-note {}
#footer-note li { padding:0 0 0 0.87vw; font-size:0.87vw; }
#footer-note li:before {}
}
@media screen and (min-width:1381px){
#footer-info { width:400px; padding:0 20px 30px 0; }
#footer-logo { width:305px; margin:0 0 24px; }
#footer-logo img {}
#footer-ad { padding:0 0 6px; font-size:13px; }
#footer-info-dl { padding:0 0 12px; font-size:13px; }
#footer-info-dl dt { width:95px; }
#footer-info-dl dd { width:calc(100% - 95px); }
#footer-note {}
#footer-note li { padding:0 0 0 12px; font-size:12px; }
#footer-note li:before {}
}




#footer-nav { margin:0 0 11.28vw; }
#footer-nav-ul {}
#footer-nav-ul > li { border-bottom:1px #000 solid; list-style:none; position:relative; }
#footer-nav-ul > li > a,
#footer-nav-ul > li > mark { display:flex; align-items:center; height:11.28vw; line-height:1.86; padding:0 9.23vw; font-size:3.59vw; color:#fff; font-weight:500; text-decoration:none; position:relative; }
#footer-nav-ul > li:not(:first-child) > a:before,
#footer-nav-ul > li:not(:first-child) > mark:before { content:""; position:absolute; top:50%; left:4.35vw; width:2.34vw; height:0.28vw; background:#fff; transform:rotate(50deg); transform-origin:right top; }
#footer-nav-ul > li:not(:first-child) > a:after,
#footer-nav-ul > li:not(:first-child) > mark:after { content:""; position:absolute; bottom:50%; left:4.35vw; width:2.34vw; height:0.28vw; background:#fff; transform:rotate(-50deg); transform-origin:right bottom; }
#footer-nav-ul > li:first-child > a { background:url(../img/common/ico_home.svg) 3.33vw center/5.13vw auto no-repeat; }

@media screen and (min-width:769px){
#footer-nav { width:50.72vw; margin:0; padding:2.46vw 0 0 2.46vw; }
#footer-nav-ul { display:flex; flex-flow:column wrap; height:21.74vw; }
#footer-nav-ul > li { min-width:6.15vw; border-bottom:none; }
#footer-nav .dn-annai {}
#footer-nav-ul > li:nth-of-type(3) { margin-bottom:11.59vw; }
#footer-nav-ul > li:nth-of-type(4) { width:14.13vw; margin-bottom:13vw; }
#footer-nav-ul > li:nth-of-type(5) { width:12.68vw; }
#footer-nav-ul > li:nth-of-type(6) { width:9.42vw; }
#footer-nav-ul > li > a,
#footer-nav-ul > li > mark { height:auto; margin:0 0 1.45vw; padding:0 0 0 1.74vw; font-size:1.01vw; }
#footer-nav-ul > li:not(:first-child) > a:before,
#footer-nav-ul > li:not(:first-child) > mark:before { left:0.36vw; width:0.58vw; height:1px; transform:rotate(0); }
#footer-nav-ul > li:not(:first-child) > a:after,
#footer-nav-ul > li:not(:first-child) > mark:after { display:none; }
#footer-nav-ul > li:first-child > a { background:url(../img/common/ico_home.svg) 0 center/1.45vw auto no-repeat; }
#footer-nav-ul > li > a:hover { opacity:0.7; text-decoration:underline; transition:1s ease; }
}
@media screen and (min-width:1381px){
#footer-nav { width:700px; padding:34px 0 0 34px; }
#footer-nav-ul { height:300px; }
#footer-nav-ul > li { min-width:85px; }
#footer-nav .dn-annai {}
#footer-nav-ul > li:nth-of-type(3) { margin-bottom:150px; }
#footer-nav-ul > li:nth-of-type(4) { width:195px; margin-bottom:180px; }
#footer-nav-ul > li:nth-of-type(5) { width:175px; }
#footer-nav-ul > li:nth-of-type(6) { width:130px; }
#footer-nav-ul > li > a,
#footer-nav-ul > li > mark { margin:0 0 20px; padding:0 0 0 24px; font-size:14px; }
#footer-nav-ul > li:not(:first-child) > a:before,
#footer-nav-ul > li:not(:first-child) > mark:before { left:5px; width:8px; }
#footer-nav-ul > li:not(:first-child) > a:after,
#footer-nav-ul > li:not(:first-child) > mark:after {}
#footer-nav-ul > li:first-child > a { background:url(../img/common/ico_home.svg) 0 center/20px auto no-repeat; }
}




.footer-ul-sub {}
.footer-ul-sub li { border-top:1px #BCBCBC solid; list-style:none; }
.footer-ul-sub li mark,
.footer-ul-sub li a { display:flex; align-items:center; height:11.28vw; line-height:1.5; background:#F4F6F7; padding:0 12.82vw 0 14.1vw; font-size:3.59vw; color:#392B28; text-decoration:none; position:relative; }
.footer-ul-sub li a:before { content:""; position:absolute; top:50%; left:9.23vw; width:2.34vw; height:0.28vw; background:#392B28; transform:rotate(50deg); transform-origin:right top;  }
.footer-ul-sub li a:after { content:""; position:absolute; bottom:50%; left:9.23vw; width:2.34vw; height:0.28vw; background:#392B28; transform:rotate(-50deg); transform-origin:right bottom;  }

@media screen and (max-width:768px){
.footer-ul-sub { max-height:0; overflow:hidden; transition:max-height .3s ease; }
.footer-ul-sub-on { max-height:2000px; }
.btn-ft-sub-open { position:absolute; top:0; right:0; width:100%; height:11.28vw; }
.btn-ft-sub-open:before { content:""; position:absolute; top:50%; right:3.85vw; width:5.13vw; height:0.28vw; background:#fff; }
.btn-ft-sub-open:after { content:""; position:absolute; top:50%; right:3.85vw; width:5.13vw; height:0.28vw; background:#fff; transform:rotate(90deg); }
.btn-fs-on:after { display:none; transition:all 0.2s linear; }
}
@media screen and (min-width:769px){
.footer-ul-sub {}
.footer-ul-sub li { border-top:none; }
.footer-ul-sub li mark,
.footer-ul-sub li a { height:auto; background:none; margin:0 0 1.45vw; padding:0 0 0 1.74vw; font-size:1.01vw; color:#fff; }
.footer-ul-sub li a:before { display:none; }
.footer-ul-sub li a:after { display:none; }
.footer-ul-sub li a:hover { opacity:0.7; text-decoration:underline; transition:1s ease; }
}
@media screen and (min-width:1381px){
.footer-ul-sub {}
.footer-ul-sub li {}
.footer-ul-sub li mark,
.footer-ul-sub li a { margin:0 0 20px; padding:0 0 0 24px; font-size:14px; }
.footer-ul-sub li a:before {}
.footer-ul-sub li a:after {}
}




#btn-footer-route { width:61.54vw; margin:0 auto 11.28vw; }
#btn-footer-route a { display:flex; justify-content:center; align-items:center; height:12.82vw; background:url(../img/common/ico_gmap_w.svg) 6.15vw center/4.61vw auto no-repeat; border:1px #fff solid; padding:0 0 0 5.64vw; font-size:3.59vw; color:#fff; font-weight:400; text-decoration:none; position:relative; }

@media screen and (min-width:769px){
#btn-footer-route { width:19.13vw; margin:0 auto 4.35vw; }
#btn-footer-route a { height:3.47vw; background:url(../img/common/ico_gmap_w.svg) 2.53vw center/1.3vw auto no-repeat; padding:0 0 0 1.74vw; font-size:1.01vw; }
#btn-footer-route a:hover { opacity:0.7; transition:1s ease; }
}
@media screen and (min-width:1381px){
#btn-footer-route { width:264px; margin:0 auto 60px; }
#btn-footer-route a { height:48px; background:url(../img/common/ico_gmap_w.svg) 35px center/18px auto no-repeat; padding:0 0 0 24px; font-size:14px; }
}




#footer-bnr { padding:0 3.85vw 9.23vw; }
#footer-bnr a { display:block; }
#footer-bnr img { width:100%; height:auto; }

@media screen and (min-width:769px){
#footer-bnr { width:40.57vw; margin:0 auto; padding:0 0 2.17vw; }
#footer-bnr a {}
#footer-bnr a:hover { opacity:0.7; transition:1s ease; }
#footer-bnr img {}
}
@media screen and (min-width:1381px){
#footer-bnr { width:560px; padding:0 0 30px; }
#footer-bnr a {}
#footer-bnr img {}
}




#footer-copy { text-align:center; border-top:1px #000 solid; padding:3.59vw 0; font-size:2.56vw; color:#fff; }
#footer-copy a { color:#fff; text-decoration:underline; }
#footer-copy a:hover { text-decoration:none; }

@media screen and (min-width:769px){
#footer-copy { background:none; border-top:1px #5E5E5E solid; padding:1.45vw 0; font-size:0.72vw; }
}
@media screen and (min-width:1381px){
#footer-copy { padding:20px 0; font-size:10px; }
}





/* ----------------------------------------------
 ! scroll-top
 ---------------------------------------------- */

#scroll-top { position:absolute; position:fixed; bottom:21.02vw; right:3.85vw; width:10.25vw; z-index:999997; }
#scroll-top a { display:block; }
#scroll-top img { width:100%; height:auto; }

@media screen and (min-width:769px){
#scroll-top { bottom:2.9vw; right:5.07vw; width:3.47vw; }
#scroll-top a {}
#scroll-top a:hover { opacity:0.7; transition:all 1s; }
}
@media screen and (min-width:1381px){
#scroll-top { bottom:40px; right:70px; width:48px; }
#scroll-top a {}
}





/* ----------------------------------------------
 ! common
 ---------------------------------------------- */

#content {}
main {}
#main-wrap {}

@media screen and (max-width:768px){
main { overflow:hidden; }
}
@media screen and (min-width:769px){
#content {}
main {}
#main-wrap {}
#home #main-wrap {}
}
@media screen and (min-width:1381px){
#content {}
main {}
#main-wrap {}
#home #main-wrap {}
}




.txt-basic p { line-height:2; font-size:3.59vw; text-align:justify; }
.txt-basic p:not(:last-child) { padding:0 0 4.1vw; }
.txt-basic mark { display:inline; background:linear-gradient(transparent 70%, #F9FBBF 0%); font-weight:600; }
.indent01 { padding-left:1rem !important; text-indent:-1rem; }
.txt-basic p a { color:#E96F2E; }

@media screen and (min-width:769px){
.txt-basic p { font-size:1.01vw; }
.txt-basic p:not(:last-child) { padding:0 0 1.16vw; }
.txt-basic mark {}
.txt-basic p a:hover { opacity:0.7; color:#5EAB97; transition:1s ease; }
}
@media screen and (min-width:1381px){
.txt-basic p { font-size:14px; }
.txt-basic p:not(:last-child) { padding:0 0 16px; }
.txt-basic mark {}
}




.btn-more { width:61.54vw; margin:0 auto; }
.btn-more a { display:flex; justify-content:center; align-items:center; background:#E96F2E; height:12.82vw; font-size:3.59vw; color:#fff !important; font-weight:700; text-shadow:0 1px 2px rgba(0,0,0,0.9); text-decoration:none; position:relative; }
.btn-more a:after { content:">"; display:inline-block; margin:0 0 0 2.56vw; color:#fff; font-weight:700; }

@media screen and (min-width:769px){
.btn-more { width:19.13vw; margin:0 auto; }
.btn-more a { height:3.47vw; font-size:1.01vw; }
.btn-more a:after { margin:0 0 0 0.72vw; color:#fff; }
.btn-more a:hover { opacity:0.7; transition:1s ease; }
}
@media screen and (min-width:1381px){
.btn-more { width:264px; }
.btn-more a { height:48px; font-size:14px; }
.btn-more a:after { margin:0 0 0 10px; }
}




.mb0 { margin-bottom:0 !important; }
.mb10 { margin-bottom:2.56vw !important; }
.mb20 { margin-bottom:5.13vw !important; }
.mb30 { margin-bottom:7.69vw !important; }
.mb40 { margin-bottom:10.3vw !important; }
.mb50 { margin-bottom:12.8vw !important; }
.mb60 { margin-bottom:15.4vw !important; }

@media screen and (min-width:769px){
.mb0 { margin-bottom:0 !important; }
.mb10 { margin-bottom:0.72vw !important; }
.mb20 { margin-bottom:1.45vw !important; }
.mb30 { margin-bottom:2.17vw !important; }
.mb40 { margin-bottom:2.9vw !important; }
.mb50 { margin-bottom:3.62vw !important; }
.mb60 { margin-bottom:4.34vw !important; }
}
@media screen and (min-width:1381px){
.mb0 { margin-bottom:0 !important; }
.mb10 { margin-bottom:10px !important; }
.mb20 { margin-bottom:20px !important; }
.mb30 { margin-bottom:30px !important; }
.mb40 { margin-bottom:40px !important; }
.mb50 { margin-bottom:50px !important; }
.mb60 { margin-bottom:60px !important; }
}

.pb0 { padding-bottom:0 !important; }
.pb10 { padding-bottom:2.56vw !important; }
.pb20 { padding-bottom:5.13vw !important; }
.pb30 { padding-bottom:7.69vw !important; }
.pb40 { padding-bottom:10.3vw !important; }
.pb50 { padding-bottom:12.8vw !important; }
.pb60 { padding-bottom:15.4vw !important; }

@media screen and (min-width:769px){
.pb0 { padding-bottom:0 !important; }
.pb10 { padding-bottom:0.72vw !important; }
.pb20 { padding-bottom:1.45vw !important; }
.pb30 { padding-bottom:2.17vw !important; }
.pb40 { padding-bottom:2.9vw !important; }
.pb50 { padding-bottom:3.62vw !important; }
.pb60 { padding-bottom:4.34vw !important; }
}
@media screen and (min-width:1381px){
.pb0 { padding-bottom:0 !important; }
.pb10 { padding-bottom:10px !important; }
.pb20 { padding-bottom:20px !important; }
.pb30 { padding-bottom:30px !important; }
.pb40 { padding-bottom:40px !important; }
.pb50 { padding-bottom:50px !important; }
.pb60 { padding-bottom:60px !important; }
}

.w100 { width:100% !important; }




/* ----------------------------------------------
 ! tb-medical-hour
 ---------------------------------------------- */

.tb-medical-hour { width:100%; border-top:1px #CBB9B6 solid; border-bottom:1px #CBB9B6 solid; margin:0 0 1.54vw; padding:2.56vw 0; font-size:3.33vw; color:#392B28; }
.tb-medical-hour thead th { background:#F6F1ED; border-bottom:1px #CBB9B6 solid; text-align:center; padding:2.56vw 0; font-weight:600; }
.tb-medical-hour thead th:first-of-type { width:21.02vw; text-align:center; }
.tb-medical-hour tbody th { text-align:center; padding:2.56vw 0; font-weight:500; }
.tb-medical-hour tbody td { text-align:center; padding:2.56vw 0; font-weight:500; }

@media screen and (min-width:769px){
.tb-medical-hour { margin:0 0 0.72vw; padding:0.87vw 0; font-size:0.94vw; }
.tb-medical-hour thead th { padding:0.87vw 0; }
.tb-medical-hour thead th:first-of-type { width:9.56vw; }
.tb-medical-hour tbody th { padding:0.87vw 0; }
.tb-medical-hour tbody td { padding:0.87vw 0; }
}
@media screen and (min-width:1381px){
.tb-medical-hour { margin:0 0 10px; padding:12px 0; font-size:13px; }
.tb-medical-hour thead th { padding:12px 0; }
.tb-medical-hour thead th:first-of-type { width:132px; }
.tb-medical-hour tbody th { padding:12px 0; }
.tb-medical-hour tbody td { padding:12px 0; }
}




/* ----------------------------------------------
 ! Q and A
 ---------------------------------------------- */

.faq-basic {}
.faq-basic details { background:#fff; margin:0 0 7.69vw; }
.faq-basic summary { display:flex; align-items:center; min-height:8.71vw; background:#83706C; position:relative; }
.faq-basic summary:before { content:"Q."; position:absolute; top:2.82vw; left:5.13vw; line-height:1; font-size:3.85vw; color:#fff; font-weight:700; }
.faq-basic summary::marker { content:""; }
.faq-basic summary h3 { display:flex; align-items:center; width:100%; height:100%; line-height:1.5; padding:2.05vw 15.38vw 2.05vw 10.25vw; font-size:3.85vw; color:#fff; font-weight:500; position:relative; }
.faq-basic summary h3:before { content:""; position:absolute; top:50%; right:5.13vw; width:3.07vw; height:1px; background:#fff; }
.faq-basic summary h3:after { content:""; position:absolute; top:50%; right:5.13vw; width:3.07vw; height:1px; background:#fff; transform:rotate(90deg); }
details[open] summary h3:after { transform:rotate(0); }
.faq-basic-box { padding:5.13vw 3.85vw 5.13vw 7.69vw; position:relative; }
.faq-basic-box:before { content:"A."; position:absolute; top:6.41vw; left:3.85vw; line-height:1; font-size:3.33vw; }
.faq-basic-box p { line-height:2; font-size:3.33vw; }
.faq-basic-box p:not(:last-child) { padding:0 0 4.1vw; }

@media screen and (min-width:769px){
.faq-basic { width:59.42vw; margin:0 auto; }
.faq-basic details { margin:0 0 2.9vw; }
.faq-basic summary { min-height:3.18vw; }
.faq-basic summary:before { top:0.87vw; left:1.45vw; font-size:1.16vw; }
.faq-basic summary::marker {}
.faq-basic summary h3 { padding:0.72vw 3.62vw 0.72vw 3.18vw; font-size:1.16vw; }
.faq-basic summary h3:before { right:1.09vw; width:1.23vw; }
.faq-basic summary h3:after { right:1.09vw; width:1.23vw; }
details[open] summary h3:after {}
.faq-basic-box { padding:1.45vw 3.62vw 1.45vw 3.18vw; }
.faq-basic-box:before { top:1.95vw; left:1.59vw; font-size:1.01vw; }
.faq-basic-box p { font-size:1.01vw; }
.faq-basic-box p:not(:last-child) { padding:0 0 1.16vw; }
}
@media screen and (min-width:1381px){
.faq-basic { width:820px; }
.faq-basic details { margin:0 0 40px; }
.faq-basic summary { min-height:44px; }
.faq-basic summary:before { top:12px; left:20px; font-size:16px; }
.faq-basic summary::marker {}
.faq-basic summary h3 { padding:10px 50px 10px 44px; font-size:16px; }
.faq-basic summary h3:before { right:15px; width:17px; }
.faq-basic summary h3:after { right:15px; width:17px; }
details[open] summary h3:after {}
.faq-basic-box { padding:20px 50px 20px 44px; }
.faq-basic-box:before { top:27px; left:22px; font-size:14px; }
.faq-basic-box p { font-size:14px; }
.faq-basic-box p:not(:last-child) { padding:0 0 16px; }
}




