/* ==============================================
   components-card.css  —  カード / スライダー
   他ページでも再利用可能なコンポーネント
============================================== */

/* INTERVIEW CARD (PC)：写真＋見出し＋本文＋お客様情報 */
.interview__card{background:#fff;border-radius:16px;padding:20px;width:354px;display:flex;flex-direction:column;box-shadow:0 4px 20px rgba(0,0,80,.08);transition:transform .3s ease,box-shadow .3s ease}
.interview__card:hover{transform:translateY(-8px);box-shadow:0 16px 40px rgba(0,0,128,.15)}
.interview__photo{width:100%;height:192px;object-fit:cover;border-radius:12px;margin-bottom:32px}
.interview__headline{font-size:20px;font-weight:700;color:var(--main);line-height:1.5;margin-bottom:8px}
.interview__desc{font-size:16px;font-weight:400;color:var(--text);line-height:1.7;margin-bottom:24px}
.interview__person-name{font-size:16px;font-weight:500;color:var(--text);line-height:1.5}
.interview__person-type{font-size:14px;font-weight:400;color:var(--text);line-height:1.5}
.interview__person-plan{font-size:14px;font-weight:400;color:var(--text);margin-top:8px}

/* WHO CARD (PC) */
.who__card{background:var(--sub);border-radius:var(--radius-card);padding:24px 36px;width:360px;height:240px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}
.who__card-title{font-size:24px;font-weight:500;color:var(--text);text-align:center}
.who__card-icon{width:90px;height:90px;display:flex;align-items:center;justify-content:center}
.who__card-icon img{width:100%;height:100%;object-fit:contain}
.who__card-desc{font-size:16px;font-weight:400;color:var(--text);line-height:1.5;text-align:center}

/* PRICING SLIDER (PC: hidden) */
.pricing-slider{display:none}
.pricing-slider__badge{display:none}

/* PRICING SLIDER INNER (SP: shown via media query in page-lp.css) */
.pricing-slider__indicators{display:flex;justify-content:center;gap:8px;margin-bottom:16px}
.pricing-slider__dot{width:10px;height:10px;border-radius:50%;background:#c0cfe0;border:none;cursor:pointer;padding:0;transition:background .25s,transform .25s}
.pricing-slider__dot.active{background:var(--main);transform:scale(1.3)}
.pricing-slider__track-wrap{overflow:hidden;border-radius:12px}
.pricing-slider__track{display:flex;transition:transform .35s cubic-bezier(.4,0,.2,1);will-change:transform}
.pricing-card{min-width:100%;width:100%;flex-shrink:0;background:#fff;border-radius:12px;overflow:visible;box-shadow:0 4px 20px rgba(0,0,80,.08);box-sizing:border-box}
.pricing-card__body{padding:0;overflow:hidden;border-radius:0 0 12px 12px}
.pricing-card__head{padding:16px 16px 14px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;min-height:72px;justify-content:center;border-radius:12px 12px 0 0;overflow:visible}
.pricing-card__head--free{background:rgba(42,46,143,.1)}
.pricing-card__head--standard{background:rgba(42,46,143,.25)}
.pricing-card__head--premium{background:rgba(42,46,143,.4)}
.pricing-card__head-en{font-size:11px;font-weight:400;color:#666;letter-spacing:.08em}
.pricing-card__head-name{font-size:20px;font-weight:700;color:var(--text)}
.pricing-card__row{display:flex;border-bottom:1px solid #e8eef5;padding:14px 16px;gap:0;min-height:60px;align-items:center}
.pricing-card__row--tall{align-items:flex-start;min-height:80px}
.pricing-card__row--full{position:relative;padding:0;min-height:60px;gap:0}
.pricing-card__row--full .pricing-card__label{display:none}
.pricing-card__row:last-child{border-bottom:none}
.pricing-card__label{font-size:13px;font-weight:500;color:var(--text);width:88px;flex-shrink:0;line-height:1.5;padding-right:12px;border-right:1px solid #d0dce8;margin-right:16px;align-self:stretch;display:flex;align-items:center;white-space:nowrap}
.pricing-card__row--tall .pricing-card__label{align-items:flex-start;padding-top:4px}
.pricing-card__row:not(.pricing-card__row--tall) .pricing-card__value{flex:1;text-align:center}
.pricing-card__value{font-size:14px;font-weight:400;color:var(--text);flex:1}
.pricing-card__value--highlight{background:var(--accent);font-size:15px;font-weight:700;color:var(--text);padding:8px 12px;text-align:center;position:absolute;left:0;right:0;top:0;bottom:0;display:flex;align-items:center;justify-content:center;white-space:normal;word-break:keep-all}
.pricing-card__value--large{font-size:20px;font-weight:700;text-align:center}
.pricing-card__big{font-family:'Poppins',sans-serif;font-size:32px;font-weight:500;line-height:1;vertical-align:baseline}
.pricing-card__big--md{font-size:22px}
.pricing-card__unit{font-size:14px;font-weight:400;margin-left:2px}
.pricing-card__list{font-size:13px;color:var(--text);line-height:1.7;flex:1;white-space:normal;word-break:break-all;text-align:left}
.pricing-card__list p{margin-bottom:2px}
.pricing-slider__badge{position:absolute;right:20px;display:none;align-items:center;gap:3px;padding:5px 14px;border-radius:16px;border:2px solid #d4af37;background:linear-gradient(105deg,#e5d297 9%,#b88b0b 24%,#b88b0b 72%,#d5c48f 94%);font-size:14px;font-weight:700;color:#fff;white-space:nowrap;z-index:100;box-shadow:0 2px 8px rgba(0,0,0,.3);pointer-events:none}
.pricing-slider__badge span{font-size:17px;font-weight:700}
.pricing-slider__badge.visible{display:inline-flex !important}
.pricing-slider__nav{position:absolute;top:50%;transform:translateY(-50%);width:100%;display:flex;justify-content:space-between;pointer-events:none;padding:0 4px}
.pricing-slider__btn{width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.9);border:1px solid #ddd;font-size:22px;cursor:pointer;pointer-events:all;color:var(--main);display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.1);transition:background .2s}
.pricing-slider__btn:hover{background:#fff}
