@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; }
.sr-only { position:absolute; width:1px; height:1px; margin:-1px; padding:0; border:0; clip:rect(0 0 0 0); overflow:hidden; }

@media screen and (max-width:899px){
.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%; scroll-behavior:smooth; }
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; font-family:"游ゴシック体", "Yu Gothic", YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif; }
#content {}
.font-min { font-family:"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif !important; }
.font-en { font-family:"Lora", serif; font-optical-sizing:auto; font-weight:400; font-style:normal; }

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

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




/* ----------------------------------------------
 ! Fonts
 ---------------------------------------------- */

/* lato-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/lato-v25-latin-regular.woff2') format('woff2');
}
/* lato-700 - latin */
@font-face {
  font-display: swap;
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/lato-v25-latin-700.woff2') format('woff2');
}




/* ----------------------------------------------
 ! 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 {}
#header-wrap { display:flex; flex-flow:row nowrap; justify-content:space-between; align-items:center; height:17.94vw; position:relative; }
#header-logo { width:46.73vw; aspect-raito:182/40; margin:0 0 0 3.85vw; z-index:99991; }
#header-logo a { display:block; text-decoration:none; }
#header-logo a img { width:100%; height:100%; }
#header-txt { display:none; line-height:1.5; padding:1.54vw 0 0 4.1vw; font-size:1.54vw; color:#333; font-weight:normal; }

@media screen and (max-width:899px){
#header-txt { position:absolute; top:0; left:0; }
}
@media screen and (min-width:900px){
header {}
#header-wrap { height:7.24vw; margin:0 auto; }
#header-logo { width:17.68vw; margin:0 0 0 2.9vw; }
#header-logo a {}
#header-logo a:hover { opacity:0.7; transition:1s ease; }
#header-txt { display:block; position:absolute; top:0.36vw; left:0; padding:0; font-size:0.94vw; color:#333; font-weight:600; }
}
@media screen and (min-width:1380px){
header {}
#header-wrap { width:1380px; height:100px; }
#header-logo { width:244px; margin:0 0 0 40px; }
#header-logo a {}
#header-txt { top:5px; font-size:13px; }
}




#header-nav {}
#header-nav-menu { position:fixed; top:0; left:100%; width:calc(100% - 4.1vw); height:100%; background:rgba(116,164,216,1); overflow-y:scroll; margin:0 0 0 4.1vw; padding:0 0 20.51vw; transition:all 0.4s linear; z-index:99998; }
#header-nav-menu.clicked { left:0; transition:all 0.2s linear; }

@media screen and (min-width:900px){
#header-nav { width:39.85vw; margin:0 0 0 20.28vw; }
#header-nav-menu { position:static; width:100%; height:auto; background:none; overflow:visible; margin:0; padding:0; }
}
@media screen and (min-width:1380px){
#header-nav { width:550px; margin:0 0 0 280px; }
#header-nav-menu {}
}




#btn-main-navi { position:absolute; position:fixed; top:0; right:0; width:16.41vw; height:17.94vw; background:#fff; border:none; text-align:center; transition:all 0.4s linear; z-index:99999; }
#btn-main-navi span { position:absolute; left:3.59vw; width:8.97vw; height:0.25vw; background:#333; }
#btn-main-navi span:nth-child(1) { top:6.66vw; }
#btn-main-navi span:nth-child(2) { top:8.71vw; }
#btn-main-navi span:nth-child(3) { top:10.77vw; }
#btn-main-navi b { display:none; position:absolute; top:12.3vw; left:50%; width:100%; margin:0 0 0 -50%; font-size:2.56vw; color:#2E70B0; font-weight:400; font-family:'Archivo Narrow'; font-style:normal; text-shadow:1px 1px 0 #fff; letter-spacing:0.08em; }
#btn-main-navi b i { font-style:normal; }
#btn-main-navi b i:last-child { display:none; }
.btn-hn-on { background:#74A4D8 !important; }
.btn-hn-on b { color:#fff !important; }
.btn-hn-on b i:first-child { display:none; transition:all 0.2s linear; }
.btn-hn-on b i:last-child { display:block !important; transition:all 0.2s linear; }
.btn-hn-on span:nth-child(1) { top:8.71vw !important; left:3.59vw !important; width:8.97vw !important; background:#fff !important; transform:rotate(30deg); transition:all 0.2s linear; }
.btn-hn-on span:nth-child(2) { display:none; }
.btn-hn-on span:nth-child(3) { top:8.71vw !important; left:3.59vw !important; width:8.97vw !important; background:#fff !important; transform:rotate(-30deg); transition:all 0.2s linear; }

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




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




#header-nav-logo { display:flex; align-items:center; width:46.73vw; height:17.94vw; margin:0 0 0 3.85vw; }
#header-nav-logo a { display:block; width:100%; aspect-raito:182/40; text-decoration:none; }
#header-nav-logo img { width:100%; height:100%; }

@media screen and (min-width:900px){
#header-nav-logo { display:none; }
}
@media screen and (min-width:1380px){

}




#header-nav-ul { padding:10.25vw 5.13vw; }
#header-nav-ul > li { border-bottom:1px #87B0DD solid; list-style:none; position:relative; }
#header-nav-ul > li > a,
#header-nav-ul > li > mark { display:flex; align-items:center; height:16.66vw; line-height:1.6; padding:0 8.97vw 0 7.69vw; font-size:4.61vw; color:#fff; font-weight:500; text-decoration:none; position:relative; }
#header-nav-ul > li > a:before { content:""; position:absolute; top:50%; left:2.05vw; width:2.56vw; height:0.51vw; background:#fff; transform:rotate(50deg); transform-origin:right top; }
#header-nav-ul > li > a:after { content:""; position:absolute; bottom:50%; left:2.05vw; width:2.56vw; height:0.51vw; background:#fff; transform:rotate(-50deg); transform-origin:right bottom; }

@media screen and (max-width:899px){
#header-nav-ul > li:first-of-type { border-top:1px #87B0DD solid; }
#header-nav-ul > li:first-of-type > a { background:url(../img/common/ico_home_01.svg) 1.28vw center/3.85vw auto no-repeat; }
#header-nav-ul > li:first-of-type > a:before { display:none; }
#header-nav-ul > li:first-of-type > a:after { display:none; }
}
@media screen and (min-width:900px){
#header-nav-ul { display:flex; flex-flow:row nowrap; justify-content:space-between; padding:0; position:relative; }
#header-nav-ul > li { border-bottom:none; }
#header-nav-ul > li > a, 
#header-nav-ul > li > mark { display:block; height:auto; background-image:linear-gradient(#74A4D8, #74A4D8); background-repeat: no-repeat; background-position:bottom right; background-size:0 0.14vw; transition:background-size 0.3s; padding:0.72vw 0.87vw; font-size:1.16vw; color:#1f1f1f; font-weight:700; position:relative; }
#header-nav-ul > li > a:before { display:none; }
#header-nav-ul > li > a:after { display:none; }
#header-nav-ul > li.dn-annai > mark { padding:0.72vw 1.74vw 0.72vw 0.87vw; }
#header-nav-ul > li.dn-annai > mark:before { content:""; position:absolute; top:calc(50% - 0.14vw); right:0.58vw; width:0.14vw; height:0.36vw; background:#1f1f1f; transform:rotate(45deg); transform-origin:right bottom; }
#header-nav-ul > li.dn-annai > mark:after { content:""; position:absolute; top:calc(50% - 0.14vw); right:0.58vw; width:0.14vw; height:0.36vw; background:#1f1f1f; transform:rotate(-45deg); transform-origin:left bottom; }
#header-nav-ul > li > a:hover, 
#header-nav-ul > li > mark:hover { background-position:bottom left; background-size:100% 0.14vw; cursor:pointer; }
#header-nav-ul > li > a:hover::before, 
#header-nav-ul > li > mark:hover::before { opacity:1; transition:0.6s ease; }
}
@media screen and (min-width:1380px){
#header-nav-ul {}
#header-nav-ul > li {}
#header-nav-ul > li > a, 
#header-nav-ul > li > mark { background-size:0 2px; padding:10px 12px; font-size:16px; }
#header-nav-ul > li > a:before {}
#header-nav-ul > li > a:after {}
#header-nav-ul > li.dn-annai > mark { padding:10px 24px 10px 12px; }
#header-nav-ul > li.dn-annai > mark:before { top:calc(50% - 0.14vw); right:0.58vw; width:0.14vw; height:0.36vw; }
#header-nav-ul > li.dn-annai > mark:after { top:calc(50% - 0.14vw); right:0.58vw; width:0.14vw; height:0.36vw; }
#header-nav-ul > li > a:hover, 
#header-nav-ul > li > mark:hover { background-size:100% 2px; }
}




.header-ul-sub { display:flex; flex-flow:row wrap; }
.header-ul-sub li { width:50%; border-bottom:1px #E0DCCF solid; list-style:none; position:relative; }
.header-ul-sub li:nth-child(odd) { border-right:1px #E0DCCF solid; }
.header-ul-sub li a { display:flex; align-items:center; height:14.35vw; line-height:1.5; padding:0 2.56vw 0 10.25vw; background:#fff; font-size:3.33vw; color:#333; font-weight:400; text-decoration:none; position:relative; }
.header-ul-sub li a:before { content:""; position:absolute; top:50%; left:5.13vw; width:2.56vw; height:0.26vw; background:#333; }

@media screen and (max-width:899px){
.header-ul-sub { max-height:0; overflow:hidden; transition:max-height .3s ease; }
.header-ul-sub-on { max-height:100svh; }
.btn-hd-sub-open { position:absolute; top:0; right:0; width:84.84vw; height:13.84vw; }
.btn-hd-sub-open:before { content:""; position:absolute; top:50%; right:5.13vw; width:4.61vw; height:0.51vw; background:#fff; }
.btn-hd-sub-open:after { content:""; position:absolute; top:50%; right:5.13vw; width:4.61vw; height:0.51vw; background:#fff; transform:rotate(90deg); }
.btn-hs-on:after { display:none; transition:all 0.2s linear; }
}
@media screen and (min-width:900px){ 
.btn-hd-sub-open { display:none; }
.btn-hs-on:after {}
.header-ul-sub { opacity:0; max-height:0; overflow:hidden; pointer-events:none; transition:max-height .25s ease, opacity .25s ease; display:flex; flex-flow:row wrap; position:absolute; top:3.4vw; left:0; width:39.85vw; background:#fff; z-index:99999; }
.dn-annai:last-of-type .header-ul-sub { left:auto; right:0; }
.header-ul-sub-on { opacity:1; max-height:100svh; pointer-events:auto; }
.header-ul-sub p { display:block; height:auto; border-top:none; border-bottom:1px #999 solid; margin:0 2.9vw; padding:0 0 1.45vw; font-size:1.01vw; color:#333; font-weight:600; }
.header-ul-sub li { width:50%; border-bottom:1px #eee solid; }
.header-ul-sub li:nth-child(odd) { border-right:1px #eee solid; }
.header-ul-sub li:nth-child(even) {}
.header-ul-sub li a:before { display:none; }
.header-ul-sub li a { height:3.62vw; background:#0A3B66; padding:0 1.74vw; font-size:1.01vw; color:#fff; font-weight:500; position:relative; }
.header-ul-sub li a:hover { background:#fff; color:#2E70B0; transition:0.6s ease; }
.header-ul-sub li a:hover::before { background:#2E70B0; transition:0.6s ease; }
}
@media screen and (min-width:1380px){
.btn-hd-sub-open {}
.btn-hs-on:after {}
.header-ul-sub { top:47px; width:550px; }
.dn-annai:last-of-type .header-ul-sub {}
.header-ul-sub-on {}
.header-ul-sub p { margin:0 2.9vw; padding:0 0 1.45vw; font-size:1.01vw; }
.header-ul-sub li {}
.header-ul-sub li:nth-child(odd) {}
.header-ul-sub li:nth-child(even) {}
.header-ul-sub li a:before {}
.header-ul-sub li a { height:50px; padding:0 24px; font-size:14px; }
}




#btn-header-members { width:84.1vw; margin:0 auto; }
#btn-header-members a { display:flex; justify-content:center; align-items:center; height:15.38vw; background:#fff url(../img/common/ico_menbers_02.svg) 20.51vw center/3.96vw auto no-repeat; border-radius:1.54vw; padding:0 0 0 7.69vw; font-size:4.61vw; color:#74A4D8; text-decoration:none; }
#header-link { width:29.23vw; margin:0 16.41vw 0 0; }
#header-link li { list-style:none; }
#header-link li a { display:flex; justify-content:center; align-items:center; height:7.69vw; background:#74A4D8 url(../img/common/ico_menbers_01.svg) 3.33vw center/3.21vw auto no-repeat; border-radius:1.54vw; padding:0 0 0 5.13vw; font-size:3.33vw; color:#fff; font-weight:300; text-decoration:none; }

@media screen and (min-width:900px){
#header-link { width:11.59vw; margin:0 2.9vw 0 0; }
#header-link li {}
#header-link li a { height:2.9vw; background:#74A4D8 url(../img/common/ico_menbers_01.svg) 2.17vw center/0.94vw auto no-repeat; border-radius:0.43vw; padding:0 0 0 1.74vw; font-size:1.09vw; }
#header-link li a:hover { opacity:0.7; transition:1s ease; }
#btn-header-members { display:none; }
}
@media screen and (min-width:1380px){
#header-link { width:160px; margin:0 40px 0 0; }
#header-link li {}
#header-link li a { height:40px; background:#74A4D8 url(../img/common/ico_menbers_01.svg) 30px center/13px auto no-repeat; border-radius:6px; padding:0 0 0 24px; font-size:15px; }
}




#bottom-nav { display:none; position:absolute; position:fixed; bottom:0; left:0; width:100%; z-index:99999; }
#bottom-nav ul { display:flex; flex-flow:row nowrap; box-shadow:0 0 0.77vw 0 #aaa; }
#bottom-nav li { width:calc(100% / 3); list-style:none; }
#bottom-nav li:nth-child(1) { border-right:1px #CED9E7 solid; }
#bottom-nav li a { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; height:20.51vw; padding:10.25vw 0 0; font-size:3.07vw; font-weight:500; letter-spacing:0.06em; text-decoration:none; }
#bottom-nav li:nth-child(1) a { background:#0A3B66 url(../img/common/ico_tel_02.svg) center 5.13vw/6.15vw auto no-repeat; color:#fff; }
#bottom-nav li:nth-child(1) dl { display:none; }
#bottom-nav li:nth-child(2) a { background:#0A3B66 url(../img/common/ico_calendar_02.svg) center 5.13vw/6.15vw auto no-repeat; color:#fff; }
#bottom-nav li:nth-child(3) a { background:#CED9E7 url(../img/common/ico_reservation_01.svg) center 5.13vw/6.15vw auto no-repeat; color:#0A3B66; }

@media screen and (min-width:900px){
#bottom-nav { position:static; width:auto; }
#bottom-nav ul { display:block; box-shadow:none; }
#bottom-nav li { width:auto; }
#bottom-nav li:nth-child(1) { position:absolute; top:2.9vw; right:calc(50% - 36.23vw); width:auto; height:auto; border-right:none; }
#bottom-nav li:nth-child(2) { position:fixed; top:14.49vw; right:0; width:4.71vw; height:18.26vw; box-shadow:0 0 3px 0 #aaa; z-index:99999; }
#bottom-nav li:nth-child(3) { position:fixed; top:33.33vw; right:0; width:4.71vw; height:18.26vw; box-shadow:0 0 2px 0 #aaa; z-index:99999; }
#bottom-nav li a { align-items:start; width:100%; height:100%; padding:6.52vw 0 0; font-size:1.09vw; writing-mode:vertical-rl; }
#bottom-nav li:nth-child(1) a { display:none; }
#bottom-nav li:nth-child(1) dl { display:block; text-align:right; }
#bottom-nav li:nth-child(1) dt { line-height:1.5; padding:0 0 0.36vw; font-size:1.16vw; color:#333; font-weight:700; letter-spacing:0.125em; }
#bottom-nav li:nth-child(1) dd { display:block; font-size:1.45vw; color:#0A3B66; font-weight:700; }
#bottom-nav li:nth-child(1) strong { display:inline-block; margin:0 0 0 0.29vw; font-size:2.53vw; font-family:'DM Sans'; font-weight:300; font-style:normal; }
#bottom-nav li:nth-child(2) a { background:#0A3B66 url(../img/common/ico_calendar_02.svg) center 3.62vw/1.74vw auto no-repeat; }
#bottom-nav li:nth-child(3) a { background:#CED9E7 url(../img/common/ico_reservation_01.svg) center 3.62vw/1.74vw auto no-repeat; }
#bottom-nav li a:hover { opacity:0.7; transition:1s ease; }
}
@media screen and (min-width:1380px){
#bottom-nav {}
#bottom-nav ul {}
#bottom-nav li {}
#bottom-nav li:nth-child(1) { top:40px; right:calc(50% - 500px); }
#bottom-nav li:nth-child(2) { top:200px; width:65px; height:252px; }
#bottom-nav li:nth-child(3) { top:460px; width:65px; height:252px; }
#bottom-nav li a { padding:90px 0 0; font-size:15px; }
#bottom-nav li:nth-child(1) a {}
#bottom-nav li:nth-child(1) dl {}
#bottom-nav li:nth-child(1) dt { padding:0 0 5px; font-size:16px; }
#bottom-nav li:nth-child(1) dd { font-size:20px; }
#bottom-nav li:nth-child(1) strong { margin:0 0 0 4px; font-size:35px; }
#bottom-nav li:nth-child(2) a { background:#0A3B66 url(../img/common/ico_calendar_02.svg) center 50px/24px auto no-repeat; }
#bottom-nav li:nth-child(3) a { background:#CED9E7 url(../img/common/ico_reservation_01.svg) center 50px/24px auto no-repeat; }
}




html #wpadminbar { position:fixed; }
body.admin-bar {}
body.admin-bar #btn-main-navi { top:46px; }
body.admin-bar #header-nav-menu { top:46px; }

@media screen and (min-width:900px) {
body.admin-bar {}
body.admin-bar #bottom-nav { margin-top:32px; }
body.admin-bar #header-nav-menu { top:32px; }
}
@media screen and (min-width:1380px) {

}




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

footer { padding:0; color:#fff; }
#footer-wrap { }

@media screen and (min-width:900px){
footer { padding:0; }
#footer-wrap { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:start; width:59.85vw; margin:0 auto; padding:5.8vw 0 4.64vw; }
}
@media screen and (min-width:1380px){
footer {}
#footer-wrap { width:826px; padding:80px 0 64px; }
}




#footer-info { padding:10.25vw 5.13vw 0; }
#footer-logo { width:51.28vw; padding:0 0 5.13vw; }
#footer-logo img { width:100%; height:auto; }
#footer-ad { line-height:1.6; padding:0 0 5.13vw; font-size:3.85vw; color:#333; font-weight:400; }
#footer-tel { display:table; background:url(../img/common/ico_tel_01.svg) left center no-repeat; background-size:7.18vw auto; text-align:center; margin:0 auto 7.69vw; padding:0 0 0 10.25vw; font-size:9.23vw; color:#0A3B66; font-family:'DM Sans'; font-weight:300; font-style:normal; letter-spacing:0.01em; }

@media screen and (min-width:900px){
#footer-info { width:29.71vw; padding:0; }
#footer-logo { width:20.28vw; padding:0 0 1.16vw; }
#footer-logo img {}
#footer-ad { padding:0 0 1.16vw; font-size:1.09vw; }
#footer-tel { background-size:2.03vw auto; text-align:left; margin:0; padding:0 0 0 2.53vw; font-size:2.61vw; }
}
@media screen and (min-width:1380px){
#footer-info { width:410px; }
#footer-logo { width:280px; padding:0 0 16px; }
#footer-logo img {}
#footer-ad { padding:0 0 16px; font-size:15px; }
#footer-tel { background-size:28px auto; padding:0 0 0 35px; font-size:36px; }
}




.medical-hour-box { margin:0 5.13vw 10.25vw; }
.medical-hour-box table { width:100%; background:#fff; border:none; margin:0 0 5.13vw; color:#333; }
.medical-hour-box thead th { text-align:center; padding:2.05vw 0; font-size:3.85vw; font-weight:400; }
.medical-hour-box thead th:first-of-type { width:30%; }
.medical-hour-box thead th:not(:first-of-type) { width:calc(70% / 7); }
.medical-hour-box tbody th { border-top:1px #CED9E7 solid; text-align:left; padding:2.05vw 0 2.05vw 2.05vw; font-size:3.85vw; font-weight:400; }
.medical-hour-box tbody th sup { font-size:2.34vw; }
.medical-hour-box td { border-top:1px #CED9E7 solid; text-align:center; padding:2.05vw 0; font-size:4.1vw; color:#0A3B66; font-weight:400; }
.medical-hour-note { line-height:1.6; padding:0 0 5.13vw; font-size:3.59vw; color:#333; }
.medical-hour-closed { line-height:1.6; font-size:3.59vw; color:#333; }
.medical-hour-closed dt { margin:0 0 1.03vw; }
.medical-hour-closed dd { padding:0 0 0 0.8rem; text-indent:-0.8rem; }

@media screen and (min-width:900px){
.medical-hour-box { width:29.71vw; margin:0; }
.medical-hour-box table { margin:0 0 1.16vw; }
.medical-hour-box thead th { padding:0.87vw 0; font-size:1.09vw; }
.medical-hour-box thead th:first-of-type { width:30%; }
.medical-hour-box thead th:not(:first-of-type) { width:calc(70% / 7); }
.medical-hour-box tbody th { padding:0.87vw 0 0.87vw 1.45vw; font-size:1.01vw; }
.medical-hour-box tbody th sup { font-size:0.58vw; }
.medical-hour-box td { padding:0.87vw 0; font-size:1.16vw; }
.medical-hour-note { padding:0 0 1.16vw; font-size:1.01vw; }
.medical-hour-closed { font-size:1.01vw; }
.medical-hour-closed dt { margin:0 0 0.36vw; }
.medical-hour-closed dd {}
}
@media screen and (min-width:1380px){
.medical-hour-box { width:410px; margin:0; }
.medical-hour-box table { margin:0 0 16px; }
.medical-hour-box thead th { padding:12px 0; font-size:15px; }
.medical-hour-box thead th:first-of-type { width:30%; }
.medical-hour-box thead th:not(:first-of-type) { width:calc(70% / 7); }
.medical-hour-box tbody th { padding:12px 0 12px 20px; font-size:14px; }
.medical-hour-box tbody th sup { font-size:8px; }
.medical-hour-box td { padding:12px 0; font-size:16px; }
.medical-hour-note { padding:0 0 16px; font-size:14px; }
.medical-hour-closed { font-size:14px; }
.medical-hour-closed dt { margin:0 0 5px; }
.medical-hour-closed dd {}
}




#footer-nav {}
#footer-nav-ul { padding:0; }
#footer-nav-ul > li { border-bottom:1px #678096 solid; list-style:none; position:relative; }
#footer-nav-ul > li > a,
#footer-nav-ul > li > mark { display:flex; align-items:center; height:15.64vw; line-height:1.6; background:#0A3B66; padding:0 8.97vw 0 12.82vw; font-size:4.61vw; color:#fff; font-weight:500; text-decoration:none; position:relative; }
#footer-nav-ul > li > a:before { content:""; position:absolute; top:50%; left:5.13vw; width:2.56vw; height:0.51vw; background:#fff; transform:rotate(50deg); transform-origin:right top; }
#footer-nav-ul > li > a:after { content:""; position:absolute; bottom:50%; left:5.13vw; width:2.56vw; height:0.51vw; background:#fff; transform:rotate(-50deg); transform-origin:right bottom; }
.btn-ft-sub-open { position:absolute; top:0; right:0; width:100%; height:12.82vw; }
.btn-ft-sub-open:before { content:""; position:absolute; top:50%; right:5.13vw; width:4.61vw; height:0.51vw; background:#fff; }
.btn-ft-sub-open:after { content:""; position:absolute; top:50%; right:5.13vw; width:4.61vw; height:0.51vw; background:#fff; transform:rotate(90deg); }
.btn-fs-on:after { display:none; transition:all 0.2s linear; }
.footer-ul-sub { display:flex; flex-flow:row wrap; }
.footer-ul-sub li { width:50%; border-bottom:1px #E0DCCF solid; list-style:none; position:relative; }
.footer-ul-sub li:nth-child(odd) { border-right:1px #E0DCCF solid; }
.footer-ul-sub li a { display:flex; align-items:center; height:14.35vw; line-height:1.5; padding:0 2.56vw 0 10.25vw; background:#fff; font-size:3.59vw; color:#333; font-weight:400; text-decoration:none; position:relative; }
.footer-ul-sub li a:before { content:""; position:absolute; top:50%; left:5.13vw; width:2.56vw; height:0.26vw; background:#333; }

@media screen and (max-width:899px){
.footer-ul-sub { max-height:0; overflow:hidden; transition:max-height .3s ease; }
.footer-ul-sub-on { max-height:200svh; }
}
@media screen and (min-width:900px){
#footer-nav { background:#0A3B66; padding:5.07vw 0 0; }
#footer-nav-ul { display:flex; flex-flow:column wrap; width:59.85vw; height:42.02vw; margin:0 auto; padding:0; }
#footer-nav-ul > li { width:17.39vw; border-bottom:none; margin:0 0 2.17vw; }
#footer-nav-ul .dn-annai { position:relative; }
#footer-nav-ul > li > a,
#footer-nav-ul > li > mark { height:auto; background:none; border-bottom:1px #fff solid; margin:0 0 1.3vw; padding:0 0 1.3vw; font-size:1.3vw; }
#footer-nav-ul > li > a:before { top:calc(50% - 0.72vw); left:auto; right:0; width:0.58vw; height:0.07vw; }
#footer-nav-ul > li > a:after { bottom:calc(50% + 0.72vw); left:auto; right:0; width:0.58vw; height:0.07vw; }
#footer-nav-ul > li > a:hover { text-decoration:underline; transition:1s ease; }
.btn-ft-sub-open { display:none; }
.footer-ul-sub { height:auto; padding:0; }
.footer-ul-sub li { width:100%; border-bottom:none; }
.footer-ul-sub li:nth-child(odd) { border-right:none; }
.footer-ul-sub li mark { height:auto; background:none; padding:0 0 0.72vw 1.74vw; font-size:1.01vw; color:#fff; }
.footer-ul-sub li a { height:auto; background:none; padding:0 0 0.72vw 1.74vw; font-size:1.01vw; color:#fff; }
.footer-ul-sub li a:before { top:0.72vw; right:auto; left:0; width:0.72vw; height:1px; background:#fff; transform:rotate(0); }
.footer-ul-sub li a:after { display:none; }
.footer-ul-sub li a:hover { text-decoration:underline; transition:1s ease; }
}
@media screen and (min-width:1380px){
#footer-nav { padding:70px 0 0; }
#footer-nav-ul { width:826px; height:580px; }
#footer-nav-ul > li { width:240px; margin:0 0 30px; }
#footer-nav-ul .dn-annai {}
#footer-nav-ul > li > a,
#footer-nav-ul > li > mark { margin:0 0 18px; padding:0 0 18px; font-size:18px; }
#footer-nav-ul > li > a:before { top:calc(50% - 10px); width:8px; height:1px; }
#footer-nav-ul > li > a:after { bottom:calc(50% + 10px); width:8px; height:1px; }
.btn-ft-sub-open {}
.footer-ul-sub {}
.footer-ul-sub li {}
.footer-ul-sub li:nth-child(odd) {}
.footer-ul-sub li mark { padding:0 0 10px 24px; font-size:14px; }
.footer-ul-sub li a { padding:0 0 10px 24px; font-size:14px; }
.footer-ul-sub li a:before { top:10px; width:10px; }
.footer-ul-sub li a:after {}
}




#footer-copy { background:#1E1E1E; text-align:center; padding:3.59vw 0; font-size:3.07vw; color:#fff; }
#footer-copy a { color:#fff; }

@media screen and (min-width:900px){
#footer-copy { padding:1.45vw 0; font-size:1.01vw; }
#footer-copy a {}
#footer-copy a:hover { text-decoration: none; }
}
@media screen and (min-width:1380px){
#footer-copy { padding:20px 0; font-size:14px; }
#footer-copy a {}
}





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

#scroll-top { position:absolute; position:fixed; bottom:25.64vw; right:4.1vw; width:12.82vw; z-index:99997; }
#scroll-top a { display:block; }
#scroll-top img { width:100%; height:auto; }

@media screen and (min-width:900px){
#scroll-top { bottom:1.45vw; right:1.45vw; width:3.98vw; }
#scroll-top a {}
#scroll-top a:hover { opacity:0.7; transition:all 1s; }
}
@media screen and (min-width:1380px){
#scroll-top { bottom:20px; right:20px; width:55px; }
#scroll-top a {}
}





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

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

@media screen and (max-width:899px){
main { overflow:hidden; }
}
@media screen and (min-width:900px){
#content {}
main {}
#main-wrap {}
#home #main-wrap {}
}
@media screen and (min-width:1380px){
#content {}
main {}
#main-wrap {}
#home #main-wrap {}
}




.txt-basic p { line-height:1.8; font-size:4.1vw; 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; }

@media screen and (min-width:900px){
.txt-basic p { font-size:1.16vw; }
.txt-basic p:not(:last-child) { padding:0 0 1.16vw; }
.txt-basic mark {}
}
@media screen and (min-width:1380px){
.txt-basic p { font-size:16px; }
.txt-basic p:not(:last-child) { padding:0 0 16px; }
.txt-basic mark {}
}




.btn-more { width:61.54vw; margin:0 auto; position:relative; }
.btn-more a { display:flex; justify-content:center; align-items:center; height:14.35vw; line-height:1.25; background:#3E6FAE; border-radius:14.35vw; font-size:3.85vw; color:#fff; font-weight:400; letter-spacing:0.14vw; text-decoration:none; position:relative; }
.btn-more a:before { content:""; position:absolute; top:calc(50% - 1.055vw); right:4.1vw; width:2.31vw; height:0.51vw; background:#fff; transform:rotate(45deg); }
.btn-more a:after { content:""; position:absolute; bottom:calc(50% - 1.055vw); right:4.1vw; width:2.31vw; height:0.51vw; background:#fff; transform:rotate(-45deg); }

@media screen and (min-width:900px){
.btn-more { width:23.91vw; margin:0 auto; }
.btn-more a { height:3.76vw; padding:0 1.45vw 0 0; font-size:1.09vw; letter-spacing:0; }
.btn-more a:before { top:1.66vw; right:1.16vw; width:0.65vw; height:0.14vw; }
.btn-more a:after { top:2.1vw; right:1.16vw; width:0.65vw; height:0.14vw; }
.btn-more a:hover { opacity:0.7; transition:0.6s ease; }
}
@media screen and (min-width:1380px){
.btn-more { width:330px; }
.btn-more a { height:52px; padding:0 20px 0 0; font-size:15px; }
.btn-more a:before { top:23px; right:16px; width:9px; height:2px; }
.btn-more a:after { top:29px; right:16px; width:9px; height:2px; }
}




.btn-more2 { width:61.54vw; margin:0 auto; position:relative; }
.btn-more2 a { display:flex; justify-content:center; align-items:center; height:14.35vw; line-height:1.25; background:#fff; border:1px #3E6FAE solid; border-radius:14.35vw; font-size:3.85vw; color:#3E6FAE; font-weight:400; letter-spacing:0.14vw; text-decoration:none; position:relative; }
.btn-more2 a:before { content:""; position:absolute; top:calc(50% - 1.055vw); right:4.1vw; width:2.31vw; height:0.51vw; background:#3E6FAE; transform:rotate(45deg); }
.btn-more2 a:after { content:""; position:absolute; bottom:calc(50% - 1.055vw); right:4.1vw; width:2.31vw; height:0.51vw; background:#3E6FAE; transform:rotate(-45deg); }

@media screen and (min-width:900px){
.btn-more2 { width:23.91vw; margin:0 auto; }
.btn-more2 a { height:3.76vw; padding:0 1.45vw 0 0; font-size:1.09vw; letter-spacing:0; }
.btn-more2 a:before { top:1.66vw; right:1.16vw; width:0.65vw; height:0.14vw; }
.btn-more2 a:after { top:2.1vw; right:1.16vw; width:0.65vw; height:0.14vw; }
.btn-more2 a:hover { opacity:0.7; transition:0.6s ease; }
}
@media screen and (min-width:1380px){
.btn-more2 { width:330px; }
.btn-more2 a { height:52px; padding:0 20px 0 0; font-size:15px; }
.btn-more2 a:before { top:23px; right:16px; width:9px; height:2px; }
.btn-more2 a:after { top:29px; right:16px; width:9px; height:2px; }
}




.btn-2pane { }
.btn-2pane li { width:100%; list-style:none; }

@media screen and (max-width:899px){
.btn-2pane li:not(:last-child) { margin-bottom:4.1vw; }
}
@media screen and (min-width:900px){
.btn-2pane { display:flex; flex-flow;row nowrap; justify-content:space-between; width:880px; margin:0 auto; }
.btn-2pane li { width:45%; }
}
@media screen and (min-width:1380px){
.btn-2pane { display:flex; flex-flow;row nowrap; }
.btn-2pane li {}
}




.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:900px){
.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:1380px){
.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:900px){
.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:1380px){
.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; }




