@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:'Zen Maru Gothic'; font-style:normal; font-weight:400; }
#content {}
.font-min {}
.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
 ---------------------------------------------- */

/* zen-maru-gothic-regular - japanese */
@font-face {
  font-display:swap;
  font-family:'Zen Maru Gothic';
  font-style:normal;
  font-weight:400;
  src:url('../fonts/zen-maru-gothic-v19-japanese-regular.woff2') format('woff2');
}
/* zen-maru-gothic-500 - japanese */
@font-face {
  font-display:swap;
  font-family:'Zen Maru Gothic';
  font-style:normal;
  font-weight:500;
  src:url('../fonts/zen-maru-gothic-v19-japanese-500.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 { height:16.41vw; position:relative; }
#header-logo { width:59vw; margin:0 auto; padding:3.59vw 0 0; z-index:99991; }
#header-logo a { display:block; text-decoration:none; }
#header-logo a img { width:100%; height:auto; }
#header-txt { color:#384658; font-weight:600; letter-spacing:0.05em; }

@media screen and (max-width:899px){
header { position:relative; }
header:before { content:""; position:absolute; bottom:5.13vw; left:2.05vw; width:3.07vw; height:3.07vw; background:#F0F0F0; border-radius:0.51vw; }
header:after { content:""; position:absolute; bottom:2.05vw; left:4.87vw; width:3.07vw; height:3.07vw; background:#F0F0F0; border-radius:0.51vw; }
#header-wrap:before { content:""; position:absolute; top:5.38vw; right:7.94vw; width:3.07vw; height:3.07vw; background:#F0F0F0; border-radius:0.51vw; }
#header-wrap:after { content:""; position:absolute; top:2.31vw; right:5.13vw; width:3.07vw; height:3.07vw; background:#F0F0F0; border-radius:0.51vw; }
#header-txt { position:absolute; top:2.54vw; left:31vw; padding:0.51vw 0 0 2.05vw; font-size:1.94vw; }
}
@media screen and (min-width:900px){
header {}
#header-wrap { display:flex; flex-flow:row nowrap; justify-content:space-between; align-items:center; height:8.69vw; margin:0 auto; }
#header-logo { width:18.69vw; margin:0 0 0 1.45vw; padding:0; position:relative; z-index:1; }
#header-logo a {}
#header-logo a:hover { opacity:0.7; transition:1s ease; }
#header-txt { display:block; position:absolute; top:2.61vw; left:5.21vw; padding:0.21vw 0.29vw; font-size:0.61vw; z-index:2; }
}
@media screen and (min-width:1380px){
header {}
#header-wrap { width:1380px; height:120px; }
#header-logo { width:258px; margin:0 0 0 20px; }
#header-logo a {}
#header-txt { top:40px; left:72px; padding:0 0 0 4px; font-size:8.4px; }
}




#header-nav {}
#header-nav-menu { position:fixed; top:0; right:100%; width:calc(100% - 7.69vw); height:100%; background:rgba(56,70,88,1); overflow-y:scroll; margin:0 7.69vw 0 0; padding:16.41vw 0 30.77vw; transition:all 0.4s linear; z-index:99998; }
#header-nav-menu.clicked { right:0; transition:all 0.2s linear; }

@media screen and (min-width:900px){
#header-nav { width:36.23vw; margin:0 13.04vw 0 0; }
#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:500px; margin:0 180px 0 0; }
#header-nav-menu {}
}




#btn-main-navi { position:absolute; position:fixed; bottom:0; left:0; width:33.33vw; height:20.51vw; background:#384658; border:none; text-align:center; transition:all 0.4s linear; z-index:99999; }
#btn-main-navi span { position:absolute; left:calc(50% - 2.82vw); width:5.64vw; height:0.77vw; background:#fff; border-radius:0.77vw; }
#btn-main-navi span:nth-child(1) { top:5.13vw; }
#btn-main-navi span:nth-child(2) { top:7.45vw; }
#btn-main-navi span:nth-child(3) { top:9.77vw; }
#btn-main-navi b { position:absolute; bottom:4.1vw; left:50%; width:100%; margin:0 0 0 -50%; font-size:3.07vw; color:#fff; font-weight:400; letter-spacing:0.08em; }
#btn-main-navi b i { font-style:normal; }
#btn-main-navi b i:last-child { display:none; }
.btn-hn-on {}
.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:7.45vw !important; left:calc(50% - 3.85vw) !important; width:7.69vw !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:7.45vw !important; left:calc(50% - 3.85vw) !important; width:7.69vw !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-ul { border-top:.5px #69727E solid; padding:0 0 7.69vw; }
#header-nav-ul > li { border-bottom:.5px #69727E solid; list-style:none; position:relative; }
#header-nav-ul > li > a,
#header-nav-ul > li > mark { display:flex; align-items:center; height:13.84vw; line-height:1.8; padding:0 12.82vw 0 9.74vw; font-size:3.85vw; color:#fff; font-weight:500; text-decoration:none; position:relative; }
#header-nav-ul > li > a:before { content:""; position:absolute; top:calc(50% - 0.9vw); left:5.13vw; width:0; height:0; border-style:solid; border-width:0.9vw 0 0.9vw 1.54vw; border-color: transparent transparent transparent #fff; }
#header-nav-ul > li > mark:before { content:""; position:absolute; top:calc(50% - 0.9vw); left:5.13vw; width:0; height:0; border-style:solid; border-width:0.9vw 0 0.9vw 1.54vw; border-color: transparent transparent transparent #fff; }

@media screen and (max-width:899px){
#header-nav-ul > li:first-of-type > a { background:url(../img/common/ico_home_01.svg) 4.1vw center/2.82vw auto no-repeat; }
#header-nav-ul > li:first-of-type > a:before { display:none; }
#header-nav-ul > li.dn-annai > a { display:none; }
#header-nav-ul > li.dn-annai > mark { display:flex; }

}
@media screen and (min-width:900px){
#header-nav-ul { display:flex; flex-flow:row nowrap; justify-content:space-between; border-top:none; margin:0; padding:0; position:relative; }
#header-nav-ul > li { border-bottom:none; position:relative; }
#header-nav-ul > li > a,
#header-nav-ul > li > mark { height:3.62vw; background-image:linear-gradient(#333, #333); background-repeat: no-repeat; background-position:bottom right; background-size:0 0.14vw; transition:background-size 0.3s;  padding:0 0.29vw; font-size:1.01vw; color:#384658; font-weight:600; position:relative; }
#header-nav-ul > li > a:before { display:none; }
#header-nav-ul > li.dn-annai > a { display:flex; padding:0 1.16vw 0 0.29vw !important; }
#header-nav-ul > li.dn-annai > a:after { content:""; position:absolute; top:calc(50% - 0.29vw); right:0; width:0; height:0; border-style:solid; border-width:0.43vw 0.29vw 0 0.29vw; border-color:#2971A9 transparent transparent transparent; }
#header-nav-ul > li.dn-annai > mark { display:none; }
#header-nav-ul > li > a:hover,
#header-nav-ul > li > mark:hover { background-position:bottom left; background-size:100% 0.14vw; color:#2971A9; transition:1s ease; cursor:pointer; }
#header-nav-ul > li > a:hover::before,
#header-nav-ul > li > mark:hover::before { opacity:1; transition:1s ease; }
}
@media screen and (min-width:1380px){
#header-nav-ul {}
#header-nav-ul > li {}
#header-nav-ul > li > a,
#header-nav-ul > li > mark { height:50px; background-size:0 2px; padding:0 4px; font-size:14px; }
#header-nav-ul > li > a:before {}
#header-nav-ul > li > a:after {}
#header-nav-ul > li.dn-annai > a { padding:0 16px 0 4px !important; }
#header-nav-ul > li.dn-annai > a:after { top:calc(50% - 4px); right:0; border-width:6px 4px 0 4px; }
#header-nav-ul > li.dn-annai > mark {}
#header-nav-ul > li > a:hover,
#header-nav-ul > li > mark:hover { background-size:100% 2px; }
}




.header-ul-sub {}
.header-ul-sub > li { width:100%; border-bottom:1px #384658 solid; list-style:none; position:relative; }
.header-ul-sub > li > a { display:flex; align-items:center; height:13.84vw; line-height:1.8; padding:0 4.1vw 0 14.35vw; background:#E5E5E5; font-size:3.85vw; color:#384658; font-weight:500; text-decoration:none; position:relative; }
.header-ul-sub > li > a:before { content:""; position:absolute; top:calc(50% - 0.9vw); left:10.25vw; width:0; height:0; border-style:solid; border-width:0.9vw 0 0.9vw 1.54vw; border-color:transparent transparent transparent #384658; }
.header-ul-grandchild { border-top:1px #384658 solid; }
.header-ul-grandchild > li { border-bottom:1px #E5E5E5 solid; list-style:none; }
.header-ul-grandchild > li a { display:flex; align-items:center; height:12.82vw; line-height:1.3; background:#fff; padding:0 4.1vw 0 14.87vw; font-size:3.59vw; color:#384658; font-weight:500; text-decoration:none; position:relative; }
.header-ul-grandchild > li a:before { content:""; position:absolute; top:50%; left:10vw; width:2.56vw; height:0.51vw; background:#CFCFCF; }

@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:200svh; }
.btn-hd-sub-open { position:absolute; top:0; right:0; width:100%; height:14.35vw; }
.btn-hd-sub-open:before { content:""; position:absolute; top:50%; right:4.1vw; width:5.13vw; height:0.51vw; background:#fff; }
.btn-hd-sub-open:after { content:""; position:absolute; top:50%; right:4.1vw; width:5.13vw; 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:column wrap; position:absolute; top:3.62vw; left:calc(50% - 28.98vw); width:57.97vw; height:17.39vw; background:#2971A9; padding:1.74vw 0 1.74vw 1.74vw; 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 > li { width:calc(100% / 3); border-bottom:none; }
.header-ul-sub > li > a { height:2.17vw; background:none; padding:0 0 0 1.09vw; font-size:0.94vw; color:#fff; font-weight:500; position:relative; }
.header-ul-sub > li > a:before { top:calc(50% - 0.29vw); left:0; border-width:0.29vw 0 0.29vw 0.43vw; border-color:transparent transparent transparent #fff; }
.header-ul-sub > li > a:hover { text-decoration:underline; transition:1s ease; }
.header-ul-grandchild { border-top:none; }
.header-ul-grandchild > li { border-bottom:none; }
.header-ul-grandchild > li a { height:2.17vw; background:none; padding:0 0 0 2.17vw; font-size:0.94vw; color:#fff; font-weight:400; }
.header-ul-grandchild > li a:before { left:1.01vw; width:0.58vw; height:0.07vw; background:#fff; }
.header-ul-grandchild > li a:hover { text-decoration:underline; transition:1s ease; }
}
@media screen and (min-width:1380px){
.btn-hd-sub-open {}
.btn-hs-on:after {}
.header-ul-sub { top:50px; left:calc(50% - 400px); width:800px; height:240px; padding:24px 0 24px 24px; }
.dn-annai:last-of-type .header-ul-sub {}
.header-ul-sub-on {}
.header-ul-sub > li {}
.header-ul-sub > li > a { height:30px; padding:0 0 0 15px; font-size:13px; }
.header-ul-sub > li > a:before { top:calc(50% - 4px); left:0; border-width:4px 0 4px 6px; }
.header-ul-grandchild {}
.header-ul-grandchild > li {}
.header-ul-grandchild > li a { height:30px; padding:0 0 0 30px; font-size:13px; }
.header-ul-grandchild > li a:before { left:14px; width:8px; height:1px; }
}




#header-nav-link { width:76.92vw; margin:0 auto 7.69vw; }
#header-nav-link a { display:flex; justify-content:center; align-items:center; height:14.35vw; background:#fff; border-radius:14.35vw; font-size:3.59vw; color:#2971A9; font-weight:600; text-decoration:none; position:relative; }
#header-nav-link a:before { content:""; position:absolute; top:calc(50% - 0.9vw); left:14.35vw; width:0; height:0; border-style:solid; border-width:0.9vw 0 0.9vw 1.54vw; border-color: transparent transparent transparent #2971A9; }

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




#bottom-nav { position:absolute; position:fixed; bottom:0; left:33.33vw; width:calc(100% - 33.33vw); z-index:99999; }
#bottom-nav ul { display:flex; flex-flow:row nowrap; }
#bottom-nav li { width:calc(100% / 2); list-style:none; }
#bottom-nav li:nth-child(1) { border-right:1px #384658 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.08em; text-decoration:none; }
#bottom-nav li:nth-child(1) a { background:#2971A9 url(../img/common/ico_tel_01.svg) center 4.61vw/auto 6.66vw no-repeat; color:#fff; }
#bottom-nav li:nth-child(1) span { display:block; }
#bottom-nav li:nth-child(1) em { display:none; }
#bottom-nav li:nth-child(2) a { background:#2971A9 url(../img/common/ico_calendar_01.svg) center 4.61vw/auto 6.66vw no-repeat; color:#fff; }

@media screen and (min-width:900px){
#bottom-nav { position:static; width:auto; }
#bottom-nav ul { display:block; }
#bottom-nav li { width:auto; }
#bottom-nav li:nth-child(1) { position:absolute; top:2.75vw; left:50%; width:23.18vw; height:auto; border-right:none; margin:0 0 0 -23.18vw; padding:0; }
#bottom-nav li:nth-child(2) { position:absolute; top:2.9vw; right:calc(50% - 48.55vw); width:10.14vw; height:2.61vw; z-index:99999; }
#bottom-nav li a { width:100%; height:100%; padding:0; }
#bottom-nav li:nth-child(1) a { background:url(../img/common/ico_tel_02.svg) 1.01vw 0.36vw/1.74vw auto no-repeat; padding:0 0 0 2.32vw; pointer-events:none; }
#bottom-nav li:nth-child(1) span { display:none; }
#bottom-nav li:nth-child(1) em { display:block; font-size:2.32vw; color:#384658; font-weight:700; font-style:normal; }
#bottom-nav li:nth-child(2) a { background:#2971A9 url(../img/common/ico_calendar_01.svg) 1.01vw center/0.94vw auto no-repeat; padding:0 0 0 1.45vw; font-size:1.01vw; }
#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:38px; width:320px; margin:0 0 0 -320px; }
#bottom-nav li:nth-child(2) { top:40px; right:calc(50% - 670px); width:140px; height:36px; }
#bottom-nav li a {}
#bottom-nav li:nth-child(1) a { background:url(../img/common/ico_tel_02.svg) 14px 5px/24px auto no-repeat; padding:0 0 0 32px; }
#bottom-nav li:nth-child(1) span {}
#bottom-nav li:nth-child(1) em { font-size:32px; }
#bottom-nav li:nth-child(2) a { background:#2971A9 url(../img/common/ico_calendar_01.svg) 14px center/13px auto no-repeat; padding:0 0 0 20px; font-size:14px; }
}




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

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

}




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

footer { background:#2971A9; padding:10.25vw 0 20.51vw; color:#384658; }
#footer-wrap {}

@media screen and (min-width:900px){
footer { padding:0; }
#footer-wrap { display:grid; grid-template-columns:736px 1fr margin:0 auto 5.8vw; }
}
@media screen and (min-width:1380px){
footer {}
#footer-wrap { width:1380px; margin:0 auto 80px; }
}




#footer-img { margin:0 0 -3.85vw; position:relative; z-index:1; }
#footer-img img { width:94.87vw; height:64.1vw; object-fit:cover; object-position:0 110%; border-radius:0 2.31vw 0 0; }
#footer-info { background:#fff; border-radius:2.31vw 0 0 2.31vw; margin:0 0 7.69vw 5.13vw; padding:6.66vw 5.13vw 7.18vw; position:relative; z-index:2; }
#footer-info:before { content:""; position:absolute; top:-3.07vw; left:-2.05vw; width:6.15vw; height:6.15vw; background:#FF8B7E; border-radius:1.03vw; }
#footer-info:after { content:""; position:absolute; top:2.82vw; left:3.85vw; width:3.07vw; height:3.07vw; background:#FFEAB0; border-radius:0.51vw; }
#footer-logo { width:82.56vw; margin:0 auto; padding:0 0 5.13vw; }
#footer-logo img { width:100%; height:auto; }
#footer-tel { background:url(../img/common/ico_tel_02.svg) left center no-repeat; background-size:5.38vw auto; margin:0 0 5.13vw; padding:1.03vw 0 1.03vw 7.18vw; font-size:4.61vw; font-weight:600; letter-spacing:0.05em; }
#footer-ad { line-height:1.8; padding:0 0 5.13vw; font-size:3.59vw; font-weight:500; }
#footer-box {}
#footer-access { padding:0 0 6.15vw; }
#footer-access li { line-height:1.8; padding:0 0 0 4.1vw; font-size:3.59vw; font-weight:500; list-style:none; position:relative; }
#footer-access li:before { content:""; position:absolute; top:calc(50% - 0.64vw); left:0; width:1.28vw; height:1.28vw; background:#75E8E5; }


@media screen and (min-width:900px){
#footer-img { grid-row:1/3; grid-column:1/2; width:53.33vw; margin:0; }
#footer-img img { width:100%; height:auto; border-radius:0; }
#footer-info { grid-row:1/2; grid-column:2/3; width:47.97vw; border-radius:0.58vw; margin:4.35vw 0 1.45vw -4.49vw; padding:2.9vw 1.74vw 3.26vw 2.9vw; }
#footer-info:before { top:-2.1vw ; left:auto; right:1.09vw; width:4.13vw; height:4.13vw; border-radius:0.29vw; }
#footer-info:after { top:2.03vw; left:auto; right:-0.94vw; width:2.03vw; height:2.03vw; border-radius:0.14vw; }
#footer-logo { width:21.44vw; margin:0; padding:0 0 1.16vw; }
#footer-logo img {}
#footer-tel { background-size:1.52vw auto; margin:0 0 1.16vw; padding:0.29vw 0 0.29vw 2.17vw; font-size:1.59vw; }
#footer-ad { padding:0 0 1.16vw; font-size:1.09vw; }
#footer-box { display:flex; flex-flow:row-reverse nowrap; justify-content:space-between; }
#footer-access { width:18.84vw; padding:0; position:relative; }
#footer-access:before { content:""; position:absolute; top:0; left:-1.45vw; width:0.5px; height:8.26vw; background:#000; }
#footer-access li { line-height:2; padding:0 0 0 1.16vw; font-size:1.01vw; }
#footer-access li:before { top:calc(50% - 0.21vw); width:0.43vw; height:0.43vw; }
}
@media screen and (min-width:1380px){
#footer-img { width:736px; }
#footer-img img {}
#footer-info { width:662px; border-radius:8px; margin:60px 0 20px -62px; padding:40px 24px 45px 40px; }
#footer-info:before { top:-29px ; right:15px; width:57px; height:57px; border-radius:4px; }
#footer-info:after { top:28px; right:-13px; width:28px; height:28px; border-radius:2px; }
#footer-logo { width:296px; padding:0 0 16px; }
#footer-logo img {}
#footer-tel { background-size:21px auto; margin:0 0 16px; padding:4px 0 4px 30px; font-size:22px; }
#footer-ad { padding:0 0 16px; font-size:15px; }
#footer-box {}
#footer-access { width:260px; }
#footer-access:before { left:-20px; width:0.5px; height:114px; }
#footer-access li { padding:0 0 0 16px; font-size:14px; }
#footer-access li:before { top:calc(50% - 3px); width:6px; height:6px; }
}




.medical-hour-box {}
.medical-hour-box table { width:100%; background:#fff; border:none; margin:0 0 3.33vw; }
.medical-hour-box thead th { background:#F3FCFF; text-align:center; padding:2.05vw 0; font-size:3.33vw; font-weight:500; }
.medical-hour-box thead th:first-of-type { width:30%; }
.medical-hour-box thead th:not(:first-of-type) { width:calc(70% / 8); }
.medical-hour-box tbody th { border-bottom:1px #E5E5E5 solid; text-align:left; padding:2.05vw 0 2.05vw 2.05vw; font-size:3.85vw; font-weight:500; }
.medical-hour-box td { border-bottom:1px #E5E5E5 solid; text-align:center; padding:3.85vw 0; font-size:3.33vw; font-weight:500; }
.medical-hour-note { line-height:1.6; padding:0 0 5.13vw; font-size:3.07vw; }
.medical-hour-closed { line-height:1.6; padding:0 0 7.69vw; font-size:3.07vw; }
.medical-hour-closed li { margin:0 0 1.03vw; padding:0 0 0 0.8rem; text-indent:-0.8rem; list-style:none; }
.c-blue { color:#2971A9; }
#btn-directions-to-clinic { width:76.92vw; margin:0 auto; }
#btn-directions-to-clinic a { display:flex; justify-content:center; align-items:center; height:14.35vw; background:#2971A9 url(../img/common/ico_gmap_01.svg) 12.82vw center/2.56vw auto no-repeat; border-radius:14.35vw; padding:0 0 0 5.13vw; font-size:3.59vw; color:#fff; font-weight:600; letter-spacing:0.03em; text-decoration:none; }
#footer-bnr { padding:0 5.13vw 7.69vw; position:relative; z-index:2; }
#footer-bnr li { list-style:none; }
#footer-bnr li:not(:last-child) { margin:0 0 4.1vw; }
#footer-bnr li a { display:block; }
#footer-bnr li img { width:100%; height:auto; }


@media screen and (min-width:900px){
.medical-hour-box { width:21.74vw; }
.home .medical-hour-box { width:21.74vw; }
.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% / 8); }
.medical-hour-box tbody th { padding:0.87vw 0 0.87vw 1.45vw; font-size:0.94vw; }
.medical-hour-box td { padding:0.87vw 0; font-size:1.01vw; }
.medical-hour-note { padding:0 0 1.16vw; font-size:1.01vw; }
.medical-hour-closed { padding:0 0 2.17vw; font-size:1.01vw; }
.medical-hour-closed li { margin:0 0 0.36vw; }
#btn-directions-to-clinic { width:21.74vw; }
#btn-directions-to-clinic a { height:4.05vw; background:#2971A9 url(../img/common/ico_gmap_01.svg) 2.9vw center/0.72vw auto no-repeat; border-radius:4.05vw padding:0 0 0 1.3vw; font-size:1.01vw; }
#btn-directions-to-clinic a:hover { opacity:0.7; transition:1s ease; }
#footer-bnr { grid-row:2/3; grid-column:2/3; display:flex; flex-flow:row nowrap; justify-content:space-between; width:47.97vw; margin:0 0 0 -4.49vw; padding:0; }
#footer-bnr li { width:23.18vw; }
#footer-bnr li:not(:last-child) { margin:0; }
#footer-bnr li a {}
#footer-bnr li a:hover { opacity:0.7; transition:1s ease; }
#footer-bnr li img {}
}
@media screen and (min-width:1380px){
.medical-hour-box { width:300px; }
.home .medical-hour-box { width:300px; }
.medical-hour-box table { margin:0 0 16px; }
.medical-hour-box thead th { padding:12px 0; font-size:12px; }
.medical-hour-box thead th:first-of-type {}
.medical-hour-box thead th:not(:first-of-type) {}
.medical-hour-box tbody th { padding:12px 0 12px 20px; font-size:12px; }
.medical-hour-box td { padding:12px 0; font-size:12px; }
.medical-hour-note { padding:0 0 16px; font-size:12px; }
.medical-hour-closed { padding:0 0 30px; font-size:11px; }
.medical-hour-closed li { margin:0 0 5px; }
#btn-directions-to-clinic { width:300px; }
#btn-directions-to-clinic a { height:56px; background:#2971A9 url(../img/common/ico_gmap_01.svg) 40px center/10px auto no-repeat; border-radius:56px; padding:0 0 0 18px; font-size:14px; }
#footer-bnr { width:662px; margin:0 0 0 -62px; }
#footer-bnr li { width:320px; }
#footer-bnr li:not(:last-child) {}
#footer-bnr li a {}
#footer-bnr li img {}
}




#information-gmap {}
#information-gmap iframe { width:100%; height:79.23vw; }

@media screen and (min-width:900px){
#information-gmap {}
#information-gmap iframe { height:43.47vw; }
}
@media screen and (min-width:1380px){
#information-gmap {}
#information-gmap iframe { height:600px; }
}




#footer-nav { background:#384658; padding:0 0 7.69vw; }
#footer-nav-ul { margin:0 0 7.69vw; }
#footer-nav-ul > li { border-bottom:0.5px #69727E solid; list-style:none; position:relative; }
#footer-nav-ul > li > a,
#footer-nav-ul > li > mark { display:flex; align-items:center; height:14.1vw; line-height:1.8; padding:0 14.1vw 0 9.74vw; font-size:3.85vw; color:#fff; font-weight:500; text-decoration:none; position:relative; }
#footer-nav-ul > li > a:before { content:""; position:absolute; top:calc(50% - 0.9vw); left:5.13vw; width:0; height:0; border-style:solid; border-width:0.9vw 0 0.9vw 1.54vw; border-color: transparent transparent transparent #fff; }
.btn-ft-sub-open { position:absolute; top:0; right:0; width:100%; height:12.82vw; }
#footer-nav-ul > li > mark:before { content:""; position:absolute; top:calc(50% - 0.9vw); left:5.13vw; width:0; height:0; border-style:solid; border-width:0.9vw 0 0.9vw 1.54vw; border-color: transparent transparent transparent #fff; }
.btn-ft-sub-open:before { content:""; position:absolute; top:50%; right:5.13vw; width:5.13vw; height:0.51vw; background:#fff; }
.btn-ft-sub-open:after { content:""; position:absolute; top:50%; right:5.13vw; width:5.13vw; height:0.51vw; background:#fff; transform:rotate(90deg); }
.btn-fs-on:after { display:none; transition:all 0.2s linear; }
.footer-ul-sub {}
.footer-ul-sub > li { width:100%; border-bottom:1px #384658 solid; list-style:none; position:relative; }
.footer-ul-sub > li > a { display:flex; align-items:center; height:13.84vw; line-height:1.8; padding:0 4.1vw 0 14.35vw; background:#E5E5E5; font-size:3.85vw; color:#384658; font-weight:500; text-decoration:none; position:relative; }
.footer-ul-sub > li > a:before { content:""; position:absolute; top:calc(50% - 0.9vw); left:10.25vw; width:0; height:0; border-style:solid; border-width:0.9vw 0 0.9vw 1.54vw; border-color:transparent transparent transparent #384658; }
.footer-ul-grandchild { display:flex; flex-flow:row wrap; background:#fff; border-top:1px #384658 solid; }
.footer-ul-grandchild > li { width:50%; border-bottom:1px #E5E5E5 solid; list-style:none; }
.footer-ul-grandchild > li:nth-of-type(odd) { border-right:1px #E5E5E5 solid; }
.footer-ul-grandchild > li a { display:flex; align-items:center; height:12.82vw; line-height:1.3; background:#fff; padding:0 0 0 14.87vw; font-size:3.59vw; color:#384658; font-weight:500; text-decoration:none; position:relative; }
.footer-ul-grandchild > li a:before { content:""; position:absolute; top:50%; left:10vw; width:2.56vw; height:0.51vw; background:#CFCFCF; }

@media screen and (max-width:899px){
#footer-nav-ul > li:first-of-type > a { background:#384658 url(../img/common/ico_home_01.svg) 4.1vw center/2.82vw auto no-repeat; }
#footer-nav-ul > li:first-of-type > a:before { display:none; }
#footer-nav-ul > .dn-annai > a { display:none; }
#footer-nav-ul > .dn-annai > mark { display:flex; }
.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:#384658; padding:4.35vw 0 2.17vw; }
#footer-nav-ul { display:flex; flex-flow:column wrap; width:79.71vw; height:23.18vw; margin:0 auto; padding:0; }
#footer-nav-ul > li { width:11.59vw; border-bottom:none; margin:0 0 0.87vw; }
#footer-nav-ul > .dn-annai { width:49.27vw; position:relative; }
#footer-nav-ul > .dn-annai:after { content:""; position:absolute; top:1.01vw; right:0; width:43.04vw; height:1px; background:#fff; }
#footer-nav-ul > li > a { height:auto; background:none; padding:0 0 0 1.01vw; font-size:1.16vw; }
#footer-nav-ul > li > mark { height:auto; background:none; padding:0; font-size:1.16vw; }
#footer-nav-ul > li > a:before { top:calc(50% - 0.29vw); left:0; border-width:0.29vw 0 0.29vw 0.43vw; }
#footer-nav-ul > li > a:hover { text-decoration:underline; transition:1s ease; }
#footer-nav-ul > .dn-annai > a { display:flex; }
#footer-nav-ul > .dn-annai > mark { display:none; }
.btn-ft-sub-open { display:none; }
.footer-ul-sub { display:flex; flex-flow:column wrap; height:18.11vw; padding:0.87vw 0 0; }
.footer-ul-sub > li { width:calc(100% / 3); border-bottom:none; margin:0 0 0.72vw; }
.footer-ul-sub > li:nth-of-type(1) { white-space:nowrap; }
.footer-ul-sub > li:nth-of-type(2) { white-space:nowrap; width:13.04vw; margin:0 2.9vw 0 0; }
.footer-ul-sub > li:nth-of-type(3) { white-space:nowrap; width:20.28vw; }
.footer-ul-sub > li > mark { height:auto; background:none; padding:0 0 0 1.01vw; font-size:1.09vw; color:#fff; }
.footer-ul-sub > li > a { height:auto; background:none; padding:0 0 0 1.01vw; font-size:1.09vw; color:#fff; }
.footer-ul-sub > li > a:before { top:calc(50% - 0.29vw); left:0; border-width:0.29vw 0 0.29vw 0.43vw; border-color:transparent transparent transparent #fff; }
.footer-ul-sub > li > a:hover { text-decoration:underline; transition:1s ease; }
.footer-ul-grandchild { flex-flow:column wrap; height:15.94vw; background:none; border-top:none; padding:0.87vw 0 0; }
.footer-ul-grandchild > li { width:50%; border-bottom:none; margin:0 0 0.72vw; }
.footer-ul-grandchild > li:nth-of-type(odd) { border-right:none; }
.footer-ul-grandchild > li a { height:auto; line-height:1.8; background:none; padding:0 0 0 2.53vw; font-size:1.09vw; color:#fff; }
.footer-ul-grandchild > li a:before { left:1.16vw; width:0.72vw; height:0.07vw; background:#fff; }
.footer-ul-grandchild > li a:hover { text-decoration:underline; transition:1s ease; }
}
@media screen and (min-width:1380px){
#footer-nav { padding:60px 0 30px; }
#footer-nav-ul { width:1100px; height:320px; }
#footer-nav-ul > li { width:160px; margin:0 0 12px; }
#footer-nav-ul > .dn-annai { width:680px; }
#footer-nav-ul > .dn-annai:after { top:14px; width:594px; }
#footer-nav-ul > li > a { padding:0 0 0 14px; font-size:16px; }
#footer-nav-ul > li > mark { font-size:16px; }
#footer-nav-ul > li > a:before { top:calc(50% - 4px); border-width:4px 0 4px 6px; }
.btn-ft-sub-open {}
.footer-ul-sub { height:250px; padding:12px 0 0; }
.footer-ul-sub > li { margin:0 0 10px; }
.footer-ul-sub > li:nth-of-type(1) {}
.footer-ul-sub > li:nth-of-type(2) { width:180px; margin:0 40px 0 0; }
.footer-ul-sub > li:nth-of-type(3) { width:280px; }
.footer-ul-sub > li > mark { padding:0 0 0 14px; font-size:15px; }
.footer-ul-sub > li > a { padding:0 0 0 14px; font-size:15px; }
.footer-ul-sub > li > a:before { top:calc(50% - 4px); border-width:4px 0 4px 6px; }
.footer-ul-grandchild { height:220px; padding:12px 0 0; }
.footer-ul-grandchild > li { margin:0 0 10px; }
.footer-ul-grandchild > li:nth-of-type(odd) {}
.footer-ul-grandchild > li a { padding:0 0 0 35px; font-size:15px; }
.footer-ul-grandchild > li a:before { left:16px; width:10px; height:1px; }
}




#footer-nav-link { width:76.92vw; margin:0 auto; }
#footer-nav-link a { display:flex; justify-content:center; align-items:center; height:14.35vw; background:#fff; border-radius:14.35vw; font-size:3.59vw; color:#2971A9; font-weight:600; text-decoration:none; position:relative; }
#footer-nav-link a:before { content:""; position:absolute; top:calc(50% - 0.9vw); left:14.35vw; width:0; height:0; border-style:solid; border-width:0.9vw 0 0.9vw 1.54vw; border-color:transparent transparent transparent #2971A9; }

@media screen and (min-width:900px){
#footer-nav-link { width:21.74vw; }
#footer-nav-link a { height:4.05vw; border-radius:4.05vw; font-size:1.01vw; }
#footer-nav-link a:before { top:calc(50% - 0.29vw); left:2.9vw; border-width:0.29vw 0 0.29vw 0.43vw; }
#footer-nav-link a:hover { opacity:0.7; transition:1s ease; }
}
@media screen and (min-width:1380px){
#footer-nav-link { width:300px; }
#footer-nav-link a { height:56px; border-radius:56px; font-size:14px; }
#footer-nav-link a:before { top:calc(50% - 4px); left:40px; border-width:4px 0 4px 6px; }
}




#footer-copy { background:#384658; text-align:center; padding:13.59vw 0 5.13vw; font-size:3.07vw; color:#fff; }
#footer-copy a { color:#fff; }

@media screen and (min-width:900px){
#footer-copy { border-top:1px #69727E solid; padding:2.17vw 0; font-size:1.01vw; }
#footer-copy a {}
#footer-copy a:hover { text-decoration: none; }
}
@media screen and (min-width:1380px){
#footer-copy { padding:30px 0; font-size:14px; }
#footer-copy a {}
}




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

#scroll-top { position:absolute; position:fixed; bottom:25.64vw; right:4.1vw; width:12.3vw; 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; }
.txt-c { text-align:center !important; margin:0 auto; }
.font-strong { font-size:180% !important; 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:76.92vw; 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:500; letter-spacing:0.14vw; text-decoration:none; position:relative; }
.btn-more a:before { content:""; display:inline-block; width:0; height:0; border-style:solid; border-width:0.77vw 0 0.77vw 1.54vw; border-color:transparent transparent transparent #C2E1AC; margin:0 2.05vw 0 0; }

@media screen and (min-width:900px){
.btn-more { width:21.73vw; 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 { border-width:0.21vw 0 0.21vw 0.43vw; margin:0 0.58vw 0 0; }
.btn-more a:hover { opacity:0.7; transition:0.6s ease; }
}
@media screen and (min-width:1380px){
.btn-more { width:300px; }
.btn-more a { height:52px; padding:0 20px 0 0; font-size:16px; }
.btn-more a:before { border-width:3px 0 3px 6px; margin:0 8px 0 0; }
}




.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; }
.mb70 { margin-bottom:17.94vw !important; }
.mb80 { margin-bottom:20.51vw !important; }
.mb90 { margin-bottom:23.07vw !important; }
.mb100 { margin-bottom:25.64vw !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; }
.mb70 { margin-bottom:5.07vw !important; }
.mb80 { margin-bottom:5.79vw !important; }
.mb90 { margin-bottom:6.52vw !important; }
.mb100 { margin-bottom:7.24vw !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; }
.mb70 { margin-bottom:70px !important; }
.mb80 { margin-bottom:80px !important; }
.mb90 { margin-bottom:90px !important; }
.mb100 { margin-bottom:100px !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; }
.pb70 { padding-bottom:17.94vw !important; }
.pb80 { padding-bottom:20.51vw !important; }
.pb90 { padding-bottom:23.07vw !important; }
.pb100 { padding-bottom:25.64vw !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; }
.pb70 { padding-bottom:5.07vw !important; }
.pb80 { padding-bottom:5.79vw !important; }
.pb90 { padding-bottom:6.52vw !important; }
.pb100 { padding-bottom:7.24vw !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; }
.pb70 { padding-bottom:70px !important; }
.pb80 { padding-bottom:80px !important; }
.pb90 { padding-bottom:90px !important; }
.pb100 { padding-bottom:100px !important; }
}

.w100 { width:100% !important; }




/* ----------------------------------------------
 ! twentytwenty
 ---------------------------------------------- */

.twentytwenty-horizontal .twentytwenty-handle:before, .twentytwenty-horizontal .twentytwenty-handle:after, .twentytwenty-vertical .twentytwenty-handle:before, .twentytwenty-vertical .twentytwenty-handle:after {
  content: " ";
  display: block;
  background: white;
  position: absolute;
  z-index: 30;
  -webkit-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
  -moz-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
  box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5); }

.twentytwenty-horizontal .twentytwenty-handle:before, .twentytwenty-horizontal .twentytwenty-handle:after {
  width: 3px;
  height: 9999px;
  left: 50%;
  margin-left: -1.5px; }

.twentytwenty-vertical .twentytwenty-handle:before, .twentytwenty-vertical .twentytwenty-handle:after {
  width: 9999px;
  height: 3px;
  top: 50%;
  margin-top: -1.5px; }

.twentytwenty-before-label, .twentytwenty-after-label, .twentytwenty-overlay {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%; }

.twentytwenty-before-label, .twentytwenty-after-label, .twentytwenty-overlay {
  -webkit-transition-duration: 0.5s;
  -moz-transition-duration: 0.5s;
  transition-duration: 0.5s; }

.twentytwenty-before-label, .twentytwenty-after-label {
  -webkit-transition-property: opacity;
  -moz-transition-property: opacity;
  transition-property: opacity; }

.twentytwenty-before-label:before, .twentytwenty-after-label:before {
  color: white;
  font-size: 13px;
  letter-spacing: 0.1em; }

.twentytwenty-before-label:before, .twentytwenty-after-label:before {
  position: absolute;
  background: rgba(255, 255, 255, 0.2);
  line-height: 38px;
  padding: 0 20px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px; }

.twentytwenty-horizontal .twentytwenty-before-label:before, .twentytwenty-horizontal .twentytwenty-after-label:before {
  top: 50%;
  margin-top: -19px; }

.twentytwenty-vertical .twentytwenty-before-label:before, .twentytwenty-vertical .twentytwenty-after-label:before {
  left: 50%;
  margin-left: -45px;
  text-align: center;
  width: 90px; }

.twentytwenty-left-arrow, .twentytwenty-right-arrow, .twentytwenty-up-arrow, .twentytwenty-down-arrow {
  width: 0;
  height: 0;
  border: 6px inset transparent;
  position: absolute; }

.twentytwenty-left-arrow, .twentytwenty-right-arrow {
  top: 50%;
  margin-top: -6px; }

.twentytwenty-up-arrow, .twentytwenty-down-arrow {
  left: 50%;
  margin-left: -6px; }

.twentytwenty-container {
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  z-index: 0;
  overflow: hidden;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none; }
  .twentytwenty-container img {
    max-width: 100%;
    position: absolute;
    top: 0;
    display: block; }
  .twentytwenty-container.active .twentytwenty-overlay, .twentytwenty-container.active :hover.twentytwenty-overlay {
    background: rgba(0, 0, 0, 0); }
    .twentytwenty-container.active .twentytwenty-overlay .twentytwenty-before-label,
    .twentytwenty-container.active .twentytwenty-overlay .twentytwenty-after-label, .twentytwenty-container.active :hover.twentytwenty-overlay .twentytwenty-before-label,
    .twentytwenty-container.active :hover.twentytwenty-overlay .twentytwenty-after-label {
      opacity: 0; }
  .twentytwenty-container * {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box; }

.twentytwenty-before-label {
  opacity: 0; }
  .twentytwenty-before-label:before {
    content: attr(data-content); }

.twentytwenty-after-label {
  opacity: 0; }
  .twentytwenty-after-label:before {
    content: attr(data-content); }

.twentytwenty-horizontal .twentytwenty-before-label:before {
  left: 10px; }

.twentytwenty-horizontal .twentytwenty-after-label:before {
  right: 10px; }

.twentytwenty-vertical .twentytwenty-before-label:before {
  top: 10px; }

.twentytwenty-vertical .twentytwenty-after-label:before {
  bottom: 10px; }

.twentytwenty-overlay {
  -webkit-transition-property: background;
  -moz-transition-property: background;
  transition-property: background;
  background: rgba(0, 0, 0, 0);
  z-index: 25; }
  .twentytwenty-overlay:hover {
    background: rgba(0, 0, 0, 0.5); }
    .twentytwenty-overlay:hover .twentytwenty-after-label {
      opacity: 1; }
    .twentytwenty-overlay:hover .twentytwenty-before-label {
      opacity: 1; }

.twentytwenty-before {
  z-index: 20; }

.twentytwenty-after {
  z-index: 10; }

.twentytwenty-handle {
  height: 38px;
  width: 38px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -22px;
  margin-top: -22px;
  border: 3px solid white;
  -webkit-border-radius: 1000px;
  -moz-border-radius: 1000px;
  border-radius: 1000px;
  -webkit-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
  -moz-box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
  box-shadow: 0px 0px 12px rgba(51, 51, 51, 0.5);
  z-index: 40;
  cursor: pointer; }

.twentytwenty-horizontal .twentytwenty-handle:before {
  bottom: 50%;
  margin-bottom: 22px;
  -webkit-box-shadow: 0 3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  -moz-box-shadow: 0 3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  box-shadow: 0 3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5); }
.twentytwenty-horizontal .twentytwenty-handle:after {
  top: 50%;
  margin-top: 22px;
  -webkit-box-shadow: 0 -3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  -moz-box-shadow: 0 -3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  box-shadow: 0 -3px 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5); }

.twentytwenty-vertical .twentytwenty-handle:before {
  left: 50%;
  margin-left: 22px;
  -webkit-box-shadow: 3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  -moz-box-shadow: 3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  box-shadow: 3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5); }
.twentytwenty-vertical .twentytwenty-handle:after {
  right: 50%;
  margin-right: 22px;
  -webkit-box-shadow: -3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  -moz-box-shadow: -3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5);
  box-shadow: -3px 0 0 white, 0px 0px 12px rgba(51, 51, 51, 0.5); }

.twentytwenty-left-arrow {
  border-right: 6px solid white;
  left: 50%;
  margin-left: -17px; }

.twentytwenty-right-arrow {
  border-left: 6px solid white;
  right: 50%;
  margin-right: -17px; }

.twentytwenty-up-arrow {
  border-bottom: 6px solid white;
  top: 50%;
  margin-top: -17px; }

.twentytwenty-down-arrow {
  border-top: 6px solid white;
  bottom: 50%;
  margin-bottom: -17px; }




/* ----------------------------------------------
  #top-art-costs
 ---------------------------------------------- */

#top-art-costs { background:#EEF8FD; padding:0 0 10.25vw; position:relative; }
#top-art-costs:before { content:""; position:absolute; top:16.4vw; left:2.05vw; width:22.3vw; height:22.3vw; background:#E7F1F6; border-radius:1.03vw; z-index:1; }
#top-art-costs:after { content:""; position:absolute; top:38.7vw; left:24.35vw; width:8.2vw; height:8.2vw; background:#E7F1F6; border-radius:1.03vw; z-index:1; }
#top-costs-wrap { padding:0 5.13vw; position:relative; z-index:3; }
.top-costs-sec { background:#fff; border-radius:2.05vw; border:1px #CFCFCF solid; margin:0 0 2.56vw; padding:7.69vw 5.13vw; }
.top-costs-sec h3 { line-height:1.5; text-align:center; padding:0 0 7.69vw; font-size:5.64vw; color:#2971A9; font-weight:500; letter-spacing:0.05em; }
.top-costs-sec ul {}
.top-costs-sec li { line-height:1.5; background:url(../img/common/ico_check_01.svg) left 2.05vw/4.1vw auto no-repeat; padding:1.03vw 0 2.56vw 6.15vw; font-size:3.85vw; font-weight:500; list-style:none; }
.top-costs-sec li small { display:block; padding:1.54vw 0 0; font-size:3.07vw; }
.top-costs-sec figure { width:66.66vw; padding:4.1vw 0 0; }
.top-costs-sec figure img { width:100%; height:auto; }
#top-costs-txt { line-height:2; padding:0 5.13vw 10.25vw 10.25vw; text-indent:-0.9em; font-size:3.07vw; font-weight:500; }

@media screen and (max-width:899px){
.page-price #top-costs-wrap { padding:0 1.03vw; }
.page-price #top-costs-txt { padding:0 1.03vw 10.25vw 6.15vw; }
}
@media screen and (min-width:900px){
#top-art-costs { padding:0 0 7.97vw; }
#top-art-costs:before { top:3.62vw; left:calc(50% - 53.62vw); width:10.43vw; height:10.43vw; border-radius:0.29vw; }
#top-art-costs:after { top:14.05vw; left:calc(50% - 43.11vw); width:3.91vw; height:3.91vw; border-radius:0.29vw; }
#top-costs-wrap { display:flex; flex-flow:row nowrap; justify-content:space-between; width:57.97vw; margin:0 auto 1.45vw; padding:0; }
.top-costs-sec { width:28.4vw; border-radius:0.58vw; margin:0; padding:3.26vw; }
.top-costs-sec h3 { padding:0 0 2.17vw; font-size:1.59vw; }
.top-costs-sec ul {}
.top-costs-sec li { background:url(../img/common/ico_check_01.svg) left 0.58vw/1.16vw auto no-repeat; padding:0.29vw 0 0.72vw 2.17vw; font-size:1.23vw; }
.top-costs-sec li small { padding:0.43vw 0 0; font-size:0.87vw; }
.top-costs-sec figure { width:18.84vw; padding:1.16vw 0 0; }
.top-costs-sec figure img {}
#top-costs-txt { text-align:center; padding:0 0 3.62vw; font-size:0.87vw; }
}
@media screen and (min-width:1380px){
#top-art-costs { padding:0 0 110px; }
#top-art-costs:before { top:50px; left:calc(50% - 740px); width:144px; height:144px; border-radius:4px; }
#top-art-costs:after { top:194px; left:calc(50% - 595px); width:54px; height:54px; border-radius:4px; }
#top-costs-wrap { width:800px; margin:0 auto 20px; }
.top-costs-sec { width:392px; border-radius:8px; padding:45px; }
.top-costs-sec h3 { padding:0 0 30px; font-size:22px; }
.top-costs-sec ul {}
.top-costs-sec li { background:url(../img/common/ico_check_01.svg) left 8px/16px auto no-repeat; padding:4px 0 10px 30px; font-size:17px; }
.top-costs-sec li small { padding:6px 0 0; font-size:12px; }
.top-costs-sec figure { width:260px; padding:16px 0 0; }
.top-costs-sec figure img {}
#top-costs-txt { text-align:center; padding:0 0 50px; font-size:12px; }
}




