/* ==========================================================================
   LINE Service (line.html 専用)
   新しい配色・フォントは追加せず、tokens.css / components.css の値のみを使う。
   ========================================================================== */
.line-page {
  padding-top: calc(var(--space-9) + var(--space-4));
  padding-bottom: var(--space-8);
}

.line-hero { max-width: 36rem; margin-bottom: var(--space-9); }
.line-hero__sub { color: var(--color-ink-soft); margin-top: var(--space-4); }
.line-hero__actions { margin-top: var(--space-6); display: flex; gap: var(--space-3); flex-wrap: wrap; }

.line-section { max-width: 40rem; margin-bottom: var(--space-9); }
.line-section:last-of-type { margin-bottom: 0; }
.line-section h2 { font-size: var(--fs-h2); margin-bottom: var(--space-5); }
.line-section__lead { color: var(--color-ink-soft); margin-bottom: var(--space-6); }

.line-feature { margin-bottom: var(--space-6); }
.line-feature:last-child { margin-bottom: 0; }
.line-feature h3 { font-family: var(--font-serif); font-size: var(--fs-h3); color: var(--color-ink); margin-bottom: var(--space-2); }
.line-feature p { color: var(--color-ink-soft); }

.line-note { font-size: var(--fs-small); color: var(--color-ink-faint); margin-top: var(--space-5); }

.line-faq__item { margin-bottom: var(--space-6); }
.line-faq__item:last-child { margin-bottom: 0; }
.line-faq__q { font-family: var(--font-serif); color: var(--color-ink); margin-bottom: var(--space-2); }
.line-faq__a { color: var(--color-ink-soft); }
