:root{--pink:#C8959C;--bg:#FAF9F6;--ink:#2B2625;--muted:#6B6563;--serif:'Noto Serif JP',serif;--sans:'Noto Sans JP',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--ink);font:400 15px/2 var(--sans);letter-spacing:.05em}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:6px}a:focus-visible{outline:3px solid #80535b;outline-offset:6px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif)}h2{font-size:clamp(26px,3vw,38px);line-height:1.7;letter-spacing:.12em}h3{font-size:24px;line-height:1.7}.wrap{max-width:1120px;margin:auto;padding-left:32px;padding-right:32px}.section{padding-top:100px;padding-bottom:100px}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:700;color:#80535b;margin-bottom:20px}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;background:var(--pink);color:var(--ink);padding:16px 30px;border-radius:40px;font-weight:700;font-size:13px;min-height:48px;transition:background .2s}.button:hover{background:#ddb8bd;text-decoration:none}.text-link{display:inline-block;font-size:13px;font-weight:700;border-bottom:1px solid var(--pink);padding:10px 0}.skip{position:fixed;top:8px;left:8px;transform:translateY(-160%);z-index:10;background:white;padding:10px}.skip:focus{transform:none}header{position:sticky;top:0;z-index:5;border-bottom:1px solid #e9e4e1;background:#fffffff2;backdrop-filter:blur(12px)}.header-inner{max-width:1280px;margin:auto;padding:15px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:20px;font-weight:700;letter-spacing:.06em}.header-inner nav{display:flex;align-items:center;gap:30px;font-size:12px}.shop{padding:8px 24px}.hero{position:relative;overflow:hidden;border-bottom:1px solid #e8dadd;background:radial-gradient(ellipse at 95% 70%,#e8cdd1 0,transparent 58%),var(--bg)}.hero .wrap{position:relative;padding-top:100px;padding-bottom:105px}.hero h1{position:relative;z-index:1;font-size:clamp(32px,4.7vw,60px);line-height:1.75;letter-spacing:.12em}.hero-description{margin-top:24px;margin-bottom:25px;color:var(--muted)}.hero-mark{position:absolute;right:32px;bottom:70px;font:700 clamp(44px,7vw,94px)/1.15 var(--serif);letter-spacing:-.03em;color:#c8959c66;pointer-events:none}.about{display:grid;grid-template-columns:1fr 1.2fr;gap:75px}.prose p+p{margin-top:22px}.note{font-size:12px;color:var(--muted)}.suppliers-section{background:#F4F1EA}.intro{margin-top:16px;color:var(--muted);margin-bottom:40px}.supplier-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.supplier-card{background:white;border:1px solid #ece6e3;border-radius:20px;overflow:hidden;height:100%}.supplier-card img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;object-position:center top;display:block}.portrait-placeholder{aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(140deg,#e9dcdb,#f7f3ef);color:#80535b;text-align:center;font:400 26px/1.8 var(--serif);letter-spacing:.15em}.photo-label{font:400 11px/2 var(--sans);letter-spacing:.08em;margin-top:20px}.card-body{padding:32px}.card-body .eyebrow{margin-bottom:12px}.reading{font-family:var(--sans);display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:4px}.achievement{font-weight:700;font-size:14px;margin:22px 0 14px}.card-body>p:not(.eyebrow){font-size:14px}.card-body .text-link{margin-top:18px}.story{display:grid;grid-template-columns: .8fr 1.2fr;gap:40px;align-items:center;padding:32px;background:white;border:1px solid #e9e2df;border-radius:20px}.story:hover{text-decoration:none;border-color:var(--pink)}.story:hover h3{text-decoration:underline;text-underline-offset:6px}.story-art{min-height:220px;background:#ead8da;display:flex;flex-direction:column;justify-content:center;align-items:center;font:400 26px/2 var(--serif);text-align:center}.story-art span{font:700 11px/2 var(--sans);letter-spacing:.18em}.story h3{font-size:22px;margin-bottom:16px}.story p:not(.eyebrow){color:var(--muted);font-size:14px}.story .text-link{margin-top:18px}.join{text-align:center;background:#efe3e4}.join h2{margin-bottom:24px}.join .button{margin-top:32px;margin-bottom:24px}footer{text-align:center;background:white;padding:65px 24px 40px}footer>.brand{font-family:var(--serif);letter-spacing:.25em}footer nav{display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px;font-size:12px;color:var(--muted);margin-top:30px}footer nav a{padding:8px 0}.copyright{font-size:10px;color:var(--muted);margin-top:30px}.mobile{display:none}@media(min-width:1200px){.supplier-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.card-body{padding:26px}}@media(max-width:700px){.wrap{padding-left:24px;padding-right:24px}.section{padding-top:65px;padding-bottom:65px}.header-inner{padding:12px 20px}.brand{font-size:16px}.home-link{display:none}.hero .wrap{padding-top:65px;padding-bottom:110px}.hero h1{font-size:32px}.hero-description{font-size:13px}.hero-mark{font-size:35px;bottom:25px;right:24px;opacity:.6}.mobile{display:block}.desktop{display:none}.about{grid-template-columns:1fr;gap:28px}.supplier-grid{grid-template-columns:1fr}.story{grid-template-columns:1fr;padding:24px;gap:24px}.story-art{min-height:175px}.join p{font-size:13px}.join .note{font-size:11px}.button{padding:15px 24px;gap:16px}.shop{padding:6px 20px}.card-body{padding:26px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}} 

.story-thumbnail{display:block;width:100%;height:auto;border-radius:8px}

.story+.story{margin-top:24px}
