コンポーネント設計とバリアント
※このページには広告(PR)リンクが含まれます
🎯 このレッスンのゴール:最後の3問に答えられること
- ボタンを多数の画面に配置済みで、全ボタンの角丸を変えたくなりました。本文に沿った方法はどれですか?
- ボタンのDefault・Hover・Disabledなどの状態違いを、1つのセットとして整理する機能はどれですか?
- ボタンの左アイコンを、インスタンスごとに表示・非表示で切り替えられるようにしたい場合、適したプロパティはどれですか?
本文は約5分で読めます。先に問題を頭に入れてから読むと、答えの箇所が見つけやすくなります。
すぐに問題に挑戦する ↓コンポーネントとバリアント — Figmaデザインシステムの核心
コンポーネント機能は、Figmaが他のツールに対して圧倒的な優位性を持つ理由の一つです。一度UIパーツを「コンポーネント」として定義すれば、何十・何百のスクリーンに配置しても、マスターを変更するだけで全箇所が一瞬で更新されます。これはエンジニアのコンポーネント(Reactなど)と同じ思想です。
このレッスンでは、コンポーネントの作成からバリアント・プロパティの設定、ネストコンポーネントまで、実務レベルのデザインシステム構築スキルを習得します。
Figmaコンポーネント — バリアント設計の全体像
コンポーネントの基本概念
マスターコンポーネントとインスタンス
Figmaのコンポーネントには2種類あります。
- ◆マスターコンポーネント(元):
Ctrl/Cmd+Alt+Kで作成。デザインの「定義」を持つ唯一の存在。通常は専用の「Components」ページに置く。 - ◆インスタンス(複製): マスターをコピー&ペーストまたはアセットパネルから配置した複製。マスターの変更が自動で反映される。
💡 インスタンスはマスターの変更を引き継ぎながら、個別のプロパティ(テキスト内容・画像・カラー)だけを上書きできます。これがコンポーネントシステムの真の力です。
コンポーネントの作成手順
- ◆UIパーツをFigmaで作成(例: ボタン)
- ◆フレームまたはグループを選択
- ◆
Ctrl/Cmd+Alt+Kでコンポーネント化(または右クリック→Create component) - ◆菱形アイコンが表示されたらコンポーネント完成
- ◆コンポーネントに分かりやすい名前をつける(例:
Button/Primary/Default)
バリアント(Variants)
バリアントとは
バリアントは、同じコンポーネントの「状態違い」を一つのコンポーネントセットにまとめる機能です。ボタンを例にすると:
- ◆Type: Primary / Secondary / Ghost / Danger
- ◆State: Default / Hover / Pressed / Disabled / Loading
- ◆Size: Small / Medium / Large
これらの組み合わせを個別のコンポーネントとして作ると管理が複雑になりますが、バリアントを使えば一つのセットとして整理できます。
バリアントの作成手順
ステップ1: 複数のコンポーネントを作成
- ◆ボタンのDefault状態をコンポーネント化
- ◆複製(Ctrl/Cmd+D)してHover状態のデザインに変更
- ◆同様にDisabled・Pressed状態も作成
ステップ2: バリアントセットにまとめる
- ◆作成した複数のコンポーネントをすべて選択
- ◆右パネルの「Combine as variants」をクリック
- ◆紫色の点線枠が表示されたらバリアントセット完成
ステップ3: プロパティを命名
- ◆バリアントセットを選択して右パネルの「Variant properties」を確認
- ◆自動生成された「Property 1」を分かりやすい名前に変更(例:
State) - ◆各バリアントの値も命名(Default / Hover / Disabled)
コンポーネントプロパティ
バリアントとプロパティの違い
Figma 2022年以降、コンポーネントプロパティ機能が追加されました。バリアントが「見た目の状態違い」を管理するのに対し、プロパティは「インスタンスのカスタマイズ可能な部分」を定義します。
主なプロパティ種類:
| プロパティ | 用途 | 例 |
|---|---|---|
| Boolean | オン/オフの切り替え | アイコン表示/非表示 |
| Text | テキスト内容の変更 | ボタンラベル |
| Instance swap | 子コンポーネントの差し替え | アイコンの種類変更 |
| Variant | バリアントの選択 | State: Default/Hover |
プロパティの設定手順
- ◆マスターコンポーネントを選択
- ◆右パネルの「Properties」セクションで「+」をクリック
- ◆プロパティの種類を選択して名前と初期値を設定
- ◆インスタンスを選択すると右パネルにプロパティが表示され、個別に変更可能
インスタンスの操作
インスタンスのオーバーライド
インスタンスでは以下の要素を個別にオーバーライド(上書き)できます。
- ◆テキスト内容
- ◆画像・アイコン
- ◆色(カラースタイルが適用されている場合も、別のスタイルや色に変更可能)
- ◆子要素の表示/非表示
マスターへのリセット
インスタンスで変更した内容をマスターに戻したい場合:
- ◆インスタンスを選択
- ◆右クリック → 「Reset all overrides」
インスタンスを切り離す
コンポーネントの連携を解除してインスタンスをフリーな要素に変換したい場合:
- ◆インスタンスを選択
- ◆右クリック → 「Detach instance」(または
Ctrl/Cmd+Alt+B)
⚠️ Detachは不可逆操作です。デタッチ後はマスターの変更が反映されなくなります。本当に必要な場合以外は使わないようにしてください。
ネストコンポーネント(入れ子)
ネストとは
コンポーネントの中に別のコンポーネントを配置することを「ネスト」と言います。例えば、ボタンコンポーネントの中にアイコンコンポーネントを入れると、アイコンの種類だけをインスタンスで切り替えられます。
ネストの典型的な構造:
- ◆
Cardコンポーネント- ◆
Avatarコンポーネント(ネスト) - ◆
Badgeコンポーネント(ネスト) - ◆
Buttonコンポーネント(ネスト)
- ◆
ネストのメリット
- ◆アバター画像を変えるだけで、カード全体が更新される
- ◆ボタンのスタイルをカードインスタンスから直接切り替えられる
- ◆変更が木構造で伝播するため、管理が一元化される
Atomicデザインとの対応
Atomic Designはデザインシステムを5階層で構造化する方法論です。Figmaのコンポーネント機能はこの考え方と完全に一致します。
| 階層 | 内容 | Figmaでの実装 |
|---|---|---|
| Atoms(原子) | ボタン・テキスト・アイコン・インプット | 基本コンポーネント |
| Molecules(分子) | 検索バー・フォームフィールド・カード | Atomsのネスト |
| Organisms(有機体) | ヘッダー・フッター・記事一覧 | Moleculesのネスト |
| Templates | ページレイアウト | フレーム + Organisms |
| Pages | 実際のコンテンツを含む画面 | テンプレートにコンテンツ適用 |
🏋️実践ワーク
- ◆以下の仕様でボタンコンポーネントを作成してください。
- ◆サイズ: 幅120px、高さ44px、角丸8px
- ◆フォント: 14px Medium、色: 白
- ◆背景:
Primary/500(#6366f1)のカラースタイルを適用
- ◆同じボタンをVariantとして4パターン作成してください。
- ◆Default: 背景 #6366f1
- ◆Hover: 背景 #4338ca
- ◆Disabled: 背景 #c7d2fe、テキスト #818cf8
- ◆Loading: 背景 #6366f1、テキストを「処理中...」に変更
- ◆バリアントセットを作成し、インスタンスを3つ配置して、それぞれ異なるStateを設定してください。
- ◆Boolean Propertyを追加して「左アイコンあり/なし」を切り替えられるようにしてください。
📝まとめ
コンポーネントとバリアントはFigmaが提供する最も強力な機能です。一度正しく設計すれば、何百ものスクリーンにわたる変更が一箇所の修正で完了します。プロパティ・インスタンス・ネストを組み合わせることで、柔軟性と一貫性を両立したデザインシステムが構築できます。これでFigmaマスターコースの第一章「基礎編」が完了です。次章ではプロトタイプとHandoffを学びます。
理解度チェック
3問全問正解でこのレッスンが「完了」になり、コースの全レッスンを完了すると修了証が発行されます。何度でも挑戦でき、全問正解すると全問の解説が読めます(不正解のときは正解した問題の数だけ表示され、30秒後に答え直せます)。
Q1.ボタンを多数の画面に配置済みで、全ボタンの角丸を変えたくなりました。本文に沿った方法はどれですか?
Q2.ボタンのDefault・Hover・Disabledなどの状態違いを、1つのセットとして整理する機能はどれですか?
Q3.ボタンの左アイコンを、インスタンスごとに表示・非表示で切り替えられるようにしたい場合、適したプロパティはどれですか?
「実践Webデザイン - Figma完全マスター講座」全12レッスンを無料で修了しよう
- ✓ 理解度チェックの採点と、合格レッスンの記録
- ✓ 全レッスン合格で修了証を発行(URLでシェア・LinkedInに追加できます)
- ✓ 全レッスンの解説動画と、続きから再開できる学習ダッシュボード
完全無料・クレジットカード不要
このレッスンで使うツール・次の学び方 PR
Audible(Amazonのオーディオブック) ↗ビジネス書・マーケティングの本を通勤中や家事の合間に聴いて学べる。プレミアムプランは30日間の無料体験あり(2026年11月時点)

関連するブログ記事
関連レッスン(他のコースから)
デザインシステム構築・運用上級講座
コンポーネントライブラリの設計
コンポーネントライブラリは、再利用可能なUIパーツの集合です。
30分本文は無料で閲覧可
デザインシステム構築・運用上級講座
デザインシステムとは?なぜ今必要なのか
デザインシステムとは、プロダクトやブランドの一貫性を保つための包括的な設計基盤です。
25分無料公開
デザインシステム構築・運用上級講座
レスポンシブデザインシステム
現代のWebプロダクトは、スマートフォン、タブレット、デスクトップ、大画面モニターなど、多様なデバイスで利用されます。
25分本文は無料で閲覧可
デザインシステム構築・運用上級講座
デザインシステムのガバナンスと運用
デザインシステムは構築して終わりではなく、継続的な運用とガバナンス(統治の仕組み)が必要です。
25分本文は無料で閲覧可
デザインシステム構築・運用上級講座
デザインシステムの未来とAI活用
デザインシステムの世界は急速に進化しています。
20分本文は無料で閲覧可
UI/UXデザイン実践講座
UI/UXデザインの基本概念と違い
「UIデザイナー」と「UXデザイナー」という言葉は、今や求人票やポートフォリオで当たり前に使われています。
30分無料公開