DRAFT
0 / 40

デザインシステム

人間にも、AI にも、やさしいデザインシステムを目指して

📅 2026-03-17・Mon
谷口 健太 (Kenta Taniguchi)

デザインシステム
DRAFT

アジェンダ

  1. 基礎
  2. コンポーネント
  3. パターン
デザインシステム
DRAFT

アジェンダ

  1. 基礎
  2. コンポーネント
  3. パターン
デザインシステム › 基礎 › カラー
DRAFT

extension カスタム

アクセントカラー

スライドの個性を表現するプライマリカラー。リンク・ハイライト・インタラクション要素に使用する

Name Hex on 50 (Light) on 950 (Dark)
accent-50 ■ #F7F5FF FAIL(1.05:1) AAA(17.47:1)
accent-100 ■ #E5E0FF FAIL(1.13:1) AAA(14.76:1)
accent-200 ■ #CEC2FF FAIL(1.45:1) AAA(11.48:1)
accent-300 ■ #B8A6FF FAIL(1.86:1) AAA(8.92:1)
accent-400 ■ #A48BFF FAIL(2.40:1) AA(6.93:1)
accent-500 ■ #906EFF AA Large(3.16:1) AA(5.26:1)
accent-600 ■ #7F54FF AA Large(4.01:1) AA Large(4.14:1)
accent-700 ■ #6637DF AA(5.82:1) FAIL(2.85:1)
accent-800 ■ #4624A0 AAA(9.16:1) FAIL(1.81:1)
accent-900 ■ #271060 AAA(13.92:1) FAIL(1.19:1)
accent-950 ■ #190940 AAA(16.02:1) FAIL(1.04:1)

Generated by Kigen — #7F5AF0, Tailwind CSS, Shift 0.30

デザインシステム › 基礎 › カラー
DRAFT

extension カスタム

スレートカラー

アクセントカラーから派生したニュートラルカラー。背景・テキスト・ボーダー要素に使用する

Name Hex on 50 (Light) on 950 (Dark)
slate-50 ■ #F1F0F3 FAIL(1.00:1) AAA(16.61:1)
slate-100 ■ #DDDBE3 FAIL(1.21:1) AAA(13.75:1)
slate-200 ■ #BFBCCB FAIL(1.64:1) AAA(10.12:1)
slate-300 ■ #A5A0B6 FAIL(2.23:1) AAA(7.45:1)
slate-400 ■ #8D87A2 AA Large(3.02:1) AA(5.49:1)
slate-500 ■ #77708F AA Large(4.11:1) AA Large(4.04:1)
slate-600 ■ #675F80 AA(5.25:1) AA Large(3.16:1)
slate-700 ■ #504A66 AAA(7.36:1) FAIL(2.26:1)
slate-800 ■ #383347 AAA(10.68:1) FAIL(1.56:1)
slate-900 ■ #1F1C29 AAA(14.72:1) FAIL(1.13:1)
slate-950 ■ #121019 AAA(16.61:1) FAIL(1.00:1)

Generated by Kigen — #77708F, Tailwind CSS, Shift 0.00

デザインシステム › 基礎 › カラー
DRAFT

extension カスタム

セマンティックカラー

アクセントカラーとスレートカラーの 2 つのパレットを意味付けしたもの。テーマ切替はこの層で吸収する

用途 CSS Variable Utility Class Light Dark
ページ背景 --color-bg ■ slate-50 ■ slate-950
サーフェス --color-surface ■ slate-100 ■ slate-900
サーフェス (アクセント) --color-surface-accent .bg-accent 未定義 ■ accent-900
ストライプ --color-stripe 未定義 ■ slate-900
ボーダー --color-border ■ slate-200 ■ slate-800
見出しテキスト --color-heading .text-heading ■ slate-900 ■ slate-50
本文テキスト --color-text ■ slate-700 ■ slate-300
補助テキスト --color-muted .text-muted ■ slate-500 ■ slate-500
アクセント --color-accent .text-accent ■ accent-700 ■ accent-500
ハイライト --color-highlight .highlight 未定義 ■ accent-300
リンク --color-link .text-link ■ accent-600 ■ accent-600
コードテキスト --color-code 未定義 ■ accent-300
コード背景 --color-code-bg 未定義 ■ slate-800
コードボーダー --color-code-border 未定義 ■ slate-700
デザインシステム › 基礎 › タイポグラフィ
DRAFT

