:root{
  --ink:#041c50;
  --muted:#66717c;
  --line:#dfe4e8;
  --soft:#f5f7f8;
  --accent:#1b217c;
  --accent2:#006ec8;
  --accent3:#80c6ff;
  --white:#fff;
  --max:1200px;
}
.offercatalog{overflow:hidden; color:var(--ink);}
.container{width:min(calc(100% - 48px),var(--max));margin:auto}
.hero{padding:104px 0 116px;background:#f7f8f8;position:relative}
.eyebrow{font-size:13px;letter-spacing:.18em;font-weight:700;color:var(--accent2);margin:0 0 18px}
h1{font-size:clamp(38px,5vw,68px);line-height:1.25;letter-spacing:-.04em;margin:0 0 34px;font-weight:700}
.lead{font-size:clamp(16px,1.6vw,20px);line-height:2.05;max-width:850px;margin:0; color:var(--ink); font-weight:600;}
.section{padding:120px 0; color:var(--ink);}
.section.gray{background:var(--soft)}
.section-head{display:grid;grid-template-columns:300px 1fr;gap:64px;margin-bottom:64px}
.section-no{font-size:12px;letter-spacing:.16em;color:var(--accent2);font-weight:700;padding-top:10px}
h2{font-size:clamp(30px,3.4vw,46px);line-height:1.35;letter-spacing:-.035em;margin:0 0 30px; color:var(--ink);}
h2 small{display:block;font-size:12px;letter-spacing:.16em;color:var(--accent2);margin-bottom:12px}
.copy{font-size:18px;line-height:2.05;max-width:820px; color:var(--ink);}
.copy strong{font-weight:700; font-size:18px; color:var(--ink);}
.stance{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:52px}
.stance-card{background:#fff;border:1px solid var(--line);border-radius:8px;padding:40px}
.stance-card .num{font-size:12px;letter-spacing:.14em;color:var(--accent2);font-weight:700}
.stance-card h3{font-size:22px;line-height:1.5;margin:12px 0 14px; color:var(--ink);}
.stance-card p{margin:0;color:var(--muted);font-size:15px}
.flow{margin-top:68px;display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.flow-item{padding:40px 36px 44px;position:relative}
.flow-item:not(:last-child){border-right:1px solid var(--line)}
.flow-item .label{font-size:12px;color:var(--accent2);font-weight:700;letter-spacing:.12em}
.flow-item h3{font-size:25px;margin:12px 0 12px; color:var(--ink);}
.flow-item p{font-size:15px;color:var(--muted);margin:0}
.flow-item:after{content:"→";position:absolute;right:-13px;top:50%;transform:translateY(-50%);width:26px;height:26px;border-radius:50%;background:#fff;border:1px solid var(--line);font-size:12px;text-align:center;line-height:24px;z-index:2;color:var(--accent)}
.flow-item:last-child:after{display:none}
.domains{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px}
.domain{border-radius:8px;padding:42px 36px 44px;min-height:310px;background:#fff;border:1px solid var(--line);position:relative;transition:.25s}
.domain:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(20,30,40,.08)}
.domain .tag{font-size:12px;letter-spacing:.12em;color:var(--accent2);font-weight:700}
.domain h3{font-size:28px;margin:14px 0 18px; color:var(--ink);}
.domain p{font-size:15px;color:var(--muted);margin:0}
.domain .arrow{position:absolute;right:30px;bottom:28px;font-size:22px;color:var(--accent)}
.industry-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}
.industry-visual{min-height:390px;border-radius:8px;background:#20252b;position:relative;overflow:hidden;padding:44px;color:#fff}
.industry-visual:before{content:"DX";position:absolute;right:-20px;bottom:-55px;font-size:210px;line-height:1;font-weight:800;color:rgba(255,255,255,.045)}
.industry-visual .visual-label{font-size:11px;letter-spacing:.18em;color:var(--accent3);}
.industry-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:48px;position:relative}
.industry-list span{padding:10px 16px;border:1px solid rgba(255,255,255,.2);border-radius:100px;font-size:14px;color:var(--white);}
.next{background:#20252b;color:#fff;padding:120px 0}
.next .section-head{margin-bottom:45px}
.next h2{color:#fff}
.next .copy{color:#c9ced3}
.cta{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--accent3);padding-top:34px;margin-top:54px;gap:24px}
.cta p{margin:0;color:var(--ink);font-size:14px}
.cta a{display:inline-flex;align-items:center;gap:28px;padding:17px 26px;border:1px solid rgba(255,255,255,.55);background:var(--accent2);border-radius:8px;color:var(--white);text-decoration:none;font-weight:700;transition:.2s}
.cta a:hover{background:var(--white);color:var(--ink);border:1px solid var(--accent2);}
.cta a span{font-size:20px}
.only-pc{ display: block;}
@media(max-width:800px){
 .container{width:min(calc(100% - 32px),var(--max))}
 .hero{padding:72px 0 84px}
 .section{padding:82px 0}
 .section-head{display:block;margin-bottom:42px}
 .section-no{margin-bottom:20px}
 .stance,.domains{grid-template-columns:1fr}
 .flow{grid-template-columns:1fr}
 .flow-item{border-right:0!important;border-bottom:1px solid var(--line)}
 .flow-item:last-child{border-bottom:0}
 .flow-item:after{content:"↓";right:auto;left:50%;top:auto;bottom:-13px;transform:translateX(-50%);line-height:24px}
 .industry-wrap{grid-template-columns:1fr;gap:36px}
 .industry-visual{min-height:300px}
 .cta{display:block}
 .cta a{margin-top:25px}
 .only-pc{ display: none;}
}