@charset "UTF-8";
:root{--ink:#333;--muted:#70777b;--blue:#278cc5;--blue-dark:#126b9d;--sky:#eaf6fb;--green:#9ccf67;--line:#d8e1e5;--paper:#fff;--soft:#f5f9fa;--width:1000px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.8}img{display:block;max-width:100%;height:auto}a{color:var(--blue-dark);text-underline-offset:3px}a:hover{color:#e48342}p{margin:.65em 0 1em}.wrap{width:min(var(--width),calc(100% - 40px));margin-inline:auto}.preview-note{display:flex;justify-content:center;gap:16px;align-items:center;padding:8px 20px;background:#fff8db;color:#5f512a;font-size:12px;border-bottom:1px solid #eadfae}.preview-note strong{white-space:nowrap;color:#9a6815}.site-header{background:#fff}.header-inner{width:min(var(--width),calc(100% - 40px));height:106px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:block;flex:0 0 200px}.brand img{width:200px}.contact-banner{display:block;margin-left:auto}.contact-banner img{width:min(468px,100%)}.phone{display:flex;flex-direction:column;text-align:right;text-decoration:none;color:#154e67;line-height:1.25}.phone span{font-size:12px;color:var(--muted)}.phone strong{font-family:Georgia,serif;font-size:28px;letter-spacing:.02em}.site-nav{background:#177cae;border-top:4px solid #b1d66c}.nav-inner{width:min(var(--width),calc(100% - 40px));margin:auto;display:flex;align-items:stretch;justify-content:space-between}.nav-link{flex:1;text-align:center;color:#fff;text-decoration:none;padding:12px 8px;font-size:14px;border-right:1px solid rgba(255,255,255,.2);white-space:nowrap}.nav-link:first-child{border-left:1px solid rgba(255,255,255,.2)}.nav-link:hover,.nav-link.is-active{background:#fff;color:#176f9b}.menu-toggle{display:none}.breadcrumbs{width:min(var(--width),calc(100% - 40px));margin:20px auto 16px;color:#7b8488;font-size:12px}.breadcrumbs a{color:inherit}.breadcrumbs span{margin:0 8px}.cover{position:relative;overflow:hidden;max-height:480px;background:#f6fbfd}.cover>img{width:100%;height:auto;max-height:480px;object-fit:cover;object-position:center 40%}.cover-caption{position:absolute;left:max(calc((100% - var(--width))/2),24px);bottom:32px;padding:15px 22px;background:rgba(255,255,255,.9);color:#365f70;font-size:14px;line-height:1.5}.cover-caption strong{font-family:serif;font-size:24px}.hero{display:grid;grid-template-columns:.92fr 1.08fr;align-items:center;gap:42px;padding-top:56px;padding-bottom:62px}.hero-copy h1{margin:5px 0 14px;font-size:clamp(30px,4vw,44px);line-height:1.45;font-weight:500;color:#3c545f}.hero-copy h1 em{color:var(--blue);font-style:normal}.eyebrow{margin:0 0 6px;color:#68a6c2;font-size:11px;font-weight:700;letter-spacing:.16em}.hero-lead{color:#565f63;line-height:2}.hero-photo{width:100%;border-radius:4px;box-shadow:0 12px 30px rgba(29,79,103,.1)}.button{display:inline-flex;align-items:center;gap:20px;padding:10px 17px;border:1px solid var(--blue);border-radius:2px;background:#fff;color:var(--blue-dark);font-size:14px;text-decoration:none;transition:.18s}.button:hover{background:var(--blue);color:#fff}.button span{font-size:20px;line-height:1}.section{padding:66px 0}.pale{background:var(--soft)}.section-title{text-align:center;margin:0 auto 34px}.section-title>span{display:block;color:#78abc0;font-size:11px;letter-spacing:.2em;font-weight:700}.section-title h2{margin:3px 0 2px;font-size:30px;font-weight:500;color:#435d68}.section-title small{font-size:13px;color:#777}.treatment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.treatment-card{display:flex;align-items:center;gap:11px;padding:14px 15px;min-height:72px;border:1px solid var(--line);background:#fff;text-decoration:none;color:#3d555f;transition:.18s}.treatment-card:hover{border-color:#71b6d4;transform:translateY(-2px);box-shadow:0 8px 16px rgba(30,100,130,.08)}.card-dot{color:#7dbb5e;font-size:18px}.treatment-card strong,.treatment-card small{display:block}.treatment-card strong{font-size:15px}.treatment-card small{font-size:10px;color:#899398;letter-spacing:.08em}.treatment-card>b{margin-left:auto;color:var(--blue);font-size:24px;font-weight:400}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.feature-grid article{background:#fff;border:1px solid #e0e7e9;padding:0 0 18px}.feature-grid img{width:100%;height:190px;object-fit:cover}.feature-grid h3,.feature-grid p{margin-inline:18px}.feature-grid h3{margin-top:16px;margin-bottom:6px;font-size:18px;color:#49616b}.feature-grid p{font-size:14px;color:#646d71}.center{text-align:center;margin-top:25px}.symptom-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.symptom-card{border:1px solid #dfe5e7;background:#fff;text-align:center;text-decoration:none;color:#43565e;padding:8px;transition:.18s}.symptom-card:hover{border-color:#76bad5;transform:translateY(-2px)}.symptom-card img{width:100%;aspect-ratio:1.45;object-fit:contain}.symptom-card span{display:block;font-size:13px;font-weight:700;padding:5px}.table-scroll{overflow:auto}.hours{width:100%;border-collapse:collapse;background:#fff;font-size:14px}.hours th,.hours td{padding:11px 10px;border:1px solid #d5e0e4;text-align:center;white-space:nowrap}.hours thead th{background:#e9f4f8;color:#3d6574}.hours tbody th{text-align:left;font-weight:500}.hours td{color:#74ad4c}.hours-layout{display:grid;grid-template-columns:1.5fr .7fr;gap:26px;align-items:start}.hours-note{padding:22px;background:#fff;border-left:3px solid var(--green)}.hours-note strong{font-size:17px}.hours-note p{font-size:14px}.access-card{display:grid;grid-template-columns:1fr .9fr;gap:30px;padding:30px;background:#f6fafb;border:1px solid var(--line)}.access-card h3{font-size:24px;font-weight:500;margin:4px 0 12px}.map-panel{min-height:250px;background:linear-gradient(135deg,#e2f1e2,#eff6f6 52%,#dceef4);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#467081;border:1px solid #d0e3e6}.map-panel span{font-size:12px}.map-panel strong{font-size:30px;font-family:serif}.map-panel small{font-size:13px}.contact-strip{background:#e8f4f8;border-block:1px solid #d5e8ee;padding:34px 0}.contact-strip-inner{display:flex;justify-content:space-between;align-items:center;gap:30px}.contact-strip h2{margin:0;font-size:26px;font-weight:500;color:#3f606e}.contact-strip p{margin:.2em 0}.phone-cta{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:265px;padding:14px 22px;background:#fff;border:1px solid #bddce6;text-decoration:none;color:#176d94}.phone-cta span{font-size:12px}.phone-cta strong{font:28px Georgia,serif}.site-footer{background:#f0f4f5;border-top:1px solid #d5e0e3;padding:40px 0 0}.footer-inner{width:min(var(--width),calc(100% - 40px));margin:auto;display:grid;grid-template-columns:.8fr 1.2fr;gap:44px}.footer-inner h2{margin:0 0 10px;font-size:18px;font-weight:500}.footer-brand{font-size:22px;color:#306981;text-decoration:none;font-weight:700}.footer-inner p{font-size:14px}.footer-bottom{text-align:center;padding:14px;margin-top:30px;border-top:1px solid #dce5e7;color:#7c868a;font-size:11px}.small{font-size:11px;color:#6b777b}.to-top{position:fixed;right:22px;bottom:20px;width:42px;height:42px;background:#177cae;color:#fff;text-align:center;line-height:42px;text-decoration:none;border-radius:50%;box-shadow:0 5px 15px rgba(0,0,0,.15)}.page-head{padding:44px 0;background:linear-gradient(120deg,#edf7fa,#f7fbfc);border-bottom:1px solid #dfebef}.page-head .eyebrow{margin-bottom:3px}.page-head h1{margin:0;color:#385b69;font-size:34px;font-weight:500}.page-head p:last-child{margin:.4em 0 0;color:#596c73}.article{display:grid;grid-template-columns:1.1fr .9fr;gap:44px;padding-top:55px;padding-bottom:65px;align-items:center}.article-intro h2{margin:0 0 18px;padding-left:15px;border-left:3px solid var(--green);font-size:25px;font-weight:500;color:#41616f;line-height:1.55}.article-intro p{color:#59656a;line-height:2}.article-aside img{width:100%;max-height:360px;object-fit:cover}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px}.about-grid h2{font-size:22px;color:#45616c;font-weight:500;border-bottom:1px solid var(--line);padding-bottom:8px}.about-grid p{line-height:2;color:#5b686d}.about-photos{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:center}.about-photos img{width:100%;height:210px;object-fit:cover}.contact-options{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-options article{padding:30px;background:#fff;border:1px solid var(--line);text-align:center}.contact-options h2{font-size:20px;font-weight:500;color:#45616c}.contact-options p{font-size:14px;color:#697579}.contact-icon{display:inline-grid;place-items:center;width:55px;height:55px;border-radius:50%;background:#eaf6fb;color:#237da7;font-size:12px;font-weight:700}.phone-large{font:28px Georgia,serif;color:#176d94}.notice-card{max-width:760px;margin:auto;padding:24px 28px;border:1px solid #eadfae;background:#fffdf3;color:#5b563f}.notice-card strong{color:#7d631c}.notice-card p{margin-bottom:0}
@media(max-width:760px){.preview-note{display:block;text-align:center;padding:9px 14px}.preview-note span{display:block;margin-top:3px}.header-inner{height:auto;padding:13px 0;gap:10px;flex-wrap:wrap}.brand{flex:0 0 145px}.brand img{width:145px}.contact-banner{max-width:55%;margin-left:auto}.phone{flex-basis:100%;text-align:center;padding:8px;border-top:1px solid #e6edef}.phone strong{font-size:24px}.menu-toggle{display:flex;width:100%;align-items:center;justify-content:space-between;padding:10px 20px;border:0;background:#176f9b;color:#fff;font:inherit}.site-nav{display:none}.site-nav.is-open{display:block}.nav-inner{width:100%;display:grid;grid-template-columns:1fr 1fr}.nav-link{border:0;border-bottom:1px solid rgba(255,255,255,.2);padding:10px 4px;font-size:13px}.breadcrumbs{margin-top:14px}.cover>img{height:220px;object-fit:cover}.cover-caption{left:16px;bottom:14px;padding:9px 12px;font-size:11px}.cover-caption strong{font-size:19px}.wrap{width:calc(100% - 30px)}.hero{grid-template-columns:1fr;gap:22px;padding-top:32px;padding-bottom:40px}.hero-copy h1{font-size:32px}.hero-photo{max-height:330px;object-fit:cover}.section{padding:45px 0}.section-title{margin-bottom:25px}.section-title h2{font-size:25px}.treatment-grid{grid-template-columns:1fr 1fr;gap:8px}.treatment-card{padding:10px;min-height:65px;gap:7px}.treatment-card strong{font-size:13px}.treatment-card small{font-size:9px}.feature-grid{grid-template-columns:1fr;gap:14px}.feature-grid img{height:210px}.symptom-grid{grid-template-columns:1fr 1fr;gap:9px}.symptom-card span{font-size:12px}.hours-layout,.access-card,.article,.about-grid,.contact-options,.footer-inner{grid-template-columns:1fr}.hours-layout{gap:15px}.access-card{padding:20px}.map-panel{min-height:190px}.contact-strip-inner{display:block;text-align:center}.phone-cta{width:100%;margin-top:18px}.page-head{padding:30px 0}.page-head h1{font-size:28px}.article{gap:22px;padding:35px 0 45px}.article-intro h2{font-size:21px}.article-aside img{max-height:240px}.about-photos img{height:150px}.footer-inner{gap:20px}.footer-inner .hours{font-size:12px}.footer-inner .hours th,.footer-inner .hours td{padding:7px 5px}.to-top{right:12px;bottom:12px}}

.access-photo{margin:0;background:#fff;border:1px solid var(--line);padding:8px}.access-photo img{width:100%;max-height:340px;object-fit:cover}.access-photo figcaption,.image-note{font-size:12px;color:var(--muted)}.access-photo figcaption{padding:6px 4px 0}.about-photos{grid-template-columns:1fr 1fr}.about-photos img{width:100%;height:210px;object-fit:cover;border:1px solid var(--line);padding:5px;background:#fff}
@media(max-width:760px){.access-photo img{max-height:260px}.about-photos img{height:150px}}
.symptom-image{display:block;position:relative;aspect-ratio:1.45;overflow:hidden}.symptom-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .18s ease}.symptom-image img.symptom-hover{opacity:0}.symptom-card:hover .symptom-image img.symptom-hover,.symptom-card:focus-visible .symptom-image img.symptom-hover{opacity:1}.symptom-card:hover .symptom-image img:first-child,.symptom-card:focus-visible .symptom-image img:first-child{opacity:0}
/* 下層診療ページの相談メモ */
.consult-section{background:#f6fafb;border-top:1px solid #e2ecef;border-bottom:1px solid #e2ecef}.consult-heading{max-width:760px;margin:0 auto 26px;text-align:center}.consult-heading h2{margin:2px 0 8px;color:#405f6c;font-size:26px;font-weight:500}.consult-heading>p:last-child{font-size:14px;color:#657278}.consult-list{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:980px;margin:0 auto 22px;padding:0;list-style:none}.consult-list li{display:flex;align-items:center;gap:12px;min-height:78px;padding:16px;background:#fff;border:1px solid #dce8eb;color:#425b65;font-size:14px}.consult-list li span{flex:0 0 32px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:#e9f5f8;color:#3180a2;font:12px Georgia,serif}.consult-caution{max-width:980px;margin:auto;padding:18px 22px;background:#fff;border-left:3px solid #83b86d}.consult-caution strong{color:#45656e;font-size:15px}.consult-caution p{margin:.4em 0 0;color:#657278;font-size:13px;line-height:1.9}
@media(max-width:760px){.consult-heading h2{font-size:22px}.consult-list{grid-template-columns:1fr;gap:8px}.consult-list li{min-height:unset;padding:12px}}

.email-cta{display:flex;align-items:center;gap:9px;flex:0 0 auto;padding:8px 12px;border:1px solid #d6e8ef;border-radius:3px;background:#f5fbfd;color:#176f9b;text-decoration:none;line-height:1.25;white-space:nowrap}.email-cta:hover{border-color:#77bad5;background:#eaf6fb;color:#145f83}.email-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#83c6e4;color:#fff;font-size:18px}.email-cta-copy{display:flex;flex-direction:column;text-align:left}.email-cta-copy small{font-size:10px;color:#697d86}.email-cta-copy strong{font-size:15px}.contact-options .mailto-button{margin:4px 0 10px}.mail-address{font-size:13px;overflow-wrap:anywhere}.contact-options .mail-privacy{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--line);font-size:12px;line-height:1.8;text-align:left;color:#66777d}
@media(max-width:760px){.email-cta{margin-left:auto;padding:6px 9px}.email-icon{width:30px;height:30px}.email-cta-copy small{font-size:9px}.email-cta-copy strong{font-size:13px}}

