
/* サービス切替タブ */
.svc-tabs{display:flex;gap:1px;background:var(--hair);border:1px solid var(--hair);margin-top:44px}
.svc-tabs a{
  flex:1;background:var(--void);padding:22px 26px;text-align:center;
  font-weight:900;font-size:clamp(14px,2vw,18px);transition:.3s;position:relative;
}
.svc-tabs a small{display:block;font-family:var(--mono);font-weight:400;font-size:9px;letter-spacing:.28em;color:var(--dim);margin-top:4px}
.svc-tabs a:hover{background:var(--panel)}
.svc-tabs a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--amber);transform:scaleX(0);transition:.3s}
.svc-tabs a:hover::after{transform:scaleX(1)}
/* 能力グリッド */
.cap{grid-template-columns:repeat(3,1fr)}
@media(max-width:1020px){.cap{grid-template-columns:1fr}}
/* フロー */
.flow{display:flex;border:1px solid var(--hair);background:var(--void2);margin-top:56px;flex-wrap:wrap}
.flow .step{flex:1;min-width:170px;padding:30px 26px;border-right:1px solid var(--hair);position:relative}
.flow .step:last-child{border-right:none}
.flow .fno{font-family:var(--en);font-weight:700;font-size:12px;color:var(--amber);letter-spacing:.1em}
.flow .ft{font-weight:900;font-size:16px;margin-top:8px}
.flow .fd{font-size:11.5px;color:var(--dim);margin-top:4px}
.flow .step::after{content:"▸";position:absolute;right:-7px;top:50%;transform:translateY(-50%);color:var(--amber);font-size:12px;z-index:2}
.flow .step:last-child::after{display:none}
/* コンサル・フェーズ */
.phase{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--hair);border:1px solid var(--hair)}
.phase div{background:var(--void);padding:34px 28px;position:relative}
.phase .pno{font-family:var(--en);font-weight:700;font-size:34px;color:var(--hair-hi);line-height:1}
.phase h3{font-weight:900;font-size:18px;margin-top:14px}
.phase .pe{font-family:var(--mono);font-size:9px;letter-spacing:.26em;color:var(--amber);margin-top:4px}
.phase p{font-size:12px;color:#93a09e;margin-top:12px}
.phase div:hover .pno{color:var(--amber);transition:.3s}
@media(max-width:1020px){.phase{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.phase{grid-template-columns:1fr}.flow .step{min-width:100%;border-right:none;border-bottom:1px solid var(--hair)}.flow .step::after{right:50%;top:auto;bottom:-8px;transform:translateX(50%) rotate(90deg)}}
/* CTA帯 */
.svc-cta{border:1px solid var(--hair);background:linear-gradient(120deg,rgba(255,174,0,.08),transparent 55%);padding:48px 46px;display:flex;justify-content:space-between;align-items:center;gap:26px;flex-wrap:wrap;margin-top:70px}
.svc-cta h3{font-weight:900;font-size:clamp(20px,3vw,28px);line-height:1.5}

/* ===== D-01〜06 写真（DIVISIONSカード仕様準拠） ===== */
.cap .cell{padding:0 0 26px;transition:border-color .3s}
.cph{position:relative;height:210px;overflow:hidden;margin-bottom:22px;border-bottom:1px solid var(--hair)}
.cph img{width:100%;height:100%;object-fit:cover;filter:grayscale(.55) brightness(.72) contrast(1.05);transition:filter .5s ease,transform .6s cubic-bezier(.16,1,.3,1)}
.cap .cell:hover .cph img{filter:grayscale(0) brightness(.92);transform:scale(1.05)}
.cap .cell>.no,.cap .cell>h3,.cap .cell>p{padding-left:26px;padding-right:26px}
@media(max-width:720px){.cph{height:186px}}
@media(hover:none){.cph img{filter:grayscale(0) brightness(.85)}}

.phase>div{padding:0 0 26px}
.phase .cph{overflow:hidden;aspect-ratio:16/9;margin-bottom:18px;border-bottom:1px solid var(--hair)}
.phase .cph img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.7) brightness(.88);transform:scale(1.01);transition:filter .5s,transform .8s cubic-bezier(.16,1,.3,1)}
.phase>div:hover .cph img{filter:saturate(1) brightness(.96);transform:scale(1.06)}
.phase>div>.pno,.phase>div>h3,.phase>div>.pe,.phase>div>p{padding-left:24px;padding-right:24px}
