/* デザインガイドv1.0。値の正本は案件outputs内design-tokens.json。 */
@font-face{font-family:KurumiNoto;src:url('/assets/fonts/NotoSansJP-Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:KurumiNoto;src:url('/assets/fonts/NotoSansJP-Bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
body[data-unified]{font-family:KurumiNoto,"Noto Sans JP",sans-serif;font-size:var(--type-body);line-height:1.9;font-synthesis:none;color:var(--ink);--shade:var(--surface);--control:#6E818A}
body[data-unified] .container{width:min(var(--wide),calc(100% - var(--gutter)*2));max-width:none;margin-inline:auto;padding-inline:0}
body[data-unified] main.u-main{padding:0;max-width:none;width:100%;margin:0}
body[data-unified] strong,body[data-unified] b{font-weight:700}
body[data-unified] a{color:var(--primary)}
body[data-unified] .button:where(:not(.u-action)),body[data-unified] button:where(:not(.u-action)){min-height:56px;gap:16px;padding:16px 28px;font-size:1rem;line-height:1.5;font-weight:700;border:1px solid var(--primary);border-radius:6px;background:white;color:var(--primary);text-align:center;text-decoration:none;box-shadow:none}
body[data-unified] .button:where(:not(.u-action)).primary,body[data-unified] button:where(:not(.u-action)).primary{background:var(--primary);color:white;border-color:var(--primary)}
body[data-unified] .button:where(:not(.u-action)):hover,body[data-unified] button:where(:not(.u-action)):not(:disabled):hover{background:var(--surface);color:var(--primary)}
body[data-unified] .button:where(:not(.u-action)).primary:hover,body[data-unified] button:where(:not(.u-action)).primary:hover{background:var(--primary);color:white;filter:brightness(.9)}
body[data-unified] button:where(:not(.u-action)):disabled{background:#E9EEF0;border-color:var(--line);color:var(--muted);cursor:not-allowed}
body[data-unified] :focus-visible{outline:3px solid var(--ink);outline-offset:4px}
.u-icon{width:28px;height:28px;flex:none;color:var(--primary);display:block}
body[data-unified] .wfbar{background:#FAFBFB;color:var(--muted);font-size:1rem;line-height:1.7;padding:4px 0;border-bottom:1px solid var(--line)}
body[data-unified] .u-utility{margin:0;padding:0;background:#EEF2F3;border-bottom:1px solid var(--line);color:var(--muted);font-size:1rem;line-height:1.6}
body[data-unified] .u-utility .container{min-height:36px;display:flex;justify-content:flex-end;align-items:center;flex-wrap:wrap;gap:8px 24px;padding-block:8px}
body[data-unified] .u-utility a{color:var(--muted);padding:0;text-decoration:none}
body[data-unified] .u-utility a[aria-current]{color:var(--primary);font-weight:700}
body[data-unified] .u-site-header{position:relative;background:white;border-bottom:1px solid var(--line);z-index:10}
body[data-unified] .u-site-header .header-inner{min-height:96px;gap:32px;padding-block:16px;position:relative}
body[data-unified] .u-brand{display:flex;align-items:center;gap:16px;text-decoration:none;color:var(--ink);font-size:1.125rem;line-height:1.6;font-weight:700;flex:none}
.u-brand img{width:120px;height:auto;max-height:64px;object-fit:contain}
body[data-unified] .u-site-header .site-nav{gap:24px;font-size:1rem;flex-wrap:nowrap}
body[data-unified] .u-site-header .site-nav>a{line-height:1.7;padding-block:12px}
body[data-unified] .u-site-header .site-nav>.button:where(:not(.u-action)){padding:14px 24px;min-height:56px;white-space:nowrap}
body[data-unified] .phone{display:flex;align-items:center;gap:8px;font-size:1.125rem;font-variant-numeric:tabular-nums;white-space:nowrap}
.phone .u-icon{width:20px;height:20px}
body[data-unified] .u-kv-band{padding-block:64px;background:var(--surface);position:relative}
body[data-unified] .breadcrumb{font-size:1rem;line-height:1.75;margin-bottom:40px;gap:8px;color:var(--muted)}
body[data-unified] .u-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:72px}
.u-hero-copy{min-width:0}
body[data-unified] h1{font-size:var(--type-h1);line-height:1.45;font-weight:700;margin:0;letter-spacing:.025em;max-width:22ch}
body[data-unified] .eyebrow{font-size:1rem;line-height:1.75;color:var(--primary);font-weight:700;margin:0 0 24px}
body[data-unified] .lead{margin-top:32px;font-size:var(--type-lead);line-height:1.9;max-width:38em}
body[data-unified] .lead p{max-width:38em;margin-bottom:24px}
body[data-unified] .lead p:last-child{margin-bottom:0}
.u-title-rule{display:block;width:64px;height:2px;background:var(--primary);margin-top:var(--space-title-rule)}
body[data-unified] .u-child-hero--plain .u-hero-grid{grid-template-columns:minmax(0,1fr)}
body[data-unified] .u-child-hero--plain h1{max-width:none}
.u-photo{aspect-ratio:4/3;background:#E9EFF0;border:1px dashed #8FA4AD;border-radius:4px;overflow:hidden;min-width:0;margin:0}
.u-photo-inner{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px;text-align:center;color:#536570;font-size:1rem;line-height:1.8}
.u-photo .u-icon{width:40px;height:40px;color:#6F8993}
.u-photo small{font-size:1rem}
body[data-unified] .u-top-hero .u-hero-grid{min-height:560px}
body[data-unified][data-scope=corporate] .u-top-hero .u-photo{aspect-ratio:4/5;max-height:560px}
body[data-unified] .u-top-sea .u-hero-grid{grid-template-columns:1fr;gap:48px;min-height:0}
body[data-unified] .u-top-sea .u-hero-copy{display:grid;grid-template-columns:1fr 1fr;column-gap:72px;align-items:center}
.u-top-sea .eyebrow,.u-top-sea .u-title-rule{grid-column:1}.u-top-sea h1{grid-column:1}.u-top-sea .lead{grid-column:2;grid-row:1/4}
body[data-unified] .u-top-sea .u-photo{aspect-ratio:16/5}
body[data-unified] .u-summary-wrap{padding-block:40px 0}
body[data-unified] .u-summary .facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.u-summary .facts>div{border:1px solid var(--line);padding:32px;border-radius:8px;min-width:0}
body[data-unified] .u-summary dt,body[data-unified] .u-summary dd{display:block;border:0;padding:0;margin:0}
body[data-unified] .u-summary dt{font-size:1rem;color:var(--muted);margin-bottom:24px}
body[data-unified] .u-summary dd{font-size:1.375rem;font-weight:700;line-height:1.65}
body[data-unified] .u-summary small{display:block;font-size:1rem;font-weight:400;margin-top:8px;color:var(--muted)}
body[data-unified] .summary-fee,body[data-unified] .u-price,body[data-unified] .price,body[data-unified] .service-fee{font-size:var(--type-body);font-weight:700;color:var(--primary);line-height:1.3;font-variant-numeric:tabular-nums}
body[data-unified] .detail-fee-note{font-size:1rem;color:var(--muted);margin-top:24px}
body[data-unified] .section-links{width:min(var(--wide),calc(100% - var(--gutter)*2));margin:40px auto 0;padding:16px 0;border-block:1px solid var(--line);gap:8px 24px;background:white;position:static}
body[data-unified] .section-links a{font-size:1rem;line-height:1.7;min-height:48px;padding:8px 0}
body[data-unified] .content-section{margin:0;padding-block:var(--space-section-start) var(--space-section-end);border:0;max-width:none;background:white;position:relative}
body[data-unified] .content-section:nth-of-type(even){background:var(--surface)}
body[data-unified] .content-section .section-inner{min-width:0}
body[data-unified] .u-section-heading{margin:0 0 var(--space-heading-content);padding:0;border:0;background:none}
body[data-unified] .u-section-heading h2{font-size:var(--type-h2);line-height:1.6;font-weight:700;margin:0;letter-spacing:.025em;max-width:none}
body[data-unified] h3{font-size:var(--type-h3);line-height:1.6;margin:0 0 32px;font-weight:700}
body[data-unified] h4{font-size:var(--type-h4);line-height:1.65;margin:0 0 24px;font-weight:700}
body[data-unified] p{margin:0 0 24px}
body[data-unified] p:last-child{margin-bottom:0}
body[data-unified] .actions{gap:16px;margin-top:32px;align-items:center}
body[data-unified] .grid,body[data-unified] .situation-grid,body[data-unified] .related-plan-grid,body[data-unified] .service-next-grid{gap:32px}
body[data-unified] .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body[data-unified] .grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
body[data-unified] .split,body[data-unified] .visual-split{gap:72px;align-items:center}
body[data-unified] .card,body[data-unified] .box,body[data-unified] .situation-card,body[data-unified] .related-plan,body[data-unified] .service-next{padding:32px;border:1px solid var(--line);border-radius:8px;background:white;box-shadow:none;min-width:0}
body[data-unified] .card h3,body[data-unified] .related-plan h3{font-size:var(--type-h3);line-height:1.65;margin-bottom:24px}
body[data-unified] .card .actions{padding-top:32px;margin-top:auto}
body[data-unified] .u-click-card{color:var(--ink);text-decoration:none;cursor:pointer}
.u-card-link{margin-top:32px;color:var(--primary);font-weight:700;display:block}
.u-click-card:hover{border-color:var(--primary);box-shadow:0 5px 18px #17344B0A}
body[data-unified] .facts{grid-template-columns:minmax(140px,24%) minmax(0,1fr);font-size:1rem}
body[data-unified] .facts dt,body[data-unified] .facts dd{padding-block:24px;border-color:var(--line);line-height:1.8}
body[data-unified] .facts dd{margin:0}
body[data-unified] .note,body[data-unified] .draft-notice,body[data-unified] .payment-notice{margin-block:32px;padding:24px 32px;font-size:1rem;line-height:1.9;background:var(--surface);border-color:var(--primary);border-radius:6px}
body[data-unified] .draft-notice strong{display:block;margin-bottom:12px}
body[data-unified] .table-scroll,body[data-unified] .service-table-scroll{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:6px}
body[data-unified] table{font-size:var(--type-table);line-height:1.8;min-width:680px;background:white}
body[data-unified] th,body[data-unified] td{padding:var(--space-table-y) var(--space-table-x);border-color:var(--line);vertical-align:top}
body[data-unified] th{background:var(--surface)}
body[data-unified] caption{padding:24px;text-align:left}
body[data-unified] .table-hint{font-size:1rem;color:var(--muted);margin-bottom:16px}
body[data-unified] #compare .u-compare{table-layout:fixed;min-width:760px}
body[data-unified] #compare .u-compare th:first-child{width:17%}
body[data-unified] #compare .u-compare td .price{font-size:1.75rem;margin:0}
.u-comparison-details{margin-top:64px}.u-comparison-details>h3{margin-bottom:32px}
body[data-unified] .u-comparison-details details{padding:0;border:0;border-top:1px solid var(--line);margin:0;border-radius:0;background:white}
.u-comparison-details details:last-child{border-bottom:1px solid var(--line)}
.u-comparison-details summary{font-size:var(--type-body);font-weight:700;padding:24px 48px 24px 24px;cursor:pointer;position:relative;list-style:none}
.u-comparison-details summary::after{content:'＋';position:absolute;right:24px}.u-comparison-details [open]>summary::after{content:'−'}
.u-comparison-details summary::-webkit-details-marker{display:none}
.u-comparison-details dl{display:grid;grid-template-columns:180px 1fr;gap:0;margin:0;padding:8px 32px 32px;font-size:1rem}
.u-comparison-details dt,.u-comparison-details dd{padding:24px 16px;border-bottom:1px solid var(--line);margin:0}.u-comparison-details dt{font-weight:700}
.u-comparison-details details>.button{margin:0 32px 32px}
.u-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.u-option-card{border:1px solid var(--line);border-radius:8px;background:white;overflow:hidden;min-width:0}
.u-option-card .u-photo{aspect-ratio:16/10;border:0;border-bottom:1px dashed #8FA4AD;border-radius:0}
.u-option-card>div{padding:32px}.u-option-card h3{font-size:var(--type-h3);line-height:1.65;margin-bottom:32px}.u-option-card p{font-size:var(--type-body);line-height:1.9}.u-option-card .u-price{margin-top:32px;font-size:1.875rem}
.u-option-extras{display:grid;grid-template-columns:180px 1fr;border-top:1px solid var(--line);margin-top:40px;font-size:1rem}
.u-option-extras dt,.u-option-extras dd{padding:24px;border-bottom:1px solid var(--line);margin:0}.u-option-extras dd strong{display:block;color:var(--primary);margin-top:12px}
body[data-unified] .steps{max-width:none;margin:0;padding:0;display:grid;gap:40px}
body[data-unified] .steps li{margin:0;padding:0 0 0 76px;min-height:56px;line-height:1.9}
body[data-unified] .steps li::before{background:var(--surface);border-color:var(--primary);color:var(--primary);font-size:1.125rem;width:48px;height:48px}
body[data-unified] .steps strong{font-size:1.375rem;margin-bottom:24px;line-height:1.65}
body[data-unified] .faq details{margin:0;padding:0;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}
body[data-unified] .faq details:first-child{border-top:1px solid var(--line)}
body[data-unified] .faq summary{padding:24px 48px 24px 0;font-size:var(--type-body);line-height:1.8;min-height:56px;font-weight:700}
body[data-unified] .faq details>p{padding:8px 0 32px;max-width:46em;margin:0;font-size:var(--type-body)}
body[data-unified] .wf-media,body[data-unified] .picture{margin:0;min-width:0;background:#E9EFF0;box-shadow:none}
body[data-unified] .wf-image{border-radius:4px;background:#E9EFF0;min-height:0}
body[data-unified] .wf-placeholder{padding:32px;gap:16px;min-height:240px;color:#536570;border-color:#8FA4AD}
body[data-unified] figcaption{font-size:1rem;line-height:1.8;color:var(--muted);padding-top:16px}
body[data-unified] .u-business-list{display:grid;gap:80px}
body[data-unified] .u-business-feature{border:0;background:transparent;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 72px;align-items:center}
.u-business-feature>.wf-media{grid-column:2;grid-row:1/4}.u-business-feature:nth-child(even)>.wf-media{grid-column:1}.u-business-feature:nth-child(even)>:not(.wf-media){grid-column:2}
body[data-unified] .u-business-feature h3{font-size:var(--type-h3);margin-bottom:32px}.u-business-feature .actions{padding-top:0;margin-top:32px}
body[data-unified] .u-consult{background:var(--surface)!important;padding-block:96px}
.u-consult .section-inner>p{max-width:46em;margin-bottom:40px}
.u-channel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.u-channel{padding:32px;border:1px solid var(--line);border-radius:8px;background:white;min-width:0;display:flex;flex-direction:column;align-items:flex-start}
.u-channel>.u-icon{width:32px;height:32px;margin-bottom:24px}
body[data-unified] .u-channel h3{font-size:var(--type-h3);line-height:1.65;margin-bottom:24px}
.u-channel p{font-size:var(--type-body);line-height:1.8}
.u-channel button,.u-channel>.button{margin-top:auto;max-width:100%;width:100%}
.u-channel button:where(:not(.u-action)),.u-channel>.button:where(:not(.u-action)){padding-inline:16px}
body[data-unified] .u-phone{font-size:1.5rem;font-weight:700;line-height:1.5;white-space:nowrap;text-decoration:none;letter-spacing:0}
.u-phone-pair{display:flex;flex-direction:column;gap:8px;font-size:1rem}.u-phone-pair a{font-size:1.375rem;font-weight:700;white-space:nowrap;text-decoration:none}.u-phone-pair span:not(:first-child){margin-top:16px}
body[data-unified] .u-note{font-size:1rem;line-height:1.75;color:var(--muted);margin-top:12px}
body[data-unified] form[data-prototype-form]{display:grid;gap:32px;max-width:760px;margin-inline:auto;padding:32px;border:1px solid var(--line);border-radius:8px;background:white}
body[data-unified] .inline-label{display:grid;gap:12px;margin:0}.inline-label>span{margin:0;font-weight:700}
body[data-unified] input:not([type=radio]):not([type=checkbox]),body[data-unified] select,body[data-unified] textarea{min-height:56px;padding:14px 16px;border:1px solid #6E818A;border-radius:6px;background:white;font:inherit;line-height:1.7;color:var(--ink)}
body[data-unified] textarea{min-height:160px;resize:vertical}
body[data-unified] input[type=radio],body[data-unified] input[type=checkbox]{width:22px;height:22px;accent-color:var(--primary);flex:none}
body[data-unified] .check{display:flex;align-items:flex-start;gap:12px;margin:0;font-size:1rem}
body[data-unified] .check>input{margin-top:4px}
.u-form-progress{max-width:760px;display:flex;list-style:none;padding:0;margin:0 auto 40px;gap:24px;font-size:1rem;color:var(--muted)}
.u-form-progress li{flex:1;margin:0;padding-bottom:16px;border-bottom:2px solid var(--line)}.u-form-progress [aria-current]{border-color:var(--primary);color:var(--primary);font-weight:700}
body[data-unified] [data-form-confirm],body[data-unified] [data-completion]{max-width:760px;margin-inline:auto;padding:32px}
body[data-unified] #form .note{max-width:760px;margin-inline:auto;margin-bottom:40px}
body[data-unified] .u-site-footer{background:white;margin:0;padding:80px 0 32px;border-top:1px solid var(--line)}
body[data-unified] .u-site-footer .footer-main{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:48px;padding:0;border:0}
body[data-unified] .footer-brand>p{font-size:1rem;color:var(--muted);margin-top:24px}
body[data-unified] .u-footer-phone{display:flex;gap:8px;align-items:center;font-size:1.25rem;font-weight:700;margin-top:24px;text-decoration:none}
body[data-unified] .footer-group h2{font-size:1rem;line-height:1.75;margin:0 0 24px;font-weight:700}
body[data-unified] .footer-group ul{list-style:none;padding:0;margin:0;display:grid;gap:16px;font-size:1rem}.footer-group li{margin:0!important}.footer-group a{text-decoration:none}
body[data-unified] .footer-company{padding:40px 0 0;margin-top:48px;border-top:1px solid var(--line);font-size:1rem;gap:32px;align-items:center}
.footer-company address{font-style:normal;color:var(--muted)}
body[data-unified] .footer-legal{margin-top:32px;padding:0;border:0;font-size:1rem}
body[data-unified] .floating>button:where(:not(.u-action)){background:var(--primary);color:white;border-color:var(--primary);box-shadow:0 4px 18px #17344B16}
body[data-unified] .diagnosis{padding:32px;border:1px solid var(--line);background:white;border-radius:8px}
body[data-unified] .choice-list{gap:16px}.diagnosis fieldset{margin:0;padding:0;border:0}
body[data-unified] .choice{padding:24px;background:white;border-color:var(--line);border-radius:6px;color:var(--ink)}
body[data-unified] .choice:has(input:checked){background:var(--surface);border-color:var(--primary)}
body[data-unified] .diagnosis legend{font-size:1.375rem;font-weight:700;line-height:1.65;margin-bottom:24px}
body[data-unified] .question-help{font-size:1rem;line-height:1.8;margin-bottom:32px}
body[data-unified] .diagnosis-progress li[aria-current]{border-color:var(--primary);color:var(--primary)}
body[data-unified] .estimate-panel{padding:32px;border:1px solid var(--line);border-radius:8px;background:white;gap:32px}
body[data-unified] .estimate-panel fieldset{border:0;padding:0;margin:0}.estimate-choice{padding:20px 24px!important;border-color:var(--line)!important}
body[data-unified] .optional-tool{padding:0;border:1px solid var(--line);background:white;border-radius:8px}
body[data-unified] .optional-tool>summary{padding:24px 32px;font-size:var(--type-body);color:var(--primary);font-weight:700}
body[data-unified] .optional-tool>div{padding:8px 32px 32px}
body[data-unified] .article-meta{max-width:840px;margin:32px auto;font-size:1rem}
body[data-unified][data-kind=article] .section-inner{max-width:840px}
body[data-unified][data-kind=article] .u-consult .section-inner{max-width:1120px}
@media(max-width:1200px){body[data-unified] .u-site-header .phone{display:none}body[data-unified] .u-site-header .site-nav{gap:20px}}
@media(max-width:1024px){body[data-unified] .u-hero-grid,body[data-unified] .split,body[data-unified] .visual-split{gap:40px}body[data-unified] .grid,.u-option-grid,.u-channel-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.u-channel:last-child:nth-child(odd){grid-column:1/-1}.u-business-feature{column-gap:40px!important}body[data-unified] .menu-toggle{display:inline-flex}body[data-unified] .u-site-header .site-nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;border:1px solid var(--line);border-radius:0 0 8px 8px;padding:24px;box-shadow:0 12px 24px #17344B0A;flex-direction:column;align-items:stretch;gap:12px}body[data-unified] .u-site-header .site-nav.open{display:flex}body[data-unified] .u-site-header .site-nav .phone{display:flex}body[data-unified] .u-summary .facts{gap:24px}body[data-unified] .u-summary .facts>div{padding:24px}body[data-unified] .u-site-footer .footer-main{gap:32px}}
@media(max-width:767px){
 body[data-unified]{font-size:1.0625rem}
 body[data-unified] .u-utility .container{min-height:40px;justify-content:flex-start;gap:8px 16px}
 .u-utility .container>span{display:none}
 body[data-unified] .u-site-header .header-inner{min-height:80px;padding-block:12px;gap:16px}
 body[data-unified] .u-brand{font-size:1rem;gap:8px}.u-brand img{width:88px}
 body[data-unified] .menu-toggle{padding:12px 16px;min-height:48px;font-size:1rem}
 body[data-unified] .u-kv-band{padding-block:40px}
 body[data-unified] .breadcrumb{margin-bottom:32px;font-size:1rem}
 body[data-unified] .u-hero-grid{grid-template-columns:1fr;gap:32px}
 body[data-unified] .u-top-hero .u-hero-grid{min-height:0}
 body[data-unified] h1{font-size:2.125rem;line-height:1.45;max-width:none;text-align:left}
 body[data-unified] .u-top-sea .u-hero-copy{display:block}
 body[data-unified] .lead{font-size:1.125rem;margin-top:32px;text-align:left}
 body[data-unified] .lead .actions{gap:16px}
 .u-title-rule{width:48px;margin-top:24px}
 .u-photo,body[data-unified][data-scope=corporate] .u-top-hero .u-photo,body[data-unified] .u-top-sea .u-photo{aspect-ratio:16/9;min-height:0}
 .u-photo-inner{padding:24px;font-size:1rem;gap:12px}.u-photo .u-icon{width:28px;height:28px}
 body[data-unified] .u-section-heading{margin-bottom:40px}
 body[data-unified] .u-section-heading h2{font-size:1.75rem;line-height:1.6;text-align:left}
 body[data-unified] h3{font-size:var(--type-h3);line-height:1.6;text-align:left}
 body[data-unified] p,body[data-unified] .source-copy p,body[data-unified] .lead p{text-align:left}
 body[data-unified] .grid,body[data-unified] .grid.two,.u-option-grid,.u-channel-grid,body[data-unified] .related-plan-grid,body[data-unified] .service-next-grid,body[data-unified] .split,body[data-unified] .visual-split{grid-template-columns:1fr;gap:24px}
 .u-channel:last-child:nth-child(odd){grid-column:auto}
 body[data-unified] .card,body[data-unified] .box,body[data-unified] .situation-card,body[data-unified] .related-plan,body[data-unified] .service-next{padding:24px}
 body[data-unified] .actions{align-items:stretch;gap:16px}.actions>.button{max-width:100%}
 body[data-unified] .u-summary-wrap{padding-top:32px}
 body[data-unified] .u-summary .facts{grid-template-columns:1fr;gap:16px}
 body[data-unified] .u-summary .facts>div{padding:24px;display:grid;grid-template-columns:92px 1fr;gap:16px}
 body[data-unified] .u-summary dt{font-size:1rem;margin:0;align-self:center}.u-summary dd{font-size:1.125rem!important}
 body[data-unified] .summary-fee{font-size:var(--type-body)}
 body[data-unified] .facts{grid-template-columns:1fr}
 body[data-unified] .facts dt{padding-bottom:8px;border:0}.facts dd{padding-top:0!important}
 body[data-unified] .section-links{margin-top:32px;gap:4px 20px}.section-links a{font-size:1rem!important}
 body[data-unified] .draft-notice,body[data-unified] .note,body[data-unified] .payment-notice{padding:24px}
 .u-comparison-details{margin-top:40px}.u-comparison-details dl{grid-template-columns:1fr;padding-inline:24px}.u-comparison-details dt{border:0;padding:24px 0 8px}.u-comparison-details dd{padding:0 0 24px}.u-comparison-details details>.button{margin-inline:24px}
 .u-option-card>div{padding:24px}.u-option-extras{grid-template-columns:1fr}.u-option-extras dt{border:0;padding:24px 0 8px}.u-option-extras dd{padding:0 0 24px}
 body[data-unified] .u-business-list{gap:40px}.u-business-feature{grid-template-columns:1fr!important;gap:32px!important}.u-business-feature>.wf-media,.u-business-feature:nth-child(even)>.wf-media{grid-column:1!important;grid-row:1!important}.u-business-feature>:not(.wf-media),.u-business-feature:nth-child(even)>:not(.wf-media){grid-column:1!important;grid-row:auto!important}
 body[data-unified] .u-consult{padding-block:56px}.u-channel{padding:24px}.u-phone{font-size:1.5rem}
 body[data-unified] form[data-prototype-form]{padding:24px;gap:32px}.u-form-progress{gap:16px}
 body[data-unified] .u-site-footer{padding-block:56px 32px}.u-site-footer .footer-main{grid-template-columns:1fr!important;gap:40px!important}.footer-brand{max-width:none!important}
 body[data-unified] .footer-company{display:block;margin-top:40px;padding-top:32px}.footer-company>a{display:block;margin-top:24px}
 body[data-unified] .steps li{padding-left:64px}.steps strong{font-size:1.25rem!important}
 body[data-unified] .diagnosis,body[data-unified] .estimate-panel{padding:24px}.choice-list{grid-template-columns:1fr!important}.choice{padding:20px!important}
 body[data-unified] .optional-tool>summary{padding:24px;font-size:var(--type-body)}.optional-tool>div{padding-inline:16px!important}
 body[data-unified] .floating{right:16px;bottom:16px}.floating>button:where(:not(.u-action)){padding-inline:20px!important}
}
@media(prefers-reduced-motion:reduce){body[data-unified] *,body[data-unified] *::before,body[data-unified] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{.u-site-header,.u-utility,.u-site-footer,.u-consult,.wfbar,.floating{display:none!important}body[data-unified] .content-section{padding-block:24px!important}body[data-unified] .u-section-heading{margin-bottom:24px!important}}

/* 上部は控えめな補助ナビ。リンクの下線と矢印で操作先を示す。 */
body[data-unified] .u-utility{background:#F5F7F7;border-bottom-color:#E1E8EA}
body[data-unified] .u-utility .container{gap:4px 8px;padding-block:0}
body[data-unified] .u-utility .u-utility-label{padding-right:12px;border-right:1px solid #D6E0E3;font-size:16px;font-weight:400}
body[data-unified] .u-utility a{display:inline-flex;align-items:center;justify-content:space-between;gap:6px;min-height:44px;padding:6px 8px;background:transparent;border:0;border-radius:3px;color:var(--muted);font-size:16px;font-weight:400;line-height:1.5;text-decoration:none;white-space:nowrap}
body[data-unified] .u-utility a span{color:inherit}
body[data-unified] .u-utility a .u-switch-label{text-decoration:underline;text-decoration-color:#A6B6BD;text-underline-offset:4px;text-decoration-thickness:1px}
body[data-unified] .u-utility a[aria-current]{color:var(--primary);font-weight:600;box-shadow:none}
body[data-unified] .u-utility a[aria-current] .u-switch-label{text-decoration-color:currentColor}
body[data-unified] .u-utility a:hover,body[data-unified] .u-utility a:focus-visible{background:white;color:var(--primary);text-decoration:none}
body[data-unified] .u-site-footer .footer-brand{display:block;min-width:0}
body[data-unified] .u-site-footer .u-footer-phone{display:inline-flex;flex-wrap:nowrap;white-space:nowrap;gap:12px;line-height:1.5;font-variant-numeric:tabular-nums}
body[data-unified] .u-footer-phone svg{width:24px;height:24px;flex:0 0 24px}
body[data-unified] .floating>.u-consult-toggle{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:60px;padding:14px 20px;border:1px solid var(--primary);border-radius:8px;font-size:var(--type-button);line-height:1.6;font-weight:700;box-shadow:0 6px 20px #17344B26,inset 0 1px #FFFFFF40;transition:box-shadow .15s ease,filter .15s ease}
body[data-unified] .u-consult-icon{width:28px;height:28px;flex:0 0 28px}
body[data-unified] .u-consult-state{display:grid;place-items:center;width:28px;height:28px;border:1px solid #FFFFFF80;border-radius:50%;font-size:22px;line-height:1;flex:none}
body[data-unified] .floating>.u-consult-toggle:hover,body[data-unified] .floating>.u-consult-toggle[aria-expanded=true]{filter:brightness(.92);box-shadow:0 8px 24px #17344B30,inset 0 1px #FFFFFF40}
@media(max-width:767px){body[data-unified] .u-utility .container{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}body[data-unified] .u-utility .u-utility-label{display:none}body[data-unified] .u-utility a{min-width:0;padding-inline:12px}body[data-unified] .floating>.u-consult-toggle{min-height:56px;padding:12px 16px!important;gap:10px}}
@media(prefers-reduced-motion:reduce){body[data-unified] .floating>.u-consult-toggle{transition:none}}
/* 長い本文にも通常章と同じ幅・余白を適用する。 */
body[data-unified] #vision{width:100%;max-width:none;margin:0;padding-inline:0;text-align:left}
body[data-unified] #vision .section-inner{max-width:840px}
body[data-unified] .source-copy,body[data-unified] .overview-copy{max-width:840px}
body[data-unified] .article-related.content-section{border:0;margin:0}
body[data-unified] .article-related .u-section-heading{margin-bottom:var(--space-heading-content)}
body[data-unified] .steps li.is-current::before{background:var(--primary);border-color:var(--primary);color:white}
body[data-unified] .steps li::before{content:counter(step,decimal-leading-zero)}
/* 会社TOPのサービス一覧は、入口としての情報量に合わせてコンパクトに。 */
body[data-unified] .u-company-services .section-inner{display:grid;grid-template-columns:280px minmax(0,1fr);gap:72px;align-items:start}
body[data-unified] .u-company-services .service-editorials{display:grid;gap:0;margin:0}
body[data-unified] .u-company-services .service-editorial{display:grid;grid-template-columns:140px minmax(0,1fr);gap:32px;margin:0;padding:32px 0;align-items:center;border:0;border-bottom:0}
body[data-unified] .u-company-services .service-editorial:first-child{padding-top:0}
body[data-unified] .u-company-services .service-editorial-photo{grid-column:1;grid-row:1;min-width:0}
body[data-unified] .u-company-services .service-editorial-copy{grid-column:2;grid-row:1;padding:0;max-width:none;display:block}
body[data-unified] .u-company-services .wf-media{width:100%;margin:0}
body[data-unified] .u-company-services .wf-image{aspect-ratio:4/3;min-height:0}
body[data-unified] .u-company-services .wf-placeholder{min-height:0;height:100%;padding:16px;font-size:1rem;gap:8px}
body[data-unified] .u-company-services .wf-photo-type,body[data-unified] .u-company-services .wf-viewfinder{display:none}
body[data-unified] .u-company-services h3{font-size:var(--type-h3);margin:0 0 16px}
body[data-unified] .u-company-services p{font-size:var(--type-body);line-height:1.8}
body[data-unified] .u-company-services .actions{margin-top:16px;padding:0}
.u-text-link{display:inline-flex;gap:16px;min-height:44px;align-items:center;text-decoration:underline;text-underline-offset:6px;font-size:1rem;font-weight:700}
.u-company-service-lead{margin-top:32px!important;color:var(--muted)}
body[data-unified] #compare .u-compare thead th,body[data-unified] #compare .u-compare tbody th{background:var(--surface)}
@media(min-width:768px){body[data-unified] #vision .section-inner{text-align:center}body[data-unified] #vision .u-title-rule{margin-inline:auto}body[data-unified] #vision .source-copy{margin-inline:auto}}
@media(max-width:1024px){body[data-unified] .u-company-services .section-inner{grid-template-columns:220px minmax(0,1fr);gap:40px}body[data-unified] .u-company-services .service-editorial{grid-template-columns:100px minmax(0,1fr);gap:24px}}
@media(max-width:767px){body[data-unified] .u-company-services .section-inner{grid-template-columns:1fr;gap:0}body[data-unified] .u-company-services .service-editorial{grid-template-columns:80px minmax(0,1fr);gap:24px;padding-block:24px}body[data-unified] .u-company-services .service-editorial-photo{align-self:start}body[data-unified] .u-company-services h3{font-size:var(--type-h3)}body[data-unified] .u-company-services .wf-placeholder{padding:8px;font-size:1rem}body[data-unified] .u-company-services .u-section-heading{margin-bottom:40px}}
