@charset "utf-8";

/* ----------------------------------------------
 ! Sub Mainview
 ---------------------------------------------- */

#sub-mainview { display:flex; justify-content:center; align-items:center; width:100%; height:auto; aspect-ratio:390/140; margin:0 0 5.13vw; position:relative; z-index:998; }
#sub-mainview dt { position:absolute; top:0; left:0; width:100%; height:100%; z-index:-1; }
#sub-mainview dt img { width:100%; height:auto; aspect-ratio:390/140; }
#sub-mainview dd { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; min-width:60vw; line-height:1.25; background:rgba(255,255,255,0.95); box-shadow:0 0 3px 3px #8f786929; border-radius:1.54vw; position:relative; }
#sub-mainview dd:before { content:""; position:absolute; top:-3.07vw; left:-3.07vw; width:6.15vw; height:6.15vw; background:#FF8B7E; border-radius:1.03vw; z-index:1; }
#sub-mainview dd:after { content:""; position:absolute; top:2.56vw; left:3.07vw; width:3.07vw; height:3.07vw; background:#FFEAB0; border-radius:1.03vw; z-index:1; }
#sub-mainview dd div { width:100%; padding:4.62vw 10.25vw; position:relative; }
#sub-mainview dd div:before { content:""; position:absolute; bottom:-3.07vw; right:-3.07vw; width:6.15vw; height:6.15vw; background:#75E8E5; border-radius:1.03vw; z-index:1; }
#sub-mainview dd div:after { content:""; position:absolute; bottom:-5.13vw; right:3.33vw; width:3.07vw; height:3.07vw; background:#58B3F8; border-radius:1.03vw; z-index:1; }
#mainview-h1 { line-height:1.4; text-align:center; margin:0 auto; font-size:5.13vw; color:#2971A9; font-weight:600; letter-spacing:0.02em; }
#sub-h1-en { text-align:center; margin:0 auto; padding:1.03vw 0 0; font-size:3.33vw; color:#384658; font-weight:500; }

@media screen and (min-width:900px){
#sub-mainview { aspect-ratio:1699/320; margin:0 auto 2.17vw; }
#sub-mainview dt {}
#sub-mainview dt img { aspect-ratio:1699/320; }
#sub-mainview dd { min-width:40.57vw; }
#sub-mainview dd:before { top:-1.16vw; left:-1.16vw; width:2.75vw; height:2.75vw; border-radius:0.29vw; }
#sub-mainview dd:after { top:1.59vw; left:1.45vw; width:1.3vw; height:1.3vw; border-radius:0.29vw; }
#sub-mainview dd div { padding:2.17vw 2.9vw; }
#sub-mainview dd div:before { bottom:-0.65vw; right:-1.16vw; width:2.75vw; height:2.75vw; border-radius:0.29vw; }
#sub-mainview dd div:after { bottom:-2.03vw; right:1.59vw; width:1.3vw; height:1.3vw; border-radius:0.29vw; }
#mainview-h1 { font-size:2.03vw; }
#sub-h1-en { padding:0.58vw 0 0; font-size:1.01vw; }
}
@media screen and (min-width:1380px){
#sub-mainview { width:1380px; margin:0 auto 30px; }
#sub-mainview dt {}
#sub-mainview dt img {}
#sub-mainview dd { min-width:560px; }
#sub-mainview dd:before { top:-16px; left:-16px; width:38px; height:38px; border-radius:4px; }
#sub-mainview dd:after { top:22px; left:20px; width:18px; height:18px; border-radius:4px; }
#sub-mainview dd div { padding:30px 40px; }
#sub-mainview dd div:before { bottom:-9px; right:-16px; width:38px; height:38px; border-radius:4px; }
#sub-mainview dd div:after { bottom:-28px; right:22px; width:18px; height:18px; border-radius:4px; }
#mainview-h1 { font-size:28px; }
#sub-h1-en { padding:8px 0 0; font-size:14px; }
}




/* ----------------------------------------------
 ! Breadcrumb
 ---------------------------------------------- */

#nav-breadcrumb { line-height:1.6; padding:0 4.1vw 6.15vw; }
#nav-breadcrumb ul { display:flex; flex-flow:row wrap; }
#nav-breadcrumb li { font-size:3.33vw; list-style:none; }
#nav-breadcrumb li a { font-size:3.33vw; color:#2971A9; text-decoration:none; position:relative; }
#nav-breadcrumb li a:after { content:">"; display:inline-block; vertical-align:top; margin:0 1.79vw; font-size:3.33vw; color:#1F518E; }
#nav-breadcrumb li a:hover { color:#8F7869; }
@media screen and (min-width:900px){
#nav-breadcrumb { width:86.95vw; margin:0 auto; padding:0 0 5.07vw; }
#nav-breadcrumb ul {}
#nav-breadcrumb li { font-size:1.09vw; }
#nav-breadcrumb li a { font-size:1.09vw; }
#nav-breadcrumb li a:after { margin:0 0.65vw; font-size:1.09vw; }
#nav-breadcrumb li a:hover {}
}
@media screen and (min-width:1380px){
#nav-breadcrumb { width:1200px; margin:0 auto; padding:0 0 70px; }
#nav-breadcrumb ul {}
#nav-breadcrumb li { font-size:15px; }
#nav-breadcrumb li a { font-size:15px; }
#nav-breadcrumb li a:after { margin:0 9px; font-size:15px; }
#nav-breadcrumb li a:hover {}
}




/* ----------------------------------------------
 ! Sub Layout
 ---------------------------------------------- */

