@font-face{font-family:"Noto Sans JP";font-style:normal;font-weight:100 900;font-display:swap;src:url("assets/fonts/NotoSansJP-Variable.ttf") format("truetype")}

:root{--navy:#17408c;--navy-deep:#000971;--teal:#17408c;--ink:#333;--muted:#666;--line:#dedede;--pale:#f7f7f7;--max:1200px;--sans:"Noto Sans JP",sans-serif}
body{font-family:var(--sans);font-weight:400;line-height:1.8;color:#333;background:#fff}
button,input,select,textarea{font-family:var(--sans)}
h1,h2,h3{font-family:var(--sans);color:#333;font-weight:700;letter-spacing:0}
.button,.text-link,.tag,.notice-title,.entry-grid strong,.doc-row strong,.doc-group h3,.segmented button,.side nav>a.active,.faq-list summary,.compact-details summary{font-weight:700}
.section-index,.eyebrow,.panel-line a,.entry-no,.scope-number,.step,.time-grid strong,.price-table td,.contact-address,.contact-phone,.faq-list summary:before{font-family:var(--sans)}
.reviewbar{background:#f7f7f7;color:#666;border-bottom:1px solid #e9e9e9}
.reviewinner{padding-top:7px;padding-bottom:7px}
.review-toggle{color:#17408c;border-bottom-color:#17408c}
.site-header{background:#fdfdfd;border-bottom:0}
.corporate-header{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:112px;padding:16px 48px}
.brand{display:block;line-height:1;flex-shrink:0}
.corporate-logo{display:block;object-fit:contain;width:200px;height:80px}
.corporate-contact{display:flex;align-items:center;gap:20px;color:#17408c}
.corporate-contact>div{line-height:1.5}
.corporate-invitation{display:block;font-size:12px;letter-spacing:.38em}
.corporate-contact strong{display:block;font-size:25px;font-weight:700;letter-spacing:2px}
.corporate-mail{font-size:12px;display:block}
.corporate-contact-button{font-size:16px;border:1px solid #17408c;display:flex;align-items:center;justify-content:center;min-height:72px;padding:0 28px;white-space:nowrap}
.corporate-contact-button:hover{background:#17408c;color:#fff}
header .corporate-nav{display:flex;align-items:stretch;justify-content:center;gap:0;max-width:1400px;margin:auto;padding:0 24px}
header nav.corporate-nav>a{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14px 16px 12px;color:#333;line-height:1.3;position:relative}
.corporate-nav strong{font-size:16px;font-weight:700;white-space:nowrap}
.corporate-nav a>span{font-size:12px;font-weight:400;line-height:1.6;color:#666;white-space:nowrap}
header .corporate-nav>a:hover,header .corporate-nav>a.current{background:#f7f7f7;color:#333}
header .corporate-nav>a.current:after{content:"";position:absolute;bottom:0;left:16px;right:16px;height:2px;background:#17408c}
#mobile-menu-toggle{display:none;background:transparent;font-size:12px;padding:8px;color:#333}
.breadcrumb-band{background:#f7f7f7;box-shadow:inset 0 1px 5px #00000008}
.breadcrumbs{font-size:12px;padding-top:8px;padding-bottom:8px;color:#333;line-height:1.6}
.breadcrumbs span{color:#555;margin:0 10px}
.hero{background:#fff;border-bottom:0}
.hero-grid{grid-template-columns:minmax(0,1fr) 285px;gap:48px;padding:68px 0 55px}
.eyebrow{color:#17408c;font-size:13px;letter-spacing:.05em;font-weight:700;margin-bottom:10px}
.hero-copy h1{font-family:var(--sans);font-size:32px;letter-spacing:0;font-weight:700;line-height:1.5;padding:0 0 18px;border-bottom:1px solid #dedede;position:relative;color:#333}
.hero-copy h1:after{content:"";position:absolute;left:0;bottom:-1px;width:64px;height:1px;background:#17408c}
.hero-lead{color:#333;font-size:18px;margin-top:25px;line-height:1.9}
.hero-support{color:#555;font-size:16px;line-height:1.8}
.hero-panel{background:#f7f7f7;color:#333;border:1px solid #e4e4e4;border-top:3px solid #17408c;padding:23px 25px}
.panel-kicker{color:#17408c;font-size:14px}
.hero-panel h2{font-family:var(--sans);color:#333;font-weight:700;font-size:22px;line-height:1.65}
.panel-line{border-top-color:#ddd;font-size:14px}
.panel-line a{color:#17408c;font-size:13px}
.hero-panel>p{color:#666;font-size:13px}
.button.primary{border:2px solid #17408c;color:#17408c;background:#fff;border-radius:0;box-shadow:none;font-size:16px}
.button.primary:hover{background:#17408c;color:#fff}
.button span{font-size:20px}
.text-link{color:#17408c;font-size:14px}
.entry-grid{border-color:#ddd;background:#fff}
.entry-grid>a:hover{background:#f7f7f7}
.entry-no,.entry-arrow{color:#17408c}
.entry-grid strong{color:#333}
.entry-grid div>span{color:#666;font-size:13px}
.notice{font-size:14px}
.notice-title{color:#333}
.status{background:#f5f5f5;border-color:#d7d7d7;color:#666}
.page-grid{padding-top:65px;grid-template-columns:200px minmax(0,1fr);gap:50px}
.side-title{color:#666;font-size:13px}
.side nav>a{color:#555;font-size:14px;line-height:1.75}
.side nav>a.active{background:#f3f6fb;border-color:#17408c;color:#17408c}
.side-cta{font-size:14px;border:1px solid #17408c;background:#fff;color:#17408c}
.side-cta:hover{background:#17408c;color:#fff}
.section{padding-bottom:58px;margin-bottom:60px;border-color:#ddd}
.section-heading{display:flex;flex-direction:column;align-items:center;text-align:center;gap:9px;margin-bottom:30px}
.section-heading h2{order:-1;margin:0;display:inline-block;background:#17408c;color:#fff;font-size:16px;font-weight:700;line-height:1.6;padding:2px 8px}
.section-index{font-size:28px;letter-spacing:0;font-weight:700;line-height:1.4;color:#333}
.section-heading:after{content:"";height:25px;width:1px;background:#17408c;margin-top:0}
.intro,.plain-block p,.consultation>p{font-size:16px;line-height:1.9;color:#333}
.scope-grid article{padding:22px;background:#fff}
.scope-grid h3{font-size:16px;color:#333}
.scope-grid p{color:#555;font-size:14px}
.scope-number{color:#17408c}
.plain-block h3{font-size:17px;padding:0 0 10px;border-bottom:2px solid #ddd;position:relative;color:#333}
.plain-block h3:after{content:"";position:absolute;left:0;bottom:-2px;height:2px;width:29.3%;background:#17408c}
.compact-details{background:#f7f7f7;border-color:#ddd}
.compact-details>div,.faq-list details>div{font-size:15px;color:#555}
.compact-details summary:after,.faq-list summary:after{color:#17408c}
.editor-note{color:#666;border-left-color:#aaa;font-size:12px}
.callout{background:#f3f6fb;border-left-color:#17408c}
.callout strong{color:#17408c}
.callout p{color:#555;font-size:15px}
.step,.flow li:last-child .step{background:#17408c;font-size:14px}
.flow h3{font-size:14px;color:#333}
.flow p{font-size:13px;color:#666}
.flow li:not(:last-child):after{background:#d1d6df}
.sub-label{color:#666;font-size:12px}
.tag{color:#17408c;border-color:#afbdd8;background:#f3f6fb;font-size:12px}
.tag.navy{background:#17408c;border-color:#17408c}
.doc-row div>span{color:#666;font-size:13px}
.file-chip{color:#17408c;background:#f0f3f9;font-size:12px}
.doc-small-grid a{background:#f7f7f7;border-color:#ddd;color:#333}
.doc-small-grid a:hover{border-color:#17408c}
.doc-small-grid span{color:#17408c;font-size:12px}
.time-grid article{background:#f7f7f7;border-color:#ddd}
.time-grid article>span{color:#333;font-weight:700}
.time-grid article>p{color:#17408c}
.time-grid strong{font-family:var(--sans);font-size:46px;font-weight:700}
.time-grid small,.time-grid p span{color:#666;font-size:13px}
.segmented{background:#eee}
.segmented button{color:#555}
.segmented button.selected{background:#17408c;color:#fff}
.price-table thead th{background:#f7f7f7;color:#333;font-size:14px}
.price-table tbody th{font-size:16px;color:#333}
.price-table td{font-family:var(--sans);font-size:23px;color:#17408c;font-weight:700}
.price-table td.free{color:#17408c}
.consultation{background:#f7f7f7;border-left:0;padding:36px 30px}
.overview dt{color:#666}
.inline-note,.pending{color:#666}
.resource-foot{color:#666;font-size:13px}
.resource-foot a{color:#17408c}
.faq-list summary:before{color:#17408c;font-family:var(--sans);font-weight:700}
.faq-list details[open]{background:#f7f7f7}
.contact{background:#000971;color:#fff;padding:38px 32px;margin-bottom:65px}
.contact .section-index{color:#fff}
.contact .section-heading:after{background:#fff}
.contact>p{color:#fff;font-size:16px}
.contact-label{color:#fff;font-size:13px}
.contact-address,.contact-phone{font-family:var(--sans);font-size:23px;font-weight:700;color:#fff}
.contact .editor-note{color:#ddd;border-left-color:#999bd0}
.contact-bottom{border-top-color:#ffffff55}
.contact-bottom button{color:#fff;font-size:13px}
.corporate-footer{background:#f7f7f7;text-align:center;color:#333;padding:50px 0 35px;font-size:14px}
.footer-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 0;margin-bottom:32px;font-size:13px;line-height:1.4}
.footer-nav a{padding:0 10px;border-right:1px solid #888}
.footer-nav a:last-child{border:0}
.footer-nav a:hover,.footer-legal a:hover{color:#17408c;text-decoration:underline}
.footer-company{font-size:18px;font-weight:700;margin-bottom:10px}
.footer-copyright{font-size:12px;margin-top:30px;margin-bottom:8px}
.footer-legal{font-size:13px;margin-top:20px}
.footer-draft{font-size:12px;color:#666}
.footer-top{display:inline-block;border-bottom:1px solid #17408c;color:#17408c;font-size:13px}
.dialog-body h2{font-family:var(--sans);font-size:24px;color:#333}
.dialog-top{background:#f7f7f7}
.dialog-body .dialog-note{background:#f7f7f7;color:#666}
.dialog-body p{font-size:16px}
@media(min-width:1440px){:root{--max:1200px}.hero-grid{gap:55px}.page-grid{gap:55px;grid-template-columns:210px minmax(0,1fr)}}
@media(max-width:1250px){header .corporate-nav>a{padding-left:11px;padding-right:11px}.corporate-nav strong{font-size:14px}.corporate-nav a>span{font-size:12px}.corporate-header{padding-left:32px;padding-right:32px}}
@media(max-width:1100px){header .corporate-nav>a{padding:13px 8px}.corporate-nav strong{font-size:12px}.corporate-contact-button{display:none}.page-grid{grid-template-columns:180px minmax(0,1fr);gap:32px}.hero-grid{gap:30px}.entry-grid div>span{font-size:12px}.contact-grid{grid-template-columns:1fr}.contact-address,.contact-phone{font-size:23px}}
@media(max-width:959px){.corporate-header{padding:12px 25px;min-height:94px}.corporate-logo{width:175px;height:70px}.corporate-contact{display:none}#mobile-menu-toggle{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:50px}.menu-bars{display:block;width:24px;height:16px;border-top:2px solid #333;border-bottom:2px solid #333;position:relative}.menu-bars:after{content:"";position:absolute;left:0;right:0;top:5px;height:2px;background:#333}header .corporate-nav{display:none;padding:6px 25px 20px;grid-template-columns:1fr 1fr;gap:0}header .corporate-nav.is-open{display:grid}header .corporate-nav>a{align-items:flex-start;text-align:left;padding:13px 16px;border-bottom:1px solid #ddd}.corporate-nav strong{font-size:14px}.corporate-nav a>span{font-size:12px}header .corporate-nav>a.current:after{left:0;top:8px;bottom:8px;right:auto;height:auto;width:2px}.hero-grid{padding-top:48px;grid-template-columns:minmax(0,1fr) 250px;gap:25px}.hero-copy h1{font-size:29px}.hero-panel{padding:22px}.hero-panel h2{font-size:20px}.hero-lead{font-size:17px}.hero-actions{gap:20px}.hero-actions .button{font-size:15px}.section-index{font-size:26px}}
@media(max-width:800px){.page-grid{display:block;padding-top:35px}.side nav>a,.side nav>a.active{font-size:14px}.hero-grid{display:block;padding:40px 0}.hero-panel{display:none}.hero-copy h1{font-size:30px}.hero-support{max-width:650px}.section{margin-bottom:45px;padding-bottom:45px}.section-heading h2{font-size:16px}.contact,.consultation{padding:30px}.contact-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.corporate-header{padding:10px 20px;min-height:90px}.corporate-logo{width:175px;height:70px}.breadcrumbs{font-size:12px}.hero-grid{padding-top:35px;padding-bottom:35px}.hero-copy h1{font-size:25px;padding-bottom:15px}.hero-lead{font-size:16px}.hero-support{font-size:16px}.eyebrow{font-size:12px}.hero-actions .button{font-size:15px}.entry-grid strong{font-size:13px}.entry-grid div>span{display:none}.entry-no{font-size:12px}.notice{font-size:13px}.section-heading h2{font-size:15px}.section-index{font-size:25px}.intro,.plain-block p,.consultation>p{font-size:16px}.flow h3{font-size:16px}.flow p{font-size:14px}.time-grid strong{font-size:40px}.time-grid small,.time-grid p span{font-size:12px}.price-table tbody th{font-size:14px}.price-table td{font-size:21px}.doc-row div>span{font-size:12px}.contact,.consultation{padding:27px 20px}.contact-grid{grid-template-columns:1fr}.contact-address,.contact-phone{font-size:23px}.footer-company{font-size:16px}.corporate-footer{font-size:13px;padding-top:35px}.footer-nav{font-size:12px;gap:10px 0}.footer-nav a{padding:0 8px}.dialog-body h2{font-size:22px}}
@media print{.corporate-contact,.corporate-nav,#mobile-menu-toggle{display:none!important}.corporate-header{padding:0 0 15px}.corporate-logo{width:175px;height:70px}.contact{background:white;color:#333}.contact .section-index,.contact>p,.contact-address,.contact-phone{color:#333}.section-heading h2{color:#17408c;background:white}.corporate-footer{background:white}.section{break-inside:auto}}
