@font-face{font-family:'Cormorant Infant';font-style:normal;font-weight:300;font-display:block;src:url('fonts/cormorant-light.ttf') format('truetype')}@font-face{font-family:'Cormorant Infant';font-style:normal;font-weight:400;font-display:block;src:url('fonts/cormorant-regular.ttf') format('truetype')}
:root{--paper:#f1f1ef;--ink:#58635f;--accent:#71816f;--rule:#c4cbc5;--serif:'Cormorant Infant','Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-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%}h1,h2,h3,p,figure{margin:0}a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.sample-bar{position:relative;z-index:3;background:var(--paper);font-size:12px;line-height:1.5;padding:6px 20px}.sample-bar .wrap{display:flex;justify-content:center;gap:16px}.sample-bar a{text-decoration:underline}.hero{position:relative;isolation:isolate;min-height:1173px;color:#fff;overflow:hidden}.hero-bg{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(36,51,44,.54),rgba(38,52,44,.14)),url('img/04.jpg') 62% 40%/cover no-repeat}.hero-inner{max-width:1280px;margin:auto;position:relative;padding:280px 0 70px 11.5%}.hero-card{width:100%}.hero-copy{position:relative}.brand-note{font:300 160px/.93 var(--serif);letter-spacing:8px;width:960px;max-width:95%;margin-left:0}.brand-note span:last-child{display:block;max-width:900px}.dot{display:none}.hero .eyebrow{position:absolute;top:-180px;left:0;font-size:15px;letter-spacing:.16em}.hero .clinic-name{position:absolute;top:-211px;left:0;font-size:21px;line-height:1.5;font-weight:500;letter-spacing:.1em}.hero .clinic-name br{display:none}.catch{margin-top:38px;max-width:650px;font-size:21.6px;line-height:1.7;letter-spacing:.2em}.hero-lead{font-size:15px;line-height:2;max-width:520px;margin-top:46px}.hero-points{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;width:880px;max-width:88%;border-top:1px solid #ffffff66;margin-top:45px;padding-top:24px;font-size:15px}.hero-points strong{font-family:var(--serif);font-size:24px;font-weight:400;display:block;letter-spacing:1px}.scroll-mark{margin-top:48px;letter-spacing:.1em;font-size:13px;display:flex;align-items:center;gap:20px}.scroll-mark:before{content:'';width:80px;height:1px;background:currentColor}.hero-side{display:none}.wrap,.intro-panel{width:880px;max-width:calc(100% - 64px);margin:auto}.intro-band{padding:170px 0 230px;min-height:1294px}.intro-layout{display:block}.eyebrow{font:300 144px/1 var(--serif);letter-spacing:4.32px;color:var(--ink);overflow-wrap:normal}.intro-text h2:not(.eyebrow){font-size:25px;font-weight:400;line-height:1.9;letter-spacing:.13em;margin:30px 0 40px}.intro-text>p:last-child{margin-left:auto;width:520px;max-width:100%;font-size:16px;line-height:2.2}.care-list{display:grid;grid-template-columns:1fr 1fr;gap:36px 56px;margin-top:100px}.care-item{padding-top:24px;border-top:1px solid var(--rule)}.care-item strong{display:block;font-weight:500;font-size:19px;letter-spacing:.05em;margin-bottom:16px}.care-item span{font-size:15px;line-height:2}.section-head{margin-bottom:60px}.section-head h2:not(.eyebrow){font-size:18px;font-weight:500;letter-spacing:.28em;line-height:1.8;margin-top:18px}.section-head>p:last-child{max-width:570px;font-size:15px;line-height:2.1;margin-top:36px}#menu{padding:160px 0 80px;min-height:1014px;border-top:1px solid var(--rule)}#menu .eyebrow{font-size:144px;white-space:nowrap;letter-spacing:-2px}.menu-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 60px}.menu-card{padding:30px 0;border-bottom:1px solid var(--rule);position:relative}.menu-card .label{font:300 36px/1.2 var(--serif);letter-spacing:1px}.menu-card h3{font-weight:500;font-size:19px;letter-spacing:.1em;margin-top:12px}.menu-card p{font-size:15px;margin-top:18px;line-height:2}.price{font-size:15px;margin-top:22px;color:#756c49}.menu-card:hover{transform:translateY(-4px);transition:transform .4s}#gallery{padding:148px 0 110px;min-height:1066px}.gallery-wrap{display:grid;grid-template-columns:1.25fr 1fr;gap:48px;align-items:start}.gallery-main{margin-top:100px}.gallery-main img{width:100%;height:530px;object-fit:cover}.gallery-caption{font-size:15px;line-height:2;margin-top:22px}.gallery-stack{display:grid;gap:50px}.gallery-stack img{height:270px;object-fit:cover;width:100%}.gallery-stack figcaption{font-size:15px;margin-top:15px}#guide{padding:176px 0 160px;min-height:940px;border-top:1px solid var(--rule)}#guide .eyebrow{font-size:144px;letter-spacing:-3px}.guide-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:60px}.box>.eyebrow{font-size:38px!important;letter-spacing:1px!important}.box>h2{font-size:21px;font-weight:400;margin:12px 0 28px}.hours-row{display:flex;justify-content:space-between;gap:12px;padding:18px 0;border-bottom:1px solid var(--rule);font-size:15px}.hours-row strong{font-weight:500}.hours-note{font-size:15px;line-height:2;margin-top:25px}.access-card address{font-size:16px;font-style:normal;line-height:2.2}.tel{font:300 30px/1.5 var(--serif);margin-top:35px}.tag{font-size:15px;margin-top:24px}footer{background:#68736d;color:white;padding:150px 0 170px;min-height:550px}.footer-inner{width:880px;max-width:calc(100% - 64px);margin:auto;font-size:15px;line-height:2.3}.footer-inner strong{font-size:27px;display:block;font-weight:400;letter-spacing:.12em;margin-bottom:40px}.footer-inner a{text-decoration:underline}#noren-direct-reception{padding:40px 0 80px}.motion-ready{opacity:0;transform:translateY(30px);transition:transform 1s ease,opacity 1s ease}.motion-ready.is-visible{opacity:1;transform:none}@media(min-width:1000px){.brand-note{animation:arrive 1.4s both}.hero-bg{animation:photo-in 2s both}}@keyframes arrive{from{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(0)}}@keyframes photo-in{from{transform:scale(1.04)}to{transform:scale(1)}}
@media(max-width:1000px){.hero-inner{padding-left:8%}.brand-note{font-size:12.5vw;letter-spacing:.04em}.hero-points{width:90%;max-width:90%}.eyebrow,#menu .eyebrow,#guide .eyebrow{font-size:11vw}.wrap,.intro-panel{width:calc(100% - 80px);max-width:none}.hero{min-height:1050px}.hero-inner{padding-top:230px}.hero .clinic-name{top:-170px}.hero .eyebrow{top:-130px;font-size:14px}.guide-grid{gap:35px}}
@media(max-width:600px){body{font-size:15px}.sample-bar{font-size:10px;padding:6px 10px}.sample-bar .wrap{display:block;width:100%;text-align:center}.sample-bar a{margin-left:8px}.hero{min-height:1000px}.hero-bg{background-position:66% center;background-image:linear-gradient(90deg,rgba(30,47,37,.62),rgba(38,52,44,.24)),url('img/04.jpg')}.hero-inner{padding:230px 24px 44px}.hero .clinic-name{font-size:17px;top:-170px;letter-spacing:.05em}.hero .eyebrow{top:-133px;font-size:12px}.brand-note{font-size:62px;line-height:1.02;letter-spacing:1.7px;max-width:100%;width:100%}.catch{font-size:16px;letter-spacing:.08em;line-height:1.9;margin-top:30px}.hero-lead{font-size:15px;line-height:2;margin-top:30px}.hero-points{width:100%;max-width:none;grid-template-columns:1fr 1fr;gap:20px 12px;margin-top:30px;padding-top:20px;font-size:15px}.hero-points strong{font-size:21px}.scroll-mark{font-size:12px;margin-top:30px}.wrap,.intro-panel{width:calc(100% - 48px);max-width:none}.intro-band{padding:100px 0;min-height:0}.eyebrow,#menu .eyebrow,#guide .eyebrow{font-size:64px;line-height:1;letter-spacing:0}.intro-text h2:not(.eyebrow){font-size:21px;line-height:1.9;letter-spacing:.03em;margin:25px 0 32px}.intro-text>p:last-child{font-size:15px;line-height:2.1}.care-list{grid-template-columns:1fr;gap:30px;margin-top:60px}.care-item strong{font-size:18px}.care-item span{font-size:15px}.section-head{margin-bottom:40px}.section-head h2:not(.eyebrow){font-size:17px;letter-spacing:.13em}.section-head>p:last-child{font-size:15px;line-height:2;margin-top:26px}#menu{padding:80px 0;min-height:0}#menu .eyebrow{font-size:57px;letter-spacing:-1px}.menu-grid{grid-template-columns:1fr}.menu-card{padding:28px 0}.menu-card h3{font-size:19px}#gallery{padding:75px 0;min-height:0}.gallery-wrap{grid-template-columns:1fr;gap:40px}.gallery-main{margin-top:0}.gallery-main img{height:400px}.gallery-stack{gap:40px}.gallery-stack img{height:270px}#guide{padding:90px 0;min-height:0}#guide .eyebrow{font-size:61px;letter-spacing:-2px}.guide-grid{grid-template-columns:1fr;gap:60px}.hours-row{flex-wrap:wrap}.footer-inner{max-width:calc(100% - 48px);font-size:15px}.footer-inner strong{font-size:21px}footer{min-height:0;padding:90px 0}.footer-inner>div{margin-top:25px}.motion-ready{transform:translateY(18px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.motion-ready{opacity:1;transform:none}}

/* Refinement from the loaded 1280x800 reference, not its loading frame. */
.hero .eyebrow{color:white}.brand-note span:last-child{max-width:none}.brand-note>.title-line{display:block}.brand-note .title-line{display:block;max-width:none}.brand-note{width:1030px;max-width:100%}
@media(min-width:1001px){.hero-inner{padding-top:500px;padding-left:15.625%;padding-right:45px;padding-bottom:45px}.hero .clinic-name{top:-430px}.hero .eyebrow{top:-395px}.catch{position:absolute;top:-110px;left:0;margin:0;font-size:21.6px;max-width:800px}.hero-bg{background-size:auto 145%;background-position:83% 32%}.hero-lead{margin-top:35px;max-width:520px}.hero-points{margin-top:25px;padding-top:20px}.scroll-mark{margin-top:24px}.hero{min-height:1310px}.brand-note{font-size:160px;letter-spacing:4px}}
@media(max-width:600px){.hero .eyebrow{font-size:15px}.brand-note{font-size:59px;letter-spacing:0}.brand-note .title-line{white-space:nowrap}.hero-inner{padding-top:220px}.hero-bg{background-position:68% center}.hero .clinic-name{top:-160px}.hero .eyebrow{top:-122px}}
#noren-direct-reception p{font-size:15px}
.intro-text>p:last-child{position:relative}.intro-text>p:last-child::before{content:'';position:absolute;left:-360px;top:0;width:300px;height:250px;background:url('img/01.jpg') 70% center/cover no-repeat}
@media(max-width:1000px){.intro-text>p:last-child::before{position:relative;display:block;left:auto;width:100%;height:280px;margin-bottom:30px}.intro-text>p:last-child{width:100%}}
@media(min-width:1001px){.hero-bg{background-size:auto 200%;background-position:85% 37%;filter:grayscale(.72);background-image:linear-gradient(90deg,rgba(44,58,54,.28),rgba(170,186,181,.12)),url('img/04.jpg')}.hero{min-height:1280px}.hero-inner{padding-top:480px;padding-bottom:30px}.hero .clinic-name{top:-410px}.hero .eyebrow{top:-375px}.hero-lead{margin-top:25px}.hero-points{margin-top:20px}.scroll-mark{margin-top:20px}}
@media(min-width:1001px){
 #menu{padding-bottom:40px}#menu .section-head{margin-bottom:40px}.menu-card{padding:22px 0}.menu-card p{margin-top:12px}.menu-card .price{margin-top:16px}
 #gallery{padding-bottom:20px}#gallery .section-head{margin-bottom:40px}.gallery-main{margin-top:80px}.gallery-main img{height:400px}.gallery-stack{gap:30px}.gallery-stack img{height:210px}
 #guide{padding-bottom:110px}#guide .section-head{margin-bottom:40px}
 footer{min-height:900px;padding:216px 0 288px}
}
@media(min-width:1001px){.hero-bg{background-image:linear-gradient(90deg,#8d9f9e 0%,rgba(141,159,158,.95) 24%,rgba(180,195,192,.72) 43%,rgba(229,235,233,.3) 78%),url('img/04.jpg');background-size:auto 240%;background-position:80% 33%;filter:grayscale(.3)}}
@media(min-width:1001px){.brand-note{letter-spacing:8px}}
/* Keep the photograph in the viewport while the hero copy scrolls, as in the reference. */
.hero-bg{position:sticky;top:0;inset:auto;height:100svh;margin-bottom:-100svh}
.hero-bg{top:0}
.hero{overflow:clip}

/* Retry: measured portrait framing; preserve the original four photographs. */
@media(min-width:1001px){.hero-bg{background-size:auto 280%;background-position:88% 35%;filter:grayscale(.5);background-image:linear-gradient(90deg,#768e94 0%,rgba(118,142,148,.97) 24%,rgba(170,192,195,.78) 43%,rgba(227,236,237,.5) 78%),url("img/04.jpg")}}
@media(max-width:600px){.hero-bg{background-image:linear-gradient(90deg,rgba(30,47,37,.76),rgba(38,52,44,.4)),url("img/04.jpg")}.brand-note{font-size:clamp(40px,15.12vw,59px)}}
@media(max-width:600px){#menu .eyebrow{font-size:clamp(49px,14.62vw,57px)}}

@media(min-width:1001px){.hero-bg{filter:grayscale(.7)}}
