@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Noto+Sans+JP:wght@400;500;600;700;800&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');

:root { --ink:#252525; --orange:#ef8200; --orange-deep:#c86900; --orange-pale:#fff3e3; --sand:#f5efe6; --line:#d8d0c6; --paper:#fcfaf7; --max:1200px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); font-family:'Noto Sans JP',sans-serif; line-height:1.7; }
a { color:inherit; text-decoration:none; }
.site-header { min-height:88px; display:flex; align-items:center; justify-content:space-between; padding:18px max(32px,calc((100vw - var(--max))/2)); background:#fff; border-bottom:1px solid #e8eef2; }
.wordmark { display:flex; align-items:baseline; gap:13px; letter-spacing:.04em; }.wordmark b { color:var(--orange); font-size:23px; letter-spacing:.11em; }.wordmark span { color:#6c645d; font-size:11px; }
nav { display:flex; align-items:center; gap:28px; font-size:14px; font-weight:600; } nav a { min-height:44px; display:inline-flex; align-items:center; } nav a:not(.header-cta):hover { color:var(--orange-deep); }.header-cta { background:var(--orange); color:var(--ink); padding:0 18px; border-radius:3px; }
.hero { padding:clamp(72px,10vw,150px) max(32px,calc((100vw - var(--max))/2)); position:relative; overflow:hidden; min-height:570px; }.eyebrow { font-family:'DM Mono',monospace; letter-spacing:.1em; font-size:12px; font-weight:500; color:var(--orange-deep); margin:0 0 20px; }.hero h1,.section-heading h2,.strength h2,.fields h2,.support-row h2,.quiet-value h2,.range h2 { margin:0; letter-spacing:-.06em; line-height:1.23; font-size:clamp(37px,5vw,68px); }.hero h1 em { font-style:normal; color:var(--orange-deep); }.hero-copy,.hero>p:not(.eyebrow) { margin:28px 0 32px; color:#665d55; font-size:16px; }.button { display:inline-flex; align-items:center; min-height:52px; gap:24px; padding:0 22px; background:var(--orange); color:var(--ink); font-size:14px; font-weight:800; transition:transform .2s,background .2s; }.button:hover { transform:translateY(-3px); background:#ff9e25; }.button span,.text-link span { font-size:22px; }.button-light { background:#fff; color:var(--ink); }.button-dark { background:var(--ink); color:#fff; }.button-dark:hover { background:#4a433e; }
.corporate-hero { display:grid; grid-template-columns:1.15fr .85fr; align-items:center; background:linear-gradient(135deg,#fff 0%,var(--orange-pale) 100%); }.signal-panel { height:365px; margin-left:70px; position:relative; border:1px solid #e7b47a; background:linear-gradient(140deg,#fff7ec,#ffe0ae); overflow:hidden; }.signal-panel i { position:absolute; border:1px solid #d8872a; border-radius:50%; width:260px; height:260px; right:-75px; bottom:-90px; }.signal-panel i:nth-child(2) { width:190px; height:190px; right:-38px; bottom:-54px; }.signal-panel i:nth-child(3) { width:110px; height:110px; right:3px; bottom:-14px; background:var(--orange); }.signal-panel b { position:absolute; top:35px; left:35px; font:500 60px/1 'DM Mono',monospace; color:var(--orange-deep); }.signal-panel span { position:absolute; left:35px; bottom:32px; font:500 12px/1.5 'DM Mono',monospace; color:#6f4518; }
.section { padding:115px max(32px,calc((100vw - var(--max))/2)); }.section-heading { display:flex; justify-content:space-between; gap:50px; align-items:flex-end; }.section-heading>p { max-width:410px; color:#665d55; margin:0; }.product-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:55px; border-top:1px solid var(--ink); }.product-grid article { padding:28px 24px 22px 0; min-height:180px; border-right:1px solid var(--line); }.product-grid article:not(:first-child){padding-left:24px}.product-grid article:last-child{border:0}.product-grid span { color:var(--orange-deep); font:500 12px 'DM Mono',monospace; }.product-grid h3{font-size:19px;margin:30px 0 5px}.product-grid p{color:#746961;font-size:13px;margin:0}.strength { display:grid; grid-template-columns:1fr 1fr; gap:80px; padding:110px max(32px,calc((100vw - var(--max))/2)); background:var(--ink); color:#fff; }.strength .eyebrow{color:#ffc47d}.strength-list p { display:grid; grid-template-columns:190px 1fr; gap:20px; margin:0; padding:22px 0; border-top:1px solid rgba(255,255,255,.25); }.strength-list b{font-size:16px}.strength-list span{color:#ded6cf;font-size:14px}.contact-band{padding:72px max(32px,calc((100vw - var(--max))/2)); background:var(--orange); color:var(--ink); display:flex; align-items:center; justify-content:space-between; gap:40px}.contact-band p{font-size:25px;line-height:1.55;margin:0}.contact-band b{font-size:34px;letter-spacing:-.04em}.contact-band.lime{background:var(--orange-pale);color:var(--ink)}.contact-band.ivory{background:var(--sand);color:var(--ink)}footer{padding:24px max(32px,calc((100vw - var(--max))/2));display:flex;justify-content:space-between;background:#252525;color:#e6d9cd;font:11px 'DM Mono',monospace}footer a:hover{text-decoration:underline}
.active-hero { background:var(--orange); min-height:600px; padding-top:95px; }.hero-label{font:12px 'DM Mono',monospace;letter-spacing:.1em}.hero-label span{color:#fff}.active-hero h1{position:relative;margin-top:50px;font-size:clamp(42px,6vw,80px);z-index:2}.active-hero mark{background:#fff;color:var(--ink);padding:0 8px}.active-hero>p{position:relative;z-index:2;color:#413b35}.orb{position:absolute;border-radius:50%;border:1px solid rgba(37,37,37,.35)}.orb-one{width:490px;height:490px;right:10%;bottom:-230px;background:#ffd9a4}.orb-two{width:290px;height:290px;right:2%;top:80px}.fields{padding:100px max(32px,calc((100vw - var(--max))/2));background:var(--sand)}.fields h2{max-width:600px}.field-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:55px}.field-tiles a{min-height:220px;padding:22px;background:var(--ink);color:#fff;display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s,background .2s}.field-tiles a:hover{transform:translateY(-5px);background:var(--orange-deep)}.field-tiles span{font:12px 'DM Mono',monospace;color:#ffc16f}.field-tiles b{font-size:23px}.field-tiles i{text-align:right;font-style:normal;color:#ffc16f;font-size:26px}.support-row{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;padding:110px max(32px,calc((100vw - var(--max))/2))}.support-number{font-size:clamp(100px,15vw,190px);font-weight:800;letter-spacing:-.12em;line-height:1;color:var(--orange)}.support-number small{display:block;margin-left:20px;font-size:16px;letter-spacing:0;color:var(--ink)}.support-row p:not(.eyebrow){color:#665d55}.concept-b .eyebrow{color:var(--orange-deep)}
.refined-hero { min-height:620px;background:var(--paper);padding-top:110px}.concept-c .site-header{background:var(--paper);border-color:#d8d5cb}.concept-c .wordmark b,.concept-c .eyebrow{color:var(--orange-deep)}.refined-hero h1{font-family:'Playfair Display',serif;font-weight:500;font-size:clamp(50px,6vw,84px);position:relative;z-index:1}.refined-hero h1 em{color:var(--orange-deep)}.refined-hero>p{position:relative;z-index:1}.text-link{display:inline-flex;gap:22px;align-items:center;border-bottom:1px solid var(--ink);padding-bottom:8px;font-size:14px;font-weight:700;position:relative;z-index:1}.line-art{position:absolute;right:6%;top:50px;width:47%;height:460px;opacity:.85}.line-art span{position:absolute;border:1px solid #d98728;border-radius:50%;width:350px;height:350px;right:0;top:70px}.line-art span:nth-child(2){width:270px;height:270px;right:100px;top:130px}.line-art span:nth-child(3){width:120px;height:120px;right:175px;top:205px;background:#ffd8a1}.line-art span:nth-child(4){width:40px;height:40px;right:215px;top:245px;background:var(--orange-deep)}.quiet-value{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;align-items:center;padding:115px max(32px,calc((100vw - var(--max))/2));background:#fff}.large-count{font:500 clamp(130px,18vw,230px)/1 'Playfair Display',serif;color:#f2dfc7}.quiet-value p:not(.eyebrow){max-width:420px;color:#665d55}.range{padding:110px max(32px,calc((100vw - var(--max))/2));background:#403b35;color:#fff}.range .eyebrow{color:#ffc77d}.range>div{display:flex;justify-content:space-between;gap:40px}.range ul{list-style:none;padding:0;margin:0;width:42%;border-top:1px solid #b6aa9d}.range li{padding:14px 0;border-bottom:1px solid #b6aa9d;font-size:15px}
.index-page{background:#252525;color:#fff;min-height:100vh}.proposal-index{max-width:1160px;margin:auto;padding:clamp(60px,10vw,130px) 32px}.proposal-index .eyebrow{color:#ffc57a}.proposal-index h1{margin:0;line-height:1.25;font-size:clamp(40px,6vw,72px);letter-spacing:-.06em}.intro{max-width:680px;color:#e4d9ce;margin:28px 0 60px}.proposal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.proposal-card{min-height:280px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;transition:transform .2s}.proposal-card:hover{transform:translateY(-8px)}.proposal-card span,.proposal-card small{font:12px 'DM Mono',monospace}.proposal-card strong{font-size:31px;line-height:1.3;letter-spacing:-.05em}.a-card{background:var(--orange-pale);color:var(--ink)}.a-card span{color:var(--orange-deep)}.b-card{background:var(--orange);color:var(--ink)}.b-card span{color:#fff}.c-card{background:var(--sand);color:#4b3c2e;font-family:'Playfair Display',serif}.proposal-note{font-size:12px;color:#cdbdaf;margin-top:28px}
.inline-link{display:inline-flex;align-items:center;gap:18px;min-height:44px;margin-top:32px;font-size:14px;font-weight:700;border-bottom:1px solid var(--ink)}.inline-link span,.section-action span{font-size:20px}.product-grid a{display:block;transition:background .2s}.product-grid a:hover{background:var(--orange-pale)}.footer-links{display:flex;gap:18px}.footer-links a:hover{text-decoration:underline}
.product-grid>a{padding:28px 24px 22px 0;min-height:180px;border-right:1px solid var(--line)}.product-grid>a:not(:first-child){padding-left:24px}.product-grid>a:last-child{border-right:0}
.page-hero{padding:clamp(70px,10vw,128px) max(32px,calc((100vw - var(--max))/2));background:var(--orange-pale);border-bottom:1px solid #f0d4ad}.page-hero h1{margin:0;font-size:clamp(43px,6vw,74px);line-height:1.15;letter-spacing:-.06em}.page-hero>p:not(.eyebrow){margin:24px 0 0;color:#665d55}.page-hero.compact{padding-bottom:75px}.local-nav{display:flex;gap:8px;overflow:auto;padding:16px max(32px,calc((100vw - var(--max))/2));border-bottom:1px solid var(--line);background:#fff}.local-nav a{flex:0 0 auto;min-height:44px;display:flex;align-items:center;padding:0 14px;font-size:13px;font-weight:700}.local-nav a:hover{background:var(--orange-pale);color:var(--orange-deep)}.category-section{max-width:var(--max);margin:0 auto;padding:76px 0;display:grid;grid-template-columns:120px minmax(0,1fr) 230px;gap:40px;align-items:start;border-bottom:1px solid var(--line)}.category-section.muted{max-width:none;padding-left:max(32px,calc((100vw - var(--max))/2));padding-right:max(32px,calc((100vw - var(--max))/2));background:#f9f6f1}.category-no{font:500 56px/1 'DM Mono',monospace;color:var(--orange)}.category-section h2,.manufacturer-section h2,.flow-section h2,.case-note h2,.profile-section h2,.history-section h2,.contact-layout h2{margin:0;font-size:32px;letter-spacing:-.04em}.category-section p:not(.eyebrow){color:#665d55;max-width:600px}.chip-list{list-style:none;padding:0;margin:28px 0 0;display:flex;flex-wrap:wrap;gap:8px}.chip-list li{padding:6px 11px;border:1px solid #d8c9b8;font-size:13px}.section-action{align-self:end;display:flex;gap:14px;align-items:center;justify-content:space-between;padding-bottom:8px;border-bottom:1px solid var(--ink);font-size:13px;font-weight:700}.notice-panel{padding:90px max(32px,calc((100vw - var(--max))/2));background:var(--ink);color:#fff}.notice-panel .eyebrow{color:#ffc47c}.notice-panel h2{margin:0;font-size:clamp(31px,4vw,48px);letter-spacing:-.05em}.notice-panel p:not(.eyebrow){color:#e2d8cf;max-width:550px}.notice-panel .button{margin-top:18px}
.manufacturer-section{max-width:var(--max);margin:0 auto;padding:90px 0}.proposal-label{font:500 11px 'DM Mono',monospace;letter-spacing:.1em;color:var(--orange-deep)}.manufacturer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:36px;background:#ded4c8;border:1px solid #ded4c8}.manufacturer-grid div{min-height:155px;padding:24px;background:#fff;color:#685f57;font-size:13px}.manufacturer-grid b{display:block;margin-top:28px;color:var(--ink);font-size:17px}.info-callout{display:flex;gap:30px;align-items:start;margin-top:35px;padding:24px;background:var(--orange-pale)}.info-callout b{flex:0 0 175px}.info-callout span{font-size:14px;color:#665d55}
.support-cards{max-width:var(--max);margin:0 auto;padding:90px 0;display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line)}.support-cards article{min-height:240px;padding:34px;background:#fff}.support-cards span{font:500 12px 'DM Mono',monospace;color:var(--orange-deep)}.support-cards h2{margin:38px 0 10px;font-size:24px;letter-spacing:-.03em}.support-cards p{margin:0;color:#665d55;font-size:14px}.flow-section{padding:90px max(32px,calc((100vw - var(--max))/2));background:#f9f6f1}.order-flow{max-width:var(--max);margin:40px auto 0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,1fr)}.order-flow li{position:relative;min-height:150px;padding:20px;border-top:2px solid var(--orange);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:15px}.order-flow li:last-child{border-right:0}.order-flow b{font-size:18px}.order-flow span{font-size:13px;color:#665d55}.small-note{font-size:12px;color:#756b61}.flow-section .small-note{max-width:var(--max);margin:25px auto 0}
.case-grid{max-width:var(--max);margin:0 auto;padding:90px 0;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.case-grid article{min-height:320px;padding:28px;display:flex;flex-direction:column;background:var(--orange-pale);border-top:4px solid var(--orange)}.case-grid article:nth-child(2){background:var(--sand)}.case-grid article:nth-child(3){background:#f8e2c5}.case-grid span{font:500 11px 'DM Mono',monospace;color:var(--orange-deep)}.case-grid h2{margin:80px 0 6px;font-size:25px}.case-grid p{margin:0;color:#665d55;font-size:14px}.case-grid b{margin-top:auto;font-size:14px}.case-note{padding:85px max(32px,calc((100vw - var(--max))/2));background:var(--ink);color:#fff}.case-note .eyebrow{color:#ffc47c}.case-note p:not(.eyebrow){max-width:650px;color:#e2d8cf}
.company-message{padding:110px max(32px,calc((100vw - var(--max))/2));background:var(--ink);color:#fff}.company-message .eyebrow{color:#ffc47c}.company-message h2{margin:0;font-size:clamp(37px,5vw,64px);line-height:1.25;letter-spacing:-.06em}.company-message p:not(.eyebrow){max-width:620px;color:#e2d8cf}.profile-section,.history-section{max-width:var(--max);margin:0 auto;padding:90px 0}.profile-table{margin:35px 0 0;border-top:1px solid var(--ink)}.profile-table div{display:grid;grid-template-columns:210px 1fr;padding:20px 0;border-bottom:1px solid var(--line)}.profile-table dt{font-weight:700}.profile-table dd{margin:0}.profile-table small{color:#756b61}.history-section{padding-top:0}.timeline{margin-top:32px;border-top:1px solid var(--ink)}.timeline p{display:grid;grid-template-columns:150px 1fr;margin:0;padding:18px 0;border-bottom:1px solid var(--line)}.timeline b{color:var(--orange-deep)}
.news-list{max-width:var(--max);margin:0 auto;padding:55px 0 100px}.news-list article{display:grid;grid-template-columns:140px 115px 1fr;align-items:center;gap:20px;padding:23px 0;border-bottom:1px solid var(--line)}.news-list time{font:13px 'DM Mono',monospace}.news-list span{justify-self:start;padding:2px 8px;background:var(--orange-pale);font-size:11px}.news-list a{font-weight:700}.news-list a:hover{text-decoration:underline;color:var(--orange-deep)}
.contact-layout{max-width:var(--max);margin:0 auto;padding:90px 0;display:grid;grid-template-columns:.8fr 1.2fr;gap:85px}.contact-layout h2{font-size:38px}.check-list{list-style:none;margin:32px 0;padding:0}.check-list li{padding:13px 0 13px 30px;border-bottom:1px solid var(--line);position:relative}.check-list li::before{content:'✓';position:absolute;left:0;color:var(--orange-deep);font-weight:800}.contact-form{padding:32px;background:#f9f6f1;display:grid;gap:17px}.form-note{margin:0 0 4px;font-size:12px;color:#756b61}.contact-form label{display:grid;gap:6px;font-size:13px;font-weight:700}.contact-form input,.contact-form select,.contact-form textarea{width:100%;min-height:44px;padding:10px;border:1px solid #bdb2a7;border-radius:0;background:#fff;color:var(--ink);font:14px 'Noto Sans JP',sans-serif}.contact-form textarea{resize:vertical}.contact-form button{min-height:52px;border:0;background:#b8afa7;color:#fff;font:700 14px 'Noto Sans JP',sans-serif;cursor:not-allowed}.policy{max-width:820px;margin:0 auto;padding:70px 0 110px}.policy h2{margin:45px 0 10px;font-size:22px}.policy p{color:#5e554d}.policy .small-note{margin-top:50px;padding:18px;background:var(--orange-pale)}
@media (max-width:780px){.site-header{padding:16px 20px;min-height:72px}.wordmark span,nav a:not(.header-cta){display:none}nav{gap:0}.hero,.section,.strength,.fields,.support-row,.quiet-value,.range{padding-left:24px;padding-right:24px}.corporate-hero,.strength,.support-row,.quiet-value{grid-template-columns:1fr}.signal-panel{height:220px;margin:35px 0 0}.section-heading,.range>div{display:block}.section-heading>p{margin-top:24px}.product-grid{grid-template-columns:1fr 1fr}.product-grid article:nth-child(2){border-right:0}.product-grid article:nth-child(3){padding-left:0;border-top:1px solid var(--line)}.product-grid article:nth-child(4){border-top:1px solid var(--line)}.strength{gap:38px}.strength-list p{grid-template-columns:1fr}.contact-band{padding:50px 24px;display:block}.contact-band .button,.contact-band .text-link{margin-top:24px}.contact-band b{font-size:27px}.field-tiles,.proposal-grid{grid-template-columns:1fr}.support-row{gap:42px}.line-art{right:-180px;opacity:.5}.range ul{margin-top:40px;width:100%}.proposal-index{padding:60px 24px}.proposal-card{min-height:195px}footer{padding:20px 24px;gap:12px}.footer-links{flex-wrap:wrap;gap:8px 14px}.page-hero{padding:65px 24px}.local-nav{padding-left:16px;padding-right:16px}.category-section{grid-template-columns:1fr;gap:18px;padding:55px 24px}.category-section.muted{padding-left:24px;padding-right:24px}.category-no{font-size:44px}.section-action{justify-content:flex-start}.manufacturer-section,.support-cards,.case-grid,.profile-section,.history-section,.news-list,.contact-layout,.policy{margin-left:24px;margin-right:24px}.manufacturer-section,.profile-section,.history-section,.news-list,.policy{padding-top:55px;padding-bottom:55px}.manufacturer-grid,.support-cards,.case-grid{grid-template-columns:1fr}.info-callout,.contact-layout{display:block}.info-callout span{display:block;margin-top:8px}.support-cards{margin-left:0;margin-right:0;padding:0}.support-cards article{min-height:auto}.order-flow{grid-template-columns:1fr;margin-top:28px}.order-flow li{min-height:auto;border-right:0}.case-grid{padding:55px 0}.case-grid h2{margin-top:45px}.profile-table div,.timeline p,.news-list article{grid-template-columns:1fr;gap:4px}.contact-layout{padding:55px 0}.contact-form{margin-top:40px}.policy{margin-left:24px;margin-right:24px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.proposal-card,.field-tiles a{transition:none}}
a:focus-visible{outline:3px solid #ffbe00;outline-offset:3px}
@media (max-width:780px){.product-grid>a:nth-child(2){border-right:0}.product-grid>a:nth-child(3){padding-left:0;border-top:1px solid var(--line)}.product-grid>a:nth-child(4){border-top:1px solid var(--line)}}
