:root{--ink:#284447;--teal:#287d80;--pale:#edf4f2;--line:#d8e3df;--muted:#587071}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;line-height:1.9;font-size:15px}a{color:inherit;text-underline-offset:5px}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:500}h1,h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;letter-spacing:.08em;line-height:1.6}h2{font-size:32px}h3{font-size:20px}p{margin-bottom:20px}.wrap{width:min(1200px,calc(100% - 96px));margin:auto}.reading{max-width:900px}.section{padding-top:100px;padding-bottom:100px}.eyebrow{display:block;font-size:11px;letter-spacing:.2em;color:var(--teal);font-weight:600;margin-bottom:22px}.small{font-size:13px;color:var(--muted)}header{background:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #edf1ef}.header-inner{display:flex;align-items:center;justify-content:space-between;width:calc(100% - 64px);max-width:1500px;margin:auto;min-height:98px}.brand img{width:240px;height:85px;object-fit:contain}nav{display:flex;gap:23px;align-items:center}nav a{text-decoration:none;font-size:13px;white-space:nowrap}nav a[aria-current]{color:var(--teal);border-bottom:1px solid var(--teal)}.nav-phone{background:var(--teal);color:white;padding:12px 20px;border-radius:3px}.menu{display:none}.hero{max-width:1600px;margin:auto;position:relative;display:grid;grid-template-columns:44% 56%;padding:30px 32px 60px 6%;min-height:710px}.hero-copy{padding:32px 0 20px;z-index:1}.hero-copy h1{font-size:clamp(40px,4.2vw,66px);line-height:1.4;margin-bottom:30px;letter-spacing:.09em}.hero-copy em{font-style:normal;color:var(--teal)}.hero-location{font-size:13px;margin-top:-5px}.hero-copy>p:not(.hero-location){line-height:2.1;color:var(--muted)}.hero-image{position:relative;min-width:0}.hero-image>img{width:100%;height:100%;max-height:625px;border-radius:130px 4px 4px 4px}.photo-label{position:absolute;bottom:28px;right:20px;color:#fff;background:#284447c9;padding:6px 16px;font-size:12px;letter-spacing:.08em}.hero-number{position:absolute;bottom:20px;right:35px;font-size:10px;letter-spacing:.15em;color:var(--muted)}.button{display:inline-flex;align-items:center;gap:40px;background:var(--teal);color:#fff;text-decoration:none;padding:15px 24px;border-radius:3px;font-size:14px}.button:hover,.nav-phone:hover{background:#1c6164}.notice{display:flex;gap:30px;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0;font-size:14px}.notice>span{color:var(--teal);border-right:1px solid var(--line);padding-right:30px;white-space:nowrap}.notice p{margin:0}.notice a{margin-left:auto;font-size:12px}.section-heading{margin-bottom:45px}.section-heading h2{font-size:36px}.section-heading p{color:var(--muted)}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.features img{width:100%;height:250px;border-radius:5px}.feature-copy{padding-top:24px}.number{font-family:Georgia,serif;font-size:18px;color:var(--teal);display:block;margin-bottom:7px}.feature-copy p{color:var(--muted);font-size:14px}.treatments{background:var(--pale)}.treatment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:30px}.treatment-grid>a{padding:34px;background:#fff;text-decoration:none;border-radius:5px;position:relative;border-bottom:3px solid #b3ccc6;transition:transform .2s}.treatment-grid>a:hover{transform:translateY(-4px)}.category{font-size:10px;letter-spacing:.1em;color:var(--teal)}.treatment-grid h3{font-family:'Yu Mincho',serif;font-size:26px;margin:18px 0}.treatment-grid p{font-size:13px;padding-bottom:20px}.arrow{position:absolute;bottom:20px;right:26px;color:var(--teal)}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split img{width:100%;height:380px;border-radius:5px}.split p{color:var(--muted)}.text-link{display:inline-block;padding:12px 0;border-bottom:1px solid var(--teal);text-decoration:none}.contact{background:var(--pale);border-radius:6px;padding:48px;display:flex;justify-content:space-between;align-items:center;margin-top:70px;margin-bottom:70px;gap:25px}.contact h2{font-size:24px;margin-bottom:10px}.contact p{font-size:13px;margin:0}.contact .eyebrow{margin-bottom:12px}.phone{color:var(--teal);font-size:28px;white-space:nowrap;text-decoration:none;letter-spacing:.04em}.phone small{display:block;font-size:11px;letter-spacing:0}footer{display:flex;justify-content:space-between;padding-bottom:36px;font-size:12px;color:var(--muted)}footer strong{font-size:19px;color:var(--ink)}.page-intro{padding-top:65px;padding-bottom:60px;border-bottom:1px solid var(--line);margin-bottom:55px}.page-intro h1{font-size:46px;margin-bottom:20px}.page-intro p{color:var(--muted);margin-bottom:0}.lead{font-size:18px;margin-bottom:45px}.text-section{padding:30px 0 45px;border-bottom:1px solid var(--line);margin-bottom:25px}.text-section h3{margin-top:24px}.risk-box,.callout{background:var(--pale);padding:30px;border-radius:5px;margin-top:40px;margin-bottom:40px}.risk-box h2,.callout h2{font-size:25px}.ref{color:var(--teal);font-size:12px;margin:0 4px}.steps article{display:grid;grid-template-columns:70px 1fr;gap:24px;padding:28px 0;border-bottom:1px solid var(--line)}.steps h2{font-size:26px}.step-number{font:36px Georgia,serif;color:var(--teal);padding-top:6px}.steps p{margin:0}.table-scroll{overflow-x:auto;margin:25px 0}table{border-collapse:collapse;width:100%;font-size:14px;min-width:440px}th,td{text-align:left;padding:17px 18px;border-bottom:1px solid var(--line);vertical-align:top}th{font-weight:500}thead{background:var(--pale)}tbody th{width:37%}.reading>h2{margin-top:50px;font-size:28px}.doctor{margin-bottom:60px}.doctor h2 small{font:14px -apple-system,sans-serif;display:block;letter-spacing:0}.calendar-block{margin:60px 0}.calendar-controls{display:flex;align-items:center;justify-content:space-between;max-width:600px;margin:auto}.calendar-controls h3{margin:0}.calendar-controls button{width:44px;height:44px;border:1px solid var(--line);background:white;color:var(--teal);font-size:20px;cursor:pointer}.calendar-controls button:disabled{opacity:.3;cursor:default}.calendar-table{max-width:600px;min-width:0;margin:20px auto;table-layout:fixed;text-align:center}.calendar-table th,.calendar-table td{text-align:center;padding:8px 0;height:64px;border:1px solid var(--line)}.calendar-table th{height:auto;width:auto;font-size:12px}.calendar-table small{display:block;font-size:9px;line-height:1.3}.calendar-table .ortho{background:var(--teal);color:#fff;font-weight:bold}.calendar-table .closed{background:#f3f4f3;color:#879290}.legend{font-size:12px;text-align:center}.legend span{display:inline-block;width:12px;height:12px;background:var(--teal);margin-right:7px}.source-list{padding-left:22px}.source-list li{margin-bottom:30px}.skip{position:absolute;left:-9999px}.skip:focus{left:15px;top:10px;z-index:99;background:white;padding:10px}a:focus-visible,button:focus-visible{outline:3px solid #dcad54;outline-offset:4px}.mobile-call{display:none}@media(min-width:1600px){.hero{padding-left:90px}}@media(max-width:1100px){nav{gap:14px}.brand img{width:190px}.header-inner{width:calc(100% - 40px)}nav a{font-size:12px}.hero{min-height:620px}.hero-image>img{max-height:570px}.contact{display:block}.phone{display:block;margin-top:20px}}@media(max-width:800px){body{font-size:14px}.wrap{width:calc(100% - 40px)}header .header-inner{min-height:76px}.brand img{width:180px;height:68px}.menu{display:block;border:0;background:var(--pale);padding:9px 12px;color:var(--ink);font-size:12px}nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:20px;box-shadow:0 12px 20px #28444710}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}nav a{padding:12px;font-size:14px}nav a[aria-current]{border:0;background:var(--pale)}.hero{display:flex;flex-direction:column;padding:24px 20px 40px;min-height:0}.hero-copy{padding:10px 5px 28px}.hero-copy h1{font-size:43px}.hero .eyebrow{font-size:9px;letter-spacing:.13em;margin-bottom:15px}.hero-copy>p:not(.hero-location){font-size:14px}.hero-image{height:320px}.hero-image>img{height:100%;border-radius:70px 3px 3px 3px}.hero-number{bottom:8px;font-size:9px}.photo-label{font-size:10px;bottom:16px;right:12px}.notice{flex-wrap:wrap;gap:8px 15px;padding:18px 0;font-size:12px}.notice>span{padding-right:15px}.notice a{margin-left:0;width:100%;padding-left:0}.section{padding-top:60px;padding-bottom:60px}.section-heading h2{font-size:27px}.section-heading{margin-bottom:30px}.features,.treatment-grid,.split{grid-template-columns:1fr;gap:30px}.features img{height:260px}.feature-copy{padding-top:17px}.features h3{margin-bottom:10px}.treatment-grid>a{padding:25px}.treatment-grid p{padding:0;margin-bottom:20px}.split img{height:300px}.split h2{font-size:28px}.contact{padding:28px 24px;margin-top:40px;margin-bottom:40px}.contact h2{font-size:23px}.phone{font-size:26px}footer{display:block;padding-bottom:90px}.mobile-call{display:block;position:fixed;bottom:0;left:0;right:0;background:var(--teal);color:white;text-align:center;padding:14px;z-index:20;text-decoration:none;font-size:14px}.page-intro{padding-top:40px;padding-bottom:35px;margin-bottom:35px}.page-intro h1{font-size:33px}.reading>h2,.text-section h2{font-size:25px}.lead{font-size:16px}.risk-box,.callout{padding:24px}.steps article{grid-template-columns:40px 1fr;gap:16px}.steps h2{font-size:23px}.step-number{font-size:29px}th,td{padding:13px 10px}.calendar-table td{height:58px}.calendar-table th{padding:8px 0}.calendar-table small{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Readable Japanese line breaks across pages. */
body{line-break:strict;word-break:normal;overflow-wrap:normal}
p,li,td,th,.text-section>div{ text-wrap:pretty;word-break:auto-phrase }
h1,h2,h3{text-wrap:balance;word-break:auto-phrase}
.keep-word{display:inline-block;text-indent:0}
.access-map{display:block;width:100%;height:420px;border:0;border-radius:5px;margin:24px 0}
@media(max-width:800px){.section-heading h2{font-size:clamp(23px,6.3vw,27px)}.contact h2{font-size:22px}.access-map{height:340px}.eyebrow{letter-spacing:.13em}.table-scroll{overscroll-behavior-inline:contain}}

/* Let compact feature copy flow naturally instead of phrase-sized steps. */
.feature-copy p{word-break:normal;line-break:strict;text-wrap:pretty;text-align:left}
.feature-copy p .keep-word{display:inline}
.contact .consultation-note{font-size:15px;margin-bottom:10px;color:var(--teal)}
.contact p.small{font-size:12px;margin-top:8px}
