/* plan detail shared styles */
.pd-catch { display: inline-block; font-size: 0.84rem; font-weight: 700; color: var(--gold-deep); background: var(--gold-tint); border-radius: 999px; padding: 0.35em 1.1em; margin: 0.7rem 0 0.4rem; }
.pd-lead { position: relative; border-radius: 18px; overflow: hidden; box-shadow: var(--shadow); border: 1px solid var(--line-soft); }
.pd-lead img { width: 100%; display: block; }
.pd-capacity { position: absolute; top: 1rem; left: 1rem; z-index: 2; background: rgba(255,255,255,.95); border: 1px solid var(--line); border-radius: 12px; padding: 0.55em 1em; font-weight: 700; color: var(--ink); box-shadow: var(--shadow-sm); }
.pd-capacity small { display: block; font-size: 0.66rem; color: var(--muted); font-weight: 600; }
.pd-capacity b { font-family: var(--mincho); font-size: 1.25rem; color: var(--purple-deep); }
.pd-flowimg { background: #fff; border: 1px solid var(--line-soft); border-radius: 16px; padding: 1rem; box-shadow: var(--shadow-sm); }
.pd-flowimg img { width: 100%; display: block; }
.pd-prow { display: flex; align-items: center; gap: 0.6em; margin-top: 0.45rem; }
.pd-prow .lbl { flex: none; font-size: 0.66rem; font-weight: 700; border-radius: 5px; padding: 0.2em 0.55em; background: #8b8b96; color: #fff; }
.pd-prow .lbl.mem { background: #C0392B; }
.pd-prow img { max-height: 2.4rem; width: auto; max-width: calc(100% - 4.5rem); object-fit: contain; }
.pd-others { display: flex; flex-wrap: wrap; gap: 0.6rem; }
.pd-others a { font-size: 0.86rem; font-weight: 700; color: var(--purple-deep); background: #fff; border: 1px solid var(--line); border-radius: 999px; padding: 0.5em 1.2em; transition: background .25s, color .25s; }
.pd-others a:hover { background: var(--purple); color: #fff; }
.pd-others a[aria-current] { background: var(--purple); color: #fff; }
.pitem h3 small { display: block; font-family: var(--gothic); font-size: 0.72rem; color: var(--gold-deep); font-weight: 700; margin-bottom: 0.15rem; }


/* ---------- 結論ボックス（AEO: 要点をAIに抽出させる） ---------- */
.pd-conclusion{display:flex;gap:1rem;align-items:flex-start;background:linear-gradient(135deg,rgba(124,107,166,.09),rgba(194,165,94,.06));border:1px solid var(--line-soft);border-left:5px solid var(--purple);border-radius:14px;padding:1.2rem 1.4rem;}
.pd-conclusion .pd-c-badge{flex:none;font-family:var(--mincho);font-weight:700;color:#fff;background:var(--purple);border-radius:8px;padding:.3rem .7rem;font-size:.85rem;line-height:1.2;margin-top:.15rem;}
.pd-conclusion .pd-c-body h2{font-family:var(--mincho);color:var(--purple-deep);font-size:1.12rem;margin:0 0 .4rem;line-height:1.5;}
.pd-conclusion .pd-c-body p{margin:0;font-size:.92rem;line-height:1.85;color:#3f3a4d;}
.pd-conclusion .pd-c-facts{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.7rem;}
.pd-conclusion .pd-c-facts span{font-size:.8rem;background:#fff;border:1px solid var(--line-soft);border-radius:999px;padding:.25rem .8rem;color:var(--purple-ink);}
@media(max-width:560px){.pd-conclusion{flex-direction:column;}}

.pd-conclusion .pd-c-killer{margin-top:.65rem;display:block;background:var(--gold-tint);border:1px dashed var(--gold-deep);border-radius:10px;padding:.6rem .9rem;font-size:.85rem;line-height:1.75;color:#6a5418;}
.pd-conclusion .pd-c-killer strong{color:var(--gold-deep);}

.pd-conclusion .pd-c-bonus{display:block;margin-top:.45rem;font-weight:700;color:var(--gold-deep);}
