:root{--paper: #f5f1ea;--paper-warm: #ede5d6;--ink: #2a2622;--ink-soft: #4a4540;--ink-faded: #8a8278;--gold: #b08d57;--gold-soft: #d4b88a;--shadow-warm: rgba(176, 141, 87, .08);--leaf: #6b7355}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}section{scroll-margin-top:80px}#top{scroll-margin-top:0}body{font-family:Cormorant Garamond,"Noto Serif JP",serif;background:var(--paper);color:var(--ink);font-weight:300;line-height:1.6;overflow-x:hidden;position:relative}body:before{content:"";position:fixed;inset:0;background-image:radial-gradient(circle at 20% 30%,rgba(176,141,87,.04) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(107,115,85,.03) 0%,transparent 50%);pointer-events:none;z-index:1}.komorebi-overlay{position:fixed;inset:0;pointer-events:none;z-index:2;opacity:.4;background:radial-gradient(ellipse 200px 80px at 15% 20%,rgba(255,240,200,.15) 0%,transparent 60%),radial-gradient(ellipse 150px 60px at 85% 60%,rgba(255,235,190,.1) 0%,transparent 60%),radial-gradient(ellipse 180px 70px at 30% 85%,rgba(255,245,210,.08) 0%,transparent 60%);mix-blend-mode:soft-light}nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:22px 56px;display:flex;justify-content:space-between;align-items:center;background:#f5f1ead9;backdrop-filter:blur(12px);border-bottom:1px solid rgba(42,38,34,.06)}.nav-brand{font-family:Cormorant Garamond,serif;font-weight:400;font-size:18px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink)}.nav-brand span{font-family:"Noto Serif JP",serif;font-weight:200;letter-spacing:0;margin-right:8px;font-size:16px;color:var(--gold)}.nav-links{display:flex;gap:44px;list-style:none}.nav-links a{font-family:Inter,sans-serif;font-size:13px;letter-spacing:.25em;text-transform:uppercase;color:var(--ink-soft);text-decoration:none;font-weight:400;transition:color .4s ease;position:relative}.nav-links a:after{content:"";position:absolute;bottom:-6px;left:0;width:0;height:1px;background:var(--gold);transition:width .4s ease}.nav-links a:hover{color:var(--ink)}.nav-links a:hover:after{width:100%}.lang-toggle{font-family:Inter,sans-serif;font-size:10px;letter-spacing:.2em;color:var(--ink-faded)}.lang-toggle .active{color:var(--ink);font-weight:500}.nav-toggle{display:none;background:none;border:none;width:32px;height:32px;padding:0;cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:6px;margin-left:16px}.nav-toggle span{display:block;width:22px;height:1.5px;background:var(--ink);transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .2s ease;transform-origin:center}body.menu-open .nav-toggle span:nth-child(1){transform:translateY(7.5px) rotate(45deg)}body.menu-open .nav-toggle span:nth-child(2){opacity:0}body.menu-open .nav-toggle span:nth-child(3){transform:translateY(-7.5px) rotate(-45deg)}.mobile-menu{position:fixed;inset:0;background:var(--paper);z-index:99;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:48px;opacity:0;visibility:hidden;transition:opacity .4s ease,visibility .4s ease;padding:80px 24px}.mobile-menu:before{content:"木漏れ日";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:"Noto Serif JP",serif;font-size:clamp(140px,40vw,220px);color:#b08d570d;font-weight:200;letter-spacing:.05em;z-index:0;pointer-events:none;white-space:nowrap}.mobile-menu-links{list-style:none;display:flex;flex-direction:column;gap:32px;text-align:center;position:relative;z-index:2}.mobile-menu-links a{font-family:Cormorant Garamond,serif;font-style:italic;font-weight:300;font-size:32px;color:var(--ink);text-decoration:none;letter-spacing:-.01em;transition:color .3s ease}.mobile-menu-links a:hover{color:var(--gold)}.mobile-menu-cta{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase;padding:16px 32px;background:var(--gold);color:var(--ink);text-decoration:none;font-weight:500;border:1px solid var(--gold);position:relative;z-index:2;transition:all .3s ease}.mobile-menu-cta:hover{background:transparent;color:var(--gold)}.hero{min-height:100vh;max-height:100vh;position:relative;display:grid;grid-template-columns:1.4fr 1fr;align-items:center;padding:120px 64px 80px 80px;gap:64px}.hero-content{position:relative;z-index:5;max-width:720px}.hero-kanji{font-family:"Noto Serif JP",serif;font-weight:200;font-size:14px;color:var(--gold);letter-spacing:.4em;margin-bottom:32px;opacity:0;animation:fadeInUp 1.4s ease .3s forwards}.hero-kanji span{display:block;font-size:11px;color:var(--ink-faded);margin-top:8px;letter-spacing:.3em;font-family:Inter,sans-serif;font-style:italic}.hero h1{font-family:Cormorant Garamond,serif;font-weight:300;font-size:clamp(40px,5.2vw,84px);line-height:1.05;color:var(--ink);margin-bottom:32px;letter-spacing:-.02em;white-space:nowrap;opacity:0;animation:fadeInUp 1.4s ease .5s forwards}.hero h1 em{font-style:italic;color:var(--gold);font-weight:300}.hero-subtitle{font-family:Cormorant Garamond,serif;font-style:italic;font-size:clamp(20px,1.9vw,30px);color:var(--ink-soft);margin-bottom:48px;max-width:720px;font-weight:300;line-height:1.45;opacity:0;animation:fadeInUp 1.4s ease .7s forwards}.hero-cta-group{display:flex;gap:24px;align-items:center;opacity:0;animation:fadeInUp 1.4s ease .9s forwards}.btn-primary{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase;padding:18px 36px;background:var(--ink);color:var(--paper);text-decoration:none;font-weight:400;transition:all .4s ease;display:inline-flex;align-items:center;gap:12px;border:1px solid var(--ink)}.btn-primary:hover{background:transparent;color:var(--ink)}.btn-text{font-family:Cormorant Garamond,serif;font-style:italic;font-size:16px;color:var(--ink-soft);text-decoration:none;border-bottom:1px solid var(--gold-soft);padding-bottom:4px;transition:all .3s ease}.btn-text:hover{color:var(--gold);border-color:var(--gold)}.hero-visual{position:relative;height:100%;max-height:calc(100vh - 200px);aspect-ratio:3/4;max-width:100%;margin-left:auto;background:linear-gradient(135deg,#d4c4a8,#b8a584,#8a7a5e);overflow:hidden;opacity:0;animation:fadeIn 2s ease .4s forwards}.hero-visual:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 150px 80px at 25% 20%,rgba(255,240,200,.4) 0%,transparent 70%),radial-gradient(ellipse 100px 60px at 70% 35%,rgba(255,235,190,.35) 0%,transparent 70%),radial-gradient(ellipse 120px 70px at 45% 70%,rgba(255,245,210,.3) 0%,transparent 70%),radial-gradient(ellipse 80px 50px at 80% 85%,rgba(255,240,195,.25) 0%,transparent 70%)}.hero-visual:after{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(45deg,transparent,transparent 100px,rgba(74,69,64,.05) 100px,rgba(74,69,64,.05) 102px)}.hero-visual-label{position:absolute;bottom:24px;left:24px;right:24px;background:#f5f1eaeb;padding:16px 20px;z-index:3;border-left:2px solid var(--gold)}.hero-visual-label .small{font-family:Inter,sans-serif;font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-faded);display:block;margin-bottom:6px}.hero-visual-label .large{font-family:Cormorant Garamond,serif;font-style:italic;font-size:18px;color:var(--ink)}.hero-decoration{position:absolute;top:50%;left:24px;transform:translateY(-50%);font-family:"Noto Serif JP",serif;font-weight:200;color:var(--ink-faded);font-size:10px;letter-spacing:.5em;writing-mode:vertical-rl;opacity:.5;z-index:4}.philosophy{padding:160px 48px;background:var(--paper-warm);position:relative;overflow:hidden}.philosophy:before{content:"光";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:"Noto Serif JP",serif;font-size:600px;color:#b08d570a;font-weight:200;z-index:0;pointer-events:none}.philosophy-inner{max-width:800px;margin:0 auto;text-align:center;position:relative;z-index:2}.section-label{font-family:Inter,sans-serif;font-size:10px;letter-spacing:.4em;text-transform:uppercase;color:var(--gold);margin-bottom:32px;display:block}.philosophy h2{font-family:Cormorant Garamond,serif;font-weight:300;font-size:clamp(32px,4vw,52px);line-height:1.3;color:var(--ink);margin-bottom:32px;font-style:italic}.philosophy h2 em{font-style:normal;color:var(--gold)}.philosophy-text{font-size:19px;color:var(--ink-soft);line-height:1.8;max-width:640px;margin:0 auto 48px;font-weight:300}.philosophy-divider{width:60px;height:1px;background:var(--gold);margin:0 auto 32px}.philosophy-meaning{font-family:"Noto Serif JP",serif;font-weight:200;font-size:14px;color:var(--ink-faded);font-style:italic;letter-spacing:.1em}.portfolio{padding:90px 48px 140px;background:var(--paper)}.section-header{display:flex;justify-content:space-between;align-items:flex-end;max-width:1400px;margin:0 auto 80px;flex-wrap:wrap;gap:24px}.section-title{font-family:Cormorant Garamond,serif;font-weight:300;font-size:clamp(44px,5.5vw,72px);line-height:1.1;color:var(--ink);letter-spacing:-.01em;white-space:nowrap}.section-title em{font-style:italic;color:var(--gold)}.section-subtitle{font-family:Cormorant Garamond,serif;font-style:italic;font-size:18px;color:var(--ink-soft);max-width:320px}.portfolio-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:24px;max-width:1400px;margin:0 auto}.portfolio-item{position:relative;overflow:hidden;cursor:pointer;transition:transform .6s cubic-bezier(.16,1,.3,1)}.portfolio-item:hover{transform:translateY(-4px)}.portfolio-item-1{grid-column:span 7;aspect-ratio:4/3}.portfolio-item-2{grid-column:span 5;aspect-ratio:3/4}.portfolio-item-3{grid-column:span 4;aspect-ratio:1/1;margin-top:-40px}.portfolio-item-4{grid-column:span 4;aspect-ratio:3/4}.portfolio-item-5{grid-column:span 4;aspect-ratio:1/1;margin-top:40px}.portfolio-item-1 .placeholder{background:linear-gradient(135deg,#e8d9c0,#c4ad8a,#8a7558)}.portfolio-item-2 .placeholder{background:linear-gradient(160deg,#d6c8b0,#a89a7d 70%,#6b6048)}.portfolio-item-3 .placeholder{background:linear-gradient(120deg,#ddc9aa,#b09875)}.portfolio-item-4 .placeholder{background:linear-gradient(150deg,#c8b89a,#95825f)}.portfolio-item-5 .placeholder{background:linear-gradient(135deg,#e0d3b8,#b8a585)}.placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.placeholder:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 100px 60px at 30% 25%,rgba(255,240,200,.3) 0%,transparent 70%),radial-gradient(ellipse 80px 50px at 70% 75%,rgba(255,235,190,.2) 0%,transparent 70%)}.portfolio-item-info{position:absolute;bottom:0;left:0;right:0;padding:24px;background:linear-gradient(to top,rgba(42,38,34,.85),transparent);color:var(--paper);z-index:2;transform:translateY(20px);opacity:0;transition:all .5s ease}.portfolio-item:hover .portfolio-item-info{transform:translateY(0);opacity:1}.portfolio-item-info .category{font-family:Inter,sans-serif;font-size:9px;letter-spacing:.3em;text-transform:uppercase;opacity:.8;margin-bottom:6px}.portfolio-item-info .name{font-family:Cormorant Garamond,serif;font-style:italic;font-size:22px;font-weight:300}.portfolio-cta{text-align:center;margin-top:80px}.about{padding:100px 48px 160px;background:var(--paper-warm);position:relative}.about-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1.3fr;gap:80px;align-items:center}.about-image{aspect-ratio:3/4;position:relative;overflow:hidden;background:var(--paper-warm)}.about-image img{width:100%;height:100%;object-fit:cover;filter:contrast(1.02) saturate(.95);transition:transform .8s cubic-bezier(.16,1,.3,1)}.about-image:hover img{transform:scale(1.03)}.about-image:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 180px 100px at 25% 15%,rgba(255,240,200,.18) 0%,transparent 70%),radial-gradient(ellipse 140px 80px at 80% 85%,rgba(255,235,190,.12) 0%,transparent 70%);pointer-events:none;mix-blend-mode:soft-light}.about-image-frame{position:absolute;inset:12px;border:1px solid rgba(245,241,234,.3);pointer-events:none;z-index:2}.about-image-label{position:absolute;bottom:20px;left:20px;font-family:Inter,sans-serif;font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:#f5f1eae6;background:#2a262266;padding:6px 12px;backdrop-filter:blur(4px)}.about-content h2{font-family:Cormorant Garamond,serif;font-weight:300;font-size:clamp(32px,3.8vw,48px);line-height:1.2;color:var(--ink);margin-bottom:32px}.about-content h2 em{font-style:italic;color:var(--gold)}.about-content p{font-size:17px;color:var(--ink-soft);line-height:1.8;margin-bottom:24px;font-weight:300}.about-stats{display:flex;gap:48px;margin-top:40px;padding-top:40px;border-top:1px solid rgba(42,38,34,.1)}.about-stat .number{font-family:Cormorant Garamond,serif;font-size:36px;font-weight:300;color:var(--gold);font-style:italic}.about-stat .label{font-family:Inter,sans-serif;font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--ink-faded);margin-top:4px}.services{padding:90px 48px 140px;background:var(--paper)}.services-intro{text-align:center;max-width:720px;margin:0 auto 80px}.services-intro h2{font-family:Cormorant Garamond,serif;font-weight:300;font-size:clamp(36px,4.5vw,56px);line-height:1.2;color:var(--ink);margin-bottom:24px}.services-intro h2 em{font-style:italic;color:var(--gold)}.services-intro p{font-family:Cormorant Garamond,serif;font-style:italic;font-size:19px;color:var(--ink-soft);line-height:1.6}.packages-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;max-width:1200px;margin:0 auto}.package{background:var(--paper-warm);padding:48px 36px;position:relative;border:1px solid rgba(42,38,34,.08);transition:all .5s ease}.package:hover{transform:translateY(-6px);box-shadow:0 30px 60px -20px #2a262226}.package.featured{background:var(--ink);color:var(--paper);border-color:var(--ink)}.package.featured .package-name,.package.featured .package-price,.package.featured .package-description,.package.featured .package-features li{color:var(--paper)}.package.featured .package-divider{background:var(--gold-soft)}.package-tag{position:absolute;top:24px;right:24px;font-family:"Noto Serif JP",serif;font-size:11px;color:var(--gold);letter-spacing:.3em}.package-name{font-family:Cormorant Garamond,serif;font-style:italic;font-size:32px;font-weight:300;color:var(--ink);margin-bottom:8px}.package-duration{font-family:Inter,sans-serif;font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--ink-faded);margin-bottom:32px}.package-price{font-family:Cormorant Garamond,serif;font-size:48px;font-weight:300;color:var(--ink);margin-bottom:4px}.package-price .currency{font-size:16px;color:var(--ink-faded);margin-left:8px;font-style:italic}.package-divider{width:40px;height:1px;background:var(--gold);margin:32px 0}.package-description{font-size:15px;color:var(--ink-soft);line-height:1.7;margin-bottom:28px}.package-features{list-style:none}.package-features li{font-size:14px;color:var(--ink-soft);padding:10px 0;border-bottom:1px solid rgba(42,38,34,.08);display:flex;align-items:flex-start;gap:12px}.package.featured .package-features li{border-bottom-color:#f5f1ea1a}.package-features li:before{content:"✦";color:var(--gold);font-size:10px;margin-top:4px}.contact{padding:160px 48px;background:var(--ink);color:var(--paper);text-align:center;position:relative;overflow:hidden}.contact:before{content:"木漏れ日";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:"Noto Serif JP",serif;font-size:clamp(180px,25vw,320px);color:#b08d570f;font-weight:200;letter-spacing:.05em;z-index:0;pointer-events:none;white-space:nowrap}.contact-inner{position:relative;z-index:2;max-width:700px;margin:0 auto}.contact .section-label{color:var(--gold-soft)}.contact h2{font-family:Cormorant Garamond,serif;font-weight:300;font-size:clamp(40px,5vw,64px);line-height:1.2;margin-bottom:32px}.contact h2 em{font-style:italic;color:var(--gold-soft)}.contact p{font-family:Cormorant Garamond,serif;font-style:italic;font-size:20px;color:#f5f1eabf;margin-bottom:56px;line-height:1.6}.contact-buttons{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin-bottom:64px}.btn-whatsapp{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase;padding:18px 40px;background:var(--gold);color:var(--ink);text-decoration:none;font-weight:500;transition:all .4s ease;display:inline-flex;align-items:center;gap:12px;border:1px solid var(--gold)}.btn-whatsapp:hover{background:transparent;color:var(--gold)}.btn-whatsapp svg{width:18px;height:18px;fill:#25d366;flex-shrink:0}.btn-secondary{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase;padding:18px 40px;background:transparent;color:var(--paper);text-decoration:none;font-weight:400;transition:all .4s ease;border:1px solid rgba(245,241,234,.3)}.btn-secondary:hover{border-color:var(--paper)}.contact-info{display:flex;justify-content:center;gap:48px;flex-wrap:wrap;font-family:Inter,sans-serif;font-size:12px;letter-spacing:.15em;color:#f5f1ea99}.contact-info-item .label{font-size:9px;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-soft);display:block;margin-bottom:6px}.contact-info-item .value{font-family:Cormorant Garamond,serif;font-style:italic;font-size:16px;color:var(--paper);letter-spacing:0}footer{padding:48px;background:var(--paper);border-top:1px solid rgba(42,38,34,.08);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:24px;font-family:Inter,sans-serif;font-size:11px;letter-spacing:.15em;color:var(--ink-faded)}.footer-brand{font-family:Cormorant Garamond,serif;font-style:italic;font-size:16px;color:var(--ink);letter-spacing:.05em}.footer-social{display:flex;gap:24px;list-style:none}.footer-social a{color:var(--ink-soft);text-decoration:none;letter-spacing:.25em;text-transform:uppercase;font-size:10px;transition:color .3s ease}.footer-social a:hover{color:var(--gold)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media(max-width:900px){nav{padding:16px 24px}.nav-links{display:none}.nav-toggle{display:flex}body.menu-open{overflow:hidden}.hero{grid-template-columns:1fr;padding:100px 24px 60px;gap:48px;max-height:none;min-height:auto}.hero-visual{max-height:60vh;aspect-ratio:3/4}.hero-decoration{display:none}.philosophy,.portfolio,.about,.services,.contact{padding:100px 24px}.portfolio-grid{grid-template-columns:repeat(6,1fr);gap:16px}.portfolio-item-1,.portfolio-item-2{grid-column:span 6}.portfolio-item-3{grid-column:span 3;margin-top:0}.portfolio-item-4{grid-column:span 3}.portfolio-item-5{grid-column:span 6;margin-top:0}.about-grid{grid-template-columns:1fr;gap:48px}.packages-grid{grid-template-columns:1fr;gap:24px}.section-header{flex-direction:column;align-items:flex-start}}.hero-visual-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}.hero-visual-img+.hero-visual-label{z-index:4}.portfolio-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1);filter:contrast(1.02) saturate(.96)}.portfolio-item:hover .portfolio-img{transform:scale(1.04)}.lang-btn{cursor:pointer;transition:color .3s ease;user-select:none}.lang-btn:hover{color:var(--ink)}.lang-btn.active{color:var(--ink);font-weight:500}.footer-signature{display:flex;flex-direction:column;gap:4px}.footer-email{font-family:Cormorant Garamond,serif;font-style:italic;font-size:13px;color:var(--ink-faded);text-decoration:none;letter-spacing:0;transition:color .3s ease}.footer-email:hover{color:var(--gold)}.footer-copy{font-size:10px;letter-spacing:.2em}.back-to-top{position:fixed;bottom:32px;right:32px;width:48px;height:48px;border-radius:50%;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:center;text-decoration:none;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .4s ease,visibility .4s ease,transform .4s ease,background .3s ease;z-index:99;box-shadow:0 4px 16px #2a26222e}.back-to-top.visible{opacity:.85;visibility:visible;transform:translateY(0)}.back-to-top:hover{opacity:1;background:var(--gold);transform:translateY(-2px)}@media(max-width:768px){.back-to-top{bottom:20px;right:20px;width:44px;height:44px}}.nav-brand{display:flex;align-items:center;text-decoration:none;height:42px}.nav-brand img{height:100%;width:auto;display:block;transition:opacity .3s ease}.nav-brand:hover img{opacity:.7}.hero-visual{position:relative}.hero-slider{position:absolute;inset:0;overflow:hidden;z-index:1}.hero-slide{position:absolute;inset:0;opacity:0;transition:opacity 1.4s cubic-bezier(.4,0,.2,1);z-index:1}.hero-slide.active{opacity:1;z-index:2}.hero-slide img{width:100%;height:100%;object-fit:cover}.slider-controls{position:absolute;bottom:90px;left:50%;transform:translate(-50%);display:flex;gap:8px;z-index:5;background:#f5f1ea99;backdrop-filter:blur(8px);padding:8px 12px;border-radius:24px}.slider-dot{width:7px;height:7px;border-radius:50%;background:#2a26224d;border:none;cursor:pointer;transition:all .3s ease;padding:0}.slider-dot.active{background:var(--gold);transform:scale(1.3)}.slider-dot:hover{background:var(--ink-soft)}.slider-arrow{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;background:#f5f1ead9;backdrop-filter:blur(8px);border:none;cursor:pointer;z-index:5;display:flex;align-items:center;justify-content:center;font-family:Cormorant Garamond,serif;font-size:24px;color:var(--ink);transition:all .3s ease;opacity:0}.hero-visual:hover .slider-arrow{opacity:1}.slider-arrow:hover{background:var(--paper);transform:translateY(-50%) scale(1.08)}.slider-arrow.prev{left:16px}.slider-arrow.next{right:16px}.hero-visual-label{z-index:4!important;transition:opacity .5s ease}@media(max-width:900px){.slider-arrow{opacity:1;width:36px;height:36px;font-size:20px}.slider-controls{bottom:80px}}.nav-toggle{display:none;background:transparent;border:none;cursor:pointer;padding:8px;width:40px;height:40px;flex-direction:column;justify-content:center;align-items:center;gap:5px;z-index:200;position:relative}.nav-toggle span{display:block;width:22px;height:1.5px;background:var(--ink);transition:transform .4s ease,opacity .3s ease,background .3s ease}.nav-toggle.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.mobile-menu{position:fixed;inset:0;background:var(--paper);z-index:150;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:48px;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s ease;padding:80px 24px 48px}.mobile-menu.open{opacity:1;visibility:visible}.mobile-menu:before{content:"木漏れ日";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:"Noto Serif JP",serif;font-size:clamp(140px,35vw,280px);color:#b08d570d;font-weight:200;letter-spacing:.05em;z-index:0;pointer-events:none;white-space:nowrap}.mobile-menu-links{list-style:none;text-align:center;position:relative;z-index:2;display:flex;flex-direction:column;gap:32px}.mobile-menu-links a{font-family:Cormorant Garamond,serif;font-style:italic;font-size:32px;font-weight:300;color:var(--ink);text-decoration:none;letter-spacing:.02em;transition:color .3s ease}.mobile-menu-links a:hover,.mobile-menu-links a:active{color:var(--gold)}.mobile-menu-cta{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.3em;text-transform:uppercase;padding:16px 36px;background:var(--gold);color:var(--ink);text-decoration:none;font-weight:500;border:1px solid var(--gold);position:relative;z-index:2}body.menu-open{overflow:hidden}@media(max-width:900px){.nav-toggle{display:flex}}
