/*
Theme Name: Maehara Clinic
Author: LQ
*/
@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&family=Roboto:ital,wght@0,100;0,400;1,100;1,300;1,400&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&display=swap');

/* ----------------------------------------------
reset
---------------------------------------------- */
html{
  scroll-behavior: smooth;/*Safariは非対応*/
}
body {
  margin: 0 auto;
  padding: 0;
  -webkit-text-size-adjust: 100%;
  overflow-wrap: break-word;
}
table {
  margin : 0;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
}
img {
  vertical-align: middle;
  border: none;
}
*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;}

.elem{
  word-break: keep-all;
  line-break: strict;
  word-wrap: break-word;
  overflow-wrap: break-word;
}

/*clearfix*/
.clearfix:after {content: " "; display: block; height: 0;clear: both; visibility: hidden;}
.clearfix {display: inline-table;}
* html .clearfix {height: 1%;}
.clearfix {display: block;}

/*pagetop*/
.pagetop {height: 50px; width: 50px; position: fixed; right: 10px; bottom: 20px; background: rgba(255,255,255,1); border: solid 2px #50b4c8; border-radius: 50%; display: flex; justify-content: center; align-items: center; z-index: 2;}
.pagetop__arrow {height: 10px; width: 10px; border-top: 3px solid #50b4c8; border-right: 3px solid #50b4c8; transform: translateY(20%) rotate(-45deg);}


/* ***DEF-family*** */
html, body, table, th, td, li, div, p, em, mark{font-family: 'Noto Sans JP', sans-serif; font-weight:500;}
strong{font-weight:600;}
i{font-weight:900; font-family:'Font Awesome 5 Free'; display:inline-block; font-style: normal;}

/* ***DEF-FONTSIZE*** */
html {font-size: 62.5%;}
body {font-size: 1.6em; letter-spacing:1px; line-height:1.7;}

@media screen and (max-width: 500px) {
body {letter-spacing:0;}
body, table, th, td, li, div, p, dl, dt, dd
{font-size: 1.4rem;}
}

/* ***DEF-color*** */
html, body, table, th, td, li, div, p, dl, dt, dd, 
h1,h2,h3,h4,h5,h6
{color:#333;}

a {outline:none; transition:.3s;}
a,a:hover,a:hover img {text-decoration: none;}
img {max-width: 100%; height: auto; width:auto;}

a .fa-caret-right{display:inline-block; margin-left:.8em;}
a .fa-caret-left{display:inline-block; margin-right:.8em;}
@media screen and (max-width: 767px) {
.h_space{height:53px;}
}

.sp{display:none;}
.sp2{display:none;}
@media screen and (max-width: 767px) {
.pc{display:none;}
.sp{display:inherit;}
}
@media screen and (max-width: 500px) {
.pc2{display:none;}
.sp2{display:inherit;}
}


ul.check{list-style:none; margin:0 0 0 0; padding:0;}
ul.check li{margin:.5em 0; line-height:1; padding:1em 1em 1em 3em; background:url(/img/check.png) left center no-repeat #f0faf5; background-position:1em 47%; background-size:1em; font-weight:600;}


hr{display:block; border:0;}
hr.def{background:#50b4c8; height:4px; width:100px; margin:0 auto;}
hr.clear{background:inherit; height:1px;}
hr.arw{width:2em; height:1.2em; position:relative; background:inherit;}
hr.arw:before{content:""; position:absolute; left:0; top:.5em; display:block; background:#50b4c8; height:3px; width:1.25em; transform: rotate(45deg);}
hr.arw:after{content:""; position:absolute; right:0; top:.5em; display:block; background:#50b4c8; height:3px; width:1.2em; transform: rotate(-45deg);}
.mt0{margin-top:0 !important;}
.mb0{margin-bottom:0 !important;}
.mtS{margin-top:1.5em !important;}
.mbS{margin-bottom:1.5em !important;}
.mtM{margin-top:3em !important;}
.mbM{margin-bottom:3em !important;}
.mtL{margin-top:5em !important;}
.mbL{margin-bottom:5em !important;}






header{background:#fff; box-shadow:0 0 3px rgba(100,100,100,.1);position:fixed;left:0; top:0; width:100%;z-index:99999;}
/*position: relative; width: 100%; transition: all 0.4s ease; opacity: 1; z-index:99999;}*/
/*
header.fixed{position:fixed; left:0; top:0; width:100%; animation: fadeSlideDown 0.5s ease forwards;}
@keyframes fadeSlideDown {
  from {opacity: 0; transform: translateY(-20px);}
  to {opacity: 1; transform: translateY(0);}
}*/
header .inner{padding:0;}
header dl{margin:0; padding:0; position:relative; width:100%; height:70px;}
header dt{margin:0; padding:0; position:absolute; width:100%; text-align:center; top:15px; left:0;}
header dd{margin:0; position:absolute; right:1em; top:1em; font-size:clamp(1rem, 1.2vw, 1.2rem); letter-spacing:0;}
header dd .tel{background:#50b4c8; color:#fff; white-space:nowrap; line-height:1.7; border-radius:2em; padding:0 1em; text-align:center; font-size:clamp(1.4rem, 1.8vw, 1.9rem); letter-spacing:.05em; margin:0 0 .2em 0;}
header dd .tel i{margin-right:.3em; font-size:90%;}
header .logo{display:block; width:80%; max-width:200px; height:auto; margin:0 auto 2em auto;}
#gnav ul{list-style:none; margin:0; padding:0;}
#gnav > ul > li > a{display:block; line-height:4; white-space:nowrap; padding:0 1em; color:#333;}
#gnav > ul > li i{font-size:90%; margin-right:.5em; color:#50b4c8;}
#gnav i.fa-angle-down{margin-right:0; margin-left:.5em;}
@media (min-width: 768px) {
#gnav > ul{display:flex; justify-content:center;}
#gnav > ul > li{font-size:clamp(1.3rem, 1.4vw, 1.4rem);}
#gnav li.booking a{display:none;}


.megaMenu {overflow:hidden; height:0; /*left:0;*/ position: absolute; text-align: center; transition: height .3s; /*width: 100%; background:#fff;*/}
.megaMenu > ul{/*display:flex; justify-content:center;*/}
.megaMenu > ul > li{border-top:1px solid #ccc;}
.megaMenu > ul a{display:block; align-items:center; font-weight:600; background:#edf7f9; padding:1.5em 2em; color:#1e3c64;}
.megaMenu > ul a:has(div){display:flex; align-items:center; background:#edf7f9; padding:.5em 1.5em .5em 1em; gap:.7em;}
.megaMenu > ul a > div{line-height:1.3; text-align:left; padding-bottom:.3em; color:#1e3c64; font-weight:600;}
.megaMenu > ul a small{letter-spacing:-1px; width:100%; line-height:1;}
.megaMenu > ul a img{display:block; width:3.5em; height:auto;}
}
@media (hover: hover) and (min-width: 768px){
#gnav > ul > li:hover .megaMenu {height:210px;}
#gnav > ul > li > a:hover{color:#50b4c8; background:rgba(80,180,200,.1);}
.megaMenu > ul a:hover{background:#c8f0f5;}
}
@media (max-width: 767px) {
header dl{height:60px;}
header dt{top:7px;}
header dd{right:70px;}
header .logo{width:50%; max-width:180px; margin:0 0 0 10px;}
#gnav > ul{border-bottom:1px solid #ccc;}
#gnav > ul > li{border-top:1px solid #ccc;}
#gnav > ul > li > a{line-height:3.5;}
#gnav i.fa-angle-down{display:none;}
#gnav li.booking a{background:#00a096; color:#fff; display:block;}
#gnav li.booking a i{color:#fff;}
}
@media (max-width: 500px) {
header dd{right:60px; top:0;}
header dd .tel{background:inherit; color:inherit; line-height:1; border-radius:inherit; padding:0; letter-spacing:0; margin:0;}
header dd .tel a{background:#50b4c8; color:#fff; white-space:nowrap; display:block; line-height:1; font-size:1.1rem; width:60px; height:60px; text-align:center; padding:0; letter-spacing:.2em; padding:15px;}
header dd .tel i{margin:0 0 .2em 0; font-size:inherit; display:block; font-size:20px; letter-spacing:0;}
}
/*spsystem*/
@media (max-width: 767px) {
.menu {
  position: fixed;
  top: 0;
  right: -100%;
  width: 90%;
  max-width:400px;
  height: 100%;
  background-color:#fff;
  transition: right 0.3s ease;
  box-sizing: border-box;
  z-index: 10;
}
/* メニューが開いているとき */
.menu.open {right: 0;}
/* ボタンのスタイル */
.hamburger {
  position: fixed;
  top: 15px;
  right: 15px;
  width: 30px;
  cursor: pointer;
  z-index: 20;
}
.hamburger span {
  display: block;
  height: 3px;
  width: 100%;
  background-color: #333;
  margin: 5px 0;
  transition: 0.4s;
}
/* バツ印に変化するスタイル */
.hamburger.active span:nth-child(1) {transform: rotate(45deg) translate(5px, 5px);}
.hamburger.active span:nth-child(2) {opacity: 0;}
.hamburger.active span:nth-child(3) {transform: rotate(-45deg) translate(6px, -6px);}
/* メニューリストのスタイル */
#gnav > ul{background:#edf7f9; height:100vh;}
#gnav > ul > li:last-child{border-bottom:1px solid #ccc;}
.menu {padding-top: 60px; background:#edf7f9;}
.megaMenu > ul.child a{color:#1e3c64; display:block; line-height:3; margin-left:2.5em; font-size:95%; color:#333; border-top:1px solid #ccc;}
.megaMenu > ul.child a:before{content:"┗"; display:inline-block; margin:0 .5em 0 0;}
.megaMenu > ul.caremenu{display:flex; flex-wrap:wrap; align-items:stretch; width:90%; margin:0 auto !important; gap:5%;}
.megaMenu > ul.caremenu > li{width:calc(90% / 3); padding-bottom:1em;}
.megaMenu > ul.caremenu a{font-weight:600; background:#fff; display:block; border-radius:5px; padding:.5em 0;}
.megaMenu > ul.caremenu a > div{line-height:1.3; text-align:center; color:#1e3c64; height:2.5em; line-height:1.3; font-size:85%; display:flex; align-items:center; justify-content:center; letter-spacing:0;}
.megaMenu > ul.caremenu a > div:has(small){line-height:1.3;}
.megaMenu > ul.caremenu a small{letter-spacing:-1px; width:100%; line-height:1; font-size:70%; display:none;}
.megaMenu > ul.caremenu a br{display:none;}
.megaMenu > ul.caremenu a img{display:block; width:60%; height:auto; margin:0 auto;}
}





/*anchor*/
.anchor{position:relative;}
.anchor a{position:absolute; top:-126px;}
.space{height:126px;}
@media (max-width: 1000px) {
.space{height:120px;}
.anchor a{top:-120px;}
}
@media (max-width: 767px) {
.space{height:60px;}
.anchor a{top:-60px;}
}


footer{background:#50b4c8;}
footer .inner{text-align:center; padding:3em 0;}
footer .logo{display:block; width:80%; max-width:200px; height:auto; margin:0 auto 2em auto;}
footer p{color:#fff; margin:0; font-size:clamp(1.1rem, 1.2vw, 1.2rem);}
footer p a{color:#fff; border:0;}
footer .tel{color:#fff; font-size:clamp(2.5rem, 3vw, 3rem); letter-spacing:.05em; margin:.5em 0;}
footer .tel a{color:#fff;}
footer .tel i{font-size:90%; margin:0 .3em 0 0;}
footer .copy{color:#fff;}
@media (max-width: 767px) {
footer .inner{}
}


section > .bg > .inner{max-width:calc(1000px + 3em); padding:5em 1.5em; margin:0 auto;}
section > .bg > .inner.full{max-width:inherit; padding:0;}
@media screen and (max-width: 767px) {
section > .bg > .inner{padding:3em 1.5em;}
/*#area-outline > .bg > .inner{padding:4em 1.5em;}*/
}

section > .bg.blue{background-color: #FCFFFF;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='100%25' height='100%25' viewBox='0 0 2 1'%3E%3Cdefs%3E%3ClinearGradient id='a' gradientUnits='userSpaceOnUse' x1='0' x2='0' y1='0' y2='1' gradientTransform='rotate(0,0.5,0.5)'%3E%3Cstop offset='0' stop-color='%23FCFFFF'/%3E%3Cstop offset='1' stop-color='%23E9FAFF'/%3E%3C/linearGradient%3E%3ClinearGradient id='b' gradientUnits='userSpaceOnUse' x1='0' y1='0' x2='0' y2='1' gradientTransform='rotate(360,0.5,0.5)'%3E%3Cstop offset='0' stop-color='%23C5F0FB' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%23C5F0FB' stop-opacity='1'/%3E%3C/linearGradient%3E%3ClinearGradient id='c' gradientUnits='userSpaceOnUse' x1='0' y1='0' x2='2' y2='2' gradientTransform='rotate(0,0.5,0.5)'%3E%3Cstop offset='0' stop-color='%23C5F0FB' stop-opacity='0'/%3E%3Cstop offset='1' stop-color='%23C5F0FB' stop-opacity='1'/%3E%3C/linearGradient%3E%3C/defs%3E%3Crect x='0' y='0' fill='url(%23a)' width='2' height='1'/%3E%3Cg %3E%3Cpolygon fill='url(%23b)' points='0 1 0 0 2 0'/%3E%3Cpolygon fill='url(%23c)' points='2 1 2 0 0 0'/%3E%3C/g%3E%3C/svg%3E");
background-attachment: fixed;
background-size: cover;
background-position:center;}
section > .bg.gray{background-color: #f8f8f8;}
@media screen and (max-width: 500px) {
section > .bg.blue{background:#d7f0f5; background-image:none;}
}

#intro{background:url(/img/intro.jpg) center no-repeat; background-size:cover; min-width:350px;}
#intro .inner{aspect-ratio:2 / 1; position:relative; display:flex; align-items:center;}
#intro .catch{width:95%; max-width:1200px; margin:0 auto;}
#intro .catch img{width:55%; height:auto; max-width:600px;}
#intro .schedule {position:absolute; right:0; bottom:2em;}
#intro .schedule > div{background:#fff; padding:1.5em 2em 1em 2em; border-radius: 5px 0 0 5px; font-size:clamp(1.2rem, 1.5vw, 1.5rem);}
#intro .schedule table{width:100%; margin:0 0 1em 0;}
#intro .schedule table + p{font-size:1.2rem; text-indent:-.5em;}
#intro .schedule table tr th, #intro .schedule table tr td{text-align:center; white-space:nowrap; line-height:2.5; padding:0 .5em;}
#intro .schedule table tr th:first-child{text-align:left;}
#intro .schedule table tr + tr{border-top:1px solid #ccc;}
#intro .schedule table thead{border-bottom:3px solid #ccc;}
#intro .schedule table tbody tr td{color:#50b4c8;}
#intro .schedule table tbody tr td span{color:#222;}
@media (min-width: 1200px){
#intro .inner{height:550px; aspect-ratio:inherit;}
}
@media (max-width: 767px){
#intro .inner{aspect-ratio:5 / 4; align-items:flex-start;}
#intro .catch{margin-top:3%;}
#intro .catch img{width:65%;}
#intro .schedule {bottom:1em;}
}
@media (max-width: 600px){
#intro{background:url(/img/intro.jpg) center top no-repeat #eee; background-size:contain;}
#intro .inner{aspect-ratio:inherit; flex-wrap:wrap;}
#intro .inner .catch{width:100%;}
#intro .schedule {width:100%; padding:5% 5% 0 5%; position:inherit;}
#intro .schedule > div{border-radius: 5px; padding:.7em 1em .5em 1em; text-align:center;}
}
@media (max-width: 500px){
#intro .catch{padding:2% 0 0 7%;}
#intro .catch img{width:50%;}
}
@media (max-width: 450px){
#intro .schedule table th, #intro .schedule table td{font-size:1.2rem;}
}












.title h1{text-align:center; font-size:clamp(2rem, 2vw, 2.5rem); font-weight:500; line-height:1; margin:0 0 2em 0; letter-spacing:.1em;}
.title h1 small{display:block; font-size:1.2rem; color:#50b4c8; margin:1em 0;}
.title h1 i{font-size:1.8rem; color:#50b4c8;}
@media (max-width: 500px){
.title h1 small{display:block; font-size:1.2rem; color:#50b4c8; margin:.5em 0;}
}
#area-news .title h1 i{color:#ffa000;}
#area-pollen .title h1 i{color:#509646;}
#area-care .title h1 i{color:#2d4b6e;}
#area-access .title h1 i{color:#e64632;}


#area-page .title h1:before{font-family:'Font Awesome 6 Free'; font-weight:900; font-size:1.8rem;}
body.pollen2 #area-page .title h1:before{content:"\f1bb"; color:#509646;}
body.pollen2 #area-page .title h1 small:before{content:"POLLEN INFO";}
body.care #area-page .title h1:before{content:"\f0f1"; color:#2d4b6e;}
body.care #area-page .title h1 small:before{content:"MEDICAL CARE";}
body.outline2 #area-page .title h1:before{content:"\f0f8"; color:#3caae6;}
body.outline2 #area-page .title h1 small:before{content:"OUTLINE";}
body.recruit2 #area-page .title h1:before{content:"\f007"; color:#e6c814;}
body.recruit2 #area-page .title h1 small:before{content:"RECRUIT";}





/*p*/
section > .bg > .inner p{color:#1e3c64;}

/*btn*/
.btnarea{text-align:center; margin:3em 0 0 0;}
.btnarea a{display:inline-block; margin:.5em; background:#50b4c8; padding:1em 1em 1em 1.5em; min-width:250px; border-radius:2em;}
.btnarea a > div{display:flex; align-items:center; text-align:center; width:100%;}
.btnarea a span{color:#fff; font-size:clamp(1.3rem, 1.4vw, 1.4rem); line-height:1.3; width:calc(100% - 1.5em);}
.btnarea a > div:after{content:"→"; display:inline-block; text-align:center; width:1.5em; line-height:1.5em; border-radius:2em; background:#fff; color:#50b4c8; font-size:80%; margin-left:1em;}
.btnarea.gray a{background:#8ca0aa;}
@media (hover: hover) and (min-width: 768px){
.btnarea a:hover{min-width:260px; background:#28c8e1;}
}



.newslist{list-style:none; margin:0; padding:0; border-bottom:1px solid #ccc;}
.newslist li{display:flex; width:100%; border-top:1px solid #ccc; cursor:pointer; transition:.3s;}
.newslist li > div{width:24em; font-size:clamp(1.2rem, 1.4vw, 1.4rem); padding:1.9em 1em 0 1em; white-space:nowrap;}
.newslist li time{display:inline-block; width:7em;}
.newslist li > div span{display:inline-block; padding:0 1em; border-radius:2em; background:#50b4c8; color:#fff; text-align:center; white-space:nowrap;}
.newslist li > div span:before{content:"お知らせ";}
.newslist li > div span.info:before{content:"診療情報";}
.newslist li > div span.schedule:before{content:"診療日";}
.newslist li > div span.important:before{content:"重要なお知らせ";}
.newslist li > div span.important{background:#f06464;}
.newslist li dl{width:100%; position:relative; padding-right:40px;}
.nav-ac dl div.toggle{position: absolute; right:1em; top:1.7em; display:block; width: 20px; height: 20px; margin: 0;}
.nav-ac dl div.toggle:before, .nav-ac dl div.toggle:after {display: block; content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; background-color: #50b4c8; border-radius: 10px; transition:.3s;}
.nav-ac dl div.toggle:before {width: 3px; height: 20px;}
.nav-ac dl div.toggle:after {width: 20px; height: 3px;}
.nav-ac.active dl div.toggle:before {transform: rotate(90deg); opacity:0;}
.nav-ac .toggle-content {display: none;}
.nav-ac.active .toggle-content {display: block;}
.nav-ac.active .toggle-content {display: block;}
/*質問エリア*/
.nav-ac{}
.nav-ac h2 {padding:0; margin:0; font-size:clamp(1.4rem, 1.5vw, 1.5rem); padding:1.5em 3em 1.5em 0;}
/*回答エリア*/
.toggle-content {padding:0 0 1.5em 0; margin:0;}/*コンテンツ部分*/
.toggle-content p{margin:0; font-size:clamp(1.3rem, 1.5vw, 1.5rem);}
.toggle-content p+p{margin-top:.6em;}
.toggle-content p a{color:#50b4c8; border-bottom:1px solid;}
@media (hover: hover) and (min-width: 768px){
.newslist li:hover {background:rgba(80,180,200,.1);}
.toggle-content p a:hover{opacity:.5;}
}
@media (max-width: 767px){
.newslist li{display:block;}
.newslist li > div{padding:1.5em 1em 0 1em;}
.newslist li dl{padding:0 1em;}
.nav-ac h2 {padding:1em 3em 1em 0;}
.nav-ac dl div.toggle{top:-.3em;}
}
@media (max-width: 500px){
.nav-ac dl div.toggle{top:-1.5em;}
.nav-ac h2 {padding:.5em 3em 1em 0;}
}
/*#area-news > .bg > .inner{padding-bottom:0;}*/

#area-pollen .bg{background:#f0faf5;}


#area-influenza .inner{padding-top:3em;}
#area-pollen .bg > .inner{padding-bottom:.5em;}
#area-care .bg > .inner{padding-top:0;}
@media (max-width: 500px){
#area-care .bg > .inner{padding-top:2em;}
}


.carelist{list-style:none; margin:4em auto 0 auto; padding:0; list-style:100%; display:flex; align-items:stretch; justify-content:center; flex-wrap:wrap; gap:10px; max-width:1200px;}
.carelist li{margin:0; padding:0; width:calc(90% / 4); text-align:center;}
.carelist li a{display:block;}
.carelist .item{position:relative; background:#fff; padding:20% 10%; border:3px solid #fff; transition:.3s; aspect-ratio:1;}
.carelist .item > span{position:absolute; right:-3px; top:-3px; background:#aaa; color:#fff; letter-spacing:.4em; padding:0 .4em .2em .8em; line-height:1.5; white-space:nowrap; font-size:clamp(1rem, 1.1vw, 1.1rem);}
.carelist .item > small{position:absolute; left:.5em; top:.8em; font-size:clamp(1rem, 1.1vw, 1.1rem); -webkit-writing-mode: vertical-rl; writing-mode: vertical-rl; white-space:nowrap; color:#c8d2dc;}
.carelist .item .img{display:flex; justify-content:center; align-items:center; aspect-ratio:1; margin:0 auto 1em auto; position:relative; max-width:90px;}
.carelist .item .img img{display:block; aspect-ratio:1; display:block; width:100%; height:auto; max-width:75px; position:absolute; z-index:+1; transition:.3s;}
.carelist .item .img:after{content:""; display:block; background:#eee; width:100%; max-width:80px; aspect-ratio:1; border-radius:100%; transition:.3s;}
.carelist .item .title{font-size:clamp(1.4rem, 1.6vw, 1.6rem); line-height:1; white-space:nowrap; color:#1e3c64; font-weight:600; display:flex; justify-content:center; align-items:center; height:2em; flex-wrap:wrap;}
.carelist .item .title small{font-size:70%; display:block; margin:0 0 .2em 0; letter-spacing:0; width:100%;}
.carelist li label{display:none; position:absolute; right:1em; bottom:1em; font-size:clamp(1.1rem, 1.2vw, 1.2rem); letter-spacing:0; line-height:1; transition:.3s;}
.carelist li:has( > a) .item{border:3px solid #c8d2dc;}
.carelist li:has( > a) label{display:block;}

.carelist li:nth-child(1) .item .img:after{background:rgba(255,180,180,.8);}
.carelist li:nth-child(2) .item .img:after{background:rgba(255,200,170,.8);}
.carelist li:nth-child(3) .item .img:after{background:rgba(255,220,165,.8);}
.carelist li:nth-child(4) .item .img:after{background:rgba(255,235,170,.8);}
.carelist li:nth-child(5) .item .img:after{background:rgba(255,255,204,.8);}
.carelist li:nth-child(6) .item .img:after{background:rgba(205,255,205,.8);}
.carelist li:nth-child(7) .item .img:after{background:rgba(180,245,185,.8);}
.carelist li:nth-child(8) .item .img:after{background:rgba(130,230,185,.8);}
.carelist li:nth-child(9) .item .img:after{background:rgba(130,230,215,.8);}
.carelist li:nth-child(10) .item .img:after{background:rgba(150,240,250,.8);}
.carelist li:nth-child(11) .item .img:after{background:rgba(130,220,245,.8);}
.carelist li:nth-child(12) .item .img:after{background:rgba(140,200,240,.8);}
.carelist li:nth-child(13) .item .img:after{background:rgba(195,195,245,.8);}

.carebox.allergy figure{background:rgba(255,180,180,.8);}
.carebox.slit figure{background:rgba(255,200,170,.8);}
.carebox.fever figure{background:rgba(255,220,165,.8);}

@media (hover: hover) and (min-width: 768px){
.carelist li a:hover label{right:.8em;}
.carelist li a:hover .item{border:3px solid #50c8be; border-radius:.5em; box-shadow:0 5px 10px rgba(100,100,100,.1);}
.carelist a:hover .item .img:after{max-width:100px;}
.carelist a:hover .item .img img{transform: scale(0.9);}
.carelist a:hover label{color:#50b4c8;}
}
@media (max-width: 767px){
.carelist li{width:calc(90% / 3);}
}
@media (max-width: 600px){
.carelist {/*padding-bottom:1em;*/ padding-bottom:0; margin-bottom: 0;}
.carelist .item > span{font-size:60%;}
.carelist .item > small{font-size:50%; left:0; top:.5em;}
.carelist .item .img{ max-width:50px;}
.carelist .item .title{font-size:80%;}
.carelist .item .title small{display:none;}
.carelist li:has( > a) .item{border:3px solid #50b4c8;}
.carelist li:has( > a) label{display:block; font-size:70%; background:#50b4c8; position:absolute; bottom:0; left:0; color:#fff; line-height:1.5; padding:.2em 0 0 0; width:100%;}
}



#area-outline .bg{background:url(/img/bg_outline.jpg) center no-repeat; background-size:cover; position:relative;}
#area-outline .bg > span{position:absolute; display:block; height: clamp(20px, 10vw, 50px); width:15%;}
#area-outline .bg > span:nth-child(1){left:0; top:0; clip-path: polygon(0 100%, 0 0, 100% 0%); background:#50b4c8;}
#area-outline .bg > span:nth-child(2){right:0; bottom:0; clip-path: polygon(100% 100%, 100% 0, 0 100%); background:#50b4c8;}
#area-outline .inner{display:flex; gap:5%; max-width:1100px; align-items:center; padding-left:2em; padding-right:2em;}
#area-outline .inner .title{width:45%;}
#area-outline .inner .text{width:55%;}
#area-outline h1{margin-top:0; font-family: 'Kosugi Maru', sans-serif; font-weight:normal; font-size:clamp(2.2rem, 5vw, 3rem); text-align:left; line-height:1.5; letter-spacing:0;}
#area-outline h1 br.sp{display:none;}
#area-outline .name{font-size:clamp(1.6rem, 2vw, 2rem);}
#area-outline .name small{display:block; font-size:clamp(1.2rem, 1.3vw, 1.3rem);}
@media (max-width: 1100px){
#area-outline h1 br.sp{display:inherit;}
}
@media (max-width: 768px){
#area-outline .inner{display:block;}
#area-outline .inner .title, #area-outline .inner .text{width:100%;}
#area-outline h1{margin:0 0 1em 0;}
#area-outline h1 br.sp{display:none;}
#area-outline .inner .title{margin-top:2em;}
#area-outline .inner .text{margin-top:3em; margin-bottom:2em;}
#area-outline .inner .text .btnarea{margin:0;}
}


#area-access{}
.gmap{overflow:hidden; display:flex; align-items:center; height:300px; margin-bottom:2em;}
#area-access p{color:#333; font-size:inherit; margin:.5em 0; font-size:clamp(1.3rem, 1.5vw, 1.5rem); display:flex; align-items:center; gap:.5em;}
#area-access p small{background:#d7e1e6; color:#444; display:inline-block; line-height:2; padding:0 1.5em; margin:0; border-radius:2em; font-size:70%;}
#area-access p i{font-size:150%; width:1.5em; text-align:center;}
#area-access p i.fa-location-dot{color:#e64632;}
#area-access p i.fa-car{color:#3278c8;}
#area-access p i.fa-bus{color:#8ca5c8;}



.has-text-align-center{text-align:center;}
.has-text-align-right{text-align:right;}



#area-page > .inner{max-width:calc(1000px + 3em); padding:2em 1.5em 3em 1.5em; margin:0 auto;}
.title + h2{margin:1em 0;}
.bg > .inner > h2, #area-page h2
{font-weight:500; margin:3em 0 1em 0; padding:0 .2em .5em .2em; border-bottom:3px solid #ddd; position:relative; letter-spacing:.1em; line-height:1.3; font-size:clamp(2rem, 2.5vw, 2.5rem);}
.bg > .inner > h2:after, #area-page h2:after
{content:""; position:absolute; left:0; bottom:-3px; display:block; width:20%; height:3px; background:#50b4c8; max-width:150px;}
.bg > .inner > h3, #area-page h3
{margin:4em 0 1.5em 0; padding:.5em 1em; background:#f1f8f9; border-top:1px solid #6ec8f0; border-bottom:1px solid #6ec8f0; font-size:clamp(1.5rem, 1.8vw, 1.8rem);}
.bg > .inner > h4, #area-page h4
{font-weight:500; display:flex; gap:.5em; padding:0; margin:2em 0 1em 0; line-height:1.4; font-size:clamp(1.5rem, 2vw, 2rem);}
.bg > .inner > h4:before, #area-page h4:before
{content:""; display:block; width:.6em; height:.6em; border:3px solid #50b4c8; border-radius:1em; margin-top:.3em;}
.bg > .inner > h5, #area-page h5
{margin:2em 0 1em 0;}




p a{color:#50b4c8; border-bottom:1px solid;}


span.start + h1, span.start + h2, span.start + h3, span.start + h4, span.start + h5, span.start + h6{margin-top:0 !important;}
p:has(+ .end) {margin-bottom:0;}

/*#area-page p strong{border-bottom:1px solid;}*/

#area-page table{border-collapse:collapse; width:100%;}
#area-page table th, #area-page table td{border:1px solid #ccc; padding:1.5em; line-height:1.5; font-size:clamp(1.3rem, 1.5vw, 1.5rem);}
#area-page table th{background:#edf7f9;}
figure.wp-block-table{padding:0; margin:0;}
.typeA table tr > td:first-child{background:#edf7f9; text-align:center; font-weight:600; white-space:nowrap;}
@media (max-width: 600px){
#area-page table th, #area-page table td{padding:1em;}
}

figure.schedule table th{background:inherit; text-align:center;}
figure.schedule table{width:100%; margin:0 0 1em 0;}
figure.schedule table + p{font-size:1.2rem; text-indent:-.5em;}
figure.schedule table tr th, figure.schedule table tr td{text-align:center; white-space:nowrap; line-height:2.5; padding:1em 0 !important; font-size:clamp(1.3rem, 1.5vw, 1.5rem); width:10%;}
figure.schedule table tr td:first-child{width:30%; color:#222;}
figure.schedule table tr + tr{border-top:1px solid #ccc;}
figure.schedule table thead{border-bottom:3px solid #ccc;}
figure.schedule table tbody tr td{color:#50b4c8;}
figure.schedule table tbody tr td:empty:before{content:"―"; color:#222;}
figure.schedule table tbody tr td p{color:#222; margin:0; padding:0; font-size:clamp(1.3rem, 1.5vw, 1.5rem);}


.clinic_box{display:flex;}
.clinic_box .img{width:35%; padding-right:3%;}
.clinic_box .img figure{display:block; margin:0; padding:0; width:100%;}
.clinic_box .table{width:65%;}
@media (max-width: 767px){
.clinic_box{display:block;}
.clinic_box .img{width:100%; padding-right:0;}
.clinic_box .table{width:100%;}
.clinic_box .img figure{display:block; margin:0 auto 1em auto; text-align:center;}
}

.profile_box{display:flex;}
.profile_box .img{width:30%; padding-right:5% !important;;}
.profile_box .table{width:70%;}
.profile_box .photo{display:flex; justify-content:center; align-items:center; aspect-ratio:1; background:#ddd; margin:0 auto 1em auto !important;}
.profile_box .photo:before{content:"Coming soon"; color:#fff; font-size:90%; text-align:center;}
.profile_name{background:#edf7f9; line-height:1; padding:1em; border-radius:5px; margin:0 0 1em 0; font-size:clamp(1.6rem, 2vw, 2rem); letter-spacing:.1em;}
.profile_name small{margin-left:1em; color:#50b4c8; font-size:70%;}
@media (max-width: 767px){
.profile_box .img{width:40%;}
.profile_box .table{width:60%;}
.profile_name small{display:block; margin:1em 0 0 0;}
}
@media (max-width: 500px){
.profile_box{display:block;}
.profile_box .img{width:100%; padding:0 !important;}
.profile_box .photo{max-width:200px; margin:0 auto 1em auto;}
.profile_box .table{width:100%;}
.profile_name small{display:inline-block; margin:0 0 0 1em;}
}

.gmapbtn{display:inline-block; font-size:70%; background:#50b4c8; color:#fff; padding:0 1em; border-radius:3px; line-height:2.5; white-space:nowrap; margin:0 0 0 2em;}
@media (max-width: 600px){
.gmapbtn{display:block; font-size:80%; margin:.8em 0 0 0; width:10.3em; line-height:3;}
}
@media (hover: hover) and (min-width: 768px){
.gmapbtn:hover{background:#28c8e1;}
}

/*
p + .box{margin-top:2em;}
.box + p{margin-bottom:2em;}
.box.design1{border:1px solid #ccc; background:#fff; padding:1.5em 2em; border-radius:.5em;}
.box.design2{border:3px solid #ccc; background:#fff; padding:1.5em 2em; border-radius:.5em;}
.box.design3{background:#fff; padding:1.5em; border-radius:.5em; margin:2em 0;}
.box.design4{border:2px solid #00a096; background-color:#f1f8f9; padding:1.5em 2em; border-radius:.3em;}
.box.design5{background-color:#f1f8f9; padding:1.5em 2em; border-radius:.3em;}
*/
/*box*/
.box{padding:1.5em; border-radius:.3em;}
.box p{margin:0; line-height:1.5; font-size:clamp(1.3rem, 1.4vw, 1.4rem);}
.box p+p{margin-top:1em;}
.box.center{text-align:center;}
.area{padding:1.5em;}
.area.design0{padding:0;}
.design1{border:1px solid #ccc;}
.design2{border:5px solid #eee;}
.design3{border-top:1px solid #ccc; border-bottom:1px solid #ccc; border-radius:0;}
.design4{background:#f1f8f9;}
.design5{background:#f0faeb;}
.design6{background:#f5f5f5;}
.design7{background:#ffebeb;}

.wp-block-media-text{display:flex; align-items:flex-start; gap:5%; width:100%; padding:0;}
.wp-block-media-text figure{padding:0; margin:0; width:20%; min-width:150px;}
.carebox figure{background:#edf7f9; padding:2em; border-radius:5px;}
.wp-block-media-text figure img{display:block; margin:0 auto;}
.wp-block-media-text__content{width:80%;}
.wp-block-media-text__content h2,.wp-block-media-text__content h3,.wp-block-media-text__content h4{margin-top:0 !important;}
p+.wp-block-media-text, .wp-block-media-text+p{margin-top:2em;}
@media (max-width: 600px){
.wp-block-media-text figure{min-width:80px;}
.carebox figure{padding:.5em;}
}



/*web form*/
input.subject{display:none !important;}
input[type="text"],input[type="email"],input[type="tel"]{display:block; border:1px solid #ccc; border-radius:3px; line-height:3; font-size:18px; width:100%; padding:0 .5em;}

form h3{background:#f1f8f9; padding:.8em 1em !important;}
form h3:before{display:none !important;}
form h3.req:before{content:"必須"; font-size:12px; color:red; padding:0 1em 0 0;}
form h3 span{display:inline-block; font-weight:normal; font-size:11px; color:#fff; background:#00a096; line-height:1; padding:.3em .5em; margin:0 0 .5em 0;}

label.calendar{display:flex; justify-content:space-between; border:1px solid #ccc; border-radius:3px; line-height:3; font-size:18px; cursor:pointer;}
label.calendar:after{content:"\f073"; font-family:'Font Awesome 6 Free'; font-weight:900; background:#f1f8f9; color:#00a096; width:3em !important; text-align:center; padding:0 1em;}
input.calendar{border:0; display:block; line-height:3; padding:0 .3em; text-align:center;}

div.radio{border:1px solid #ccc; border-radius:3px;}
div.radio ul{display:flex; width:100%; margin:0; padding:0;}
div.radio li{display:block; width:50%; margin:0;}
div.radio p{margin:0; padding:0;}
div.radio li input{margin:0 .5em 0 0;}
div.radio li + li{border-left:1px solid #ccc;}
div.radio li label{display:block; cursor:pointer; text-align:center; line-height:3; font-size:18px; margin:0;}
.parttime{display:table; margin:1em auto;}
div.radio li label:has(input[type="radio"]:checked),
div.radio li label:hover{background:#f1f8f9;}

label#age input{width:4em; display:inline-block;}
label#age:after{content:"歳"; margin-left:1em;}

table.plan{border-collapse: collapse; width:100%;}
table.plan thead{border-bottom:2px solid #ccc;}
table.plan th, table.plan td{border:1px solid #ccc; padding:0; line-height:1;}
table.plan th p, table.plan td p{display:block; text-align:center; margin:0; padding:0; line-height:1.4;}
table.plan th span, table.plan td span{display:block; text-align:center; margin:0; padding:0;}
table.plan th > div{margin:.5em 0 0 0;}

table.plan th{font-weight: 500; padding:1em .5em; background:#f8f8f8;}
table.plan th.type1{font-size:85%; padding:.5em; background:rgba(255,240,190,1);}
table.plan tr th.area1{background:#e1f5fa;}
table.plan tr.area2 th{background:#f1f8f9;}
table.plan th.type2{font-size:85%; padding:.5em; background:rgba(255,220,220,1);}

table.plan td label{background:rgba(255,240,190,.2);}
table.plan tr.spray td label{background:rgba(255,220,220,.2);}

table.plan td label:has(input[type="radio"]:checked),
table.plan td label:hover{background:rgba(255,240,190,.6);}
table.plan tr.spray td label:has(input[type="radio"]:checked),
table.plan tr.spray td label:hover{background:rgba(255,220,220,.6);}

:checked
@media (hover: hover) {}
table.plan td{}
table.plan small{font-size:85%; line-height:1.3;}

table.plan th.age{font-size:90%;}
table.plan td label{display:block; padding:1em; cursor:pointer;}
table.plan td input{margin:0;}

form{max-width:500px; margin:0 auto;}
.ui-datepicker {z-index: 9999 !important;}
.wpcf7-not-valid-tip{padding:.5em !important; font-size:13px !important;}

div.※{display:flex; gap:3px; margin:1em 0 0 0;}
div.※:before{content:"※";　font-size:13px;}
div.※ p{font-size:13px; line-height:1.3; margin:0;}


/*recruit*/
fieldset{display:none;}
.recruitform{margin:3em auto;}
.recruitform th{font-size:clamp(1.2rem, 1.4vw, 1.4rem) !important; width:10em;}
.recruitform th, .recruitform td{padding:.5em 1em !important; line-height:1; white-space:nowrap;}
.recruitform th.req span:after{content:"*"; color:red; display:inline-block; margin-left:.2em;}
.recruitform input{display:block; line-height:3; border:1px solid #ccc; border-radius:3px; width:100%; margin:0 !important; padding:0 .5em;}
.recruitform textarea{display:block; line-height:3; border:1px solid #ccc; border-radius:3px; width:100%; margin:0 !important; height:150px; padding:0 .5em;}
.btnarea{margin:50px 0;}
.btnarea p{display:flex; justify-content:center;}
.btnarea button{-webkit-appearance: none; border-radius:5px; border:0; background:#00a096; color: #fff; padding:0; margin:0 1em; line-height:4; width:130px; font-size:16px; cursor:pointer;}
.btnarea button.prev-step{background:#aaa;}
.btnarea button#formTopBtn{background:orange;}

.form-step {display: none;}
.form-step.active {display: block;}
.error {border: 2px solid red;}
.wpcf7-response-output{text-align:center; padding:1em;}
.screen-reader-response ul{display:none !important;}
.screen-reader-response p{background:#eee; color:#333; padding:1em; text-align:center; max-width:600px; margin:2em auto;}
.wpcf7-response-output{background:#eee; color:#333; padding:1em; text-align:center; max-width:600px; margin:2em auto;}
.screen-reader-response p:empty, .wpcf7-response-output:empty{display:none;}
.wpcf7-not-valid-tip{background:#ffe1e1; color:#e62828; padding:.5em; display:block; line-height:1; text-align:center; margin:1em 0 0 0; font-size:90%;}




/*infulenza*/
.attention{margin:2em 0 !important; padding:1.5em; border:1px solid #ccc; background:#fff; border-radius:.5em;}
.attention h3{margin:0 0 .5em 0 !important; color:#50b4c8; font-size:clamp(1.3rem, 1.6vw, 1.6rem); line-height:1.4; font-weight:bold;}
.attention h3:before{display:none;}
.attention p{margin:0; padding:0; font-size:90%; color:#333 !important; font-weight:400;}
u{text-decoration:underline !important;  display:inline !important;}

figure.price table{margin:0 0 .5em 0; width:100%; background:#fff;}
figure.price table td{padding:1em .5em; border:1px solid #ccc;}
figure.price table td p{text-align:center; margin:0; color:#333 !important; font-size:85%;}
figure.price table td br{display:none;}
figure.price table tr:nth-child(1) > td{background:#e1f5fa;}
figure.price table tr:nth-child(2) > td{background:#f1f8f9;}
figure.price table tr:nth-child(3) > td:nth-child(n+2){font-size:85%; padding:.5em; background:rgba(255,220,220,1);}
figure.price table tr:nth-child(4) > td{background:rgba(255,220,220,.3);}
figure.price table tr:nth-child(5) > td:nth-child(n+2){font-size:85%; padding:.5em; background:rgba(255,240,190,1);}
figure.price table td{background:rgba(255,240,190,.3);}
figure.price table tr:nth-child(1) > td:nth-child(1),
figure.price table tr:nth-child(3) > td:nth-child(1),
figure.price table tr:nth-child(5) > td:nth-child(1),
figure.price table tr:nth-child(7) > td:nth-child(1),
figure.price table tr:nth-child(8) > td:nth-child(1),
figure.price table tr:nth-child(9) > td:nth-child(1)
{background:#f8f8f8;}
@media print, screen and (max-width: 600px) {
figure.price table td br{display:inherit;}
}
body.page-id-1232 .container > p+p{margin-top:1em;}
.has-small-font-size{font-size:80%;}

ul.fulmist{list-style-type:none !important;}
ul.fulmist{padding:0 !important; margin:2em auto 3em auto !important; display:table; border-top:1px dashed #00a096;}
ul.fulmist li{text-align:center; font-weight:500; border-bottom:1px dashed #00a096; padding:1em !important; margin:0 !important;}
ul.fulmist li br{display:none;}
@media print, screen and (max-width: 600px) {
ul.fulmist li br{display:inherit;}
}
figure.fulmist table{font-size:90%; margin:2em 0 .2em 0;}
figure.fulmist table{}
figure.fulmist table th, figure.fulmist table td{padding:.8em;}
figure.fulmist table tr > td:first-child{background:#f5f5f5; font-weight:500;}

a.btn+a.btn,
a.btn[href="/flumist/"]
{background:#8ca0aa;}
a.btn+a.btn:after,
a.btn[href="/flumist/"]:after{color:#8ca0aa;}

h1.sub{text-align:center; position:relative; display:block; width:100%; margin:3em 0 2em 0 !important; color:#00a096; font-family:'Kosugi Maru',sans-serif !important; font-weight:500; font-size:clamp(2rem, 3vw, 3rem);}
h1.sub:after{position:absolute; content:""; display:block; width:100%; height:1px; background:#ccc; top:50%; z-index:-1 !important;}
h1.sub span.wrap{display:inline-block; padding:0 .5em; background:#fff;}
@media print, screen and (max-width: 500px) {
h1.sub{font-size:17px !important;}
}

.greenbox{background:#ebfaf5 !important; border:0 !important; border-radius:.5em; padding:1.5em; margin:3em 0 0 0;}
.greenbox h2{margin-top:.5em;}
.greenbox ul li{list-style-type:square; font-size:90%;}

ul.points{margin:2em 0 !important; padding:0 !important;}
ul.points li{margin:1em 0 !important; display:flex; align-items:center; gap:1em; border:3px solid #ddd; border-radius:.5em; padding:.5em;}
ul.points li strong{display:block; width:3em; line-height:3; color:#fff; background:#ccc;  text-align:center; padding:0;}
ul.points li div:last-child{font-weight:500;}
ul.points li em{display:block; font-size:85%; color:#666; margin:.5em 0 0 0; font-weight:normal;}
ul.points li a{display:inline-block; color:#00a096; border-bottom:1px solid;}
ul.points.good li strong{background:#78c86e;}
ul.points.bad li strong{background:#e16464;}

.attention{margin:2em 0 0 0 !important; padding:1.5em 1.5em 1em 1.5em !important; border:1px solid #ccc !important; border-radius:.5em !important;}
.attention h3{margin:0 0 .5em 0;}
.attention p{margin:0 !important; padding:0 !important; font-size:85%;}

br.sp{display:none;}
@media print, screen and (max-width: 500px) {
.spl{text-align:left;}
br.sp{display:inherit;}
}

/*a*/
a.btn{
  color:#fff; background:#00a096; display:block; max-width:500px; margin:2em auto 0 auto; border-radius:2em; padding:0 1em; 
  text-align:center; font-size:1.5rem; font-weight: 500; line-height:4em; white-space:nowrap; box-shadow: 0 3px 5px rgba(0,0,0,.2);
  position:relative;}
a.btn:after{content:"→"; position:absolute; right:1.3em; top:1.3em; display:inline-block; color:#00a096; background:#fff; border-radius:2em; width:1.5em; height:1.5em; line-height:1.5em;}
a.btn:hover{background:#00beb4; box-shadow: 0 0 0 rgba(0,0,0,0);}
section .container p > a{border-bottom: 1px solid;}
section .container p > a:hover{opacity:.5;}
@media print, screen and (max-width: 600px) {
a.btn{line-height:3em;}
a.btn:after{top:.7em; right:1em;}
}


.headbtn{display:block; text-align:center; line-height:3; color:#fff; background:#00a096; margin:0 0 .5em 0;}
.headbtn:hover{background:#00beb4;}




/*pollen*/
body.pollen #area-page .inner {width:100%; overflow-x:auto;}
body.pollen #area-page .inner table td{padding:.5em .1em; line-height:1; font-size:clamp(1.1rem, 1.3vw, 1.3rem); white-space:nowrap; text-align:center; letter-spacing:0;}
body.pollen #area-page .inner table tbody > tr:last-child td{background:#edf7f9; font-weight:bold; padding:1em .1em; border-top-width:2px;}
body.pollen #area-page .inner table tbody tr:has(strong){background:#eee;}
body.pollen #area-page .inner table tbody tr > td:nth-child(8),body.pollen #area-page .inner table tbody tr > td:nth-child(16){border:0 !important; background:#fff;}




body.booking2 header{position:inherit !important;}
body.booking2 div.space{display:none;}


figure.plans{/*max-width:500px;*/ margin:0 auto; width:100%;}
figure.plans table{background:#fff;}
figure.plans table td{padding:1em 0 !important; line-height:1; white-space:nowrap; font-weight:normal; font-size:clamp(1.2rem, 1.5vw, 1.5rem) !important;}
figure.plans table td:has(label){padding:0 !important;}
figure.plans table td strong{line-height:1;}
figure.plans table td p{padding:0; margin:0; line-height:1;}
figure.plans table td br.sp{display:none;}
figure.plans table td label{display:block; padding:1em 0; font-weight:normal; font-size:clamp(1.2rem, 1.5vw, 1.5rem) !important; cursor:pointer;}
figure.plans table td label span{display:block; margin-top:.5em;}
figure.plans table tr:nth-child(1) > td{background:#e1f5fa; padding:.5em 0 !important;}
figure.plans table tr:nth-child(2) > td{background:#f1f8f9;}
figure.plans table tr:nth-child(3) > td{padding:.5em 0 !important;}
figure.plans table tr:nth-child(3) > td:nth-child(n+2){font-size:85%; padding:.5em; background:rgba(255,220,220,1);}
figure.plans table tr:nth-child(4) > td{background:rgba(255,220,220,.3);}
figure.plans table tr:nth-child(5) > td{padding:.5em 0 !important;}
figure.plans table tr:nth-child(5) > td:nth-child(n+2){font-size:85%; padding:.5em; background:rgba(255,240,190,1);}
figure.plans table td{background:rgba(255,240,190,.3);}
figure.plans table tr:nth-child(1) > td:nth-child(1),
figure.plans table tr:nth-child(3) > td:nth-child(1),
figure.plans table tr:nth-child(5) > td:nth-child(1),
figure.plans table tr:nth-child(7) > td:nth-child(1),
figure.plans table tr:nth-child(8) > td:nth-child(1),
figure.plans table tr:nth-child(9) > td:nth-child(1)
{background:#f8f8f8;}
figure.plans table td label:has(input[type="radio"]:checked),
figure.plans table td label:hover{background:rgba(255,240,190,.6);}
figure.plans table tr:nth-child(4) td label:has(input[type="radio"]:checked),
figure.plans table tr:nth-child(4) td label:hover{background:rgba(255,220,220,.6);}
@media print, screen and (max-width: 500px) {
figure.plans table td br.sp{display:inherit;}
}


/*wp-parts*/
.wp-block-image{margin:0; padding:0;}
p + .wp-block-image{margin-top:2em;}
.wp-block-image + p{margin-top:2em;}
.wp-block-image figure{padding:0; margin:0; display:block !important; width:100% !important;}
.wp-block-image figure.aligncenter{text-align:center;}
.wp-block-image figure figcaption{font-size:clamp(1.1rem, 1.2vw, 1.2rem); margin:.2em 0 0 0;}
.wp-block-image.size-full img {display: block !important; width: 100% !important; height: auto !important;}





.form-step h3{border:0 !important; color:#00a096; font-size:clamp(1.4rem, 1.5vw, 1.5rem) !important;}
.form-step h3.req:before{content:"必須" !important; display:inline-block !important;}
