:root{--paper:#f8f4ee;--paper-deep:#ede7dc;--ink:#2d2a26;--ink-soft:#5a554e;--moss:#8c9282;--moss-deep:#6e7464;--gold:#c2a878;--rouge:#c97d6d;--serif-ja:"Shippori Mincho B1", "游明朝", "YuMincho", serif;--gothic-ja:"Zen Kaku Gothic New", "游ゴシック体", "YuGothic", sans-serif;--serif-en:"Cormorant Garamond", "Times New Roman", serif;--max:1280px;--gutter:clamp(20px, 4vw, 56px);--rule:1px solid color-mix(in srgb, var(--ink) 12%, transparent)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--gothic-ja);color:var(--ink);background:var(--paper);letter-spacing:.04em;font-feature-settings:"palt" 1;-webkit-font-smoothing:antialiased;font-weight:400;line-height:1.85;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}body:before{content:"";pointer-events:none;z-index:1;opacity:.06;mix-blend-mode:multiply;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.5 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:fixed;inset:0}.nav{z-index:50;padding:22px var(--gutter);background:color-mix(in srgb, var(--paper) 78%, transparent);-webkit-backdrop-filter:saturate(140%)blur(14px);border-bottom:var(--rule);justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.brand{font-family:var(--serif-ja);letter-spacing:.32em;color:var(--ink);font-size:1.25rem;font-weight:600}.brand small{font-family:var(--serif-en);letter-spacing:.18em;color:var(--moss-deep);margin-top:2px;font-size:.66rem;font-style:italic;display:block}.nav ul{gap:36px;list-style:none;display:flex}.nav a{font-family:var(--serif-ja);letter-spacing:.18em;color:var(--ink-soft);font-size:.95rem;transition:color .25s}.nav a:hover{color:var(--rouge)}.nav .cta{font-family:var(--serif-ja);letter-spacing:.22em;border:1px solid var(--ink);color:var(--ink);padding:12px 26px;font-size:.9rem;transition:background .3s,color .3s}.nav .cta:hover{background:var(--ink);color:var(--paper)}@media (width<=860px){.nav ul{display:none}}.page-hero{max-width:var(--max);padding:160px var(--gutter) 64px;grid-template-columns:auto 1fr;align-items:end;gap:clamp(24px,4vw,64px);margin:0 auto;display:grid;position:relative}.page-hero__en{font-family:var(--serif-en);letter-spacing:.28em;color:var(--moss-deep);writing-mode:vertical-rl;border-left:1px solid var(--moss);align-self:stretch;padding-top:4px;padding-bottom:6px;padding-left:18px;font-size:clamp(1rem,1.4vw,1.2rem);font-style:italic;font-weight:400}.page-hero__title{font-family:var(--serif-ja);letter-spacing:.16em;color:var(--ink);font-size:clamp(2.4rem,5vw,4.2rem);font-weight:400;line-height:1.4}.page-hero__title small{letter-spacing:.32em;color:var(--ink-soft);margin-top:16px;font-size:.32em;font-weight:400;display:block}@media (width<=720px){.page-hero{grid-template-columns:1fr;padding-top:130px}.page-hero__en{writing-mode:horizontal-tb;border-left:0;border-bottom:1px solid var(--moss);width:max-content;padding-bottom:8px;padding-left:0}}.hero{min-height:100vh;padding:120px var(--gutter) 80px;max-width:var(--max);grid-template-columns:1.15fr 1fr;align-items:center;gap:clamp(32px,6vw,96px);margin:0 auto;display:grid;position:relative}@media (width<=900px){.hero{grid-template-columns:1fr;min-height:auto;padding-top:100px}}.hero__words{z-index:3;position:relative}.hero__eyebrow{font-family:var(--serif-en);color:var(--moss-deep);letter-spacing:.16em;margin-bottom:28px;padding-left:36px;font-size:1.05rem;font-style:italic;font-weight:400;position:relative}.hero__eyebrow:before{content:"";background:var(--moss);width:24px;height:1px;position:absolute;top:50%;left:0}.hero__h1{font-family:var(--serif-ja);letter-spacing:.04em;color:var(--ink);margin-bottom:36px;font-size:clamp(2.2rem,5.2vw,4rem);font-weight:400;line-height:1.45}.hero__h1 em{color:var(--rouge);font-style:normal;font-weight:600}.hero__h1 .small{color:var(--ink-soft);letter-spacing:.18em;margin-top:10px;font-size:.5em;font-weight:400;display:block}.hero__lead{color:var(--ink-soft);max-width:38ch;margin-bottom:44px;font-size:.98rem}.hero__ctas{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.btn-primary,.btn-ghost{font-family:var(--serif-ja);letter-spacing:.22em;align-items:center;gap:12px;padding:18px 34px;font-size:.95rem;transition:transform .35s cubic-bezier(.2,.7,.3,1),background .3s,color .3s;display:inline-flex}.btn-primary{background:var(--ink);color:var(--paper);border:1px solid var(--ink)}.btn-primary:hover{background:var(--rouge);border-color:var(--rouge);transform:translateY(-2px)}.btn-ghost{color:var(--ink);border-bottom:1px solid var(--ink);padding:14px 4px}.btn-ghost:after{content:"→";font-family:var(--serif-en);transition:transform .3s}.btn-ghost:hover:after{transform:translate(6px)}.hero__visual{aspect-ratio:4/5;position:relative}.hero__visual img{object-fit:cover;filter:saturate(.92)contrast(1.02);width:100%;height:100%}.hero__visual:after{content:"";background:linear-gradient(to bottom, transparent 0%, var(--ink) 30%, var(--ink) 70%, transparent 100%);width:1px;position:absolute;top:-24px;bottom:-24px;right:-18px}.hero__caption{writing-mode:vertical-rl;font-family:var(--serif-ja);letter-spacing:.34em;color:var(--paper);text-shadow:0 0 28px color-mix(in srgb, var(--ink) 60%, transparent);mix-blend-mode:difference;font-size:1.05rem;font-weight:400;position:absolute;top:38px;right:14px}.hero:before{content:"";opacity:.7;background:linear-gradient(90deg,#b5d8e8 0%,#a8c8dc 8%,#c4b5da 16%,#dcc5dc 24%,#e8c8c8 32%,#e8b8a0 40%,#e8c895 48%,#dcd49c 56%,#c8d49c 64%,#acc8ac 72%,#a8c8c0 80%,#b0bcc8 88%,#c0b5cc 96%,#d8b0b8 100%);height:5px;position:absolute;bottom:0;left:0;right:0}.trust{max-width:var(--max);padding:60px var(--gutter);border-top:var(--rule);border-bottom:var(--rule);background:var(--paper-deep);grid-template-columns:repeat(4,1fr);gap:clamp(20px,3vw,48px);margin:0 auto;display:grid}@media (width<=760px){.trust{padding:40px var(--gutter);grid-template-columns:repeat(2,1fr)}}.trust__item{text-align:left}.trust__num{font-family:var(--serif-en);color:var(--ink);margin-bottom:8px;font-size:2.6rem;font-style:italic;font-weight:400;line-height:1}.trust__num small{color:var(--moss-deep);letter-spacing:.2em;margin-left:4px;font-size:.85rem;font-style:normal}.trust__label{font-family:var(--serif-ja);letter-spacing:.18em;color:var(--ink-soft);font-size:.95rem}.story{max-width:var(--max);padding:clamp(80px, 14vh, 160px) var(--gutter);grid-template-columns:1fr 1.2fr;align-items:center;gap:clamp(32px,6vw,96px);margin:0 auto;display:grid;position:relative}@media (width<=900px){.story{grid-template-columns:1fr}}.story__poem{writing-mode:vertical-rl;font-family:var(--serif-ja);letter-spacing:.5em;color:var(--ink);max-height:460px;margin:0 auto;padding-right:40px;font-size:clamp(1.4rem,2.4vw,1.95rem);font-weight:400;line-height:2.4;position:relative}.story__poem:before{content:"";background:var(--ink);width:1px;position:absolute;top:0;bottom:0;right:12px}@media (width<=900px){.story__poem{writing-mode:horizontal-tb;max-height:none;padding:0 0 24px}.story__poem:before{display:none}}.story__visual{aspect-ratio:5/4;position:relative}.story__visual img{object-fit:cover;width:100%;height:100%}.story__visual figcaption{font-family:var(--serif-en);color:var(--moss-deep);background:var(--paper);border-left:2px solid var(--gold);padding:8px 18px;font-size:.95rem;font-style:italic;position:absolute;bottom:-28px;left:-18px}.collection{max-width:var(--max);padding:clamp(80px, 14vh, 160px) var(--gutter);margin:0 auto}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:24px;margin-bottom:64px;display:flex}.section-head h2{font-family:var(--serif-ja);letter-spacing:.18em;font-size:clamp(1.8rem,3.6vw,2.8rem);font-weight:400}.section-head .en{font-family:var(--serif-en);color:var(--moss-deep);letter-spacing:.24em;font-size:1.05rem;font-style:italic}.collection__grid{grid-template-columns:repeat(12,1fr);gap:24px;display:grid}.card{transition:transform .6s cubic-bezier(.2,.7,.3,1);position:relative;overflow:hidden}.card img{aspect-ratio:3/4;object-fit:cover;width:100%;transition:transform 1.4s cubic-bezier(.2,.7,.3,1)}.card:hover img{transform:scale(1.05)}.card .meta{justify-content:space-between;align-items:baseline;padding:18px 4px 4px;display:flex}.card .ja{font-family:var(--serif-ja);letter-spacing:.22em;font-size:1.1rem}.card .en{font-family:var(--serif-en);color:var(--moss-deep);letter-spacing:.16em;font-size:.85rem;font-style:italic}.card--lg{grid-column:span 7}.card--md{grid-column:span 5}.card--sm{grid-column:span 4}.card--xl{grid-column:span 8}@media (width<=760px){.card--lg,.card--md,.card--sm,.card--xl{grid-column:span 12}}.closing{background:var(--ink);color:var(--paper);padding:clamp(80px, 12vh, 140px) var(--gutter);text-align:center;position:relative;overflow:hidden}.closing:before{content:"";background:radial-gradient(ellipse at 50% 0%, color-mix(in srgb, var(--gold) 22%, transparent), transparent 70%);pointer-events:none;position:absolute;inset:0}.closing__en{font-family:var(--serif-en);color:var(--gold);letter-spacing:.3em;margin-bottom:22px;font-size:1.05rem;font-style:italic}.closing__h2{font-family:var(--serif-ja);letter-spacing:.16em;margin-bottom:48px;font-size:clamp(1.8rem,4vw,3rem);font-weight:400;line-height:1.6;position:relative}.closing .btn-primary{background:var(--paper);color:var(--ink);border-color:var(--paper)}.closing .btn-primary:hover{background:var(--rouge);color:var(--paper);border-color:var(--rouge)}.epilogue{background:var(--paper-deep);padding:clamp(80px, 12vh, 140px) var(--gutter) 28px;border-top:1px solid var(--ink);position:relative}.epilogue:before{content:"";background:var(--ink);width:56px;height:3px;position:absolute;top:-1px;left:50%;transform:translate(-50%)}.epilogue__top{max-width:var(--max);grid-template-columns:1.1fr 2fr auto;align-items:start;gap:clamp(36px,5vw,88px);margin:0 auto;display:grid}@media (width<=980px){.epilogue__top{grid-template-columns:1fr;gap:56px}}.epilogue__brand{flex-direction:column;gap:28px;display:flex}.epilogue__logo{font-family:var(--serif-ja);letter-spacing:.32em;color:var(--ink);font-size:1.4rem;font-weight:600}.epilogue__logo small{font-family:var(--serif-en);letter-spacing:.2em;color:var(--moss-deep);margin-top:4px;font-size:.75rem;font-style:italic;display:block}.epilogue__motto{font-family:var(--serif-ja);letter-spacing:.16em;color:var(--ink);border-left:2px solid var(--gold);padding-left:18px;font-size:1.02rem;line-height:2.1}.epilogue__address{color:var(--ink-soft);letter-spacing:.12em;font-size:.9rem;font-style:normal;line-height:1.9}.epilogue__address a{border-bottom:1px solid color-mix(in srgb, var(--ink) 25%, transparent)}.epilogue__address a:hover{color:var(--rouge);border-color:var(--rouge)}.epilogue__nav{grid-template-columns:repeat(3,1fr);gap:clamp(20px,3vw,48px);display:grid}@media (width<=540px){.epilogue__nav{grid-template-columns:1fr;gap:36px}}.epilogue__nav h4{font-family:var(--serif-ja);letter-spacing:.32em;border-bottom:1px solid var(--ink);color:var(--ink);margin-bottom:20px;padding-bottom:12px;font-size:.95rem;font-weight:600}.epilogue__nav ul{flex-direction:column;gap:11px;list-style:none;display:flex}.epilogue__nav a{font-family:var(--serif-ja);letter-spacing:.16em;color:var(--ink-soft);font-size:.92rem;transition:color .28s,padding-left .28s;display:inline-block}.epilogue__nav a:hover{color:var(--rouge);padding-left:6px}.epilogue__vert{writing-mode:vertical-rl;font-family:var(--serif-en);letter-spacing:.28em;color:var(--moss-deep);border-left:1px solid color-mix(in srgb, var(--ink) 18%, transparent);align-self:stretch;padding-left:16px;font-size:.95rem;font-style:italic}@media (width<=980px){.epilogue__vert{writing-mode:horizontal-tb;border-left:0;border-top:1px solid color-mix(in srgb, var(--ink) 18%, transparent);padding:16px 0 0}}.epilogue__bottom{max-width:var(--max);border-top:1px solid color-mix(in srgb, var(--ink) 16%, transparent);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin:56px auto 0;padding-top:22px;display:flex}.epilogue__copy{font-family:var(--serif-en);color:var(--ink-soft);letter-spacing:.12em;font-size:.85rem;font-style:italic}.epilogue__sns{gap:28px;display:flex}.epilogue__sns a{font-family:var(--serif-en);color:var(--ink);letter-spacing:.18em;border-bottom:1px solid #0000;padding-bottom:2px;font-size:.98rem;font-style:italic;transition:border-color .25s,color .25s}.epilogue__sns a:hover{color:var(--rouge);border-bottom-color:var(--rouge)}[data-reveal]{opacity:0;transition:opacity 1.1s cubic-bezier(.2,.7,.3,1),transform 1.1s cubic-bezier(.2,.7,.3,1);transform:translateY(28px)}[data-reveal].is-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transition:none;transform:none}.card img,.btn-primary,.btn-ghost:after{transition:none}}.nav__hamburger[data-astro-cid-nen7h5rs]{cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;display:none}.nav__hamburger[data-astro-cid-nen7h5rs] span[data-astro-cid-nen7h5rs]{background:var(--ink);width:22px;height:1px;transition:transform .3s,opacity .3s;display:block}.nav__hamburger[data-astro-cid-nen7h5rs].is-open span[data-astro-cid-nen7h5rs]:first-child{transform:translateY(6px)rotate(45deg)}.nav__hamburger[data-astro-cid-nen7h5rs].is-open span[data-astro-cid-nen7h5rs]:nth-child(2){opacity:0}.nav__hamburger[data-astro-cid-nen7h5rs].is-open span[data-astro-cid-nen7h5rs]:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.nav__sp[data-astro-cid-nen7h5rs]{background:var(--paper);border-bottom:1px solid color-mix(in srgb, var(--ink) 16%, transparent);padding:32px var(--gutter) 40px;z-index:49;flex-direction:column;gap:20px;display:flex;position:fixed;top:72px;left:0;right:0}.nav__sp[data-astro-cid-nen7h5rs][hidden]{display:none}.nav__sp[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{font-family:var(--serif-ja);letter-spacing:.22em;color:var(--ink);border-bottom:1px solid color-mix(in srgb, var(--ink) 10%, transparent);padding-bottom:12px;font-size:1.05rem}.nav__sp[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs].cta{border:1px solid var(--ink);border-bottom:1px solid var(--ink);text-align:center;margin-top:12px;padding:14px 20px}@media (width<=860px){.nav[data-astro-cid-nen7h5rs] .cta[data-astro-cid-nen7h5rs]{display:none}.nav__hamburger[data-astro-cid-nen7h5rs]{display:inline-flex}}a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--rouge)!important}