extension カスタム

フォントファミリー

書体を定義するデザイントークン。閲覧環境に依存しないよう、すべて Google Fonts から読み込み

Sans-serif

Inter, Noto Sans JP, sans-serif

英文は Inter、和文は Noto Sans JP を使用

ABCDEFGabcdefg あいうえお 漢字表示 0123456789

Monospace

JetBrains Mono, monospace

コードは JetBrains Mono JP を使用

const config = { color: '#906EFF'};
デザインシステム › 基礎 › タイポグラフィ
DRAFT

extension カスタム

タイプスケール

文字サイズと付随スタイルを制御するデザイントークン。.text-* クラスで適用

2.2em .text-3xl
1.75em .text-2xl
1.4em .text-xl
1.15em .text-lg
1em
0.85em .text-sm
0.7em .text-xs
0.55em .text-2xs

h1・ヒーローテキスト
h2
数値の強調・キーメッセージ
サブタイトル
h3・h4・本文・リスト
テーブル
キャプション・補助テキスト
最小テキスト

デザインシステム › 基礎 › タイポグラフィ
DRAFT

extension カスタム

フォントウェイト

文字の太さを制御するデザイントークン。.font-* クラスで適用

Light · 300

.font-light

繊細で軽やかな印象を与える。キャプションや装飾的なテキストで使う

Regular · 400

.font-normal

長文を自然に読ませる標準の太さ。段落やリストなど本文テキストのベースライン

Medium · 500

.font-medium

本文より少し強い存在感を持たせる。強調テキストやサブタイトルに最適

Bold · 700

.font-bold

視認距離が遠いスライドでも一目でわかる太さ。見出しやタイトルで使う

デザインシステム › 基礎 › タイポグラフィ
DRAFT

extension カスタム

行間

行と行の間隔を制御するデザイントークン。.leading-* クラスで適用

100%

.leading-none

行が密着し窮屈な印象。見出しやラベルなど単行テキスト向き

125%

.leading-tight

やや詰まった印象。見出しやカード内の短文に向く

137.5%

.leading-snug

程よく詰まり情報密度が高い。リストや表の補足テキストに

150%

.leading-normal

標準的な読みやすさ。本文テキストのベースライン

162.5%

.leading-relaxed

ゆったりと読みやすい。長文の段落やキャプションに最適

200%

.leading-loose

行間が広く開放的。注釈や余白を活かしたレイアウトに

デザインシステム › 基礎 › タイポグラフィ
DRAFT

extension カスタム

字間

文字と文字の間隔を制御するデザイントークン。.tracking-* クラスで適用

tight · -0.025em

.tracking-tight

文字を詰めて密度を高める。大きなテキストの引き締めや、見出しの一体感を出したい時に

wide · +0.05em

.tracking-wide

文字を広げて開放感を出す。小さいテキストの視認性向上や、ラベル・キャプションに

デザインシステム › 基礎 › スペーシング
DRAFT

extension カスタム

スペーシングスケール

Tailwind 式の 4px ベース。数値 × 4px で算出、24 以降は 8 刻み

CSS Variable px
--space-1 4
--space-2 8
--space-3 12
--space-4 16
--space-6 24
--space-8 32
--space-12 48
--space-16 64
--space-20 80
--space-24 96
--space-32 128
--space-40 160
--space-48 192
--space-56 224
--space-64 256

使用箇所

  • カード
  • ヘッダーグループ
  • テーブル
  • タイムライン
  • チャット
  • プロフィール
  • 画像の絶対配置 .t-* .r-* .b-* .l-*
  • スペーシングユーティリティ .mt-* .mb-* .pt-* .pb-* .px-* .mx-auto
デザインシステム › 基礎 › スペーシング
DRAFT

extension カスタム

マージン & パディング

要素の余白を制御するデザイントークン。.mt-* .mb-* .pt-* .pb-* .px-* クラスで適用

margin-top

