@charset "utf-8";

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
common
font-variation-settings: 'FILL' 1;
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
body { color: var(--c-main);  line-height: 1.8;   background: #fff;}
a { color: var(--c-main);  text-decoration: none;}
.flex {display: flex; display: -webkit-flex; justify-content:space-between; flex-wrap: wrap;}
.clickable a, .clickable a:hover { color: #333;}
img {width: 100%; height: auto;}

:root {
--c-main:#5b3e12;
--c-main-light: #f5f3ec;
--c-main-light-01: #e3ddc7;
--c-main-alpha: rgba(233 , 97, 15 , 0.2 );

--c-syouni: #dd7f7f;
--c-syouni-light:#f5ecec;
--c-syouni-light-01:#eee0e0;

--c-fixedMenu: #5b3e12;
--c-note-bg: #fff1ee;
--c-note-txt:#f01a52;
--c-decC: #e5f3de;
--c-tel: #DF610F;
--ff-symbol: 'Material Symbols Outlined';
--ff-en: "futura-pt, sans-serif";
--c-brown: #927c52;
--c-brownB: #c9bc9c;	
--c-peds: #f46f91;
--c-peds-light: #ffedf2;
--c-peds-light-02: #fdf6f8;
}
.ic-symbol {position: relative;}
.ic-symbol::before { font-family: var(--ff-symbol); position: absolute; font-weight: 200;}
.ic-timetable::before {content: "\ebcc";}
.ic-off::before {content: "\e748"; }
.ic-access::before {content: "\e0c8"; }
.ic-menu::before {content: "\e5d2"; }
.ic-home::before {content: "\e88a";}
.ic-first::before {content: "\f150";}
.ic-medical::before {content: "\f805";}
.ic-syouni::before {content: "\eb41";}
.ic-exam::before {content: "\f80f";}
.ic-staff::before {content: "\e09e";}
.ic-attention::before {content: "\e000";}
.ic-tel::before {content: "\e8a8";}
.ic-file::before{content:"\e873";}

.linkEx {padding-right: 1.6em; position: relative;}
.linkEx::before {content: "\e89e"; font-family: var(--ff-symbol); position: absolute;   right: 0; top: 50%; transform: translate(0, -50%); color: var(--c-main); font-weight: 600 !important; font-size: min(1.66vw , 2rem);}
/*
@media (max-width: 767px) {
	.linkEx::before {font-size: min(4vw , 2rem);}*/
}


/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
header
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#grandMenu ul li  em {font-style: normal;}
/*
@media (min-width:768px) {
.overlay {display: none;}*/

/* grandMenu */
#grandMenu { position: absolute; right: min( 2.5vw , 30px); top: min( 2.5vw , 30px); padding: 0 min( 3.3vw, 40px);  background: rgba(255,255,255,0.85);  border-radius: min( 0.66vw, 8px); transition:  all 0.3s ease-in-out; z-index: 100;}
#grandMenu ul {font-size: min(1.25vw , 1.5rem); text-align: center; font-weight: 600; display: flex; display: -webkit-flex; column-gap: min(3.3vw , 40px); margin: 0;}
#grandMenu ul li {line-height: 1.5; position: relative; padding: min( 1.66vw, 20px)  0;}
#grandMenu ul li a { color: #333;}
#grandMenu ul li a:hover {color: var(--c-main);}
#grandMenu ul li span {font-family: var(--ff-en); font-size: min(1vw , 1.1rem); display: block; color: var(--c-brown);}
#grandMenu ul  li ul.navChild {display: none; position: absolute; left: 50%; margin-top: min( 0.83vw, 10px); transform: translateX(-50%); width: min(12.5vw, 150px); background: var(--c-main);}
#grandMenu ul  li ul.navChild li {padding: 0; border-bottom: 1px dashed #fff;}
#grandMenu ul  li ul.navChild li:last-child {border-bottom: 0;}
#grandMenu ul  li ul.navChild li a {display: block; padding: min(0.83vw , 10px); color: #fff;}

/* fixed */
#grandMenu.fixed {position: fixed; left: min( 20% , 320px); top: 0; right: inherit; width: calc(100% - min( 20% , 320px)); padding: 0; border-radius: 0;z-index: 100; }
#grandMenu.fixed ul {justify-content: space-between; column-gap: 0; }
#grandMenu.fixed ul li {text-align: center; flex-grow: 1;  padding: 0;}
#grandMenu.fixed ul li a {padding: min(1.25vw , 15px) 0; display: block;}
#grandMenu.fixed ul li:hover a{background: var(--c-main-light-01); color: var(--c-main);}
#grandMenu.fixed ul li:hover ul.navChild li a  {color: #fff !important; background: var(--c-main);}
#grandMenu.fixed ul li em {position: relative;}
#grandMenu.fixed ul li em::before {font-size: min(3vw , 3.6rem); font-family: var(--ff-symbol); position: absolute; left: 0; top: 50%; transform: translate(-115%, -60%); color: var(--c-main); font-weight: 200; line-height: 1;} 
#grandMenu:not(.fixed) ul li em::before {content: none;}
#grandMenu.fixed ul  li ul.navChild {margin-top: 0; width: 100%;}

/* layout */
.flex-container {display: flex; display: -webkit-flex;}
#header  {background: #fff; text-align: center; min-height: 95vh; padding:0 0 min(3.3vw , 40px) ; }
body:not(#home) #header {width:min( 20% , 320px);}
#mainContent {width: calc(100% - min( 20% , 320px)); min-height: 95vh; background: #fff; }
#home #header {min-height: inherit;}

/* header */
#hd-logo { margin: 0 auto;}
#hd-logo img {width: 100%; height: auto; }
#header .inrHeader {position: sticky; left: 0; top: 0; padding-top:  min(3.3vw , 40px) ;}
.hd-content {padding-right: min(2.8vw , 40px); padding-left: min(2.8vw , 40px);  }

body:not(#home) #header {border-right: 1px solid #dddddd;}
.hd-dep {font-size: min(1.16vw , 1.4rem); font-weight: 600; color: #656565; line-height: 1.4; padding-top: min(1.25vw , 15px); padding-bottom: min(0.83vw , 10px);}
.hd-btn {padding-top: min(2.5vw ,30px); padding-bottom: min(2vw , 24px);}
.hd-btn__btn li {font-size: min(1.3vw , 1.6rem); font-weight: 600;}
.hd-btn__btn li:not(:last-child) {margin-bottom: min(0.58vw, 7px);}
.hd-btn__btn li a {display: block; background:var(--c-main-light); color: var(--c-main); border: 1px solid var(--c-main); border-radius: min(0.6vw, 8px); padding: min(1.25vw , 15px); line-height: 1.4; position: relative; font-weight: 600;}
.hd-btn__btn li a::before {left: min(0.5vw , 10px); top: 50%; transform: translateY(-50%); font-size: min(2vw , 2.4rem); font-weight: 300;}

.hd-tel {padding-top: min(0.83vw , 10px); padding-bottom: min(0.83vw , 10px);}
.hd-tel h2 {text-align: center; font-size: min(1.3vw , 1.6rem);  padding: min(0.4vw , 5px); letter-spacing: 0.05rem; font-weight: 600; background: var(--c-main); color: #fff; border-radius: 30vw;}
.hd-tel__tel {padding: min(1vw ,12px) 0 min(1.25vw ,15px); position: relative; }
.hd-tel__syouni {border-top: 1px solid var(--c-main);}
.hd-tel__tel h3 {font-size: min(1.66vw,2rem); position: relative; font-weight: 600;}
.hd-tel__tel h3 span::before {left: -1.2em; top: 50%; transform: translateY(-50%); font-size: 1.35em;}
.hd-tel__syouni h3 {color: var(--c-syouni);}

.hd-tel__num { text-align: left; font-size: min(1.8vw, 2.8rem); font-weight: 600; font-family: var(--ff-en); line-height: 1; padding-left: 1.5em; position: relative; white-space: nowrap;}
.hd-tel__syouni .hd-tel__num {color: var(--c-syouni);}
.hd-tel__num::before {content: ""; width: 1.25em; aspect-ratio: 1/1; border-radius: 50%; position: absolute; left: 0; top: 50%; transform: translateY(-50%);}
.hd-tel__num::after {content: "\e0b0"; font-family: var(--ff-symbol); position: absolute; font-weight: 400; left: 0;  top: 50%; transform: translate(25%,-50%); font-size: 0.8em; font-variation-settings: 'FILL'1;}
.hd-tel__naika .hd-tel__num::before {background: var(--c-main-light-01);}
.hd-tel__syouni .hd-tel__num::before {background: var(--c-syouni-light-01);}

.hd-tel__btn  {margin-top: min(1vw,12px);}
.hd-tel__btn a {display: block; font-size: min(1.66vw,2rem); line-height: 1.3; font-weight: 600; border-radius: 5px; }
.hd-tel__btn a span {font-size:min(1vw,1.5rem); display: block; }
.hd-tel__naika .hd-tel__btn a {background:var(--c-main-light-01); padding: min(1.25vw,15px);}
.hd-tel__syouni .hd-tel__btn a {background:var(--c-syouni-light-01); color: var(--c-syouni); padding: min(2vw,24px) min(1.25vw,15px);}
.hd-tel__note {font-size: min( 1.08vw, 1.3rem); text-align:left; color: #ba0000; margin:0; line-height: 1.4;}

/*
.hd-bnr {padding-top: min(0.83vw , 10px); padding-bottom: min(0.83vw , 10px);}
.hd-bnr__influ a {display: block; background: #57aa00; color: #fff; border-radius: min(0.66vw , 8px); font-size: min(1.83vw, 2.2rem); line-height: 1.4; padding:min(1vw , 15px) ; border-bottom: 3px solid #498e00; position: relative; text-align: center;}
.hd-bnr__influ a span {display: block; font-size: min( 1.25vw, 1.5rem); }
*/

/* header > home*/
#home #header {position: absolute; left: 0; top: 0; width: min( 28vw , 440px); z-index: 1; padding:  min(3.3vw , 40px)  0;}
#home #header .inrHeader {position: relative; padding: 0;}
#home .flex-container {display: block;}

#home .hd-content {padding-right: min(4vw , 60px); padding-left: min(4vw , 60px);  }

#home .hd-dep {font-size: min(1.33vw , 1.6rem);  padding-bottom: min(1.25vw , 15px);}
#home .hd-btn {padding-top: min(2vw , 24px); }
#home .hd-btn__btn li {font-size: min(1.5vw , 1.8rem); }
#home .hd-btn__btn li a { padding: min(1.5vw , 18px);}
#home .hd-btn__btn li a::before {left: min(1vw , 25px); font-size: min(2.5vw , 3rem); }

#home .hd-tel {padding-top: min(1.25vw , 15px); padding-bottom: min(1.25vw , 15px);}
#home .hd-tel h2 { font-size: min(1.5vw , 1.8rem); }
#home .hd-tel__tel {padding: min(2vw ,24px) 0 min(2vw,24px) min(5vw,60px); }
#home .hd-tel__tel h3 {position: absolute; left: 0; top: min(1.25vw,15px); -ms-writing-mode: tb-rl; writing-mode: vertical-rl; letter-spacing: 0.3rem;}
#home .hd-tel__tel h3 span {padding-top: 1.65em;}
#home .hd-tel__tel h3 span::before {left: 50%; top: 0; transform: translateX(-50%); font-size: 1.35em;}

#home .hd-tel__title { font-size: min(1.33vw , 1.6rem);}
#home .hd-tel__num {font-size: min(2vw, 3rem); }
#home .hd-tel__special {display: flex; justify-content: center; column-gap: min(1.66vw , 20px); align-items: center;}
#home .hd-tel__special .hd-tel__num {font-size: min(2vw , 3rem);}
#home .hd-tel__special .hd-tel__time {font-size: min(1vw, 1.2rem); color: #737373; line-height: 1.3; position: relative; martin-top:0;}
#home .hd-tel__special .hd-tel__time br {display: block;}
#home .hd-tel__special .hd-tel__time::before {content: ""; width: 1px; height: 100%; background: #737373; position: absolute; left: max(-0.83vw, -10px); top: 0; }
#home .hd-tel__note {font-size: min( 1.16vw, 1.4rem); text-align: center; color: #ba0000; margin: min(0.83vw , 10px) 0 0; line-height: 1.4;}
#home .hd-tel__note strong {color: var(--c-main);}

/*
#home .hd-bnr  {padding-top: min(1.25vw , 15px); padding-bottom: min(1.25vw , 15px); }
#home .hd-bnr__influ a {text-align: left; padding: min(1.66vw , 20px) min(1vw , 15px)  min(1.42vw , 17px)  min(5.2vw , 90px); }
#home .hd-bnr__influ a::before {content: "\e1b1"; font-family: var(--ff-symbol); position: absolute; left: min(1vw , 20px); top: 50%; transform: translateY(-50%); font-weight: 200; font-size: min(3.8vw , 4.8rem);}
*/

@media (max-width: 1548px) {
	#home .hd-content {padding-right: 3vw; padding-left: 3vw;  }
	.hd-content {padding-right: 1.5vw; padding-left: 1.5vw;  }
	
}
@media (max-width: 1240px)  {
	#home .hd-tel__special {display:block; }
	#home .hd-tel__special .hd-tel__num {font-size: min(2.4vw , 3rem);}
	#home .hd-tel__special .hd-tel__time {font-size: min(1vw, 1.2rem); text-align: center; margin-top: min(0.4vw, 5px);}
	#home .hd-tel__special .hd-tel__time br {display: none;}
	#home .hd-tel__special .hd-tel__time::before {content: none; }
	}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
footer
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#footer {padding-top: min(5vw,60px);}
#ftSlideBlock, #spPopup--tel  {display: none;}
#ftInfo {width: 94%; margin: 0 auto;}
.ftinfo__txt {width: 35%; padding-top: min(1.25vw,15px);}
.ftInfo__map {width: 65%;}
.ftInfo__inr {width: 86%;  margin: 0 auto; font-size: min(1.3vw,1.6rem); position: relative;}

.ftInfo__inr h2 {max-width: 420px;}
.ft__dep{font-weight: 600; font-size: min(1vw, 1.4rem); margin: min(0.8vw,10px) 0 min(2.5vw,30px);}
.ftinfo__txt .ftInfo__address {line-height: 1.5; margin-bottom: min(0.83vw , 10px);}
.ftinfo__txt .ftInfo__tel {line-height: 1.4; font-weight: 600;}
.ftInfo__note { margin: min(6.6vw,80px) 0 0; font-size: min(1.16vw, 1.4rem);}
.ftInfo__note a {text-decoration: underline;}

.ftInfo__map iframe {width: 100%; height: 100%;}

.ftnav__wrap { width: 94%; margin: min(5.83vw,70px) auto 0; padding: min(3.3vw, 40px) min(1vw,20px) min(2.5vw, 30px); font-size: min(1.25vw , 1.5rem); display: flex; display: -webkit-flex; justify-content: space-between; flex-wrap: wrap; border-top: 1px solid var(--c-main);}
.ftnav__wrap h3 {font-size:min(1.5vw,1.8rem); font-weight: 600; margin-bottom: min(1.25vw,15px);}
.ftnav__wrap h3 span {padding-left: 1.5em;}
.ftnav__wrap h3 span::before {left: 0; top: 50%; transform: translateY(-50%); font-size: 1.2em; font-weight: 500;}
.ic-sitemap::before{content: "\ebbd";}
.ic-clinic::before{content: "\e4b9";}
.ftnav__left {width: 60%; }
.ftnav__right {width: 38%; }

.ftnav__left .flex {display: flex; display: -webkit-flex; justify-content: flex-start; column-gap: min(3.3vw ,40px);}
.ftnav__left dl, .ftnav__left ul {line-height: 2;}
.ftnav__left dl dt , .ftnav__left ul li {font-weight: 600;}
.ftnav__left dl dd {font-size: min(1.16vw , 1.4rem); }
.ftnav__left dl dd::before {content: "・";}

.ftnav__clinic p {font-weight: 600; font-size: min(1.33vw , 1.6rem); margin-bottom: min(1.66vw , 20px);}
.ftnav__clinic__wrapper {display: flex; display: -webkit-flex; flex-wrap: wrap; column-gap: min(1.6vw , 20px);}
.ftnav__clinic__wrapper dl {line-height: 2; flex-grow: 3; margin-bottom: min(2.5vw,30px)}
.ftnav__clinic__wrapper dl dt {font-weight: 600;}
.ftnav__clinic__wrapper dl dt:not(:first-child) {margin-top: min(2.5vw , 30px);}

.copy {text-align: center; padding: 0 5% min(3.3vw , 40px);  font-size: min(1vw , 1.2rem);}
.copy a {color: #333;}

@media (max-width: 1530px) and (min-width: 768px) {
	.ftnav__clinic__wrapper { column-gap: 1.5vw;}
	.ftnav__left {column-gap: 1.5vw; }
}

@media print { 
	#ftSlideBlock {display: none;}

}

#pagetop { position: fixed;  bottom: 8%;  right: 3%; z-index: 5;}
#pagetop a { display: block;  width: 45px;  height: 45px;background-color: var(--c-main);   color: #fff;  position: relative; z-index: 8; border-radius: 50%;}
#pagetop a::before {content: ""; width: 12px; height: 12px; border-top: 2px solid #fff; border-right: 2px solid #fff; position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%) rotate(-45deg); z-index: 9;}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
home
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

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

.inner {margin-left: auto; margin-right: auto; width: 90%; position: relative;}
.homInner--L {width:94%; margin-right: auto; margin-left: auto;}
.homInner--M {width:90%; max-width: 1380px; margin-right: auto; margin-left: auto;}
.homInner--S {width:90%; max-width: 1200px; margin-right: auto; margin-left: auto;}

.homTitle__lv1{text-align: center; font-size: min(3.83vw,4.6rem); line-height: 1.4; letter-spacing: 0.2rem; margin-bottom: min(4.16vw,50px);}
.homTitle__lv1 span {font-size: min(1.5vw,1.8rem); font-family: var(--ff-en); display: block;}

.homTitle__lv2{text-align: center; font-size: min(3.83vw,4.2rem); line-height: 1.4; letter-spacing: 0.2rem; margin-bottom: min(2.5vw,30px);}
.homTitle__lv2 span {font-size: min(1.25vw,1.5rem); font-family: var(--ff-en); display: block; letter-spacing: normal;}

a.homBtnCommon { display: block; background: #fff; text-align: center; border-radius: 30vw; border: 1px solid var(--c-main); padding: min(1.25vw,15px); position: relative;}
a.homBtnCommon::before{content: ""; width: min(0.83vw,10px); aspect-ratio: 1/1; border-top: 1px solid var(--c-main); border-right: 1px solid var(--c-main); position: absolute; right: min(1.66vw,20px); top: 50%; transform: translateY(-50%) rotate(45deg);}
a.homBtnCommon:hover {background:var(--c-main); color: #fff; }
a.homBtnCommon:hover::before {border-color: #fff;}



/* homVisual --------------------------------------------------*/
#homVisual {background: #eee; padding-left: min( 28vw , 440px); position: relative;}
.homVis__wrap {background: #eee; height: 100%; position: relative;}
.homVis__txt {text-align: center; width: calc(100% - min( 28vw , 440px) ); position: absolute; left: min( 28vw , 440px); top: 50%; transform: translateY(-50%);}
.homVis__txt h2 {font-size: min(3vw,3.6rem); font-weight: 600; line-height: 1.5; text-shadow: 2px 2px 1px white, -2px 2px 1px white, 2px -2px 1px white, -2px -2px 1px white;}
.homVis__txt h2 span {font-size: min(3.67vw,4.4rem);}
.homVis__txt h2 span em {font-style: normal; color: #ec3046;}
.homVis__txt ul {display: flex; display: -webkit-flex; justify-content: center; margin: min(3.3vw,40px) auto 0; column-gap: min(1.66vw,20px);font-size: min(1.66vw,2rem); font-weight: 600;}
.homVis__txt ul li a {display: block; border-radius: 30vw; width: min(16.6vw,200px); text-align: center; border: 2px solid var(--c-main); background: rgba(255,255,255,0.8); padding: min(0.83vw,10px); line-height: 1.4;}

.homVis__info {background: #fff; width: min(60%, 910px); position: absolute; right: 0; bottom: -1px; border-radius: min(0.83vw,10px) 0 0 0; font-size: min(1.5vw,1.8rem);}
.homVis__infSlider {padding: min(2.5vw,30px) min(5vw,60px);  position: relative;}
.homVis__infSlider div a {text-decoration: underline;}
.homVis__infSlider div a:hover{text-decoration: none;}


/* slider */
.homSlider {height: 100%;}
.homSlider__img {position: relative; width: 100%;}
.homSlider__img img {object-fit: cover; width: 100%; height: 100%;}
.homSlider-01 {background: #ddd;}
.homSlider-02 {background: #999;}




/* homMenu --------------------------------------------------*/

#homMenu{padding: min(7.5vw,90px) 0 min(2.5vw,30px);}
.homMenu__flex{display: flex; display: -webkit-flex; justify-content: space-between; flex-wrap: wrap;}
.homMenu__cont {width: 49%; padding: min(6vw,80px) min(3vw,60px); text-align: center;}
.homMenu__naika {background:var(--c-main-light);}
.homMenu__syouni {background:#f7f1f1;}
.homMenu__cont p {margin-bottom: 0;}
.homMenu__menu {max-width: 560px; margin: min(1.66vw,20px) auto min(4.16vw,50px); display: flex; display: -webkit-flex; flex-wrap: wrap;  column-gap: 3.5%;}
.homMenu__menu li {width: 31%; background: #fff; margin-top: 3.5%; font-size: min(1.4vw,1.8rem); padding: min(1.25vw,15px) min(0.4vw,5px); aspect-ratio:1/1; display: flex; display: -webkit-flex; justify-content: center; align-items: center; position: relative;}
.homMenu__menu li:hover, .homMenu__menu li a:hover {opacity: 1!important;}
.homMenu__menu li svg {position: absolute; top: 0; overflow:visible;pointer-events:none; width: 100% ;height: 100%;}
.homMenu__menu li svg rect{transition: all 1s ease-in-out; stroke-dasharray:400%; stroke-dashoffset:400%; width: 100% ;height: 100%;}
.homMenu__menu li:hover svg rect{stroke-dashoffset:0%;}
.homMenu__menu li img {display: block; width: auto; height: min(5.83vw,70px); margin: 0 auto min(2.08vw,25px); }
.homMenu__menu li p {line-height: 1.4; font-weight: 600;}

.homMenu__naika li:hover {background:var(--c-main-light-01); }
.homMenu__syouni li:hover {background:#eee0e0; }
.homMenu__syouni .homMenu__menu li p {color: var(--c-syouni);}
.homMenu__syouni .homMenu__menu li:nth-child(3) img,.homMenu__syouni .homMenu__menu li:nth-child(5) img { margin: 0 auto min(1vw,12px);}
.homMenu__btn {margin: 0 auto; width: 80%; max-width: min(25vw,300px);}

.homSubMenu{padding: min(8.3vw,100px) 0 0;}
.homSub__title {text-align: left; display: flex; display: -webkit-flex; justify-content: space-between; margin-bottom: min(5.83vw,70px);}
.homSub__title .homTitle__lv2 {text-align: left; width: 23%; margin: 0;}
.homSub__title .homSub__read {width: 72%;}

.homSub__wrap {position: relative; margin-bottom: min(5.83vw,70px);}
.homSub__wrap::before, .homSub__wrap::after {content: ""; width: 1px; height: 100%; background: var(--c-main); position: absolute; top: 0;}
.homSub__wrap::before {left: 32.5%;}
.homSub__wrap::after {right: 32.5%;}

.homSub__cont {width: 30%; }
.homSub__cont .homSub__icon {width: min(7.5vw,90px); margin: 0 auto min(1.66vw,20px);}
.homSub__cont h4 {text-align: center; font-size: min(2vw,2.4rem); font-weight: 600;}
.homSub__cont .homSub__txt {margin: min(0.83vw,10px) 0 0; line-height: 1.5;}
.homSub__cont .homSub__list {margin: min(2vw,24px) 0 0; font-size: min(1.5vw,1.8rem);}
.homSub__cont .homSub__list li {margin-top: min(0.83vw,10px); line-height: 1.4;}
.homSub__cont .homSub__list li a {display: block; background: var(--c-main-light); font-weight: 600; padding: min(1.5vw, 18px) min(2vw,24px); border-radius: min(0.4vw,5px); position: relative;}
.homSub__cont .homSub__list li a::before{content: ""; width: min(0.66vw,8px); aspect-ratio: 1/1; border-top: 1px solid var(--c-main); border-right: 1px solid var(--c-main); position: absolute; right: min(1.25vw,15px); top: 50%; transform: translateY(-50%) rotate(45deg);}

.homMenu__free {border: 2px solid var(--c-main); border-radius: min(0.83vw,10px); padding: min(4.16vw, 50px) min(5vw,60px); overflow: hidden;}
.homMenu__free .homMenu__free__img {float: right; margin: 0 0 0 min(6.6vw,80px); width: 30%; overflow: hidden;}
.homMenu__free .homMenu__free__img img {width: 100%; height: auto;}
.homMenu__free h3 {font-size: min(2.17vw,2.6rem); font-weight: 600; margin-bottom: min(1.25vw,15px);}
.homMenu__free p:last-child {margin-bottom: 0;}


/* homNews --------------------------------------------------*/

#homNews{padding: min(9.17vw,110px) 0 min(19.17vw,230px); position: relative; background: var(--c-main-light);}
#homNews::before {content:""; background: url("../img/home/bg-homNews-01.svg") center center / cover no-repeat; aspect-ratio: 300/49; width: 100%; position: absolute; left: 0; top: 0;}
#homNews::after {content:""; background: url("../img/home/bg-homNews-02.svg") center center / cover no-repeat; aspect-ratio: 300/30; width: 100%; position: absolute; left: 0; bottom: 0;}
#homNews .homInner--S {position: relative;}

.homNews__flex {text-align: center; display: flex; display: -webkit-flex; justify-content: center; column-gap: min(1.66vw,20px); margin-bottom: min(5.83vw,70px);}
.homNews__flex li {width: min(48%, 400px);}

.homNews__note {background: #fff; border-radius: min(0.83vw,10px); border: 2px solid var(--c-main); position: relative; padding: min(3.75vw,45px) min(5.83vw,70px); margin-bottom: min(4.16vw,50px);}
.homNews__note h3 {position: absolute; left: 50%; top: 0; transform: translate(-50%, -50%); background: var(--c-main); color: #fff; border-radius:30vw; font-size: min(2vw,2.4rem); font-weight: 600; letter-spacing: 0.2rem; padding: min(0.83vw,10px) min(1.66vw,20px); line-height: 1.3;}
.homNews__note ul {margin: 0;}
.homNews__note ul li {line-height: 1.4; padding-left: 1em; text-indent: -1em; position: relative;}
.homNews__note ul li::before {content: "・";}
.homNews__note ul li span {font-weight: 600;}
.homNews__note ul li:not(:first-child) {margin-top: min(1.25vw,15px);}

.homNews__frame {background: #fff; padding: min(4.16vw,50px) 0 min(5.83vw,70px); text-align: center;}
.homNews__frame h3 {font-size: min(3vw,3.6rem); margin-bottom: min(4.16vw,50px);}
.homNews__frame h3 span {position: relative; padding-bottom: min(0.83vw, 10px);}
.homNews__frame h3 span::before {content: ""; width: 100%; height: 1px; background: var(--c-main); position: absolute; left: 0; bottom: 0;}
.homNews__wrap {margin: 0 auto; width: 90%; max-width: 940px; height: min(33.33vw,400px);}


/* homTopics --------------------------------------------------*/

#homTopics {padding: min(5vw,60px) 0;}
.homTopic__cont {padding: 0 min(1.25vw,15px);}
.homTopic__cont a {display: block; width: min(28vw,360px); border-radius: min(1.25vw,15px); background: var(--c-main-light);}
.homTopic__cont .homTopic__img {border-radius: min(1.25vw,15px) min(1.25vw,15px) 0 0; margin: 0; overflow: hidden; aspect-ratio:36/25; background: #666;}
.homTopic__cont .homTopic__img img {width: 100%; height: 100%; object-fit: cover;}
.homTopic__cont .homTopic__txt {padding: min(2vw,24px);}
.homTopic__cont .homTopic__txt h3 {text-align: center; font-weight: 600; font-size: min(1.83vw,2.2rem); margin-bottom: min(0.83vw,10px);}
.homTopic__cont .homTopic__txt p {margin: 0; font-size: min(1.3vw,1.6rem); line-height: 1.5;}



/* homFeature --------------------------------------------------*/

#homFeature {padding: min(5vw,60px) 0;}
.homFeature__wrap{margin-top: min(7.5vw,90px);}
.homFeature__cont {position: relative; margin-top: min(2.5vw,30px);}
.homFeature__cont .homInner--M {min-height: min(36.67vw,440px); padding: min(3.3vw,40px) 0; display: flex; display: -webkit-flex; align-items: center;}
.homFeature__inr {width: 50%; display: inline-block; text-align: left;}
.homFeature__inr h3 {font-size: min(2.5vw,3rem); margin-bottom: min(2vw,24px); line-height: 1.5;}
.homFeature__img {position: absolute; top: 0; width: 44%; height: 100%; background: #eee;}
.homFeature__img img {width: 100%; height: 100%; object-fit: cover;}
.homFeature__cont:nth-child(odd) .homFeature__img  {left:0;}
.homFeature__cont:nth-child(even) .homFeature__img  {right:0;}
.homFeature__cont:nth-child(odd) .homInner--M {justify-content: flex-end;}



/* homColumn --------------------------------------------------*/
#homColumn {padding: min(14.17vw,170px) 0 min(9.17vw,110px); position: relative; background: var(--c-main-light);}
#homColumn::before {content: ""; background: url("../img/home/bg-homColumn-01.svg") center center / cover no-repeat; aspect-ratio: 300/23; width: 100%; position: absolute; left: 0; top: 0;}
.homCol__flex {max-width: 1140px; width: 90%; margin: 0 auto; display: flex; display: -webkit-flex; column-gap: 3.5%; flex-wrap: wrap; }
.homCol__cont {width: 31%; background: #fff; border-radius: min(1.25vw,15px); margin: 1.5% 0;}
.homCol__btn {margin: min(5vw,60px) auto 0; width: min(25vw,300px);}
.homCol__img {aspect-ratio: 360/235; overflow: hidden; border-radius: min(1.25vw,15px) min(1.25vw,15px) 0 0; background: #555; margin: 0;}
.homCol__img img {width: 100%; height: 100%; object-fit: cover;}
.homCol__cont h3  {text-align: center; font-weight: 600; padding: min(2.5vw,30px) min(1.66vw,20px); line-height: 1.4;}



/* homClinic --------------------------------------------------*/

#homClinic {padding: min(10vw,120px) 0 0;}
.homClinic__read {text-align: center;}
.homClinic__btn {display: flex; display: -webkit-flex; justify-content: center; column-gap: min(1.66vw,20px); margin: min(4.16vw,50px) auto min(7.5vw, 90px); }
.homClinic__btn li { width: min(25vw,300px);}
.homClinic__flex {display: flex; display: -webkit-flex; justify-content: space-between; flex-wrap: wrap;}
.homClinic__cont {width: 49%; padding: min(3.5vw, 60px);}
.homClinic__naika {background: var(--c-main-light);}
.homClinic__syouni {background: var(--c-syouni-light);}

.homClinic__cont table {width: 100%; font-size: min(1.25vw,1.5rem); table-layout: inherit; border: none; margin-bottom: min(2.5vw,30px);}
.homClinic__cont table th, .homClinic__cont table td { text-align: center; padding: min(1.25vw,15px) min(0.83vw,10px);}
.homClinic__cont table th {font-weight: normal; color: #fff; border: none;}
.homClinic__cont table td {background: #fff; border: none;}
.homClinic__naika table th {background:#8e7d63;}
.homClinic__naika table tr {border-bottom: 1px solid var(--c-main-light);}
.homClinic__syouni table th {background:#d6a2a2;}
.homClinic__syouni table tr {border-bottom: 1px solid var(--c-syouni-light);}

.homClinic__cont__btn .homBtnCommon {width: min(26.67vw,320px); margin: 0 auto;}
.homClinic__cont__btn .homBtnCommon span {padding-right: 1.8em;}
.homClinic__cont__btn .homBtnCommon span.ic-pdf::before {content:"\e415"; right: 0; top: 50%; transform:translateY(-50%); font-size: 1.25em;}

.homClinic__cont__note {margin: min(3.3vw,40px) 0 0; font-size: min(1.3vw,1.6rem);}
.homClinic__cont__note .fc-red {color: #db352d;}
.homClinic__cont__note li { display:block;} /*←追加*/



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
underlayer
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#visual {display: flex; display: -webkit-flex; justify-content: center; align-items: center; height: min(30vw, 360px); background: url("../img/page/common/bg-visual-01.jpg") center center / cover no-repeat ;}
#visual h2 {font-size: clamp(2rem , 3.17vw  , 3.8rem); text-align: center; line-height: 1.4;}
#visual h2 span {display: block; color: var(--c-main); text-transform: uppercase; font-family: var(--ff-en); font-size: clamp( 1.3rem, 1.5vw ,1.8rem); font-weight: 600;}
#container {width: 90%; margin: 0 auto; padding: min(5vw , 60px) 0 min(8.3vw , 100px);}



/* navAnchor   ----------------------------------------------*/
#navAnchor {display: flex; justify-content: center; column-gap: min( 0.83vw, 10px); flex-wrap: wrap; margin-bottom: min(4.4vw , 50px);}
#navAnchor li { font-size: clamp(1.4rem, 1.5vw , 1.8rem); margin-bottom: min( 0.83vw, 10px);}
#navAnchor li a {display: block; padding: min( 0.66vw, 8px) min(1.25vw , 15px) min( 0.66vw, 8px) min(3vw, 35px); background:#E8F0C5/*var(--c-main-light)*/; border-radius: min(0.4vw , 5px); position: relative;}
#navAnchor li a::before {content: "\e7cd"; font-family: var(--ff-symbol); position: absolute; left: min( 0.83vw, 10px); top: 50%; transform: translateY(-50%); font-weight: 300; font-size: min(1.66vw , 2rem); }
/* navAnchor.arrow-r----------------------------------------------*/
#navAnchor li.arrow-r a {display: block; padding: min( 0.66vw, 8px) min(1.25vw , 15px) min( 0.66vw, 8px) min(3vw, 35px); background:var(--c-main-light); border-radius: min(0.4vw , 5px); position: relative;}
#navAnchor li.arrow-r a::before {transform: translateY(-50%)rotate(-90deg);}

#navInpage {background: var(--c-main-light); padding: min(2.5vw, 30px) min(4.4vw,50px) min(1.66vw, 20px);}
#navInpage ul {margin: 0; text-align: center; list-style: none; padding: 0 !important; font-size: 0;}
#navInpage ul li {list-style-type: none !important; display: inline-block; font-size: min(1.5vw,1.8rem); margin: 0 min(1.25vw , 15px) min(0.83vw , 10px)}
#navInpage ul li a {padding-left: 1.25em; position: relative; }
#navInpage ul li a::before {content: "\e7cd"; font-family: var(--ff-symbol); position: absolute; left: 0; top: 50%; transform: translateY(-50%); font-weight: 300; font-size: min(1.66vw , 2rem); font-variation-settings: 'FILL' 1; line-height: 1.5;}

@media (max-width: 767px) { /* sp */
	#navAnchor { column-gap: min( 1vw, 10px); margin-bottom: min(6vw , 50px);}
	#navAnchor li { flex-grow: 3; font-size: min(3.8vw , 1.8rem); margin-bottom:  min( 1vw, 10px); line-height: 1.5; text-align: center;}
	#navAnchor li a {padding: min( 2vw, 8px) min(3vw , 15px) min( 2vw, 8px) min(7vw, 35px);  border-radius: min(1vw , 5px);}
	#navAnchor li a::before { left: min( 1.5vw, 10px); font-size: min(5vw , 2rem); }
/* navAnchor.arrow-r 767px----------------------------------------------*/ 
	#navAnchor li.arrow-r a::before { left: min( 1.5vw, 10px); font-size: min(5vw , 2rem); transform: translateY(-50%)rotate(-90deg); }
	#navAnchor li.arrow-r a {padding: min( 2vw, 8px) min(3vw , 15px) min( 2vw, 8px) min(7vw, 35px);  border-radius: min(1vw , 5px); background:var(--c-main-light); }
	
 #navInpage {padding: 3vw;}
 #navInpage ul {text-align: left;}
 #navInpage ul li {font-size: min(3.8vw,1.8rem); margin:min(1vw , 5px);}
 #navInpage ul li a::before { font-size: min(4vw , 2rem);  }

}

/* hx   ----------------------------------------------*/
#container h1, #container h2, #container h3, #container h4, #container h5 {line-height: 1.4;}

#container h1 {color:var(--c-main);  background: var(--c-main-light-01); overflow: hidden; font-size: clamp(1.8rem , 2.5vw , 3rem); padding: min( 2vw, 25px) min(3.3vw , 40px); border-radius: min(0.6vw , 8px); position: relative; margin: min(7.8vw , 90px) auto  min(5vw , 60px); }
#container h1::before {content: ""; width: min( 25vw, 300px); aspect-ratio: 2/1; background: rgba(255,255,255,0.1); position: absolute;  top: 50%; transform-origin: center center; right: 0; transform: translate(35%, -50%) skew(-65deg);}

#container .pageTitle {text-align: center; font-size: clamp(2.2rem, 3.4vw, 4rem); margin: 0 auto min(4.4vw , 50px); color: #333; font-weight: 500; padding: 0; background: none;}
#container .pageTitle::before {content: none;}

#container h2 {margin: min(5vw , 60px) auto min(4.4vw , 50px); color: var(--c-main); font-size: clamp(1.8rem,  2.5vw , 3rem); padding-bottom: min(1.25vw , 15px); border-bottom: 3px solid var(--c-main); font-weight: 600;}
#container h3 {margin: min(4.4vw , 50px) auto; font-size: clamp(1.6rem, 2.17vw , 2.6rem); color: var(--c-main); padding-left: min(4.4vw , 50px); position: relative; font-weight: 600;}
#container h3::before {content: "\f603"; font-family: var(--ff-symbol); position: absolute; left: 0; top: 0; font-variation-settings: 'FILL' 1; font-size: clamp(2rem, 3.3vw , 4rem); line-height: 1; font-weight: 300;}
#container h4 {margin: min(4.4vw , 50px) auto min(2.5vw , 30px); font-size: clamp(1.6rem, 2vw , 2.4rem); font-weight: 600; padding-left: min(1.66vw , 20px); border-left: 5px solid var(--c-main);}

#container .flex h1:first-child,  #container .flex h2:first-child, #container .flex h3:first-child, #container .flex h4:first-child,
.dec h1:first-child,  .dec h2:first-child, .dec h3:first-child, .dec h4:first-child {margin-top: 0;}



/* link  ----------------------------------------------*/
.btn {display: inline-block; min-width: min( 30.42vw, 365px); line-height: 1.4; padding: min(2vw , 25px); background:var(--c-main-light); text-align: center; border-radius: min( 0.6vw, 8px); overflow: hidden; position: relative; font-weight: 600; transition: all 0.2s ease-in-out; border: 1px solid var(--c-main);}
.btn:hover {opacity: 0.9 !important; transform: translateY(2px);}
.btn:hover::before {height: 2px; }
.btn::after{content: ""; width: min(1vw , 12px); aspect-ratio: 1/1; border-top: 2px solid var(--c-main); border-right: 2px solid var(--c-main); position: absolute; right: min(1.66vw , 20px); top: 50%; transform: translate( 0 , -50%) rotate(45deg);}

.btn--ex::after {font-family: var(--ff-symbol); content: "\e89e"; border: none; transform: translate( -50% , -50%) rotate(0); font-weight: 400; font-size: min(2vw, 2.4rem);}
.btn--pdf::after {font-family: var(--ff-symbol); content: "\e415"; border: none; transform: translate( -80% , -50%) rotate(0); font-weight: 200; font-size: min(2.5vw, 3rem);}
/* ▽ピンクlinkボタン */
.btn_p {display: inline-block; min-width: min( 30.42vw, 365px); line-height: 1.4; padding: min(2vw , 25px); background:var(--c-syouni-light-01); text-align: center; border-radius: min( 0.6vw, 8px); overflow: hidden; position: relative; font-weight: 600; transition: all 0.2s ease-in-out; border: 1px solid var(--c-main);}
.btn_p:hover {opacity: 0.9 !important; transform: translateY(2px);}
.btn_p:hover::before {height: 2px; }
.btn_p::after{content: ""; width: min(1vw , 12px); aspect-ratio: 1/1; border-top: 2px solid var(--c-main); border-right: 2px solid var(--c-main); position: absolute; right: min(1.66vw , 20px); top: 50%; transform: translate( 0 , -50%) rotate(45deg);}
.btn_p--ex::after {font-family: var(--ff-symbol); content: "\e89e"; border: none; transform: translate( -50% , -50%) rotate(0); font-weight: 400; font-size: min(2vw, 2.4rem);}
.btn_p--pdf::after {font-family: var(--ff-symbol); content: "\e415"; border: none; transform: translate( -80% , -50%) rotate(0); font-weight: 200; font-size: min(2.5vw, 3rem);}
/* △ピンクlinkボタン */



/* list   ----------------------------------------------*/
#container ul:not(#navAnchor), #container ol {padding-left: 1em;}
#container ul:not(#navAnchor) li {list-style: disc;}
#container ol li {list-style: decimal;}
#container ul:not(#navAnchor) li::marker, #container ol li::marker  {color: var(--c-main); }

#container ul.listCheck {padding-left: 0 !important;}
#container ul.listCheck li {list-style: none !important; padding-left: 1em; text-indent: -1em; position: relative;}
#container ul.listCheck li::before {content: "\e86c"; font-family: var(--ff-symbol); color:var(--c-main); font-variation-settings: 'FILL' 1; }


/* accordion   ----------------------------------------------*/
.accordion {background: var(--c-main-light); border-radius: min( 0.83vw, 10px); margin: min(3.3vw , 40px) auto;}
.acc--subject { padding: min(2.5vw , 30px) min(3vw , 35px)  min(2.5vw , 30px)  min(2.5vw , 30px); cursor: pointer; position: relative; color: var(--c-main); font-size: clamp(1.6rem, 2vw , 2.4rem);}
.acc--subject::before, .acc--subject::after {content: ""; width: min(1.66vw , 20px); height: 2px; background: var(--c-main); position: absolute; right: min(2.5vw, 30px); top: 50%; transform-origin: center center; transform: translate(0 , -50%);  transition: all 0.2s ease-in-out;}
.acc--subject::after { transform: translate(0 , -50%) rotate(90deg);}
.acc--subject.active::after { transform: translate(0 , -50%) rotate(0);}
.acc--content {padding: 0  min(2.5vw , 30px)  min(2.5vw , 30px); display: none; }
.acc--subject p{margin: 0;}




/* sort ---------------------------------------------------- */
.sort-list {text-align: center; font-size: 0; margin-bottom: min(3.3vw , 40px);}
.sort-list li { list-style: none !important; font-size: clamp(1.6rem, 1.66vw, 2rem); margin: 0 min(0.4vw , 5px) min(0.4vw , 5px); display: inline-block; cursor: pointer; color: var(--c-main); 
background: var(--c-main-light-01); padding: min( 0.4vw, 5px) min(1.66vw , 20px); border-radius: 5px;}
.sort-list li.active {background: var(--c-main); color: #fff;}

.list_date {list-style: none !important; padding: 0 !important;}
.list_date li {border-bottom: 1px dashed #ccc; list-style: none !important;  padding: min(1.25vw , 15px) 0 min(1.25vw , 15px) 7em; position: relative; }
.list_date li span {position: absolute; left: 0; }




/* faq   ----------------------------------------------*/
.faq--q,  .faq--a p:last-child{margin: 0;}
.faq--q, .faq--a {padding-left: min(4.5vw , 50px); position: relative;}
.faq--q span, .faq--a span {display: flex; justify-content: center; align-items: center; position: absolute; left: 0; top: 0; border: 2px solid var(--c-main); color: var(--c-main); background: rgba(255,255,255,0.8); border-radius: 50%; width: min(3.3vw , 40px); height: min(3.3vw , 40px); }
 .faq--a span  {border-color: #eb7498; color: #eb7498;}
 
 
 
/* table   ----------------------------------------------*/
table {width: 100%; font-size: clamp( 1.3rem, 1.3vw, 1.8rem ); table-layout: fixed;}
table th, table td {padding: min(1.25vw , 15px); border-width: 1px; border-style: solid;}

.tblA, .tblB, .tblC {border: 1px  solid var(--c-main);}
.tblA th, .tblB th, .tblC th {background: var(--c-main-light); color: var(--c-main); border-color: var(--c-main);}
.tblA td, .tblB td, .tblC td {border-color: var(--c-main);}

.tblD {text-align: center;}
.tblD thead th {background: var(--c-brownB);  border-color: #fff;}
.tblD tbody th {background: var(--c-main-light-01); color: var(--c-main); border-color:var(--c-brownB); }
.tblD tbody td {border-color:var(--c-brownB); background: var(--c-main-light);}
/* ▽ピンクの表追加 */
.tblD_p {text-align: center;}
.tblD_p thead th {background: #d6a2a2; color: #fff; border-color: #fff;}
.tblD_p tbody th {background: var(--c-syouni-light-01); color: var(--c-main); border-color:#d6a2a2; } 
.tblD_p tbody td { border-color:#d6a2a2; background: var(--c-syouni-light);}
/* △ピンクの表追加 */

.tblE,.tblE td,.tblE th{
    border: none !important;
}

@media (max-width: 767px) {
table {font-size: min(4vw, 1.8rem );}
table th, table td {padding: min(1.5vw , 15px); }
.tblB {border-top: none;}
.tblB th, .tblB td {display: block; width: 100%; border:none;}
.tblB th, .tblB td {border-top: 1px solid var(--c-brown);}
.spScroll {	cursor: grab;	overflow: auto;	white-space: nowrap;}
.tblD {table-layout: auto;}
.tblD thead th:first-child, .tblD tbody th {position: sticky; left: 0; top:0; z-index: 5;}
.tblD thead th:first-child::before, .tblD tbody th::before {content: ""; width: 2px; height: 100%; background: #fff; position: absolute; left: -2px; top: 0;}
.tblD thead th:first-child::after, .tblD tbody th::after {content: ""; width: 1px; height: 100%; background: #fff; position: absolute; right: -1px; top: 0;}
/* ▽ピンクの表追加 */	
.tblD_p {table-layout: auto;}
.tblD_p thead th:first-child, .tblD_p tbody th {position: sticky; left: 0; top:0; z-index: 5;}
.tbl_p thead th:first-child::before, .tblD_p tbody th::before {content: ""; width: 2px; height: 100%; background: #fff; position: absolute; left: -2px; top: 0;}
.tblD_p thead th:first-child::after, .tblD_p tbody th::after {content: ""; width: 1px; height: 100%; background: #fff; position: absolute; right: -1px; top: 0;}
/* △ピンクの表追加 */
	.tblE img { width: 40vw !important; }
}

/* dec   ----------------------------------------------*/
.dec {margin: min(3.3vw , 40px) auto; padding: min( 3.3vw , 40px); border-radius: min(0.83vw , 10px);}
.decA {background: var(--c-main-light);}
.decB {background: #fff; border: 1px solid var(--c-main);}
.decC {background: #f3f3f3;}
.dec p:last-child {margin-bottom: 0;}
#container .dec h3:first-child, #container .dec h4:first-child {margin: 0 auto min(1.66vw , 20px);}


/* flex   ----------------------------------------------*/
#container .flex {display: flex; display: -webkit-flex;  flex-wrap: wrap;  margin: 0 auto min(5vw , 60px);}
.flx--equall {column-gap: min(3.3vw , 40px); }
.flx--equall .flex__cont {flex: 1;}
.flex__cont img {width: 100%; height: auto;}
.flx--sb {justify-content: space-between;}
.flx--c {justify-content: center; }



.floatBox {overflow: hidden;}
.floatL {float: left;  margin: 0 min(2.5vw , 30px) min(2.5vw , 30px) 0; display: inline-block;}
.floatR {float: right;  margin: 0 0 min(2.5vw , 30px) min(2.5vw , 30px); display: inline-block;}
.floatL img , .floatR img { height: auto; }




/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
pediatrics
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#pediatrics #visual {background: url("../img/page/common/bg-pedsVisual-01.jpg") center center / cover no-repeat ;}

#pediatrics .pageTitle {color: var(--c-peds); }
#pediatrics #navLocal {display: flex; display: -webkit-flex; justify-content: space-between; padding: 0 !important; margin: 0 auto min(5vw,60px); max-width: 1200px;}
#pediatrics #navLocal li {width: 24.5%; display: flex; display: -webkit-flex;}
#pediatrics #navLocal a {width: 100%; height: min(8.3vw,100px); display: flex; display: -webkit-flex; align-items: center; border: 1px solid var(--c-peds); background: #fff; border-radius: min(1.25vw,15px); position: relative;}
#pediatrics #navLocal a:hover, #pediatrics #navLocal a.current{background: var(--c-peds-light);}
#pediatrics #navLocal a p {margin: 0; color: var(--c-peds); font-weight: 600; line-height: 1.4; font-size: min(1.5vw,1.8rem);}
#pediatrics #navLocal a::before {content: ""; position: absolute; top: 50%; transform: translateY(-50%); background-size: cover; background-repeat: no-repeat; background-position: center center;}
#pediatrics #navLocal .nav-peds--ippan a {padding-left: min(7.5vw,110px);}
#pediatrics #navLocal .nav-peds--ippan a::before {background-image: url("../img/page/pediatrics/ic-ippan-01.png"); aspect-ratio: 72/64; width: min(5vw,72px); left: min(1.2vw,20px); }
#pediatrics #navLocal .nav-peds--ippan a.current::before {background-image: url("../img/page/pediatrics/ic-ippan-01_current.png"); }
#pediatrics #navLocal .nav-peds--gairai a {padding-left: min(9vw,130px);}
#pediatrics #navLocal .nav-peds--gairai a::before {background-image: url("../img/page/pediatrics/ic-special-01.png"); aspect-ratio: 97/71; width: min(7.5vw,97px); left: min(1vw,20px); }
#pediatrics #navLocal .nav-peds--gairai a.current::before{background-image: url("../img/page/pediatrics/ic-special-01_current.png"); }
#pediatrics #navLocal .nav-peds--yobou a {padding-left: min(9vw,130px);}
#pediatrics #navLocal .nav-peds--yobou a::before {background-image: url("../img/page/pediatrics/ic-yobou-01.png"); aspect-ratio: 72/71; width: min(5vw,72px); left: min(1.2vw,20px); }
#pediatrics #navLocal .nav-peds--yobou a.current::before{background-image: url("../img/page/pediatrics/ic-yobou-01_current.png"); }
#pediatrics #navLocal .nav-peds--column a {padding-left: min(7.5vw,90px);}
#pediatrics #navLocal .nav-peds--column a::before {background-image: url("../img/page/pediatrics/ic-column-01.png"); aspect-ratio: 60/82; width: min(5vw,60px); left: min(1.2vw,20px); }
#pediatrics #navLocal .nav-peds--column a.current::before{background-image: url("../img/page/pediatrics/ic-column-01_current.png"); }

#pediatrics #navAnchor li a {background: var(--c-peds-light); color: var(--c-peds);}

#pediatrics #container h1:not(.pageTitle) {background: url("../img/page/pediatrics/bg-h1-01.png") center top / 100% auto no-repeat;  max-width: 1120px; min-height: min(10vw,160px); text-align: center; padding-top: min(5vw,80px); font-size: min(3vw,3.6rem); text-shadow: 2px 2px 2px white, -2px 2px 2px white, -2px -2px 2px white, 2px -2px 2px white;}
#pediatrics #container h1::before{content: none;}
#pediatrics #container h1 span {position: relative; z-index: 1;}
#pediatrics #container h1.h1-B {max-width: inherit; min-height: inherit;background: rgb(253,246,248);
background: linear-gradient(90deg, rgba(253,246,248,1) 35%, rgba(184,224,254,1) 100%); text-align: left; padding: min(2.5vw,30px); text-shadow: none; position: relative;}
#pediatrics #container h1.h1-B::after {content: ""; background: url("../img/page/pediatrics/ic-rainbow.png") center center / cover no-repeat; aspect-ratio: 1/1; height: 90%; position: absolute; right:0; bottom: 0;}

#pediatrics #container h2 {border-bottom: none; font-weight: normal; position: relative; padding: 0 0 min(1.66vw,20px) min(7.5vw,90px); }
#pediatrics #container h2::before {content: ""; background: url("../img/page/pediatrics/ic-h2-01.svg") center center / cover no-repeat; aspect-ratio: 300/143; width: min(5vw,72px); position: absolute; left: 0; top:min(0.4vw,5px);}
#pediatrics #container h2::after {content: ""; background: url("../img/page/pediatrics/bg-h2-01.png") left top / auto 100% repeat-x; width: 100%; height: min(0.5vw,6px);position: absolute; left: 0; bottom: 0;}

#pediatrics #container h3 {color: var(--c-peds); padding-left: min(3.3vw,40px);}
#pediatrics #container h3::before {content: ""; background: url("../img/page/pediatrics/ic-h3-01.svg") center center / cover no-repeat; aspect-ratio: 1/1; width: min(2.67vw,32px); position: absolute; left: 0; top: min(0.25vw,3px);}

#pediatrics #container h4 {color: var(--c-peds); border-color: var(--c-peds);}

#pediatrics .btn {background:var(--c-peds-light-02); border: 1px solid var(--c-peds); color: var(--c-peds);}
#pediatrics .btn::after{border-color: var(--c-peds); }

#pediatrics #container ul:not(#navAnchor) li::marker, #pediatrics #container ol li::marker  {color: var(--c-peds); }
#pediatrics #container ul.listCheck li::before {color:var(--c-peds);}

#pediatrics .tblA, #pediatrics  .tblB, #pediatrics  .tblC {border: 1px  solid var(--c-peds);}
#pediatrics .tblA th, #pediatrics .tblB th, #pediatrics .tblC th {background: var(--c-peds-light); color: var(--c-peds); border-color: var(--c-peds);}
#pediatrics .tblA td, #pediatrics .tblB td, #pediatrics .tblC td {border-color: var(--c-peds);}
#pediatrics .tblD thead th {background: var(--c-peds); }
#pediatrics .tblD_p thead th {background: var(--c-peds); }

#pediatrics .decA {background: var(--c-peds-light);}
#pediatrics .decB {border: 1px solid var(--c-peds);}
#pediatrics .decC {background: var(--c-main-light);}

#pediatrics .accordion {background:var(--c-main-light);}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
column
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.col__list{width: 80%;}
.col-post{position: relative; padding: min(2.5vw , 30px) min(21.67vw , 260px) min(2.5vw , 30px) 0; border-bottom: 1px dashed #aaa; min-height: min(12.5vw , 150px); box-sizing: content-box;} 
.col-post .col-post__img {position: absolute; right: 0; top: min(2.5vw , 30px); aspect-ratio: 4/3; width: min(16.6vw , 200px); background: #eee; margin: 0; overflow: hidden;}
.col-post .col-post__img img {object-fit: cover; width: 100%; height: 100%;}
.col-post h4 {margin: 0 auto min(1.25vw , 15px) !important;}
.col-post ul {margin: 0; font-size: 0;}
.col-post ul li {padding: 0; list-style: none; font-size: min(1.6vw , 1.8rem); display: inline-block; margin-right: min(1.25vw , 15px);}

.col__author {display: flex; display: -webkit-flex;  justify-content: flex-start; flex-wrap: wrap; column-gap: 1.25% !important; border-top: 1px solid #ccc; padding-top: min(4.4vw , 50px); margin-top: min(6.6vw , 80px);} 
.col__author dl {width: 19%; font-size: min(1.3vw , 1.6rem); margin-bottom: min(2.5vw , 30px);}
.col__author dl dt {font-weight: 600; margin-bottom: min(0.4vw , 5px);}
.col__author dl dd {padding-left: min(1.66vw , 2rem); line-height: 1.5; margin-bottom: min(0.4vw , 5px);}
.col__author dl dd::before {left: 0; top: 0; color: var(--c-main); font-size: min(1.66vw , 2rem); line-height: 1.2;}
.col__author dl dd  a {color: #333;}
.col__author dl dd  a:hover {text-decoration: underline;}

@media (max-width: 1530px) {
.col__list{width: 100%;}
.col__author {column-gap: 1.3% !important; } 
.col__author dl {width: 24%;}
}

@media (max-width: 840px) {
.col__author {column-gap: 2% !important; } 
.col__author dl {width: 32%;}
}



/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
pcSetting
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media (min-width:768px) {
/* hover */
a:hover {opacity: .8 !important; text-decoration: none;transition: all 0.2s ease-in-out;}
.clickable:hover { opacity: .8 !important; transition: all 0.2s ease-in-out;}
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
tabletSetting
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media (max-width: 1200px) and (min-width: 768px) {
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
spSetting
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media (max-width: 767px) {
}


/* 20241218 */
.homNews__tab {display:flex; display: -webkit-flex; column-gap: min(0.8vw,10px); margin: 0 auto; width: 90%; max-width: 940px; }
.homNews__tab li {cursor: pointer; border-radius: min(0.6vw, 8px) min(0.6vw, 8px) 0 0; padding: min(4vw,5px) min(1.25vw, 15px); min-width: min(10vw, 120px); background: #ccc; position: relative;  color:#fff; }
.homNews__tab li.is_active::before{content: ""; width: min(1vw,12px); aspect-ratio: 1/1; position: absolute; left: 50%; bottom: -2px; transform: translate(-50%,50%) rotate(45deg);}
.homNews__tab--naika.is_active,.homNews__tab--naika.is_active::before {background:var(--c-brown);}
.homNews__tab--syouni.is_active,.homNews__tab--syouni.is_active::before {background:var(--c-syouni);}

.homNews__iframe{display: none; height: 100%; border-top: 3px solid #000; padding-top: min(1.66vw,20px);}
.homNews__iframe.is_active {display: block; }
.homNews__iframe--naika.is_active {border-color: var(--c-brown);}
.homNews__iframe--syouni.is_active {border-color: var(--c-syouni);}







/*p_info*/

.p_info ul{padding-left:0;}
.p_info li{display:block;}


/*パンくずリスト*/
.topicPath {width: 90%; max-width: 1200px; margin: 0 auto; text-align: right; font-size: 0;}
.topicPath li {display: inline-block; position: relative;}
.topicPath li::before {content: ""; border-top: 1px solid #333; border-right: 1px solid #333; position: absolute; left: 0; top: 50%; transform: translateY(-50%) rotate(45deg);}
.topicPath li:first-child {padding-left: 0;}
.topicPath li:first-child::before{content: none;}

.topicPath li {font-size: 1.2rem;}
.topicPath li {padding-left: 1rem; margin: 0 0.2rem;}
.topicPath li::before{width: 0.5rem; height: 0.5rem;}



/* nasu追加 */
.syouni_logobg{background:var(--c-syouni-light-01); color: var(--c-syouni); padding: min(1vw,12px) min(0.6vw,7px);}

/* ■ボタン*/
a.Btnblock { display: block; background: #fff; text-align: center; border-radius: 0.2vw; border: 1px solid var(--c-main); padding: min(1.25vw,15px); position: relative;}
a.Btnblock::before{content: ""; width: min(0.83vw,10px); aspect-ratio: 1/1; border-top: 1px solid var(--c-main); border-right: 1px solid var(--c-main); position: absolute; right: min(1.66vw,20px); top: 50%; transform: translateY(-50%) rotate(45deg);}
a.Btnblock:hover {background:var(--c-main); color: #fff; }
a.Btnblock:hover::before {border-color: #fff;}

.Btnblock {width: min(26.67vw,320px); margin: 0 auto;}
.Btnblock span {padding-right: 1.8em;}
.Btnblock span.ic-pdf::before {content:"\e415"; right: 0; top: 50%; transform:translateY(-50%); font-size: 1.25em;}



/* li 点を消したい */
.nonDot li{
display:block;
}

/* 改行しない*/
.noBrk { white-space: nowrap;}

/* ▼　*/
.sankaku{
	width: 50px;
	text-align: center;
background: #5b3e12;
clip-path: polygon(0 0, 100% 0, 50% 100%);
}

/*小児診療時間　揃え*/
  .soro{
    display: inline-block;
	width:9em;
  }

