.ki-purchase-bridge {
  --bg:#fff;
  --ink:#111;
  --muted:#4b5563;
  --accent:#e06a3a;
  --border:#e5e7eb;
  --radius:14px;

  color: var(--ink);
  font-family: system-ui, -apple-system, Segoe UI, Roboto, "Helvetica Neue", Arial, "Noto Sans JP", sans-serif;
  line-height: 1.65;
  letter-spacing: .01em;

  display:grid;
  gap:clamp(16px, 2.5vw, 28px);
  grid-template-columns: 1fr;
  padding: clamp(20px, 3.8vw, 32px);
  border-radius: var(--radius);
  background: var(--bg);
  border: 1px solid var(--border);
  max-width: 1024px;
  margin: 28px auto;
}

@media (min-width: 760px){
  .ki-purchase-bridge {
    grid-template-columns: 1.1fr .9fr;
    align-items: center;
  }
}

/* コピー領域 */
.ki-purchase-bridge .ki-pb-copy {
  display:grid;
  gap: clamp(10px, 2.2vw, 16px);
}

/* 価格ブロック中央寄せ */
.ki-purchase-bridge .ki-pb-price-block {
  text-align: center;
}
.ki-purchase-bridge .ki-pb-price-caption {
  font-size: clamp(20px, 2.5vw, 24px);
  font-weight: 700;
  margin: 0 0 0.2em 0;
}
.ki-purchase-bridge .ki-pb-price-number {
  color: var(--accent);
  font-size: clamp(28px, 4.5vw, 40px);
  font-weight: 900;
  margin: 0;
  line-height: 1.2;
}

/* 箇条書き */
.ki-purchase-bridge .ki-pb-bullets {
  list-style: none;
  padding: 0;
  margin: 0;
  color: var(--muted);
  font-size: clamp(14px, 1.7vw, 16px);
}
.ki-purchase-bridge .ki-pb-bullets li {
  display:flex;
  gap:.6em;
  align-items:flex-start;
  margin-block: .25rem;
}
.ki-purchase-bridge .ki-pb-bullets li::before {
  content: "✔";
  color: var(--accent);
  font-weight: 800;
  line-height: 1.1;
  transform: translateY(.12em);
  flex: 0 0 auto;
}

/* CTA */
.ki-purchase-bridge .ki-pb-cta {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.6em;
  margin-top: clamp(10px, 2vw, 14px);
  padding: 1.05rem 1.5rem;
  border-radius: 999px;
  background: var(--accent);
  color: #fff;
  text-decoration: none;
  font-weight: 800;
  font-size: clamp(16px, 1.9vw, 18px);
  letter-spacing: .02em;
  transition: transform .08s ease-out, background-color .2s ease;
  min-width: 18ch;
}
.ki-purchase-bridge .ki-pb-cta:hover { transform: translateY(-1px); }
.ki-purchase-bridge .ki-pb-cta:active { transform: translateY(0); }

/* 画像 */
.ki-purchase-bridge .ki-pb-visual {
  border-radius: calc(var(--radius) - 2px);
  background: var(--bg);
  overflow:hidden;
  min-height: 220px;
  display:grid;
  place-items:center;
  margin: 0;
}
.ki-purchase-bridge .ki-pb-visual picture,
.ki-purchase-bridge .ki-pb-visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display:block;
  aspect-ratio: 4 / 3;
}
