:root{--ink:#191b20;--muted:#565a5b;--mint:#00e5ba;--paper:#f5f5f4;--line:#ddd;--container:calc(100% - 104px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,'Noto Sans JP',sans-serif;font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}button,input,select,textarea{font:inherit}h1,h2,h3,p{margin:0}a:focus-visible{outline:3px solid #008971;outline-offset:5px}.topbar{background:#191b20;color:white;font-size:12px}.topbar-inner{display:flex;gap:18px;justify-content:center;padding:5px 16px}.topbar a{text-decoration:underline}.nav{width:var(--container);height:80px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand-text strong{display:block;font-size:23px;font-weight:900;letter-spacing:-1px}.brand-text span{display:block;font-size:10px}.brand-mark{display:none}.nav-links{display:flex;gap:26px;align-items:center;font-size:13px;font-weight:700}.nav-links .cta{background:var(--mint);padding:10px 14px}.hero-wrap{width:var(--container);margin:auto}.hero-stage{position:relative}.hero-bg{position:absolute;top:0;left:0;width:100%;height:470px;background:#f0f1ef;border-radius:6px;overflow:hidden;pointer-events:none}.hero-bg:before{content:'';position:absolute;left:49%;top:55px;width:155px;height:345px;border:19px solid #202826;border-right-color:#9aaba6;border-bottom-color:#9aaba6;border-radius:50%;transform:rotate(20deg);animation:orbit 12s ease-in-out infinite}.hero-bg:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(111deg,transparent 0 2px,#00000003 3px 4px);opacity:.7}.hero-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;column-gap:24px;grid-template-rows:310px 44px 74px auto auto;padding-top:30px}.hero-panel{display:contents}.eyebrow{font-family:Arial,sans-serif;display:block;font-size:80px;font-weight:600;line-height:1.1;letter-spacing:-4px;width:370px;margin-left:90px;align-self:center;grid-column:1;grid-row:1;max-width:100%}.hero-panel h1{grid-column:1;grid-row:2;font-size:20px;line-height:1.6;font-weight:700;letter-spacing:.01em;margin-left:90px;white-space:nowrap}.hero-panel h1 br{display:none}.hero-actions{display:flex;align-items:start;gap:10px;grid-column:1;grid-row:3;margin-left:90px;padding-top:12px;width:540px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:38px;padding:9px 12px;font-size:12px;font-weight:500;line-height:1.5;border:1px solid transparent;transition:transform .25s}.btn:after{content:'↗';padding-left:10px;border-left:1px solid #0003}.btn-primary,.btn-light{background:var(--mint);color:#122620}.btn-secondary,.btn-outline{border-color:#bcc4c0;background:transparent}.btn:hover{transform:translateY(-3px)}.hero-copy{grid-row:4;grid-column:1;max-width:100%;padding:72px 36px 20px 0;font-size:17px;line-height:2}.hero-points{grid-column:1;grid-row:5;display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0;padding-bottom:32px}.hero-point{background:var(--paper);padding:20px;font-size:14px;line-height:1.8;border-radius:5px}.hero-point strong{display:block;font-size:17px;margin-bottom:8px}.hero-side{grid-column:2;grid-row:4 / 6;display:grid;grid-template-columns:1.05fr 1fr;gap:16px;padding-top:64px}.staff-card,.floating-note{border-radius:5px;background:var(--paper);padding:16px;align-self:start}.staff-thumb{height:125px;overflow:hidden;margin-bottom:14px}.staff-thumb img{height:100%}.staff-card strong,.floating-note strong{font-size:18px;line-height:1.7;display:block;margin-bottom:10px}.staff-card p,.floating-note p{font-size:14px}.floating-note{padding-top:36px}.floating-note:before{content:'';display:block;width:52px;height:52px;border:8px solid var(--mint);border-radius:50%;margin-bottom:24px}
main section{padding:60px 0}.section-shell,.cta-panel{width:var(--container);margin:auto}.section-head{border-top:1px solid var(--line);padding-top:64px;margin-bottom:38px;display:flex;align-items:end;justify-content:space-between;gap:40px}.section-kicker{display:block;font-family:Arial,sans-serif;text-transform:uppercase;font-size:42px;font-weight:800;line-height:1.05;letter-spacing:-1.5px;margin-bottom:12px}.section-kicker:before{content:'';display:inline-block;height:23px;width:5px;background:var(--mint);margin-right:12px}h2{font-size:26px;line-height:1.55;letter-spacing:.02em;font-weight:500}.section-lead{max-width:420px;font-size:15px;color:var(--muted)}.trust-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.trust-copy{padding:44px 32px;background:var(--paper);border-radius:6px}.trust-copy>p{font-size:23px;line-height:1.9;margin-bottom:32px}.trust-list{display:grid;grid-template-columns:1fr 1fr;gap:22px}.trust-item{border-top:1px solid #c6cfca;padding-top:14px}.trust-item strong{display:block;font-size:16px;margin-bottom:7px}.trust-item span{font-size:14px;display:block}.visual-card{margin:0;height:100%;padding:0;background:var(--paper);border-radius:6px;overflow:hidden}.visual-card img{height:420px;object-position:center 55%}.visual-caption{padding:26px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.visual-caption strong{font-size:20px}.visual-caption span{font-size:14px}.menu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.menu-card{background:var(--paper);border-radius:6px;padding:28px 20px;transition:transform .3s}.menu-card:hover{transform:translateY(-6px)}.icon-badge{width:100%;height:120px;background:white;display:grid;place-items:center;margin-bottom:22px}.icon-badge svg{width:60px;height:60px;color:#173e35}.menu-card h3{font-size:22px;margin-bottom:12px}.menu-card p{font-size:15px;line-height:1.9}.price-note{display:inline-block;background:#d8f5eb;font-size:12px;margin-top:18px;padding:4px 7px}.menu-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:30px 0;border-bottom:1px solid var(--line)}.menu-bottom strong{font-size:20px}.menu-bottom p{font-size:15px;color:var(--muted);margin-top:10px}.flow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.flow-card{padding:24px 20px;background:var(--paper);border-radius:6px}.flow-no{font-size:48px;letter-spacing:-2px;line-height:1;margin-bottom:24px;font-weight:600;color:#178f76}.flow-card h3{font-size:20px;margin-bottom:12px}.flow-card p{font-size:15px}.cta-panel{padding:64px 90px;background:#eef0ee;border-radius:6px;position:relative;overflow:hidden}.cta-panel:after{content:'';width:130px;height:270px;border:18px solid #c8d1cb;border-radius:50%;position:absolute;right:100px;top:16px;transform:rotate(25deg);pointer-events:none}.cta-inner{position:relative;z-index:1;display:grid;grid-template-columns:1.7fr 1fr;align-items:center;gap:60px}.cta-inner h2{font-size:34px}.cta-inner p{font-size:16px;margin-top:24px}.cta-actions{display:flex;flex-direction:column;align-items:start;gap:16px}.photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.photo-main{margin:0}.photo-main img{height:650px;border-radius:6px}.photo-stack{display:grid;gap:24px}.photo-stack article{display:grid;grid-template-columns:1fr 1fr;background:var(--paper);border-radius:6px;overflow:hidden}.photo-stack img{height:100%;min-height:260px}.photo-text{padding:26px;align-self:center}.photo-text strong{display:block;font-size:23px;line-height:1.7}.photo-text span{display:block;font-size:15px;margin-top:14px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 60px}.faq-item{margin:0;padding:28px 0;border-top:1px solid var(--line)}dt{font-size:20px;font-weight:600}dd{margin:18px 0 0;font-size:16px;color:var(--muted)}.info-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.info-card,.access-card{padding:36px;background:var(--paper);border-radius:6px}.label{display:block;font-size:14px;font-weight:600;color:#257b64;text-transform:uppercase;letter-spacing:.1em}.info-grid h3{font-size:23px;margin:8px 0 16px}.info-grid p{font-size:15px}.info-block+.info-block{margin-top:34px;padding-top:30px;border-top:1px solid #ccc}.hours,.access-list{margin-top:24px}.hours-row,.access-row{display:grid;grid-template-columns:100px 1fr;gap:14px;border-top:1px solid #d7d7d7;padding:13px 0;font-size:15px}footer{padding:36px 52px;background:#1c2120;color:white;font-size:13px}.footer-inner{max-width:1176px;margin:auto}footer a{text-decoration:underline}#noren-direct-reception{--noren-accent:#087b64;--noren-accent2:#19a38a;--noren-on-accent:white;--noren-radius:6px;--noren-radius-s:3px;--noren-font:Arial,'Noto Sans JP',sans-serif}.reveal{opacity:1;transform:none}.motion-ready .reveal{opacity:0;transform:translateY(20px);transition:opacity .7s,transform .7s}.motion-ready .reveal.is-visible{opacity:1;transform:translateY(0)}@keyframes orbit{0%,100%{transform:rotate(20deg) scaleX(1)}50%{transform:rotate(-12deg) scaleX(.65)}}
@media(min-width:1500px){:root{--container:min(1400px,calc(100% - 104px))}}
@media(max-width:800px){:root{--container:calc(100% - 40px)}body{font-size:16px}.topbar-inner{font-size:10px;gap:4px;flex-wrap:wrap;padding:6px 12px}.nav{height:auto;min-height:114px;display:block;padding:16px 0}.brand-text strong{font-size:22px}.brand-text span{font-size:10px}.nav-links{gap:0;justify-content:space-between;font-size:11px;margin-top:14px}.nav-links .cta{padding:6px 8px}.hero-bg{height:500px}.hero-bg:before{left:auto;right:26px;top:235px;width:92px;height:205px;border-width:12px}.hero-grid{padding-top:26px;grid-template-columns:1fr;grid-template-rows:256px 40px 178px auto auto auto;column-gap:0}.eyebrow{font-size:64px;letter-spacing:-3px;width:270px;margin-left:24px;line-height:1.05;z-index:1}.hero-panel h1{font-size:18px;margin-left:24px;white-space:normal}.hero-actions{margin-left:24px;padding-top:14px;width:190px;flex-direction:column;gap:8px;z-index:1}.btn{font-size:12px;padding:9px 10px}.hero-copy{padding:36px 0 20px;grid-row:4;font-size:16px;line-height:1.9}.hero-points{grid-row:5;grid-column:1;grid-template-columns:1fr;gap:12px;padding-bottom:16px}.hero-point{padding:20px;font-size:15px}.hero-side{grid-row:6;grid-column:1;padding-top:0;grid-template-columns:1fr 1fr;gap:12px}.staff-card,.floating-note{padding:14px}.staff-thumb{height:125px}.staff-card strong,.floating-note strong{font-size:17px}.staff-card p,.floating-note p{font-size:15px}.floating-note:before{width:40px;height:40px}.section-head{display:block;padding-top:34px;margin-bottom:26px}.section-kicker{font-size:36px}h2{font-size:23px}.section-lead{font-size:15px;margin-top:20px}main section{padding:34px 0}.trust-grid,.photo-grid,.info-grid{grid-template-columns:1fr;gap:16px}.trust-copy{padding:24px}.trust-copy>p{font-size:21px}.trust-list{gap:20px;grid-template-columns:1fr}.trust-item span{font-size:15px}.visual-card img{height:320px}.visual-caption{padding:20px}.visual-caption span{font-size:15px}.menu-grid,.flow-grid{grid-template-columns:1fr;gap:16px}.menu-card{padding:24px}.icon-badge{height:100px}.menu-card p{font-size:16px}.price-note{font-size:15px}.menu-bottom{display:block}.menu-bottom .btn{margin-top:20px}.flow-card{padding:24px}.flow-card p{font-size:16px}.cta-panel{padding:32px 24px}.cta-inner{display:block}.cta-inner h2{font-size:27px}.cta-actions{margin-top:26px;flex-direction:row;gap:10px}.cta-panel:after{right:-40px;opacity:.45}.photo-main img{height:410px}.photo-stack{gap:16px}.photo-stack article{grid-template-columns:1fr}.photo-stack img{height:250px;min-height:0}.photo-text{padding:24px}.photo-text strong{font-size:22px}.faq-grid{grid-template-columns:1fr}.faq-item{padding:24px 0}dt{font-size:19px}.info-card,.access-card{padding:24px}.hours-row,.access-row{grid-template-columns:78px 1fr;gap:10px}.label{font-size:15px}footer{padding:30px 20px;font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}}
@media(min-width:801px){.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.eyebrow{width:300px}.hero-actions{width:490px}}
@media(max-width:800px){#noren-direct-reception p,#noren-direct-reception label,#noren-direct-reception .noren-direct-note{font-size:15px!important}}
.floating-note{padding:16px}.floating-note:before{display:none}.floating-note>img{height:125px;margin-bottom:14px}body #noren-direct-reception{--noren-accent:#087b64;--noren-accent2:#19a38a;--noren-on-accent:#fff;--noren-radius:6px;--noren-radius-s:3px;--noren-font:Arial,'Noto Sans JP',sans-serif}
@media(max-width:800px){.floating-note{padding:14px}}
.cta-panel{background:#baf4d8}.cta-panel:after{border-color:#74c9aa}
