:root{--paper:#f8f5ee;--soft:#eee8dc;--ink:#41382f;--muted:#786a5a;--line:#d8cec0;--accent:#a3693f;--serif:'Noto Serif JP',serif;--sans:'Noto Sans JP',sans-serif;--latin:'DM Sans',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-weight:400;letter-spacing:.03em}body.admin-bar .nav{top:32px}[hidden]{display:none!important}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;max-width:100%;height:auto}p{font-size:15px;line-height:2.05;margin:0 0 24px;max-width:720px}h1,h2,h3{font-family:var(--serif);font-weight:400;margin:0;letter-spacing:.06em}h1{font-size:clamp(35px,4.3vw,64px);line-height:1.55}h2{font-size:clamp(28px,3.2vw,45px);line-height:1.65;margin-bottom:28px}h3{font-size:20px;line-height:1.7;margin-bottom:14px}#main:focus{outline:none}
.skip{position:fixed;z-index:100;top:-70px;left:20px;background:var(--ink);color:white;padding:12px 18px}.skip:focus{top:15px}.announcement{height:38px;display:flex;align-items:center;justify-content:center;background:#e9e1d4;font:11px var(--latin);letter-spacing:.2em}.announcement i{width:17px;height:1px;background:var(--muted);margin:0 12px}.header{height:102px;display:flex;align-items:center;justify-content:space-between;padding:0 max(5vw,30px);border-bottom:1px solid var(--line)}.logo,.footerLogo{font:400 34px Georgia,serif;letter-spacing:.18em}.menuButton{display:flex;align-items:center;gap:18px;border:0;background:none;cursor:pointer;font:12px var(--latin);letter-spacing:.18em;padding:12px}.menuButton b{font-size:25px;font-weight:400;line-height:1}.nav{height:58px;display:flex;align-items:center;justify-content:center;gap:50px;border-bottom:1px solid var(--line);background:rgba(248,245,238,.95);position:sticky;top:0;z-index:20;backdrop-filter:blur(10px)}.nav a{position:relative;font:12px var(--latin);letter-spacing:.14em;padding:22px 0}.nav a:after{content:"";position:absolute;left:0;right:100%;bottom:14px;height:1px;background:var(--ink);transition:.3s}.nav a:hover:after,.nav a.active:after{right:0}.menuPanel{position:absolute;z-index:30;top:140px;left:0;right:0;background:var(--ink);color:var(--paper);padding:44px max(6vw,28px);display:grid;grid-template-columns:repeat(4,1fr);gap:0 44px}.menuPanel a{padding:20px 0;border-bottom:1px solid #ffffff30;font-family:var(--serif)}.menuPanel span{display:block;font:10px var(--latin);color:#c9b69d;margin-bottom:7px}
.eyebrow{font:500 11px var(--latin);letter-spacing:.22em;color:var(--accent);margin-bottom:22px;text-transform:uppercase}.section{padding:110px max(7vw,calc((100vw - 1180px)/2))}.soft{background:var(--soft)}.button{min-width:235px;max-width:max-content;min-height:58px;display:flex;align-items:center;justify-content:space-between;border:1px solid #867866;margin-top:36px;padding:0 20px 0 25px;font-size:13px;letter-spacing:.09em;transition:.25s}.button b{font:18px var(--latin);font-weight:400}.button:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}.buttonDark{background:var(--ink);border-color:var(--ink);color:var(--paper)}.buttonDark:hover{background:var(--accent);border-color:var(--accent)}.note{font-size:11px;color:var(--muted);line-height:1.9}.ratioLabel{color:var(--muted);font-size:12px;letter-spacing:.08em;margin-bottom:10px}.number{font:400 clamp(78px,9vw,130px) Georgia,serif;line-height:1;color:var(--accent);margin:12px 0 22px}.number span{font-size:.36em;margin-left:5px}
.homeHero{height:min(780px,calc(100svh - 130px));min-height:570px;position:relative;overflow:hidden}.homeHero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.homeHero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(248,245,238,.96) 0%,rgba(248,245,238,.74) 30%,transparent 56%)}.heroCopy{position:absolute;z-index:1;left:max(7vw,calc((100vw - 1180px)/2));top:50%;transform:translateY(-50%)}.heroCopy h1{font-size:clamp(40px,4.8vw,68px);margin-bottom:22px}.heroCopy>p:not(.eyebrow){font-family:var(--serif);font-size:17px}.splitSection{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.splitSection.reverse .portraitImage{order:2}.portraitImage{position:relative;aspect-ratio:1.1;overflow:hidden}.portraitImage img{width:100%;height:100%;object-fit:cover}.sectionCopy{padding:30px 0}.sectionCopy>p{max-width:500px}.sectionHead{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:60px}.sectionHead>p{color:var(--muted);padding-bottom:10px}
.flavorGrid{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}.flavorCard{position:relative}.flavorImage{position:relative;aspect-ratio:1;overflow:hidden;background:#e9dfd0}.flavorImage img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.flavorCard:hover img{transform:scale(1.045)}.flavorCard small{display:block;font:10px var(--latin);letter-spacing:.18em;color:var(--muted);margin:14px 0 5px}.flavorCard strong{font:400 16px var(--serif)}.flavorNumber{position:absolute;right:10px;top:calc(100% - 34px);z-index:1;color:white;font:10px var(--latin)}
.sceneSection{display:grid;grid-template-columns:.7fr 1.3fr;gap:8%;align-items:center;overflow:hidden}.sceneIntro{align-self:start;padding-top:6%}.swipe{font:10px var(--latin);letter-spacing:.17em;color:var(--muted)}.sceneWrap{min-width:0}.sceneTrack{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.sceneTrack::-webkit-scrollbar{display:none}.sceneCard{flex:0 0 100%;scroll-snap-align:start}.sceneImage{position:relative;width:100%;aspect-ratio:1;background:#e2d8c9}.sceneImage img{width:100%;height:100%;object-fit:cover}.sceneCard .eyebrow{margin:24px 0 11px}.sceneCard h3{font-size:23px}.sceneCard p:last-child{font-size:14px}.sceneControls{display:flex;align-items:center;justify-content:space-between}.sceneControls>button{width:48px;height:48px;background:none;border:0;cursor:pointer}.sceneControls button:disabled{opacity:.25}.dots{display:flex}.dots button{width:30px;height:42px;border:0;background:none;padding:0;display:grid;place-items:center;cursor:pointer}.dots span{display:block;width:5px;height:5px;border-radius:50%;background:#ab9c88;transition:.2s}.dots button[aria-current=true] span{background:var(--ink);transform:scale(1.65)}
.giftHome,.twoColumn{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.giftImage{position:relative;aspect-ratio:1.5;overflow:hidden}.giftImage img{width:100%;height:100%;object-fit:cover}.statement{text-align:center;background:var(--ink);color:var(--paper)}.statement .eyebrow{color:#c39977}.statement h2,.statement p,.statement .button{margin-left:auto;margin-right:auto}.statement p{color:#dfd6ca}.newsHome{display:grid;grid-template-columns:1fr 2fr;gap:8%}.newsRow{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 5px;display:grid;grid-template-columns:110px 1fr auto;gap:25px;align-items:center}.newsRow span{font:11px var(--latin);color:var(--muted)}.newsRow strong{font:400 17px var(--serif)}
.breadcrumb{padding:22px max(7vw,calc((100vw - 1180px)/2));font-size:10px;color:var(--muted);display:flex;gap:12px;border-bottom:1px solid var(--line)}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.pageHero{padding:90px max(7vw,calc((100vw - 1180px)/2)) 75px}.pageHero h1{max-width:1000px}.pageHero>p:last-child:not(.eyebrow){margin-top:24px;color:var(--muted)}.pageImage{position:relative;margin:0 max(4vw,20px);height:min(58vw,680px);overflow:hidden}.pageImage img{width:100%;height:100%;object-fit:cover}.lead>p{font-family:var(--serif);font-size:clamp(19px,2vw,25px);line-height:2.1;max-width:900px}.infoList{margin:30px 0 0}.infoList div{display:grid;grid-template-columns:190px 1fr;gap:30px;padding:20px 0;border-bottom:1px solid var(--line)}.infoList dt{font-size:12px;color:var(--muted)}.infoList dd{margin:0;font-size:14px;line-height:1.8}.useGrid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:50px}.useGrid article{padding:30px;border-left:1px solid var(--line)}.useGrid article:last-child{border-right:1px solid var(--line)}.useGrid small,.bigIndex{font:12px var(--latin);letter-spacing:.14em;color:var(--accent)}.useGrid h3{margin-top:50px}.useGrid p{font-size:13px}.bigIndex{font-size:48px;display:block;margin-bottom:30px}.textLink{text-decoration:underline;text-underline-offset:6px}.productDetail{display:grid;grid-template-columns:1.05fr .95fr;gap:8%;align-items:start}.detailImage{position:relative;aspect-ratio:1;background:#eee5d8}.detailImage img{width:100%;height:100%;object-fit:cover}.faq details{border-top:1px solid var(--line);max-width:900px;margin:auto}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{list-style:none;display:flex;justify-content:space-between;align-items:center;padding:27px 0;cursor:pointer;font-family:var(--serif)}.faq summary::-webkit-details-marker{display:none}.faq summary b{font-size:22px;font-weight:400;transition:.25s}.faq details[open] summary b{transform:rotate(45deg)}.faq details p{padding:0 40px 25px 0;color:var(--muted)}
.footer{background:var(--ink);color:#f3ede3;padding:80px max(7vw,calc((100vw - 1180px)/2)) 30px}.footerTop{display:flex;justify-content:space-between;border-bottom:1px solid #ffffff24;padding-bottom:50px}.footerLogo{font-size:40px}.footerTop p{font-size:12px;margin:13px 0}.footerEn{text-align:right!important;font:11px var(--latin)!important;letter-spacing:.2em;line-height:1.8!important}.footerLinks{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;padding:48px 0}.footerLinks div{display:flex;flex-direction:column}.footerLinks a{padding:9px 0;font-size:12px;color:#e4dbce}.disclosure{font-size:10px;color:#bfb3a4;border-top:1px solid #ffffff24;padding-top:25px}.copyright{display:flex;justify-content:space-between;margin-top:45px;font:9px var(--latin);letter-spacing:.18em;color:#bfb3a4}.has-js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.7,.2,1);transition-delay:var(--delay,0ms)}.has-js [data-reveal].revealed{opacity:1;transform:none}.has-js .heroCopy[data-reveal]{transform:translateY(calc(-50% + 22px))}.has-js .heroCopy[data-reveal].revealed{transform:translateY(-50%)}
@media(max-width:800px){body.admin-bar .nav{top:46px}p{font-size:14px}.announcement{font-size:9px;height:32px}.header{height:82px;padding:0 22px}.logo{font-size:28px}.menuButton span{display:none}.nav{height:50px;justify-content:flex-start;gap:24px;padding:0 18px;overflow-x:auto}.nav a{font-size:10px;white-space:nowrap}.menuPanel{top:114px;grid-template-columns:1fr 1fr;padding:25px 24px;gap:0 22px}.menuPanel a{font-size:13px}.section{padding:70px 24px}.homeHero{height:auto;min-height:0;padding-top:78vw;background:var(--soft)}.homeHero>img{height:78vw;bottom:auto;object-position:80% center}.homeHero:after{height:78vw;background:linear-gradient(90deg,rgba(248,245,238,.25),transparent)}.heroCopy{position:relative;left:auto;top:auto;transform:none;padding:42px 24px 55px}.has-js .heroCopy[data-reveal]{transform:translateY(22px)}.has-js .heroCopy[data-reveal].revealed{transform:none}.heroCopy h1{font-size:36px}.heroCopy>p:not(.eyebrow){font-size:14px}.splitSection,.splitSection.reverse,.sceneSection,.giftHome,.twoColumn,.newsHome,.productDetail{grid-template-columns:1fr;gap:40px}.splitSection .portraitImage,.splitSection.reverse .portraitImage{order:0}.splitSection .sectionCopy{order:1;padding:0}.portraitImage{aspect-ratio:1.05}.sectionHead{display:block;margin-bottom:35px}.sectionHead>p{display:none}.flavorGrid{grid-template-columns:1fr 1fr;gap:28px 15px}.sceneSection{padding-left:24px;padding-right:0}.sceneWrap{padding-right:20px}.sceneCard h3{font-size:20px}.giftHome .giftImage{grid-row:1}.statement{text-align:left}.statement .button{margin-left:0}.newsRow{grid-template-columns:1fr auto}.newsRow span{grid-column:1/-1}.pageHero{padding:55px 24px 45px}.pageHero h1{font-size:34px}.pageImage{margin:0;height:75vw}.breadcrumb{padding:17px 24px}.infoList div{grid-template-columns:1fr;gap:7px}.useGrid{grid-template-columns:1fr}.useGrid article,.useGrid article:last-child{border:0;border-top:1px solid var(--line);padding:28px 0}.useGrid h3{margin-top:25px}.productDetail .detailImage{grid-row:1}.lead>p{font-size:18px}.footer{padding:58px 24px 25px}.footerLinks{grid-template-columns:1fr 1fr;gap:25px}.footerEn{display:none}}
.homeHero>img{object-position:center top}
@media(max-width:800px){.homeHero>img{object-position:right top}}
.sceneCopy{min-height:190px;padding:27px 31px 30px;background:var(--ink);color:var(--paper)}
.sceneCopy .eyebrow{margin:0 0 14px;color:#d4b396}
.sceneCopy h3{margin:0 0 12px;color:var(--paper)}
.sceneCopy p:last-child{margin:0;color:#e8ded1}
.partnershipImage{position:relative;aspect-ratio:1.1;overflow:hidden;background:#e7ded0}
.partnershipImage img{width:100%;height:100%;object-fit:cover}
.contactSection{padding-top:80px}.contactForm{max-width:920px;margin:0 auto}.formGrid{display:grid;grid-template-columns:1fr 1fr;gap:30px 36px}.field{display:flex;flex-direction:column;gap:11px}.field>span{font-size:12px;letter-spacing:.06em}.field b{color:var(--accent);font-size:10px;font-weight:500;margin-left:6px}.field input,.field select,.field textarea{width:100%;border:1px solid #bcae9d;border-radius:0;background:#faf7f0;color:var(--ink);font:16px var(--sans);padding:15px 16px;appearance:none}.field textarea{min-height:190px;resize:vertical;line-height:1.8}.field input:focus,.field select:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:2px}.fieldWide{grid-column:1/-1}.privacyCheck{display:flex;align-items:flex-start;gap:12px;margin:28px 0;font-size:12px;line-height:1.8}.privacyCheck input{width:18px;height:18px;margin-top:2px;accent-color:var(--ink)}.submitButton{width:100%;max-width:380px;min-height:62px;border:1px solid var(--ink);background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:space-between;padding:0 24px;font:13px var(--sans);letter-spacing:.08em;cursor:pointer;transition:.2s}.submitButton:hover{background:var(--accent);border-color:var(--accent)}.submitButton b{font-size:20px;font-weight:400}.formNote{font-size:11px;color:var(--muted);margin-top:20px}.formStatus{max-width:920px;margin:0 auto 35px;padding:22px 25px;border:1px solid var(--line);background:var(--paper)}.formStatus strong{font-family:var(--serif);font-weight:400}.formStatus p{font-size:13px;margin:7px 0 0}.formStatus.success{border-color:#899878}.formStatus.error{border-color:#af796b}.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.formComplete{max-width:760px;margin:0 auto;padding:60px 40px;text-align:center;background:var(--paper);border:1px solid var(--line)}.formComplete h2{margin-bottom:22px}.formComplete p,.formComplete .button{margin-left:auto;margin-right:auto}.formComplete>p:not(.eyebrow){color:var(--muted)}
.button+.button{margin-top:12px}.purchaseCta{padding:75px max(7vw,calc((100vw - 1180px)/2));display:grid;grid-template-columns:1fr auto;gap:70px;align-items:center;background:#e4dacb;border-top:1px solid var(--line)}.purchaseCta h2{margin-bottom:12px}.purchaseCta p:not(.eyebrow){margin:0}.purchaseCta .button{margin:0;min-width:280px}
@media(max-width:800px){.sceneCopy{min-height:175px;padding:25px 23px 28px}.sceneCopy h3{font-size:19px}}
@media(max-width:800px){.contactSection{padding-top:55px}.formGrid{grid-template-columns:1fr;gap:24px}.fieldWide{grid-column:auto}.submitButton{max-width:none}.formComplete{padding:45px 22px}.formComplete h2{font-size:27px}.purchaseCta{padding:55px 24px;grid-template-columns:1fr;gap:8px}.purchaseCta .button{min-width:0;width:100%;margin-top:20px}}
.has-js .revealItem{opacity:0;transform:translateY(24px);transition:opacity .85s ease,transform .85s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms);will-change:opacity,transform}.has-js .revealItem.revealMedia{transform:translateY(24px) scale(.985)}.has-js .revealItem.revealed{opacity:1;transform:none;will-change:auto}
:where(h1,h2,h3,p,dt,dd,summary,.button span,.newsRow strong){line-break:strict;word-break:normal;word-break:auto-phrase}.eyebrow,.swipe{word-break:normal}.sceneIntro h2,.sceneCopy h3,.pageHero h1,.heroCopy h1{overflow-wrap:normal}
.heroSlides{position:absolute;inset:0}.heroSlide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;opacity:0;transition:opacity 1.1s ease;will-change:opacity}.heroSlide.active{opacity:1}.homeHero:after{z-index:1;pointer-events:none}.heroCopy{z-index:2}.heroControls{position:absolute;z-index:3;right:max(30px,calc((100vw - 1180px)/2));bottom:28px;display:flex;align-items:center;gap:15px}.heroDots{display:flex;gap:8px}.heroDots button{width:28px;height:3px;padding:0;border:0;background:rgba(62,52,43,.32);cursor:pointer;transition:background .25s,width .25s}.heroDots button[aria-current="true"]{width:45px;background:var(--ink)}.heroPause{width:34px;height:34px;padding:0;border:1px solid rgba(62,52,43,.35);border-radius:50%;background:rgba(248,245,238,.78);color:var(--ink);font:11px/1 var(--sans);cursor:pointer;backdrop-filter:blur(4px)}
@media(min-width:801px){.sceneSection{grid-template-columns:minmax(280px,.8fr) minmax(0,620px);gap:7%;justify-content:center}.sceneWrap{width:100%;max-width:620px}.sceneImage{aspect-ratio:1.22}.sceneCopy{min-height:170px;padding:23px 28px 25px}.sceneCopy .eyebrow{margin-bottom:11px}.sceneCopy h3{margin-bottom:9px}}
@media(max-width:800px){.heroSlides{height:78vw;bottom:auto}.heroSlide{object-position:center top}.heroSlide:first-child{object-position:right top}.heroControls{top:calc(78vw - 46px);right:18px;bottom:auto}.heroDots button{width:20px}.heroDots button[aria-current="true"]{width:34px}.heroPause{width:30px;height:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.has-js [data-reveal],.has-js .revealItem{opacity:1;transform:none}}
