:root{--paper:#f1f0eb;--ink:#302d26;--gold:#b28a4b;--line:#b9b4a8;--serif:"Cormorant Garamond","Noto Serif JP",serif;--sans:"Noto Sans JP",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:2;letter-spacing:.015em}a{color:inherit}img{display:block;max-width:100%}p{margin:0}h1,h2,h3{margin:0;font-weight:400}figure,dl,dd{margin:0}.sample-bar{position:relative;z-index:10;padding:7px 12px;text-align:center;background:var(--paper);font-size:12px;line-height:1.7;letter-spacing:.02em}.sample-bar a{text-underline-offset:3px}.hero{height:calc(100svh - 35px);min-height:750px;position:relative;isolation:isolate}.hero-grid,.hero-card{display:contents}.salon-composition{position:absolute;inset:0;z-index:-1;overflow:hidden}.salon-plane{position:absolute;background-size:cover;background-position:center;will-change:transform}.plane-back{left:16.16%;top:16.1%;width:67.7%;height:67.6%;background-image:linear-gradient(120deg,rgba(206,183,140,.58),rgba(244,218,172,.32)),url('img/01.jpg');background-position:50% 50%}.plane-middle{left:32.69%;top:34.6%;width:62.31%;height:55.4%;background-image:linear-gradient(120deg,rgba(186,155,94,.46),rgba(208,192,157,.15)),url('img/04.jpg');background-position:center 56%}.plane-front{left:5%;top:10%;width:34.6%;height:30.8%;background-image:linear-gradient(120deg,rgba(236,224,193,.32),rgba(191,155,96,.28)),url('img/02.jpg');background-position:center 42%}.salon-dotfield{position:absolute;left:8%;top:59%;width:32%;height:22%;opacity:.33;background-image:radial-gradient(#f1f0eb .7px,transparent .8px);background-size:5px 5px;pointer-events:none}.eyebrow{position:absolute;top:10px;left:5%;font-size:13px;letter-spacing:.3em;text-transform:uppercase}.hero h1{position:absolute;left:4.8%;top:24%;font-family:var(--serif);font-size:120px;line-height:132px;font-weight:400;letter-spacing:-.05em;color:#161a16}.hero h1 span{display:block}.hero-copy{position:absolute;left:5%;top:81%;font-size:15px;line-height:2.1}.hero-sub{position:absolute;left:5%;top:87%;font-size:16px;line-height:2;max-width:540px}.hero-text{position:absolute;left:74.23%;top:40%;width:20.77%;font-size:14px;line-height:2.1;color:#202820;padding:12px;background:rgba(241,240,235,.76)}.hero-points{position:absolute;top:10px;left:35%;right:8%;display:flex;justify-content:space-between;font-size:13px}.scroll-sign{position:fixed;bottom:5%;right:5%;z-index:25;display:grid;place-items:center;width:200px;height:200px;border-radius:50%;background:var(--ink);color:var(--paper);font-size:13px;text-decoration:none;letter-spacing:.1em;transition:transform .4s}.scroll-sign:before{content:"";position:absolute;inset:-10px;border:1px dotted var(--ink);border-radius:50%;animation:orbit 35s linear infinite}.scroll-sign:after{content:"↓";position:absolute;bottom:30px;font-size:22px}.scroll-sign:hover{transform:scale(1.06)}.scroll-sign:focus-visible{outline:3px solid var(--gold);outline-offset:14px}.frame{width:90%;max-width:1400px;margin:auto}main section{position:relative;padding:88.576px 0;scroll-margin-top:30px}.section-head{margin-bottom:44.288px}.section-head .label{display:block;font-family:var(--serif);font-size:89.6px;line-height:98.56px;text-transform:uppercase;letter-spacing:-.04em;margin-bottom:28px}.section-head h2{font-family:"Noto Serif JP",serif;font-size:28px;line-height:1.7;font-weight:400}.section-head p{max-width:620.28px;font-size:15px;line-height:2.1;margin-top:24px}
#concept{background:#c2aa7e;min-height:960px;isolation:isolate;overflow:hidden}#concept:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(174,140,78,.45),rgba(223,199,150,.48)),url('img/01.jpg') center/cover;z-index:-1}#concept .frame{max-width:800px;background:var(--paper);padding:48px 64px;position:relative}#concept .frame:before{content:"";display:block;width:100%;height:18px;position:absolute;top:0;left:0;background:#d1cfc4}#concept .section-head{text-align:center}#concept .section-head .label{margin-left:-64px;margin-right:-64px}#concept .section-head p{text-align:left;margin:24px auto 0}.concept-panel{display:grid;gap:32px}.concept-copy{font-size:16px;line-height:2.1}.concept-copy strong{font-weight:500}.concept-lines{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.concept-item{border-top:1px solid var(--line);padding-top:16px}.concept-item h3{font-size:16px;font-weight:500;margin-bottom:10px}.concept-item p{font-size:15px;line-height:1.9}
#menu .frame{max-width:1152px}#menu .section-head{width:620.28px;max-width:100%;margin:0 auto 44.288px}#menu .section-head .label{text-align:center}.menu-grid{max-width:620.28px;margin:auto}.menu-card{position:relative;padding:32px 0;display:grid;grid-template-columns:1fr auto;gap:12px 20px;border-top:1px solid var(--line);transition:transform .4s}.menu-card:hover{transform:translateX(8px)}.menu-card .name{font-size:20px;font-family:"Noto Serif JP",serif}.menu-card .price{font-family:var(--serif);font-size:40px;line-height:1.2}.price small{font-family:var(--sans);font-size:12px;margin-left:8px}.menu-card>p:last-child{grid-column:1/-1;font-size:15px}.menu-note{font-size:13px;max-width:620px;margin:24px auto 0}
#flow{min-height:1000px;background:#e7e5dc}#flow .section-head{margin-left:60%;max-width:40%}#flow .section-head p{font-size:15px}.timeline-wrap{margin-top:-180px;width:90%}.timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.step{min-height:360px;position:relative;padding:24px 0;border-top:1px solid var(--ink)}.step:nth-child(2){margin-top:230px}.step:nth-child(3){margin-top:430px}.step-dot{font-family:var(--serif);font-size:89.6px;line-height:1.1;margin-bottom:24px}.step-card h3{font-size:20px;margin-bottom:20px}.step-card p{font-size:15px;line-height:2.1}
#gallery{padding-top:88px;padding-bottom:100px}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.photo{overflow:hidden}.photo img{width:100%;height:320px;object-fit:cover;transition:transform .7s}.photo:hover img{transform:scale(1.03)}.photo figcaption{font-size:13px;line-height:1.8;padding-top:18px}.gallery-grid .photo:nth-child(2){margin-top:100px}.gallery-grid .photo:nth-child(3){margin-top:200px}#gallery .section-head{display:grid;grid-template-columns:1fr 1fr;gap:10px 60px}#gallery .section-head .label{grid-column:1/-1}#gallery .section-head p{margin-top:0}
#information{background:#dfdbcf}.info-grid{max-width:620.28px;margin:60px auto 0}.info-card{padding:0}.info-row{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:18px 0;border-top:1px solid var(--line)}.info-row dt{font-size:13px;text-transform:uppercase}.info-row dd{font-size:15px}.access-note{font-size:13px;margin-top:24px}#information .section-head p{margin-left:auto;margin-right:auto}#information .section-head h2{text-align:center}#information .section-head .label{font-size:76.8px;line-height:84.48px}
#noren-direct-reception{position:relative;z-index:1;margin:88px 0}footer{background:var(--ink);color:var(--paper);padding:177px 5% 90px}.footer-inner{max-width:950px;font-size:13px;line-height:2.1}.reveal{opacity:1;transform:none}.motion-ready .reveal:not(.is-visible){opacity:0;transform:translateY(28px)}.reveal{transition:opacity .8s,transform .8s}.hero .reveal{opacity:1;transform:none}body.entered .plane-front{animation:arrive-front 1.3s cubic-bezier(.2,.65,.3,1) both}body.entered .plane-back{animation:arrive-back 1.5s cubic-bezier(.2,.65,.3,1) both}body.entered .plane-middle{animation:arrive-middle 1.7s cubic-bezier(.2,.65,.3,1) both}@keyframes arrive-front{from{transform:translateY(60px)}to{transform:translateY(0)}}@keyframes arrive-back{from{transform:translateY(95px)}to{transform:translateY(0)}}@keyframes arrive-middle{from{transform:translateY(135px)}to{transform:translateY(0)}}@keyframes orbit{to{transform:rotate(360deg)}}
@media(min-width:1500px){.hero h1{font-size:9.375vw;line-height:1.1}.hero-text{font-size:16px}.hero-copy,.hero-sub{font-size:18px}}
@media(max-width:767px){body{font-size:15px}.sample-bar{font-size:11px;line-height:1.6;padding:6px 18px}.hero{height:calc(100svh - 47px);min-height:940px}.eyebrow{top:16px;font-size:12px}.hero-points{top:53px;left:5%;right:5%;font-size:11px;gap:8px}.plane-front{top:12%;height:22%;width:58%}.plane-back{top:20%;left:17%;width:75%;height:43%}.plane-middle{top:37%;left:28%;width:67%;height:43%}.hero h1{top:30%;font-size:76px;line-height:80px;left:5%;letter-spacing:-.04em}.hero-text{top:66%;left:5%;width:74%;padding:12px;font-size:15px;line-height:1.9;background:rgba(241,240,235,.92)}.hero-copy{top:57%;left:5%;font-size:15px;background:rgba(241,240,235,.86);padding:2px 8px}.hero-sub{top:86%;left:5%;max-width:76%;font-size:15px;line-height:1.9}.scroll-sign{width:72px;height:72px;right:22px;bottom:25px;font-size:10px}.scroll-sign:before{inset:-6px}.scroll-sign:after{bottom:8px;font-size:15px}.frame{width:90%}main section{padding:64px 0}.section-head .label{font-size:52px;line-height:1.1;margin-bottom:26px}.section-head h2{font-size:23px;line-height:1.7;overflow-wrap:anywhere}.section-head p{font-size:15px}#concept{min-height:0;padding:55px 0}#concept .frame{width:90%;padding:42px 22px}#concept .section-head .label{margin-left:0;margin-right:0}.concept-lines{grid-template-columns:1fr;gap:24px}.concept-copy{font-size:15px}.concept-item h3{font-size:17px}#menu .section-head{width:100%}.menu-card{gap:12px}.menu-card .name{font-size:17px}.menu-card .price{font-size:32px}.price small{font-size:15px}.menu-note{font-size:15px}#flow{min-height:0}#flow .section-head{margin-left:0;max-width:none}.timeline-wrap{margin-top:0;width:100%}.timeline{grid-template-columns:1fr;gap:25px}.step{min-height:0;display:grid;grid-template-columns:48px 1fr;gap:18px;padding:25px 0}.step:nth-child(2),.step:nth-child(3){margin-top:0}.step-dot{font-size:56px;margin:0}.step-card h3{font-size:20px;margin-bottom:12px}.gallery-grid{grid-template-columns:1fr;gap:40px}.gallery-grid .photo:nth-child(n){margin-top:0}.photo img{height:340px}.photo figcaption{font-size:15px}#gallery .section-head{display:block}#gallery .section-head p{margin-top:24px}#information .section-head .label{font-size:39px;line-height:1.1}#information .section-head h2{text-align:left}.info-row{grid-template-columns:85px 1fr;gap:16px}.info-row dt,.access-note{font-size:15px}.info-grid{margin-top:40px}#noren-direct-reception{margin:60px 0}footer{padding:90px 5% 120px}.footer-inner{font-size:15px}.salon-dotfield{top:49%;height:15%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal:not(.is-visible){opacity:1;transform:none}}