.mt-0 .mt-4 .mt-6 .mt-8 .mt-12 .mt-16 .mt-24 .mt-32

要素の上に外側余白を追加する

margin-bottom

.mb-0 .mb-4 .mb-6 .mb-8 .mb-12 .mb-16 .mb-24 .mb-32

要素の下に外側余白を追加する

padding-top

.pt-0 .pt-1 .pt-2 .pt-4 .pt-8 .pt-12 .pt-16

要素の上に内側余白を追加する

padding-bottom

.pb-0 .pb-1 .pb-2 .pb-4 .pb-8 .pb-12 .pb-16

要素の下に内側余白を追加する

padding-x

.px-0 .px-1 .px-2 .px-4 .px-8 .px-12 .px-16

要素の左右に内側余白を追加する

デザインシステム › 基礎 › エレベーション
DRAFT

extension カスタム

シャドウ

要素の浮きを表現するデザイントークン。.shadow-* クラスで適用

none

.shadow-none

影なし。フラットな要素に

sm

.shadow-sm

わずかな浮き。カードやサーフェスの基本レベル

md

.shadow-md

中程度の浮き。ホバー状態やアクティブなカードに

xl

.shadow-xl

大きな浮き。モーダルやオーバーレイ要素に

デザインシステム › 基礎 › エレベーション
DRAFT

extension カスタム

角丸

要素の角の丸みを制御するデザイントークン。.rounded-* クラスで適用

none · 0px

.rounded-none

シャープな印象。テーブルやハイライトに

sm · 4px

.rounded-sm

わずかな丸み。インラインコードやバッジに

md · 8px

.rounded-md

カードやコードブロックの標準。最も使用頻度が高い

lg · 12px

.rounded-lg

やわらかい印象。大きめのカードやパネルに

xl · 16px

.rounded-xl

丸みが強い。チャットの吹き出しやトーストに

full · 9999px

.rounded-full

完全な丸。アバターやタグ、ピルボタンに

デザインシステム › 基礎 › メタファー
DRAFT

extension カスタム

アイコン

リガチャ方式の Material Symbols Outlined (Google Fonts) を使用。.icon-* クラスでサイズを制御

記法

  • ==icon_name=={.icon} で記述
  • 色はテキスト色クラス (.text-accent など) で制御

サイズ

info .icon-3xl · 5em
info .icon-2xl · 4em
info .icon-xl · 3em
info .icon-lg · 2em
info .icon · 1.2em
info .icon-sm · 1em
info .icon-xs · 0.8em

デザインシステム › 基礎 › メタファー
DRAFT

extension カスタム

代表アイコン

よく使うアイコンの一覧。Material Symbols で検索可能

home
home

search
search

close
close

add
add

edit
edit

delete
delete

info
info

warning
warning

star
star

rocket
rocket

person
person

settings
settings

schedule
schedule

visibility
visibility

check
check

link
link

bolt
bolt

lightbulb
lightbulb

デザインシステム
DRAFT

アジェンダ

  1. 基礎
  2. コンポーネント
  3. パターン
デザインシステム › コンポーネント › レイアウト
DRAFT

extension カスタム

カラム

::::col で列数と比率を指定するグリッドレイアウト。子要素は :::col-item / :::card を使用

左 (60%)

右 (40%)

::::col 3 2
:::card
左 (60%)
:::
:::card
右 (40%)
:::
::::
記法 列数 幅の比率
::::col 2 / ::::col 1 1 / ::::col 2 50 : 50
::::col 3 2 2 60 : 40
::::col 3 / ::::col 1 1 1 3 33 : 33 : 33
::::col 1 3 1 3 20 : 60 : 20
デザインシステム › コンポーネント › レイアウト
DRAFT

extension カスタム

センター

:::center でコンテンツを上下左右中央に配置。{.top} / {.bottom} で縦位置を変更可能

上下左右中央に配置

:::center
上下左右中央に配置
:::
:::center{.top}
上寄せ・左右中央に配置
:::
:::center{.bottom}
下寄せ・左右中央に配置
:::
デザインシステム › コンポーネント › レイアウト
DRAFT

package_2 ビルトイン

インライン画像

![](path) でスライドにインライン画像を挿入する

![w:160](./images/tanu.jpg)

