モーションデザインの体系化
※このページには広告(PR)リンクが含まれます
🎯 このレッスンのゴール:最後の3問に答えられること
- カードが下からふわっと現れるアニメーションを実装します。本文がパフォーマンスの観点で推奨する、動かすプロパティはどれですか。
- OSでアニメーションの軽減(prefers-reduced-motion: reduce)を希望しているユーザーへの対応として、本文に沿うものはどれですか。
- モーダルの出現を200ms ease-outで設計しました。閉じるときの消失アニメーションはどう設計するのが自然とされていますか。
本文は約3分で読めます。先に問題を頭に入れてから読むと、答えの箇所が見つけやすくなります。
すぐに問題に挑戦する ↓モーションデザインの体系化
はじめに
モーション(アニメーション)はUIの重要な構成要素でありながら、デザインシステムで体系化されることが少ない領域です。一貫性のないアニメーションはユーザーを混乱させ、パフォーマンスにも悪影響を与えます。この章では、モーションをトークンとガイドラインで体系化する方法を学びます。
モーションの役割
UIにおけるアニメーションには明確な目的があります。
- ◆フィードバック: ユーザーの操作に対する視覚的な応答。ボタン押下時のリップル効果など
- ◆状態遷移: 画面間やコンポーネント間の遷移を滑らかにし、空間的な関係を伝える
- ◆注意誘導: 重要な変更や新しい要素にユーザーの視線を誘導する
- ◆空間認知: 要素がどこから来てどこへ行くのかを示し、UIの構造を理解しやすくする
モーショントークンの設計
アニメーションの値をトークンとして定義します。
- ◆Duration(持続時間): instant(0ms)、fast(100ms)、normal(200ms)、slow(300ms)、slower(500ms)
- ◆Easing(イージング): ease-in(加速)、ease-out(減速)、ease-in-out(加速→減速)、spring(バウンス)
- ◆Delay(遅延): コンポーネントの出現順序を制御。stagger(50ms間隔)で連続出現効果
- ◆Scale(変化量): 要素のサイズ変化幅。subtle(0.98→1.0)、moderate(0.9→1.0)、dramatic(0→1.0)
パターン別モーション定義
UIの各パターンに適切なモーションを割り当てます。
- ◆出現: フェードイン(opacity 0→1)+ スライドアップ(translateY 8px→0)。200ms ease-out
- ◆消失: フェードアウト(opacity 1→0)。150ms ease-in。出現より短い方が自然
- ◆展開: アコーディオンの開閉。300ms ease-in-out。高さのtransition
- ◆トースト: 右端からスライドイン。300ms ease-out。5秒後に自動フェードアウト
- ◆モーダル: 背景のフェード + コンテンツのスケールアップ(0.95→1.0)。200ms ease-out
パフォーマンスへの配慮
アニメーションがパフォーマンスに与える影響を最小化します。
- ◆GPU対応プロパティ: transform と opacity のみをアニメーションさせる。width、height、topなどは避ける
- ◆will-change: アニメーション対象要素にwill-changeを設定し、ブラウザに最適化のヒントを与える
- ◆prefers-reduced-motion: アニメーション軽減を望むユーザーの設定を尊重する。必須のa11y対応
- ◆60fps維持: requestAnimationFrameを使用し、メインスレッドのブロックを避ける
モーション削減モード
アクセシビリティとしてのモーション制御を学びます。
- ◆OS設定の検出: prefers-reduced-motion: reduce で、ユーザーがアニメーション軽減を希望しているか検出
- ◆対応方針: 装飾的なアニメーションは無効化し、機能的なアニメーション(ローディング等)は維持
- ◆CSSでの実装: @media (prefers-reduced-motion: reduce) { .motion-decorative { animation: none; transition: none; } } のように、装飾的なアニメーションに対象を絞って無効化する
- ◆段階的対応: 完全無効化ではなく、持続時間を短縮するアプローチも有効
🏋️実践ワーク
以下の課題に取り組みましょう。
- ◆モーショントークン(duration、easing)を定義し、CSS変数として実装してみましょう
- ◆モーダルの出現・消失アニメーションをトークンを使って実装してみましょう
- ◆prefers-reduced-motionに対応したモーション削減モードを実装してみましょう
📝まとめ
モーションをデザインシステムに体系的に組み込むことで、プロダクト全体のアニメーションに一貫性が生まれ、UXとパフォーマンスの両方が向上します。Duration、Easing、パターン別定義をトークン化し、パフォーマンスとアクセシビリティにも配慮した設計を心がけましょう。次の章では、デザインシステムのガバナンスと運用を学びます。
理解度チェック
3問全問正解でこのレッスンが「完了」になり、コースの全レッスンを完了すると修了証が発行されます。何度でも挑戦でき、全問正解すると全問の解説が読めます(不正解のときは正解した問題の数だけ表示され、30秒後に答え直せます)。
Q1.カードが下からふわっと現れるアニメーションを実装します。本文がパフォーマンスの観点で推奨する、動かすプロパティはどれですか。
Q2.OSでアニメーションの軽減(prefers-reduced-motion: reduce)を希望しているユーザーへの対応として、本文に沿うものはどれですか。
Q3.モーダルの出現を200ms ease-outで設計しました。閉じるときの消失アニメーションはどう設計するのが自然とされていますか。
「デザインシステム構築・運用上級講座」全10レッスンを無料で修了しよう
- ✓ 理解度チェックの採点と、合格レッスンの記録
- ✓ 全レッスン合格で修了証を発行(URLでシェア・LinkedInに追加できます)
- ✓ 全レッスンの解説動画と、続きから再開できる学習ダッシュボード
完全無料・クレジットカード不要
このレッスンで使うツール・次の学び方 PR
Audible(Amazonのオーディオブック) ↗ビジネス書・マーケティングの本を通勤中や家事の合間に聴いて学べる。プレミアムプランは30日間の無料体験あり(2026年11月時点)

関連するブログ記事
関連レッスン(他のコースから)
実践Webデザイン - Figma完全マスター講座
Figmaとは?Webデザインツールの選び方
デザイナーとエンジニアが初めてコラボレーションできるツールを作る——そんなビジョンのもと、Figmaは2016年にDylan FieldとE
30分無料公開
実践Webデザイン - Figma完全マスター講座
Figmaの基本操作 - フレーム・シェイプ・テキスト
Figmaを開いた瞬間、無限に広がる白いキャンバスと見慣れないパネル群に戸惑う人は多いです。
30分無料公開
実践Webデザイン - Figma完全マスター講座
デザインの4原則 - 近接・整列・反復・コントラスト
「なんとなくデザインがおかしい」「プロっぽく見えない」——そんな感覚の正体の多くは、デザイン4原則のどれかが守られていないことにあります。
30分無料公開
実践Webデザイン - Figma完全マスター講座
配色の基礎 - カラーパレットの作り方
配色はデザインの中で最も「感覚的」と思われがちですが、実は明確なルールと手順があります。
30分本文は無料で閲覧可
実践Webデザイン - Figma完全マスター講座
タイポグラフィ - フォント選びと文字組み
タイポグラフィはデザインの中で最も情報量が多いにもかかわらず、最も軽視されがちな要素です。
30分本文は無料で閲覧可
実践Webデザイン - Figma完全マスター講座
コンポーネント設計とバリアント
コンポーネント機能は、Figmaが他のツールに対して圧倒的な優位性を持つ理由の一つです。
30分本文は無料で閲覧可