:root{--ink:#2a2722;--muted:#716b62;--paper:#f3efe7;--cream:#faf8f3;--copper:#a55f3b;--line:#d8d0c3;--dark:#3d352e}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans JP',sans-serif;line-height:1.8;letter-spacing:.03em}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;border-bottom:1px solid var(--line);position:absolute;top:0;width:100%;z-index:10}.brand{color:var(--ink);text-decoration:none;font-size:12px;letter-spacing:.16em;font-weight:600;display:flex;align-items:center;gap:12px}.brand-mark{width:34px;height:34px;border:1px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-family:serif;letter-spacing:0}.nav-cta{color:var(--ink);text-decoration:none;border-bottom:1px solid;padding-bottom:3px;font-size:13px}.hero{min-height:100vh;padding:150px 7vw 80px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:5vw;background:linear-gradient(120deg,var(--cream),var(--paper))}.eyebrow,.section-no{font-size:11px;letter-spacing:.24em;font-weight:700;color:var(--copper);margin:0 0 28px}.hero h1{font-family:'Shippori Mincho',serif;font-size:clamp(42px,5.6vw,82px);line-height:1.32;font-weight:500;margin:0;letter-spacing:.01em}.hero h1 em{font-style:normal;color:var(--copper)}.lead{font-size:16px;margin:38px 0;color:var(--muted)}.hero-actions{display:flex;align-items:center;gap:32px}.button{display:inline-flex;align-items:center;justify-content:center;min-width:180px;padding:15px 28px;text-decoration:none;font-weight:600;font-size:13px}.primary{background:var(--copper);color:#fff}.text-link{color:var(--ink);font-size:13px;text-decoration:none;border-bottom:1px solid var(--line);padding:10px 0}.value-map{height:min(43vw,540px);position:relative;border:1px solid var(--line);border-radius:50%;background:rgba(255,255,255,.28)}.value-map:before,.value-map:after{content:'';position:absolute;inset:14%;border:1px solid var(--line);border-radius:50%}.value-map:after{inset:30%}.map-center{position:absolute;inset:38%;border-radius:50%;background:var(--copper);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:2}.map-center small{font-size:10px}.map-center strong{font-family:serif;letter-spacing:.1em}.node{position:absolute;background:var(--cream);border:1px solid var(--line);padding:8px 15px;border-radius:30px;font-size:12px;z-index:3}.n1{top:8%;left:42%}.n2{top:27%;right:3%}.n3{bottom:22%;right:5%}.n4{bottom:8%;left:38%}.n5{bottom:25%;left:3%}.n6{top:25%;left:3%}section:not(.hero){padding:120px 8vw}.statement{background:var(--dark);color:#f7f1e7}.statement-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:10vw;align-items:end}.statement h2,.section-head h2,.producer h2,.contact h2{font-family:'Shippori Mincho',serif;font-size:clamp(32px,4vw,58px);line-height:1.5;font-weight:500;margin:0}.statement h2 span{color:#d59672}.statement-grid>div p{color:#d7cec2;margin:0 0 22px}.section-head{display:grid;grid-template-columns:1.1fr .9fr;gap:10vw;align-items:end;margin-bottom:70px}.section-head>p{color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.cards article{padding:35px 26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-height:310px}.cards span,.process b,.domain-list span{color:var(--copper);font-family:serif;font-size:14px}.cards h3{margin:55px 0 22px;font-size:19px;line-height:1.6}.cards p{font-size:13px;color:var(--muted);margin:0}.approach{background:var(--cream)}.process{max-width:1050px;margin-left:auto}.process article{display:grid;grid-template-columns:90px 1fr;gap:25px;padding:34px 0;border-top:1px solid var(--line)}.process article:last-child{border-bottom:1px solid var(--line)}.process b{font-size:28px;font-weight:500}.process small{letter-spacing:.18em;color:var(--copper)}.process h3{font-family:'Shippori Mincho',serif;font-size:25px;margin:3px 0 10px}.process p{margin:0;color:var(--muted);font-size:14px}.domain-list{border-top:1px solid var(--ink)}.domain-list>div{display:grid;grid-template-columns:70px 1fr 1.2fr;align-items:center;padding:24px 8px;border-bottom:1px solid var(--line)}.domain-list strong{font-size:18px}.domain-list p{color:var(--muted);margin:0;font-size:13px}.producer{background:#ded4c6;display:grid;grid-template-columns:1.15fr .85fr;gap:10vw}.producer-copy>p:not(.section-no){color:#5d554c;max-width:680px;margin:32px 0}.producer-copy h3{margin-top:45px;font-size:17px}.producer-copy h3 small{display:block;font-weight:400;color:var(--muted);margin-top:6px}.numbers{display:grid;grid-template-columns:1fr 1fr;align-content:center}.numbers div{padding:25px 20px;border-left:1px solid rgba(42,39,34,.25);border-bottom:1px solid rgba(42,39,34,.25)}.numbers strong{display:block;font-family:serif;font-size:45px;color:var(--copper);line-height:1}.numbers sup{font-size:20px}.numbers span{font-size:11px}.contact{text-align:center;background:var(--cream)}.contact h2{margin-bottom:22px}.contact>p:not(.eyebrow){color:var(--muted);margin:0 auto 36px}.contact .button{min-width:240px}footer{display:flex;justify-content:space-between;padding:25px 5vw;background:var(--dark);color:#d7cec2;font-size:10px;letter-spacing:.12em}footer a{color:inherit;text-decoration:none}.reveal{opacity:0;transform:translateY(18px);animation:up .9s ease forwards}.value-map{animation-delay:.2s}@keyframes up{to{opacity:1;transform:none}}@media(max-width:850px){.topbar{height:68px}.hero{grid-template-columns:1fr;padding-top:125px}.value-map{width:min(82vw,500px);height:min(82vw,500px);margin:25px auto 0}.statement-grid,.section-head,.producer{grid-template-columns:1fr;gap:35px}.cards{grid-template-columns:1fr 1fr}.numbers{margin-top:20px}section:not(.hero){padding:85px 7vw}}@media(max-width:560px){.brand span:last-child{display:none}.hero h1{font-size:40px}.lead br{display:none}.hero-actions{align-items:flex-start;flex-direction:column;gap:12px}.cards{grid-template-columns:1fr}.cards article{min-height:auto}.domain-list>div{grid-template-columns:48px 1fr}.domain-list p{grid-column:2;margin-top:4px}.producer{gap:40px}.numbers strong{font-size:36px}.process article{grid-template-columns:50px 1fr}.value-map{font-size:10px}.node{padding:5px 9px;font-size:10px}.section-head{margin-bottom:45px}}
