/* 元の掲載順・本文を保ち、見出し・余白・配色をそろえる */
:root{--ink:#19283E;--sub:#475467;--sub2:#526071;--faint:#667085;--gold:#AD8C50;--gold-deep:#81632F;--line:#E1E5E9;--line2:#CBD2DA;--pale:#F5F3ED}
section{padding:76px 40px}.wrap{max-width:1160px}.hairline-t{border-color:#E1E5E9}
h2.sec{font-size:clamp(24px,2.5vw,32px);line-height:1.5;letter-spacing:.01em;color:var(--ink)}
.sec-head{grid-template-columns:minmax(0,.85fr) minmax(0,1.65fr);gap:56px;margin-bottom:38px;align-items:start}
.sec-head>div:first-child{padding-top:16px;position:relative}.sec-head>div:first-child:before{content:'';position:absolute;top:0;left:0;width:36px;height:3px;background:var(--gold)}
.sec-lead{font-size:14px;line-height:1.95;margin:10px 0 0}.sec-lead>b:first-child{display:block;margin-bottom:8px;color:var(--ink)}
.btn-dark,.btn-line{border-radius:4px;transition:background .18s,color .18s}.btn-dark{background:var(--ink)}.btn-line:hover{background:var(--pale)}
.hero-sec{padding-top:52px;padding-bottom:44px}.hero-h1{color:var(--ink)}.hero-tag{letter-spacing:.02em!important}
#data{background:#F7F8FA}.g4{background:#fff;border:1px solid var(--line);border-radius:6px;column-gap:0;overflow:hidden}
#data .g4>div{padding:28px!important;border-right:1px solid var(--line)!important}#data .g4>div:last-child{border-right:0!important}
#data .g4 .tag-en{font-size:11px;letter-spacing:.1em;margin-bottom:20px}#data .g4>div>p:last-child{line-height:1.85!important}
.fde-cycle{padding:32px;border:1px solid var(--line);border-radius:8px;background:#F7F8FA}.fde-cycle h3,.fde-method h3{font-size:22px;letter-spacing:.01em}
.fde-steps li{background:#fff;border-radius:4px}.fde-method{padding:32px;border-radius:8px;border:1px solid #DCD4C3;border-top:3px solid var(--gold);background:#FAF8F3;margin:24px 0}
.fde-part,.fde-result{border-radius:5px;padding-top:24px;padding-bottom:24px}.fde-result{background:var(--ink);border-color:var(--ink)}.fde-icon{color:var(--ink)}.fde-benefits{margin:24px 0}.fde-support{padding-top:12px}
#strength{background:#F7F8FA}.str-gl{font-size:13px;margin-bottom:18px}.str-grid{background:transparent;border:0;gap:24px}.str{border:1px solid var(--line);border-radius:6px;padding:28px;background:#fff}.str:before{display:none}
.section-icon{display:block;width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;color:var(--gold-deep);margin-bottom:22px}.str h3{font-size:20px;margin-bottom:16px}.str-d{font-size:13px;line-height:1.95}.str-l{border-top:1px solid var(--line);padding-top:16px}.str-l:after{margin-left:auto;font-size:18px}
.exp-grid{gap:28px}.exp{border:0;border-top:2px solid var(--gold);padding:26px 0 0;background:transparent}.exp h3{font-size:22px;margin:8px 0 20px}.exp .tag-en{font-size:11px;letter-spacing:.14em}.exp li{padding:12px 0;border-bottom:1px solid var(--line);font-size:14px}.exp li span{font-size:12px;line-height:1.7;margin-top:5px}.exp-note{padding:18px 22px;border-left:3px solid #B99C66;background:#F7F8FA;max-width:none}
#consulting{background:#F7F8FA}.g3.pillars{gap:22px}.pillar{padding:28px;border:1px solid var(--line);border-top:3px solid var(--ink);border-radius:5px}.pillar .tag-en{font-size:12px;letter-spacing:.12em}.pillar h3{font-size:20px;line-height:1.6;margin:20px 0 16px}.pillar>p:not(.tag-en){line-height:1.9}.pillar ul{margin-top:auto;padding-top:12px}.pillar li{font-size:12px;line-height:1.8;border-bottom:0;padding:5px 0 5px 14px}.pillar li:before{content:'•';font-size:14px}
#products{background:#fff}.product-screens{gap:28px}.product-screens a{padding:6px;border-radius:7px;overflow:hidden;box-shadow:0 8px 26px #19283e0a}.product-screens figcaption{font-size:12px}.product-screens strong{font-size:16px}.prod{border-radius:5px;padding:28px}.prod h3{font-weight:700}.prods{gap:22px}
#model{background:#F7F8FA}.opt{border-radius:5px;padding:28px}.opt h3{font-size:20px}.opt .opt-fit{border-top-style:solid}.vs{border-radius:6px;overflow:hidden;background:white}.vs-wing,.vs-h.wing{background:#19283E}.vs-r>div{padding:20px 22px}.vs-label{background:#F0F2F5;color:var(--ink)}
#insights{background:#F7F8FA}.ins-g{gap:20px}.ins{border-radius:5px;background:#fff;padding:26px;transition:border-color .18s,box-shadow .18s}.ins:hover{border-color:#AD8C50;box-shadow:0 6px 20px #19283e08}.ins h3{line-height:1.75}.ins p{line-height:1.8}
.faq details{border-color:var(--line)}.faq summary{padding-top:22px;padding-bottom:22px}.faq .a{color:var(--sub2)}
#contact{background:#F7F8FA}.form{background:white;padding:30px;border:1px solid var(--line);border-radius:6px}.form input,.form select,.form textarea{border-radius:3px}.form button{border-radius:4px}.ct-l p{line-height:1.95}
@media(max-width:1000px){.sec-head{gap:32px;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}.str{padding:24px 20px}.str h3{font-size:18px}.pillar{padding:24px 20px}.pillar h3{font-size:18px}#data .g4>div{border-bottom:1px solid var(--line)!important}}
@media(max-width:860px){.sec-head{grid-template-columns:1fr;gap:16px;margin-bottom:28px}.sec-lead{margin-top:0;max-width:none}.pillar ul{margin-top:8px}.exp-grid{gap:24px}.str-grid{gap:16px}.g3.pillars{gap:20px}.fde-cycle,.fde-method{padding:24px}}
@media(max-width:720px){section{padding:46px 22px}.hero-sec{padding-top:28px;padding-bottom:28px}h2.sec{font-size:25px}.str{padding:24px}.section-icon{margin-bottom:16px;width:32px;height:32px}.str h3{font-size:20px}.str-d{font-size:14px}.exp{padding-top:20px}.exp li{padding:11px 0}.exp-note{padding:16px;font-size:12px}.pillar{padding:24px}.pillar h3{font-size:20px}.pillar>p:not(.tag-en){font-size:14px}.pillar li{font-size:13px}.fde-cycle h3,.fde-method h3{font-size:20px}.form{padding:22px 18px}.prod{padding:24px}.opt{padding:24px}.sec-head{margin-bottom:26px}.fde-part,.fde-result{padding:16px}.vs-r>div{padding:16px}}
@media(prefers-reduced-motion:reduce){.btn-dark,.btn-line,.ins{transition:none}}

/* ご支援領域は分類ごとの横並びで縦幅を抑える */
#expertise{padding-top:44px;padding-bottom:44px}
#expertise .sec-head{margin-bottom:24px;grid-template-columns:220px minmax(0,1fr);gap:32px}
#expertise .sec-lead{font-size:13px;line-height:1.8}
#expertise .exp-grid{display:block;margin-top:0;border-top:1px solid var(--line)}
#expertise .exp{display:grid;grid-template-columns:150px minmax(0,1fr);column-gap:24px;position:relative;padding:18px 0;border:0;border-bottom:1px solid var(--line)}
#expertise .exp .tag-en{grid-column:1;grid-row:1;align-self:start;font-size:10px;margin-top:2px}
#expertise .exp h3{grid-column:1;grid-row:1;align-self:start;margin:24px 0 0;font-size:18px}
#expertise .exp ul{grid-column:2;grid-row:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 24px}
#expertise .exp li{padding:0;border:0;font-size:13px;line-height:1.6}
#expertise .exp li span{font-size:12px;margin-top:3px;line-height:1.6}
#expertise .exp-note{margin:16px 0 0;padding:0;border:0;background:none;font-size:12px;line-height:1.8}
@media(max-width:1000px){#expertise .exp{grid-template-columns:130px minmax(0,1fr);gap:16px}#expertise .exp ul{gap:12px 16px;grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){#expertise{padding-top:36px;padding-bottom:36px}#expertise .sec-head{grid-template-columns:1fr;gap:12px;margin-bottom:20px}#expertise .exp{grid-template-columns:1fr;padding:18px 0;gap:0}#expertise .exp .tag-en{display:none}#expertise .exp h3{grid-row:1;margin:0 0 14px;font-size:18px}#expertise .exp ul{grid-column:1;grid-row:2;gap:14px 18px}#expertise .exp li{font-size:13px}#expertise .exp li span{font-size:12px}}
