/* ============================================================
   ソクウリ 業者向けページ — v3トークン準拠の追加スタイル
   ============================================================ */
.audience-switch{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:600;color:var(--body);
  padding:9px 15px;border-radius:999px;border:1px solid var(--line);background:#fff;transition:border-color .2s,color .2s,background .2s;}
.audience-switch .ic{font-size:17px;color:var(--body-soft);}
.audience-switch:hover{color:var(--blue);border-color:var(--blue);background:var(--pale);}
.audience-switch:hover .ic{color:var(--blue);}
@media(max-width:980px){.audience-switch{display:none;}}
.mm-switch{display:flex;align-items:center;gap:9px;}
.mm-switch .ic{font-size:18px;color:var(--blue);}

/* hero badge variant */
.hero-eyebrow.vendor{background:rgba(16,185,129,.14);border-color:rgba(16,185,129,.4);color:#a7f3d0;}
.hero-eyebrow.vendor .dot{background:var(--emerald);}

.free-pill{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#06281d;
  background:#a7f3d0;border-radius:999px;padding:7px 14px;}
.free-pill .ic{font-size:15px;}

/* why band (value cards) */
.vwhy{background:var(--bg);}
.vwhy-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;}
@media(max-width:980px){.vwhy-grid{grid-template-columns:1fr 1fr;}}
@media(max-width:520px){.vwhy-grid{grid-template-columns:1fr;}}
.vwhy-card{background:#fff;border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:var(--radius);
  padding:28px 24px;box-shadow:var(--shadow-sm);transition:transform .25s var(--ease),box-shadow .25s var(--ease);}
.vwhy-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);}
.vwhy-card .vi{width:50px;height:50px;border-radius:13px;background:var(--pale);display:grid;place-items:center;color:var(--blue);margin-bottom:16px;}
.vwhy-card .vi .ic{font-size:25px;}
.vwhy-card h3{font-size:17px;font-weight:700;color:var(--heading);}
.vwhy-card p{font-size:14px;color:var(--body);line-height:1.8;margin-top:10px;}

/* fee / transparency */
.vfee{background:#fff;}
.vfee-card{max-width:760px;margin:0 auto;background:var(--pale);border:1px solid #cdd9ff;border-radius:20px;padding:36px 34px;text-align:center;}
@media(max-width:520px){.vfee-card{padding:28px 22px;}}
.vfee-card .free-pill{margin-bottom:16px;}
.vfee-card h3{font-size:clamp(22px,3vw,28px);font-weight:700;color:var(--heading);}
.vfee-card p{font-size:15px;color:var(--body);line-height:1.85;margin-top:14px;}
.vfee-card .req{color:var(--blue);font-weight:700;}
.vfee-note{font-size:12.5px;color:var(--body-soft);margin-top:18px;line-height:1.7;}

/* registration CTA card with form */
.vreg{background:var(--bg);}
.vreg-card{max-width:620px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:20px;
  box-shadow:var(--shadow-md);padding:40px 36px;}
@media(max-width:520px){.vreg-card{padding:30px 22px;}}
.vreg-card h2{font-size:clamp(24px,3.4vw,32px);font-weight:700;color:var(--heading);text-align:center;}
.vreg-card .lead{font-size:15px;color:var(--body-soft);text-align:center;margin-top:12px;line-height:1.8;}
.vform{display:grid;gap:16px;margin-top:28px;}
.vfield{display:grid;gap:7px;}
.vfield label{font-size:13px;font-weight:700;color:var(--heading);}
.vfield label .opt{font-weight:500;color:var(--body-soft);font-size:12px;margin-left:6px;}
.vfield input,.vfield select{font-family:inherit;font-size:15px;color:var(--heading);background:#fff;
  border:1px solid var(--line);border-radius:11px;padding:13px 14px;transition:border-color .2s,box-shadow .2s;}
.vfield input:focus,.vfield select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(31,84,222,.12);}
.vform .btn-primary{width:100%;margin-top:6px;}
.vform-note{font-size:12px;color:var(--body-soft);text-align:center;margin-top:14px;line-height:1.7;}
.vform-success{display:none;text-align:center;padding:18px 0 4px;}
.vform-success.show{display:block;}
.vform-success .vchk{width:56px;height:56px;border-radius:50%;background:#a7f3d0;color:#06281d;display:grid;place-items:center;margin:0 auto 14px;}
.vform-success .vchk .ic{font-size:30px;stroke-width:2.4;}
.vform-success h3{font-size:19px;font-weight:700;color:var(--heading);}
.vform-success p{font-size:14px;color:var(--body-soft);margin-top:8px;line-height:1.8;}

/* compare consumer vs vendor framing strip */
.vstrip{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;
  font-size:13.5px;color:var(--body-soft);margin-top:24px;}
.vstrip a{color:var(--blue);font-weight:700;}
