/* =============================
  LP型記事専用スタイル
  タイアップ・PR記事用のレイアウト
============================= */

/* LP型記事のコンテナ */
.single-article--lp {
  /* LP型は通常型とは異なるレイアウトを適用可能 */
}

/* LP型のヒーロー画像 */
.article-hero--lp {
  /* 必要に応じてLP型独自のスタイルを追加 */
  margin-bottom: 24px;
}

/* PRバッジコンテナ */
.article-pr-badge-container {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 16px;
}

/* 大きなPRバッジ（LP型専用） */
.pr-badge-large {
  display: inline-block;
  padding: 6px 16px;
  background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%);
  color: #ffffff;
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  border-radius: 4px;
  box-shadow: 0 2px 8px rgba(231, 76, 60, 0.3);
}

/* スポンサー名 */
.article-sponsor-name {
  font-size: 1.4rem;
  color: var(--color-third);
  font-weight: 500;
}

/* LP型のタイトル */
.article-title--lp {
  /* LP型は通常よりも大きめのタイトル */
  font-size: 2.8rem;
  line-height: 1.4;
  margin-bottom: 20px;
}

@media (min-width: 768px) {
  .article-title--lp {
    font-size: 3.6rem;
  }
}

/* LP型のメタ情報 */
.article-meta--lp {
  margin-bottom: 24px;
}

/* LP型のリード文 */
.article-lead--lp {
  background: var(--color-main-light);
  padding: 24px;
  border-radius: var(--radius-8);
  margin-bottom: 32px;
  font-size: 1.7rem;
  line-height: 1.8;
}

/* LP型の本文 */
.article-content--lp {
  /* LP型の本文は通常と同じでOKだが、必要に応じてカスタマイズ可能 */
}

/* LP型記事でのCTAボタン（本文内で使用可能） */
.article-content--lp .lp-cta-button {
  display: inline-block;
  padding: 16px 48px;
  background: linear-gradient(135deg, var(--color-button-blue) 0%, #1557b0 100%);
  color: #ffffff;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  border-radius: var(--radius-100);
  box-shadow: 0 4px 12px rgba(25, 103, 210, 0.3);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.article-content--lp .lp-cta-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 16px rgba(25, 103, 210, 0.4);
}

/* LP型記事でのハイライトボックス */
.article-content--lp .lp-highlight-box {
  background: #fff9e6;
  border-left: 4px solid var(--color-cta);
  padding: 20px 24px;
  margin: 32px 0;
  border-radius: var(--radius-8);
}

.article-content--lp .lp-highlight-box h3 {
  font-size: 2.0rem;
  font-weight: 700;
  margin-bottom: 12px;
  color: var(--color-text);
}

.article-content--lp .lp-highlight-box p {
  font-size: 1.6rem;
  line-height: 1.75;
  color: var(--color-text);
}

/* LP型記事での比較表 */
.article-content--lp .lp-comparison-table {
  width: 100%;
  border-collapse: collapse;
  margin: 32px 0;
  background: #ffffff;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
  border-radius: var(--radius-8);
  overflow: hidden;
}

.article-content--lp .lp-comparison-table th,
.article-content--lp .lp-comparison-table td {
  padding: 16px;
  text-align: left;
  border-bottom: 1px solid var(--color-light);
}

.article-content--lp .lp-comparison-table th {
  background: var(--color-main-light);
  font-weight: 700;
  color: var(--color-text);
}

.article-content--lp .lp-comparison-table tr:last-child td {
  border-bottom: none;
}

/* レスポンシブ調整 */
@media (max-width: 767px) {
  .pr-badge-large {
    font-size: 1.2rem;
    padding: 4px 12px;
  }

  .article-sponsor-name {
    font-size: 1.2rem;
  }

  .article-lead--lp {
    padding: 16px;
    font-size: 1.5rem;
  }

  .article-content--lp .lp-cta-button {
    width: 100%;
    padding: 14px 32px;
    font-size: 1.6rem;
  }

  .article-content--lp .lp-comparison-table {
    font-size: 1.4rem;
  }

  .article-content--lp .lp-comparison-table th,
  .article-content--lp .lp-comparison-table td {
    padding: 12px 8px;
  }
}
