:root{--navy:#102b42;--ink:#162f42;--red:#c94336;--paper:#f4f5f3;--muted:#63717b;--line:#dce1e3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:white;font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.9}a{color:inherit;text-decoration:none}button{font:inherit}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #e4a948;outline-offset:5px}.skip{position:absolute;left:10px;top:-80px;background:white;padding:10px;z-index:99}.skip:focus{top:0}.preview-note{background:#eaece8;color:#52605e;font-size:11px;text-align:center;padding:4px 12px;letter-spacing:.05em}.preview-note span{margin-left:15px}.header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 4%;background:#fff;position:sticky;top:0;z-index:30;border-bottom:1px solid #edf0f1}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0;line-height:1.25}.brand-symbol{font-family:Arial,sans-serif;font-size:44px;font-weight:900;letter-spacing:-8px;padding-right:7px;border-bottom:5px solid var(--red);line-height:1;color:var(--navy)}.brand small{display:block;font-family:Arial,sans-serif;font-size:10px;letter-spacing:.18em;color:var(--muted);margin-bottom:4px}.brand strong{font-size:23px;font-weight:800;white-space:nowrap}.brand strong span{font-size:12px;margin-left:4px}.header nav{display:flex;align-items:center;gap:27px;font-size:12px;font-weight:bold}.header nav>a:hover{color:var(--red)}.nav-contact{background:var(--navy);color:#fff;padding:16px 22px}.nav-contact span{margin-left:20px}.menu-toggle{display:none}.hero{height:620px;position:relative;background:#102c43;overflow:hidden;color:white}.hero-photo{position:absolute;inset:0 0 0 34%;background-image:url('assets/supplies-reference.png');background-size:auto 270%;background-position:46% 31%;opacity:.88}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#102b42 0%,#102b42f5 22%,#102b4280 54%,#102b4208 100%)}.hero-content{position:relative;padding:90px 8% 65px}.eyebrow{font-family:Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.15em;color:var(--red);margin:0 0 23px}.eyebrow.light{color:#c5d6e1}.hero h1{font-size:clamp(34px,4.4vw,65px);font-weight:700;letter-spacing:.06em;line-height:1.5;margin:0 0 25px}.hero-lead{font-size:16px;letter-spacing:.09em;line-height:2}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:38px;padding:17px 25px;font-size:13px;font-weight:700;min-width:260px;transition:background .2s,transform .2s}.button:hover{transform:translateY(-3px)}.button span{font-size:24px;line-height:1}.white{background:white;color:var(--navy)}.hero .button{margin-top:22px}.hero-foot{position:absolute;left:8%;right:5%;bottom:23px;display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.15em;color:#d0dce6}.hero-scroll{font:9px Arial,sans-serif;letter-spacing:.2em}.hero-scroll i{font-style:normal;font-size:21px;margin-left:12px}.topic{display:flex;align-items:center;padding:24px 8%;border-bottom:1px solid var(--line);gap:48px;font-size:13px}.topic-label{font:700 11px Arial,sans-serif;letter-spacing:.14em;color:var(--red)}.topic a{display:flex;align-items:center;gap:22px;flex:1}.topic small{color:var(--muted);font-size:11px}.topic b{margin-left:auto;font-size:22px}.section{padding:105px 8%;scroll-margin-top:25px}h2{font-size:clamp(28px,3vw,43px);line-height:1.65;letter-spacing:.055em;margin:0;font-weight:700}h3{line-height:1.6}p{margin:0 0 20px}.about{display:grid;grid-template-columns:1fr 1fr;gap:9%}.about-text{font-size:14px;line-height:2.2;padding-top:15px}.large{font-size:23px;font-weight:bold;margin-bottom:24px}.text-link{border-bottom:1px solid #b7c3cb;display:flex;align-items:center;padding:18px 0 13px;font-size:12px;font-weight:bold;gap:12px}.text-link span{margin-left:auto;font-size:22px}.text-link small{color:var(--muted);font-size:10px;font-weight:400}.text-link:hover{color:var(--red);border-color:var(--red)}.about .text-link{max-width:230px}.business{background:var(--paper)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}.section-head>p{font-size:13px;color:var(--muted);margin:0 0 8px;line-height:2.1}.business-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.business-card{background:white}.business-photo{height:220px;position:relative;background-size:auto 275%;background-position:46% 31%}.supplies{background-image:url('assets/supplies-reference.png')}.equipment{background-image:url('assets/equipment-reference.png');background-position:69% 31%}.work{background-image:url('assets/work-reference.png')}.business-photo>span{position:absolute;bottom:0;left:0;background:var(--navy);color:white;padding:7px 16px;font:18px Arial,sans-serif}.business-body{padding:27px 25px 20px}.business-body .eyebrow{font-size:9px;margin:0 0 12px}.business-body h3{font-size:20px;margin:0 0 17px;letter-spacing:.02em}.business-body p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:2;min-height:74px}.tags{display:flex;gap:5px;flex-wrap:wrap;margin:20px 0 8px}.tags span{font-size:10px;background:#f0f3f4;padding:3px 8px}.caption{font-size:10px;color:var(--muted);margin:20px 0 0}.strength{background:var(--navy);color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:10%}.strength h2{font-size:clamp(27px,2.8vw,39px)}.strength-intro{font-size:14px;line-height:2;margin:27px 0}.outline{border:1px solid #718693;color:white;background:transparent}.outline:hover{background:#254256}.strength-list article{display:flex;gap:24px;border-top:1px solid #486072;padding:24px 0}.strength-list article:last-child{border-bottom:1px solid #486072}.strength-list article>span{font:24px Arial,sans-serif;color:#bdcfd9;padding-top:2px}.strength-list h3{font-size:18px;margin:0 0 10px}.strength-list p{font-size:12px;color:#c3d0da;line-height:2;margin:0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps article{border-top:2px solid var(--navy);padding-top:25px}.steps article>span{font:10px Arial,sans-serif;letter-spacing:.18em;color:var(--red)}.steps h3{font-size:21px;margin:18px 0 13px}.steps p{font-size:13px;color:var(--muted)}.effort-link{max-width:280px;margin-left:auto;margin-top:10px}.message{background:#eef1f1;display:grid;grid-template-columns:280px 1fr;gap:9%;align-items:center}.portrait{background:#d9e0e4;padding:28px 22px 18px;position:relative;border-bottom:4px solid var(--red)}.portrait img{width:100%;height:auto;display:block}.portrait>span{display:block;font:10px Arial,sans-serif;letter-spacing:.14em;margin-top:18px}.message h2{font-size:32px;margin-bottom:20px}.message p:not(.eyebrow){font-size:13px;line-height:2.1}.signature{margin:22px 0 0}.signature strong{display:block;font-size:25px;font-weight:500;letter-spacing:.18em;margin-top:6px}.company{display:grid;grid-template-columns:1fr 1.4fr;gap:8%}.company-english{font:700 55px/.95 Arial,sans-serif;letter-spacing:-.04em;color:#e3e8eb;margin-top:45px}.company dl{margin:0;border-top:1px solid var(--line)}.company dl>div{display:grid;grid-template-columns:120px 1fr;border-bottom:1px solid var(--line);padding:20px 5px;font-size:13px}.company dt{color:var(--muted)}.company dd{margin:0}.company dd a{display:flex;justify-content:space-between}.contact{background:#a7352b;color:white;display:flex;align-items:center;justify-content:space-between;gap:40px}.contact h2{font-size:36px}.contact p:not(.eyebrow){font-size:13px;margin:22px 0 0}.contact .eyebrow{color:#f2d6d2}.group-banner{padding:42px 8%;background:#f4f5f3;display:flex;gap:55px;align-items:center}.group-banner div{margin-right:auto}.group-banner div>span{font:700 12px Arial,sans-serif;letter-spacing:.14em}.group-banner p{font-size:12px;margin:6px 0 0;color:var(--muted)}.group-banner>a{font-size:12px;border-bottom:1px solid #bbc6ce;padding:12px 0}.group-banner b{margin-left:25px}footer{padding:55px 8% 25px;display:flex;align-items:center;gap:30px;flex-wrap:wrap}footer>p{font-size:11px;color:var(--muted);margin:0}.back-top{margin-left:auto;font-size:11px}.copyright{width:100%;border-top:1px solid var(--line);padding-top:22px;margin-top:25px;font:9px Arial,sans-serif;color:var(--muted);letter-spacing:.07em}
@media(min-width:1600px){.section{padding-left:max(8%,calc((100% - 1320px)/2));padding-right:max(8%,calc((100% - 1320px)/2))}.hero-content{padding-left:max(8%,calc((100% - 1320px)/2))}}
@media(max-width:1100px){.header nav{gap:16px;font-size:11px}.brand strong{font-size:20px}.brand strong span{font-size:10px}.nav-contact{padding:13px}.section{padding:75px 6%}.hero-content{padding-left:6%}.business-grid{gap:15px}.business-body{padding:23px 18px}.business-body h3{font-size:17px}.business-photo{height:180px}.message{grid-template-columns:240px 1fr}.strength{gap:6%}.group-banner{gap:25px}.hero{height:590px}}
@media(max-width:820px){html{scroll-padding-top:80px}.header{height:78px;padding:0 5%}.brand strong{font-size:20px}.brand-symbol{font-size:38px}.menu-toggle{display:block;border:1px solid var(--line);background:white;padding:6px 12px;font-size:11px}.menu-toggle span{font-size:18px;margin-left:10px}.header nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:16px 5% 24px;box-shadow:0 15px 20px #102b421a}.header nav.open{display:grid;gap:0}.header nav>a{padding:15px;border-bottom:1px solid var(--line)}.hero{height:560px}.hero-photo{left:0;opacity:.6}.hero-overlay{background:linear-gradient(90deg,#102b42f5,#102b4255)}.hero-content{padding-top:82px}.hero h1{font-size:39px}.hero-lead{font-size:13px}.hero-foot{left:6%;right:6%}.hero-scroll{display:none}.topic{gap:20px;padding:20px 6%}.topic a{font-size:11px;gap:10px}.topic small{display:none}.about{gap:7%}.about-text{padding-top:0}.large{font-size:20px}.business-grid{grid-template-columns:1fr}.business-card{display:grid;grid-template-columns:40% 1fr}.business-photo{height:100%;min-height:255px;background-size:auto 285%}.business-body p:not(.eyebrow){min-height:0;margin-bottom:10px}.business-body h3{font-size:20px}.section-head{gap:25px}.section-head>p{font-size:11px}.strength{grid-template-columns:1fr;gap:40px}.steps{gap:20px}.steps h3{font-size:17px}.message{grid-template-columns:200px 1fr;gap:6%}.message h2{font-size:26px}.company-english{font-size:45px}.contact{display:block}.contact .button{margin-top:30px}.group-banner{flex-wrap:wrap;gap:20px}.group-banner div{width:100%}footer .brand{width:100%}}
@media(max-width:540px){.preview-note{font-size:9px}.preview-note span{margin-left:6px}.brand strong{font-size:17px}.brand strong span{font-size:9px}.brand small{font-size:8px}.brand{gap:9px}.hero{height:550px}.hero h1{font-size:32px;line-height:1.7;letter-spacing:.02em}.hero-content{padding-top:75px}.hero .eyebrow{font-size:9px}.hero-foot{font-size:8px;letter-spacing:.05em}.section{padding:62px 6%}.about{grid-template-columns:1fr;gap:28px}.about-text{font-size:13px}.large{font-size:19px}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:20px;font-size:12px}h2{font-size:27px}.business-card{display:block}.business-photo{height:205px;min-height:0;background-size:auto 290%}.business-body{padding:25px}.business-grid{gap:24px}.steps{grid-template-columns:1fr;gap:20px}.steps h3{font-size:21px}.steps p{margin-bottom:5px}.message{grid-template-columns:1fr;gap:30px}.portrait{width:230px;padding:20px}.message h2{font-size:28px}.company{grid-template-columns:1fr;gap:25px}.company-english{display:none}.company dl>div{grid-template-columns:90px 1fr;font-size:12px}.contact h2{font-size:29px}.contact p:not(.eyebrow){font-size:12px}.topic{font-size:10px;gap:18px}.topic-label{font-size:9px}.group-banner{padding:30px 6%;display:block}.group-banner>a{display:block;margin-top:10px}.group-banner b{float:right}footer{padding:40px 6% 20px;gap:20px}footer>p{font-size:10px}.back-top{font-size:10px}.hero-lead{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.brand-logo{display:block;width:50px;height:53px;object-fit:contain;flex-shrink:0}
@media(max-width:820px){.brand-logo{width:40px;height:43px}}