![w:120](./images/tanu.jpg){.text-center}

![w:80](./images/tanu.jpg) {.text-center}
記法 効果
![](path) デフォルト(幅 100%)
![w:320](path) 幅 320px
![h:200](path) 高さ 200px
![w:320 h:200](path) 幅 × 高さ指定
デザインシステム › コンポーネント › レイアウト
DRAFT

package_2 ビルトイン

背景画像

![bg](path) でスライド全体を画像で埋める

![bg left](./images/tanu.jpg)
記法 効果
![bg](path) フル背景
![bg right](path) 右半分に背景
![bg left:30%](path) 左 30% に背景
![bg contain](path) 収まるようにフィット
![bg cover](path) はみ出してでも埋める
デザインシステム › コンポーネント › レイアウト
DRAFT

extension カスタム

画像の絶対配置

.abs + 位置クラスで画像を自由配置。上下 (t / b) と左右 (l / r) の 2 軸を必ずセットで指定する

![w:120](./images/tanu.jpg){.abs .b-16 .r-16}
軸 クラス
上 (top) .t-0 .t-4 .t-8 .t-12 .t-16 .t-20 .t-24 .t-32 .t-40 .t-48 .t-56 .t-64
下 (bottom) .b-0 .b-4 .b-8 .b-12 .b-16 .b-20 .b-24 .b-32 .b-40 .b-48 .b-56 .b-64
左 (left) .l-0 .l-4 .l-8 .l-12 .l-16 .l-20 .l-24 .l-32 .l-40 .l-48 .l-56 .l-64
右 (right) .r-0 .r-4 .r-8 .r-12 .r-16 .r-20 .r-24 .r-32 .r-40 .r-48 .r-56 .r-64
デザインシステム › コンポーネント › コンテンツ
DRAFT

extension カスタム

カード

:::card で背景・ボーダー・角丸を持つ装飾ブロック。カラム内で :::col-item の代替としても使える

デフォルト

背景色 + 控えめなシャドウで情報をグループ化

アクセント背景

色で区別が必要なケースに

シャドウ付き

浮き上がる表現で注目を集める

:::card
### デフォルト
背景色 + 控えめなシャドウで情報をグループ化
:::

:::card{.bg-accent}
### アクセント背景
色で区別が必要なケースに
:::

:::card{.shadow-md}
### シャドウ付き
浮き上がる表現で注目を集める
:::
デザインシステム › コンポーネント › コンテンツ
DRAFT

extension カスタム

ショーケース

:::showcase で画像 + タイトル + 説明を表示。col-item / card と同列で col 内に配置。画像またはユニコード絵文字が使用可能

データ分析

データ分析

組織のデータを活用した意思決定

🤝

チームワーク

協力して目標を達成する

::::col

:::showcase
![データ分析](./images/data-analysis.svg)
### データ分析
組織のデータを活用した意思決定
:::

:::showcase
🤝
### チームワーク
協力して目標を達成する
:::

::::
デザインシステム › コンポーネント › コンテンツ
DRAFT

extension カスタム

見出しグループ

:::hgroup で見出しとキャプションをグループ化。手動のスタイル指定を不要にする

見出し

キャプション

Before

## 見出し{.mb-0}
キャプション{.text-xs .text-muted .mb-4}

<style scoped>h2 {padding-bottom: 0}</style>

After

:::hgroup
## 見出し
キャプション
:::
デザインシステム › コンポーネント › コンテンツ
DRAFT

extension カスタム

ステートメント

:::statement で 1 つのメッセージを全画面で見せる。手動のスタイル指定を不要にする

テキストを
ドンと見せる

Before

テキストを
==ドンと=={.text-accent}見せる
{.text-3xl .text-center .font-bold .leading-relaxed .text-heading}

<style scoped>section { justify-content: center; }</style>

After

:::statement
テキストを
==ドンと=={.text-accent}見せる
:::
デザインシステム › コンポーネント › コンテンツ
DRAFT

extension カスタム

トピック

:::topic でセクション内のトピック切り替えを示す。h2 がアクセント、p がミュート

代表値

データの中心を表す指標

:::topic
## 代表値
データの中心を表す指標
:::

