:root{--accent: #5a9e8f;--accent-dark: #3d7a6c;--accent-light: #dee7e4;--orange: #e8a87c;--orange-dark: #d4865a;--white: #ffffff;--bg-alt: #f7f5f2;--light-gray: #e2e8f0;--mid-gray: #94a3b8;--dark: #1e293b;--dark-soft: #475569;--font-body: "Zen Kaku Gothic New", sans-serif;--font-heading: "Shippori Mincho", serif;--section-pad: 128px;--side-pad: 24px;--side-pad-sp: 16px;--content-max: 960px;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--header-height: 80px;--bottom-nav-height: 64px;--desktop-diagnosis-bar-height: 76px}@media(max-width:960px){:root{--header-height: 70px;--section-pad: 96px}}@media(max-width:480px){:root{--header-height: 60px;--section-pad: 80px}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{max-width:100vw;overflow-x:hidden}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;touch-action:pan-x pan-y}body{font-family:var(--font-body);position:relative;color:var(--dark);line-height:1.8;font-weight:400;background:var(--white)}img{max-width:100%;height:auto;display:block}a{text-decoration:none;color:inherit}ul,ol{list-style:none}button{font-family:inherit;cursor:pointer;border:none;outline:none}section{padding:var(--section-pad) var(--side-pad)}section>.about-hero,section>.home-section-heading,section>.home-section-heading__divider,section>.about-points,section>.concept-section__inner,section>.testimonials-grid,section>.treatment-reason__hero-heading,section>.treatment-reason__grid,section>.reason-section__header,section>.reason-section__grid,section>.reason-section__commitment,section>.access-section__inner,section>.store-interior-section__inner,section>.director-content{max-width:var(--content-max);margin-left:auto;margin-right:auto}.section-heading{text-align:center;margin-bottom:24px}.section-heading__en{display:block;font-family:var(--font-body);font-size:13px;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--accent);margin-bottom:6px}.section-heading__ja{display:block;font-family:var(--font-heading);font-size:32px;font-weight:700;color:var(--dark);line-height:1.5}.section-heading__desc{display:block;max-width:640px;margin:16px auto 0;font-size:15px;color:var(--dark-soft);line-height:2;text-align:justify}@media(max-width:960px){.section-heading__ja{font-size:28px}}@media(max-width:480px){.section-heading__ja{font-size:24px}}.section--alt{background:var(--bg-alt)}.reveal{opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);will-change:opacity,transform}.reveal--left{opacity:0;transform:translate(-60px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);will-change:opacity,transform}.reveal--right{opacity:0;transform:translate(60px);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);will-change:opacity,transform}.reveal--scale{opacity:0;transform:scale(.9);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);will-change:opacity,transform}.reveal.visible,.reveal--left.visible,.reveal--right.visible,.reveal--scale.visible{opacity:1;transform:none}.stagger-1{transition-delay:.1s}.stagger-2{transition-delay:.2s}.stagger-3{transition-delay:.3s}.stagger-4{transition-delay:.4s}.stagger-5{transition-delay:.5s}.stagger-6{transition-delay:.6s}.stagger-7{transition-delay:.7s}.stagger-8{transition-delay:.8s}.page-container{min-height:calc(100vh - 76px);padding:calc(76px + var(--section-pad)) var(--side-pad) var(--section-pad);max-width:880px;margin:0 auto}.page-body{background:var(--white);border-radius:var(--radius-md);padding:48px;line-height:2;color:var(--dark-soft)}@media(max-width:600px){.page-body{padding:28px;line-height:1.6}}.page-body h3{font-size:18px;font-weight:700;color:var(--dark);margin:29px 0 13px;padding-bottom:8px;border-bottom:1px solid var(--light-gray)}@media(max-width:600px){.page-body h3{font-size:16px}}.page-body h3:first-child{margin-top:0}.page-body p{margin-bottom:13px}@media(max-width:600px){.page-body p{font-size:14px}}.page-body ul{margin-bottom:13px;padding-left:24px}.page-body ul li{list-style:disc;margin-bottom:6px}.page-body ul ul{margin-top:6px;margin-bottom:0}@media(max-width:960px){body{padding-bottom:var(--bottom-nav-height)}}.sp-only{display:none}@media(max-width:960px){.sp-only{display:inline}.pc-only{display:none}}.back-to-top{position:fixed;bottom:32px;right:32px;z-index:1001;width:48px;height:48px;border-radius:50%;background:var(--accent);color:var(--white);display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transform:translateY(20px);transition:opacity .4s,transform .4s}.back-to-top.visible{opacity:1;transform:translateY(0)}.back-to-top svg{width:22px;height:22px}@media(max-width:960px){.back-to-top{bottom:calc(var(--bottom-nav-height) + 16px);right:16px}}@media(min-width:961px){.back-to-top.back-to-top--above-desktop-diagnosis-bar{bottom:calc(var(--desktop-diagnosis-bar-height) + 16px)}}.bottom-nav{position:fixed;bottom:0;left:0;right:0;height:var(--bottom-nav-height);background:var(--white);box-shadow:0 -2px 12px #00000014;display:none;z-index:1000}@media(max-width:960px){.bottom-nav{display:flex}}.bottom-nav__item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none;color:var(--dark-soft);font-size:10px;font-weight:600;letter-spacing:1px;padding:6px 0;transition:color .2s,background .2s;border:none;background:transparent;cursor:pointer}.bottom-nav__item:active{background:var(--accent-light)}.bottom-nav__icon{font-size:21px;line-height:1}.bottom-nav__label{white-space:nowrap}.bottom-nav__item--orange{color:var(--white);background:var(--orange)}.bottom-nav__item--orange:active{background:var(--orange-dark)}.custom-cursor{position:fixed;left:0;top:0;width:28px;height:28px;margin:-14px 0 0 -14px;border-radius:50%;background:color-mix(in srgb,var(--accent) 42%,transparent);pointer-events:none;z-index:2147483647;opacity:0;transition:opacity .15s ease;will-change:transform}.custom-cursor--visible{opacity:1}.desktop-diagnosis-bar{display:none}@media(min-width:961px){.desktop-diagnosis-bar{display:flex;justify-content:center;align-items:center;position:fixed;bottom:0;left:0;right:0;z-index:1000;min-height:var(--desktop-diagnosis-bar-height);padding:10px var(--side-pad);background:#ffffffb3;box-shadow:0 -1px #dcdcdc0f,0 -4px 24px #e3e3e30f}.desktop-diagnosis-bar__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:16px 20px;max-width:var(--content-max);width:100%}.desktop-diagnosis-bar__text{margin:0;font-family:var(--font-body);font-size:16px;font-weight:500;color:var(--dark);line-height:1.5;text-align:center}.desktop-diagnosis-bar__btn{display:inline-flex;align-items:center;gap:7px;flex-shrink:0;padding:10px 28px;border-radius:999px;background:var(--accent);color:var(--white);font-family:var(--font-body);font-size:14px;font-weight:700;text-decoration:none;letter-spacing:1px;transition:background .2s ease,transform .2s ease;box-shadow:0 2px 12px #1e40af59}.desktop-diagnosis-bar__btn:hover{background:#1d4ed8;transform:translateY(-1px)}.desktop-diagnosis-bar__btn-icon{font-size:18px;flex-shrink:0}}@media(min-width:961px)and (max-width:1100px){.desktop-diagnosis-bar__text{font-size:14px}}.site-footer{background:var(--dark);color:var(--white);position:relative}.footer-content{max-width:var(--content-max);margin:0 auto;padding:56px var(--side-pad) 32px;display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:32px}@media(max-width:768px){.footer-content{grid-template-columns:1fr;text-align:center;padding:48px var(--side-pad) 28px;gap:28px}}.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:16px}@media(max-width:768px){.footer-brand{align-items:center}}.footer-brand__logo{width:auto;height:60px;object-fit:contain}.footer-brand__address{font-size:13px;color:#ffffffb3;line-height:1.8}.footer-links-title{font-family:var(--font-body);font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:var(--accent);margin-bottom:16px}.footer-links{display:flex;flex-direction:column;gap:10px}.footer-links a{font-size:14px;color:#ffffffb3;transition:color .3s,transform .3s;display:inline-block}.footer-links a:hover{color:var(--white);transform:translate(4px)}.footer-hours{font-size:13px;color:#ffffffb3;line-height:1.8}.footer-bottom{text-align:center;padding:19px var(--side-pad);border-top:1px solid rgba(255,255,255,.08);font-size:12px;color:#ffffff80}@media(max-width:960px){.site-footer{padding-bottom:var(--bottom-nav-height)}}.free-diagnosis-cta{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--accent);color:var(--white);font-weight:700;letter-spacing:1px;text-decoration:none;border-radius:var(--radius-sm);transition:transform .25s ease,box-shadow .25s ease,background .2s ease;flex-shrink:0}.free-diagnosis-cta:hover{background:var(--accent-dark)}.free-diagnosis-cta__icon{flex-shrink:0}.free-diagnosis-cta__label{line-height:1.3;white-space:nowrap}.free-diagnosis-cta--sm{min-height:44px;padding:7px 16px;font-size:13px}.free-diagnosis-cta--sm .free-diagnosis-cta__icon{font-size:15px}.free-diagnosis-cta--lg{min-height:52px;padding:10px 24px;font-size:15px;min-width:min(100%,280px)}.free-diagnosis-cta--lg .free-diagnosis-cta__icon{font-size:17px}@media(max-width:480px){.free-diagnosis-cta--lg{font-size:14px;padding:10px 20px}.free-diagnosis-cta--lg .free-diagnosis-cta__icon{font-size:16px}}@media(prefers-reduced-motion:reduce){.free-diagnosis-cta:hover{transform:none}}.site-header{position:fixed;top:0;left:0;right:0;height:var(--header-height);z-index:900;background:#fffffff2;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:box-shadow .3s,background .3s}.site-header--menu-open{z-index:1100}.site-header--scrolled{box-shadow:0 2px 12px #0000000f}.header-inner{margin:0 auto;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 var(--side-pad)}.header-logo{display:flex;align-items:center;gap:10px;flex-shrink:1;min-width:0;text-decoration:none;color:inherit}.header-logo-img{height:48px;width:auto;flex-shrink:0}.header-logo-text{font-family:var(--font-heading);font-size:17px;font-weight:700;color:var(--dark);letter-spacing:1px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:960px){.header-logo-img{height:40px}.header-logo{gap:8px}.header-logo-text{font-size:15px;letter-spacing:1px}}@media(max-width:480px){.header-logo-img{height:34px}.header-logo-text{font-size:14px;letter-spacing:1px}}.header-nav{display:flex;align-items:center;gap:32px}.main-nav{display:flex;align-items:center;gap:29px}.nav-link{font-size:14px;font-weight:600;color:var(--dark-soft);letter-spacing:1px;position:relative;padding:4px 0;transition:color .2s}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--accent);border-radius:1px;transition:width .3s cubic-bezier(.16,1,.3,1)}.nav-link:hover{color:var(--accent)}.nav-link:hover:after{width:100%}.header-cta{flex-shrink:0}@media(max-width:960px){.header-nav{display:none}}.hamburger{display:none;position:relative;width:30px;height:22px;background:none;z-index:1001}.hamburger span{display:block;position:absolute;left:0;width:100%;height:2px;background:var(--dark);border-radius:2px;transition:all .35s cubic-bezier(.16,1,.3,1)}.hamburger span:nth-child(1){top:0}.hamburger span:nth-child(2){top:10px}.hamburger span:nth-child(3){top:20px}.hamburger.active span:nth-child(1){top:10px;transform:rotate(45deg)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){top:10px;transform:rotate(-45deg)}@media(max-width:960px){.hamburger{display:block}}.mobile-nav-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:999;background:#fffffff7;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .4s cubic-bezier(.16,1,.3,1)}.mobile-nav-overlay.active{opacity:1;pointer-events:auto}.mobile-nav{text-align:center;display:flex;flex-direction:column;gap:24px}.mobile-nav-link{display:block;font-size:18px;font-weight:600;color:var(--dark);padding:8px 0;letter-spacing:1px;transition:color .2s}.mobile-nav-link:hover{color:var(--accent)}.mobile-nav-cta{margin-top:16px}.mobile-nav-phone{margin-top:16px;display:flex;flex-direction:column;align-items:center;gap:5px}.mobile-nav-phone span{font-size:12px;color:var(--mid-gray)}.mobile-nav-phone a{font-size:22px;font-weight:700;color:var(--dark);letter-spacing:1px}main{width:100%;max-width:100vw;overflow-x:hidden}.opening{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:#f8fafc;transition:opacity .5s ease-out}.opening--exiting{opacity:0;pointer-events:none}.opening__inner{display:flex;flex-direction:column;align-items:center;gap:16px}.opening__logo{width:140px;height:auto;opacity:0;animation:opening-fade-in .8s ease-out .2s forwards}.opening__loader{width:120px;height:4px;background:#e2e8f0;border-radius:2px;overflow:hidden;margin-top:8px;opacity:0;animation:opening-fade-in .6s ease-out .6s forwards}.opening__loader-bar{display:block;height:100%;width:40%;background:var(--accent);border-radius:2px;animation:opening-load 1.2s ease-in-out infinite}@media(max-width:960px){.opening__logo{width:130px}}@media(max-width:480px){.opening__logo{width:120px}}@keyframes opening-fade-in{to{opacity:1}}@keyframes opening-load{0%,to{transform:translate(-100%)}50%{transform:translate(250%)}}.page-title{margin-bottom:32px}.page-title .title-en{display:block;font-family:var(--font-body);font-size:14px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:5px}.page-title .title-ja{display:block;font-size:35px;font-weight:900;color:var(--dark);line-height:1.3}@media(max-width:960px){.page-title .title-ja{font-size:30px}}@media(max-width:480px){.page-title .title-ja{font-size:26px}}.section-label{font-family:var(--font-body);font-size:12px;font-weight:600;letter-spacing:2px;color:var(--accent);text-align:center;margin:0 auto 20px;max-width:var(--content-max);text-transform:uppercase}.section-label__num{color:var(--accent);font-size:13px;font-weight:800}.form{background:var(--white);border-radius:var(--radius-md);padding:48px}.form-group{margin-bottom:22px}.form-group label{display:block;font-weight:700;font-size:14px;margin-bottom:8px;color:var(--dark)}.form-group label .required{font-size:11px;color:#e74c3c;margin-left:5px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:14px 19px;border:1.5px solid var(--light-gray);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:15px;color:var(--dark);background:var(--white);transition:border-color .3s,box-shadow .3s;outline:none}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent)}.form-submit-btn{display:inline-flex;align-items:center;gap:10px;width:100%;justify-content:center;background:var(--accent);color:var(--white);padding:18px 32px;border-radius:60px;font-weight:700;font-size:17px;transition:all .3s cubic-bezier(.16,1,.3,1)}.form-submit-btn:hover{transform:translateY(-2px);background:var(--accent-dark)}@media(max-width:600px){.contact-form{padding:32px 22px}}.contact-mail-form__recaptcha{container-type:inline-size;container-name:contact-mail-form-recaptcha;margin-bottom:16px;margin-top:4px;width:100%;max-width:100%;display:flex;justify-content:flex-start;overflow-x:clip;overflow-y:visible}.contact-mail-form__recaptcha-inner{width:304px;flex-shrink:0;line-height:0;transform-origin:left top}@container contact-mail-form-recaptcha (max-width: 303px){.contact-mail-form__recaptcha-inner{transform:scale(calc(100cqw/304px))}}@supports not (container-type: inline-size){@media(max-width:400px){.contact-mail-form__recaptcha-inner{transform:scale(min(1,calc((100vw - 96px) / 304)));transform-origin:left top}}}.contact-mail-form__recaptcha--disabled{pointer-events:none;opacity:.65;-webkit-user-select:none;user-select:none}.contact-mail-form__char-count{display:block;font-size:13px;color:var(--mid-gray);margin-top:6px;text-align:right}.contact-mail-form__error,.contact-not-configured{color:#e74c3c;font-size:14px;margin-bottom:16px;padding:13px;background:#e74c3c14;border-radius:var(--radius-sm)}.contact-not-configured__hint{display:block;margin-top:8px;font-size:13px;color:var(--mid-gray)}@keyframes contact-sending-overlay-spin{to{transform:rotate(360deg)}}.contact-sending-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background-color:color-mix(in srgb,var(--dark) 45%,transparent);touch-action:none}.contact-sending-overlay__panel{max-width:352px;width:100%;padding:32px;border-radius:var(--radius-md);background-color:var(--white);border:1px solid var(--light-gray);text-align:center;box-shadow:0 12px 40px color-mix(in srgb,var(--dark) 18%,transparent)}.contact-sending-overlay__spinner{width:40px;height:40px;margin:0 auto 16px;border:3px solid color-mix(in srgb,var(--accent) 28%,transparent);border-top-color:var(--accent);border-radius:50%;animation:contact-sending-overlay-spin .75s linear infinite}@media(prefers-reduced-motion:reduce){.contact-sending-overlay__spinner{animation-duration:1.5s}}.contact-sending-overlay__text{margin:0;font-size:15px;font-weight:700;line-height:1.6;color:var(--dark)}.contact-success{background:var(--white);border-radius:var(--radius-md);padding:48px;text-align:center}.contact-success__message{font-size:18px;font-weight:700;color:var(--dark);margin-bottom:16px;line-height:1.8}.contact-success__sub{font-size:15px;color:var(--dark-soft);line-height:1.8}.contact-page{position:relative}.contact-desc{color:var(--dark-soft);margin-bottom:32px;line-height:1.8}.diagnosis-complete-footer{display:flex;flex-direction:column;gap:10px;align-items:center;margin-top:20px;padding-top:16px;border-top:1px solid var(--light-gray)}.diagnosis-complete-footer__link{font-size:14px;color:var(--accent-dark);text-decoration:underline}.diagnosis-complete-footer__link--btn{background:none;border:none;cursor:pointer;font-family:inherit}.diagnosis-complete-footer__link--btn:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px}.diagnosis-result-panel{margin-top:8px;padding:24px;border-radius:var(--radius-sm);background:var(--accent-light);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent)}.diagnosis-result-panel--compact{text-align:center;margin-bottom:6px;padding:16px 18px}.diagnosis-result-title{font-size:20px;font-weight:800;color:var(--dark);margin-bottom:10px;line-height:1.45}.diagnosis-result-panel--compact .diagnosis-result-title--hero{margin:0 0 7px}.diagnosis-result-title--hero{text-align:center;font-size:21px;margin-bottom:16px;font-weight:800;color:var(--dark);line-height:1.38}.diagnosis-result-estimate{margin:0;font-size:15px;font-weight:700;color:var(--dark-soft)}.diagnosis-result-kicker{font-size:12px;font-weight:700;letter-spacing:2px;color:var(--accent-dark);margin:0 0 8px;text-align:center}.diagnosis-result-label{font-size:12px;font-weight:700;letter-spacing:2px;color:var(--accent-dark);margin-bottom:6px}.diagnosis-result-lead{font-size:15px;color:var(--dark-soft);line-height:1.85;margin-bottom:16px}.diagnosis-result-list{margin:0 0 16px;padding-left:20px}.diagnosis-result-list li{list-style:disc;margin-bottom:8px;color:var(--dark-soft);font-size:15px;line-height:1.7}@media(max-width:480px){.diagnosis-result-panel{padding:20px}.diagnosis-result-panel--compact{padding:14px}.diagnosis-result-title{font-size:18px}.diagnosis-result-title--hero{font-size:17px}.diagnosis-result-estimate,.diagnosis-result-lead,.diagnosis-result-list li{font-size:14px}}.diagnosis-line-section--compact{margin-top:16px;padding-top:16px;border-top:1px solid color-mix(in srgb,var(--accent) 14%,transparent);text-align:center}.diagnosis-line-compact-lead{margin:0 auto 14px;max-width:576px;font-family:var(--font-heading);font-size:13px;font-weight:700;line-height:1.35;color:var(--dark);letter-spacing:1px}.diagnosis-line-section--compact .diagnosis-line-cta{margin-bottom:8px}.diagnosis-line-send-hint{margin:0 auto 12px;max-width:576px;font-size:13px;font-weight:600;line-height:1.45;color:var(--dark);opacity:.88}.diagnosis-line-qr-block{margin:0 auto 16px;max-width:320px;padding:16px 16px 14px;border-radius:16px;background:color-mix(in srgb,var(--white) 92%,var(--accent) 5%);border:1px solid color-mix(in srgb,var(--accent) 18%,transparent)}.diagnosis-line-qr-label{margin:0 0 10px;font-family:var(--font-heading);font-size:12px;font-weight:700;line-height:1.4;color:var(--dark);letter-spacing:1px}.diagnosis-line-qr-frame{display:flex;justify-content:center;padding:8px;margin:0 auto;border-radius:12px;background:var(--white);box-shadow:0 1px color-mix(in srgb,var(--dark) 8%,transparent)}.diagnosis-line-qr-svg{display:block;width:176px;height:auto;max-width:100%}.diagnosis-line-qr-caption{margin:10px 0 0;font-size:12px;font-weight:600;line-height:1.5;color:var(--mid-gray)}.diagnosis-result-footnote--after-line{text-align:center;margin-top:6px}.diagnosis-line-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;max-width:320px;margin:0 auto;padding:14px 22px;border-radius:60px;background:#06c755;color:var(--white);font-weight:700;font-size:16px;transition:transform .2s ease,filter .2s ease}.diagnosis-line-cta:hover{filter:brightness(1.05)}.diagnosis-line-cta__icon{font-size:22px;flex-shrink:0}.diagnosis-result-footnote{font-size:12px;color:var(--mid-gray);line-height:1.58;margin:0}@media(max-width:480px){.diagnosis-line-compact-lead{font-size:12px}}@media(max-width:360px){.diagnosis-line-compact-lead{white-space:normal;word-break:keep-all;font-size:12px;line-height:1.45}}@media(prefers-reduced-motion:reduce){.diagnosis-line-cta:hover{transform:none}}.diagnosis-card{background:var(--white);border-radius:var(--radius-md);padding:36px;border:1px solid var(--light-gray)}@media(max-width:960px){.diagnosis-card{padding:28px}}@media(max-width:480px){.diagnosis-card{padding:24px}}.diagnosis-card--result{text-align:center}.diagnosis-complete-badge{display:inline-block;font-size:12px;font-weight:700;letter-spacing:1px;color:var(--accent-dark);background:var(--accent-light);padding:6px 14px;border-radius:999px;margin-bottom:10px}.diagnosis-intro{color:var(--dark-soft);margin:-16px 0 24px;line-height:1.8;font-size:15px}.diagnosis-progress{font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:16px}.diagnosis-question{font-size:19px;font-weight:700;color:var(--dark);line-height:1.7;margin-bottom:28px}.diagnosis-actions{display:grid;grid-template-columns:1fr 1fr;gap:16px}.diagnosis-actions--choices{grid-template-columns:1fr;gap:12px}.diagnosis-btn{padding:16px 20px;border-radius:var(--radius-sm);font-size:16px;font-weight:700;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.diagnosis-btn--yes{background:var(--accent);color:var(--white);box-shadow:0 4px 16px color-mix(in srgb,var(--accent) 35%,transparent)}.diagnosis-btn--yes:hover{background:var(--accent-dark);transform:translateY(-1px)}.diagnosis-btn--no{background:var(--accent-light);color:var(--accent-dark);border:2px solid color-mix(in srgb,var(--accent) 35%,transparent)}.diagnosis-btn--no:hover{background:color-mix(in srgb,var(--accent-light) 85%,var(--white));transform:translateY(-1px)}.diagnosis-btn--choice{background:var(--accent);color:var(--white);text-align:left;line-height:1.55;font-weight:700}.diagnosis-btn--choice:hover{background:var(--accent-dark);transform:translateY(-1px)}.diagnosis-back{display:block;margin:24px auto 0;padding:8px;background:transparent;color:var(--mid-gray);font-size:14px;text-decoration:underline;text-underline-offset:4px}.diagnosis-back:hover{color:var(--dark-soft)}@media(max-width:960px){.diagnosis-question{font-size:17px}}@media(max-width:480px){.diagnosis-actions{grid-template-columns:1fr}.diagnosis-question{font-size:16px;margin-bottom:24px}.diagnosis-btn{padding:14px 18px;font-size:15px}}@media(prefers-reduced-motion:reduce){.diagnosis-btn--yes:hover,.diagnosis-btn--no:hover,.diagnosis-btn--choice:hover{transform:none}}.diagnosis-page{max-width:640px;padding-bottom:calc(var(--section-pad) + var(--bottom-nav-height))}:root{--home-text-small-size: 18px;--home-text-small-leading: 1.85}@media(max-width:960px){:root{--home-text-small-size: 17px}}@media(max-width:480px){:root{--home-text-small-size: 16px}}.home-text-small{font-size:var(--home-text-small-size);line-height:var(--home-text-small-leading)}.about-hero,.about-hero .section-heading{margin-bottom:0}.about-hero__tagline{display:block;max-width:640px;margin:64px auto 0;font-size:16px;font-weight:700;color:var(--dark);line-height:1.85;letter-spacing:1px}.about-points{max-width:var(--content-max);margin:48px auto 0;display:flex;flex-direction:column;gap:24px}.about-point{display:flex;align-items:flex-start;gap:24px;background:var(--white);border-radius:var(--radius-md);padding:32px 40px;border:1px solid color-mix(in srgb,var(--accent) 10%,transparent);box-shadow:0 4px 20px #1e293b0a;transition:box-shadow .35s cubic-bezier(.16,1,.3,1),transform .35s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.about-point:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--accent) 0%,var(--accent-dark) 100%);border-radius:var(--radius-sm) 0 0 var(--radius-sm);opacity:.85}.about-point:hover{box-shadow:0 14px 36px color-mix(in srgb,var(--accent) 12%,transparent);transform:translateY(-3px)}.about-point__num{font-family:var(--font-body);font-size:38px;font-weight:900;color:var(--accent);line-height:1;flex-shrink:0;opacity:.55}.about-point__body{flex:1;min-width:0}.about-point__title{font-size:19px;font-weight:700;color:var(--dark);margin-bottom:8px;line-height:1.45}.about-point__desc{font-size:14px;color:var(--dark-soft);line-height:1.9}@media(max-width:768px){.about-point{padding:24px;gap:16px}.about-point__num{font-size:29px}}@media(max-width:480px){.about-points{margin-top:40px;gap:20px}}section>.home-section-heading,section>.home-section-heading__divider{max-width:var(--content-max);margin-left:auto;margin-right:auto}.home-section-heading{text-align:center;margin-bottom:24px}.home-section-heading__ja{display:block;font-family:var(--font-heading);font-size:32px;font-weight:700;color:var(--dark);line-height:1.5}.home-section-heading__desc{display:block;max-width:640px;margin:16px auto 0;color:var(--dark-soft)}.home-section-heading__divider{width:60px;height:3px;background:var(--accent);margin:0 auto 48px;border-radius:2px}@media(max-width:960px){.home-section-heading__ja{font-size:28px;letter-spacing:2px}}@media(max-width:480px){.home-section-heading__divider{margin-bottom:48px}}.access-section__inner{max-width:var(--content-max);margin:48px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;position:relative;z-index:1}.access-info{display:flex;flex-direction:column;gap:24px}.access-info__name{font-family:var(--font-heading);font-size:21px;font-weight:700;color:var(--dark)}.access-info__item{display:flex;align-items:flex-start;gap:13px;font-size:14px;color:var(--dark-soft);line-height:1.7}.access-info__icon{flex-shrink:0;width:22px;height:22px;color:var(--accent);margin-top:2px}.access-map{border-radius:var(--radius-md);overflow:hidden;aspect-ratio:4 / 3;box-shadow:0 4px 16px #0000000f}.access-map iframe{width:100%;height:100%;border:none}@media(max-width:960px){.access-section__inner{gap:40px;margin-top:40px}}@media(max-width:768px){.access-section__inner{grid-template-columns:1fr}}@media(max-width:480px){.access-section__inner{gap:32px;margin-top:32px}.access-info{gap:20px}.access-info__name{font-size:19px}}.concept-section__tag{display:inline-flex;align-items:center;padding:9px 22px;border:1px solid color-mix(in srgb,var(--accent) 35%,var(--light-gray));border-radius:999px;font-size:14px;font-weight:600;color:var(--accent-dark);letter-spacing:1px;background:var(--accent-light);font-family:var(--font-heading)}@media(max-width:960px){.concept-section__tag{font-size:13px;padding:8px 18px}}@media(max-width:480px){.concept-section__tag{box-sizing:border-box;width:100%;min-width:0;justify-content:center;text-align:center;padding:7px 10px;font-size:16px}}.concept-section__tags{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 12px;max-width:832px}@media(max-width:480px){.concept-section__tags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;max-width:100%;justify-content:stretch}}.concept-section__inner{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:8px;gap:20px}.concept-section__title{margin:44px 0 28px;font-family:var(--font-heading);font-size:48px;font-weight:700;color:var(--dark);line-height:1.35;letter-spacing:2px;padding:12px 0}@media(max-width:960px){.concept-section__title{margin:36px 0 24px;font-size:36px;letter-spacing:1px}}@media(max-width:480px){.concept-section__title{margin:28px 0 20px;font-size:28px}}.concept-section__text{margin:0;max-width:640px;line-height:2;color:var(--dark-soft)}.concept-section__text+.concept-section__text,.concept-section__quotes+.concept-section__text{margin-top:22px}@media(max-width:960px){.concept-section__text+.concept-section__text,.concept-section__quotes+.concept-section__text{margin-top:18px}}@media(max-width:480px){.concept-section__text+.concept-section__text,.concept-section__quotes+.concept-section__text{margin-top:16px}}.concept-section__text--small{font-size:var(--home-text-small-size);line-height:var(--home-text-small-leading);text-align:justify}.concept-section__text--medium{font-size:22px}.concept-section__quotes{margin-top:48px;margin-bottom:40px;display:flex;flex-direction:column;gap:14px}.concept-section__text--quote{font-family:var(--font-heading);font-size:40px;font-weight:600;color:var(--dark);line-height:1.75;letter-spacing:0px}@media(max-width:960px){.concept-section__text--medium{font-size:20px}.concept-section__text--quote{font-size:32px}}@media(max-width:480px){.concept-section__text--medium{font-size:18px}.concept-section__text--quote{font-size:24px}}.cta-section{position:relative;overflow:hidden;text-align:center;background:var(--accent);color:var(--white)}.cta-section__parallax-bg,.cta-section__overlay{display:none}.cta-section__inner{max-width:600px;margin:0 auto;position:relative;z-index:2}.cta-section__title{font-family:var(--font-heading);font-size:29px;font-weight:700;color:var(--white);margin-bottom:16px;letter-spacing:1px}.cta-section__desc{font-size:15px;color:#ffffffd9;margin-bottom:32px;line-height:1.8}.cta-section__phone{display:flex;flex-direction:column;align-items:center;gap:6px;margin-bottom:32px}.cta-section__phone-number{font-family:var(--font-body);font-size:40px;font-weight:700;color:var(--white);letter-spacing:1px;transition:opacity .3s}.cta-section__phone-number:hover{opacity:.8}.cta-section__phone-label{font-size:13px;color:#ffffffb3}.cta-section__btn{margin-top:8px}.cta-section__btn.free-diagnosis-cta{background:var(--white);color:var(--accent-dark);box-shadow:0 4px 20px #0000001f}.cta-section__btn.free-diagnosis-cta:hover{background:var(--accent-light);color:var(--accent-dark)}@media(max-width:960px){.cta-section__phone-number{font-size:34px}}@media(max-width:480px){.cta-section__phone-number{font-size:29px}.cta-section__desc{font-size:14px;margin-bottom:28px}}.diagnosis-banner{position:relative;padding:0;overflow:hidden;min-height:340px;display:flex;align-items:center;justify-content:center}.diagnosis-banner__bg{position:absolute;left:0;right:0;top:-20%;height:140%;background-image:url(/images/shop/shop_01.jpg);background-size:cover;background-position:center 40%;transition:transform .1s linear}.diagnosis-banner__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#1e293bb3,#3d7a6ca6)}.diagnosis-banner__inner{position:relative;z-index:2;text-align:center;padding:64px var(--side-pad);max-width:640px}.diagnosis-banner__title{font-family:var(--font-heading);font-size:40px;font-weight:700;color:var(--white);line-height:1.6;margin-bottom:16px;letter-spacing:1px}.diagnosis-banner__desc{color:var(--light-gray);font-size:16px;line-height:1.8;margin-bottom:32px}.diagnosis-banner__btn{display:inline-flex;align-items:center;gap:8px;background:var(--orange);color:var(--white);padding:16px 40px;border-radius:60px;font-weight:700;font-size:18px;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 20px #e8a87c66}.diagnosis-banner__btn-icon{font-size:19px}@media(max-width:960px){.diagnosis-banner__inner{padding:56px var(--side-pad)}.diagnosis-banner__title{font-size:28px}}@media(max-width:480px){.diagnosis-banner{min-height:280px}.diagnosis-banner__inner{padding:48px var(--side-pad-sp)}.diagnosis-banner__desc{font-size:14px;margin-bottom:28px}}.director-content{max-width:var(--content-max);margin:0 auto;display:grid;grid-template-columns:280px 1fr;gap:48px;padding:32px 0;align-items:start}.director-photo{display:flex;flex-direction:column;align-items:center;gap:16px;position:sticky;top:calc(var(--header-height) + 32px)}.director-photo__wrap{width:240px;height:240px;border-radius:50%;overflow:hidden;box-shadow:0 8px 24px #00000014}.director-photo__img{width:100%;height:100%;object-fit:cover}.director-namecard{display:flex;flex-direction:column;align-items:center;gap:2px}.director-namecard__role{font-size:13px;font-weight:700;color:var(--accent);letter-spacing:1px}.director-namecard__name{font-family:var(--font-heading);font-size:24px;font-weight:700;color:var(--dark);letter-spacing:2px}.director-story{display:flex;flex-direction:column;gap:24px}.director-story__block{padding:0 32px}.director-story__heading{font-family:var(--font-heading);font-size:30px;font-weight:800;color:var(--dark);margin:0 0 16px;line-height:1.55;word-break:keep-all;line-break:strict;overflow-wrap:normal}.director-story__phrase-join{white-space:nowrap}.director-story__text{font-size:14px;color:var(--dark-soft);line-height:2}@media(max-width:960px){.director-content{gap:40px}.director-story__heading{font-size:26px}}@media(max-width:768px){.director-content{grid-template-columns:1fr;gap:32px}.director-photo{position:static;flex-direction:row;gap:19px}.director-photo__wrap{width:120px;height:120px}.director-namecard{align-items:flex-start}.director-story__block{padding:22px}.director-story__heading{font-size:22px}}@media(max-width:520px){.director-story__heading{font-size:19px}}.treatment-reason__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:56px;align-items:start;max-width:var(--content-max);margin:0 auto}.treatment-reason__media{position:relative}.treatment-reason__img{display:block;width:100%;max-width:420px;margin:0 auto;height:auto;aspect-ratio:2 / 3;object-fit:cover;object-position:center;border-radius:var(--radius-md)}.treatment-reason__content{text-align:left}.treatment-reason__lead{margin:0 0 12px;font-family:var(--font-heading);font-size:22px;font-weight:700;color:var(--dark);line-height:1.65;letter-spacing:1px}.treatment-reason__body{margin:0 0 16px;color:var(--dark-soft)}.treatment-reason__body:last-child{margin-bottom:0}.treatment-reason__initials{margin:0 0 16px;padding-left:18px;color:var(--dark-soft);list-style:disc}.treatment-reason__initials li{margin-bottom:3px}.treatment-reason__initials li:last-child{margin-bottom:0}@media(max-width:960px){.treatment-reason__grid{gap:40px}}@media(max-width:900px){.treatment-reason__grid{grid-template-columns:minmax(0,1fr);gap:32px}.treatment-reason__media{max-width:320px;margin:0 auto}}.hero{position:relative;width:100%;height:100vh;min-height:560px;padding-top:var(--header-height);overflow:hidden}.hero__body{position:relative;height:calc(100vh - var(--header-height));min-height:460px}@media(max-width:480px){.hero{min-height:480px}.hero__body{min-height:380px}}.hero__visual{position:relative;width:100%;height:100%;overflow:hidden}.hero__img-wrap{position:relative;width:100%;height:100%}.hero__img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center center}.hero__catchcopy{position:absolute;left:0;top:0;bottom:0;z-index:5;writing-mode:vertical-rl;display:flex;align-items:flex-end;padding:0;pointer-events:none}.hero__catchcopy-bg{background:var(--white);padding:40px 60px 40px 40px;height:100%}.hero__catchcopy-line{font-family:var(--font-heading);font-size:50px;font-weight:700;color:var(--dark);line-height:1;letter-spacing:20px;margin:0}@media(max-width:960px){.hero__catchcopy-bg{padding:24px 36px 24px 24px}.hero__catchcopy-line{padding:0;font-size:38px}}@media(max-width:480px){.hero__catchcopy-bg{padding:16px 20px 16px 0}.hero__catchcopy{left:-1px}.hero__catchcopy-line{font-size:32px}}.hero__access-info{position:absolute;right:0;bottom:20px;z-index:5;background:var(--accent);padding:24px 32px}@media(max-width:960px){.hero__access-info{bottom:calc(var(--bottom-nav-height) + 16px);padding:18px 24px}}@media(max-width:480px){.hero__access-info{padding:14px 18px}}.layout-main--desktop-diagnosis-cta .hero__access-info{bottom:calc(var(--desktop-diagnosis-bar-height) + 16px)}.hero__access-label{display:block;font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--white);margin-bottom:8px}.hero__access-text{font-size:20px;color:var(--white);line-height:1.7}@media(max-width:480px){.hero__access-text{font-size:12px}}.menu-section{background:var(--bg-alt)}.menu-section__inner{max-width:var(--content-max);margin:0 auto}.menu-offer{background:linear-gradient(135deg,var(--accent-light) 0%,#fff 100%);border:2px solid var(--accent);padding:40px;text-align:center;margin-bottom:48px;position:relative;overflow:hidden}.menu-offer__badge{display:inline-block;background:var(--orange);color:var(--white);font-size:12px;font-weight:700;padding:5px 19px;border-radius:60px;margin-bottom:16px;letter-spacing:1px}.menu-offer__title{font-family:var(--font-heading);font-size:26px;font-weight:700;color:var(--dark);margin-bottom:8px}.menu-offer__original-price{font-size:14px;color:var(--mid-gray);text-decoration:line-through;margin-bottom:5px}.menu-offer__price{font-size:48px;font-weight:900;color:var(--orange-dark);line-height:1.2;margin-bottom:8px}.menu-offer__price small{font-size:23px;font-weight:600}.menu-offer__note{font-size:13px;color:var(--dark-soft)}.menu-offer__note-emphasis{display:inline-block;font-size:17px;font-weight:700;color:var(--dark);letter-spacing:1px}.reason-section__card,.reason-section__card-main{position:relative}.reason-section__media{position:relative;padding-top:50px}.reason-section__img{display:block;width:100%;aspect-ratio:3 / 2;object-fit:cover;object-position:center;border-radius:var(--radius-sm)}.reason-section__card-title{margin:16px 0 10px;font-family:var(--font-body);font-size:18px;font-weight:700;color:var(--dark);line-height:1.5}.reason-section__card-body{margin:0;font-size:var(--home-text-small-size);line-height:var(--home-text-small-leading);color:var(--dark-soft)}@media(max-width:960px){.reason-section__media{padding-top:42px}}@media(max-width:840px){.reason-section__media{padding-top:38px}}@media(max-width:480px){.reason-section__media{padding-top:34px}}.reason-section__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px;align-items:start}@media(max-width:960px){.reason-section__grid{gap:28px}}@media(max-width:840px){.reason-section__grid{grid-template-columns:1fr;max-width:448px;margin-left:auto;margin-right:auto;gap:24px}}.reason-section__commitment{margin-top:80px;padding-top:60px;border-top:1px solid var(--light-gray)}.reason-section__commit-heading{margin:0 0 12px;font-family:var(--font-heading);font-size:26px;font-weight:700;color:var(--dark);text-align:center;line-height:1.55}.reason-section__commit-lede{margin:0 0 28px;font-size:var(--home-text-small-size);line-height:var(--home-text-small-leading);color:var(--dark-soft);text-align:center}.reason-section__never-list{margin:0 auto;padding:0;list-style:none;max-width:608px}.reason-section__refs{margin:32px auto 0;padding:0;max-width:672px;font-size:9px;line-height:1.62;color:var(--mid-gray);text-align:center}.reason-section__refs p{margin:6px 0 0}.reason-section__refs p:first-child{margin-top:0}@media(max-width:960px){.reason-section__commitment{margin-top:64px;padding-top:48px}.reason-section__commit-heading{font-size:22px}}@media(max-width:480px){.reason-section__commitment{margin-top:52px;padding-top:40px}.reason-section__commit-heading{font-size:18px}.reason-section__refs{font-size:8px}}.reason-section__never-item{display:flex;gap:6px;align-items:flex-start;margin-bottom:14px;font-size:var(--home-text-small-size);line-height:var(--home-text-small-leading);color:var(--dark-soft)}.reason-section__never-item:last-child{margin-bottom:0}.reason-section__bullet{flex-shrink:0;color:var(--accent);font-weight:700;line-height:var(--home-text-small-leading)}.reason-section{background:var(--white)}.store-interior-section__inner{max-width:var(--content-max);margin:48px auto 0}.store-interior-section__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.store-interior-section__item{margin:0;padding:0}.store-interior-section__figure{margin:0;border-radius:var(--radius-sm);overflow:hidden}.store-interior-section__img{display:block;width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover}@media(max-width:960px){.store-interior-section__inner{margin-top:40px}.store-interior-section__grid{gap:20px}}@media(max-width:768px){.store-interior-section__grid{grid-template-columns:1fr;gap:20px}}@media(max-width:480px){.store-interior-section__inner{margin-top:32px}.store-interior-section__grid{gap:16px}}.testimonials-section{background:var(--bg-alt)}.testimonials-grid{max-width:var(--content-max);margin:48px auto 0;display:grid;grid-template-columns:1fr;gap:24px}.testimonial-card{background:var(--white);border-radius:var(--radius-md);padding:32px;display:flex;flex-direction:column;gap:16px;box-shadow:0 2px 8px #00000008;transition:box-shadow .3s,transform .3s}.testimonial-card:hover{box-shadow:0 8px 24px #0000000f;transform:translateY(-2px)}.testimonial-card__stars{font-size:18px;color:var(--orange);letter-spacing:2px}.testimonial-card__text{font-size:14px;color:var(--dark-soft);line-height:1.9;flex:1}.testimonial-card__footer{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding-top:13px;border-top:1px solid var(--light-gray)}.testimonial-card__meta{font-size:13px;color:var(--mid-gray);font-weight:600}@media(max-width:480px){.testimonials-grid{margin-top:40px;gap:20px}.testimonial-card{padding:24px;gap:14px}}
