こんにちは。株式会社ファストコーディングのWebディレクタの働くおかんです。今回も読みやすさや見やすさ、という観点で、最近私が対応したプロジェクトでの対応例をご紹介します。
デザインで”読みやすさ”を考える
私も(もうすぐ)40代になるんですが、日に日に感じるのは、デザインの細部がWebサイトの印象に大きな影響を与える、ということです。歳を重ねるにつれ、視力が若い世代ほど鮮明でないこと、コントラスト感度が低下していること、近点距離の変化など、視覚特性が変わっていくものですね。それをデザイン、ではなくて、CSSの観点で考慮しているかどうかで、いいデザインであっても感覚的に読みづらいなって思ってしまうんです。
今回、「読みやすさ」に課題を持つプロジェクトを対応したときのコード例をご紹介しようと思います。単にフォントサイズや行間だけでなく、文字の扱い、配色設計、インタラクション、さらには実際の検証方法にまで踏み込んで解説していきます。
デザイン改善の具体的アプローチ
1. フォント設計の多層化
単にフォントサイズを大きくするだけでなく、流動的なサイズ調整や段階的に切り替え可能なサイズ設定が有効です。たとえば、clamp()
を用いると画面幅に応じてフォントサイズを自動調整できます。また「標準」「コンフォート」「ラージ」といったモードを用意すれば、ユーザーが好みに合わせて文字サイズを選択できます。
:root {
--size-body: clamp(1rem, 0.9rem + 0.5vw, 1.2rem);
--line-height: 1.6;
}
body {
font-size: var(--size-body);
line-height: var(--line-height);
}
html.large {
--size-body: 1.25rem;
--line-height: 1.8;
}
この設定により、デバイス幅やユーザーの選択に応じて自然に読みやすいサイズに調整されます。
2. 日本語組版の工夫
日本語特有の組版ルールを意識すると、文章の流れがよりスムーズになります。禁則処理や改行位置を最適化するために以下のような指定を行います。
html[lang="ja"] {
line-break: strict;
word-break: keep-all;
overflow-wrap: anywhere; /* 英数字や長いURLに対応 */
}
p {
letter-spacing: 0.04em;
}
これにより、句読点や英数字が不自然に折り返されることを防ぎ、読みやすさを確保します。
3. 配色設計とテーマの柔軟性
みなさん、ブランドカラーの強調は重要ですが、背景と文字のコントラスト不足に気をつけていますか?。小さなコントラストの違いが40代以上のユーザーにとっては大きな障壁となります。単純に「濃い色と薄い色」を使うのではなく、コントラスト比を数値で測り、基準を満たすことが求められます。
WCAGに基づくコントラスト比をクリアすることは必須です。その上でライトモード、ダークモード、高コントラストモードといったテーマをCSS変数で用意しておくと、ユーザーの利用環境に柔軟に対応できます。
:root {
--surface: #FFFFFF;
--text: #1A1A1A;
--accent: #0B63E5;
}
@media (prefers-color-scheme: dark) {
:root {
--surface: #111315;
--text: #E6E9ED;
--accent: #6DA7FF;
}
}
body {
background: var(--surface);
color: var(--text);
}
a {
color: var(--accent);
text-decoration: underline;
}
a:focus-visible {
outline: 3px solid var(--accent);
outline-offset: 3px;
}
4. インタラクションの強化
リンクやボタンは明確に視覚的な手がかりを与える必要があります。色だけに頼らず、下線やフォーカスリングを活用し、タップ領域も44px以上を確保します。
button {
min-height: 44px;
min-width: 44px;
padding: 12px 16px;
border-radius: 6px;
background-color: var(--accent);
color: #fff;
border: none;
}
button:focus-visible {
outline: 3px solid color-mix(in srgb, var(--accent) 70%, white);
outline-offset: 4px;
}
5. レイアウトと可読性の両立
文章の横幅が広すぎると読みづらくなります。理想は1行あたり全角35〜45文字程度に収めることです。これをCSSでコントロールすると視線移動が楽になります。
.article {
max-width: 45ch;
margin-inline: auto;
}
.article p {
margin: 0 0 1.2em;
}
6. パフォーマンスの考慮
可読性は表示速度にも依存します。Webフォントはサブセット化し、font-display: swap
を指定して初期描画を遅らせないようにします。
@font-face {
font-family: "NotoSansJP";
src: url(/fonts/NotoSansJP.var.woff2) format("woff2-variations");
font-weight: 200 900;
font-display: swap;
}
body {
font-family: "NotoSansJP", system-ui, sans-serif;
}
実際のプロジェクト事例
健康情報サイトのリニューアル時、フォントサイズを18pxから流動的に調整できるようにし、ダークモードを導入しました。さらに、記事本文の横幅を45字程度に制御したことで「読みやすくなった」との声が多数寄せられました。また、主要ボタンの領域を拡大したことが行動率の改善につながりました。
まとめ
40代以上のユーザーを意識したデザインは、単なる見た目の改善ではなく、情報の受け取りやすさを保証するための仕組みそのものです。フォント、配色、レイアウト、インタラクション、パフォーマンスの全てを総合的に最適化することが、読みやすく使いやすい体験を実現します。
私たち株式会社ファストコーディングは、こうした実務的なデザイン改善をサポートしています。お気軽にご相談ください。