コンテンツへスキップ

タイポグラフィー

文字の力でプロダクトを際立たせる ✨

タイポグラフィは、UIデザインの印象やコンテンツ理解度を左右する重要な要素です。しかし、プロジェクトが進むにつれ「フォントサイズのばらつき」や「行間・文字間隔の不統一」など、整合性を取るのが難しくなる場面も少なくありません。

本ドキュメントでは、共通化されたタイポグラフィ変数を使い、開発効率とデザイン品質を同時に高める方法をご紹介します。 統一された文字組みを手に入れて、ユーザーに読みやすく、かつチームでも管理しやすいタイポグラフィを実現しましょう。

1. タイポグラフィ変数を使うメリット 🚀

  • 一貫性の向上: どのページやコンポーネントでも、同じフォントサイズ・行間・文字間隔を適用可能
  • 保守性の高さ: 変数を変更すれば一括で全体をリファクタリングできる
  • コミュニケーションコスト削減: デザイナーと開発者の間で、タイポグラフィに関する指示や調整がスムーズになる

たとえば --font-lg: 1.125rem; と設定していれば、約18pxに相当するフォントサイズとして利用できます。コンテンツのメリハリを出すのに最適です。

2. 基本のスタイルを押さえよう 📝

見出しや段落には、基本のフォントサイズ・行間・フォントファミリが適用されます。デフォルトのままでも十分に整った文字組みを提供しつつ、細かいカスタマイズも容易に行えます。

見出し (h1 ~ h6)

  • 大きくインパクトのあるサイズ
  • 適度な行間を確保して、可読性とデザイン性を両立

段落 (p)

  • 読みやすさを重視した適切な行間
  • 一文一文が詰まりすぎない快適なレイアウト

以下は、カスタムコンポーネント <TypographyPalette> での実際のスタイル例です。

Typography Palette

LabelFont Size (rem / px)Line Height TokenUsagePreview
XS
--font-xs12px
--lh-tightMicrocopy, Footnotes
SM
--font-sm14px
--lh-baseCaptions, Subtexts
BASE
--font-base16px
--lh-baseBody Text, Default
LG
--font-lg18px
--lh-baseSubheadings, Emphasis
XL
--font-xl20px
--lh-headingSection Headings
2XL
--font-2xl24px
--lh-headingH3/H2 Headings
3XL
--font-3xl30px
--lh-headingH2/H1 Headings
4XL
--font-4xl36px
--lh-headingProminent H1
5XL
--font-5xl48px
--lh-headingHero Titles

3. コアとなる変数例

  • --font-family-sans: ベースで使用するサンセリフ体

  • --font-family-serif: 長文などに適したセリフ体

  • --font-family-monospace: コード表示に便利な等幅フォント

  • --font-sm: 小さめの文字サイズ(例: 0.875rem)

  • --font-base: 標準的な文字サイズ(例: 1rem)

  • --font-lg: 大きめの文字サイズ(例: 1.125rem)

  • --lh-base: 段落向け行間(例: 1.5)

  • --lh-heading: 見出し向け行間(例: 1.2)

4. リアルタイムチェックツールの活用 🔍

本プロジェクトでは、タイポグラフィ設定の整合性を確認できるリアルタイムチェックツールを導入予定です。 指定したフォントサイズや行間・文字間隔が正しく反映されているか自動で診断し、以下のメリットをもたらします。

設定ミスを早期発見

実装段階でタイポグラフィが不揃いになりそうな箇所をすぐに検知できます。

チーム全員が同じ基準で開発

大人数でも同じ変数を使うため、デザイン崩れを防ぎながら作業を進められます。

5. さらに上を目指すためのヒント ✨

レター・スペーシング(文字間隔)

多言語UIでは文字詰めが課題となりがち。--tracking-wide--tracking-wider を適用し、日本語・英語混在時の窮屈感を緩和しましょう。

メディアクエリとの組み合わせ

モバイル・タブレット・デスクトップなど、デバイスごとに変数を使い分けると、ユーザーの見やすさがさらに向上します。

共通コンポーネントへの組み込み

<typography-palette> のような専用コンポーネントに変数をまとめ、各プロジェクトへ横展開すると適用漏れを防止可能です。

まとめ 🍀

  • 文字の一貫性がユーザー体験を向上させる
  • 変数管理により保守が容易になり、プロジェクト全体の品質が上がる
  • リアルタイムチェックツールなどを併用するとさらにミスを最小化できる

ぜひ、共通化されたタイポグラフィ変数を活用し、プロダクト全体の文字組みを安定化させてみてください。 「読みやすさ」と「開発効率」の両立を実現する大きな一歩となるはずです!