#main-wrap {}
#main-box {}
#aside-sidebar {}
main { padding:0 0 12.3vw; }
main a { color:#2971A9; font-weight:600; }
#aside-main-nav {}

@media screen and (min-width:900px){
#main-wrap { display:flex; flex-flow:row-reverse nowrap; justify-content:space-between; width:87vw; margin:0 auto; position:relative; }
#main-box { width:57.97vw; min-height:72.46vw; text-align:left; }
#aside-sidebar { display:block; width:23.18vw; padding:0 0 2.9vw; }
main { padding:0 0 8.7vw; }
#aside-main-nav {}
}
@media screen and (min-width:1380px){
#main-wrap { display:flex; flex-flow:row-reverse; width:1200px; margin:0 auto; }
#main-box { width:800px; min-height:1000px; text-align:left; }
#aside-sidebar { display:block; width:320px; padding:0 0 40px; }
main { padding:0 0 120px; }
#aside-main-nav {}
}





/* ----------------------------------------------
 ! Sidebar
 ---------------------------------------------- */

@media screen and (max-width:899px){
.sidebar-nav { display:none; }
}
@media screen and (min-width:900px){
.sidebar-nav { border:1px #E5E5E5 solid; border-bottom:none; }
.side-tit { border-bottom:1px #E5E5E5 solid; }
.side-tit a { display:flex; align-items:center; height:4.35vw; padding:0 3.62vw 0 3.26vw; font-size:1.3vw; color:#384658; font-weight:500; text-decoration:none; }
.sidebar-nav:first-of-type .side-tit a { background:#EEF8FD url(../img/common/ico_teeth_01.svg) 1.23vw center/1.23vw auto no-repeat; }
.sidebar-nav:last-of-type .side-tit a { background:#EEF8FD url(../img/common/ico_hospital_01.svg) 1.23vw center/1.23vw auto no-repeat; }
.side-tit a:hover { opacity:0.7; transition:1s ease; }
.sidebar-nav-ul { margin:0 0 1.45vw; }
.sidebar-nav-ul > li { border-bottom:1px #E5E5E5 solid; list-style:none; position:relative; }
.sidebar-nav-ul > li .btn-sb-sub-open:hover,
.sidebar-nav-ul > li a:hover { opacity:0.7; transition:0.6s ease; cursor:pointer; }
.sidebar-nav-ul > li > a,
.sidebar-nav-ul > li > mark { display:flex; align-items:center; height:4.35vw; line-height:1.8; padding:0 3.62vw 0 1.16vw; font-size:1.09vw; color:#384658; font-weight:600; text-decoration:none; }
.sidebar-nav-ul > li > a:before { content:""; position:absolute; top:calc(50% - 0.87vw); right:1.01vw; width:1.74vw; height:1.74vw; background:#2971A9; border-radius:0.29vw; }
.sidebar-nav-ul > li > a:after { content:""; position:absolute; top:calc(50% - 0.21vw); right:1.59vw; width:0; height:0; border-style:solid; border-width:0.21vw 0 0.21vw 0.43vw; border-color:transparent transparent transparent #fff;}
.btn-sb-sub-open { position:absolute; top:0; right:0; width:100%; height:4.35vw; }
.btn-sb-sub-open:before { content:""; position:absolute; top:50%; right:1.16vw; width:1.3vw; height:1px; background:#2971A9; margin:-0.5px 0 0; }
.btn-sb-sub-open:after { content:""; position:absolute; top:50%; right:1.16vw; width:1.3vw; height:1px; background:#2971A9; margin:-0.5px 0 0; transform:rotate(90deg); }
.btn-sb-on:after { display:none; transition:all 0.2s linear; }
.sidebar-ul-sub { max-height:0; overflow:hidden; transition:max-height .3s ease; }
.sidebar-ul-sub-on { max-height:2000px; }
.sidebar-ul-sub li { border-top:1px #D8D8D8 solid; list-style:none; }
.sidebar-ul-sub li p { display:flex; align-items:center; height:4.35vw; line-height:1.4; background:#EDF4FA; padding:0 2.9vw 0 1.45vw; font-size:1.01vw; font-weight:400; color:#1F1F1F; font-weight:600; }
.sidebar-ul-sub li a { display:flex; align-items:center; height:4.35vw; line-height:1.4; padding:0 2.9vw 0 2.9vw; font-size:1.01vw; font-weight:500; color:#384658; text-decoration:none; position:relative; }
.sidebar-ul-sub li a:before { content:""; position:absolute; top:calc(50% - 0.035vw); left:1.45vw; width:0.87vw; height:0.07vw; background:#384658; }
}
@media screen and (min-width:1380px){
.sidebar-nav {}
.side-tit {}
.side-tit a { height:60px; padding:0 50px 0 45px; font-size:18px; }
.sidebar-nav:first-of-type .side-tit a { background:#EEF8FD url(../img/common/ico_teeth_01.svg) 17px center/17px auto no-repeat; }
.sidebar-nav:last-of-type .side-tit a { background:#EEF8FD url(../img/common/ico_hospital_01.svg) 17px center/17px auto no-repeat; }
.sidebar-nav-ul { margin:0 0 20px; }
.sidebar-nav-ul > li {}
.sidebar-nav-ul > li > a,
.sidebar-nav-ul > li > mark { height:60px; padding:0 50px 0 16px; font-size:15px; }
.sidebar-nav-ul > li > a:before { top:calc(50% - 12px); right:14px; width:24px; height:24px; border-radius:4px; }
.sidebar-nav-ul > li > a:after { top:calc(50% - 3px); right:22px; border-width:3px 0 3px 6px; }
.btn-sb-sub-open { height:60px; }
.btn-sb-sub-open:before { right:16px; width:18px; margin:-0.5px 0 0; }
.btn-sb-sub-open:after { right:16px; width:18px; margin:-0.5px 0 0; }
.btn-sb-on:after {}
.sidebar-ul-sub {}
.sidebar-ul-sub li {}
.sidebar-ul-sub li p { height:60px; padding:0 40px 0 20px; font-size:14px; }
.sidebar-ul-sub li a { height:60px; padding:0 40px 0 40px; font-size:14px; }
.sidebar-ul-sub li a:before { top:calc(50% - 0.5px); left:20px; width:12px; height:1px; }
}





/* ----------------------------------------------
 ! main-nav-box
 ---------------------------------------------- */

#main-nav-box { height:68.46vw; overflow:hidden; background:#EEF8FD; margin:0 0 10.25vw; padding:0 0 10.25vw; position:relative; z-index:2; }
#main-nav-tit { text-align:center; padding:6.15vw 0 3.85vw 0; font-size:4.1vw; color:#2971A9; font-weight:600; z-index:2; position:relative; }
#main-nav-box ul { border-top:1px #384658 solid; margin:0 10.25vw; }
#main-nav-box li { border-bottom:0.5px #384658 dotted; list-style:none; }
#main-nav-box li a { display:flex; flex-flow:column nowrap; justify-content:center; align-items:start; min-height:14.1vw; line-height:1.4; padding:2.56vw 4.61vw 2.56vw 4.61vw; font-size:3.59vw; color:#384658; font-weight:500; text-decoration:none; position:relative; }
#main-nav-box li a:before { content:""; position:absolute; top:calc(50% - 0.25vw); left:0; width:0; height:0; border-style:solid; border-width:0.77vw 0 0.77vw 1.54vw; border-color:transparent transparent transparent #2971A9; }
#btn-main-nav { position:absolute; bottom:0; left:0; display:flex; justify-content:center; align-items:flex-end; width:100%; height:40vw; background:linear-gradient(to bottom, rgba(238,248,253,0) 0%,rgba(238,248,253,1) 50%,rgba(238,248,253,1) 100%); padding:0 0 10vw; }
#btn-main-nav p { font-size:3.07vw; color:#2971A9; font-weight:600; }
#btn-main-nav-open {}
#btn-main-nav-close { display:none; }
#main-nav-box:before { content:""; position:absolute; top:6.15vw; left:5.13vw; width:2.05vw; height:2.05vw; background:#FF8B7E; border-radius:0.51vw; }
#main-nav-tit:before { content:""; position:absolute; top:9.74vw; left:5.13vw; width:2.05vw; height:2.05vw; background:#FF8B7E; border-radius:0.51vw; }
#main-nav-tit:after { content:""; position:absolute; top:13.33vw; left:5.13vw; width:2.05vw; height:2.05vw; background:#FF8B7E; border-radius:0.51vw; }
#btn-main-nav:before { content:""; position:absolute; bottom:6.15vw; right:5.13vw; width:2.05vw; height:2.05vw; background:#58B3F8; border-radius:0.51vw; }
#btn-main-nav:after { content:""; position:absolute; bottom:9.74vw; right:5.13vw; width:2.05vw; height:2.05vw; background:#58B3F8; border-radius:0.51vw; }
#main-nav-box:after { content:""; position:absolute; bottom:13.33vw; right:5.13vw; width:2.05vw; height:2.05vw; background:#58B3F8; border-radius:0.51vw; }
.btn-main-nav-on { height:auto !important; overflow:visible !important; padding-bottom:20vw !important; }
.btn-main-nav-on #btn-main-nav { height:20vw; }

@media screen and (min-width:900px){
#main-nav-box { height:auto; overflow:visible; margin:0 0 2.9vw; padding:0 0 3.62vw; }
.don { position:absolute !important; transition:1s ease; }
#main-nav-tit { padding:2.17vw 0; font-size:1.59vw; }
#main-nav-box ul { display:flex; flex-flow:row wrap; justify-content:space-between; margin:0 5.8vw; }
#main-nav-box li { width:22.46vw; }
#main-nav-box li a { min-height:4.05vw; padding:0 1.45vw; font-size:1.09vw; }
#main-nav-box li a:before { top:calc(50% - 0.21vw); border-width:0.21vw 0 0.21vw 0.43vw; }
#main-nav-box li a:hover { opacity:0.7; text-decoration:underline; transition:1s ease; }
#btn-main-nav { height:1.45vw; padding:0 0 0.72vw; }
#btn-main-nav-open { display:none; }
#btn-main-nav-close {}
#main-nav-box:before { top:1.74vw; left:1.74vw; width:0.87vw; height:0.87vw; border-radius:0.14vw; }
#main-nav-tit:before { top:3.26vw; left:1.74vw; width:0.87vw; height:0.87vw; border-radius:0.14vw; }
#main-nav-tit:after { top:4.78vw; left:1.74vw; width:0.87vw; height:0.87vw; border-radius:0.14vw; }
#btn-main-nav:before { bottom:1.74vw; right:1.74vw; width:0.87vw; height:0.87vw; border-radius:0.14vw; }
#btn-main-nav:after { bottom:3.26vw; right:1.74vw; width:0.87vw; height:0.87vw; border-radius:0.14vw; }
#main-nav-box:after { bottom:4.78vw; right:1.74vw; width:0.87vw; height:0.87vw; border-radius:0.14vw; }
}
@media screen and (min-width:1380px){
#main-nav-box { margin:0 0 40px; padding:0 0 50px; }
#main-nav-tit { padding:30px 0; font-size:22px; }
#main-nav-box ul { margin:0 80px; }
#main-nav-box li { width:310px; }
#main-nav-box li a { min-height:56px; padding:0 20px; font-size:15px; }
#main-nav-box li a:before { top:calc(50% - 3px); border-width:3px 0 3px 6px; }
#btn-main-nav { height:20px; padding:0 0 10px; }
#main-nav-box:before { top:24px; left:24px; width:12px; height:12px; border-radius:2px; }
#main-nav-tit:before { top:45px; left:24px; width:12px; height:12px; border-radius:2px; }
#main-nav-tit:after { top:66px; left:24px; width:12px; height:12px; border-radius:2px; }
#btn-main-nav:before { bottom:24px; right:24px; width:12px; height:12px; border-radius:2px; }
#btn-main-nav:after { bottom:45px; right:24px; width:12px; height:12px; border-radius:2px; }
#main-nav-box:after { bottom:66px; right:24px; width:12px; height:12px; border-radius:2px; }
}




/* ----------------------------------------------
 ! article & section common
 ---------------------------------------------- */

.sub-art { padding:10.25vw 4.1vw 12.82vw; }
.sub-sec {}
.sub-box {}
.box-inner { margin-left:4.1vw !important; margin-right:4.1vw !important; }
.num-art { position:relative; }
.num-art:after { content:""; position:absolute; bottom:0; left:50%; width:0; height:0; border-style:solid; border-color:#d4f3f6 transparent transparent transparent; border-width:4.62vw 4.35vw 0 4.35vw; margin:0 0 0 -4.35vw; }
.bg-box { background:#F3EFE9; padding:5.13vw; }

@media screen and (min-width:900px){
.sub-art { padding:0 0 5.8vw; }
.sub-sec {}
.sub-box {}
.box-inner { margin-left:0 !important; margin-right:0 !important; }
.num-art {}
.num-art:after { border-width:1.74vw 4.71vw 0 4.71vw; margin:0 0 0 -4.71vw; }
.bg-box { padding:1.45vw; }
}
@media screen and (min-width:1380px){
.sub-art { padding:0 0 80px; }
.sub-sec {}
.sub-box {}
.num-art {}
.num-art:after { border-width:24px 65px 0 65px; margin:0 0 0 -65px; }
.bg-box { padding:20px; }
}




.sub-sec mark, .txt-basic mark
 { display:inline; background:linear-gradient(transparent 90%, #E0E9F6 0%); font-weight:400; position:relative; }
.mark-blue { background:linear-gradient(transparent 90%, #4896CA 0%) !important; }




.heading-h2 { line-height:1.4; background:#2971A9; border-radius:2.05vw; margin:0 0 12.82vw 0; padding:5.13vw 3.85vw; font-size:5.13vw; color:#fff; font-weight:500; position:relative; }
.heading-h2:before { content:""; position:absolute; bottom:-0.51vw; right:-2.05vw; width:5.64vw; height:5.64vw; background:#FF8B7E; border-radius:1.03vw; }
.heading-h2:after { content:""; position:absolute; bottom:-3.07vw; right:3.07vw; width:2.56vw; height:2.56vw; background:#FFEAB0; border-radius:0.51vw; }
.tit-num { line-height:1.5; background:url(../img/common/bg_tit-num.webp) 35.64vw top/17.18vw auto no-repeat; text-align:center; padding:20.51vw 0 8.71vw; font-size:5.89vw; font-weight:600; position:relative; }
.tit-num span { position:absolute; top:4.1vw; left:50%; display:block; width:20vw; text-align:center; margin:0 0 0 -10vw; font-size:7.18vw; color:#95B4DF; font-family:"EB Garamond", serif; font-weight:600; font-style:normal; letter-spacing:1.44vw; }
.heading-h2 span { font-size:70%; font-weight:500; }
.heading-h3 { line-height:1.4; border-bottom:2px #2971A9 solid; margin:0 0 10.25vw; padding:3.07vw 0 3.07vw 2.56vw; font-size:4.61vw; color:#2971A9; font-weight:500; position:relative; z-index:1; }
.heading-h3:before { content:""; position:absolute; top:2.56vw; left:0; width:5.13vw; height:5.13vw; background:#FFEAB0; border-radius:1.03vw; z-index:-1; }
.heading-h3:after { content:""; position:absolute; top:0; left:-2.56vw; width:2.56vw; height:2.56vw; background:#75E8E5; border-radius:0.51vw; z-index:-1; }
.heading-h4 { line-height:1.4; border-bottom:2px #E5E5E5 solid; margin:0 0 7.69vw; padding:2.56vw 2.05vw; font-size:4.1vw; color:#384658; font-weight:600; }
.heading-h5 { line-height:1.4; padding:0 0 4.1vw; font-size:4.1vw; font-weight:600; }
.lay-img50 dd .heading-h3 { padding-top:12.82vw; }

@media screen and (min-width:900px){
.heading-h2 { border-radius:0.58vw; margin:0 0.58vw 3.62vw 0; padding:1.45vw 1.09vw; font-size:1.74vw; }
.heading-h2:before { bottom:-0.14vw; right:-0.58vw; width:1.59vw; height:1.59vw; border-radius:0.29vw; }
.heading-h2:after { bottom:-0.87vw; right:0.87vw; width:0.72vw; height:0.72vw; border-radius:0.14vw; }
.tit-num { background:url(../img/common/bg_tit-num.webp) 0 top/9.13vw auto no-repeat; text-align:left; margin:0 0 0 -2.9vw; padding:3.62vw 2.9vw 2.17vw 8.69vw; font-size:2.39vw; }
.tit-num span { top:2.6vw; left:2.9vw; width:5.8vw; text-align:left; margin:0; font-size:3.62vw; font-weight:400; letter-spacing:0.58vw; }
.heading-h3 { margin:0 0 2.9vw 0; padding:0.87vw 0 0.87vw 0.72vw; font-size:1.45vw; font-weight:600; }
.heading-h3:before { top:0.72vw; width:1.45vw; height:1.45vw; border-radius:0.29vw; }
.heading-h3:after { left:-0.72vw; width:0.72vw; height:0.72vw; border-radius:0.14vw; }
.heading-h4 { margin:0 0 2.17vw; padding:0.72vw 0.58vw; font-size:1.45vw; }
.heading-h5 { padding:0 0 1.16vw; font-size:1.16vw; }
.lay-img50 dd .heading-h3 { padding-top:2.9vw; }
}
@media screen and (min-width:1380px){
.heading-h2 { border-radius:8px; margin:0 0 50px 0; padding:20px 15px; font-size:24px; }
.heading-h2:before { bottom:-2px; right:-8px; width:22px; height:22px; border-radius:4px; }
.heading-h2:after { bottom:-12px; right:12px; width:10px; height:10px; border-radius:2px; }
.tit-num { background:url(../img/common/bg_tit-num.webp) 0 top/126px auto no-repeat; margin:0 0 0 -40px; padding:50px 40px 30px 120px; font-size:33px; }
.tit-num span { top:36px; left:40px; width:80px; font-size:50px; letter-spacing:8px; }
.heading-h3 { margin:0 0 40px 0; padding:12px 0 12px 10px; font-size:22px; }
.heading-h3:before { top:10px; width:20px; height:20px; border-radius:4px; }
.heading-h3:after { left:-10px; width:10px; height:10px; border-radius:2px; }
.heading-h4 { margin:0 0 30px; padding:10px 8px; font-size:20px; }
.heading-h5 { padding:0 0 16px; font-size:16px; }
.lay-img50 dd .heading-h3 { padding-top:40px; }
}




.indent-h2 { margin-left:3.85vw !important; }
.indent-h3 { margin-left:3.85vw !important; }
.indent-h4 { margin-left:3.85vw !important; }

@media screen and (min-width:900px){
.indent-h2 { margin-left:1.45vw !important; }
.indent-h3 { margin-left:1.45vw !important; }
.indent-h4 { margin-left:1.45vw !important; }
}
@media screen and (min-width:1380px){
.indent-h2 { margin-left:20px !important; }
.indent-h3 { margin-left:20px !important; }
.indent-h4 { margin-left:20px !important; }
}




.basic-img { margin:0 auto; padding:0 0 7.69vw; }
.basic-img img { width:100%; height:auto; }
.img50 { width:50%; }
.img55 { width:55%; }
.img60 { width:60%; }
.img65 { width:65%; }
.img70 { width:70%; }
.img75 { width:75%; }
.img80 { width:80%; }
.img85 { width:85%; }
.img90 { width:90%; }
.img95 { width:95%; }
.img100 { width:100%; }

@media screen and (min-width:900px){
.basic-img { padding:0 0 2.17vw; }
}
@media screen and (min-width:1380px){
.basic-img { padding:0 0 30px; }
}




.lay-img50 {}
.lay-img50 dt { padding:0 0 7.69vw; }
.lay-img50 dt img { width:100%; height:auto; }
.lay-img50 dd {}
.lay-img50 dd p { line-height:1.8; margin:0 0 3.85vw; font-size:3.85vw; }
.lay-img50 dd .btn-more { margin-left:auto; margin-right:auto; }

@media screen and (min-width:900px){
.lay-img50 { display:flex; flex-flow:row nowrap; justify-content:space-between; align-items:start; margin:0 auto; }
.lay-img50 dt { width:42.5%; padding:0; }
.lay-img50 dt img {}
.lay-img50 dd { width:46%; padding:0; }
.lay-img50 dd p { margin:0 0 1.45vw; font-size:1.16vw; }
.reverse { flex-flow:row-reverse nowrap; }
.pane2 { display:flex; flex-flow:row nowrap; justify-content:space-between; }
.pane2-l { width:45%; }
.pane2-r { width:45%; }
}
@media screen and (min-width:1380px){
.lay-img50 {}
.lay-img50 dt {}
.lay-img50 dt img {}
.lay-img50 dd {}
.lay-img50 dd p { margin:0 0 20px; font-size:16px; }
}




.sub-check-ul { padding:0 5.13vw; }
.sub-check-ul li { line-height:1.46; background:url(../img/common/ico_check_box.svg) left 5.13vw/5.64vw auto no-repeat; padding:5.13vw 0 5.13vw 8.2vw; font-size:3.85vw; list-style:none; }
.sub-check-ul li:last-child {padding: 0 0 0 6.66vw;}

@media screen and (min-width:900px){
.sub-check-ul { display:flex; flex-flow:row wrap; justify-content:space-between; border-radius:0.43vw; padding:0.72vw 2.17vw; }
.sub-check-ul li { width:25.36vw; background:url(../img/common/ico_check_box.svg) left 1.45vw/1.59vw auto no-repeat; padding:1.45vw 0 1.45vw 2.02vw; font-size:1.09vw; }
.sub-check-ul li:last-child {padding:1.45vw 0 0 2.02vw}
.lay-img50 dd .sub-check-ul li:nth-last-child(2):nth-child(odd) { border-bottom:1px #EEF8FD solid; }
.w100 li { width:100% !important; }
}
@media screen and (min-width:1380px){
.sub-check-ul { border-radius:6px; padding:10px 30px; }
.sub-check-ul li { width:350px; background:url(../img/common/ico_check_box.svg) left 20px/22px auto no-repeat; padding:20px 0 20px 28px; font-size:15px; }
.sub-check-ul li:last-child {padding: 0 0 0 24px;}
}




/* ----------------------------------------------
 ! flow and step
 ---------------------------------------------- */

.flow-sec { background:#EEF8FD; border-radius:2.05vw; padding:5.13vw; position:relative; }
.flow-sec:not(:last-of-type) { margin:0 0 16.66vw; }
.flow-sec:not(:last-of-type):before { content:""; position:absolute; bottom:-11.54vw; left:calc(50% - 1.79vw); width:0; height:0; border-style:solid; border-width:3.07vw 1.79vw 0 1.79vw; border-color:#FFEAB0 transparent transparent transparent; }
.flow-sec:not(:last-of-type):after { content:""; position:absolute; bottom:-7.69vw; left:calc(50% - 1.79vw); width:0; height:0; border-style:solid; border-width:3.07vw 1.79vw 0 1.79vw; border-color:#75E8E5 transparent transparent transparent; }
.flow-sec-tit { display:flex; flex-flow:row nowrap; align-items:center; line-height:1.4; border-bottom:1px #2971A9 solid; margin:0 0 4.1vw; padding:0 0 2.56vw; }
.flow-sec-tit span { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; width:14.1vw; font-size:3.07vw; color:#384658; font-weight:600; text-transform:uppercase; }
.flow-sec-tit span strong { font-size:6.66vw; color:#2971A9; font-weight:600; letter-spacing:0.1em; }
.flow-sec-h3 { display:flex; align-items:center; width:calc(100% - 14.1vw); min-height:12.82vw; line-height:1.4; border-left:1px #384658 dashed; padding:0 0 0 5.13vw; font-size:4.61vw; color:#2971A9; font-weight:600; }
.lay-img-flow {}
.lay-img-flow dt { width:65.38vw; margin:0 auto; }
.lay-img-flow dd {}
.lay-img-flow dd p { line-height:1.86; font-size:3.85vw; }

@media screen and (min-width:900px){
.flow-sec { border-radius:0.72vw; padding:1.74vw; }
.flow-sec:not(:last-of-type) { margin:0 0 5.07vw; }
.flow-sec:not(:last-of-type):before { bottom:-3.62vw; left:calc(50% - 0.58vw); border-width:1.16vw 0.58vw 0 0.58vw; }
.flow-sec:not(:last-of-type):after { bottom:-2.61vw; left:calc(50% - 0.58vw); border-width:1.16vw 0.58vw 0 0.58vw; }
.flow-sec-tit { margin:0 0 1.16vw; padding:0 0 0.72vw; }
.flow-sec-tit span { width:4.71vw; font-size:0.87vw; }
.flow-sec-tit span strong { font-size:1.88vw; }
.flow-sec-h3 { min-height:3.62vw; padding:0 0 0 1.3vw; font-size:1.45vw; }
.lay-img-flow {}
.lay-img-flow dt { width:18.11vw; }
.lay-img-flow dd { width:32.6vw; }
.lay-img-flow dd p { font-size:1.09vw; }
}
@media screen and (min-width:1380px){
.flow-sec { border-radius:10px; padding:24px; }
.flow-sec:not(:last-of-type) { margin:0 0 70px; }
.flow-sec:not(:last-of-type):before { bottom:-50px; left:calc(50% - 8px); border-width:16px 8px 0 8px; }
.flow-sec:not(:last-of-type):after { bottom:-36px; left:calc(50% - 8px); border-width:16px 8px 0 8px; }
.flow-sec-tit { margin:0 0 16px; padding:0 0 10px; }
.flow-sec-tit span { width:65px; font-size:12px; }
.flow-sec-tit span strong { font-size:26px; }
.flow-sec-h3 { min-height:50px; padding:0 0 0 18px; font-size:20px; }
.lay-img-flow {}
.lay-img-flow dt { width:250px; }
.lay-img-flow dd { width:450px; }
.lay-img-flow dd p { font-size:15px; }
}




/* ----------------------------------------------
 ! note box
 ---------------------------------------------- */

.note-box-sec { background:#F5F5F5; padding:9.23vw 4.61vw; position:relative; }
.note-box-sec-tit { line-height:1.5; text-align:center; padding:0 0 8.71vw; font-size:4.35vw; color:#384658; font-weight:600; }
.note-box-sec-txt {}
.note-box-sec-txt p { line-height:1.71; font-size:3.59vw; }

@media screen and (min-width:900px){
.note-box-sec { padding:1.45vw 2.17vw; }
.note-box-sec-tit { padding:0 0 2.17vw; font-size:1.3vw; }
.note-box-sec-txt {}
.note-box-sec-txt p { font-size:1.01vw; }
}
@media screen and (min-width:1380px){
.note-box-sec { padding:20px 30px; }
.note-box-sec-tit { padding:0 0 30px; font-size:18px; }
.note-box-sec-txt {}
.note-box-sec-txt p { font-size:14px; }
}




/* ----------------------------------------------
 ! check box
 ---------------------------------------------- */

.sub-check-ul { background:#fff; border:1px #E5E5E5 solid; padding:4.61vw 5.13vw; }
.sub-check-ul li { line-height:1.4; background:url(../img/common/ico_check_01.svg) left 0.51vw/4.1vw auto no-repeat; padding:0 0 2.56vw 6.66vw; font-size:3.59vw; list-style:none; }
.no-border { border:none; }

@media screen and (min-width:900px){
.sub-check-ul { display:flex; flex-flow:row wrap; justify-content:space-between; padding:1.16vw 1.45vw; }
.sub-check-ul li { width:46%; background:url(../img/common/ico_check_01.svg) left 0.29vw/0.87vw auto no-repeat; padding:0 0 0.72vw 1.74vw; font-size:1.01vw; }
.w100 li { width:100% !important; }
}
@media screen and (min-width:1380px){
.sub-check-ul { padding:16px 20px; }
.sub-check-ul li { background:url(../img/common/ico_check_01.svg) left 4px/12px auto no-repeat; padding:0 0 10px 24px; font-size:14px; }
}




.sub-check-ol { background:#fff; border:1px #E5E5E5 solid; padding:4.61vw 5.13vw; counter-reset:num; }
.sub-check-ol li { line-height:2.28; padding:0 0 0 6.15vw; font-size:3.85vw; color:#2971A9; list-style:none; position:relative; }
.sub-check-ol li::before { counter-increment:num; content:counter(num) "."; position:absolute; left:0; top:0; text-align:center; font-size:3.85vw; color:#2971A9; font-weight:600; }

@media screen and (min-width:900px){
.sub-check-ol { display:flex; flex-flow:row wrap; justify-content:space-between; padding:1.16vw 1.45vw; }
.sub-check-ol li { width:46%; padding:0 0 0 1.74vw; font-size:1.01vw; }
.sub-check-ol li::before { top:0.58vw; width:1.16vw; height:1.16vw; line-height:1.16vw; font-size:0.87vw; }
}
@media screen and (min-width:1380px){
.sub-check-ol { padding:16px 20px; }
.sub-check-ol li { padding:0 0 0 24px; font-size:14px; }
.sub-check-ol li::before { top:8px; width:16px; height:16px; line-height:16px; font-size:12px; }
}




/* ----------------------------------------------
 ! merit & demerit
 ---------------------------------------------- */

.merit-wrap {}
.merit-box { border:1px #E5E5E5 solid; margin:0 0 7.69vw; position:relative; }
.merit-box:before { content:""; position:absolute; bottom:1.03vw; right:-2.05vw; width:6.41vw; height:6.41vw; background:#75E8E5; border-radius:1.03vw; }
.merit-box:after { content:""; position:absolute; bottom:-1.54vw; right:4.61vw; width:3.2vw; height:3.2vw; background:#58B3F8; border-radius:0.51vw; }
.deme:before { background:#E5E5E5; }
.deme:after { background:#C7C7C7; }
.merit-tit { text-align:center; padding:7.69vw 0 3.07vw; font-size:4.1vw; color:#384658; font-weight:600; }
.deme .merit-tit {}
.merit-ul { padding:2.56vw 5.13vw; }
.merit-ul li { line-height:1.4; background:url(../img/common/ico_check_merit.svg) left center no-repeat; background-size:5.64vw auto; padding:3.07vw 0 3.07vw 10.25vw; font-size:3.85vw; list-style:none; }
.merit-ul li:not(:last-child) { border-bottom:1px #000 dashed; }
.deme li { background:url(../img/common/ico_check_demerit.svg) left center no-repeat; background-size/5.64vw auto no-repeat; }
.merit-ul li:not(:last-child) {}
.merit-txt { padding:5.13vw 3.85vw; }
.merit-txt p { line-height:2.28; font-size:3.59vw; }

@media screen and (min-width:900px){
.merit-wrap { display:flex; flex-flow:row nowrap; justify-content:space-between; margin:0 0 2.9vw; }
.merit-box { width:48%;  margin:0; }
.merit-box:before { bottom:0.29vw; right:-0.58vw; width:1.81vw; height:1.81vw; border-radius:0.29vw; }
.merit-box:after { bottom:-0.43vw; right:1.45vw; width:0.87vw; height:0.87vw; border-radius:0.14vw; }
.deme:before {}
.deme:after {}
.merit-tit { padding:2.17vw 0 0.29vw; font-size:1.16vw; }
.deme .merit-tit {}
.merit-ul { padding:1.74vw 0.87vw; }
.merit-ul li { background-size:1.74vw auto; padding:0.87vw 0 0.87vw 2.9vw; font-size:1.09vw; }
.merit-ul li:not(:last-child) {}
.deme li { background-size:1.74vw auto; }
.merit-ul li:not(:last-child) {}
.merit-txt { padding:1.45vw; }
.merit-txt p { font-size:1.09vw; }
}
@media screen and (min-width:1380px){
.merit-wrap { display:flex; flex-flow:row nowrap; justify-content:space-between; margin:0 0 40px; }
.merit-box { margin:0; }
.merit-box:before { bottom:4px; right:-8px; width:25px; height:25px; border-radius:4px; }
.merit-box:after { bottom:-6px; right:20px; width:12px; height:12px; border-radius:2px; }
.deme:before {}
.deme:after {}
.merit-tit { padding:30px 0 4px; font-size:16px; }
.deme .merit-tit {}
.merit-ul { padding:24px 12px; }
.merit-ul li { background-size:24px auto; padding:12px 0 12px 40px; font-size:15px; }
.merit-ul li:not(:last-child) {}
.deme li { background-size:24px auto; }
.merit-ul li:not(:last-child) {}
.merit-txt { padding:20px; }
.merit-txt p { font-size:15px; }
}




/* ----------------------------------------------
 ! risk
 ---------------------------------------------- */

.risk-box { background:#F5F5F5; padding:5.13vw 4.1vw; }
.risk-box-tit { line-height:1.6; border-bottom:0.5px #384658 solid; text-align:center; margin:0 0 3.85vw; padding:0 0 4.1vw; font-size:4.1vw; color:#2971A9; font-weight:600; }
.risk-box-ul { padding:0 3.85vw 7.69vw; }
.risk-box-ul li { line-height:1.69; margin:0 0 0 4.1vw; font-size:3.33vw; }
.risk-box-ul li:not(:last-of-type) { padding:0 0 4.1vw; }
.risk-box-txt { padding:7.69vw 3.85vw; }
.risk-box-txt p { line-height:1.69; font-size:3.33vw; }
.risk-box-txt p:not(:last-of-type) { padding:0 0 4.1vw; }

@media screen and (min-width:900px){
.risk-box { width:55.07vw; margin:0 auto; padding:1.45vw 1.16vw; }
.risk-box-tit { margin:0 0 1.09vw; padding:1.01vw 2.17vw; font-size:1.16vw; }
.risk-box-ul { padding:2.17vw 1.45vw; }
.risk-box-ul li { margin:0 0 0 1.45vw; font-size:1.01vw; }
.risk-box-ul li:not(:last-of-type) { padding:0 0 1.01vw; }
.risk-box-txt { padding:2.17vw 1.45vw; }
.risk-box-txt p { font-size:1.01vw; }
.risk-box-txt p:not(:last-of-type) { padding:0 0 1.01vw; }
}
@media screen and (min-width:1380px){
.risk-box { width:760px; padding:20px 16px; }
.risk-box-tit { margin:0 0 15px; padding:14px 30px; font-size:16px; }
.risk-box-ul { padding:0 20px 30px; }
.risk-box-ul li { margin:0 0 0 20px; font-size:14px; }
.risk-box-ul li:not(:last-of-type) { padding:0 0 14px; }
.risk-box-txt { padding:30px 20px; }
.risk-box-txt p { font-size:14px; }
.risk-box-txt p:not(:last-of-type) { padding:0 0 14px; }
}




/* ----------------------------------------------
 ! table
 ---------------------------------------------- */

.table-basic { width:100%; border:1px #E5E5E5 solid; }
.table-basic thead th { line-height:1.5; background:#EEF8FD; border-bottom:1px #E5E5E5 solid; border-right:1px #E5E5E5 solid; text-align:center; padding:5.13vw 2.56vw; font-size:3.59vw; color:#384658; font-weight:500; }
.table-basic tbody th { line-height:1.5; background:#EEF8FD; border-bottom:1px #E5E5E5 solid; border-right:1px #E5E5E5 solid; text-align:left; padding:5.13vw 2.56vw; font-size:3.59vw; color:#384658; font-weight:500; }
.table-basic td { line-height:1.5; border-bottom:1px #E5E5E5 solid; border-right:1px #E5E5E5 solid; padding:5.13vw 2.56vw; font-size:3.59vw; }
.table-img td { line-height:2; text-align:center; }
.table-img td img { width:100%; height:auto; }
.table20 tr > :first-child { width:20% !important; }
.table25 tr > :first-child { width:25% !important; }
.table30 tr > :first-child { width:30% !important; }
.table35 tr > :first-child { width:35% !important; }
.table40 tr > :first-child { width:40% !important; }
.table45 tr > :first-child { width:45% !important; }
.table50 tr > :first-child { width:50% !important; }
.table55 tr > :first-child { width:55% !important; }
.table60 tr > :first-child { width:60% !important; }
.table65 tr > :first-child { width:65% !important; }
.table70 tr > :first-child { width:70% !important; }
.table75 tr > :first-child { width:75% !important; }
.table80 tr > :first-child { width:80% !important; }
.table-3pane th { width:35%; text-align:left; vertical-align:middle; }
.table-3pane td:nth-of-type(1) img { width:100%; height:auto; margin:2.67vw 0 0; }
.table-3pane td:nth-of-type(1) { width:35%; vertical-align:middle; }
.table-3pane td:nth-of-type(2) { width:30%; vertical-align:middle; }
.table-note01 {}
.table-note01 li { line-height:1.5; padding:0 0 1.05vw 6.45vw; font-size:3.33vw; list-style:none; text-indent:-6.45vw; }


@media screen and (min-width:900px){
.table-basic {}
.table-basic thead th { padding:1.45vw; font-size:1.09vw; }
.table-basic tbody th { padding:1.45vw; font-size:1.09vw; }
.table-basic td { padding:1.45vw; font-size:1.09vw; }
.table-img td {}
.table-img td img { width:21.73vw; }
.table-3pane th { width:30%; }
.table-3pane td:nth-of-type(1) img { margin:0.87vw 0 0; }
.table-3pane td:nth-of-type(1) { width:30%; }
.table-3pane td:nth-of-type(2) { width:40%; }
.table-note01 { padding:0 1.45vw; }
.table-note01 li { padding:0 0 0.43vw 1.74vw; font-size:0.87vw; text-indent:-1.74vw; }
}
@media screen and (min-width:1380px){
.table-basic {}
.table-basic thead th { padding:20px; font-size:15px; }
.table-basic tbody th { padding:20px; font-size:15px; }
.table-basic td { padding:20px; font-size:15px; }
.table-img td {}
.table-img td img { width:300px; }
.table-3pane th {}
.table-3pane td:nth-of-type(1) img { margin:12px 0 0; }
.table-3pane td:nth-of-type(1) {}
.table-3pane td:nth-of-type(2) {}
.table-note01 { padding:0 20px; }
.table-note01 li { padding:0 0 6px 24px; font-size:12px; text-indent:-24px; }
}




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

.faq-basic { margin:0 0 0 4.1vw; }
.faq-basic details { border:1px #E5E5E5 solid; border-radius:1.54vw; margin:0 0 5.13vw; padding:4.1vw; position:relative; }
.faq-basic details:before { content:""; position:absolute; top:1.54vw; left:1.54vw; width:2.05vw; height:2.05vw; background:#75E8E5; border-radius:0.51vw; padding:1.54vw; z-index:2; }
.faq-basic details:after { content:""; position:absolute; top:3.07vw; left:3.07vw; width:2.05vw; height:2.05vw; background:#FFEAB0; border-radius:0.51vw; z-index:2; }
.faq-basic summary { display:flex; align-items:center; min-height:20.51vw; position:relative; }
.faq-basic summary:before { content:"Q."; position:absolute; top:calc(50% - 4.1vw); left:1.54vw; font-size:8.21vw; color:#2971A9; font-weight:600; }
.faq-basic summary:after { content:""; position:absolute; top:0; left:12.82vw; width:1px; height:calc(100% - 2.05vw); border-left:1px #E5E5E5 dashed; }
.faq-basic summary::marker { content:""; }
.faq-basic summary h3 { display:flex; align-items:center; width:100%; line-height:1.4; padding:0 10.25vw 0 15.38vw; font-size:4.1vw; color:#384658; font-weight:600; position:relative; }
.faq-basic summary h3:before { content:""; position:absolute; top:50%; right:0; width:5.13vw; height:0.51vw; background:#2971A9; z-index:2; }
.faq-basic summary h3:after { content:""; position:absolute; top:50%; right:0; width:5.13vw; height:0.51vw; background:#2971A9; transform:rotate(90deg); z-index:2; }
details[open] summary h3:after { transform:rotate(0); }
.faq-basic-box { border-top:1px #2971A9 solid; padding:5.13vw 4.1vw 0 0; position:relative; }
.faq-basic-box:before { display:none; content:"A."; position:absolute; top:5.62vw; left:4.1vw; font-size:3.59vw; }
.faq-basic-box p { line-height:1.86; font-size:3.85vw; color:#384658; font-weight:500; }
.faq-basic-box p:not(:last-child) { padding:0 0 5.13vw; }

@media screen and (min-width:900px){
.faq-basic { margin:0 0 0 2.17vw; }
.faq-basic details { margin:0 0 1.45vw; padding:0.58vw 1.16vw; border-radius:0.58vw; }
.faq-basic details:before { top:0.43vw; left:0.43vw; width:0.58vw; height:0.58vw; border-radius:0.14vw; padding:0.43vw; }
.faq-basic details:after { top:0.87vw; left:0.87vw; width:0.58vw; height:0.58vw; border-radius:0.14vw; }
.faq-basic summary { min-height:5.8vw; }
.faq-basic summary:before { top:calc(50% - 1.16vw); left:0.43vw; font-size:2.31vw; }
.faq-basic summary:after { left:3.62vw; height:calc(100% - 0.87vw); }
.faq-basic summary::marker { content:""; }
.faq-basic summary:hover { opacity:0.7; transition:1s ease; cursor:pointer; }
.faq-basic summary h3 { padding:0 5.8vw 0 4.35vw; font-size:1.16vw; }
.faq-basic summary h3:before { width:1.45vw; height:0.14vw; }
.faq-basic summary h3:after { width:1.45vw; height:0.14vw; }
details[open] summary h3:after {}
.faq-basic-box { padding:1.3vw 0; }
.faq-basic-box:before {}
.faq-basic-box p { font-size:1.09vw; }
.faq-basic-box p:not(:last-child) { padding:0 0 1.45vw; }
}
@media screen and (min-width:1380px){
.faq-basic { margin:0 0 0 30px; }
.faq-basic details { margin:0 0 20px; padding:8px 16px; border-radius:8px; }
.faq-basic details:before { top:6px; left:6px; width:8px; height:8px; border-radius:2px; padding:6px; }
.faq-basic details:after { top:12px; left:12px; width:8px; height:8px; border-radius:2px; }
.faq-basic summary { min-height:80px; }
.faq-basic summary:before { top:calc(50% - 16px); left:6px; font-size:32px; }
.faq-basic summary:after { left:50px; height:calc(100% - 12px); }
.faq-basic summary::marker { content:""; }
.faq-basic summary h3 { padding:0 80px 0 60px; font-size:16px; }
.faq-basic summary h3:before { width:20px; height:2px; }
.faq-basic summary h3:after { width:20px; height:2px; }
details[open] summary h3:after {}
.faq-basic-box { padding:18px 0; }
.faq-basic-box:before {}
.faq-basic-box p { font-size:15px; }
.faq-basic-box p:not(:last-child) { padding:0 0 20px; }
}




/* ----------------------------------------------
 ! read-more box
 ---------------------------------------------- */

.read-more-box { height:69.23vw; overflow:hidden; position:relative; }
.read-more-wrap { height:69.23vw; overflow:hidden; position:relative; }
.read-more-open { height:auto !important; }
.btn-read-more { position:absolute; bottom:0; left:0; display:flex; justify-content:center; align-items:flex-end; width:100%; height:15.38vw; background:linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 42%,rgba(255,255,255,1) 100%); font-size:3.85vw; color:#2971A9; font-weight:500; cursor:pointer; }

@media screen and (min-width:900px){
.read-more-box { height:19.56vw; }
.read-more-wrap { height:19.56vw; }
.read-more-open {}
.btn-read-more { height:5.07vw; font-size:1.09vw; }
}
@media screen and (min-width:1380px){
.read-more-box { height:270px; }
.read-more-wrap { height:240px; }
.read-more-open {}
.btn-read-more { height:70px; font-size:15px; }
}




/* ----------------------------------------------
 ! clinic-img
 ---------------------------------------------- */

#sub-clinic-img { padding:0 0 12.82vw; }
#sub-clinic-img dt { padding:0 0 5.13vw;}
#sub-clinic-img dt img { width:100%; height:auto; }
#sub-clinic-img dd { text-align:center; }
#sub-clinic-img dd p { line-height:2; font-size:3.85vw; font-weight:400; }
#sub-clinic-img dd span { display:block; }
#sub-clinic-img dd small { display:block; font-size:3.59vw; }
#sub-clinic-img dd strong { font-size:4.62vw; font-weight:600; }

@media screen and (min-width:900px){
#sub-clinic-img { padding:0 0 7.21vw; }
#sub-clinic-img dt { width:39.13vw; margin:0 auto; padding:0 0 1.45vw;}
#sub-clinic-img dt img {}
#sub-clinic-img dd {}
#sub-clinic-img dd p { font-size:1.09vw; }
#sub-clinic-img dd span {}
#sub-clinic-img dd small { font-size:1.01vw; }
#sub-clinic-img dd strong { font-size:1.45vw; }
}
@media screen and (min-width:1380px){
#sub-clinic-img { padding:0 0 100px; }
#sub-clinic-img dt { width:540px; padding:0 0 20px;}
#sub-clinic-img dt img {}
#sub-clinic-img dd {}
#sub-clinic-img dd p { font-size:15px; }
#sub-clinic-img dd span {}
#sub-clinic-img dd small { font-size:14px; }
#sub-clinic-img dd strong { font-size:20px; }
}




#sub-clinic-dl { line-height:1.8; font-size:3.85vw; }
#sub-clinic-dl dt {}
#sub-clinic-dl dd { padding:0 0 2.66vw; }
.sub-clinic-ul {}
.sub-clinic-ul li { line-height:1.8; font-size:3.85vw; list-style:none; }

@media screen and (min-width:900px){
#sub-clinic-dl { display:flex; flex-flow:row wrap; font-size:1.09vw; }
#sub-clinic-dl dt { width:15%; }
#sub-clinic-dl dd { width:85%; padding:0 0 0.72vw; }
.sub-clinic-ul {}
.sub-clinic-ul li { font-size:1.09vw; }
}
@media screen and (min-width:1380px){
#sub-clinic-dl { font-size:15px; }
#sub-clinic-dl dt {}
#sub-clinic-dl dd { padding:0 0 10px; }
.sub-clinic-ul {}
.sub-clinic-ul li { font-size:15px; }
}




.txt-link-basic { text-align:right; position:relative; margin-top: 10.66vw !important; }
.txt-link-basic:before { content:""; position:absolute; top:calc(50% - 4.61vw); right:0; width:2.05vw; height:2.05vw; background:#FF8B7E; border-radius:0.51vw; }
.txt-link-basic:after { content:""; position:absolute; top:calc(50% - 1.03vw); right:0; width:2.05vw; height:2.05vw; background:#FF8B7E; border-radius:0.51vw; }
.txt-link-basic a { display:flex; flex-flow:row nowrap; justify-content:end; align-items:center; line-height:1.71; text-align:left; padding:0 7.18vw 0 0; font-size:4.1vw; color:#2971A9; font-weight:600; position:relative; }
.txt-link-basic a:before { content:""; width:0; height:0; border-style:solid; border-width:0.89vw 0 0.89vw 1.54vw; border-color:transparent transparent transparent #2971A9; margin:0 2.05vw 0 0; }
.txt-link-basic a:after { content:""; position:absolute; top:calc(50% + 2.56vw); right:0; width:2.05vw; height:2.05vw; background:#75E8E5; border-radius:0.51vw; }
.txt-link-basic a:hover {text-decoration: none;}

@media screen and (min-width:900px){
.txt-link-basic { margin-top: 1.62vw !important; }
.txt-link-basic:before { top:calc(50% - 1.3vw); width:0.58vw; height:0.58vw; border-radius:0.14vw; }
.txt-link-basic:after { top:calc(50% - 0.29vw); width:0.58vw; height:0.58vw; border-radius:0.14vw; }
.txt-link-basic a { min-height:3.62vw; padding:0 2.03vw 0 0; font-size:1.16vw; }
.txt-link-basic a:before { border-width:0.25vw 0 0.25vw 0.43vw; margin:0 0.58vw 0 0; }
.txt-link-basic a:after { top:calc(50% + 0.72vw); width:0.58vw; height:0.58vw; border-radius:0.14vw; }
}
@media screen and (min-width:1380px){
.txt-link-basic { margin-top: 40px !important;}
.txt-link-basic:before { top:calc(50% - 18px); width:8px; height:8px; border-radius:2px; }
.txt-link-basic:after { top:calc(50% - 4px); width:8px; height:8px; border-radius:2px; }
.txt-link-basic a { min-height:50px; padding:0 28px 0 0; font-size:15px; }
.txt-link-basic a:before { border-width:3.5px 0 3.5px 6px; margin:0 8px 0 0; }
.txt-link-basic a:after { top:calc(50% + 10px); width:8px; height:8px; border-radius:2px; }
}

.txt-link-basic + .txt-link-basic {margin-top: 0 !important;}



/* ----------------------------------------------
 ! link button
 ---------------------------------------------- */

.sub-link-text { color: #8f7869; text-decoration: underline; }
.sub-link-text:hover { text-decoration: none; }

.sub-clinic-button { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2.88vw; width: 100%; margin: 11.54vw auto 0;}
.sub-clinic-button li { width:100%; list-style:none; }
.sub-clinic-button li:first-child { border-right:1px #fff solid; }
.sub-clinic-button li a { display:flex; flex-flow:column nowrap; justify-content:center; align-items:center; height: 14.35vw; border-radius: 14.35vw; padding:0 0 0 6.15vw; font-size:3.85vw; color:#fff; text-decoration:none; }
.sub-clinic-button li:first-child a { background:#EEF8FD url(../img/common/ico_tel_w.svg) 4.66vw center/6.15vw auto no-repeat; font-family:"Lora", sans-serif; font-weight:300; font-style:normal; }
.sub-clinic-button li:last-child a { background:#4A403E url(../img/common/ico_mail_w.svg) 4.85vw center/6.15vw auto no-repeat; }

@media screen and (min-width:900px){
.sub-clinic-button { width: 100%; width:auto; margin: 2.17vw auto 0; gap: 1.16vw;}
.sub-clinic-button li:first-child { border-right:none; }
.sub-clinic-button li a { height:3.76vw; border-radius:3.76vw; padding:0 0 0 2.03vw; font-size:1.09vw; }
.sub-clinic-button li a:hover { opacity:0.7; transition:1s ease; }
.sub-clinic-button li:first-child a { pointer-events:none; background:#EEF8FD url(../img/common/ico_tel_w.svg) 1.3vw center/1.74vw auto no-repeat; }
.sub-clinic-button li:last-child a { background:#4A403E url(../img/common/ico_mail_w.svg) 1.3vw center/1.74vw auto no-repeat; }
}
@media screen and (min-width:1380px){
.sub-clinic-button { width: 100%; gap: 16px; margin:40px auto 0; }
.sub-clinic-button li a { height:52px; border-radius:52px; padding:0 0 0 28px; font-size:15px; }
.sub-clinic-button li:first-child a { background:#EEF8FD url(../img/common/ico_tel_w.svg) 18px center/24px auto no-repeat; }
.sub-clinic-button li:last-child a { background:#4A403E url(../img/common/ico_mail_w.svg) 18px center/24px auto no-repeat; }
}




/* ----------------------------------------------
 ! cms
 ---------------------------------------------- */

#page-nav { display:flex; flex-flow:row nowrap; justify-content:center; align-items:center; margin:0 auto; padding:10.3vw 6.67vw; }
#page-nav a { color:#fff; text-decoration:none; }
#page-nav a:hover { background:#EEF8FD; color:#392B28; transition: all 1s; }
.page-numbers { display:block; min-width:8vw; height:8vw; line-height:8vw; background:#2971A9; text-align:center; margin:0 1.03vw; padding:0 2.56vw; font-size:3.59vw; color:#fff; }
#page-nav .current { background:#EEF8FD; font-size:3.07vw; color:#392B28; }
#page-nav .dots { font-size:3.07vw; color:#fff; }

@media screen and (min-width:900px){
#page-nav { padding:2.9vw 0 5.8vw; }
#page-nav a {}
#page-nav a:hover {}
.page-numbers { min-width:2.9vw; height:2.9vw; line-height:2.9vw; margin:0 0.29vw; padding:0 0.72vw; font-size:1.01vw; }
#page-nav .current { font-size:1.01vw; }
#page-nav .dots { font-size:1.01vw; }
}
@media screen and (min-width:1380px){
#page-nav { padding:40px 0 80px; }
#page-nav a {}
#page-nav a:hover {}
.page-numbers { min-width:40px; height:40px; line-height:40px; margin:0 4px; padding:0 10px; font-size:14px; }
#page-nav .current { font-size:14px; }
#page-nav .dots { font-size:14px; }
}




.main-select-archive { margin:0 0 10.3vw; padding:7.69vw; }
.main-select-archive div { padding:0 0 5.13vw; position:relative; }
.main-select-archive div.select-a-on:after { transform:rotate(0) !important; }
.main-select-archive select { width:100%; height:12.82vw; background:#fff url(../img/common/ico_arrow_select.svg) right 4.54% top 50% no-repeat; background-size:3.59vw auto; border-radius:2.05vw; border:1px #E5E5E5 solid; text-align:center; padding:0 5.13vw; font-size:4.1vw; color:#384658; font-family:'Zen Maru Gothic'; font-style:normal; font-weight:500; appearance:none; }
.main-select-archive option { background:#fff; text-align:center; color:#384658; }
.main-select-archive #select { margin:0 0 2.56vw; }

@media screen and (min-width:900px){
.main-select-archive { display:flex; flex-flow:row nowrap; justify-content:space-between; align-items:center; margin:0 0 2.17vw; padding:1.45vw 0; }
.main-select-archive div { padding:0; }
.main-select-archive div:hover { opacity:0.7; transition: all 1s; }
.main-select-archive select { width:27.17vw; height:3.62vw; background-size:1.01vw auto; border-radius:0.29vw; padding:0 1.45vw; font-size:1.16vw; }
.main-select-archive select:hover { cursor:pointer; }
.main-select-archive option {}
.main-select-archive #select { margin:0; }
}
@media screen and (min-width:1380px){
.main-select-archive { margin:0 0 30px; padding:20px 0; }
.main-select-archive div {}
.main-select-archive select { width:375px; height:50px; background-size:14px auto; border-radius:4px; padding:0 20px; font-size:16px; }
.main-select-archive option {}
.main-select-archive #select {}
}




#nav-prev-next { display:flex; flex-flow:row nowrap; justify-content:space-between; align-items:start; margin:0 6.67vw; padding:20.6vw 0 10.3vw; position:relative; }
.prev-next-box { width:40%; }
.prev-next-box a { display:block; font-size:3.08vw; color:#2971A9; text-decoration:none; }
.prev-next-box a:hover { opacity:0.7; }
#nav-prev {}
#nav-next { text-align:right; }
.prev-next-box dl { display:flex; flex-flow:column; }
#nav-prev dl {}
#nav-next dl {}
.prev-next-box dt { padding:0 0 4.1vw; }
.prev-next-box dt img { width:30vw; height:auto; object-fit:contain; }
.prev-next-box dd { line-height:1.6; }
#nav-prev dd {}
#nav-next dd {}
.prev-next-box dd span { position:absolute; top:7.69vw; font-size:5.13vw; color:#384658; font-weight:700; }
#nav-prev dd span { left:0; }
#nav-next dd span { right:0; }

@media screen and (min-width:900px){
#nav-prev-next { margin:0; padding:8.7vw 0 2.9vw; }
.prev-next-box { width:45%; }
.prev-next-box a { font-size:1.01vw; }
.prev-next-box a:hover {}
#nav-prev {}
#nav-next {}
.prev-next-box dl { align-items:center; }
#nav-prev dl { flex-flow:row nowrap; }
#nav-next dl { flex-flow:row-reverse nowrap; }
.prev-next-box dt { width:10.1vw; padding:0; }
.prev-next-box dt img { width:10.1vw; }
.prev-next-box dd { width:14.49vw; }
#nav-prev dd { padding:0 0 0 1.45vw; }
#nav-next dd { padding:0 1.45vw 0 0; }
.prev-next-box dd span { top:4.35vw; font-size:1.45vw; }
#nav-prev dd span {}
#nav-next dd span {}
}
@media screen and (min-width:1380px){
#nav-prev-next { padding:120px 0 40px; }
.prev-next-box {}
.prev-next-box a { font-size:14px; }
.prev-next-box a:hover {}
#nav-prev {}
#nav-next {}
.prev-next-box dl {}
#nav-prev dl {}
#nav-next dl {}
.prev-next-box dt { width:140px; }
.prev-next-box dt img { width:140px; }
.prev-next-box dd { width:200px; text-align:left; }
#nav-prev dd { padding:0 0 0 20px; }
#nav-next dd { padding:0 20px 0 0; }
.prev-next-box dd span { top:60px; font-size:20px; }
#nav-prev dd span {}
#nav-next dd span {}
}




/* ----------------------------------------------
 ! sitemap
 ---------------------------------------------- */

.page-sitemap-ul { margin:0 7.69vw; position:relative; }
.page-sitemap-ul > li { list-style:none; }
.page-sitemap-ul > li > a { display:block; height:13.84vw; line-height:13.84vw; padding:0 8.97vw 0 6.41vw; font-size:3.85vw; color:#262525; text-decoration:none; position:relative; }
.page-sitemap-ul > li > a:before { content:""; position:absolute; top:calc(50% - 0.9vw); left:0; width:0; height:0; border-style:solid; border-width:0.9vw 0 0.9vw 1.54vw; border-color:transparent transparent transparent #384658; }

@media screen and (min-width:900px){
.page-sitemap-ul { margin:0; }
.page-sitemap-ul > li {}
.page-sitemap-ul > li > a { height:3.62vw; line-height:3.62vw; padding:0 1.45vw 0 1.81vw; font-size:1.09vw; }
.page-sitemap-ul > li > a:before { top:calc(50% - 0.29vw); left:0; border-width:0.29vw 0 0.29vw 0.43vw; border-color:transparent transparent transparent #2971A9; }
.page-sitemap-ul > li > a:hover { opacity:0.7; transition:1s ease; }
}
@media screen and (min-width:1380px){
.page-sitemap-ul {}
.page-sitemap-ul > li {}
.page-sitemap-ul > li > a { height:50px; line-height:50px; padding:0 20px 0 25px; font-size:15px; }
.page-sitemap-ul > li > a:before { top:calc(50% - 4px); border-width:4px 0 4px 6px; }
}




.sub-sitemap-ul { padding:0 0 2.05vw; }
.sub-sitemap-ul li { list-style:none; position:relative; }
.sub-sitemap-ul li:before { content:""; position:absolute; top:50%; left:6.67vw; width:3.59vw; height:0.26vw; background:#A5A5A5; margin:-0.13vw 0 0; }
.sub-sitemap-ul li a { display:block; line-height:1.4; padding:2.05vw 8.97vw 2.05vw 11.53vw; font-size:3.59vw; color:#585858; text-decoration:none; position:relative; }

@media screen and (min-width:900px){
.sub-sitemap-ul { padding:0 0 0.72vw; }
.sub-sitemap-ul li {}
.sub-sitemap-ul li:before { left:1.88vw; width:0.87vw; height:1px; margin:-0.5px 0 0; }
.sub-sitemap-ul li a { padding:0.43vw 1.45vw 0.43vw 3.26vw; font-size:1.01vw; }
.sub-sitemap-ul li a:hover { text-decoration:underline; }
}
@media screen and (min-width:1380px){
.sub-sitemap-ul { padding:0 0 10px; }
.sub-sitemap-ul li {}
.sub-sitemap-ul li:before { left:26px; width:12px; }
.sub-sitemap-ul li a { padding:6px 20px 6px 45px; font-size:14px; }
}

@media screen and (min-width:900px){
	h2,h3,h4,h5,h6 {font-weight: 500;}
}


/* ----------------------------------------------
 ! menu-icon
 ---------------------------------------------- */

.top-treatment-ul li figure { padding: 0 0 0; }
.top-treatment-ul li figure img { width: 15.51vw; }

@media screen and (min-width: 900px) {
    .top-treatment-ul li figure { padding: 0 0 0; }
	.top-treatment-ul li figure img { width: 4vw; }
}

@media screen and (min-width: 1380px) {
    .top-treatment-ul li figure { padding: 0 0 0; }
	.top-treatment-ul li figure img { width: 60px; }
}

/* ----------------------------------------------
 ! map
 ---------------------------------------------- */

@media screen and (min-width: 900px) {
	.sub-art .medical-hour-box thead th,
	.sub-art .medical-hour-box tbody th,
	.sub-art .medical-hour-box tbody td { font-size: 1.16vw !important; }
	.sub-art .medical-hour-box tbody th { text-align: center; padding: 0.87vw 0; }
}

@media screen and (min-width: 1380px) {
	.sub-art .medical-hour-box thead th,
	.sub-art .medical-hour-box tbody th,
	.sub-art .medical-hour-box tbody td { font-size: 16px !important; }
	.sub-art .medical-hour-box tbody th { text-align: center; padding: 12px 0; }
}

.sub-art .medical-hour-box { width: 100%; }