/* Additions to the supplied natural-flow subpage template. Original CSS is kept intact. */
body{overflow-wrap:anywhere}main:focus{outline:none}.logo small{display:block;color:var(--brand);font-size:10px;line-height:1.5;margin-top:3px;letter-spacing:.4px}.phone .pending-phone{font:500 23px/1.4 'Noto Sans JP',sans-serif;letter-spacing:1.5px}.breadcrumbs{padding-top:22px;font-size:12px;color:#6a6161}.breadcrumbs ol{display:flex;flex-wrap:wrap;gap:8px 14px;list-style:none;padding:0}.breadcrumbs li+li:before{content:'›';margin-right:14px}.breadcrumbs a:hover{text-decoration:underline}.page-title{padding-top:106px}.source-section+.source-section{margin-top:120px}.source-section>.copy{margin-top:24px}.source-section .copy+.copy{margin-top:20px}.source-section .h2-bar{scroll-margin-top:24px}.source-section .detail-block{margin-top:32px}.source-section .detail-block>.copy{margin-top:20px}.source-figure{margin:0;min-width:0}.source-figure img{width:100%;height:auto;border-radius:16px;display:block}.section-intro{display:grid;grid-template-columns:minmax(0,620fr) minmax(0,420fr);gap:60px;margin-top:40px;align-items:start}.section-intro .source-figure{grid-column:2;grid-row:1}.section-intro .intro-body{grid-column:1;grid-row:1;min-width:0}.intro-body>.heading-block{margin-top:0}.intro-body>.copy{margin-top:0}.clinical-note{font-size:14px;color:#5d3a3a;padding:18px 22px;border-left:3px solid var(--brand);background:#faf5f2;border-radius:0 8px 8px 0}.source-section .bullet-list,.source-section .number-list{margin-top:10px}.steps h4,.steps h5{font-size:22px;font-weight:500;line-height:1.8;letter-spacing:1.32px;margin-bottom:18px}.steps h4:before,.steps h5:before{content:counter(steps);display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--brand);color:white;font:26px/1 'Shippori Mincho B1',serif;margin-right:10px;vertical-align:middle}.related-pages{margin-top:80px}.related-pages nav{display:flex;flex-wrap:wrap;gap:16px 30px;margin-top:24px}.related-pages a{border-bottom:1px solid var(--brand);padding:8px 0;line-height:1.8}.related-pages a:after{content:' ↗';color:var(--brand)}.treatment-grid{grid-template-columns:repeat(3,minmax(0,180px));justify-content:center}.treatment-card:hover{background:#ead6c5}.all-treatments{justify-content:center;margin-top:40px}.clinic-information .line-heading{margin-top:24px;font-size:20px}.clinic-information address{white-space:normal}.clinic-information>.phone small{font-size:12px;letter-spacing:.4px}.clinic-information>.hours{min-height:0;padding:20px}.hours p{margin:0}.clinic-pending{align-self:center;background:#f8f4f1;padding:40px;border-radius:20px}.clinic-pending h3{font-family:'Shippori Mincho B1',serif;color:var(--brand);font-size:28px;font-weight:500;line-height:1.6;margin-top:24px}.clinic-pending .copy{margin-top:24px}.clinic-pending .detail{height:auto;line-height:1.8;gap:8px}.clinic-pending .detail span{flex:none}.footer-inner{padding-bottom:65px}.footer-treatments{grid-template-rows:repeat(5,auto);font-size:14px;gap:12px 30px}.footer-treatments a{line-height:1.8}.copyright{top:auto;bottom:0}.bottom-contact button{min-height:60px}.site-footer a:hover{text-decoration:underline}#site-menu{width:600px;max-height:90dvh;overflow:auto}#site-menu h2{font-family:'Shippori Mincho B1',serif;color:var(--brand);font-size:28px}#site-menu nav a{line-height:1.8}#confirmation-dialog{max-height:90dvh;overflow:auto}#confirmation-dialog h2{font-size:24px;color:var(--brand)}#confirmation-dialog .close{border:1px solid var(--brand);border-radius:30px;padding:8px 24px;font-size:18px}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #187783;outline-offset:5px}dialog .close{min-height:44px;min-width:44px}
.reserve .reserve-label{margin:0;font:inherit;letter-spacing:inherit;white-space:nowrap}.reserve .reserve-label em{margin-right:0}.reserve>img{flex:none}.reserve .reserve-arrow{flex:none}.treatment-card{text-align:center}
@media(min-width:768px) and (max-width:1250px){.section-intro{gap:35px}.header-contact .reserve{font-size:17px;letter-spacing:1px;gap:8px}.header-contact .reserve img{width:38px}.header-contact .reserve em{font-size:23px}.header-contact .reserve-arrow{font-size:28px;margin-left:4px}}
@media(max-width:767px){.logo small{font-size:8px;letter-spacing:0}.site-header{height:80px}.breadcrumbs{padding-top:14px;font-size:10px;line-height:1.8}.breadcrumbs ol{gap:4px 8px}.breadcrumbs li+li:before{margin-right:8px}.page-title{padding-top:45px;padding-bottom:40px}.page-title h1{line-height:1.3}.source-section+.source-section{margin-top:72px}.source-section>.copy{margin-top:20px}.section-intro{display:flex;flex-direction:column;gap:24px;margin-top:24px}.section-intro .source-figure{width:100%}.source-figure img{border-radius:12px}.source-section .detail-block{margin-top:28px}.source-section .detail-block>.copy{margin-top:18px}.clinical-note{font-size:13px;padding:16px;line-height:2}.steps h4,.steps h5{font-size:18px;line-height:1.8;letter-spacing:1.08px;margin-bottom:8px}.steps h4:before,.steps h5:before{width:36px;height:36px;font-size:22px}.related-pages{margin-top:60px}.related-pages nav{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.related-pages a{font-size:14px}.treatment-grid{grid-template-columns:repeat(3,minmax(0,100px))}.all-treatments{font-size:13px;padding-inline:16px}.access{margin-top:120px}.clinic-pending{padding:24px;border-radius:16px}.clinic-pending h3{font-size:23px}.clinic-pending .detail{font-size:13px}.clinic-pending .detail span{width:48px;font-size:30px}.clinic-information .logo{display:block}.clinic-information>img{width:280px;height:auto}.footer-inner{padding-bottom:70px}.site-footer{min-height:0;padding-bottom:30px}.footer-inner nav{font-size:12px;gap:14px}.footer-treatments{gap:10px!important}.footer-treatments a{font-size:11px}.footer-treatments>p{font-size:13px}.copyright{font-size:10px;white-space:normal;line-height:1.8}.footer-mark{top:auto;bottom:70px;width:100px}#site-menu{width:calc(100% - 32px);max-width:520px;padding:24px}#site-menu nav{gap:18px 20px;padding-bottom:30px}#site-menu nav a{font-size:14px}#site-menu .reserve{font-size:16px;letter-spacing:1px}#site-menu .reserve em{font-size:23px}#site-menu .reserve>span{margin-left:0;font-size:24px}#confirmation-dialog{padding:24px}#confirmation-dialog h2{font-size:20px}}
@media(max-width:359px){.treatment-grid{gap:12px}.footer-inner{gap:24px}.footer-inner nav{font-size:11px}.footer-treatments a{font-size:10px}.clinical-note{padding:14px}.h2-bar{font-size:20px}.clinic-pending{padding:20px}.clinic-pending .detail{display:block}.clinic-pending .detail span{display:inline-flex;vertical-align:middle}.clinic-information>.reserve{font-size:16px;letter-spacing:1px}.clinic-information>.reserve em{font-size:23px}.clinic-information>.reserve>span{margin-left:0;font-size:24px}}
@media(max-width:767px){#site-menu .reserve{font-size:15px;letter-spacing:.6px;gap:6px;padding-inline:6px}#site-menu .reserve em{font-size:20px}#site-menu .reserve img{width:32px}#site-menu .reserve .reserve-label,.clinic-information .reserve .reserve-label{font-size:inherit;margin-left:0}#site-menu .reserve .reserve-arrow{margin-left:0;font-size:24px}}
