:root{--green:#102b4e;--yellow:#7dd3f5;--ink:#172b43;--soft:#f1f6fb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;color:var(--ink);font-size:16px;line-height:1.8}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #249bd0;outline-offset:5px}header{padding:22px 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dde6ef;background:white}.brand{display:flex;align-items:center;gap:12px;font-size:20px;font-weight:900;line-height:1.4}.brand small{display:block;font-size:11px;letter-spacing:2px;margin-bottom:4px}.mark{display:grid;place-items:center;background:var(--green);color:var(--yellow);width:54px;height:54px;font-size:36px;font-weight:900;position:relative}.mark span{font-size:24px;position:absolute;right:2px;bottom:-3px}.mobile{display:none}nav{display:flex;gap:25px;align-items:center;font-size:14px;font-weight:700}.navcta{background:var(--green);color:white;padding:12px 22px}.hero{display:grid;grid-template-columns:1.08fr 1fr;min-height:620px}.hero-copy{padding:60px 7% 48px 8%}.eyebrow{font-size:13px;letter-spacing:2px;font-weight:800;color:var(--green);margin:0 0 16px}.hero .eyebrow{font-size:15px;letter-spacing:1px;border-left:5px solid var(--yellow);padding-left:12px}h1{font-size:clamp(40px,4.2vw,66px);font-weight:900;line-height:1.27;letter-spacing:-2px;margin:20px 0 25px}h1 em{font-style:normal;background:linear-gradient(transparent 70%,var(--yellow) 70%)}.lead{font-size:17px;line-height:2}.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px;margin:26px 0}.button{display:inline-block;cursor:pointer;border:0;padding:16px 27px;font-weight:800;font-size:16px;text-align:center}.yellow{background:var(--yellow);color:var(--ink)}.textlink{font-weight:700;font-size:14px;border-bottom:1px solid}.hero-tags{display:flex;gap:10px;flex-wrap:wrap;font-size:12px}.hero-tags span{border:1px solid #d4dfeb;padding:4px 9px}.hero-photo{position:relative;background:#ccdcea;min-height:500px;overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;position:absolute}.photo-label{position:absolute;bottom:32px;left:30px;background:var(--green);color:white;padding:18px 25px;letter-spacing:2px;font-size:23px;font-weight:800}.photo-label small{display:block;font-size:14px;letter-spacing:1px}.ribbon{display:flex;justify-content:center;align-items:center;gap:60px;background:var(--green);color:white;padding:22px;font-size:18px;font-weight:700}.ribbon b{color:var(--yellow)}.section{padding:85px 6%;max-width:1400px;margin:auto}h2{font-size:36px;line-height:1.5;letter-spacing:-1px;margin:0 0 25px;font-weight:900}.section-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.section-top>p{font-size:15px}.filters{display:flex;gap:10px;margin:23px 0 30px;flex-wrap:wrap}.filters button{border:1px solid #b8c9dc;background:white;color:var(--green);padding:10px 23px;font-size:14px;cursor:pointer}.filters .active{background:var(--green);color:white;border-color:var(--green)}.materials{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.materials article{border:1px solid #d7e1ed;padding:27px;background:#fff;display:flex;flex-direction:column;align-items:flex-start;min-height:275px}.materials article[hidden]{display:none}.material-symbol{font-size:32px;background:var(--soft);width:70px;height:65px;display:grid;place-items:center;font-weight:900;margin-bottom:15px;font-family:Arial,sans-serif}.copper{background:#f4e6dc;color:#9a4b23}.wire{color:#977828;background:#f3efdc}.materials small{font-size:11px;letter-spacing:1.6px;color:#536c87}.materials h3{font-size:23px;margin:2px 0 8px}.materials p{font-size:14px;margin:0 0 18px;line-height:1.8}.cardtag{font-size:12px;margin-top:auto;background:var(--soft);padding:4px 10px}.note{font-size:13px;color:#53677d;margin-top:22px}.priceband{background:var(--yellow);padding:52px 8%;display:grid;grid-template-columns:1fr 1fr;gap:30px}.priceband .button{background:var(--green);color:white;margin-top:15px}.priceband h2{margin:0}.ways{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:40px}.ways article{background:var(--soft);padding:35px 40px}.ways .green{background:var(--green);color:white}.way-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.way-head span{font:700 50px Arial,sans-serif;color:#6584a5}.green .way-head span{color:var(--yellow)}.way-head p{font-size:13px}.ways h3{font-size:30px;margin:16px 0}.ways p{font-size:15px}.ways ol{padding-left:25px;border-top:1px solid #a1b6cc;padding-top:20px}.ways li{padding:6px 0;font-size:15px}.area{background:#edf5fb;padding:65px 8%;display:grid;grid-template-columns:1fr 1fr;gap:50px}.area-list{display:grid;grid-template-columns:repeat(3,1fr);align-content:center;gap:10px}.area-list>span{background:white;border-top:4px solid var(--green);padding:25px 10px;font-size:24px;font-weight:800;text-align:center}.area-list small{display:block;font-size:10px;letter-spacing:1px;color:#7288a0}.area-list p{grid-column:1/-1;font-size:14px}.faq{display:grid;grid-template-columns:1fr 1.7fr;gap:40px}details{border-bottom:1px solid #d0ddeb;padding:20px 0}summary{font-weight:700;font-size:17px;cursor:pointer}details p{font-size:15px;padding-left:20px;color:#50667e}.consult{padding:70px 8%;background:var(--green);color:white}.consult>.eyebrow{color:var(--yellow)}.consult h2{font-size:40px}.consult form{max-width:900px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:30px 0}label{display:block;font-size:14px;font-weight:700}input,select,textarea{display:block;width:100%;border:1px solid #c3d3e5;background:white;border-radius:0;padding:13px;margin-top:7px;color:var(--ink);font-size:16px}textarea{resize:vertical}.form-note{font-size:13px;color:#c9dcee}#result{margin-top:25px;padding-top:25px;border-top:1px solid #59799e}.white{background:white;margin-top:15px}#copystatus{margin-left:15px;font-size:14px}footer{padding:40px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px}footer p{font-size:13px}footer>small{font-size:11px}@media(min-width:1600px){.hero-copy{padding-left:12%}.hero{min-height:690px}}@media(max-width:900px){header{padding:18px 5%}nav a:not(.navcta){display:none}.brand{font-size:16px}.brand small{font-size:9px}.hero{grid-template-columns:1fr 1fr}.hero-copy{padding:45px 7%}h1{font-size:43px}.lead{font-size:15px}.hero-photo{min-height:500px}.ribbon{gap:22px;font-size:15px}.materials{grid-template-columns:1fr 1fr}.section-top{display:block}.section{padding:60px 6%}h2{font-size:30px}.area{gap:25px}.area-list>span{font-size:18px}.ways article{padding:27px}.way-head{display:block}.way-head p{margin:3px 0}.faq{grid-template-columns:1fr}footer{flex-wrap:wrap}}@media(max-width:600px){header{gap:12px}.mark{width:42px;height:45px;font-size:29px;flex-shrink:0}.mobile{display:block}.brand{font-size:15px}.brand small{font-size:8px;letter-spacing:1px}.navcta{padding:10px;font-size:12px}nav{gap:0}.hero{display:flex;flex-direction:column}.hero-copy{padding:35px 6% 30px}h1{font-size:44px;margin:17px 0 20px;line-height:1.3}.hero .eyebrow{font-size:13px}.lead{font-size:15px}.hero-tags{gap:5px;font-size:11px}.hero-photo{min-height:300px}.photo-label{bottom:18px;left:20px;font-size:20px;padding:12px 18px}.ribbon{gap:10px;padding:17px 10px;font-size:12px}.ribbon b{font-size:15px}.section{padding:48px 6%}h2{font-size:27px}.eyebrow{font-size:11px}.filters{gap:7px}.filters button{font-size:12px;padding:8px 12px}.materials{gap:12px}.materials article{padding:18px 14px;min-height:255px}.materials h3{font-size:18px;line-height:1.6}.materials p{font-size:13px}.materials small{font-size:9px;letter-spacing:.7px}.material-symbol{width:52px;height:50px;font-size:24px}.cardtag{font-size:10px;padding:4px 6px}.priceband,.area{grid-template-columns:1fr;padding:40px 6%;gap:16px}.priceband p,.area p{font-size:14px}.ways{grid-template-columns:1fr;margin-top:25px;gap:15px}.way-head{display:flex}.ways h3{font-size:26px}.way-head span{font-size:42px}.area-list>span{font-size:20px;padding:20px 8px}.faq{gap:0}summary{font-size:15px}.consult{padding:45px 6%}.consult h2{font-size:30px}.consult>p{font-size:14px}.form-grid{grid-template-columns:1fr;gap:15px}.button{padding:15px 20px}footer{display:block;padding:30px 6%}footer .brand{font-size:15px}.note{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.price-date{display:flex;gap:18px;align-items:center;flex-wrap:wrap;background:var(--soft);padding:12px 18px;margin:10px 0 22px;font-size:14px}.price-date strong{color:var(--green)}.price-date span{font-size:13px}.materials article{padding:0;overflow:hidden}.material-photo{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block;border-bottom:1px solid #d7e1ed}.materials article>div:not(.card-price){padding:20px 22px 5px;width:100%}.card-price{padding:15px 22px 20px;border-top:1px solid #d7e1ed;width:100%;margin-top:auto;background:#f3f7fc}.card-price>span{font-size:13px;font-weight:700;display:block}.card-price strong{display:block;color:var(--green);font:900 42px/1.4 Arial,sans-serif;letter-spacing:-1px;margin:4px 0}.card-price strong small{font:700 15px/1.4 sans-serif;letter-spacing:0;margin-left:7px;color:var(--green)}.materials .card-price p{font-size:12px;margin:6px 0 0}.note a{text-decoration:underline}@media(max-width:600px){.materials article{padding:0;min-height:0}.materials article>div:not(.card-price){padding:14px 12px 4px}.card-price{padding:12px}.card-price strong{font-size:32px}.card-price>span{font-size:11px;line-height:1.6}.card-price strong small{font-size:12px;margin-left:4px}.materials .card-price p{font-size:11px}.price-date{gap:4px 12px;padding:10px 12px}}

.brand-sub{font-size:15px}.line-cta{max-width:1232px;margin:25px auto;padding:28px 35px;border:1px solid #b2d8f1;background:#eef8fe;display:flex;align-items:center;justify-content:space-between;gap:25px}.line-kicker{font-size:13px;font-weight:800;color:#137039}.line-cta h3{font-size:23px;margin:3px 0 7px;line-height:1.5}.line-cta p{font-size:14px;margin:0}.line-button{background:#06c755;color:white;white-space:nowrap;min-width:220px}.line-button:hover{background:#05aa48}.line-assessment{padding-top:55px}.line-assessment>p{font-size:16px}.line-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:32px 0}.line-steps article{border-top:4px solid #06c755;background:var(--soft);padding:25px}.line-steps span{font:800 32px Arial;color:#159348}.line-steps h3{font-size:21px;margin:10px 0}.line-steps p{font-size:15px;margin:0}dialog{border:0;max-width:430px;width:90%;padding:30px;color:var(--ink)}dialog::backdrop{background:#102b4e99}dialog h3{font-size:21px;margin-top:20px}dialog p{font-size:15px}.dialog-close{position:absolute;right:15px;top:10px;border:0;background:white;font-size:28px;cursor:pointer}@media(max-width:900px){.line-cta{margin:20px 6%;padding:25px;display:block}.line-cta .line-button{margin-top:18px}.line-steps{gap:15px}.line-steps article{padding:20px}.line-steps h3{font-size:18px}}@media(max-width:600px){.brand-sub{font-size:13px}.line-cta{padding:22px 20px}.line-cta h3{font-size:21px}.line-cta p{font-size:14px}.line-button{width:100%;min-width:0}.line-steps{grid-template-columns:1fr}.line-steps article{padding:20px}.line-steps h3{font-size:20px}.line-assessment>p{font-size:15px}.line-kicker{font-size:12px}}

.brand-logo{width:145px;height:58px;object-fit:contain;flex-shrink:0}.brand{gap:18px;font-size:21px}.brand>span{line-height:1.5}.brand-sub{font-size:16px}.line-assessment{background:#eef8fe;border-top:5px solid #06c755;margin-top:55px;margin-bottom:55px}.line-assessment h2{color:var(--green);font-size:39px}.line-assessment>.line-button{min-width:340px}.line-cta{padding:40px;background:#e9f5fd;border-left:6px solid #06c755}.line-cta h3{font-size:29px;font-weight:900;line-height:1.5;margin:9px 0 13px}.line-kicker{font-size:14px}.cta-points{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.cta-points span{background:white;padding:5px 10px;font-size:12px;font-weight:700;color:#137039}.cta-action{display:flex;flex-direction:column;gap:10px;align-items:center}.cta-action small{font-size:12px;color:#526e5c;text-align:center}.final-line{background:var(--green);color:white;border-left-color:var(--yellow)}.final-line .line-kicker{color:var(--yellow)}.final-line .cta-action small{color:#d2e3f2}@media(max-width:900px){.brand-logo{width:110px;height:50px}.brand{font-size:18px;gap:12px}.brand-sub{font-size:14px}.cta-action{align-items:flex-start;margin-top:15px}.line-cta .line-button{margin-top:0}}@media(max-width:600px){header{flex-wrap:wrap}.brand-logo{width:105px;height:45px}.brand{font-size:17px;gap:10px}.brand-sub{font-size:12px}.navcta{font-size:11px;padding:8px}.line-assessment{margin-top:30px;margin-bottom:30px}.line-assessment h2{font-size:28px}.line-assessment>.line-button{min-width:0}.line-cta{padding:25px 20px}.line-cta h3{font-size:24px}.line-kicker{font-size:12px}.cta-action{width:100%;align-items:stretch}.cta-action small{text-align:left}footer .brand{font-size:17px}}
/* Navy-led presentation with light product cards for clear prices. */
:root{--green:#0b2240;--yellow:#7dd3f5}
.hero-copy{background:var(--green);color:white}.hero .eyebrow{color:#bceaff}.hero .lead{color:#e0eaf5}.hero h1 em{background:none;color:var(--yellow)}.hero-tags span{border-color:#637b98;color:#e0eaf5}.hero .textlink{color:#c3ecff}.ribbon{background:#071a33;border-top:1px solid #304867}
.priceband{background:var(--green);color:white;border-top:1px solid #304867;border-bottom:1px solid #304867}.priceband .eyebrow{color:var(--yellow)}.priceband .button{background:var(--yellow);color:var(--green)}
.line-assessment{background:var(--green);color:white;border-top-color:var(--yellow)}.line-assessment h2{color:white}.line-assessment .eyebrow{color:var(--yellow)}.line-assessment .note{color:#d0deee}.line-steps article{background:#173557;border-top-color:var(--yellow)}.line-steps span{color:var(--yellow)}.line-steps p{color:#dfebf8}
.area{background:var(--green);color:white}.area .eyebrow{color:var(--yellow)}.area-list>span{background:#193859;border-top-color:var(--yellow)}.area-list small{color:#acd5ef}.area-list p{color:#e0ebf6}
.line-cta:not(.final-line){background:var(--green);color:white;border-left-color:var(--yellow)}.line-cta .line-kicker{color:var(--yellow)}.line-cta .cta-action small{color:#d2e3f2}.cta-points span{background:#1d3c5e;color:#d0efff}.final-line{border-left-color:var(--yellow)}
footer{background:#071a33;color:white;border-top:1px solid #304867}footer .brand-logo{background:white;padding:6px;box-sizing:content-box}footer p,footer>small{color:#d2dfed}

.hero-copy{position:relative;overflow:hidden;padding-top:42px;padding-bottom:38px;background:linear-gradient(130deg,#102f55 0%,#091e39 80%)}.hero-copy:after{content:"";position:absolute;width:140px;height:140px;right:-95px;top:30px;border:28px solid #7dd3f5;transform:rotate(25deg);opacity:.5;pointer-events:none}.hero .eyebrow{display:inline-block;border-left:0;background:#7dd3f5;color:#0b2240;padding:6px 13px;font-weight:900;letter-spacing:1px;margin-bottom:16px}.hero-punch{font-size:18px;font-weight:900;letter-spacing:.8px;margin:0 0 12px;color:white}.hero h1{font-size:clamp(55px,5.8vw,88px);line-height:1.12;letter-spacing:-3px;font-weight:1000;margin:15px 0 12px;text-shadow:3px 4px 0 #06162b}.hero h1 .hero-first{font-size:.72em;display:inline-block;margin-bottom:7px}.hero h1 em{display:inline-block;font-size:1.12em;color:#0b2240;background:#7dd3f5;padding:2px 15px 10px;transform:rotate(-3deg);text-shadow:none;box-shadow:6px 7px 0 #3b9ecc;margin:5px 0 15px;white-space:nowrap}.hero-shout{font-size:25px;font-weight:900;letter-spacing:1px;color:#a9e7ff;margin:15px 0 8px}.hero .lead{font-size:16px;line-height:1.9;margin:10px 0}.hero-actions{margin:21px 0;gap:15px}.hero-actions .button{font-size:17px;font-weight:900;box-shadow:0 5px 0 #378db6;padding:17px 20px}.hero-tags span{font-weight:700;background:#17395c;border-color:#567492}.hero-photo .photo-label{background:#7dd3f5;color:#0b2240;transform:rotate(-2deg);font-weight:900}.hero-photo{min-height:580px}.ribbon{font-weight:900;font-size:20px;padding:20px}@media(max-width:900px){.hero h1{font-size:67px}.hero-punch{font-size:15px}.hero-shout{font-size:21px}.hero .lead{font-size:14px}.hero-actions .button{font-size:14px}.ribbon{font-size:15px}}@media(max-width:600px){.hero-copy{padding:30px 6% 32px}.hero .eyebrow{font-size:12px;padding:6px 10px;letter-spacing:.5px}.hero-punch{font-size:16px}.hero h1{font-size:clamp(44px,15vw,68px);line-height:1.15;letter-spacing:-2px;margin:8px 0 5px}.hero h1 em{padding:2px 12px 9px;box-shadow:5px 6px 0 #3b9ecc}.hero-shout{font-size:23px;margin:14px 0 8px}.hero .lead{font-size:14px;line-height:1.9}.hero-actions{align-items:stretch;margin:20px 0}.hero-actions .button{font-size:15px;padding:17px 12px}.hero .textlink{font-size:14px;align-self:flex-start}.hero-tags{gap:6px}.hero-tags span{font-size:10px;padding:4px 6px}.hero-photo{min-height:300px}.ribbon{font-size:12px;padding:17px 8px;gap:10px}}

.hero-line-cta{width:100%;margin-top:2px}.hero-line-cta h2{font-size:26px;line-height:1.5;margin:0 0 12px;color:white;letter-spacing:.5px;font-weight:900}.hero-actions .hero-line-button{display:block;width:100%;background:#06c755;color:white;font-size:28px;font-weight:900;padding:23px 20px;box-shadow:0 6px 0 #049940;border-radius:5px;line-height:1.5}.hero-actions .hero-line-button:hover{background:#05b94f}.navcta{background:#06c755;color:white}.line-button{font-size:21px;padding:20px 27px;font-weight:900}@media(max-width:600px){.hero-line-cta h2{font-size:25px;text-align:center;margin-bottom:13px}.hero-actions .hero-line-button{font-size:29px;padding:24px 12px}.line-button{font-size:21px;padding:20px 14px}.navcta{font-size:11px;padding:10px}}

.email-address{text-decoration:underline;overflow-wrap:anywhere}

.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}

.hero h1 .hero-category{display:block;font-size:16px;line-height:1.7;letter-spacing:1px;text-shadow:none;color:#c4eafd;margin-bottom:13px;font-weight:700}

.company-section>p:not(.eyebrow){max-width:780px}.company-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:45px;margin-top:30px}.company-grid dl{margin:0}.company-grid dl>div{display:grid;grid-template-columns:115px 1fr;gap:18px;border-bottom:1px solid #d7e1ed;padding:16px 0}.company-grid dt{font-weight:700;font-size:14px}.company-grid dd{margin:0;font-size:15px;overflow-wrap:anywhere}.company-grid dd a{text-decoration:underline}.access-panel{background:var(--green);color:white;padding:35px;align-self:start}.access-label{color:#7dd3f5;font-size:14px;font-weight:700}.access-panel h3{font-size:28px;line-height:1.5}.access-panel p{font-size:15px;color:#d2e3f2}.phone-link{display:block;font-size:32px;font-weight:900;letter-spacing:1px;margin:20px 0}.footer-links{display:flex;flex-direction:column;gap:10px;font-size:14px}.footer-links>a{text-decoration:underline}.footer-links small{font-size:12px;color:#d2dfed}@media(max-width:600px){.company-grid{grid-template-columns:1fr;gap:25px}.company-grid dl>div{grid-template-columns:90px 1fr;gap:10px}.company-grid dd{font-size:14px}.access-panel{padding:25px}.access-panel h3{font-size:25px}.phone-link{font-size:29px}.footer-links{margin-top:20px}}

.hero-video{padding:45px 8%;background:#071a33;color:white;display:grid;grid-template-columns:1fr 380px;align-items:center;gap:45px;border-top:1px solid #304867}.hero-video .eyebrow{color:#7dd3f5}.hero-video h2{font-size:40px;margin-bottom:22px}.hero-video .textlink{color:#c3ecff}.video-player{width:100%;max-width:380px;background:#000;aspect-ratio:9/16;border:1px solid #365271;border-radius:8px;overflow:hidden}.video-player iframe{display:block;width:100%;height:100%;border:0}@media(max-width:900px){.hero-video{grid-template-columns:1fr 320px;padding:35px 6%;gap:25px}.hero-video h2{font-size:32px}}@media(max-width:600px){.hero-video{display:flex;flex-direction:column;align-items:stretch;padding:30px 6%;gap:22px}.hero-video h2{font-size:28px}.hero-video h2 br{display:none}.hero-video .eyebrow{margin-bottom:8px}.video-player{max-width:350px;margin:auto}.hero-video .textlink{font-size:14px}}