_paginate: skip との併用を推奨

デザインシステム › コンポーネント › コンテンツ
DRAFT

extension カスタム

タイムライン(ラベルあり)

::::timeline-item 内に :::timeline-label を配置。{.active} で強調

2024 年

企画

アイデアを固める

2025 年

開発

実装を進める

2026 年

リリース

本番デプロイ

:::::timeline-vertical
::::timeline-item
:::timeline-label
2024年
:::
### 企画
アイデアを固める
::::

::::timeline-item{.active}
:::timeline-label
2025年
:::
### 開発
実装を進める
::::

::::timeline-item
:::timeline-label
2026年
:::
### リリース
本番デプロイ
::::
:::::
デザインシステム › コンポーネント › コンテンツ
DRAFT

extension カスタム

タイムライン(ラベルなし)

:::timeline-label を省略すると、ラベル列を詰めてコンパクトに表示

企画

アイデアを固める

開発

実装を進める

リリース

本番デプロイ

:::::timeline-vertical
::::timeline-item
### 企画
アイデアを固める
::::

::::timeline-item{.active}
### 開発
実装を進める
::::

::::timeline-item
### リリース
本番デプロイ
::::
:::::
デザインシステム › コンポーネント › コンテンツ
DRAFT

extension カスタム

チャット

::::chat-left / ::::chat-right で LINE 風の会話 UI。アバターは Unicode 絵文字・画像の両方に対応

🧑‍💻

後輩

情報が多くて見づらいです…

たぬ

:::card で囲むといいよ

::::col で横に並べてみて

:::::chat
::::chat-left
:::chat-avatar
🧑
:::
:::chat-name
後輩
:::
:::chat-message
情報が多くて見づらいです…
:::
::::
::::chat-right
:::chat-avatar
![](./images/tanu.jpg)
:::
:::chat-name
たぬ
:::
:::chat-message{.bg-accent}
`:::card` で囲むといいよ
:::
:::chat-message{.bg-accent}
`:::col` で横に並べてみて
:::
::::
:::::
デザインシステム › コンポーネント › コンテンツ
DRAFT

extension カスタム

プロフィール

Caption text is here.

デザインシステム › コンポーネント › コンテンツ
DRAFT

extension カスタム

バッジ

{.badge} でスライド右上にピル型のラベルを表示する。アイコンやテキストは自由に指定可能

extension カスタム

package_2 ビルトイン

β版

==extension=={.icon-sm} カスタム {.badge}
==package_2=={.icon-sm} ビルトイン {.badge}
β版 {.badge}
デザインシステム › コンポーネント › ビジュアライゼーション
DRAFT

extension カスタム

Mermaid

```mermaid コードブロックで記述。ビルド時に SVG 化される。テーマカラーは .mermaidrc.json で一括管理

diagram

flowchart LR
    A[入力] --> B{判定}
    B -->|Yes| C[処理A]
    B -->|No| D[処理B]
    C --> E[出力]
    D --> E
クラス max-height 用途
.mermaid-xl 560px 図のみ
.mermaid-lg 500px 見出し + 図
デフォルト 440px 見出し + 図 + 説明
.mermaid-sm 320px 図 + 箇条書き
デザインシステム › コンポーネント › ビジュアライゼーション
DRAFT

extension カスタム

Vega-Lite

```vega-lite コードブロックで JSON spec を記述。ビルド時に SVG 化される。テーマは .vegaliterc.json で一括管理

visualization

{
  "$schema": "...",
  "data": { "values": [...] },
  "mark": {
    "type": "line",
    "point": true
  },
  "encoding": {
    "x": {"field": "month"},
    "y": {"field": "sales"}
  }
}
デザインシステム
DRAFT

アジェンダ

  1. 基礎
  2. コンポーネント
  3. パターン
デザインシステム › パターン
DRAFT

extension カスタム

タイトルスライド

Caption text is here.

デザインシステム › パターン
DRAFT

extension カスタム

アジェンダスライド

Caption text is here.

デザインシステム › パターン
DRAFT

extension カスタム

コンテンツスライド

Caption text is here.

デザインシステム › パターン
DRAFT

extension カスタム

スライド構造

Caption text is here.