@charset "UTF-8";
:root{--ink:#0d2238;--dark:#042c53;--green:#ef9f27;--green-dark:#a65c00;--paper:#fff;--mist:#f3f5f8;--line:#dde3ea;--muted:#5d6a78;--max:1200px;--font:"Yu Gothic","YuGothic","Hiragino Kaku Gothic ProN","Meiryo",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--font);font-size:15px;line-height:1.9;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}p{margin:0 0 22px}h1,h2,h3{margin:0;line-height:1.55;letter-spacing:.035em}h2{font-size:clamp(26px,3vw,38px);font-weight:700}h3{font-size:21px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b76200;outline-offset:5px}a:hover{color:#995200}::selection{background:var(--green);color:var(--dark)}.container{width:min(var(--max),calc(100% - 112px));margin-inline:auto}.section{padding:96px 0}.section-muted{background:var(--mist)}.eyebrow{font-family:Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.17em;line-height:1.5;color:var(--green-dark);margin-bottom:18px}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:40px;margin-bottom:46px}.section-heading>p{color:var(--muted);margin:0;font-size:14px}.section-lead{margin-top:25px;color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:56px;padding:15px 25px;border:1px solid transparent;border-radius:0;font-size:14px;font-weight:700;line-height:1.5;transition:background .2s,transform .2s,color .2s}.button>span,.text-link>span{font-family:Arial,sans-serif;font-size:22px;line-height:1}.button:hover{transform:translateY(-2px)}.button-green{background:var(--green);color:var(--dark)}.button-green:hover{background:#efb160;color:var(--dark)}.button-dark{background:var(--dark);color:#fff}.button-dark:hover{background:#253546;color:#fff}.button-outline{border-color:var(--ink)}.button-outline:hover{background:var(--ink);color:white}.button-outline-light{border-color:#7d8690;color:white}.button-outline-light:hover{background:white;color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:30px;font-size:14px;font-weight:700;border-bottom:1px solid var(--ink);padding:6px 0}.small-note{font-size:12px;color:var(--muted)}.mobile-only{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:20px;top:-100px;z-index:100;background:white;padding:10px 20px}.skip-link:focus{top:12px}
.site-header{height:92px;position:sticky;top:0;z-index:30;background:rgba(255,255,255,.97);display:flex;align-items:center;justify-content:space-between;padding:0 42px;border-bottom:1px solid #e6e9ec}.brand{display:inline-flex;align-items:center;gap:11px;flex-shrink:0}.brand-symbol{width:38px;height:38px;border:9px solid var(--ink);border-right-color:var(--green);border-radius:50%;transform:rotate(-35deg)}.brand-text{display:block}.brand-text b{display:block;font:900 30px/.95 Arial,sans-serif;letter-spacing:-.035em}.brand-text b>span{color:#d67200}.brand-text small{display:block;font-size:10px;font-weight:700;letter-spacing:.14em;line-height:1.5;margin-top:5px}.site-header nav{display:flex;gap:25px;align-items:center}.site-header nav>a{font-size:15px;line-height:1.4;font-weight:700;white-space:nowrap;position:relative}.site-header nav>a[aria-current=page]:not(.nav-contact)::after{content:"";position:absolute;bottom:-14px;left:0;width:100%;height:3px;background:var(--green)}.site-header nav>.nav-contact{display:flex;gap:23px;align-items:center;background:var(--ink);color:white;padding:17px 20px;margin-left:4px}.nav-contact span{font-size:21px}.nav-contact:hover{background:#2f3c4a!important}.menu-toggle{display:none}
.hero{position:relative;background:var(--dark);color:white;overflow:hidden}.hero-grid{position:absolute;inset:0;background-image:linear-gradient(#c2d4c709 1px,transparent 1px),linear-gradient(90deg,#c2d4c709 1px,transparent 1px);background-size:74px 74px;mask-image:linear-gradient(90deg,transparent,#000)}.hero-inner{min-height:615px;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:25px;position:relative;padding-top:46px;padding-bottom:62px}.hero-copy{position:relative;z-index:2}.hero-eyebrow{color:#c5cbd2;font-size:10px;letter-spacing:.14em;display:flex;align-items:center;gap:10px;margin-bottom:30px}.status-dot{display:inline-block;width:7px;height:7px;background:var(--green);border-radius:50%;flex-shrink:0}.hero h1{font-size:clamp(33px,3.8vw,56px);line-height:1.5;font-weight:700;letter-spacing:.04em;white-space:nowrap}.hero h1>span{color:var(--green)}.hero-description{font-size:15px;line-height:2;margin-top:28px;color:#d3d8dd}.hero-actions{display:flex;gap:12px;margin-top:34px}.hero-actions .button{font-size:12px;gap:24px;padding:17px 19px}.hero-location{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.19em;color:#9ba4ad;margin:33px 0 0}.hero-location span{margin:0 14px;color:#606a75}.hero-visual{height:490px;position:relative;display:flex;align-items:center;justify-content:center}.visual-orbit{position:absolute;width:435px;height:435px;border:1px solid #c4da9140;border-radius:50%;background:radial-gradient(circle,#59774818,transparent 72%)}.visual-orbit::before{content:"";position:absolute;inset:28px;border:1px dashed #c4da9127;border-radius:50%}.visual-orbit::after{content:"+";font:28px/1 Arial;color:var(--green);position:absolute;right:5px;top:58px}.hero-panel{width:600px;max-width:118%;position:relative;filter:drop-shadow(0 28px 25px #0004)}.visual-label{position:absolute;bottom:0;left:26px;font:9px/1.5 Arial,sans-serif;letter-spacing:.12em;color:#c3cad1;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.visual-label small{flex-basis:100%;margin-left:15px;font-size:8px;color:#7f8c99}.hero-bottom{position:relative;border-top:1px solid #ffffff1a}.hero-bottom>.container{display:flex;align-items:center;justify-content:space-between;min-height:61px;color:#9da5ad;font-size:11px;letter-spacing:.03em}.hero-bottom a{font:9px/1.5 Arial,sans-serif;letter-spacing:.14em}.hero-bottom a>span{margin-left:18px;color:var(--green);font-size:18px}.stats-strip{border-bottom:1px solid var(--line)}.stats-inner{display:grid;grid-template-columns:1fr 1fr 1.15fr 1fr;padding:32px 0;align-items:center}.stats-inner>div{border-right:1px solid var(--line);padding-right:20px;margin-right:32px}.stats-inner strong{font:500 39px/1.3 Arial,sans-serif;letter-spacing:-.035em}.stats-inner strong>span{font:700 12px/1.5 var(--font);letter-spacing:.05em;margin-left:8px}.stats-inner div>p{font-size:11px;color:var(--muted);margin:6px 0 0}.stats-message{font-size:18px;line-height:1.6;font-weight:700;margin:0}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.service-card{border-bottom:2px solid var(--line);transition:color .2s}.service-art{height:222px;position:relative;overflow:hidden;display:grid;place-items:center}.service-art img{width:100%;height:100%;object-fit:contain;transition:transform .35s}.service-card:hover .service-art img{transform:scale(1.05)}.art-equipment{background:#dce2e9}.art-panel{background:#dde2e8}.art-fa{background:#ebe8df}.service-num{position:absolute;left:20px;top:15px;font:12px/1 Arial,sans-serif;color:#636b73}.service-card-body{padding:25px 0 28px}.service-card-body .eyebrow{font-size:9px;margin-bottom:8px}.service-card-body h3{display:flex;align-items:center;justify-content:space-between;font-size:21px}.service-card-body h3 span{font:22px/1 Arial}.service-card-body>p:last-child{margin:13px 0 0;font-size:13px;color:var(--muted);line-height:1.85}.one-stop{background:var(--dark);color:white}.one-stop-inner{display:grid;grid-template-columns:1fr 1.08fr;gap:90px;align-items:center}.one-stop .eyebrow{color:var(--green)}.one-stop-copy>p:not(.eyebrow){font-size:14px;line-height:2.1;color:#c6ccd3;margin-top:22px}.one-stop-copy>.button{margin-top:10px}.one-stop-diagram{position:relative;height:350px;border:1px solid #617d703b;background-image:linear-gradient(#ffffff07 1px,transparent 1px),linear-gradient(90deg,#ffffff07 1px,transparent 1px);background-size:30px 30px}.one-stop-diagram::before{content:"";position:absolute;width:225px;height:225px;border:1px dashed #86aa773e;border-radius:50%;left:50%;top:46%;transform:translate(-50%,-50%)}.diagram-caption{position:absolute;top:18px;left:18px;font:9px Arial;letter-spacing:.15em;color:#9aa3ad}.diagram-center{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:114px;height:114px;border:1px solid var(--green);border-radius:50%;background:#1e2c3c;display:flex;flex-direction:column;align-items:center;justify-content:center;font:700 22px/1.5 Arial;color:var(--green)}.diagram-center>span{font:11px/2 var(--font);color:#d7dee6}.diagram-node{position:absolute;background:#182737;border:1px solid #606c78;font-size:11px;padding:11px 12px;display:flex;align-items:center;gap:10px}.diagram-node>span{color:var(--green);font:9px Arial}.node-a{top:47px;left:50%;transform:translateX(-50%)}.node-b{bottom:72px;left:16px}.node-c{bottom:72px;right:16px}.diagram-note{position:absolute;bottom:20px;left:0;width:100%;text-align:center;font-size:10px;color:#9fa6ad}.brand-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.brand-grid>span{display:flex;align-items:center;justify-content:center;text-align:center;padding:30px 12px;min-height:104px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);font:700 17px/1.3 Arial,sans-serif;letter-spacing:-.025em;color:#3d4853}.section-end{display:flex;justify-content:space-between;align-items:center;margin-top:25px}.section-end>p{font-size:11px;color:var(--muted);margin:0}.about-teaser{background:var(--mist)}.about-teaser-inner{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.about-word{font:800 clamp(70px,9vw,120px)/.9 Arial,sans-serif;letter-spacing:-.055em;color:#c5cfd9;position:relative}.about-word>span{color:#6d87a2}.about-word>small{display:block;font:700 13px/2 var(--font);letter-spacing:.08em;color:var(--green-dark);margin-top:24px}.about-teaser-inner>div:last-child>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:26px}.inline-links{display:flex;gap:35px;margin-top:35px}.news-list{border-top:1px solid var(--line)}.news-row{display:grid;grid-template-columns:115px 96px 1fr 20px;gap:22px;align-items:center;padding:26px 0;border-bottom:1px solid var(--line)}.news-date{font:11px/1.5 Arial,sans-serif;letter-spacing:.035em;color:var(--muted)}.news-tag{background:var(--mist);padding:4px 10px;display:inline-block;text-align:center;font-size:10px;line-height:1.8;color:#576574}.news-title{font-size:14px;font-weight:700}.news-row>span:last-child{font:22px/1 Arial}.news-row:hover .news-title{color:var(--green-dark)}
.contact-band{background:var(--green);padding:62px 0}.contact-band-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.contact-band .eyebrow{color:#042c53;font-size:10px;margin-bottom:12px}.contact-band h2{font-size:32px}.contact-band p:last-child{margin:17px 0 0;font-size:13px;color:#0d2238}.contact-band .button{min-width:220px}.site-footer{background:var(--dark);color:#d3d8dd;padding:58px 0 0}.footer-main{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:55px;padding-bottom:46px}.brand-light .brand-symbol{border-color:white;border-right-color:var(--green)}.brand-light .brand-text{color:white}.site-footer address{font-style:normal;font-size:11px;line-height:2.05;margin-top:25px;color:#abb5bf}.footer-fax{display:block}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;align-content:start;padding-top:8px;font-size:11px}.footer-note{font:11px/2 Arial,sans-serif;letter-spacing:.1em;text-align:right;padding-top:8px;color:#a9b3be}.footer-note>span{font-size:9px;color:#73808d}.footer-bottom{border-top:1px solid #ffffff1a;display:flex;align-items:center;gap:28px;padding:22px 0;color:#9ba4ad;font-size:9px}.footer-bottom>small{font:9px Arial;margin-right:auto}.back-top{font:20px Arial}
.page-hero{background:var(--mist);padding:32px 0 60px;position:relative;overflow:hidden}.page-hero .container{position:relative;z-index:1}.breadcrumb{font-size:10px;color:var(--muted);margin-bottom:36px}.breadcrumb span{margin:0 12px;color:#98a0a8}.breadcrumb a{font-family:Arial,sans-serif}.page-hero h1{font-size:clamp(32px,5vw,52px);margin-bottom:18px}.page-intro{font-size:14px;color:var(--muted);margin:0}.page-hero .eyebrow{margin-bottom:12px}.page-hero-mark{position:absolute;right:8%;bottom:-62px;font:900 270px/1 Arial;color:#dae0e6;letter-spacing:-.1em;transform:rotate(-15deg);pointer-events:none}.subnav{display:flex;gap:0;border-bottom:1px solid var(--line)}.subnav>a{font-size:13px;font-weight:700;padding:24px 30px;border-right:1px solid var(--line);flex:1;text-align:center}.subnav>a:first-child{border-left:1px solid var(--line)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.detail-grid>div:first-child>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-top:24px}.detail-number{display:block;font:13px Arial;color:#838e99;margin-bottom:22px}.detail-grid.reverse>div:first-child{order:2}.detail-art{padding:30px 20px;min-height:350px;display:flex;align-items:center}.detail-art img{width:100%}.check-list{padding:0;list-style:none;margin:25px 0 30px}.check-list li{position:relative;padding-left:23px;margin:9px 0;font-size:14px}.check-list li::before{content:"";width:6px;height:6px;background:#da7400;position:absolute;left:0;top:10px}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;list-style:none;padding:0;margin:40px 0 28px}.process-grid li{border-top:1px solid #9ba9b9;padding:24px 0}.process-grid li>span{font:13px Arial;color:var(--green-dark)}.process-grid h3{font-size:17px;margin:18px 0 14px}.process-grid p{font-size:12px;color:var(--muted);margin:0}.company-intro{max-width:880px;margin-bottom:72px}.company-intro>p:last-child{max-width:610px;margin:28px 0 0;color:var(--muted);font-size:14px}.profile-grid{display:grid;grid-template-columns:1fr 2.1fr;gap:70px}.profile-grid>h2{font-size:25px}.data-table{margin:0;border-top:1px solid var(--line)}.data-table>div{display:grid;grid-template-columns:140px 1fr;padding:22px 0;border-bottom:1px solid var(--line);font-size:13px}.data-table dt{font-weight:700}.data-table dd{margin:0;color:#505861}.timeline{list-style:none;margin:0;padding:0}.timeline li{display:grid;grid-template-columns:90px 1fr;gap:25px;padding:0 0 32px;position:relative}.timeline li::before{content:"";position:absolute;left:90px;top:11px;bottom:-10px;border-left:1px solid #bfcad6}.timeline li:last-child::before{display:none}.timeline li::after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:#df8816;left:87px;top:10px}.timeline li>span{font:600 20px/1.5 Arial;color:var(--green-dark)}.timeline h3{font-size:16px;margin-bottom:9px}.timeline p{font-size:12px;color:var(--muted);margin:0}.access-map iframe{display:block;border:0;width:100%;height:340px;background:var(--mist)}.access-map p{font-size:11px;color:var(--muted);margin:15px 0 0}.profile-grid>div>p:not(.eyebrow){font-size:13px;margin-top:22px}.philosophy-lead{background:var(--dark);color:#fff}.philosophy-lead .eyebrow{color:var(--green)}.philosophy-lead h2{font-size:clamp(30px,4vw,50px);line-height:1.75}.philosophy-lead h2 span{color:var(--green)}.philosophy-lead p:last-child{margin-top:35px;font-size:14px;color:#c5ccd4}.philosophy-pair{display:grid;grid-template-columns:1fr 1fr;gap:80px}.philosophy-pair h2{font-size:28px}.philosophy-pair article>p:last-child{font-size:14px;color:var(--muted);margin:25px 0 0}.values-row{display:flex;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:40px;padding:35px 0}.values-row>span{flex:1;text-align:center;border-right:1px solid var(--line);font-size:32px;font-weight:700;color:#a35700}.values-row>span:last-child{border:0}.values-row small{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:12px}.heart-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.heart-list li{border-bottom:1px solid var(--line);padding:18px 0;font-size:19px;font-weight:700}.heart-list li>span{font:12px Arial;margin-right:40px;color:var(--green-dark)}.action-title{font-size:22px;margin-bottom:26px}.manufacturer-intro{display:flex;justify-content:space-between;gap:40px;margin-bottom:35px}.manufacturer-intro h2{font-size:26px}.manufacturer-intro p:not(.eyebrow){font-size:12px;margin-top:18px;color:var(--muted)}.manufacturer-search{width:340px;flex-shrink:0}.manufacturer-search label{display:block;font-size:12px;font-weight:700;margin-bottom:10px}.search-input{display:flex;border:1px solid var(--line);align-items:center;padding:5px 10px 5px 16px;background:var(--mist)}.search-input>span{font:27px Arial;color:#6b7987}.search-input input{width:100%;min-width:0;border:0;padding:10px;background:transparent;font-size:13px;color:var(--ink)}.search-input button{border:0;background:transparent;font:22px Arial;color:#5f6b78;padding:10px}.maker-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.maker-item{min-height:85px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);display:flex;align-items:center;padding:21px;font-size:12px;line-height:1.7;background:white}.maker-item[hidden]{display:none}.manufacturer-note{font-size:11px;color:var(--muted);padding-top:25px}.news-archive{display:grid;grid-template-columns:1fr 3fr;gap:70px}.news-archive aside{display:flex;flex-direction:column;gap:16px;align-items:flex-start}.news-archive aside a{font-size:13px;border-bottom:1px solid var(--line);padding:5px 0;width:100%}.news-article{padding:0 0 40px;margin-bottom:40px;border-bottom:1px solid var(--line);scroll-margin-top:130px}.news-meta{display:flex;align-items:center;gap:22px;margin-bottom:17px}.news-article h2{font-size:25px}.news-article>p{font-size:14px;color:var(--muted);margin:22px 0 0}.legal-content{max-width:850px}.legal-content h2{font-size:21px;margin:38px 0 15px}.legal-content p{font-size:14px;color:#565e66}.legal-content a{border-bottom:1px solid #909daa}.sitemap-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 50px}.sitemap-grid a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:18px 0}
.contact-layout{display:grid;grid-template-columns:280px 1fr;gap:75px}.contact-aside{font-size:13px}.contact-aside h2{font-size:22px;margin-bottom:18px}.contact-aside p{color:var(--muted)}.contact-telephone{display:block;font:500 25px/1.5 Arial;margin:18px 0 26px}.contact-aside .eyebrow{margin-top:32px}.form-steps{display:flex;list-style:none;gap:10px;padding:0;margin:0 0 38px}.form-steps li{flex:1;border-bottom:2px solid var(--line);padding:0 0 15px;color:#7a877a;font-size:12px}.form-steps li>span{font:11px Arial;margin-right:10px}.form-steps li.active{color:var(--ink);border-color:#d67200;font-weight:700}.form-steps li.active>span{color:var(--green-dark)}.form-field{margin-bottom:25px}.form-field label{display:flex;gap:12px;align-items:center;font-size:13px;font-weight:700;margin-bottom:9px}.required{background:#fbead4;color:#995200;font-size:10px;padding:1px 7px;font-weight:400}.optional{font-size:10px;color:#79828c;font-weight:400}.form-field input,.form-field textarea,.form-field select{display:block;width:100%;border:1px solid #c8cfd6;padding:13px 14px;background:#fafbfc;color:var(--ink);font-size:14px;border-radius:0}.form-field textarea{resize:vertical;min-height:180px}.form-field input::placeholder,.form-field textarea::placeholder{color:#858e97;font-size:12px}.form-field [aria-invalid=true]{border-color:#ac4c43}.field-error{color:#9b362e;font-size:12px;margin:6px 0 0}.form-help{font-size:11px;color:var(--muted);margin-top:6px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.consent-label{display:flex;align-items:flex-start;gap:10px;font-size:12px;margin:25px 0}.consent-label input{width:17px;height:17px;margin-top:4px;flex-shrink:0;accent-color:#a55800}.consent-label a{border-bottom:1px solid #707e8c}.form-actions{display:flex;gap:15px;margin-top:28px}.form-actions .button{flex:1}.form-notice{font-size:11px;color:var(--muted);margin-top:18px}.form-alert{background:#f9eae6;color:#8f3128;border-left:3px solid #a84b43;padding:18px 21px;margin-bottom:28px;font-size:13px}.form-alert ul{margin:6px 0 0;padding-left:20px}.form-alert p{margin:0}.honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.confirm-table{border-top:1px solid var(--line);margin:25px 0 30px}.confirm-table>div{display:grid;grid-template-columns:150px 1fr;gap:15px;padding:19px 0;border-bottom:1px solid var(--line);font-size:13px}.confirm-table dt{font-weight:700}.confirm-table dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;color:#4e5964}.form-complete{text-align:center;padding:30px 0}.complete-icon{width:76px;height:76px;display:grid;place-items:center;border-radius:50%;margin:0 auto 25px;background:#fbecd8;color:#a55800;font:34px Arial}.form-complete h2{font-size:27px;margin-bottom:20px}.form-complete p{font-size:14px;color:var(--muted)}.receipt{display:inline-block;background:var(--mist);padding:10px 18px;margin-bottom:25px!important}.form-complete .button{margin-top:10px}
@media(min-width:1450px){.hero-inner{min-height:670px}.hero h1{font-size:56px}.hero-visual{height:540px}}
@media(max-width:1150px){.site-header{padding:0 26px}.site-header nav{gap:18px}.site-header nav>a{font-size:14px}.site-header nav>.nav-contact{padding:16px 14px;gap:14px}.container{width:calc(100% - 72px)}.hero-actions{flex-wrap:wrap}.hero h1{font-size:42px}.one-stop-inner,.about-teaser-inner{gap:50px}.contact-layout{gap:40px;grid-template-columns:230px 1fr}.service-card-body h3{font-size:18px}.stats-inner>div{margin-right:20px}.hero-panel{max-width:125%}}
@media(max-width:960px){.site-header{height:80px}.menu-toggle{display:flex;flex-direction:column;gap:6px;justify-content:center;width:42px;height:42px;border:0;background:var(--mist);padding:10px}.menu-toggle>span:not(.sr-only){height:2px;width:22px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true]>span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true]>span:nth-child(2){transform:translateY(-4px) rotate(-45deg)}.site-header nav{display:none;position:absolute;left:0;right:0;top:80px;background:white;border-bottom:1px solid var(--line);padding:20px 36px 30px;flex-direction:column;align-items:stretch;gap:0;max-height:calc(100dvh - 80px);overflow:auto}.site-header nav.is-open{display:flex}.site-header nav>a{font-size:16px;padding:16px 0;border-bottom:1px solid var(--line)}.site-header nav>a[aria-current=page]:not(.nav-contact)::after{display:none}.site-header nav>.nav-contact{margin:18px 0 0;padding:18px;justify-content:space-between}.hero-inner{gap:0;grid-template-columns:1.15fr 1fr;min-height:570px}.hero h1{font-size:36px}.hero-description{font-size:13px}.hero-eyebrow{font-size:8px;letter-spacing:.1em}.hero-visual{height:410px}.visual-orbit{width:330px;height:330px}.hero-actions .button{font-size:11px;gap:15px;padding:15px 16px;min-height:48px}.hero-location{font-size:8px}.visual-label{font-size:7px;left:10px;bottom:12px}.section{padding:72px 0}.section-heading{align-items:flex-start}.section-heading>p{font-size:12px}.stats-inner strong{font-size:31px}.stats-message{font-size:15px}.service-art{height:180px}.service-card-body h3{font-size:16px}.service-grid{gap:20px}.service-card-body>p:last-child{font-size:12px}.one-stop-inner{gap:40px;grid-template-columns:1fr 1.1fr}.one-stop-diagram{height:320px}.node-b{left:10px;bottom:60px}.node-c{right:10px;bottom:110px}.diagram-node{padding:8px;font-size:9px}.diagram-center{width:96px;height:96px}.diagram-caption{font-size:8px}.brand-grid>span{font-size:14px}.footer-main{gap:30px;grid-template-columns:1.2fr 1fr}.footer-note{display:none}.detail-grid{gap:40px}.detail-art{min-height:270px;padding:20px 8px}.detail-grid h2{font-size:28px}.profile-grid{gap:40px;grid-template-columns:1fr 2fr}.contact-layout{grid-template-columns:1fr}.contact-aside{display:flex;gap:40px}.contact-aside>div{flex:1}.contact-aside .eyebrow{margin-top:0}.contact-telephone{margin-bottom:0}.manufacturer-intro{flex-direction:column}.manufacturer-search{width:100%;max-width:460px}.manufacturer-intro h2{font-size:25px}.news-archive{grid-template-columns:1fr 3fr;gap:40px}.news-article h2{font-size:22px}.process-grid{gap:18px}.process-grid h3{font-size:15px}}
@media(max-width:640px){html{scroll-padding-top:84px}.container{width:calc(100% - 40px)}.site-header{height:72px;padding:0 20px}.brand-symbol{width:32px;height:32px;border-width:8px}.brand-text b{font-size:26px}.brand-text small{font-size:8px}.site-header nav{top:72px;padding:10px 20px 20px}.hero-inner{display:block;padding-top:42px;padding-bottom:26px;min-height:0}.hero h1{font-size:clamp(25px,7.4vw,42px);line-height:1.65;letter-spacing:.035em}.hero-eyebrow{font-size:8px;margin-bottom:20px}.hero-description{font-size:13px;margin-top:22px;line-height:1.9}.hero-actions{margin-top:24px;gap:9px;flex-wrap:nowrap}.hero-actions .button{font-size:10px;gap:10px;padding:14px 12px;flex:1;min-height:50px}.hero-location{margin-top:24px}.hero-visual{height:300px;margin-top:5px}.hero-panel{width:365px;max-width:100%;height:305px}.visual-orbit{width:275px;height:275px}.visual-label{font-size:6px;left:50%;transform:translateX(-50%);width:230px;bottom:0}.visual-label small{font-size:6px}.hero-bottom>.container{min-height:51px;font-size:8px;gap:10px}.hero-bottom a{font-size:6px;letter-spacing:.05em;white-space:nowrap}.hero-bottom a>span{font-size:13px;margin-left:5px}.stats-inner{grid-template-columns:1fr 1fr 1fr;padding:24px 0;gap:12px}.stats-inner>div{margin:0;padding-right:5px}.stats-inner>div:nth-child(3){border:0}.stats-inner strong{font-size:26px;white-space:nowrap}.stats-inner strong>span{font-size:8px;margin-left:4px}.stats-inner div>p{font-size:8px;line-height:1.6;margin-top:8px}.stats-message{display:none}.section{padding:55px 0}.eyebrow{font-size:9px;margin-bottom:12px}h2{font-size:27px}.section-heading{display:block;margin-bottom:29px}.section-heading>p{font-size:12px;margin-top:19px}.section-heading>.text-link{margin-top:20px}.service-grid{grid-template-columns:1fr;gap:32px}.service-art{height:215px}.service-card-body{padding:20px 0 22px}.service-card-body h3{font-size:22px}.service-card-body>p:last-child{font-size:13px}.service-card-body>p:last-child br{display:none}.one-stop-inner{grid-template-columns:1fr;gap:38px}.one-stop-diagram{height:310px}.node-b{bottom:60px;left:14px}.node-c{bottom:60px;right:14px}.diagram-node{padding:10px;font-size:10px}.one-stop-copy>p:not(.eyebrow){font-size:13px}.one-stop-copy h2{font-size:26px}.brand-grid{grid-template-columns:1fr 1fr}.brand-grid>span{font-size:13px;padding:25px 8px;min-height:86px}.section-end{align-items:flex-start;gap:20px}.section-end>p{max-width:120px;font-size:9px}.text-link{font-size:12px;gap:20px}.about-teaser-inner{grid-template-columns:1fr;gap:36px}.about-word{font-size:88px}.about-word small{font-size:11px;margin-top:18px}.about-teaser-inner>div:last-child>p:not(.eyebrow){font-size:13px;margin-top:20px}.inline-links{gap:30px;margin-top:24px}.news-row{grid-template-columns:92px 85px 1fr;gap:10px 15px;padding:21px 0}.news-title{grid-column:1/3;grid-row:2;font-size:13px;line-height:1.8}.news-row>span:last-child{grid-column:3;grid-row:1/3;justify-self:end}.news-date{font-size:9px}.news-tag{font-size:9px;max-width:85px}.contact-band{padding:42px 0}.contact-band-inner{display:block}.contact-band h2{font-size:30px}.contact-band p:last-child{font-size:12px}.contact-band .button{margin-top:24px;width:100%}.mobile-only{display:block}.footer-main{grid-template-columns:1fr;gap:30px;padding-bottom:30px}.site-footer{padding-top:40px}.footer-links{gap:13px}.footer-bottom{gap:14px;flex-wrap:wrap;padding:20px 0}.footer-bottom>small{width:100%;flex-basis:100%}.footer-bottom .back-top{margin-left:auto}.site-footer address{margin-top:20px}.page-hero{padding:23px 0 42px}.breadcrumb{font-size:9px;margin-bottom:30px}.page-hero h1{font-size:34px}.page-intro{font-size:12px}.page-hero-mark{font-size:190px;right:5%;bottom:-45px}.subnav{width:100%;gap:0}.subnav>a{font-size:9px;padding:18px 6px}.detail-grid{grid-template-columns:1fr;gap:32px}.detail-grid.reverse>div:first-child{order:0}.detail-grid h2{font-size:29px}.detail-grid>div:first-child>p:not(.eyebrow){font-size:13px;margin-top:20px}.detail-art{min-height:230px}.detail-number{margin-bottom:15px}.check-list li{font-size:13px}.process-grid{grid-template-columns:1fr 1fr;gap:18px 24px;margin-top:28px}.process-grid li{padding:17px 0}.process-grid h3{font-size:15px;margin:12px 0}.process-grid p{font-size:11px}.company-intro{margin-bottom:45px}.company-intro h2{font-size:26px}.company-intro>p:last-child{font-size:13px;margin-top:20px}.profile-grid{grid-template-columns:1fr;gap:28px}.data-table>div{grid-template-columns:95px 1fr;font-size:12px;padding:18px 0;gap:12px}.timeline li{grid-template-columns:65px 1fr;gap:20px;padding-bottom:28px}.timeline li::before{left:65px}.timeline li::after{left:62px}.timeline li>span{font-size:18px}.timeline h3{font-size:14px}.access-map iframe{height:300px}.philosophy-lead h2{font-size:28px}.philosophy-lead p:last-child{font-size:12px}.philosophy-pair{grid-template-columns:1fr;gap:45px}.philosophy-pair h2{font-size:25px}.philosophy-pair article>p:last-child{font-size:13px}.values-row{padding:22px 0;gap:0;margin-top:28px}.values-row>span{font-size:22px}.values-row small{font-size:8px;margin-top:6px}.section-lead{font-size:13px}.heart-list li{font-size:16px}.heart-list li>span{margin-right:26px}.action-title{font-size:20px}.manufacturer-intro{gap:20px}.manufacturer-intro h2{font-size:22px}.maker-list{grid-template-columns:1fr 1fr}.maker-item{padding:16px 12px;font-size:11px;min-height:80px}.news-archive{grid-template-columns:1fr;gap:30px}.news-archive aside{flex-direction:row;gap:20px;flex-wrap:wrap}.news-archive aside .eyebrow{width:100%;margin-bottom:0}.news-archive aside a{width:auto;font-size:11px}.news-article h2{font-size:21px}.news-article>p{font-size:13px}.news-article{margin-bottom:30px;padding-bottom:30px}.legal-content p{font-size:13px}.legal-content h2{font-size:19px}.sitemap-grid{grid-template-columns:1fr;gap:5px}.contact-aside{display:block}.contact-aside>div+div{margin-top:28px}.contact-aside h2{font-size:23px}.contact-telephone{font-size:26px;margin-top:12px}.form-steps{gap:8px;margin-bottom:30px}.form-steps li{font-size:10px;padding-bottom:12px}.form-steps li>span{font-size:9px;margin-right:5px}.form-row{grid-template-columns:1fr;gap:0}.form-field label{font-size:12px}.form-field input,.form-field textarea,.form-field select{font-size:16px;padding:12px}.form-actions{flex-wrap:wrap;gap:10px}.form-actions .button{flex-basis:100%;font-size:13px}.confirm-table>div{grid-template-columns:1fr;gap:5px;font-size:12px;padding:16px 0}.form-complete h2{font-size:24px}.form-complete p{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
.contact-content>h2{font-size:26px}.form-actions>form{flex:1}.form-actions>form .button{width:100%}
@media(max-width:960px){html:not(.js) .site-header{height:auto;position:relative;flex-wrap:wrap;padding-top:18px}html:not(.js) .menu-toggle{display:none}html:not(.js) .site-header nav{display:flex;position:static;flex-basis:100%;padding:12px 0 20px;max-height:none}}
@media(max-width:640px){.form-actions>form{flex-basis:100%}.contact-content>h2{font-size:23px}}

/* Shared type scale: body and controls follow the approved navigation size. */
:root{
  --text-body:15px;
  --text-secondary:13px;
  --text-control:15px;
}
body{font-size:var(--text-body)}
.section-heading>p,
.section-lead,
.hero-description,
.service-card-body>p:last-child,
.one-stop-copy>p:not(.eyebrow),
.about-teaser-inner>div:last-child>p:not(.eyebrow),
.contact-band p:last-child,
.site-footer address,
.footer-links,
.page-intro,
.detail-grid>div:first-child>p:not(.eyebrow),
.check-list li,
.process-grid p,
.company-intro>p:last-child,
.data-table>div,
.timeline p,
.profile-grid>div>p:not(.eyebrow),
.philosophy-lead p:last-child,
.philosophy-pair article>p:last-child,
.manufacturer-intro p:not(.eyebrow),
.maker-item,
.news-title,
.news-archive aside a,
.news-article>p,
.legal-content p,
.contact-aside,
.form-field label,
.consent-label,
.form-alert,
.confirm-table>div,
.form-complete p{font-size:var(--text-body)}

.button,
.hero-actions .button,
.form-actions .button,
.text-link,
.subnav>a,
.manufacturer-search label,
.search-input input,
.form-field input,
.form-field textarea,
.form-field select,
.form-field input::placeholder,
.form-field textarea::placeholder,
.form-steps li{font-size:var(--text-control)}

.eyebrow,
.hero-eyebrow,
.service-card-body .eyebrow,
.contact-band .eyebrow,
.small-note,
.hero-location,
.visual-label,
.visual-label small,
.hero-bottom>.container,
.hero-bottom a,
.service-num,
.diagram-caption,
.diagram-node>span,
.diagram-note,
.section-end>p,
.about-word>small,
.news-date,
.news-tag,
.footer-note,
.footer-note>span,
.footer-bottom,
.footer-bottom>small,
.breadcrumb,
.detail-number,
.process-grid li>span,
.access-map p,
.values-row small,
.heart-list li>span,
.manufacturer-note,
.form-steps li>span,
.required,
.optional,
.field-error,
.form-help,
.form-notice{font-size:var(--text-secondary)}

.brand-text small{font-size:13px;letter-spacing:.06em}
.diagram-node,.diagram-center>span{font-size:var(--text-body)}
.stats-inner strong>span{font-size:var(--text-secondary)}
.stats-inner div>p{font-size:var(--text-body)}
.stats-message{font-size:18px}
.brand-grid>span{font-size:17px}
.service-card-body h3{font-size:22px}
.process-grid h3,.timeline h3{font-size:18px}
.hero-actions{flex-wrap:wrap}
.hero-actions .button{gap:20px}
.visual-label{max-width:calc(100% - 40px)}
.footer-main{grid-template-columns:1.2fr 1fr 1.1fr;gap:40px}
.footer-note{letter-spacing:.04em}
.section-end>p{max-width:none}

@media(max-width:960px){
  .hero-inner{grid-template-columns:1.2fr 1fr;gap:15px}
  .hero-actions .button{padding:15px 18px}
  .visual-label{left:0;max-width:100%;letter-spacing:.05em}
  .one-stop-diagram{height:auto;padding:22px;display:grid;gap:14px}
  .one-stop-diagram::before{display:none}
  .diagram-caption{position:static;line-height:1.5}
  .diagram-center{position:static;transform:none;width:114px;height:114px;margin:8px auto}
  .diagram-node{position:static;transform:none;justify-content:center;padding:12px}
  .diagram-note{position:static;width:auto;line-height:1.8;margin-top:4px}
  .footer-main{grid-template-columns:1.2fr 1fr;gap:30px}
}

@media(max-width:640px){
  :root{--text-body:16px;--text-secondary:14px;--text-control:16px}
  .hero-eyebrow{letter-spacing:.06em}
  .hero-inner{display:block}
  .hero-actions{flex-direction:column;gap:12px}
  .hero-actions .button{width:100%;flex:auto;padding:17px 20px}
  .hero-location{letter-spacing:.08em}
  .hero-visual{height:340px}
  .visual-label{left:0;transform:none;width:100%;max-width:100%;letter-spacing:.03em;bottom:0;line-height:1.7}
  .visual-label small{margin-left:15px}
  .hero-bottom>.container{flex-direction:column;align-items:flex-start;gap:8px;padding:16px 0;line-height:1.7}
  .hero-bottom a{letter-spacing:.08em}
  .stats-inner{grid-template-columns:1fr;gap:0;padding:12px 0}
  .stats-inner>div{display:grid;grid-template-columns:130px minmax(0,1fr);align-items:center;gap:14px;border-right:0;border-bottom:1px solid var(--line);padding:16px 0;margin:0}
  .stats-inner strong{font-size:30px}
  .stats-inner div>p{margin:0;line-height:1.7}
  .section-end{flex-direction:column;align-items:flex-start;gap:12px}
  .inline-links{flex-wrap:wrap;gap:18px 30px}
  .brand-grid>span{font-size:16px;overflow-wrap:anywhere}
  .news-row{grid-template-columns:115px 95px minmax(0,1fr);gap:10px 12px}
  .news-tag{max-width:none}
  .news-title{line-height:1.8}
  .footer-main{grid-template-columns:1fr}
  .footer-links{gap:16px 20px}
  .footer-bottom{line-height:1.8}
  .subnav{flex-direction:column}
  .subnav>a{padding:16px 20px;border-left:1px solid var(--line);border-bottom:1px solid var(--line)}
  .subnav>a:last-child{border-bottom:0}
  .data-table>div{grid-template-columns:95px minmax(0,1fr)}
  .data-table dd{overflow-wrap:anywhere}
  .values-row{display:grid;grid-template-columns:1fr 1fr;padding:0}
  .values-row>span{padding:22px 12px;border-right:0;border-bottom:1px solid var(--line)}
  .values-row>span:nth-child(odd):not(:last-child){border-right:1px solid var(--line)}
  .values-row>span:last-child{grid-column:1/-1}
  .heart-list li{display:flex;align-items:baseline;gap:18px;font-size:18px}
  .heart-list li>span{margin-right:0;flex-shrink:0}
  .maker-item{padding:18px 14px}
  .form-steps li{line-height:1.6}
  .form-steps li>span{display:block;margin:0 0 6px}
}

/* 経営理念（忠恕） */
.philosophy-lead .philosophy-text{margin-top:35px;font-size:15px;line-height:2.2;color:#c5ccd4}
.chujo-list{margin:45px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:24px}
.chujo-list>div{display:flex;gap:22px;align-items:center;border-top:1px solid rgba(255,255,255,.18);padding-top:22px}
.chujo-list dt{font-size:44px;font-weight:700;line-height:1;color:var(--green);flex-shrink:0}
.chujo-list dd{margin:0;font-size:14px;line-height:1.9;color:#e4e8ec}
.philosophy-pair h2.philosophy-long{font-size:21px;line-height:1.8}
.philosophy-pair article>p:last-child{line-height:2.1}
@media(max-width:640px){.chujo-list{grid-template-columns:1fr;gap:18px;margin-top:32px}.chujo-list dt{font-size:36px}.chujo-list dd{font-size:13px}.philosophy-lead .philosophy-text{font-size:13px}.philosophy-pair h2.philosophy-long{font-size:18px}}

/* 会社ロゴ（旧サイトのロゴを文字で再構成） */
.brand{gap:14px}
.brand-mark{display:flex;align-items:center;justify-content:center;width:64px;height:54px;background:#042c53;border-right:4px solid #ef9f27;color:#fff;font:700 15px/1 Arial,Helvetica,sans-serif;letter-spacing:.06em;flex-shrink:0}
.brand-text b{font:700 23px/1 Arial,Helvetica,sans-serif;letter-spacing:.07em;color:#042c53}
.brand-text small{font-size:11px;font-weight:500;letter-spacing:.24em;color:#6b6b6b;margin-top:7px;line-height:1.2}
.brand-text i{display:block;font:400 9px/1.2 Arial,Helvetica,sans-serif;letter-spacing:.2em;color:#6b6b6b;margin-top:6px}
.brand-light{background:none;padding:0}
.brand-light .brand-mark{box-shadow:0 0 0 1px rgba(255,255,255,.35)}
.brand-light .brand-text b{color:#fff}
.brand-light .brand-text small,.brand-light .brand-text i{color:#b9c6d4}
@media(max-width:1100px){.brand-mark{width:58px;height:48px;font-size:14px}.brand-text b{font-size:21px}}
@media(max-width:640px){.brand{gap:11px}.brand-mark{width:50px;height:42px;font-size:12px;border-right-width:3px}.brand-text b{font-size:18px}.brand-text small{font-size:9px;letter-spacing:.18em;margin-top:5px}.brand-text i{font-size:8px;letter-spacing:.12em}}
.footer-links a{white-space:nowrap}

/* メーカー公式サイトへのリンク */
a.maker-item{justify-content:space-between;gap:12px;color:inherit;transition:background .15s}
a.maker-item::after{content:"↗";flex-shrink:0;color:var(--green-dark);font-size:14px}
a.maker-item:hover,a.maker-item:focus-visible{background:var(--mist)}
a.maker-item:hover::after{color:var(--green)}
.heart-list li>span.heart-dot{font:inherit;margin-right:2px;color:var(--green)}

/* お知らせ：本文 */
.news-body{margin-top:22px;font-size:14px;line-height:2;color:var(--muted)}
.news-body p{margin:0 0 1.1em}
.news-body p:last-child{margin-bottom:0}
.news-body h3{font-size:15px;color:var(--ink);margin:1.6em 0 .5em}
.news-body h3:first-child{margin-top:0}
.news-body ul{margin:0 0 1em;padding-left:1.3em}
.news-body li{margin:.25em 0}
.news-hint{font-size:11px;color:var(--muted);margin-top:8px}
@media(max-width:640px){.news-body{font-size:13px}}

/* お知らせ：冒頭3行＋続きを読む */
.news-body.is-clamped{max-height:6em;overflow:hidden;position:relative;cursor:pointer}
.news-body.is-clamped::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3em;background:linear-gradient(rgba(255,255,255,0),#fff)}
.news-more{margin-top:12px;background:none;border:0;padding:6px 0;font:700 13px/1 var(--font);color:var(--green-dark);cursor:pointer;display:inline-flex;align-items:center;gap:8px;border-bottom:1px solid currentColor}
.news-more::after{content:"+";font:400 15px/1 Arial,sans-serif}
.news-more[aria-expanded="true"]::after{content:"\2212"}
.news-more:hover{color:var(--ink)}
.news-more:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.news-article h2{margin-bottom:0}
.brand-text small{color:#3d4650}
.brand-light .brand-text small{color:#dbe3ec}
/* 行動指針の「・」を5つの心と統一 */
.check-list.action-list li{padding-left:0}
.check-list.action-list li::before{content:"・";position:static;width:auto;height:auto;background:none;color:var(--green);font-weight:700;margin-right:2px}
/* 「・」の大きさ・間隔・ぶら下げを統一 */
.heart-list li,.check-list.action-list li{display:flex;align-items:baseline;gap:0}
.heart-list li>span.heart-dot,.check-list.action-list li::before{flex:none;width:1em;margin-right:6px;font-size:20px;font-weight:700;color:var(--green);text-align:center}
