.header{position:sticky;top:0;z-index:50;background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.06)}.header__inner{display:flex;align-items:center;gap:16px;min-height:72px}.header__brand{display:flex;flex-direction:column;text-decoration:none;color:inherit}.header__logo{font-weight:700}.header__tagline{font-size:12px;opacity:.7}.header__nav{display:flex;gap:14px;margin-left:auto}.header__navLink{text-decoration:none;color:inherit;opacity:.85}.header__navLink:hover{opacity:1}.header__toggle{margin-left:12px;width:44px;height:44px;border-radius:999px;border:1px solid rgba(0,0,0,.12);background:#fff;cursor:pointer;display:grid;place-items:center}.header__toggleIcon{font-size:18px;line-height:1}@media(max-width:900px){.header{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:none}.header__inner{min-height:56px;justify-content:flex-end}.header__brand,.header__nav{display:none}}.footer{border-top:1px solid var(--color-border-light);background:var(--color-bg-base)}.footer__inner{padding-top:var(--space-section-md);padding-bottom:var(--space-section-md);display:grid;grid-template-columns:1fr;gap:var(--space-7)}.footer__brand{min-width:0}.footer__logo{font-family:var(--font-heading);letter-spacing:.06em;font-size:18px;line-height:1.2}.footer__desc{margin:var(--space-3) 0 0;color:var(--color-text-muted);line-height:var(--line-relaxed);max-width:56ch}.footer__sns{margin-top:var(--space-5)}.footer__info{display:grid;gap:var(--space-6)}.footer__block{border:1px solid var(--color-border-base);border-radius:var(--radius-lg);background:var(--color-bg-sub);padding:var(--space-6)}.footer__label{font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-3)}.footer__text{line-height:var(--line-relaxed);color:var(--color-text-secondary)}.footer__muted{color:var(--color-text-muted);margin-top:var(--space-2)}.footer__bottom{border-top:1px solid var(--color-border-light);background:var(--color-bg-base)}.footer__bottomInner{padding:var(--space-4) 0;display:flex;align-items:center;justify-content:space-between}.footer__copy{font-size:var(--text-sm);color:var(--color-text-muted)}@media(min-width:768px){.footer__inner{grid-template-columns:1.1fr .9fr;align-items:start;gap:var(--space-8)}.footer__info{gap:var(--space-5)}}.drawer{position:fixed;inset:0;z-index:200;pointer-events:none}.drawer.is-open{pointer-events:auto}.drawer__overlay{position:absolute;inset:0;background:#00000059;opacity:0;transition:opacity .22s ease}.drawer.is-open .drawer__overlay{opacity:1}.drawer__panel{position:absolute;top:0;right:0;height:100dvh;width:min(420px,92vw);background:#fff;box-shadow:-20px 0 40px #0000001f;transform:translate(100%);transition:transform .24s ease;display:flex;flex-direction:column;overflow:hidden}.drawer.is-open .drawer__panel{transform:translate(0)}.drawer__header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid rgba(0,0,0,.06)}.drawer__title{font-weight:700}.drawer__close{width:40px;height:40px;border-radius:999px;border:1px solid rgba(0,0,0,.12);background:#fff;cursor:pointer}.drawer__cta{padding:16px;display:grid;gap:10px}.drawer__ctaBtn{display:block;text-align:center;padding:12px 14px;border-radius:12px;text-decoration:none;background:#111;color:#fff}.drawer__ctaBtn.is-sub{background:#f3f3f3;color:#111}.drawer__nav{padding:8px 16px 16px;display:grid;gap:6px;overflow:auto}.drawer__link{text-decoration:none;color:inherit;padding:12px 10px;border-radius:10px}.drawer__link:hover{background:#0000000d}.drawer__footer{margin-top:auto;padding:16px;border-top:1px solid rgba(0,0,0,.06)}.drawer__meta{font-size:12px;opacity:.7}.hero__inner{display:grid;grid-template-columns:1fr}.hero__media{position:relative;overflow:hidden;background:transparent;border:none;border-radius:0;min-height:460px;--hero-text-w: 34%;--hero-down: 36px}.hero__imageLayer{position:absolute;inset:0;z-index:0;display:grid;justify-items:end;align-items:stretch;transform:translate(14%);overflow:hidden}.hero__mediaPlaceholder{width:112%;height:100%;display:grid;place-items:center;background:transparent;color:var(--color-text-muted)}.hero__image{position:absolute;inset:0;z-index:0;width:112%;height:100%;object-fit:cover;object-position:right center;opacity:0;transition:opacity 1.2s ease;transform:scale(1.09);will-change:transform,opacity}.hero__image.is-active{opacity:1;animation:heroKenBurns 9s linear both}@keyframes heroKenBurns{0%{transform:scale(1.02)}to{transform:scale(1.09)}}.hero__media:after{content:none!important}.hero__overlay{position:absolute;inset:0;z-index:1;display:grid;align-items:end;padding:var(--space-7) var(--space-6);background:transparent;border:none;border-radius:0;overflow:hidden}.hero__overlayInner{max-width:40ch;width:min(var(--hero-text-w),520px);transform:translateY(0)}.hero__overlayInner.is-in{transform:translateY(var(--hero-down))}@keyframes sowmi-wave{0%{color:transparent}20%{color:#e8c8aaf2}60%{color:#e8c8aaf2}to{color:transparent}}.hero__eyebrowTrack{display:inline-block;font-size:clamp(2.4rem,5.2vw,3.4rem);letter-spacing:.56em;text-transform:uppercase;font-weight:800;color:#121212b8;text-shadow:0 1px 0 rgba(255,255,255,.75),0 10px 22px rgba(0,0,0,.18)}@supports (-webkit-text-stroke: 1px rgba(0,0,0,.5)){.hero__eyebrowTrack{color:transparent;-webkit-text-stroke:1.25px rgba(25,25,25,.55);filter:drop-shadow(0 1px 0 rgba(255,255,255,.75)) drop-shadow(0 10px 20px rgba(0,0,0,.18));text-shadow:none}}.hero__eyebrowTrack--letters span{display:inline-block;opacity:0;transform:translateY(18px);transition-property:opacity,transform;transition-duration:5.2s;transition-timing-function:cubic-bezier(.2,0,.2,1);color:inherit;animation:none}.hero__overlayInner.is-in .hero__eyebrowTrack--letters span{opacity:1;transform:translateY(0)}@supports (-webkit-text-stroke: 1px rgba(0,0,0,.5)){.hero__eyebrowTrack--letters span{color:transparent;animation-name:sowmi-wave;animation-duration:1.4s;animation-timing-function:cubic-bezier(.2,0,.2,1);animation-fill-mode:forwards}}.hero__overlayInner.is-in .hero__eyebrowTrack--letters span:nth-child(1){transition-delay:.9s}.hero__overlayInner.is-in .hero__eyebrowTrack--letters span:nth-child(2){transition-delay:1.25s}.hero__overlayInner.is-in .hero__eyebrowTrack--letters span:nth-child(3){transition-delay:1.6s}.hero__overlayInner.is-in .hero__eyebrowTrack--letters span:nth-child(4){transition-delay:1.95s}.hero__overlayInner.is-in .hero__eyebrowTrack--letters span:nth-child(5){transition-delay:2.3s}.hero__overlayInner.is-in .hero__eyebrowTrack--letters span:nth-child(1){animation-delay:6.4s}.hero__overlayInner.is-in .hero__eyebrowTrack--letters span:nth-child(2){animation-delay:6.58s}.hero__overlayInner.is-in .hero__eyebrowTrack--letters span:nth-child(3){animation-delay:6.76s}.hero__overlayInner.is-in .hero__eyebrowTrack--letters span:nth-child(4){animation-delay:6.94s}.hero__overlayInner.is-in .hero__eyebrowTrack--letters span:nth-child(5){animation-delay:7.12s}.hero__eyebrow,.hero__title,.hero__lead{opacity:0;transform:translateY(14px);transition-property:opacity,transform;transition-timing-function:cubic-bezier(.2,.7,.2,1)}.hero__title{font-family:var(--font-heading);font-size:clamp(1.85rem,3vw,2.45rem);line-height:1.12;margin:var(--space-3) 0 0;color:#121212d1;text-shadow:0 1px 0 rgba(255,255,255,.7),0 10px 22px rgba(0,0,0,.18)}.hero__lead{margin:var(--space-3) 0 0;font-size:clamp(.95rem,1.2vw,1.05rem);letter-spacing:.1em;line-height:var(--line-relaxed);color:#12121294;text-shadow:0 1px 0 rgba(255,255,255,.65),0 10px 22px rgba(0,0,0,.14)}.hero__eyebrow{opacity:1;transform:none}.hero__overlayInner.is-in .hero__title{opacity:1;transform:translateY(0);transition-duration:8s;transition-delay:1.5s}.hero__overlayInner.is-in .hero__title--second{opacity:1;transform:translateY(0);transition-duration:8s;transition-delay:2.8s}.hero__overlayInner.is-in .hero__lead{opacity:1;transform:translateY(0);transition-duration:4s;transition-delay:3.5s}@media(max-width:1024px)and (min-width:600px){.hero__media{--hero-text-w: 48%}.hero__overlayInner{max-width:46ch}}@media(max-width:600px){.section.hero{padding-top:5px}.hero__inner{align-items:start}.hero__overlay{align-items:start;padding-top:24px}.hero__overlayInner{transform:translateY(0)}}@media(max-width:600px){.hero__media{--hero-text-w: 92%;--hero-down: 20px}.hero__imageLayer{transform:translate(28%)}.hero__overlayInner{width:min(92%,640px);max-width:none}}@media(max-width:480px){.hero__media{min-height:380px;--hero-text-w: 92%;--hero-down: 20px}.hero__overlay{padding:var(--space-6) var(--space-5)}.hero__imageLayer{transform:translate(28%)}.hero__mediaPlaceholder,.hero__image{width:106%}.hero__eyebrowTrack{font-size:clamp(1.5rem,7vw,2.1rem);letter-spacing:.34em}}.concept{position:relative;overflow:hidden;background:var(--color-bg-base)}.concept:before{content:"CONCEPT";position:absolute;top:-12px;right:-10px;font-family:var(--font-heading);font-size:96px;line-height:1;color:var(--color-border-base);opacity:.35;pointer-events:none}.concept__body{max-width:62ch}.concept__text{margin:0 0 var(--space-4);line-height:var(--line-relaxed)}.concept__text:last-child{margin-bottom:0}.method{position:relative;overflow:hidden;background:var(--color-bg-base)}.method:before{content:"METHOD";position:absolute;top:-12px;right:-10px;font-family:var(--font-heading);font-size:96px;line-height:1;color:var(--color-border-base);opacity:.35;pointer-events:none}.method__grid{display:grid;grid-template-columns:1fr;gap:var(--space-5)}.method__card{border:1px solid var(--color-border-base);border-radius:var(--radius-lg);background:var(--color-bg-base);box-shadow:var(--shadow-sm);padding:var(--space-6)}.method__subtitle{font-family:var(--font-heading);font-size:var(--text-lg);line-height:var(--line-tight);margin:0 0 var(--space-4);color:var(--color-text-primary)}.method__list{margin:0;padding-left:1.2em;color:var(--color-text-secondary);line-height:var(--line-relaxed);display:grid;gap:var(--space-2)}.method__note{margin:var(--space-4) 0 0;font-size:var(--text-sm)}@media(min-width:768px){.method__grid{grid-template-columns:1fr 1fr}}.therapist__inner{display:grid;grid-template-columns:1fr;gap:var(--space-6)}.therapist__media{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border-base);background:var(--color-bg-sub)}.therapist__mediaPlaceholder{min-height:320px;display:grid;place-items:center;color:var(--color-text-muted);background:linear-gradient(180deg,var(--color-bg-sub),var(--color-bg-base))}.therapist__card{border:1px solid var(--color-border-base);border-radius:var(--radius-lg);background:var(--color-bg-base);box-shadow:var(--shadow-sm);padding:var(--space-6)}.therapist__text{margin:0;color:var(--color-text-secondary);line-height:var(--line-relaxed)}.therapist__meta{margin:var(--space-4) 0 0;font-size:var(--text-sm)}@media(min-width:768px){.therapist__inner{grid-template-columns:.9fr 1.1fr;align-items:start;gap:var(--space-7)}.therapist__mediaPlaceholder{min-height:420px}}.menu__figure{margin:0;border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border-base);background:var(--color-bg-base);box-shadow:var(--shadow-sm)}.menu__image{width:100%;height:auto;display:block}.menu__note{margin-top:var(--space-6);font-size:var(--text-sm);line-height:var(--line-relaxed)}.features__grid{display:grid;grid-template-columns:1fr;gap:var(--space-5)}.features__card{border:1px solid var(--color-border-base);border-radius:var(--radius-lg);background:var(--color-bg-base);box-shadow:var(--shadow-sm);padding:var(--space-6)}.features__cardTitle{font-family:var(--font-heading);font-size:var(--text-lg);line-height:var(--line-tight);margin:0 0 var(--space-3);color:var(--color-text-primary)}.features__cardDesc{margin:0;color:var(--color-text-muted);line-height:var(--line-relaxed)}.features__flow{margin-top:var(--space-7);border-radius:var(--radius-lg);border:1px solid var(--color-border-base);background:var(--color-bg-sub);padding:var(--space-6)}.features__subtitle{font-family:var(--font-heading);font-size:var(--text-lg);line-height:var(--line-tight);margin:0 0 var(--space-4);color:var(--color-text-primary)}.features__steps{margin:0;padding-left:1.2em;color:var(--color-text-secondary);line-height:var(--line-relaxed);display:grid;gap:var(--space-2)}@media(min-width:768px){.features__grid{grid-template-columns:1fr 1fr 1fr}}.access{position:relative;overflow:hidden}.access:before{content:"ACCESS";position:absolute;top:-12px;right:-10px;font-family:var(--font-heading);font-size:96px;line-height:1;color:var(--color-border-base);opacity:.35;pointer-events:none}.access__grid{display:grid;grid-template-columns:1fr;gap:var(--space-6)}.access__info{display:grid;gap:var(--space-5)}.access__card{border:1px solid var(--color-border-base);border-radius:var(--radius-lg);background:var(--color-bg-base);box-shadow:var(--shadow-sm);padding:var(--space-6)}.access__subtitle{font-family:var(--font-heading);font-size:var(--text-lg);line-height:var(--line-tight);margin:0 0 var(--space-3);color:var(--color-text-primary)}.access__text{margin:0;line-height:var(--line-relaxed)}.access__map{border:1px solid var(--color-border-base);border-radius:var(--radius-lg);overflow:hidden;background:var(--color-bg-sub)}.access__mapPlaceholder{min-height:240px;display:grid;place-items:center;color:var(--color-text-muted);background:linear-gradient(180deg,var(--color-bg-sub),var(--color-bg-base))}.access__ctaCard{border:1px solid var(--color-border-base);border-radius:var(--radius-lg);background:var(--color-bg-base);box-shadow:var(--shadow-sm);padding:var(--space-6)}.access__reassure{margin:var(--space-4) 0 0;font-size:var(--text-sm);line-height:var(--line-relaxed)}@media(min-width:768px){.access__grid{grid-template-columns:1.1fr .9fr;align-items:start}.access__mapPlaceholder{min-height:320px}}.cta{display:grid;gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);background:var(--color-bg-base);box-shadow:var(--shadow-sm)}.cta__title{font-size:var(--text-lg);font-weight:var(--font-semibold)}.cta__desc{margin-top:var(--space-2);color:var(--color-text-secondary);line-height:var(--line-relaxed)}.cta__buttons{display:flex;flex-wrap:wrap;gap:var(--space-3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border-radius:var(--radius-pill);border:1px solid transparent;font-family:var(--font-base);font-weight:var(--font-semibold);text-decoration:none;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:transform var(--duration-fast) var(--ease-standard),background-color var(--duration-fast) var(--ease-standard),border-color var(--duration-fast) var(--ease-standard),color var(--duration-fast) var(--ease-standard)}.btn:active{transform:translateY(0)}.btn:focus-visible{outline:3px solid rgba(47,127,95,.35);outline-offset:2px}.btn--sm{padding:var(--space-2) var(--space-3);font-size:var(--text-sm)}.btn--md{padding:var(--space-2) var(--space-4);font-size:var(--text-sm)}.btn--lg{padding:var(--space-3) var(--space-5);font-size:var(--text-md)}.btn--primary{background:var(--color-accent-primary);color:#fff;box-shadow:var(--shadow-sm)}.btn--primary:hover{transform:translateY(-1px)}.btn--secondary{background:var(--color-bg-base);color:var(--color-text-primary);border-color:var(--color-border-base)}.btn--secondary:hover{border-color:var(--color-accent-secondary)}.btn--ghost{background:transparent;color:var(--color-text-primary);border-color:transparent}.btn--ghost:hover{background:var(--color-bg-sub)}.btn:disabled,.btn[aria-disabled=true]{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}:root{--color-bg-base: #ffffff;--color-bg-sub: #f7f7f7;--color-bg-accent: #eef6f0;--color-text-primary: #222222;--color-text-secondary: #555555;--color-text-muted: #888888;--color-accent-primary: #2f7f5f;--color-accent-secondary: #9fcfbc;--color-border-base: #dddddd;--color-border-light: #eeeeee;--color-link: var(--color-accent-primary);--color-link-hover: #256a50;--font-base: "Noto Sans JP", system-ui, -apple-system, BlinkMacSystemFont;--font-heading: "Noto Serif JP", serif;--text-xs: .75rem;--text-sm: .875rem;--text-md: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--text-3xl: 2.25rem;--line-tight: 1.2;--line-normal: 1.6;--line-relaxed: 1.9;--font-regular: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-section-sm: var(--space-6);--space-section-md: var(--space-7);--space-section-lg: var(--space-8);--space-container: 1.25rem;--container-max-width: 1120px;--radius-none: 0;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 16px;--radius-pill: 9999px;--shadow-none: none;--shadow-sm: 0 4px 12px rgba(0, 0, 0, .06);--shadow-md: 0 8px 24px rgba(0, 0, 0, .08);--shadow-lg: 0 16px 40px rgba(0, 0, 0, .12);--bp-sm: 480px;--bp-md: 768px;--bp-lg: 1024px;--duration-fast: .15s;--duration-base: .3s;--duration-slow: .6s;--ease-standard: ease;--ease-in: ease-in;--ease-out: ease-out}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-base);color:var(--color-text-primary);background:var(--color-bg-base);line-height:var(--line-normal)}img{max-width:100%;display:block}.container{width:min(1100px,100% - 2rem);margin:0 auto}.section{padding-top:var(--space-section-md);padding-bottom:var(--space-section-md)}@media(min-width:768px){.section{padding-top:var(--space-section-lg);padding-bottom:var(--space-section-lg)}}.sectionHead{margin-bottom:var(--space-6)}.sectionHead__eyebrow{display:inline-block;font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:var(--space-2)}.sectionHead__title{font-family:var(--font-heading);font-size:clamp(1.4rem,2.6vw,2rem);line-height:var(--line-tight);margin:0}.sectionHead__lead{margin:var(--space-3) 0 0;color:var(--color-text-muted);line-height:var(--line-relaxed);max-width:56ch}.sectionHead--center{text-align:center}.sectionHead--center .sectionHead__lead{margin-left:auto;margin-right:auto}.text-center{text-align:center}.text-muted{color:var(--color-text-muted)}html{scroll-behavior:smooth;scroll-padding-top:72px}
