:root{--ink:#252b24;--accent:#83a45b;--light:#acc785;--paper:#fff;--wrap:1120px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:#fff;font-family:'Zen Kaku Gothic New','Noto Sans CJK JP',sans-serif;font-size:16px;line-height:1.8;letter-spacing:.02em}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--accent);outline-offset:5px}img{display:block;max-width:100%;object-fit:cover}figure,p,h1,h2,h3,dl{margin:0}main{position:relative;background:#fff}.sample-bar{position:relative;z-index:5;background:#fff;color:var(--ink);font-size:12px;line-height:1.5;text-align:center}.sample-bar__inner{min-height:34px;padding:6px 12px;display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.sample-bar a{text-decoration:underline}
.hero{height:200svh;min-height:1440px;position:relative;color:white;background:#303a2b}.hero__image{position:sticky;top:0;height:100svh;min-height:720px;width:100%;overflow:hidden}.hero__image img{width:100%;height:100%;object-position:50% 45%;animation:photo-settle 1.8s ease-out both}.hero__image:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.03) 25%,rgba(17,26,13,.28) 100%)}.opening-frame{position:absolute;inset:0 0 auto;height:100svh;min-height:720px;overflow:hidden}.shop{position:absolute;top:16px;left:16px;width:700px;max-width:57%;height:52px;border-radius:40px;background:#fff;color:var(--ink);padding:6px 28px;font-size:26px;line-height:40px;font-weight:700;letter-spacing:.05em}.shop:after{content:'';position:absolute;right:25px;top:20px;width:18px;height:12px;border-block:1px solid var(--ink)}.opening-frame>.eyebrow{position:absolute;right:16px;top:16px;z-index:2;border-radius:40px;background:var(--ink);padding:15px 30px;font-family:Outfit,sans-serif;font-size:16px;font-weight:600;line-height:22px;letter-spacing:.02em}.lead-copy{position:absolute;left:5%;bottom:80px;width:90%;max-width:1152px;font-size:72px;font-weight:700;line-height:90px;letter-spacing:0;z-index:2;text-shadow:0 2px 16px #16250b22;animation:words-in 1.1s .15s both}.edge-rings{position:absolute;inset:0;pointer-events:none;opacity:.8}.edge-rings i{position:absolute;width:210px;height:210px;border:1px solid #ffffff80;border-radius:50%;left:calc(var(--i)*150px);top:-80px}.edge-rings i:nth-child(1){--i:0}.edge-rings i:nth-child(2){--i:1}.edge-rings i:nth-child(3){--i:6;background:var(--light);width:150px;height:150px;top:-85px}.edge-rings i:nth-child(4){--i:7}.edge-rings i:nth-child(5){left:-95px;top:auto;bottom:-60px;background:var(--accent)}.edge-rings i:nth-child(6){left:80px;top:auto;bottom:-130px}.edge-rings i:nth-child(7){left:auto;right:-90px;top:auto;bottom:80px}.edge-rings i:nth-child(8){left:auto;right:170px;top:auto;bottom:-125px;background:var(--light)}
.opening-message{height:100svh;min-height:720px;position:absolute;top:50%;left:0;width:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#15200ce0;padding:80px 24px}.intro,.hero-note,.chip-row{width:560px;max-width:100%}.intro,.hero-note p{font-size:18px;font-weight:500;line-height:32.4px;letter-spacing:.36px}.hero-note p{margin-top:36px}.chip-row{display:flex;gap:24px;margin-top:36px}.chip{font-size:15px;border-bottom:1px solid #fff8;padding-bottom:6px}.booking-dot{position:fixed;z-index:20;right:50px;bottom:24px;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--ink);color:#fff;font-size:12px;font-weight:700;line-height:18px;letter-spacing:.24px;box-shadow:0 0 0 1px #fff6;transition:transform .25s}.booking-dot:hover{transform:scale(1.08)}
main>section{padding:100px max(40px,calc((100vw - 1120px)/2));position:relative}.section-head{text-align:center;margin:0 auto 40px;max-width:1120px}.section-title{font-size:16px;line-height:24px;letter-spacing:.32px;font-weight:500;color:#65853f}.section-title .script{display:block;color:var(--ink);font-family:Outfit,sans-serif;font-size:40px;font-weight:700;line-height:40px;letter-spacing:.8px;margin-bottom:8px}.section-note{max-width:680px;margin:24px auto 0;font-size:16px;line-height:1.8;color:#51594c}.story{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}.story-card{font-size:16px;line-height:1.9}.story-card p+p{margin-top:24px}.story-photo img{width:100%;height:380px;border-radius:8px}.story-photo{overflow:hidden;border-radius:8px}.story-photo img,.care-card img,.photo-card img{transition:transform .6s ease}.story-photo:hover img,.care-card:hover img,.photo-card:hover img{transform:scale(1.04)}#story{min-height:715px}.care-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.care-card{min-width:0;overflow:hidden}.care-card img{width:100%;aspect-ratio:1.5;border-radius:8px;margin-bottom:16px}.care-card h3{font-size:18px;line-height:27px;font-weight:700;letter-spacing:.36px;margin-bottom:10px}.care-card p{font-size:16px;line-height:1.8;color:#51594c}#care{padding-top:60px;min-height:578px}#menu{padding-top:50px;padding-bottom:100px}.menu-area{display:grid;grid-template-columns:1fr 1fr;gap:40px}.price-card{position:relative;min-height:280px;padding:32px;overflow:hidden;color:#fff;background:#35432b}.price-card:nth-child(2){background:#577143}.price-card:before{content:'';position:absolute;width:260px;height:260px;right:-70px;top:-70px;border-radius:50%;border:1px solid #ffffff4d;pointer-events:none}.price-label{display:block;font-family:Outfit,sans-serif;font-size:16px;line-height:24px;margin-bottom:12px}.price-card h3{font-size:24px;line-height:36px}.price-card .price{font-family:Outfit,'Zen Kaku Gothic New','Noto Sans CJK JP',sans-serif;font-size:40px;font-weight:600;line-height:1.3;margin:12px 0}.price small{font-size:16px;font-weight:400}.price-card p{font-size:16px;line-height:1.7}
#gallery{padding-top:30px;padding-bottom:100px}.gallery{display:grid;grid-template-columns:1fr;gap:40px}.gallery-visual{display:grid;grid-template-columns:1fr 1fr;gap:40px}.photo-card{margin:0;overflow:hidden;border-radius:8px}.photo-card img{width:100%;height:330px}.voice-wrap>.eyebrow{font-family:Outfit,sans-serif;font-size:40px;line-height:1;font-weight:700;text-align:center;margin:36px 0 40px}.voice-list{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.voice-card{border-top:1px solid #abb1a5;padding-top:24px}.voice-card p{font-size:16px;line-height:1.9}.voice-card strong{display:block;font-weight:400;font-size:15px;color:#69735e;margin-top:18px}#guide{background:var(--ink);color:#fff;min-height:680px}#guide .section-title{color:var(--light)}#guide .script,#guide .section-note{color:#fff}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:30px}.info-card h3{font-size:24px;line-height:36px;margin-bottom:30px}.info-list{display:grid;gap:22px}.info-row{display:grid;grid-template-columns:100px 1fr;gap:20px;border-top:1px solid #ffffff30;padding-top:16px}.info-row dt{font-size:15px;color:var(--light);font-weight:500}.info-row dd{margin:0;font-size:16px}.noren-direct-shell{scroll-margin-top:24px}footer{padding:30px 90px 34px;background:var(--ink);color:#fff;text-align:center;font-size:12px;line-height:1.8}footer a{text-decoration:underline}.arrive{opacity:1}.motion-ready .arrive{opacity:0;transform:translateY(15px);transition:opacity .75s ease,transform .75s ease}.motion-ready .arrive.shown{opacity:1;transform:none}
@keyframes words-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes photo-settle{from{transform:scale(1.05)}to{transform:scale(1)}}
@media(max-width:800px){.hero{min-height:0;height:200svh}.hero__image,.opening-frame,.opening-message{min-height:0;height:100svh}.shop{left:12px;top:14px;width:calc(100% - 24px);max-width:none;height:48px;font-size:22px;padding:5px 20px;line-height:38px}.opening-frame>.eyebrow{top:76px;right:12px;padding:9px 16px;font-size:14px;line-height:20px}.lead-copy{left:6%;width:88%;font-size:36px;line-height:1.5;bottom:70px}.hero__image img{object-position:55% center}.opening-message{padding:60px 28px}.intro,.hero-note p{font-size:16px;line-height:1.95}.hero-note p{margin-top:28px}.chip-row{gap:16px;margin-top:24px;flex-wrap:wrap}.chip{font-size:15px}.edge-rings i{width:150px;height:150px}.booking-dot{right:18px;bottom:18px;font-size:12px}main>section{padding:72px 24px}.section-head{margin-bottom:32px}.section-title .script{font-size:36px;line-height:40px;letter-spacing:.72px}.section-title{font-size:16px}.section-note{font-size:15px;line-height:1.85;text-align:left}.story,.menu-area,.gallery-visual,.info-grid{grid-template-columns:1fr;gap:32px}.story-card{font-size:16px}.story-photo img{height:270px}.care-grid{grid-template-columns:1fr;gap:40px}.care-card img{aspect-ratio:1.64}.care-card p,.price-card p{font-size:15px}.care-card h3{font-size:18px}.price-card{padding:28px;min-height:280px}.price-card .price{font-size:40px}.gallery{gap:28px}.photo-card img{height:265px}.voice-list{grid-template-columns:1fr;gap:28px}.voice-card p{font-size:16px}.voice-wrap>.eyebrow{font-size:36px;margin-top:28px}#gallery{padding-top:32px;padding-bottom:72px}#guide{padding-top:72px;padding-bottom:72px;min-height:0}.info-grid{gap:44px}.info-row{grid-template-columns:80px 1fr;gap:16px}.info-row dd{font-size:15px}.info-row dt{font-size:15px}footer{font-size:12px;padding:28px 80px 32px 24px}.sample-bar{font-size:11px}.sample-bar__inner{gap:2px 10px;min-height:42px}.section-title .script{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .arrive{opacity:1;transform:none}}
/* Keep every visual layer above the sticky photograph. */
.opening-frame{z-index:1}.opening-message{z-index:2}.shop{z-index:2}.shop:after{display:none}.eyebrow,.price-label{text-transform:uppercase}
#story{padding-inline:0}.section-head{padding-inline:24px}.story{display:flex;align-items:stretch;gap:40px;overflow-x:auto;scroll-snap-type:x proximity;padding:0 max(40px,calc((100vw - 1120px)/2)) 20px;scrollbar-width:thin;scrollbar-color:var(--accent) #eee}.story-tile{flex:0 0 468px;scroll-snap-align:center}.story-tile img{width:100%;height:285px;border-radius:8px;margin-bottom:16px}.story-tile:nth-child(2) img{object-position:35% 60%}.story-tile:nth-child(3) img{object-position:65% 35%}.story-tile p{font-size:16px;line-height:1.8}.care-grid{grid-template-columns:repeat(3,290px);justify-content:center}
@media(max-width:800px){.story{padding-inline:24px;gap:24px}.story-tile{flex-basis:calc(100vw - 48px)}.story-tile img{height:200px}.story-tile p{font-size:15px}.care-grid{grid-template-columns:1fr}.opening-frame>.eyebrow{font-size:12px}.section-head{padding-inline:0}#story>.section-head{padding-inline:24px}}

.care-card img{height:auto}#care{padding-top:0;padding-bottom:60px}#menu .section-title{font-size:24px;line-height:36px}#guide{min-height:879px}@media(max-width:800px){#care{padding-top:20px}#guide{min-height:0}}
.hero__image .photo-cover{position:absolute;inset:0;width:100%;height:100%;clip-path:inset(0 0 0 100%);animation:none;pointer-events:none}.hero__image:after{z-index:1;pointer-events:none}.photo-toggle{position:absolute;right:14px;top:5px;width:42px;height:42px;border:0;border-radius:50%;color:var(--ink);background:transparent;cursor:pointer}.photo-toggle:before,.photo-toggle:after{content:'';position:absolute;top:15px;width:3px;height:13px;background:currentColor}.photo-toggle:before{left:17px}.photo-toggle:after{left:24px}.photo-toggle.stopped:before{left:17px;top:13px;width:0;height:0;border-left:12px solid currentColor;border-top:8px solid transparent;border-bottom:8px solid transparent;background:none}.photo-toggle.stopped:after{display:none}.photo-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.photo-toggle:disabled{opacity:.35;cursor:default}@media(max-width:800px){.photo-toggle{top:3px}}@media(prefers-reduced-motion:reduce){.photo-cover{display:none}}
