@font-face{font-family:ShindaiSans28;src:url('assets/shindai-sans-400-v28.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:ShindaiSans28;src:url('assets/shindai-sans-500-v28.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:ShindaiSans28;src:url('assets/shindai-sans-700-v28.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:ShindaiLatin28;src:url('assets/shindai-latin-v28.woff2') format('woff2');font-weight:100 900;font-display:swap}
:root{--font-ja:ShindaiSans28,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;--font-en:ShindaiLatin28,Arial,sans-serif;--font-ui:ShindaiLatin28,ShindaiSans28,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;--display:var(--font-en);--rule:#d6dde2;--copy:#4d606c}
body{font-family:var(--font-ui);font-size:15px;font-weight:400;letter-spacing:.015em;font-synthesis:none}
button,input,textarea,select{font-family:var(--font-ui)}
:where(h1,h2,h3){font-family:var(--font-ui);letter-spacing:.025em}
.eyebrow,.page-breadcrumb,.breadcrumb{font-family:var(--font-ui);font-weight:500}
.eyebrow{font-size:12px;letter-spacing:.07em}
.page-breadcrumb,.breadcrumb{font-size:12px;color:#61717c;gap:13px}
.section-label{margin-bottom:28px;gap:0}
.section-label>span:first-child{display:flex;align-items:center;gap:14px;font:500 12px/1.5 var(--font-en);letter-spacing:.075em;color:#3f5969}
.section-label>span:first-child:before{content:'';display:block;width:25px;height:1px;border-radius:0;background:#2fa6e8;box-shadow:none}
.world-heading h2,.section-heading h2,.fresh-business .section-heading h2{letter-spacing:.025em}
.world-heading>p,.section-heading>p,.service-card>p{font-size:15px;line-height:2}
.numbers strong{font:500 clamp(52px,4.7vw,70px)/1.2 var(--font-en);letter-spacing:-.035em;font-variant-numeric:lining-nums tabular-nums}
.numbers strong small{font:500 16px/1.5 var(--font-ja);letter-spacing:.02em;margin-left:6px}
.numbers>div>span{display:block;min-height:28px;font:500 14px/1.6 var(--font-ui);letter-spacing:.015em;color:#415d6e}
.numbers p{font-size:14px;line-height:1.85}.numbers p>span{font-size:12px}
.qualification-list strong{font:500 34px/1.2 var(--font-en);letter-spacing:-.025em}
.qualification-list strong small{font:400 13px/1.5 var(--font-ja);margin-left:5px}
.history-grid strong{font:500 54px/1.15 var(--font-en);letter-spacing:-.035em}
.work-trend strong{font:500 54px/1.2 var(--font-en);letter-spacing:-.035em}
.work-trend strong small{font:400 14px/1.5 var(--font-ja);margin-left:5px}
.core-number,.service-row-no>small{font:500 16px/1.4 var(--font-en);letter-spacing:0}
.service-card .eyebrow{font:500 12px/1.5 var(--font-en);letter-spacing:.04em}
.service-title>span{font:500 12px/1.6 var(--font-en);letter-spacing:.045em;color:#526e7f}
.service-scope{font-size:13px!important;line-height:1.9;color:#526e7f}
.service-photo:after,.home-record:before{display:none}
.service-inventory .service-row{grid-template-columns:50px minmax(0,1fr) auto;column-gap:24px}
.service-row .service-row-no{padding-top:6px;color:#5e7583;gap:0}
.service-row h3{font-size:23px;letter-spacing:.02em}
.service-row p{font-size:14px;line-height:1.9}
.news-list time,.news-strip time,.home-record-period,.record-period{font-family:var(--font-en);font-size:14px;font-weight:400;letter-spacing:0;font-variant-numeric:tabular-nums;color:#536d7d}
.news-strip>span{font:500 11px/1.5 var(--font-en);letter-spacing:.06em}
.home-record-client{font-weight:500}.home-record-title{font-weight:500}
.result-count,.records-total{font-family:var(--font-ui);font-variant-numeric:tabular-nums}
.project-table .record-title{font-weight:500}.project-table .record-client{font-weight:500}
.project-table th{font-size:13px;font-weight:500;background:#f3f6f8}
.record-category,.record-location{font-size:12px}
.filter-group button{font-size:14px;font-weight:500}
.trust-links>a{display:block}.trust-links h3{margin:0 0 9px}.trust-links p{font-size:14px}.trust-links .arrow{top:35px}
.news-section,.company-exterior,.job-card{border-radius:0}

/* Header destinations share one quiet rectangular construction. */
.header-actions{gap:10px;align-items:center}
.page-home .site-header{top:var(--dock-top,0px)}
.site-header .header-contact{height:54px;min-width:145px;padding:0 22px;border:1px solid #cbd5dc;background:#fff;color:#183b50;font:500 14px/1.5 var(--font-ui);letter-spacing:.015em}
.site-header .header-contact:is(:hover,:focus-visible),.site-header .header-contact[aria-current=page]{background:#f1f6f9;border-color:#6c8b9e}
.header-actions .recruit-nav,.page-home .header-actions .recruit-nav{height:54px;min-width:145px;padding:0 19px;gap:22px;background:#142d3e;border:1px solid #142d3e;color:#fff;align-self:center}
.header-actions .recruit-nav>span:first-child{font:500 14px/1.5 var(--font-ui);letter-spacing:.015em}
.header-actions .recruit-nav>.ui-icon{width:20px;height:21px;color:#76c7f5}
.header-actions .recruit-nav:is(:hover,:focus-visible){background:#28516a;border-color:#28516a}
.site-header .desktop-nav a,.page-home .site-header .desktop-nav a{font-weight:700;letter-spacing:.015em}
.site-header .desktop-nav small{font:500 10px/1.5 var(--font-en);letter-spacing:.05em;margin-top:5px;color:#6b7d88}

/* Buttons have a stable text baseline and a single, separate arrow. */
.button{min-height:64px;min-width:280px;padding:18px 25px;border:1px solid transparent;border-radius:0;clip-path:none;box-shadow:none;font:500 15px/1.7 var(--font-ui);letter-spacing:.02em;gap:35px}
.button>.ui-icon{width:25px;height:22px;flex:none}
.button.dark{background:#142d3e;color:#fff;border-color:#142d3e}
.button.dark:is(:hover,:focus-visible){background:#28516a;border-color:#28516a}
.button.light{background:#fff;color:#142d3e;border-color:#fff}
.button.light:is(:hover,:focus-visible){background:#e9f4fa;border-color:#e9f4fa}
:is(.field-recruit,.career-photo-copy,.requirements-grid,.entry-section) .button{font:500 16px/1.7 var(--font-ui);min-height:64px;border-radius:0;clip-path:none}
.button:is(:hover,:focus-visible)>.ui-icon--right,.text-link:is(:hover,:focus-visible)>.ui-icon--right,.trust-links>a:is(:hover,:focus-visible)>.ui-icon--right{transform:translateX(5px)}
.text-link,.service-more,.service-row-link,.job-card>.job-inquiry{font-family:var(--font-ui);font-size:14px;font-weight:500;letter-spacing:.015em}
.text-link{padding-top:17px;padding-bottom:17px}
.text-link .ui-icon,.service-more .ui-icon,.service-row-link .ui-icon{width:24px;height:22px}
.job-card>.job-inquiry{margin-top:auto;padding:20px 0 4px}
.career-entry-link{font:500 14px/1.7 var(--font-ui)}
.faq-list summary{font-family:var(--font-ui);font-size:16px}
.faq-list summary:before{font-family:var(--font-en);font-size:13px;color:#5f7786}
.faq-list details>p{font-size:14px;color:#4d606c}
.recruit-anchor>a{font-size:14px;font-weight:500}

/* Illustration controls use the same reading scale as the corporate pages. */
.infra-viewbar{font-family:var(--font-ui)}
.infra-viewbar-title{font-size:13px;letter-spacing:.025em}
.infrastructure-world .infra-viewbar>span{font:500 13px/1.7 var(--font-ui);letter-spacing:.02em;color:#526e7f}
.infra-tools button{font-family:var(--font-ui);font-size:13px}
.infra-zone>span{font:500 12px/1.5 var(--font-en);letter-spacing:0;font-variant-numeric:tabular-nums}
.infra-zone>strong{font:500 14px/1.7 var(--font-ui);letter-spacing:.015em}
.infra-operation>span,.infra-evidence>span{font:500 13px/1.7 var(--font-ui);letter-spacing:.015em;color:#526e7f}
.infra-operation li>span{font:400 13px/1.7 var(--font-ui);letter-spacing:.015em}
.infra-operation li:before{font-family:var(--font-en);font-size:12px;letter-spacing:0}
.infra-project small{font-size:13px;line-height:1.9;color:#526e7f}
.infra-tabs button,.infra-nav button{font-family:var(--font-ui)}
.infra-tabs button strong,.infra-nav button strong{font-weight:500}
.infra-tabs button span,.infra-nav button span,.infra-active-heading>span{font-family:var(--font-en);font-weight:500;letter-spacing:0}
.infra-active-heading h3{font-weight:700;letter-spacing:.025em}
.civil-callouts text{font-family:var(--font-ui);font-weight:500}
.infra-phasebar,.infra-work-copy{font-family:var(--font-ui)}

/* Footer: a full sitemap and two clear routes, without ornamental diagrams. */
.footer.corporate-footer{margin:0;padding:0 var(--pad);background:#142d3e;color:#fff;border-radius:0;border:0}
.footer-entries{display:grid;grid-template-columns:1fr 1fr;gap:0;border-bottom:1px solid #ffffff29}
.footer-entry{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:56px 0 55px;min-height:170px;color:#fff}
.footer-entry:first-child{padding-right:50px;border-right:1px solid #ffffff29}
.footer-entry:last-child{padding-left:50px}
.footer-entry p{font-size:14px;line-height:1.8;letter-spacing:.015em;color:#c3cfd7;margin:0 0 9px}
.footer-entry span{font-size:30px;line-height:1.6;font-weight:700;letter-spacing:.025em}
.footer-entry>.ui-icon{width:37px;height:30px;flex:none;color:#72c8fa;transition:transform .3s}
.footer-entry:is(:hover,:focus-visible)>.ui-icon{transform:translateX(7px)}
.footer-entry:focus-visible{outline-color:#72c8fa;outline-offset:-3px}
.footer-directory{display:grid;grid-template-columns:340px minmax(0,1fr);gap:clamp(60px,8vw,135px);padding:63px 0 65px}
.corporate-footer .footer-name{display:block;width:260px;max-width:100%;margin:0 0 25px;line-height:1}
.corporate-footer .footer-name img{display:block;width:100%;height:auto}
.footer-company address{font-style:normal;font-size:14px;line-height:1.9;color:#d6e0e6}
.footer-telephone{margin-top:22px}
.footer-telephone>a{display:inline-flex;align-items:baseline;gap:13px;min-height:40px;font:500 23px/1.5 var(--font-en);letter-spacing:.005em;color:#fff;font-variant-numeric:tabular-nums}
.footer-telephone>a>span{font-size:12px;font-weight:400;color:#b9ccd8;letter-spacing:.06em}
.footer-telephone p{font:400 12px/1.8 var(--font-en);letter-spacing:.015em;color:#b9ccd8;margin-top:2px}
.footer-telephone p>span{margin-left:12px}
.footer-sitemap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.footer-sitemap>div>p{font-size:16px;font-weight:700;line-height:1.8;margin:0 0 16px;color:#fff}
.footer-sitemap a{display:block;width:fit-content;max-width:100%;font-size:14px;font-weight:400;line-height:1.8;padding:7px 0;color:#c9d6de}
.footer-sitemap a:is(:hover,:focus-visible){color:#fff;text-decoration:underline;text-underline-offset:5px}
.corporate-footer .footer-bottom{display:grid;grid-template-columns:1fr auto 45px;align-items:center;gap:30px;border-top:1px solid #ffffff29;padding:23px 0;margin:0;color:#b9ccd8}
.corporate-footer .footer-bottom>small{font:400 11px/1.5 var(--font-en);letter-spacing:.08em}
.corporate-footer .footer-bottom>div{display:flex;align-items:center;gap:28px}
.corporate-footer .footer-bottom button{font:400 12px/1.7 var(--font-ui);color:#d1dce3;padding:6px 0}
.corporate-footer .footer-bottom>div>span{font:400 11px/1.7 var(--font-en);letter-spacing:0;color:#aec2cf}
.corporate-footer .backtop{position:static;width:44px;height:44px;min-width:44px;display:grid;place-items:center;border:1px solid #ffffff50;background:transparent;color:#fff}
.corporate-footer .backtop>.ui-icon{width:22px;height:25px}
.corporate-footer .backtop:hover{border-color:#72c8fa;background:#ffffff08}

/* Forms: generous rows, native controls and visible Japanese labels. */
.form-page-heading{width:calc(100% - var(--pad)*2);max-width:1080px;margin:0 auto;padding:34px 0 34px;background:#fff}
.form-page-heading .breadcrumb{margin-bottom:28px}
.form-page-heading>.eyebrow{font:500 13px/1.5 var(--font-en);letter-spacing:.03em;color:#557081;margin-bottom:15px}
.form-page-heading h1{font-size:46px;line-height:1.5;letter-spacing:.025em;font-weight:700}
.form-page-heading>p:not(.eyebrow){font-size:15px;line-height:1.9;color:#4d606c;margin-top:20px}
.form-mobile-phone{display:none}
.inquiry-layout{display:block;width:calc(100% - var(--pad)*2);max-width:1080px;margin:0 auto;padding:0 0 100px;background:#fff}
.inquiry-aside{display:grid;grid-template-columns:minmax(0,1fr) 320px;column-gap:65px;border-bottom:1px solid #d6dde2;padding-bottom:25px;margin-bottom:30px}
.inquiry-aside h2{grid-column:1;font-size:21px;font-weight:700;line-height:1.7;letter-spacing:.02em;margin:0 0 12px}
.inquiry-aside>p{grid-column:1;font-size:15px;line-height:1.9;color:#4d606c}
.inquiry-aside .text-link{grid-column:1;font-size:14px;width:fit-content;min-width:230px;max-width:100%;margin:8px 0 0;padding:12px 0;border-color:#b9c9d3;color:#254b63;gap:25px}
.inquiry-aside .inquiry-phone{grid-column:2;grid-row:1/span 3;align-self:center;margin:0;padding:4px 0 4px 35px;border-top:0;border-left:1px solid #d6dde2}
.inquiry-phone>span{font-size:13px;line-height:1.8;color:#4d606c;margin-bottom:7px}
.inquiry-phone>a{display:inline-block;font:500 27px/1.4 var(--font-en);letter-spacing:-.015em;color:#183b50;font-variant-numeric:tabular-nums}
.inquiry-phone>small{font-size:12px;color:#617786;line-height:1.8;margin-top:7px}
.form-top-demo{display:block;padding:0;margin:0 0 22px;background:transparent;border:0;font-size:13px;line-height:1.9;color:#526a79}
.form-progress{max-width:650px;margin:0 auto 30px;gap:25px}
.form-progress li{padding:0 0 16px;border-bottom:2px solid #e0e6ea;font-size:15px;gap:13px;font-weight:500;color:#7a8993}
.form-progress li>span{font:400 13px/1.5 var(--font-en);color:inherit}
.form-progress li[aria-current=step]{color:#183b50;font-weight:700;border-color:#2f9ed9}
.form-progress li[aria-current=step]>span{color:#183b50}
.form-guidance{font-size:13px;line-height:1.8;gap:9px;color:#526570;margin-bottom:20px}
.form-required,.form-optional{font-family:var(--font-ja);font-size:12px;font-weight:400;line-height:1.8;vertical-align:0;letter-spacing:.02em;margin:0;flex:none}
.form-required{color:#b43d41}.form-optional{color:#60727e}
.form-guidance>.form-required{border:0;padding:0;margin:0;color:#b43d41;font-weight:500}
.form-row{grid-template-columns:220px minmax(0,1fr);gap:36px;padding:28px 0;border-color:#d6dde2}
.form-row>label,.form-purpose>legend{display:flex;justify-content:space-between;align-items:baseline;gap:15px;font-size:15px;font-weight:500;line-height:1.8;padding:12px 0 0;color:#233e50}
.form-row input:not([type=radio]),.form-row textarea,.form-row select{font:400 16px/1.7 var(--font-ui);color:#233e50;border:1px solid #80939f;border-radius:0;background:#fff;min-height:55px;padding:13px 16px;box-shadow:none}
.form-row input::placeholder,.form-row textarea::placeholder{font-family:var(--font-ui);font-weight:400;color:#667681;opacity:1}
.form-row input:focus,.form-row textarea:focus,.form-row select:focus{border-color:#2a91c7;outline:2px solid #2a91c7;outline-offset:2px;background:#fff;box-shadow:none}
.form-row [aria-invalid=true]{border-color:#b43d41!important;background:#fffafa!important}
.form-row textarea{min-height:190px;resize:vertical}
.form-row select{padding-right:42px}
.form-row>div>small{font-size:13px;line-height:1.8;color:#5e7380;margin-top:9px}
.form-purpose{display:block;min-height:105px;padding-left:256px}
.form-purpose>legend{position:absolute;left:0;top:28px;width:220px;padding-top:12px;float:none}
.form-choices{display:flex;flex-wrap:wrap;gap:4px 25px;padding:0}
.form-choice,.form-choice:has(input:checked){padding:12px 0;min-height:44px;gap:11px;background:transparent;color:#233e50;border:0;border-radius:0;box-shadow:none;font:400 15px/1.8 var(--font-ui)}
.form-choice input,.form-consent input{width:19px;height:19px;accent-color:#245d7a;flex:none}
.form-field-meta{display:flex;justify-content:space-between;align-items:baseline;gap:18px;margin-top:10px}
.form-field-meta>small{font-size:12px;line-height:1.8;color:#617582}
.form-field-meta>.form-character-count{font:400 12px/1.8 var(--font-en);margin:0;text-align:right;white-space:nowrap;color:#617582;letter-spacing:0;font-variant-numeric:tabular-nums}
.form-handling{border:1px solid #d6dde2;background:#f5f7f8;margin-top:15px;padding:0 23px}
.form-handling>summary{font:500 14px/1.8 var(--font-ui);padding:19px 0;color:#233e50;gap:20px}
.form-handling>summary:after{font-family:var(--font-en);font-size:19px;color:#536f80}
.form-handling>p{font-size:14px;line-height:1.9;color:#4d606c;padding-bottom:22px}
.form-consent{font-size:15px;line-height:1.9;color:#233e50;gap:13px;margin:32px 0;align-items:center;text-align:left}
.form-submit{display:flex;min-width:340px;margin:0 auto;padding-right:24px;min-height:66px;font-size:16px}
.form-confirm h2,.form-complete h2{font-size:29px;font-weight:700;letter-spacing:.02em;line-height:1.65;margin-bottom:26px}
.form-confirm dl>div{grid-template-columns:220px minmax(0,1fr);gap:36px;padding:26px 0;border-color:#d6dde2}
.form-confirm dt{font-size:15px;font-weight:500;color:#3d5869}
.form-confirm dd{font:400 16px/1.9 var(--font-ui);color:#233e50}
.form-demo-notice{font-size:14px;line-height:1.9;color:#5d7483}
.form-confirm-actions{gap:30px;margin-top:32px}
.form-back{font:400 14px/1.8 var(--font-ui);color:#3c6178;padding:10px 0;text-decoration:underline;text-underline-offset:5px}
.form-complete{padding:42px;background:#f3f6f8;border-top:2px solid #8aafc5}
.form-complete p{font-size:15px;line-height:2;color:#4d606c}
.form-complete>.button{margin-top:30px;font-size:15px}
.form-complete>.text-link{font-size:14px}
.form-errors{border:0;border-left:3px solid #b43d41;background:#faf3f3;padding:21px 25px;margin-bottom:28px;color:#8e3035}
.form-errors h2{font-size:16px;font-weight:700;line-height:1.8;letter-spacing:0}
.form-errors ul{font-size:14px;line-height:1.9;margin-top:9px}
.form-field-error{font-size:13px;color:#a73439;margin-top:8px;line-height:1.8}
.entry-topic{font-size:14px;padding:15px 19px;background:#f2f6f8;border-color:#c9dce7;color:#34596e}

@media(max-width:1250px){
 .header-actions{gap:8px}.site-header .header-contact{min-width:130px;padding:0 17px}
 .header-actions .recruit-nav,.page-home .header-actions .recruit-nav{min-width:130px;padding:0 17px;gap:15px}
 .footer-directory{grid-template-columns:300px minmax(0,1fr);gap:55px}.footer-sitemap{gap:23px}
}
@media(max-width:1050px){
 .footer-directory{grid-template-columns:1fr;gap:45px}.footer-company{display:grid;grid-template-columns:1fr 1fr;gap:0 45px}.corporate-footer .footer-name{grid-column:1;margin-bottom:22px}.footer-company address{grid-column:1}.footer-telephone{grid-column:2;grid-row:1/span 2;align-self:center;margin:0}.footer-sitemap{gap:30px}
 .inquiry-aside{grid-template-columns:minmax(0,1fr) 285px;column-gap:35px}.inquiry-aside .inquiry-phone{padding-left:25px}.inquiry-phone>a{font-size:25px}
}
@media(max-width:700px){
 body{font-size:14px}.eyebrow{font-size:11px}.section-label{margin-bottom:22px}.section-label>span:first-child{font-size:11px;gap:12px;letter-spacing:.06em}
 .site-header,.page-home .site-header{grid-template-columns:30px minmax(0,1fr) 156px;padding:0 12px;gap:6px}
 .header-actions{gap:0;height:74px}.site-header .header-contact{height:74px;min-width:78px;width:78px;padding:0 4px;border:0;border-left:1px solid #e0e6ea;background:#fff;font-size:11px;line-height:1.6;letter-spacing:0}
 .header-actions .recruit-nav,.page-home .header-actions .recruit-nav{height:74px;min-width:78px;width:78px;border:0;padding:0 5px;gap:5px}
 .header-actions .recruit-nav>span:first-child{font-size:12px;letter-spacing:0}.header-actions .recruit-nav>.ui-icon{width:15px;height:17px}
 .numbers strong{font-size:48px;font-weight:500}.numbers strong small{font-size:13px;margin-left:4px}.numbers p{font-size:12px}.numbers>div>span{font-size:11px;letter-spacing:.01em;min-height:36px}
 .qualification-list strong{font-size:30px}.history-grid strong,.work-trend strong{font-size:44px}
 .service-inventory .service-row{grid-template-columns:29px minmax(0,1fr) auto;column-gap:13px}.service-row-no>small{font-size:13px}.service-row h3{font-size:19px}.service-row p{font-size:13px}.service-card .eyebrow{font-size:11px;letter-spacing:.025em}
 .text-link,.service-more,.service-row-link,.job-card>.job-inquiry{font-size:13px}.button{font-size:14px;min-height:59px;min-width:0;padding:17px 22px;gap:28px}.career-entry-link{font-size:13px}
 :is(.field-recruit,.career-photo-copy,.requirements-grid,.entry-section) .button{font-size:14px;min-height:60px}
 .trust-links>a{display:block;padding-right:35px}.trust-links h3{margin:0 0 8px}.trust-links p{font-size:13px}
 .recruit-anchor>a{font-size:12px}.faq-list summary{font-size:14px}.faq-list details>p{font-size:13px}
 .infra-tools button{font-size:12px}.infra-viewbar-title{font-size:12px}
 .infrastructure-world .infra-viewbar{flex-wrap:wrap;gap:10px}.infrastructure-world .infra-viewbar>span{font-size:12px}.infrastructure-world .infra-tools{flex-wrap:wrap;gap:12px}
 .infrastructure-world .infra-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.infra-zone{min-height:46px;padding-top:12px;padding-bottom:12px;gap:9px}.infra-zone>strong{font-size:12px}.infra-zone>span{font-size:12px}
 .infra-operation>span,.infra-evidence>span,.infra-operation li>span{font-size:12px}.infra-operation li:before{font-size:11px}.infra-project small{font-size:12px}
 .infrastructure-world:not([data-focus=overview]) .infra-window{height:clamp(245px,calc(100svh - 395px),290px)}
 .footer-entries{grid-template-columns:1fr}.footer-entry{min-height:133px;padding:30px 0!important;border-right:0!important;gap:25px}.footer-entry:first-child{border-bottom:1px solid #ffffff29}.footer-entry p{font-size:12px;margin-bottom:6px}.footer-entry span{font-size:25px}.footer-entry>.ui-icon{width:30px;height:25px}
 .footer-directory{padding:39px 0 40px;gap:36px}.footer-company{display:block}.corporate-footer .footer-name{width:230px;margin-bottom:22px}.footer-company address{font-size:13px;line-height:1.9}.footer-telephone{margin-top:17px}.footer-telephone>a{font-size:23px}.footer-telephone p{font-size:12px}
 .footer-sitemap{grid-template-columns:1fr 1fr;gap:28px 19px}.footer-sitemap>div>p{font-size:13px;margin-bottom:10px}.footer-sitemap a{font-size:13px;padding:6px 0;line-height:1.9}.footer-sitemap>div:last-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:0 19px}.footer-sitemap>div:last-child>p{grid-column:1/-1}
 .corporate-footer .footer-bottom{grid-template-columns:1fr 44px;gap:15px 10px;padding:21px 0}.corporate-footer .footer-bottom>small{font-size:10px;grid-column:1}.corporate-footer .footer-bottom>div{grid-column:1;grid-row:2;flex-wrap:wrap;gap:5px 20px}.corporate-footer .footer-bottom button{font-size:12px}.corporate-footer .footer-bottom>div>span{font-size:10px}.corporate-footer .backtop{grid-column:2;grid-row:1/span 2;align-self:start}
 .form-page-heading{padding:27px 0 30px}.form-page-heading .breadcrumb{font-size:11px;margin-bottom:27px}.form-page-heading>.eyebrow{font-size:12px;margin-bottom:10px}.form-page-heading h1{font-size:33px;line-height:1.6;letter-spacing:.015em}.form-page-heading>p:not(.eyebrow){font-size:14px;margin-top:14px}
 .form-mobile-phone{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid #d6dde2;padding:13px 0;margin-top:16px;min-height:46px}.form-mobile-phone>span:first-child{font-size:12px;color:#536d7d}.form-mobile-phone>span:last-child{font:500 18px/1.5 var(--font-en);letter-spacing:-.01em;color:#183b50;font-variant-numeric:tabular-nums}
 .inquiry-layout{display:block;padding-bottom:64px}.inquiry-main{width:100%}.inquiry-aside{display:none}
 .form-top-demo{font-size:12px;padding:0;margin-bottom:22px}.form-progress{gap:17px;margin-bottom:29px}.form-progress li{font-size:13px;gap:10px;padding-bottom:13px}.form-progress li>span{font-size:12px}
 .form-guidance{font-size:12px;margin-bottom:15px}.form-row{display:block;padding:22px 0}.form-row>label,.form-purpose>legend{font-size:14px;line-height:1.8;display:flex;justify-content:flex-start;gap:16px;padding:0;margin-bottom:12px}.form-required,.form-optional{font-size:11px;line-height:1.8}
 .form-purpose{padding-left:0;min-height:0}.form-purpose>legend{position:static;width:auto;float:none}.form-choices{display:grid;clear:both;grid-template-columns:1fr 1fr;gap:0 15px;padding:0}.form-choice,.form-choice:has(input:checked){font-size:14px;padding:10px 0;min-height:44px}
 .form-row input:not([type=radio]),.form-row textarea,.form-row select{font-size:16px;min-height:52px;padding:12px 13px}.form-row textarea{min-height:180px}.form-field-meta{gap:10px;flex-wrap:wrap;margin-top:9px}.form-field-meta>small{font-size:11px}.form-field-meta>.form-character-count{font-size:11px;margin-left:auto}
 .form-handling{padding:0 16px}.form-handling>summary{font-size:13px;padding:17px 0}.form-handling>p{font-size:13px;padding-bottom:18px}.form-consent{font-size:13px;justify-content:flex-start;align-items:flex-start;gap:11px;margin:27px 0}.form-consent input{margin-top:3px}
 .form-submit{min-width:0;width:100%;min-height:61px;font-size:15px}.form-errors{padding:16px 18px}.form-errors h2{font-size:14px}.form-errors ul{font-size:13px}.form-field-error{font-size:12px}
 .form-confirm h2,.form-complete h2{font-size:23px;line-height:1.7}.form-confirm dl>div{display:block;padding:20px 0}.form-confirm dt{font-size:13px;margin-bottom:9px}.form-confirm dd{font-size:15px}.form-confirm-actions{gap:21px}.form-back{font-size:13px}.form-demo-notice{font-size:13px}.form-complete{padding:28px 20px}.form-complete p{font-size:14px}.form-complete>.button{font-size:14px}.form-complete>.text-link{font-size:13px}.entry-topic{font-size:13px;padding:13px 15px}
}
@media(prefers-reduced-motion:reduce){.footer-entry>.ui-icon{transition:none}}
