:root{--paper:#f3ecdf;--paper2:#e8ddcb;--green:#4d5846;--sage:#8c9a7e;--brown:#4b372c;--amber:#b56b3e;--ink:#332f2a;--white:#fffdf8;--radius:26px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Zen Kaku Gothic New",sans-serif;font-size:16px;line-height:1.8}body:after{content:"";position:fixed;inset:0;pointer-events:none;opacity:.18;z-index:20;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.09'/%3E%3C/svg%3E")}a{color:inherit}.skip{position:fixed;top:-80px;left:16px;z-index:99;background:#fff;padding:10px 18px}.skip:focus{top:12px}.header{position:fixed;z-index:30;top:0;left:0;right:0;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:20px 4vw;color:#fff;transition:.35s}.header.scrolled{padding-block:12px;background:rgba(243,236,223,.88);backdrop-filter:blur(16px);color:var(--ink);box-shadow:0 1px 0 rgba(51,47,42,.1)}.brand{text-decoration:none;display:flex;align-items:center;gap:13px;font:500 .68rem/1 "DM Sans",sans-serif;letter-spacing:.16em}.brand img{display:block;width:clamp(185px,18vw,255px);height:auto;filter:invert(1);transition:.35s}.header.scrolled .brand img{filter:none}.brand-mark{font-family:"Zen Old Mincho";font-size:1.75rem;letter-spacing:.08em}.nav{display:flex;gap:30px}.nav a,.shop-button{text-decoration:none;font-size:.82rem;font-weight:500}.nav a{position:relative}.nav a:after{content:"";position:absolute;height:1px;left:0;right:100%;bottom:-5px;background:currentColor;transition:.3s}.nav a:hover:after{right:0}.shop-button{justify-self:end;border:1px solid currentColor;border-radius:99px;padding:10px 18px;display:flex;gap:20px}.hero{min-height:760px;height:100svh;position:relative;color:#fff;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(26,25,21,.77) 0%,rgba(31,28,23,.42) 44%,rgba(31,28,23,.03) 78%)}.hero-copy{position:absolute;left:7vw;top:50%;transform:translateY(-48%);max-width:650px}.eyebrow,.section-kicker{font:600 .72rem/1.2 "DM Sans",sans-serif;letter-spacing:.19em}.hero h1,.intro h2,.section-head h2,.story h2,.space h2,.instagram h2,.access h2,.faq h2{font-family:"Zen Old Mincho",serif;font-weight:500;letter-spacing:.03em;line-height:1.42;margin:.45em 0}.hero h1{font-size:clamp(2.7rem,5vw,5rem)}.hero-copy>p:not(.eyebrow){font-size:1.05rem;letter-spacing:.05em}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:35px}.primary{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:#fff;text-decoration:none;border-radius:99px;min-height:54px;padding:0 27px;font-weight:600;transition:.3s}.primary:hover{transform:translateY(-3px);background:#3f493a}.text-link{text-underline-offset:6px}.text-link span{display:inline-block;transition:.3s}.text-link:hover span{transform:translateX(5px)}.today{position:absolute;right:4vw;bottom:5vw;width:min(340px,28vw);padding:24px 28px;border:1px solid rgba(255,255,255,.42);background:rgba(245,239,229,.18);backdrop-filter:blur(16px);border-radius:20px}.today span{font:600 .64rem "DM Sans";letter-spacing:.17em}.today strong{display:block;font:500 1.8rem "DM Sans";letter-spacing:.04em;margin:4px 0}.today p{font-size:.82rem;line-height:1.7;margin:0 0 8px}.today a{font-size:.78rem;text-underline-offset:4px}.scroll{position:absolute;left:4vw;bottom:5vw;writing-mode:vertical-rl;font:500 .58rem "DM Sans";letter-spacing:.24em}.intro{padding:140px max(7vw,24px);display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:6vw;align-items:start}.intro h2{font-size:clamp(2rem,3.6vw,3.7rem);margin-top:0}.intro>p:last-child{margin-top:50px}.section-kicker{color:var(--amber)}.bento-wrap{padding:30px max(4vw,20px) 130px}.section-head{max-width:1180px;margin:0 auto 45px;display:flex;justify-content:space-between;align-items:end}.section-head h2{font-size:clamp(2rem,3vw,3.2rem);margin-bottom:0}.section-head>p{max-width:350px}.bento{max-width:1180px;margin:auto;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:230px;gap:18px}.tile{position:relative;overflow:hidden;border-radius:var(--radius);padding:27px;color:var(--white);text-decoration:none;transition:transform .38s,box-shadow .38s;display:flex;align-items:flex-end}.tile:hover{transform:translateY(-5px);box-shadow:0 18px 45px rgba(51,47,42,.13)}.tile .num{position:absolute;top:22px;right:25px;font:500 .7rem "DM Sans";opacity:.75}.tile p{font:600 .66rem "DM Sans";letter-spacing:.17em}.tile h3{font:500 clamp(1.55rem,2.5vw,2.5rem)/1.45 "Zen Old Mincho";margin:.3em 0}.tile .desc{font:400 .88rem/1.8 "Zen Kaku Gothic New";letter-spacing:0;max-width:360px}.goods{grid-column:span 7;grid-row:span 2;background:linear-gradient(135deg,rgba(48,55,42,.15),rgba(37,43,32,.86)),url("goods.webp") center/cover}.goods .round-arrow{display:grid;place-items:center;width:47px;height:47px;border:1px solid #fff;border-radius:50%;position:absolute;right:27px;bottom:27px}.potato{grid-column:span 5;grid-row:span 2;background:linear-gradient(0deg,rgba(104,48,24,.76),rgba(104,48,24,.06)),url("hero.png") 72% center/cover}.tea{grid-column:span 4;background:linear-gradient(0deg,rgba(43,55,37,.86),rgba(43,55,37,.23)),url("hero.jpg") center/cover}.tea ul{display:flex;gap:8px;list-style:none;padding:0;margin:15px 0 0;flex-wrap:wrap}.tea li{font-size:.72rem;border:1px solid rgba(255,255,255,.4);padding:5px 10px;border-radius:30px}.sweets{grid-column:span 4;background:linear-gradient(0deg,rgba(53,62,47,.82),rgba(53,62,47,.16)),url("seasonal.webp") center/cover}.online{grid-column:span 4;background:linear-gradient(0deg,rgba(61,38,27,.9),rgba(61,38,27,.25)),url("hero.png") 72% center/cover}.online>div>span{font-size:.78rem;text-decoration:underline;text-underline-offset:5px}.story{background:#d5c3aa;min-height:620px;padding:100px max(7vw,25px);display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.story-copy{max-width:550px}.story h2{font-size:clamp(2.3rem,4vw,4rem)}.brown{background:var(--brown);margin-top:25px}.story blockquote{margin:0;font:500 clamp(2.1rem,4vw,4.5rem)/1.5 "Zen Old Mincho";color:var(--brown);position:relative}.story blockquote span{font-size:6rem;position:absolute;left:-50px;top:-60px;opacity:.18}.space,.instagram{padding:120px max(7vw,25px);display:grid;grid-template-columns:1fr 1fr;gap:8vw}.space h2,.instagram h2,.access h2,.faq h2{font-size:clamp(2rem,3.5vw,3.6rem)}.space-photo{grid-column:1/-1;margin:24px 0 5px;overflow:hidden;border-radius:var(--radius);height:min(56vw,640px)}.space-photo img{width:100%;height:100%;object-fit:cover;display:block}.chips{grid-column:1/-1;display:flex;gap:12px}.chips span{border:1px solid #a99c89;border-radius:99px;padding:9px 18px;font:600 .7rem "DM Sans";letter-spacing:.13em}.instagram{background:var(--green);color:#fff}.instagram .section-kicker{color:#d9c499}.instagram>div:last-child{max-width:500px;align-self:end}.instagram .primary{background:var(--white);color:var(--green);margin-top:20px}.access{padding:130px max(7vw,25px);display:grid;grid-template-columns:.8fr 1.2fr;gap:7vw}.access dl{margin:0}.access dl div{display:grid;grid-template-columns:140px 1fr;padding:20px 0;border-bottom:1px solid #c9bdac}.access dt{font-size:.8rem;color:#776e64}.access dd{margin:0;font-weight:500}.access dd a{text-underline-offset:4px}.access small{font-weight:400}.map-link{grid-column:2;display:grid;grid-template-columns:1fr auto;gap:4px;background:var(--brown);color:#fff;border-radius:20px;text-decoration:none;padding:25px 28px;margin-top:-20px}.map-link span{font:600 .65rem "DM Sans";letter-spacing:.17em}.map-link strong{grid-row:2;font-family:"Zen Old Mincho";font-size:1.35rem}.map-link b{grid-row:1/3;grid-column:2;align-self:center;font-size:1.4rem;transition:.3s}.map-link:hover b{transform:translate(4px,-4px)}.faq{padding:30px max(7vw,25px) 140px;display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}.faq-list details{border-top:1px solid #c9bdac}.faq-list details:last-child{border-bottom:1px solid #c9bdac}.faq summary{list-style:none;cursor:pointer;padding:24px 0;font-weight:600;display:flex;justify-content:space-between}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:1.3rem;transition:.25s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{margin:-5px 0 25px;color:#615a52}footer{background:#352b25;color:#eee4d5;padding:80px max(7vw,25px) 40px;display:grid;grid-template-columns:1fr 1fr;gap:30px}.footer-brand{display:flex;flex-direction:column}.footer-brand img{width:min(310px,70vw);height:auto;filter:invert(1)}.footer-brand strong{font:500 3.5rem "Zen Old Mincho"}.footer-brand span{font:600 .65rem "DM Sans";letter-spacing:.2em}.footer-links{display:flex;gap:25px;align-items:end}.footer-links a{text-underline-offset:5px}footer small{grid-column:1/-1;margin-top:50px;opacity:.65}.mobile-bar{display:none}
@media(max-width:800px){body{padding-bottom:64px}.header{grid-template-columns:1fr auto;padding:14px 18px}.brand span:last-child,.nav{display:none}.brand img{width:150px}.brand-mark{font-size:1.5rem}.shop-button{padding:8px 13px;font-size:.65rem;gap:8px}.hero{height:90svh;min-height:620px}.hero>img{object-position:58% center}.hero-shade{background:linear-gradient(90deg,rgba(28,26,21,.7),rgba(28,26,21,.18)),linear-gradient(0deg,rgba(28,26,21,.45),transparent 55%)}.hero-copy{left:22px;right:22px;top:46%}.hero h1{font-size:clamp(2.35rem,11vw,3.5rem)}.hero-copy>p:not(.eyebrow){font-size:.92rem}.hero-actions{gap:18px;margin-top:26px}.primary{min-height:50px;padding:0 21px;font-size:.88rem}.today{left:18px;right:18px;bottom:18px;width:auto;padding:15px 18px;display:grid;grid-template-columns:1fr auto;gap:2px 15px}.today strong{font-size:1.3rem}.today p{grid-column:1/2}.today a{grid-column:2;grid-row:2;align-self:center}.scroll{display:none}.intro{padding:90px 24px;grid-template-columns:1fr;gap:10px}.intro>p:last-child{margin-top:10px}.intro h2{font-size:2.3rem}.section-head{align-items:start;flex-direction:column}.section-head>p{margin-top:5px}.bento-wrap{padding-bottom:90px}.bento{grid-template-columns:1fr;grid-auto-rows:260px}.tile,.goods,.potato,.tea,.sweets,.online{grid-column:1;grid-row:auto}.goods{min-height:400px}.potato{min-height:400px}.tile h3{font-size:2rem}.story{padding:80px 24px;grid-template-columns:1fr;gap:60px;min-height:0}.story blockquote{font-size:2.3rem;padding-left:25px}.story blockquote span{left:-5px}.space,.instagram{padding:80px 24px;grid-template-columns:1fr;gap:25px}.chips{flex-wrap:wrap}.access{padding:90px 24px;grid-template-columns:1fr;gap:30px}.access dl div{grid-template-columns:100px 1fr}.map-link{grid-column:1;margin-top:0}.faq{padding:20px 24px 90px;grid-template-columns:1fr;gap:25px}footer{padding:70px 24px 35px;grid-template-columns:1fr}.footer-links{flex-wrap:wrap}.mobile-bar{position:fixed;z-index:40;bottom:0;left:0;right:0;height:64px;background:rgba(255,253,248,.95);backdrop-filter:blur(15px);box-shadow:0 -4px 22px rgba(49,43,37,.12);display:grid;grid-template-columns:repeat(4,1fr)}.mobile-bar a{display:grid;place-items:center;text-decoration:none;font-size:.7rem;font-weight:600;border-right:1px solid #e5dccf}.mobile-bar a:last-child{background:var(--amber);color:#fff;border:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Header glass panels */
.header{gap:18px}
.brand,.nav,.shop-button{background:rgba(245,239,229,.18);border:1px solid rgba(255,255,255,.42);box-shadow:0 10px 30px rgba(25,22,18,.11);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.brand{justify-self:start;padding:9px 17px;border-radius:19px}
.nav{padding:13px 25px;border-radius:999px}
.shop-button{background:rgba(245,239,229,.18)}
.header.scrolled{background:transparent;box-shadow:none}
.header.scrolled .brand,.header.scrolled .nav,.header.scrolled .shop-button{background:rgba(252,250,246,.84);border-color:rgba(255,255,255,.75);box-shadow:0 10px 30px rgba(73,57,47,.1)}
@media(max-width:800px){.header{gap:10px}.brand{padding:7px 10px;border-radius:15px}.shop-button{padding:9px 12px}.header.scrolled{background:transparent}}

/* Mobile bento row sizing */
@media(max-width:800px){.bento{grid-auto-rows:auto}.tile,.goods,.potato,.tea,.sweets,.online{grid-column:1;grid-row:auto;min-height:280px}.goods,.potato{min-height:400px}}

/* Kajiya brand palette — base color #B5D1C5 */
:root{--brand:#b5d1c5;--brand-soft:#e7f1ed;--brand-deep:#31544b;--paper:#f8f5ee;--paper2:#e7f1ed;--green:#31544b;--sage:#7fa99a;--brown:#634b3c;--amber:#ae6846;--ink:#26352f;--white:#fffdf8;--radius:28px}
body{background:var(--paper);color:var(--ink)}
.header{color:var(--brand-deep)}
.brand img,.header.scrolled .brand img{filter:none}
.brand,.nav{background:rgba(181,209,197,.88);border-color:rgba(255,255,255,.7);box-shadow:0 12px 32px rgba(35,68,59,.13)}
.shop-button{background:rgba(49,84,75,.94);border-color:rgba(255,255,255,.42);color:#fff;box-shadow:0 12px 32px rgba(35,68,59,.18)}
.header.scrolled .brand,.header.scrolled .nav{background:rgba(181,209,197,.94);border-color:rgba(255,255,255,.78)}
.header.scrolled .shop-button{background:rgba(49,84,75,.96);border-color:rgba(255,255,255,.72);color:#fff}
.primary{background:var(--brand-deep)}.primary:hover{background:#233f38}
.today{background:rgba(181,209,197,.84);border-color:rgba(255,255,255,.64);color:var(--brand-deep);box-shadow:0 20px 50px rgba(30,54,48,.2)}
.intro{background:var(--brand-soft);border-bottom:1px solid var(--brand)}
.section-kicker{color:var(--brand-deep)}
.tile{border:1px solid rgba(181,209,197,.5)}
.story{background:var(--brand)}
.story blockquote{color:var(--brand-deep)}
.space{background:var(--white)}
.chips span{border-color:var(--brand-deep);color:var(--brand-deep);background:var(--brand-soft)}
.instagram{background:var(--brand-deep)}
.instagram .section-kicker{color:var(--brand)}
.instagram .primary{background:var(--brand);color:var(--brand-deep)}
.access dl div,.faq-list details{border-color:var(--brand)}
.map-link{background:var(--brand-deep)}
.faq{background:var(--brand-soft)}
footer{background:#243f38;color:#f3f8f5}
@media(max-width:800px){.mobile-bar{background:rgba(231,241,237,.96)}.mobile-bar a{border-color:var(--brand)}.mobile-bar a:first-child{color:var(--brand-deep)}.header .brand{background:rgba(181,209,197,.92)}}

/* Preserve the frosted-glass header treatment */
.brand,.nav,.shop-button{
  -webkit-backdrop-filter:blur(18px) saturate(135%);
  backdrop-filter:blur(18px) saturate(135%);
  border:1px solid rgba(255,255,255,.62);
  box-shadow:0 12px 34px rgba(24,49,42,.16),inset 0 1px 0 rgba(255,255,255,.36)
}
.brand,.nav{background:linear-gradient(135deg,rgba(255,255,255,.34),rgba(181,209,197,.4))}
.shop-button{background:linear-gradient(135deg,rgba(71,105,95,.62),rgba(35,69,60,.54));color:#fff}
.header.scrolled .brand,.header.scrolled .nav{background:linear-gradient(135deg,rgba(255,255,255,.5),rgba(181,209,197,.58));border-color:rgba(255,255,255,.72)}
.header.scrolled .shop-button{background:linear-gradient(135deg,rgba(67,103,92,.72),rgba(35,69,60,.66));border-color:rgba(255,255,255,.58)}
.today{background:linear-gradient(135deg,rgba(255,255,255,.3),rgba(181,209,197,.48));-webkit-backdrop-filter:blur(18px) saturate(130%);backdrop-filter:blur(18px) saturate(130%);border-color:rgba(255,255,255,.65);box-shadow:0 18px 45px rgba(25,51,44,.18),inset 0 1px 0 rgba(255,255,255,.38)}
@media(max-width:800px){.header .brand{background:linear-gradient(135deg,rgba(255,255,255,.42),rgba(181,209,197,.48))}.header .shop-button{background:linear-gradient(135deg,rgba(67,103,92,.68),rgba(35,69,60,.6))}}

/* Hero business-hours card uses white type over glass */
.today,.today a{color:#fff;text-shadow:0 1px 8px rgba(24,49,42,.34)}
/* Store history and supplied product imagery */
.origin{padding:120px max(7vw,25px);display:grid;grid-template-columns:1.15fr .85fr;gap:7vw;align-items:center;background:var(--white)}
.origin figure{margin:0;overflow:hidden;border-radius:var(--radius);min-height:480px}
.origin figure img{width:100%;height:100%;object-fit:cover;display:block}
.origin h2{font:500 clamp(2.2rem,3.8vw,3.8rem)/1.42 "Zen Old Mincho",serif;letter-spacing:.03em;margin:.45em 0}
.origin-copy{max-width:520px}
.online{background:linear-gradient(0deg,rgba(35,69,60,.9),rgba(35,69,60,.2)),url("frozen-imo.webp") center/cover}
@media(max-width:800px){.origin{padding:80px 24px;grid-template-columns:1fr;gap:34px}.origin figure{min-height:300px}.origin h2{font-size:2.35rem}}
.footer-brand img{filter:brightness(0) invert(1)}
.tile p{margin:0}
@media(min-width:801px) and (max-width:1100px){.bento{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:auto}.tile,.goods,.potato,.tea,.sweets{grid-column:span 1;grid-row:auto;min-height:360px}.online{grid-column:1/-1;grid-row:auto;min-height:300px}.tile h3{font-size:clamp(1.8rem,4vw,2.3rem)}}
@media(max-width:800px){.origin figure{height:220px;min-height:0}.tile,.tea,.sweets,.online{min-height:260px}.goods,.potato{min-height:340px}}
@media(min-width:1101px){.bento{grid-template-rows:230px 230px 260px;grid-auto-rows:260px}.tile h3{font-size:clamp(1.55rem,2.15vw,2.15rem)}}

.movie{padding:110px max(4vw,20px);background:var(--paper)}
.movie-player{position:relative;max-width:1180px;margin:auto;overflow:hidden;border-radius:var(--radius);background:var(--brown);box-shadow:0 24px 60px rgba(51,47,42,.16)}
.movie-player video{display:block;width:100%;height:auto;aspect-ratio:16/9;background:#201b17}
.movie-glass{position:absolute;left:28px;top:28px;max-width:440px;padding:20px 24px;border:1px solid rgba(255,255,255,.48);border-radius:20px;background:rgba(248,244,236,.7);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 12px 36px rgba(36,30,25,.16);pointer-events:none}
.movie-glass .section-kicker{margin:0;color:var(--amber)}
.movie-glass h2{margin:.3em 0 .15em;font:500 clamp(1.7rem,3vw,2.8rem)/1.4 "Zen Old Mincho",serif;letter-spacing:.03em;color:var(--brown)}
.movie-glass>p:last-child{margin:0;color:#51483f;font-size:.92rem}

@media(max-width:800px){.movie{padding:70px 20px}.movie-player{border-radius:20px}.movie-glass{position:relative;left:auto;top:auto;max-width:none;margin:0;padding:22px;border:0;border-radius:0;background:rgba(231,241,237,.96);backdrop-filter:none;-webkit-backdrop-filter:none}.movie-glass h2{font-size:2rem}.movie-glass>p:last-child{font-size:.88rem}.movie-player video{border-radius:20px 20px 0 0}}
