@import "https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,600;1,400&family=DM+Sans:ital,wght@0,400;0,500;0,600;1,400&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#fafaf8;--color-surface:#fff;--color-text:#1a1a1a;--color-muted:#5c5c5c;--color-accent:#c4714a;--color-accent-hover:#a85d3a;--color-sage:#6b7f6b;--color-border:#e8e4de;--color-notice-bg:#faf6ee;--color-notice-border:#d4c4a8;--font-serif:"Cormorant Garamond", Georgia, serif;--font-sans:"DM Sans", "Hiragino Kaku Gothic ProN", "Meiryo", sans-serif;--max-width:1120px;--header-height:72px}html{scroll-behavior:smooth}body{font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.75}img{max-width:100%;height:auto;display:block}a{color:var(--color-accent);text-decoration:none;transition:color .2s}a:hover{color:var(--color-accent-hover)}.wrapper{max-width:var(--max-width);margin:0 auto;padding:0 24px}.site-header{z-index:100;backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);background:#fafaf8eb;position:sticky;top:0}.header-inner{height:var(--header-height);justify-content:space-between;align-items:center;gap:24px;display:flex}.logo{font-family:var(--font-serif);color:var(--color-text);letter-spacing:.02em;white-space:nowrap;font-size:1.5rem;font-weight:600}.logo:hover{color:var(--color-accent)}.nav-main{gap:28px;list-style:none;display:none}.nav-main a{color:var(--color-muted);letter-spacing:.03em;text-transform:uppercase;font-size:.875rem;font-weight:500}.nav-main a:hover,.nav-main a[aria-current=page]{color:var(--color-text)}.header-actions{align-items:center;gap:16px;display:flex}.lang-switch{gap:4px;font-size:.8125rem;font-weight:500;display:flex}.lang-switch a{color:var(--color-muted);border-radius:4px;padding:4px 8px}.lang-switch a.active,.lang-switch a:hover{color:var(--color-text);background:var(--color-border)}.btn-contact{color:var(--color-surface);background:var(--color-text);border-radius:4px;padding:8px 18px;font-size:.8125rem;font-weight:500;display:none}.btn-contact:hover{color:var(--color-surface);background:var(--color-accent)}@media (width>=900px){.nav-main{display:flex}.btn-contact{display:inline-block}}.underage-bar{background:var(--color-notice-bg);border-bottom:1px solid var(--color-notice-border);text-align:center;color:#5a4a32;padding:10px 0;font-size:16px;font-weight:600;line-height:1.5}.hero{background:var(--color-text);color:#fff;align-items:flex-end;min-height:70vh;padding:80px 0 64px;display:flex;position:relative;overflow:hidden}.hero-bg{opacity:.45;background-position:50%;background-size:cover;position:absolute;inset:0}.hero-content{z-index:1;position:relative}.hero h1{font-family:var(--font-serif);max-width:14ch;margin-bottom:20px;font-size:clamp(2.5rem,6vw,4rem);font-weight:400;line-height:1.15}.hero p{opacity:.9;max-width:48ch;margin-bottom:32px;font-size:1.125rem}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.btn{letter-spacing:.04em;text-transform:uppercase;border-radius:4px;padding:14px 28px;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-block}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover{background:var(--color-accent-hover);color:#fff}.btn-outline{color:#fff;border:1px solid #fff9}.btn-outline:hover{color:#fff;background:#ffffff1a}.btn-dark{background:var(--color-text);color:#fff}.btn-dark:hover{background:var(--color-accent);color:#fff}.section{padding:96px 0}.section-header{margin-bottom:48px}.section-header h2{font-family:var(--font-serif);margin-bottom:12px;font-size:clamp(2rem,4vw,2.75rem);font-weight:400}.section-header p{color:var(--color-muted);max-width:56ch}.trust-row{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);color:var(--color-muted);flex-wrap:wrap;gap:24px 40px;padding:32px 0;font-size:.875rem;display:flex}.origin-grid{grid-template-columns:1fr;gap:32px;display:grid}@media (width>=640px){.origin-grid{grid-template-columns:repeat(2,1fr)}}.origin-card{background:var(--color-surface);border:1px solid var(--color-border);color:inherit;border-radius:4px;transition:transform .3s,box-shadow .3s;display:block;overflow:hidden}.origin-card:hover{color:inherit;transform:translateY(-4px);box-shadow:0 12px 40px #00000014}.origin-card-img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .5s;overflow:hidden}.origin-card:hover .origin-card-img{transform:scale(1.03)}.origin-card-body{padding:24px}.origin-card-region{text-transform:uppercase;letter-spacing:.08em;color:var(--color-sage);margin-bottom:8px;font-size:.75rem}.origin-card h3{font-family:var(--font-serif);margin-bottom:8px;font-size:1.75rem;font-weight:400}.origin-card p{color:var(--color-muted);font-size:.9375rem}.pillar-grid{align-items:stretch;gap:24px;display:grid}@media (width>=900px){.pillar-grid{grid-template-columns:repeat(3,1fr);gap:28px}}.pillar-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:4px;flex-direction:column;height:100%;padding:28px 28px 32px;display:flex}.pillar-card h3{font-family:var(--font-serif);overflow-wrap:break-word;margin-bottom:12px;font-size:clamp(1.25rem,2vw,1.5rem);font-weight:400;line-height:1.25}.pillar-card .pillar-sub{color:var(--color-sage);margin-bottom:16px;font-size:.8125rem}.pillar-card p{color:var(--color-muted);font-size:.9375rem}.page-hero{border-bottom:1px solid var(--color-border);padding:80px 0 48px}.page-hero h1{font-family:var(--font-serif);margin-bottom:16px;font-size:clamp(2.25rem,5vw,3.25rem);font-weight:400}.page-hero .lead{color:var(--color-muted);max-width:60ch;font-size:1.125rem}.prose{padding:64px 0}.prose h2{font-family:var(--font-serif);margin:48px 0 16px;font-size:1.75rem;font-weight:400}.prose h2:first-child{margin-top:0}.prose p{color:var(--color-muted);margin-bottom:1.25em}.prose ul,.prose ol{color:var(--color-muted);margin:0 0 1.25em 1.25em}.prose li{margin-bottom:.5em}.prose strong{color:var(--color-text)}.data-table{border-collapse:collapse;width:100%;margin:24px 0;font-size:.9375rem}.data-table th,.data-table td{border:1px solid var(--color-border);text-align:left;vertical-align:top;padding:14px 16px}.data-table th{background:var(--color-surface);width:200px;color:var(--color-text);font-weight:500}.data-table td{color:var(--color-muted)}.form-group{margin-bottom:20px}.form-group label{margin-bottom:6px;font-size:.875rem;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--color-border);background:var(--color-surface);border-radius:4px;width:100%;padding:12px 14px;font-family:inherit;font-size:1rem}.form-group textarea{resize:vertical;min-height:160px}.contact-direct{border-top:1px solid var(--color-border);margin-top:48px;padding-top:48px}.contact-direct p{color:var(--color-muted);margin-bottom:8px}.origin-detail-hero{background-position:50%;background-size:cover;height:50vh;min-height:360px;position:relative}.origin-detail-hero:after{content:"";background:linear-gradient(#0000 40%,#0009);position:absolute;inset:0}.origin-detail-hero .wrapper{z-index:1;color:#fff;flex-direction:column;justify-content:flex-end;height:100%;padding-bottom:48px;display:flex;position:relative}.origin-detail-hero h1{font-family:var(--font-serif);font-size:clamp(2.5rem,5vw,3.5rem);font-weight:400}.shop-coming{text-align:center;padding:120px 0}.shop-coming h2{font-family:var(--font-serif);margin-bottom:16px;font-size:2.5rem}.shop-coming .badge{letter-spacing:.1em;text-transform:uppercase;background:var(--color-border);border-radius:4px;margin-bottom:24px;padding:6px 16px;font-size:.75rem;font-weight:600;display:inline-block}.site-footer{background:var(--color-text);color:#ffffffb3;margin-top:auto;padding:64px 0 32px}.footer-grid{gap:40px;margin-bottom:48px;display:grid}@media (width>=768px){.footer-grid{grid-template-columns:2fr 1fr 1fr}}.footer-brand .logo{color:#fff;margin-bottom:12px;display:inline-block}.footer-brand p{font-size:.875rem;line-height:1.6}.footer-nav h4{text-transform:uppercase;letter-spacing:.1em;color:#ffffff80;margin-bottom:16px;font-size:.75rem}.footer-nav ul{list-style:none}.footer-nav li{margin-bottom:10px}.footer-nav a{color:#ffffffbf;font-size:.875rem}.footer-nav a:hover{color:#fff}.footer-trust{border-top:1px solid #ffffff1a;padding:24px 0;font-size:.8125rem;line-height:1.8}.footer-trust strong{color:#fff}.footer-bottom{text-align:center;border-top:1px solid #ffffff1a;padding-top:24px;font-size:.8125rem}.site-footer .underage-bar{border:1px solid var(--color-notice-border);border-radius:4px;margin-bottom:32px}main{min-height:calc(100vh - var(--header-height) - 200px)}body{background:radial-gradient(1200px 600px at 10% -10%, #c4714a12, transparent 55%), radial-gradient(900px 500px at 100% 20%, #6b7f6b14, transparent 50%), var(--color-bg)}.illust{width:100%;height:auto;color:var(--color-text);display:block}.illust-wrap{color:var(--color-accent);max-width:140px;margin-bottom:20px}.illust-wrap.large{max-width:280px;color:var(--color-sage);margin:0 auto}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(28px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.hero{min-height:78vh}.hero-bg{animation:18s ease-out forwards heroZoom;transform:scale(1.04)}@keyframes heroZoom{0%{transform:scale(1.08)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.hero-bg{animation:none}.reveal{opacity:1;transition:none;transform:none}}.hero-eyebrow{letter-spacing:.14em;text-transform:uppercase;color:#ffffffbf;margin-bottom:16px;font-size:.75rem;font-weight:600;display:inline-block}.visual-band{align-items:center;gap:40px;display:grid}@media (width>=860px){.visual-band{grid-template-columns:1.05fr .95fr;gap:64px}.visual-band.reverse{direction:rtl}.visual-band.reverse>*{direction:ltr}}.visual-frame{aspect-ratio:4/5;background:var(--color-border);border-radius:4px;position:relative;overflow:hidden}.visual-frame img{object-fit:cover;width:100%;height:100%}.visual-frame:after{content:"";pointer-events:none;background:linear-gradient(#0000 55%,#1a1a1a40);position:absolute;inset:0}.visual-caption{z-index:1;color:#fff;letter-spacing:.04em;font-size:.8125rem;position:absolute;bottom:18px;left:20px}.pillar-card{transition:transform .3s,border-color .3s;position:relative;overflow:hidden}.pillar-card:hover{border-color:#d6cfc4;transform:translateY(-3px)}.pillar-card .illust-wrap{max-width:72px;color:var(--color-sage);margin-bottom:16px}.pillar-card>p:last-child{margin-top:auto}.visual-copy{flex-direction:column;justify-content:center;max-width:36rem;display:flex}.feature-strip{align-items:stretch;gap:20px;display:grid}@media (width>=900px){.feature-strip{grid-template-columns:repeat(3,1fr);gap:24px}}.feature-item{border:1px solid var(--color-border);backdrop-filter:blur(6px);background:#ffffffb8;border-radius:4px;flex-direction:column;height:100%;padding:28px 28px 32px;display:flex}.feature-item h3{font-family:var(--font-serif);overflow-wrap:break-word;margin-bottom:12px;font-size:clamp(1.25rem,2vw,1.45rem);font-weight:400;line-height:1.25}.feature-item p{color:var(--color-muted);margin-top:auto;font-size:.9375rem;line-height:1.65}.decor-panel{padding:64px 0;position:relative;overflow:hidden}.decor-panel .illust-bg{width:min(420px,48vw);color:var(--color-sage);opacity:.55;pointer-events:none;position:absolute;top:10%;right:-4%}.page-hero{position:relative;overflow:hidden}.page-hero .illust-bg{width:min(360px,55vw);color:var(--color-accent);opacity:.35;pointer-events:none;position:absolute;bottom:-10%;right:4%}.process-step{counter-increment:step}.section-soft{background:linear-gradient(#ffffff8c,#fafaf833)}
