:root{--green:#315a40;--deep:#284936;--ink:#303c32;--muted:#647064;--line:#dce4d9;--paper:#fff;--wash:#f4f7f0;--pink:#bd456f;--pink-hover:#a6385e;--soft-green:#87b892;--white:#fff;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}*{box-sizing:border-box}html{scroll-padding-top:120px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);font-size:16px;line-height:1.95;overflow-wrap:anywhere}a{color:inherit;text-decoration:none}button{font:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--pink);outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500;color:var(--green)}p+p{margin-top:1.1em}h1,h2{font-family:var(--serif);letter-spacing:.035em}h1{font-size:2.5rem;line-height:1.6}h2{font-size:2rem;line-height:1.65}h3{font-size:1.2rem;line-height:1.7}small,.small{font-size:.875rem}.wrap{width:min(1120px,calc(100% - 64px));margin-inline:auto}.narrow{max-width:760px;margin-inline:auto}.section{padding-block:96px}.white{background:var(--white)}.wash{background:var(--wash)}.kicker{font-size:.875rem;color:var(--green);letter-spacing:.14em;margin-bottom:18px;display:flex;align-items:center;gap:12px}.kicker:before{content:"";width:26px;height:2px;background:var(--pink);flex-shrink:0}.intro{margin-top:24px;max-width:640px}.muted{color:var(--muted)}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:48px;padding:10px 0;border-bottom:1px solid var(--green);color:var(--green);font-weight:500}.text-link:hover{color:#8b475f;border-color:var(--pink)}.arrow{font-family:var(--sans);font-size:1.2rem;font-weight:400}.action{min-height:58px;display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;line-height:1.6;background:var(--green);color:white;border:1px solid var(--green);font-size:1rem;text-align:center;cursor:pointer}.action.outline{background:transparent;color:var(--green)}.action:hover{background:var(--deep);color:white}.action:disabled{cursor:not-allowed;opacity:.58}.action-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}.preview-note{padding:5px 20px;text-align:center;background:#e8ede6;color:#4d5e54;font-size:.8125rem;letter-spacing:.05em}.header{background:rgba(255,255,255,.98);position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.header-main{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:92px}.brand{display:block;line-height:1.5;color:var(--green)}.brand-name{font-family:var(--serif);font-size:1.4rem;letter-spacing:.025em}.brand-sub{font-size:.8125rem;color:var(--muted);letter-spacing:.14em;margin-top:6px;display:block}.brand-name:after{content:"";display:inline-block;vertical-align:middle;width:5px;height:5px;background:var(--pink);margin-left:10px}.header-contact{display:flex;gap:20px;font-size:.875rem}.header-contact a{border-bottom:1px solid var(--line);padding-block:8px}.desktop-nav{display:flex;justify-content:space-between;gap:12px;padding:13px 0 16px;font-size:.875rem}.desktop-nav a{position:relative}.desktop-nav a[aria-current=page]:after{content:"";height:2px;background:var(--pink);position:absolute;bottom:-17px;left:0;right:0}.menu-button{display:none;border:0;background:none;color:var(--green);min-width:52px;min-height:56px;padding:8px;line-height:1.4;font-size:.75rem}.menu-lines{width:25px;display:block;margin:0 auto 7px;height:10px;border-top:1px solid;border-bottom:1px solid}.mobile-nav{border-top:1px solid var(--line);max-height:calc(100dvh - 90px);overflow:auto;padding:8px 24px 24px;background:var(--paper)}.mobile-nav a{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line)}.mobile-nav .subnav{padding-left:20px;font-size:.9375rem}.mobile-nav[hidden]{display:none}.hero{padding:48px 0 64px}.hero-grid{display:grid;grid-template-columns:.95fr 1.2fr;align-items:center;gap:56px}.hero h1{font-size:2.55rem;line-height:1.8}.hero-location{font-size:.875rem;letter-spacing:.16em;color:var(--muted);margin-bottom:22px}.hero-photo{aspect-ratio:5/4}.photo{background:#e6ebe4;position:relative;margin:0;min-width:0;overflow:hidden}.photo-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;height:100%;min-height:160px;padding:26px;color:#5c6e61;border:1px solid #d1d9cf;text-align:center}.photo-placeholder:before{content:"";width:40px;height:24px;border:1px solid #9aa89a;display:block;margin-bottom:6px}.photo-placeholder span{font-family:var(--serif);font-size:1.12rem;letter-spacing:.06em}.photo-placeholder small{font-family:var(--sans);font-size:.8125rem;color:#627363}.photo.landscape{aspect-ratio:4/3}.photo.portrait{aspect-ratio:4/5}.photo.pass{aspect-ratio:3/2}.photo-caption{margin-top:10px;color:var(--muted);font-size:.875rem}.hero-aside{padding-top:14px;display:flex;justify-content:space-between;gap:12px;font-size:.875rem;color:var(--muted)}.symptom-layout{display:grid;grid-template-columns:.75fr 1.3fr;gap:90px}.symptom-heading{position:sticky;top:180px;align-self:start}.symptom-list{border-top:1px solid var(--green)}.symptom-row{display:grid;grid-template-columns:1fr 28px;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:26px 8px 27px 0}.symptom-row strong{font-family:var(--serif);font-size:1.65rem;color:var(--green);font-weight:500;letter-spacing:.03em;display:block;line-height:1.6}.symptom-row small{display:block;color:var(--muted);margin-top:9px;line-height:1.8}.symptom-row .arrow{transition:transform .2s;color:var(--green)}.symptom-row:hover .arrow{transform:translateX(5px)}.symptom-row:hover{background:#f5f6f1}.more-link{margin-top:26px}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split .text-link{margin-top:30px}.flow-strip{display:grid;grid-template-columns:repeat(5,1fr);margin-top:46px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.flow-strip div{padding:22px 16px;border-right:1px solid var(--line);font-size:.9375rem;line-height:1.8}.flow-strip div:first-child{padding-left:0}.flow-strip div:last-child{border:0}.step-number{display:block;color:var(--muted);font-family:Georgia,serif;font-size:1.05rem;margin-bottom:8px;letter-spacing:.05em}.welcome{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.welcome-inner{display:grid;grid-template-columns:.75fr 1.3fr;gap:90px}.welcome h2{max-width:300px}.welcome .text-link{margin-top:24px}.sports-section{background:var(--green);color:#f5f7f0}.sports-section h2,.sports-section h3,.sports-section .kicker,.sports-section .text-link{color:#fff}.sports-section .text-link{border-color:#b5c3b7}.sports-section .photo{background:#dce4da}.profile-home{display:grid;grid-template-columns:280px 1fr;gap:80px;max-width:950px;margin:auto;align-items:center}.profile-home .photo{aspect-ratio:4/5}.credentials-inline{margin:24px 0;line-height:2.2;color:var(--muted)}.fees-heading{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:42px}.locations{display:grid;grid-template-columns:1fr 1fr;gap:56px}.location{border-top:2px solid var(--green);padding-top:27px;scroll-margin-top:180px}.location-label{font-family:var(--serif);font-size:1.7rem;color:var(--green);margin-bottom:8px}.location h3{font-size:1.1rem}.price{margin-top:22px;display:flex;align-items:baseline;gap:20px}.price strong{font-family:Georgia,serif;font-size:2.45rem;font-weight:400;color:var(--green);line-height:1.5}.price span{font-size:.9375rem;color:var(--muted)}.facts{margin:24px 0}.facts>div{display:grid;grid-template-columns:100px 1fr;gap:20px;padding:13px 0;border-bottom:1px solid var(--line)}dt{color:var(--muted)}dd{margin:0}.location .action{width:100%;margin-top:25px}.pending{font-size:.875rem;color:var(--muted);margin-top:10px}.notice{border-left:3px solid var(--pink);padding:16px 20px;background:#f5eeee;margin-top:28px;font-size:.9375rem;line-height:1.95}.notice h3{font-family:var(--sans);font-size:1rem;margin-bottom:8px}.note-plain{margin-top:28px;color:var(--muted);font-size:.9375rem}.access-summary{display:grid;grid-template-columns:1fr 1fr;gap:56px;margin-top:38px}.access-summary h3{margin-top:22px}.access-summary p{margin-top:12px}.access-summary .text-link{margin-top:20px}.access-summary .photo{aspect-ratio:16/9}.footer{background:var(--deep);color:#dce5dc;padding:56px 0 30px}.footer .brand{color:white}.footer .brand-sub{color:#c0cdc1}.footer-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:12px 32px;font-size:.9375rem}.footer-nav a{padding:3px 0}.footer-bottom{border-top:1px solid #406051;margin-top:40px;padding-top:23px;display:flex;gap:20px;justify-content:space-between;font-size:.8125rem;color:#b9c8bc}.mobile-reserve{display:none}.breadcrumb{font-size:.8125rem;color:var(--muted);padding-top:26px;display:flex;flex-wrap:wrap;gap:10px;line-height:1.8}.breadcrumb a{text-decoration:underline;text-underline-offset:3px}.page-heading{padding:46px 0 55px;border-bottom:1px solid var(--line)}.page-heading h1{font-size:2.45rem}.page-heading p{margin-top:18px;color:var(--muted);max-width:680px}.article-layout{display:grid;grid-template-columns:240px 1fr;gap:80px;padding-block:68px 90px}.side-nav{position:sticky;top:185px;align-self:start;border-top:1px solid var(--green)}.side-nav h2{font-family:var(--sans);font-size:1rem;padding:18px 0}.side-nav a{display:block;padding:12px 0;border-bottom:1px solid var(--line);font-size:.9375rem;line-height:1.7}.side-nav a[aria-current=page]{color:var(--green);font-weight:700;border-left:3px solid var(--pink);padding-left:13px;background:#f0f3ed}.article h2{font-size:1.7rem;line-height:1.8;margin-bottom:24px}.article h3{margin:32px 0 16px}.article p{line-height:2.1}.article-section+.article-section{margin-top:52px;padding-top:38px;border-top:1px solid var(--line)}.article ul{padding-left:1.4em}.article li{margin:12px 0}.article .text-link{margin-top:34px}.article .photo{margin-top:30px}.related{border-top:1px solid var(--line);margin-top:48px;padding-top:30px}.related h3{margin:0 0 10px}.related-links{display:flex;flex-wrap:wrap;gap:12px 28px}.related-links a{text-decoration:underline;text-underline-offset:5px;padding:8px 0}.page-body{padding-block:64px 90px}.steps{list-style:none;margin:36px 0 0;padding:0;counter-reset:steps}.steps li{position:relative;padding:30px 0 32px 68px;border-top:1px solid var(--line);counter-increment:steps}.steps li:before{content:counter(steps,decimal-leading-zero);font-family:Georgia,serif;font-size:1.5rem;position:absolute;left:0;top:30px;color:var(--green)}.steps h3{margin:0 0 12px}.steps p{line-height:2.05}.principles{margin-top:60px;padding:40px;background:var(--wash)}.principle{border-top:1px solid var(--line);padding-top:24px;margin-top:24px}.principle h3{margin:0 0 12px}.principle strong{font-family:var(--serif);font-size:1.8rem;font-weight:500;margin-right:14px}.profile-lead{display:grid;grid-template-columns:280px 1fr;gap:70px;align-items:center;margin-bottom:62px}.profile-lead h2{font-size:2rem;margin-bottom:14px}.history{padding:0;list-style:none}.history li{padding:12px 0;border-bottom:1px solid var(--line)}.access-jump{display:flex;gap:30px;margin-bottom:48px}.access-block+.access-block{margin-top:75px;padding-top:60px;border-top:1px solid var(--line)}.access-block{scroll-margin-top:180px}.access-block h2{margin-bottom:24px}.access-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.map-slot{background:#edf0e9;min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;border:1px solid var(--line);gap:10px}.map-slot strong{font-family:var(--serif);font-size:1.4rem;font-weight:400;color:var(--green)}.map-slot p{font-size:.9375rem;color:var(--muted)}.access-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:32px}.access-photos .photo{aspect-ratio:4/3}.access-photos .photo-placeholder{padding:14px}.access-photos .photo-placeholder span{font-size:1rem}.faq-group details{border-bottom:1px solid var(--line)}.faq-group{border-top:1px solid var(--green)}.faq-group summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:27px 1fr 20px;gap:16px;padding:25px 0;align-items:baseline;color:var(--green);line-height:1.8;font-size:1.1rem}.faq-group summary::-webkit-details-marker{display:none}.faq-group summary:before{content:"Q";font-family:Georgia,serif;font-size:1.3rem}.faq-group summary:after{content:"＋";font-size:1.2rem}.faq-group details[open] summary:after{content:"−"}.faq-answer{padding:0 30px 28px 43px;line-height:2.05}.faq-answer a{text-decoration:underline;text-underline-offset:4px}.other-list{list-style:none;padding:0!important;margin-top:25px}.other-list li{padding:18px 0;border-top:1px solid var(--line);font-size:1.15rem;color:var(--green);margin:0!important}.closing{padding:50px 0;background:var(--wash);border-top:1px solid var(--line)}.closing-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.closing h2{font-size:1.5rem}.closing p{margin-top:10px;color:var(--muted);font-size:.9375rem}.closing .action-row{margin:0;min-width:440px}.skip{position:absolute;left:16px;top:-100px;background:white;padding:10px;z-index:100}.skip:focus{top:16px}[hidden]{display:none!important}
@media(min-width:1001px){.mobile-nav{display:none!important}}
@media(max-width:1000px){.desktop-nav,.header-contact{display:none}.menu-button{display:block}.header-main{min-height:82px}.hero-grid{gap:32px}.hero h1{font-size:2rem}.hero .action-row{grid-template-columns:1fr}.symptom-layout,.welcome-inner{gap:45px;grid-template-columns:.8fr 1.2fr}.split{gap:45px}.article-layout{gap:36px;grid-template-columns:200px 1fr}.profile-home{gap:45px}.closing .action-row{min-width:360px}.access-grid{gap:30px}.access-photos{gap:14px}.footer-grid{gap:40px}}
@media(max-width:700px){html{scroll-padding-top:90px}.wrap{width:calc(100% - 44px)}body{font-size:16px;line-height:1.95}.section{padding-block:62px}h2{font-size:1.7rem;line-height:1.75}.kicker{margin-bottom:16px;font-size:.8125rem}.preview-note{font-size:.75rem;padding:5px 12px}.header-main{min-height:76px;gap:8px}.brand-name{font-size:1.03rem;letter-spacing:0;line-height:1.65}.brand-name:after{display:none}.brand-sub{font-size:.75rem;margin-top:3px;letter-spacing:.07em}.menu-button{padding:7px 0;flex-shrink:0;min-width:45px}.hero{padding:32px 0 37px}.hero-grid{display:flex;flex-direction:column;gap:26px;align-items:stretch}.hero-copy{display:contents}.hero-location{font-size:.8125rem;margin:0;order:0}.hero h1{font-size:1.85rem;line-height:1.7;order:1;margin-top:-12px}.hero-visual{order:2;margin-inline:-22px}.hero-photo{aspect-ratio:16/11}.hero-aside{padding:11px 22px 0;font-size:.8125rem}.hero .action-row{order:3;display:grid;grid-template-columns:1fr;margin-top:0;gap:10px}.action{font-size:1rem;min-height:57px}.hero-meta{order:4;text-align:center;margin-top:-12px;font-size:.8125rem;color:var(--muted)}.symptom-layout,.welcome-inner,.split,.profile-home,.locations,.access-summary,.footer-grid,.profile-lead,.access-grid{grid-template-columns:1fr;gap:34px}.symptom-heading{position:static}.symptom-heading h2{font-size:1.6rem;max-width:330px}.symptom-row{padding:23px 0 24px}.symptom-row strong{font-size:1.5rem;line-height:1.6}.symptom-row small{font-size:.875rem;line-height:1.85;margin-top:7px}.more-link{margin-top:24px}.split .photo{aspect-ratio:4/3}.split .text-link{margin-top:24px}.flow-strip{display:block;margin-top:30px}.flow-strip div{display:flex;align-items:baseline;gap:20px;border-right:0;border-bottom:1px solid var(--line);padding:14px 0!important;font-size:1rem}.flow-strip .step-number{margin:0;width:30px;flex-shrink:0;font-size:1.1rem}.welcome h2{max-width:none}.sports-section .photo{aspect-ratio:3/2}.profile-home .photo{max-width:270px;aspect-ratio:4/5}.profile-home{gap:30px}.fees-heading{display:block;margin-bottom:32px}.fees-heading>p{margin-top:18px}.locations{gap:45px}.location{padding-top:22px;scroll-margin-top:100px}.location-label{font-size:1.55rem}.price strong{font-size:2.2rem}.price{margin-top:15px}.facts>div{grid-template-columns:80px 1fr;gap:20px;font-size:.9375rem}.access-summary{gap:42px;margin-top:30px}.footer{padding:42px 0 106px}.footer-grid{gap:32px}.footer-nav{gap:12px 20px;font-size:.875rem}.footer-bottom{display:block;font-size:.75rem}.footer-bottom span{display:block;margin-top:8px}.mobile-reserve{position:fixed;bottom:0;left:0;right:0;z-index:35;display:grid;grid-template-columns:1fr 1fr;background:var(--green);border-top:1px solid #496b58;padding-bottom:env(safe-area-inset-bottom)}.mobile-reserve a{display:flex;align-items:center;justify-content:center;gap:9px;text-align:center;color:white;font-size:.9375rem;min-height:60px;line-height:1.5;padding:10px 6px}.mobile-reserve a+a{border-left:1px solid #6d8676;background:#2f5949}.mobile-reserve span{font-size:.8125rem;border-right:1px solid #718879;padding-right:9px}.breadcrumb{padding-top:22px;font-size:.75rem}.page-heading{padding:31px 0 36px}.page-heading h1{font-size:1.95rem}.page-heading p{margin-top:17px;font-size:.9375rem}.article-layout{display:flex;flex-direction:column;padding-block:42px 58px;gap:48px}.article{order:0}.side-nav{position:static;order:1}.side-nav a{font-size:1rem;padding:14px 0}.article h2{font-size:1.5rem;line-height:1.85;margin-bottom:23px}.article h3{font-size:1.12rem}.article-section+.article-section{margin-top:40px;padding-top:30px}.article p{line-height:2.05}.page-body{padding-block:42px 60px}.steps li{padding:25px 0 28px 45px}.steps li:before{font-size:1.2rem;top:26px}.steps h3{font-size:1.12rem}.principles{padding:27px 22px;margin-top:42px}.principle strong{font-size:1.5rem}.profile-lead{gap:28px;margin-bottom:44px}.profile-lead .photo{max-width:270px}.profile-lead h2{font-size:1.75rem}.access-jump{gap:24px;margin-bottom:36px}.access-block{scroll-margin-top:100px}.access-block+.access-block{margin-top:48px;padding-top:42px}.access-photos{grid-template-columns:1fr 1fr;gap:14px}.access-photos>div:first-child{grid-column:1/-1}.access-photos .photo-placeholder{min-height:130px;padding:12px}.access-photos>div:first-child .photo{aspect-ratio:16/9}.access-photos .photo-placeholder small{font-size:.75rem}.access-photos .photo-placeholder span{font-size:.9375rem}.map-slot{min-height:225px}.notice{padding:16px;margin-top:23px}.faq-group summary{gap:10px;grid-template-columns:23px 1fr 20px;font-size:1rem;padding:23px 0}.faq-answer{padding:0 3px 25px 33px}.closing{padding:38px 0}.closing-inner{display:block}.closing .action-row{min-width:0;grid-template-columns:1fr;margin-top:25px}.closing h2{font-size:1.4rem}.hero .photo-placeholder{min-height:210px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
.hero-surname{font-size:.8em}.hero-meta{margin-top:15px}.hero h1{font-size:2.3rem;line-height:1.65}@media(max-width:700px){.hero h1{font-size:1.7rem;line-height:1.55}.hero-meta{margin-top:-12px}}
/* Reference-led palette and compact first viewport; the existing page structure is retained. */
.preview-note{background:#f4f7f0;color:#63725f}.kicker:before{background:var(--soft-green)}.brand-name:after{display:none}.text-link:hover{color:var(--green);border-color:var(--soft-green)}.header .brand{display:flex;align-items:center;gap:14px;min-width:0}.brand-logo{flex:none;width:43px;height:50px;object-fit:contain}.brand-copy{min-width:0;display:block}.brand-name{display:block}.brand-sub{display:block}.header-contact a:last-child{color:var(--pink)}.hero{background:#fff}.hero-grid{grid-template-columns:.9fr 1.3fr;gap:45px}.hero h1{font-size:1.85rem;line-height:1.7}.hero h1>span{display:block}.hero-photo{aspect-ratio:727/353;background:white}.hero-photo img{width:100%;height:100%;object-fit:contain}.hero .action-row{grid-template-columns:1fr 1fr;gap:12px}.hero .action{display:flex;flex-direction:column;gap:2px;padding:12px 8px;background:white;color:var(--green);border-color:#aac0a8;font-size:.9375rem}.hero .action span:first-child{font-size:.8125rem}.hero .action .arrow{display:none}.hero .action:hover{background:var(--wash)}.action.outline,.action[href$="#hamura"],.action[href$="/hamura"],.contact-hamura{background:var(--pink);border-color:var(--pink);color:white}.action.outline:hover,.action[href$="#hamura"]:hover,.action[href$="/hamura"]:hover,.contact-hamura:hover{background:var(--pink-hover);border-color:var(--pink-hover);color:white}.hero .action.outline{color:var(--pink);background:#fff;border-color:#dab0be}.hero .action.outline:hover{background:#fcf3f6;color:var(--pink)}.sports-section{background:#f2f6ef;color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.sports-section h2,.sports-section h3,.sports-section .kicker,.sports-section .text-link{color:var(--green)}.sports-section .text-link{border-color:var(--green)}.footer{background:#f4f7f1;color:var(--ink);border-top:1px solid var(--line)}.footer .brand{color:var(--green)}.footer .brand-sub{color:var(--muted)}.footer-bottom{border-color:var(--line);color:var(--muted)}.notice{background:#f5f8f1;border-left-color:var(--soft-green)}.mobile-reserve{border-top:0;background:var(--green)}.mobile-reserve a:first-child{background:var(--green)}.mobile-reserve a+a{background:var(--pink);border-left:2px solid white}.mobile-reserve span{border-right-color:rgba(255,255,255,.45)}
@media(max-width:700px){.header-main{min-height:82px}.header .brand{gap:9px}.brand-logo{width:34px;height:40px}.brand-name{font-size:.95rem;line-height:1.55}.brand-sub{font-size:.6875rem;letter-spacing:.025em}.hero{padding:22px 0 33px}.hero-grid{gap:20px}.hero-location{font-size:.75rem;letter-spacing:.1em}.hero h1{font-size:1.3rem;line-height:1.65;margin-top:-8px;letter-spacing:.025em}.hero-photo{aspect-ratio:727/353}.hero-aside{display:grid;grid-template-columns:1fr;gap:1px;padding-top:9px;line-height:1.6;font-size:.75rem}.hero .action-row{grid-template-columns:1fr 1fr;gap:12px;margin-top:0}.hero .action{min-height:61px;font-size:.875rem;padding:8px 5px;line-height:1.65}.hero .action span:first-child{font-size:.75rem}.hero-meta{margin-top:-9px}.footer{padding-bottom:calc(106px + env(safe-area-inset-bottom))}html{scroll-padding-bottom:calc(84px + env(safe-area-inset-bottom))}}
/* Small HOME refinements, retaining the existing routes, copy and photograph. */
.hero-grid{display:block;max-width:960px;margin-inline:auto}.hero .action-row{max-width:620px;margin:22px auto 0}.hero-meta{text-align:center;margin-top:12px}.profile-home{display:block;max-width:760px}.profile-home .text-link{margin-top:24px}.sports-section{background:var(--green);color:#f5f7f0}.sports-section h2,.sports-section h3,.sports-section .kicker,.sports-section .text-link{color:#fff}.sports-section .text-link{border-color:#b5c3b7}
@media(max-width:700px){.hero{padding:0 0 30px}.hero-visual{margin-inline:-22px}.hero-aside{grid-template-columns:1fr 1fr;align-items:start;gap:12px;padding:13px 22px 0}.hero .action-row{margin:15px 0 0;gap:12px}.hero-meta{margin-top:10px}.home-symptoms{padding-bottom:46px}.home-treatment{padding-top:46px}.mobile-reserve a:first-child{background:var(--green)}.mobile-reserve a:last-child{background:var(--pink)}.footer{padding-bottom:calc(110px + env(safe-area-inset-bottom))}}
/* HOME uses one main photograph; detail pages retain their own image slots. */
.home-page .home-treatment .split,.home-page .sports-section .split{display:block;max-width:760px}.home-page .home-treatment .intro{max-width:none}.home-page .sports-section{padding-block:72px}.home-page .access-summary h3{margin-top:0}
@media(max-width:700px){.home-page>.section{padding-block:50px}.home-page>.home-symptoms{padding-bottom:46px}.home-page>.home-treatment{padding-top:46px;padding-bottom:46px}.home-page>.welcome{padding-top:46px}.home-page>.sports-section{padding-block:42px}}
/* Reduce only the visual weight of the HOME sports experience section. */
.home-page .sports-section{background:var(--wash);color:var(--ink)}
.home-page .sports-section h2,.home-page .sports-section h3,.home-page .sports-section .kicker,.home-page .sports-section .text-link{color:var(--green)}
.home-page .sports-section .text-link{border-color:var(--green)}
/* Supporting original photographs within treatment steps 03 and 04. */
.article .steps .step-photo{width:100%;max-width:480px;aspect-ratio:auto;margin:24px 0 0;border-radius:2px;background:transparent}
.article .steps .step-photo img{width:100%;height:auto;object-fit:contain}
@media(max-width:700px){.article .steps .step-photo{margin-top:20px}}

/* Wrap this heading only at the phrase boundary, without reducing type size. */
.stimulus-heading>span{display:inline-block}

/* Keep only the three profile headings together in meaningful phrases. */
.profile-phrase-heading>span{display:inline-block}
/* Consistent Hino telephone actions; the fixed reservation bar is untouched. */
.action:is(.contact-hino,[href="fees.html#hino"],[href="#/fees/hino"]),.action:is(.contact-hino,[href="fees.html#hino"],[href="#/fees/hino"]):hover{background:#3d694a;border-color:#3d694a;color:#fff;opacity:1}

/* Consistent Hamura LINE actions; the fixed reservation bar is untouched. */
.action.action:is(.contact-hamura,[href="fees.html#hamura"],[href="access.html#hamura"],[href="#/fees/hamura"],[href="#/access/hamura"]),.action.action:is(.contact-hamura,[href="fees.html#hamura"],[href="access.html#hamura"],[href="#/fees/hamura"],[href="#/access/hamura"]):hover{background:#c05077;border-color:#c05077;color:#fff;opacity:1}

/* Retain desktop article position after removing repeated symptom navigation. */
.article-layout>.article{grid-column:2}

/* Darken only the normal telephone action on the fees page. */
.action.contact-hino.fees-phone,.action.contact-hino.fees-phone:hover{background:#335c42;border-color:#335c42;color:#fff;opacity:1}

/* HOME symptom rows share a plain background, including touch hover state. */
.home-page .home-symptoms .symptom-row,.home-page .home-symptoms .symptom-row:hover{background:transparent}
