:root{--ink:#30332f;--accent:#f43d94;--green:#465947;--mist:#f1f1ed;--paper:#fff;--serif:"Noto Serif CJK JP","Yu Mincho","Hiragino Mincho ProN",serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:#fff;font-family:var(--serif);font-size:16px;line-height:1.9;-webkit-text-size-adjust:100%}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.sample-bar{min-height:32px;padding:6px 12px;font:12px/20px sans-serif;text-align:center;letter-spacing:.04em;background:var(--green);color:white}.sample-bar a{text-decoration:underline}.hero{position:relative;height:calc(100svh - 32px);min-height:820px;isolation:isolate}.hero::before{content:"";position:absolute;right:0;top:0;width:37.8%;height:449.5px;background:radial-gradient(ellipse at 30% 80%,#fce4e8,transparent 70%),linear-gradient(135deg,#fcf5f1,#f2eef4 60%,#e7e6ee);z-index:-2}.hero-bg{position:absolute;left:0;bottom:0;width:56%;height:597.33px;overflow:hidden;z-index:-1}.hero-bg img{width:100%;height:100%;object-position:45% center}.hero-inner,.hero-copy{display:contents}.hero-name{position:absolute;top:30px;left:50%;transform:translateX(-50%);font-size:27px;letter-spacing:.16em;white-space:nowrap}.eyebrow{position:absolute;left:50%;top:82px;font-size:14px;letter-spacing:.2em;transform:translateX(-50%);color:var(--green);white-space:nowrap}.hero h1{position:absolute;left:45.5%;top:23%;font-size:114.286px;line-height:1.125;letter-spacing:.05em;color:var(--accent);font-weight:400}.headline-line{display:block;font-size:80px;line-height:1.3;letter-spacing:.025em;white-space:nowrap}.healing{color:var(--green)}.hero-copy>p{position:absolute;top:calc(23% + 365px);left:50%;width:40%;font-size:16px;line-height:1.95;letter-spacing:.04em}.hero-notes{position:absolute;left:50%;top:calc(23% + 500px);width:37%;display:flex;flex-wrap:wrap;gap:4px 20px;max-width:480px;font-size:15px;color:var(--green)}.hero-notes span{border-bottom:1px solid #b7bfb4;white-space:nowrap;padding-bottom:3px}.hero-call{position:fixed;z-index:30;right:20px;bottom:20px;width:130px;height:130px;border-radius:50%;background:var(--ink);color:white;font-size:14px;line-height:1.8;text-align:center;display:grid;place-items:center;padding:28px;transition:transform .35s}.hero-call:before{content:"";position:absolute;inset:8px;border:1px dashed #aaa;border-radius:50%;animation:orbit 10s linear infinite}.hero-call:hover{transform:scale(1.06)}.hero-call:hover:before{animation-play-state:paused}.wrap{width:71.4286%;max-width:1140px;margin:0 auto}.section{position:relative;margin-top:114.286px}.label{font-family:Georgia,serif;font-size:68.5714px;line-height:1;letter-spacing:.05em;color:var(--accent);display:block;margin:0 0 38.095px}.title{font-size:24.381px;line-height:1.875;letter-spacing:.1em;margin-bottom:19.048px;font-weight:500}.lead{font-size:16px;line-height:2;letter-spacing:.035em}.philosophy{padding:0 0 85px;overflow:hidden}.philosophy>.wrap{display:grid;grid-template-columns:1fr 1fr;align-items:start;row-gap:75px}.philosophy-grid{display:contents}.philosophy-card{padding-top:45px;grid-column:1;grid-row:1;padding-right:26px}.philosophy-card strong{font-weight:500;color:var(--green)}.gallery-shell{grid-column:2;grid-row:1;position:relative;height:610px;padding-top:23px}.main-photo{position:relative;width:66.67%;height:457.125px;z-index:2;margin-top:90px}.main-photo img{width:100%;height:100%;object-position:49% center}.photo-note{font-size:13px;line-height:1.75;letter-spacing:.04em;margin-top:12px}.sub-stack{position:absolute;right:-14.2857vw;top:0;width:20vw;display:grid;gap:30px}.sub-photo{position:relative;width:100%}.sub-photo img{width:100%;height:210px;object-position:center}.sub-photo .photo-note{padding-right:20px;font-size:13px}.pillars{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.pillar{border-top:1px solid #afb7aa;padding-top:22px}.pillar h3{font-size:19px;color:var(--green);margin-bottom:12px}.pillar p{font-size:15px;line-height:2}.pricing{padding:114px 0 125px;background:var(--mist);margin-top:0}.pricing-area{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;align-items:start}.price-intro{padding-right:20px}.price-intro .label{margin-bottom:24px}.price-intro .title{font-size:24px;letter-spacing:.04em}.price-intro p{font-size:15px;line-height:2}.cards{display:contents}.card{position:relative;min-height:480px;display:flex;flex-direction:column;justify-content:flex-end;padding:28px 18px;background:#e2e7dd;isolation:isolate}.card:nth-child(2){margin-top:38.095px;background:#e8d7c9}.card:nth-child(3){background:#dfe5e6}.card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(250,250,246,.97) 5%,rgba(250,250,246,.87) 52%,transparent 85%),url('img/02.jpg') center/cover}.card:nth-child(2)::before{background-image:linear-gradient(0deg,rgba(250,246,241,.97) 5%,rgba(250,246,241,.87) 52%,transparent 85%),url('img/04.jpg')}.card:nth-child(3)::before{background-image:linear-gradient(0deg,rgba(246,247,245,.97) 5%,rgba(246,247,245,.87) 52%,transparent 85%),url('img/01.jpg')}.card h3{font-size:18px;letter-spacing:.1em}.price{font-family:Georgia,var(--serif);font-size:34px;line-height:1.4;color:var(--accent);margin:20px 0}.card p:last-child{font-size:15px;line-height:1.9}.treatment-flow{min-height:748px;padding:114.286px 0;margin:0;background:#f9f9f7}.treatment-flow>.wrap{display:grid;grid-template-columns:25% 75%}.treatment-flow .label{grid-column:1;grid-row:1}.treatment-flow .title{grid-column:2;grid-row:1;margin-left:50%;font-size:24px}.treatment-flow .lead{grid-column:2;grid-row:2;margin-left:50%;font-size:15px;margin-top:-20px}.scroll-wrap{grid-column:2;grid-row:3;margin-top:45px}.emaki{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 23px}.step{border-top:1px solid #b3baaf;padding-top:20px}.num{font-family:Georgia,serif;font-size:28px;color:var(--accent);letter-spacing:.02em;display:block;margin-bottom:22px}.step h3{font-size:17px;margin-bottom:10px}.step p{font-size:15px;line-height:1.9}.greeting{margin:0;padding:100px 0 0}.greeting>.wrap{width:100%;max-width:none}.letter{position:relative;min-height:742.39px;padding:155px 14.2857% 115px 50%;isolation:isolate}.letter:before{content:"";position:absolute;left:0;top:100px;width:42%;height:519.05px;background:url('img/04.jpg') center/cover;z-index:-1}.letter:after{content:"";position:absolute;right:0;top:0;width:31%;height:224.59px;background:linear-gradient(130deg,#f8e7ef,#e8edf0);z-index:-2}.letter .label{margin-bottom:34px}.letter .title{font-size:24px;margin-bottom:10px}.letter h3{font-size:20px;line-height:1.9;margin-bottom:22px}.letter p{font-size:15px;line-height:2;margin-bottom:18px}.info-grid{width:71.4286%;margin:50px auto 90px;display:grid;grid-template-columns:1fr 1fr;gap:70px}.info-card{min-width:0}.info-card .label{font-size:52px}.info-card .title{font-size:24px}.info-list{border-top:1px solid #adb6a6}.info-row{display:grid;grid-template-columns:95px 1fr;gap:12px;padding:17px 0;border-bottom:1px solid #ddd;font-size:15px;line-height:1.9}.info-row strong{font-weight:500;color:var(--green)}.cta-box{padding:25px 0;font-size:15px}.cta-box p{margin-bottom:14px}.cta-box>span{color:var(--green);border-bottom:1px solid;padding-bottom:8px}footer{min-height:362px;padding:84px 14.2857% 80px;background:#f9f9f7}footer>div{font-size:28px;letter-spacing:.16em;margin-bottom:45px}footer small{font-size:13px;line-height:2;display:block;max-width:800px}footer a{text-decoration:underline}#noren-direct-reception{margin:0 auto 100px!important;max-width:1040px}.reveal{opacity:1}.motion-ready .philosophy-card,.motion-ready .pillars,.motion-ready .gallery-shell,.motion-ready .price-intro,.motion-ready .letter,.motion-ready .info-card,.motion-ready .scroll-wrap{opacity:0;transform:translateY(25px);transition:opacity .85s ease,transform .85s ease}.motion-ready .is-visible{opacity:1;transform:none}.hero h1 .headline-line{animation:rise 1.2s cubic-bezier(.2,.7,.2,1) both}.hero h1 .headline-line:nth-child(2){animation-delay:.12s}.hero h1 .headline-line:nth-child(3){animation-delay:.24s}@keyframes rise{from{opacity:0;transform:translateY(45px)}to{opacity:1;transform:translateY(0)}}@keyframes orbit{to{transform:rotate(360deg)}}
@media(min-width:1500px){.headline-line{font-size:6.25vw}.hero h1{font-size:8.9286vw}.hero-copy>p{max-width:650px}.hero-bg{height:46.67vw}.hero::before{height:35.12vw}}
@media(max-width:1100px) and (min-width:701px){.headline-line{font-size:6.25vw}.hero h1{font-size:8.9286vw}.hero-copy>p{left:50%;top:calc(23% + 280px);width:45%}.hero-notes{top:calc(23% + 430px);width:43%}.wrap{width:86%}.sub-stack{right:-7vw;width:22vw}.philosophy-card{padding-right:25px}.label{font-size:56px}.price{font-size:27px}.info-grid{width:86%;gap:40px}.letter{padding-right:7%}.hero-call{width:110px;height:110px;right:15px;bottom:15px}}
@media(max-width:700px){html{scroll-padding-top:15px}.sample-bar{font-size:10px;line-height:17px;padding:6px 8px;min-height:46px}.hero{height:auto;min-height:0;padding-top:400px;padding-bottom:40px}.hero::before{width:43%;height:247px}.hero-bg{top:90px;bottom:auto;width:90%;height:292px}.hero-bg img{object-position:center}.hero-name{top:27px;font-size:22px;letter-spacing:.13em}.eyebrow{top:61px;font-size:10px;letter-spacing:.15em}.hero h1{position:relative;top:auto;left:auto;font-size:48px;margin:20px 24px 0;line-height:1.3;letter-spacing:0}.headline-line{font-size:36px;line-height:1.6;letter-spacing:.025em;white-space:normal}.hero-copy>p{position:static;width:auto;margin:30px 24px 0;font-size:15px;line-height:2}.hero-notes{position:static;width:auto;max-width:none;margin:22px 24px 0;font-size:15px;gap:10px 18px}.hero-call{border-radius:0;left:0;right:0;bottom:0;width:100%;height:56px;padding:0;font-size:15px}.hero-call:before{display:none}.hero-call:hover{transform:none}.wrap{width:auto;margin:0 24px}.section{margin-top:0}.philosophy{padding:70px 0}.philosophy>.wrap{display:flex;flex-direction:column;gap:42px}.philosophy-card{padding:0}.label{font-size:48px;line-height:1.2;letter-spacing:.035em;margin-bottom:28px}.title{font-size:23px;line-height:1.8;letter-spacing:.04em}.lead{font-size:15px;line-height:2}.gallery-shell{order:2;width:100%;height:auto;padding:0;display:grid;grid-template-columns:1fr;gap:28px}.main-photo{margin:0;width:85%;height:auto}.main-photo img{height:400px}.photo-note{font-size:15px;line-height:1.8}.sub-stack{position:static;width:100%;grid-template-columns:1fr 1fr;gap:16px}.sub-photo img{height:205px}.sub-photo .photo-note{font-size:15px;padding:0}.pillars{order:3;display:block;width:100%}.pillar{padding:24px 0 30px}.pillar h3{font-size:19px}.pillar p{font-size:15px}.pricing{padding:65px 0 75px}.pricing-area{grid-template-columns:1fr;gap:28px}.price-intro{padding:0 0 8px}.price-intro .title{font-size:23px}.card{min-height:350px;padding:30px}.card:nth-child(2){margin-top:0}.card h3{font-size:20px}.price{font-size:42px;margin:10px 0}.card p:last-child{font-size:15px}.treatment-flow{padding:70px 0;min-height:0}.treatment-flow>.wrap{display:block}.treatment-flow .title,.treatment-flow .lead{margin:0 0 20px}.scroll-wrap{margin:35px 0 0}.emaki{grid-template-columns:1fr 1fr;gap:30px 24px}.num{font-size:24px;white-space:nowrap}.step h3{font-size:17px}.step p{font-size:15px}.greeting{padding:60px 0 0}.letter{padding:355px 24px 50px;min-height:0}.letter:before{top:20px;width:88%;height:300px}.letter:after{height:220px;width:52%}.letter .label{font-size:46px}.letter .title{font-size:24px}.letter h3{font-size:19px}.letter p{font-size:15px}.info-grid{width:auto;margin:20px 24px 50px;display:block}.info-card{margin:0 0 55px}.info-card .label{font-size:48px;margin-bottom:20px}.info-row{grid-template-columns:80px 1fr;font-size:15px;gap:10px}.cta-box{font-size:15px}#noren-direct-reception{margin-bottom:60px!important}footer{padding:60px 24px 110px;min-height:0}footer>div{font-size:24px;margin-bottom:30px}footer small{font-size:13px}body{padding-bottom:56px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}}

/* Keep the full-width greeting wrapper inside the mobile viewport. */
.greeting>.wrap{margin-left:0;margin-right:0}
@media(prefers-reduced-motion:no-preference){.hero-bg img{transform:translateY(var(--photo-shift,0px)) scale(1.045)}}

/* Match the reference's English display title followed by Japanese copy. */
.hero h1.clinic-type{left:50%;top:25%;font-family:Georgia,serif;font-size:114.286px;line-height:1;letter-spacing:5.71429px;margin:0;font-weight:400}
.clinic-type>span{display:block;font-size:80px;line-height:90px;letter-spacing:4px;animation:rise 1.2s cubic-bezier(.2,.7,.2,1) both}
.clinic-type>span:nth-child(2){animation-delay:.12s}
.hero-message{position:absolute;left:50%;top:calc(25% + 215px);font-size:30px;line-height:1.65;color:var(--green);font-weight:400}
.hero-message .headline-line{font-size:30px;line-height:1.65;letter-spacing:.08em}
.hero-copy>p{top:calc(25% + 408px)}
.hero-notes{top:calc(25% + 540px)}
@media(min-width:1500px){.hero h1.clinic-type{font-size:8.9286vw}.clinic-type>span{font-size:6.25vw;line-height:7.03125vw}}
@media(max-width:1100px) and (min-width:701px){.hero h1.clinic-type{font-size:8.9286vw}.clinic-type>span{font-size:6.25vw;line-height:7.03125vw}.hero-message{top:calc(25% + 180px)}.hero-copy>p{top:calc(25% + 360px)}.hero-notes{top:calc(25% + 510px)}}
@media(max-width:700px){.hero h1.clinic-type{position:static;margin:20px 24px 0;font-size:48px;line-height:1.3}.clinic-type>span{font-size:36px;line-height:47px;letter-spacing:1.8px}.hero-message{position:static;margin:26px 24px 0;font-size:22px}.hero-message .headline-line{font-size:22px;line-height:1.8;letter-spacing:.04em}.hero-copy>p{position:static}.hero-notes{position:static}}
@media(min-width:1101px){.hero-copy>p{width:36%}}
