
こんにちは!静岡県浜松市でWEBデザイナーをしています小瀧です。
みなさん、配色の作業って毎回けっこう迷いませんか?
- テーマカラーの濃淡バリエーションがうまく作れない
- 背景やテキストのコントラストを自動で調整したい
- 明度や彩度をキープしながら色だけ変えたい
そんな方に朗報です!
CSSに新たに登場した先進的な色空間 — HWB / LAB / LCH — を使えば、配色の自動化・構造化が簡単に実現できます。
色空間とは?RGBやHSLだけじゃない!
これまでCSSでよく使われてきた色指定方法といえば
- HEX(#ff6600)
- RGB(rgb(255, 102, 0))
- HSL(hsl(30, 100%, 50%))
しかし、これらの色空間は人間の知覚に完全には一致していないため、「同じ明るさに見える色を作る」「コントラストを維持する」といった調整には不向きです。
そこで登場したのが、CSS Color Module Level 4 で追加された以下の3つの色空間です。
HWB:Hue, Whiteness, Blackness
hwb(色相, 白さ%, 黒さ%) という形式で指定でき、色相をベースに白・黒の割合を足すという考え方です。
例:
color: hwb(200 20% 0%);
メリットは 自然な色の調整が直感的にできる こと。
白を足せば淡く、黒を足せば重たく、どの色相にもスムーズに使えます。
LAB:人間の視覚に近い色モデル
lab(L a b) 形式で、Lが明度、aとbが色の方向(赤⇔緑、黄⇔青)を示します。
Photoshopなどでも使われており、「視覚的な明るさや彩度の再現性」が極めて高いのが特長。
例:
color: lab(70% 20 30);
主な用途
- ブランドカラーの濃淡バリエーションを自然に作りたい
- 背景と文字のコントラスト比を安定させたい
- 「印刷物に近い」色再現を目指したい
LCH:色の輪郭をキープしたまま色相操作
lch(L C H) 形式で、明度(Lightness)・彩度(Chroma)・色相(Hue)を分離してコントロールできる、最も論理的でデザイン向きの色空間です。
例:
color: lch(60% 100 40);
たとえば lch(60% 80 0) → lch(60% 80 60) → lch(60% 80 120) というように色相だけを変えると、明度や彩度を固定したまま色を回せるため、配色のパターン化・自動生成に最適です。
応用例:CSSカスタムプロパティとの併用
:root { --base-hue: 200; --base-color: hwb(var(--base-hue) 20% 0%);
--light-color: hwb(var(--base-hue) 10% 0%);
--dark-color: hwb(var(--base-hue) 40% 10%); }
.button { background: var(--base-color); }
.button:hover { background: var(--dark-color); }
このようにすれば、色相だけを変えるとカラーパレット全体が変化するという、「テーマの自動配色」が実現できます。
ブラウザ対応状況(2025年)
- HWB: Chrome ✅ / Edge ✅ / Safari ✅ / Firefox ✅
- LAB・LCH: Chrome ✅ / Edge ✅ / Safari ✅ / Firefox ✅(最新版)
2024年以降のモダンブラウザではすべて安定して使えるようになっていますが、IE・古いAndroidブラウザでは使えません。
フォールバック指定のコツ
.button { background: #0e6efd; /* fallback */
background: lch(60% 80 250); }
まとめ
CSSの先進色空間(HWB / LAB / LCH)を使えば、色の調整が「見た目ベース」ではなく「数値ベース」になるため、配色が論理的に、そして再現性高く行えるようになります。
- HWB:直感的に自然な色調整
- LAB:人間の目に近い明度と彩度制御
- LCH:色相・明度・彩度の分離で配色自動化に最適
もう「なんとなく明るく見える」ではなく、CSSだけで戦略的な配色設計をはじめてみましょう!













