/* v5.1：三つの深さ／なぜ80点か／目指すAI。site.css の後に読む */
.vs3{margin-top:88px;border-top:2px solid var(--ink)}
.vs3-row{display:grid;grid-template-columns:130px minmax(0,.9fr) minmax(0,1fr) minmax(0,1.25fr);gap:28px;padding:22px 0;border-bottom:1px solid var(--line);align-items:start}
.vs3-head{padding:16px 0}
.vs3-head span{font-size:13px;font-weight:900}
.vs3-head .c1{color:var(--pale)}
.vs3-head .c2{color:var(--gray)}
.vs3-head .c3{display:flex;align-items:center;gap:10px;color:var(--ink)}
.vs3-head .c3 i{width:9px;height:9px;background:var(--yellow);outline:1px solid var(--ink)}
.vs3 .k{font-size:13px;color:var(--gray);padding-top:3px}
.vs3 .c1{font-size:14px;line-height:1.75;color:var(--pale)}
.vs3 .c2{font-size:15px;line-height:1.75;color:#4A5054}
.vs3 .c3{font-size:18px;line-height:1.6;font-weight:900;color:var(--ink)}

.facts3{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:16px;margin-top:48px}
.facts3 > div{background:var(--mist);border-radius:8px;padding:24px 28px}
.facts3 .big{font:600 52px/1 var(--ui);letter-spacing:-.02em}
.facts3 .big small{font-size:22px}
.facts3 p{font-size:15px;line-height:1.75;margin-top:10px}
.facts3 .hl{background:var(--ink);color:var(--white)}
.facts3 .hl .src{color:var(--dark-sub)}
.facts3 .hl .big{color:var(--yellow)}

.why{background:var(--mist)}
.kitchen{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px}
.kc{background:var(--white);border-radius:8px;padding:28px 32px;border:1px solid var(--line)}
.kc-q{border:2px solid var(--ink)}
.kc-tag,.cb-tag,.cs-tag{font-size:13px;color:var(--gray);display:flex;align-items:center;gap:8px}
.kc-q .kc-tag,.cs-q .cs-tag{color:var(--ink);font-weight:900}
.kc-tag i,.cb-tag i,.cs-tag i{width:9px;height:9px;background:var(--yellow);outline:1px solid var(--ink);flex:none}
.kc h3{font-size:21px;margin-top:8px}
.kc p:not(.kc-tag){font-size:15.5px;line-height:1.9;margin-top:12px}
.hourglass{margin-top:40px;background:var(--white);border-radius:8px;padding:32px}
.hourglass svg{width:100%;max-width:900px;height:auto;margin:0 auto}
.hourglass figcaption{display:flex;justify-content:space-between;gap:16px;margin-top:12px;font:500 11px/1.5 var(--ui);letter-spacing:.12em;color:var(--gray)}
.hourglass figcaption span:last-child{font-family:var(--jp);letter-spacing:0;font-size:13px}
.why-note{margin-top:32px;font-size:16.5px;line-height:1.95;max-width:46em}

.harness{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;margin-top:48px}
.hn{grid-column:span 3;border:1px solid var(--line);border-radius:8px;padding:24px 26px}
.hn-q{grid-column:span 2;border-color:var(--ink)}
.hn-who{font-size:12px;color:var(--gray)}
.hn-q .hn-who{color:var(--ink);font-weight:900}
.hn h3{font-size:20px;margin-top:6px}
.hn p:not(.hn-who){font-size:15px;line-height:1.85;margin-top:10px}

.core-note{margin-top:48px;border-left:4px solid var(--yellow);padding:4px 0 4px 24px}
.core-note h3{font-size:22px}
.core-note p{font-size:16px;line-height:1.9;margin-top:10px;max-width:46em}

.coach{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:56px}
.cb{border-radius:8px;padding:28px 32px;background:var(--mist)}
.cb-q{background:var(--ink);color:var(--white)}
.cb-q .cb-tag{color:var(--white);font-weight:900}
.cb-voice{font-size:20px;line-height:1.6;font-weight:900;margin-top:14px}
.cb-res{font-size:14px;margin-top:12px;color:var(--gray)}
.cb-q .cb-res{color:var(--yellow)}
.coach-note{margin-top:24px;font-size:16px;line-height:1.95;max-width:48em}

.team{display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;margin-top:64px;align-items:start}
.team-bar{display:flex;height:64px;border:1px solid var(--ink);border-radius:4px;overflow:hidden;font:600 20px var(--ui)}
.team-bar span{display:flex;align-items:center;justify-content:center}
.team-bar .t2{flex:2;background:var(--yellow)}
.team-bar .t6{flex:6;background:var(--ink);color:var(--white)}
.team-bar .t2b{flex:2;background:var(--mist);color:var(--gray)}
.team h3{font-size:24px}
.team p{font-size:16px;line-height:1.9;margin-top:12px}
.team .team-quote{font-size:20px;font-weight:900;margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}

.people{margin-top:64px;border-top:1px solid var(--ink);padding-top:32px}
.people h3{font-size:24px}
.people p{font-size:16px;line-height:1.95;margin-top:12px;max-width:48em}

.cost{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:56px}
.cs{border:1px solid var(--line);border-radius:8px;padding:28px 32px}
.cs-q{border:2px solid var(--ink)}
.cs h3{font-size:20px;margin-top:8px}
.cs p:not(.cs-tag){font-size:15px;line-height:1.85;margin-top:10px}

@media (max-width:1023px){
  .vs3-row{grid-template-columns:110px 1fr 1fr 1.2fr;gap:18px}
  .facts3{grid-template-columns:1fr 1fr}
  .facts3 .hl{grid-column:1 / -1}
  .harness .hn,.harness .hn-q{grid-column:span 3}
  .team{grid-template-columns:1fr}
}
@media (max-width:767px){
  .vs3{margin-top:56px}
  .vs3-head{display:none}
  .vs3-row{grid-template-columns:1fr;gap:6px;padding:20px 0}
  .vs3 .k{font-weight:900;color:var(--ink)}
  .vs3 .c1::before{content:"一般的なAI：";font-weight:900}
  .vs3 .c2::before{content:"いま主流の深いAI：";font-weight:900}
  .vs3 .c3{font-size:17px;padding:10px 12px;background:var(--mist);border-left:3px solid var(--yellow);margin-top:4px}
  .vs3 .c3::before{content:"Quan："}
  .facts3{grid-template-columns:1fr}
  .facts3 .big{font-size:42px}
  .kitchen,.coach,.cost{grid-template-columns:1fr}
  .kc,.cb,.cs{padding:22px}
  .hourglass{padding:12px;overflow-x:auto}
  .hourglass svg{min-width:560px}
  .harness{grid-template-columns:1fr}
  .harness .hn,.harness .hn-q{grid-column:auto}
  .cb-voice{font-size:17px}
  .team h3,.people h3{font-size:20px}
}
