「WCAG 2.2に準拠するには、具体的に何をチェックすればいいの?」──Webアクセシビリティ対応を求められ、そんな疑問を抱えていませんか。2024年4月の障害者差別解消法改正により、すべての民間事業者に合理的配慮の提供が義務化され、対応の緊急度は確実に上がっています。本記事では、WCAG 2.2の基本から全55項目のチェックリスト、実装コード例、無料ツール、導入ロードマップまでを1記事で完全網羅しました。初めてアクセシビリティに取り組む方でも、この記事を読めば「今日から何をすべきか」が明確になります。
Webアクセシビリティの定義と対象ユーザー
Webアクセシビリティとは、年齢・障害の有無・利用環境に関わらず、すべての人がWebサイトの情報やサービスを問題なく利用できる状態を指します。
対応が必要なのは「障害者向けの特別な配慮」だけではありません。以下のように、非常に幅広いユーザーが対象です。
| 対象ユーザー | 具体的な例 |
|---|---|
| 視覚障害 | 全盲、ロービジョン(弱視)、色覚特性 |
| 聴覚障害 | 聾者、難聴者 |
| 運動障害 | 上肢の麻痺、手の震え、マウス操作が困難な方 |
| 認知・学習障害 | ディスレクシア、注意障害、記憶障害 |
| 高齢者 | 視力低下、細かい操作が困難な方 |
| 一時的な障害 | 骨折でマウスが使えない、騒音で音声が聞こえない |
| 環境的制約 | 低速回線、小さな画面、古いブラウザ |
日本国内の障害者数は約1,160万人(内閣府「障害者白書」)、65歳以上の高齢者は約3,600万人に上ります。Webアクセシビリティ対応は、こうした数千万規模のユーザーに対するアクセス障壁を取り除く取り組みです。結果として、サイト全体のユーザビリティが向上し、すべてのユーザーにとって使いやすいWebサイトになります。
障害者差別解消法の改正と「合理的配慮」の義務化(2024年4月施行)
2024年4月1日から施行された改正障害者差別解消法により、すべての民間事業者に「合理的配慮の提供」が法的義務となりました。
改正前は、民間事業者にとって合理的配慮の提供は「努力義務」にとどまっていました。改正後は、障害のある方から申し出があった場合に合理的な範囲で対応することが義務として定められています。
ここで重要なポイントは、「ウェブアクセシビリティ対応そのもの」が法律で直接義務化されたわけではないという点です。法律が義務化したのはあくまで「合理的配慮の提供」であり、ウェブアクセシビリティの確保は「環境の整備」として位置づけられています。しかし、環境整備を怠った結果、障害のある方への合理的配慮ができない状況が生まれれば、法的義務違反として問題になる可能性があります。
| 項目 | 改正前(〜2024年3月) | 改正後(2024年4月〜) |
|---|---|---|
| 行政機関 | 法的義務 | 法的義務 |
| 民間事業者 | 努力義務 | 法的義務 |
| 環境の整備(アクセシビリティ対応) | 努力義務 | 努力義務(※合理的配慮の前提として重要) |
事前にアクセシビリティを確保しておくことが、合理的配慮を円滑に実現するための前提条件となります。
対応しないことで企業が負うリスク(法的・ブランド・機会損失)
Webアクセシビリティに対応しない場合、企業は法的リスク、ブランドリスク、ビジネスの機会損失という3つのリスクを負います。
法的リスクについて、改正障害者差別解消法では、行政からの改善要求に対し報告義務を怠った場合や虚偽の報告を行った場合、20万円以下の過料が科される可能性があります。海外では、ADA(米国障害者法)に基づくWebアクセシビリティ訴訟が年間4,000件を超えており、日本でも今後同様の傾向が予想されます。
ブランドリスクについて、アクセシビリティ未対応が公に指摘された場合、「障害者への配慮が不十分な企業」というイメージが広がり、CSRやESGの観点からも評価を下げる要因になります。
機会損失について、アクセシビリティに問題があるサイトでは、障害者・高齢者だけでなく、モバイルユーザーや一時的な障害を持つユーザーもサイトを離脱します。結果として、潜在的な顧客層へのリーチを失うことになります。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📢 アクセシビリティ対応と離脱防止を同時に実現しませんか?
Webアクセシビリティを強化しても、ユーザーがコンバージョン前に
離脱してしまっては機会損失です。離脱防止ポップアップツール
「DataPush」なら、ユーザーが離脱しようとする瞬間を捉えて
最適なメッセージを表示。CVR最大10%アップの実績があります。
✅ 無料プランあり(クレジットカード不要)
✅ コード設置から5分で利用開始
✅ サイト表示速度への影響なし
▶ DataPushを無料で試してみる → http://service.data-push.jp/
WCAG(Web Content Accessibility Guidelines)の概要と変遷
WCAGとは、W3C(World Wide Web Consortium)が策定したWebコンテンツのアクセシビリティに関する国際的なガイドラインです。正式名称は「Web Content Accessibility Guidelines」で、世界中の政府・企業がWebアクセシビリティの基準として採用しています。
WCAGの歴史は以下のとおりです。
| バージョン | 勧告年 | 主な特徴 |
|---|---|---|
| WCAG 1.0 | 1999年 | Webアクセシビリティの基礎を確立 |
| WCAG 2.0 | 2008年 | 4原則・3レベルの体系を導入、技術非依存に |
| WCAG 2.1 | 2018年 | モバイル対応・認知障害・ロービジョンへの配慮を追加 |
| WCAG 2.2 | 2023年10月 | モバイル操作性・認知障害支援・フォーカス管理をさらに強化 |
WCAG 2.2は2023年10月5日にW3C勧告として正式公開されました。WCAG 2.1を拡張する形で、新たに9つの達成基準が追加されています。既存の2.0・2.1の達成基準はそのまま引き継がれているため、WCAG 2.2に準拠すれば自動的にWCAG 2.1・2.0にも適合します。
4つの原則:知覚可能・操作可能・理解可能・堅牢
WCAGは、すべての達成基準を4つの原則(POUR原則)に分類しています。この4原則がアクセシビリティの土台です。
知覚可能(Perceivable) は、情報やUIコンポーネントをユーザーが認識できる方法で提示することを求めます。代替テキスト、字幕、十分なコントラスト比などが該当します。
操作可能(Operable) は、UIコンポーネントやナビゲーションがすべてのユーザーにとって操作可能であることを求めます。キーボード操作対応、十分な操作時間の確保、発作を引き起こさないデザインなどが含まれます。
理解可能(Understandable) は、情報やUIの操作が理解しやすいことを求めます。読みやすいテキスト、予測可能なページ動作、入力エラーの防止・修正支援が該当します。
堅牢(Robust) は、コンテンツが支援技術を含むさまざまな技術で確実に解釈できることを求めます。正しいHTMLマークアップ、WAI-ARIAの適切な使用が含まれます。
3つの適合レベル:A・AA・AAAの違いと選び方
WCAGの達成基準は、重要度と難易度に応じて3段階の適合レベルに分類されます。
| 適合レベル | 位置づけ | 達成基準数(WCAG 2.2) | 推奨度 |
|---|---|---|---|
| レベルA | 最低限のアクセシビリティ | 32項目 | 必須 |
| レベルAA | 標準的な到達目標 | 23項目 | 強く推奨(実質的な標準) |
| レベルAAA | 最も高い水準 | 31項目 | 可能な範囲で対応 |
レベルAA準拠が世界的な標準です。日本の公的機関やEU、米国の法規制もレベルAAを基準としています。レベルAAAはサイト全体での完全準拠が現実的に困難なため、W3C自身も「サイト全体の適合レベルとしてAAAを要求しないこと」を推奨しています。企業のWeb担当者は、まずレベルAA準拠を目標に設定してください。
WCAG 2.1との違い|WCAG 2.2で変わった点まとめ
WCAG 2.2では、WCAG 2.1から以下の2つの大きな変更がありました。
1つ目は、9つの新しい達成基準の追加です。 レベルAに2項目、レベルAAに4項目、レベルAAAに3項目が追加されました。モバイル操作性、認知障害への配慮、キーボードフォーカスの視認性が重点的に強化されています。
2つ目は、4.1.1 構文解析(Parsing)の廃止です。 現代のブラウザはHTML構文エラーに対して十分にロバストな処理を行うため、この達成基準は実質的に不要と判断されました。
これら以外の既存の達成基準は、WCAG 2.1とほぼ同じ内容がWCAG 2.2に引き継がれています。すでにWCAG 2.1に準拠しているサイトは、新たに追加された6項目(レベルA+AA)への対応を行えば、WCAG 2.2 AA準拠を達成できます。
JIS X 8341-3:2016との関係と今後の動向
JIS X 8341-3:2016は、日本産業規格として定められたWebアクセシビリティの基準です。技術的な内容はWCAG 2.0と一致しており、「JIS X 8341-3:2016のAA準拠」は「WCAG 2.0のAA準拠」と実質的に同じ意味です。
現時点でJIS規格はWCAG 2.0ベースのままですが、デジタル庁は「ウェブアクセシビリティ導入ガイドブック」においてWCAG 2.2への準拠を推進しています。上場企業グループを中心に、JIS規格ではなくWCAG 2.2 AA準拠を社内基準とする企業が増加傾向にあります。今後、JIS規格がWCAG 2.2に追随して改定される可能性も高く、先行してWCAG 2.2に対応しておくことが実務上の最善策です。
【レベルA】3.2.6 一貫したヘルプ(Consistent Help)
ヘルプ機能を複数のページに設置している場合、すべてのページで同じ相対的な位置に配置する必要があります。
対象となるヘルプ機能は、人間の連絡先情報、問い合わせフォーム、FAQ・セルフヘルプ、チャットボットなどの自動化された連絡手段です。例えば、あるページではフッター右下にチャットボットがあるのに、別のページではヘッダー左上に移動しているようなケースはNGです。
この基準の目的は、認知障害のあるユーザーがヘルプ手段を迷わず見つけられるようにすることです。対応のポイントは、サイト全体のテンプレートで共通のヘルプコンポーネントを同じ位置に配置し、ユーザー自身が位置を変更しない限り一定の場所を維持することです。
【レベルA】3.3.7 冗長な入力(Redundant Entry)
同じプロセスの中で、ユーザーが以前入力した情報を再度入力させてはいけません。自動入力するか、選択肢として提供する必要があります。
例えば、ECサイトの購入フローで「配送先住所」を入力した後に「請求先住所」を求める場合、「配送先と同じ」チェックボックスを用意し、再入力を不要にするのが正しい対応です。複数ステップのフォームで同じメールアドレスを2回入力させるようなパターンもNGです。
ただし、セキュリティ上の理由で再入力が必要な場合(パスワードの確認入力など)や、以前入力した情報がすでに無効になっている場合は例外とされています。
【レベルAA】2.4.11 フォーカスの非隠蔽・最小(Focus Not Obscured)
キーボード操作でUIコンポーネントにフォーカスが当たったとき、そのコンポーネントが完全に隠れてはいけません。少なくとも一部分が見えている状態を確保する必要があります。
典型的なNG例は、固定ヘッダー(sticky header)やスティッキーフッター、Cookie同意バナーなどの固定要素がフォーカスされたコンポーネントを完全に覆い隠してしまうケースです。特にモーダルダイアログの背後にフォーカスが移動してしまう場合も問題になります。
対応策としては、固定要素の高さを考慮したスクロール位置の調整(scroll-padding-topの設定など)や、フォーカス移動時にビューポート内に要素が表示されるようJavaScriptで制御する方法が有効です。
【レベルAA】2.5.7 ドラッグ操作(Dragging Movements)
ドラッグで操作する機能には、ドラッグを使わないシングルポインタの代替操作を必ず提供する必要があります。
例えば、ドラッグ&ドロップでリストの並べ替えを行う場合、各項目に「上へ」「下へ」ボタンを設置して、クリック操作でも同じ並べ替えができるようにします。地図アプリのピンの移動や、スライダーの操作なども同様です。
この基準は、手の震えがある方やマウス操作が困難な方、タッチデバイスでドラッグが安定しないユーザーへの配慮を目的としています。ドラッグ操作そのものを禁止するのではなく、必ず代替手段を併設するという点がポイントです。
【レベルAA】2.5.8 ターゲットサイズ・最小(Target Size Minimum)
クリック・タップ対象のサイズは、最低24×24 CSSピクセルを確保するか、他のターゲットと十分な間隔を空ける必要があります。
この基準には以下の例外があります。
| 例外 | 説明 |
|---|---|
| 間隔による代替 | ターゲットが24px未満でも、24px直径の円が他のターゲットと重ならなければOK |
| インラインリンク | 文中のテキストリンクは対象外 |
| ユーザーエージェント制御 | ブラウザがデフォルトで制御するUIは対象外 |
| 同等の代替 | 同じ機能を持つ24px以上のコントロールが同一ページにある場合 |
| 必然的な表示 | 法的に特定の表示が求められる場合 |
実装の目安として、ボタンやリンク要素にはmin-height: 24px; min-width: 24px;を設定し、隣接するクリック要素間には十分なマージンを確保してください。
【レベルAA】3.3.8 アクセシブルな認証・最小(Accessible Authentication)
認証プロセスにおいて、パスワードの暗記やパズルの解読といった認知機能テストのみを要求してはいけません。代替手段またはテスト完遂を支援する仕組みの提供が必要です。
認知機能テストとは、記憶・操作・文字起こしなどを要求するタスクのことです。パスワード入力、CAPTCHA、パズル認証などが該当します。
対応方法としては、パスワードマネージャーによる自動入力を妨げないこと、コピー&ペーストを許可すること、マジックリンク(メール認証リンク)やPasskeyなどの代替認証手段を提供することが挙げられます。入力フィールドにautocomplete="current-password"を設定するだけでも、パスワードマネージャーの動作を支援できます。
【レベルAAA】2.4.12 / 2.4.13 / 3.3.9 の概要
レベルAAAの新基準は3項目あります。サイト全体での完全準拠は求められませんが、可能な範囲で対応することでUXが向上します。
2.4.12 フォーカスの非隠蔽・強化 は、AA版(2.4.11)をさらに厳格化したもので、フォーカスを受けたコンポーネントのどの部分も隠れてはいけません。AA版が「完全に隠れなければOK」であるのに対し、AAA版は「一部でも隠れてはいけない」という基準です。
2.4.13 フォーカスの外観 は、フォーカスインジケーターの視認性に関する基準です。2CSSピクセル以上の太さの境界線と、フォーカス時・非フォーカス時で3:1以上のコントラスト比が求められます。
3.3.9 アクセシブルな認証・強化 は、AA版(3.3.8)をさらに厳格化し、オブジェクト認識(画像CAPTCHA等)やユーザー提供コンテンツの識別も認知機能テストとみなし、代替手段を要求します。
【廃止】4.1.1 構文解析(Parsing)が削除された理由
WCAG 2.2では、4.1.1 構文解析(Parsing)が廃止されました。この達成基準は「HTMLの構文エラーがないこと」を求める内容でした。
廃止の理由は、現代のブラウザがHTML構文エラーに対して非常にロバストな処理を行うようになったためです。以前は構文エラーが支援技術の動作を妨げるケースがありましたが、現在ではブラウザ側でほぼ自動的に修正・補完されます。
ただし、HTMLの構文を正しく書くことが不要になったわけではありません。正しいHTMLは他の達成基準(1.3.1 情報及び関係性、4.1.2 名前・役割・値など)の前提条件です。W3Cの HTML Validatorなどを活用して、基本的な構文チェックは引き続き行うことを推奨します。
原則1:知覚可能(Perceivable)のチェック項目
1.1 テキストによる代替
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 1.1.1 非テキストコンテンツ | A | すべての画像・アイコン・グラフに適切なalt属性を設定しているか。装飾画像にはalt=””を指定しているか。複雑な図表には詳細な説明文を用意しているか |
代替テキストはアクセシビリティの最も基本的な要素です。スクリーンリーダーは画像の内容を視覚的に伝えられないため、alt属性に設定されたテキストを読み上げます。「image01.jpg」のようなファイル名をそのまま入れるのはNGです。画像が伝える内容や機能を簡潔に記述してください。
1.2 時間依存メディア(動画・音声)
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 1.2.1 音声のみ・映像のみ(収録済み) | A | 音声コンテンツにテキスト書き起こしを、映像のみのコンテンツにテキストまたは音声の代替を提供しているか |
| 1.2.2 キャプション(収録済み) | A | 収録済み動画に正確な字幕を付与しているか |
| 1.2.3 音声解説・メディアの代替(収録済み) | A | 映像の視覚情報に対して音声解説またはテキスト代替を提供しているか |
| 1.2.4 キャプション(ライブ) | AA | ライブ配信動画にリアルタイム字幕を提供しているか |
| 1.2.5 音声解説(収録済み) | AA | 収録済み動画に音声解説を提供しているか |
動画コンテンツを多用するサイトでは、字幕と音声解説の提供が最重要課題となります。YouTubeの自動字幕機能だけでは正確性に欠けるため、手動での修正を行うことを推奨します。
1.3 適応可能(セマンティクス・表示の向き・入力目的)
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 1.3.1 情報及び関係性 | A | 見出し・リスト・テーブル・フォームの構造がHTMLセマンティクスで正しくマークアップされているか |
| 1.3.2 意味のある順序 | A | CSSを無効にしてもコンテンツの読み上げ順序が意味をなしているか |
| 1.3.3 感覚的な特徴 | A | 色・形・位置のみで情報を伝えていないか |
| 1.3.4 表示の向き | AA | コンテンツが縦向き・横向きのどちらでも正しく表示されるか |
| 1.3.5 入力目的の特定 | AA | 氏名・メール・住所などの入力欄にautocomplete属性を適切に設定しているか |
セマンティクスの正確性は、スクリーンリーダーの動作とSEOの両方に直結します。見出しレベルの飛ばし(h2の次にh4が来るなど)や、見た目だけのリスト表現(<div>で箇条書きを模倣するなど)は避けてください。
1.4 判別可能(コントラスト・リフロー・テキスト間隔)
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 1.4.1 色の使用 | A | 色だけで情報を伝えていないか(エラー=赤のみ等) |
| 1.4.2 音声の制御 | A | 自動再生音声に停止・音量調節手段があるか |
| 1.4.3 コントラスト(最小) | AA | 通常テキスト4.5:1以上、大きなテキスト3:1以上のコントラスト比があるか |
| 1.4.4 テキストのサイズ変更 | AA | テキストを200%まで拡大してもコンテンツが損なわれないか |
| 1.4.5 文字画像 | AA | テキスト情報を画像ではなく実テキストで提供しているか |
| 1.4.10 リフロー | AA | 320px幅まで狭めても横スクロールが発生しないか |
| 1.4.11 非テキストのコントラスト | AA | UIコンポーネント・グラフィック要素のコントラスト比が3:1以上あるか |
| 1.4.12 テキストの間隔 | AA | 行高1.5倍、段落間2倍、文字間隔0.12em、単語間隔0.16emに変更しても問題ないか |
| 1.4.13 ホバー/フォーカスで表示されるコンテンツ | AA | ツールチップ等が解除可能・ホバー可能・永続的であるか |
コントラスト比は最も頻繁に不適合が見つかる項目です。デザイン段階でWebAIMのContrast Checkerを使い、配色を事前に検証することで手戻りを防げます。
原則2:操作可能(Operable)のチェック項目
2.1 キーボード操作
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 2.1.1 キーボード | A | すべての機能がキーボードのみで操作できるか |
| 2.1.2 キーボードトラップなし | A | フォーカスがコンポーネントに閉じ込められないか |
| 2.1.4 文字キーのショートカット | A | 単一文字キーのショートカットを無効化・再割り当て・フォーカス時のみ有効にできるか |
キーボード操作への対応は、アクセシビリティの最重要項目の一つです。マウスが使えないユーザーにとって、キーボードは唯一の操作手段です。Tabキーでの移動、Enterキーでの実行、Escapeキーでの閉じるといった基本操作を、すべてのインタラクティブ要素で確認してください。
2.2 十分な時間
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 2.2.1 タイミング調整可能 | A | 時間制限があるコンテンツの無効化・延長・調整が可能か |
| 2.2.2 一時停止、停止、非表示 | A | 自動で動く・スクロールするコンテンツに一時停止・停止手段があるか |
セッションタイムアウトやカウントダウンタイマーを設定する場合、事前にユーザーへ警告し、延長できる手段を提供することが必要です。カルーセルやニュースティッカーなどの自動再生コンテンツにも一時停止ボタンを設置してください。
2.3 発作と身体的反応
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 2.3.1 3回の閃光、又は閾値以下 | A | 1秒間に3回以上閃光を放つコンテンツがないか |
光感受性発作(ポケモンショック等)を引き起こす可能性があるため、動画やアニメーションの閃光頻度は厳しく制限されています。
2.4 ナビゲーション(スキップリンク・フォーカス管理)
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 2.4.1 ブロックスキップ | A | スキップリンクやランドマークで繰り返しナビゲーションをスキップできるか |
| 2.4.2 ページタイトル | A | 各ページに適切な<title>が設定されているか |
| 2.4.3 フォーカス順序 | A | Tabキーのフォーカス順序がコンテンツの意味と整合しているか |
| 2.4.4 リンクの目的(コンテキスト内) | A | リンクテキストまたはコンテキストからリンク先が理解できるか |
| 2.4.5 複数の手段 | AA | ページを見つける手段が2つ以上あるか |
| 2.4.6 見出し及びラベル | AA | 見出し・フォームラベルが内容を適切に説明しているか |
| 2.4.7 フォーカスの可視化 | AA | キーボードフォーカスが視覚的に確認できるか |
| 2.4.11 フォーカスの非隠蔽(最小)🆕 | AA | フォーカスされた要素が固定要素等で完全に隠れていないか |
「詳しくはこちら」「クリック」のような意味不明なリンクテキストは避けてください。リンク先の内容がテキストだけで判別できる表現に改善することが、この基準を満たすポイントです。
2.5 入力モダリティ(ジェスチャ・ドラッグ・ターゲットサイズ)
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 2.5.1 ポインタのジェスチャ | A | ピンチ・スワイプ等の複雑なジェスチャにシングルポインタの代替があるか |
| 2.5.2 ポインタのキャンセル | A | ダウンイベントだけで機能が実行されないか |
| 2.5.3 ラベルとアクセシブルな名前 | A | 視覚的ラベルがアクセシブルな名前にも含まれているか |
| 2.5.4 動きによる起動 | A | デバイスの動きで動作する機能に代替手段と無効化手段があるか |
| 2.5.7 ドラッグ操作🆕 | AA | ドラッグ操作の代替手段(クリック/タップ等)があるか |
| 2.5.8 ターゲットサイズ(最小)🆕 | AA | タッチ/クリックターゲットが24×24px以上、または十分な間隔が確保されているか |
原則3:理解可能(Understandable)のチェック項目
3.1 読みやすさ(lang属性・言語指定)
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 3.1.1 ページの言語 | A | HTML要素にlang属性で主言語を指定しているか(例:lang="ja") |
| 3.1.2 一部分の言語 | AA | ページ内の異なる言語テキストにlang属性を指定しているか |
lang属性はスクリーンリーダーが正しい発音で読み上げるために不可欠です。日本語ページ内に英語のセクションがある場合、<span lang="en">のように言語を明示してください。
3.2 予測可能(ナビゲーション・ヘルプの一貫性)
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 3.2.1 フォーカス時 | A | フォーカスを当てただけでコンテキストの変化が発生しないか |
| 3.2.2 入力時 | A | フォーム値の変更だけで予期しないコンテキストの変化が発生しないか |
| 3.2.3 一貫したナビゲーション | AA | ナビゲーションの順序・配置がページ間で一貫しているか |
| 3.2.4 一貫した識別性 | AA | 同一機能のコンポーネントが一貫したラベルで識別できるか |
| 3.2.6 一貫したヘルプ🆕 | A | ヘルプ機能が複数ページで同じ相対位置に配置されているか |
セレクトボックスの値を変更しただけでページが遷移するなどの「予期しない動作」は、ユーザーを混乱させます。操作の結果としての変化は、必ず明示的なアクション(ボタンクリック等)を介して行うようにしてください。
3.3 入力支援(エラー処理・認証・冗長入力の防止)
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 3.3.1 エラーの特定 | A | エラー箇所がテキストで特定・説明されているか |
| 3.3.2 ラベル又は説明 | A | フォーム要素に適切なラベルや説明があるか |
| 3.3.3 エラー修正の提案 | AA | エラー時に修正方法がテキストで提示されているか |
| 3.3.4 エラー回避(法的、金融、データ) | AA | 重要な操作に取消・確認・修正手段があるか |
| 3.3.7 冗長な入力🆕 | A | 同一プロセス内で同じ情報を再入力させていないか |
| 3.3.8 アクセシブルな認証(最小)🆕 | AA | 認証に認知機能テストのみを要求していないか |
原則4:堅牢(Robust)のチェック項目
4.1 互換性(ARIA・ステータスメッセージ)
| 達成基準 | レベル | チェック内容 |
|---|---|---|
| 4.1.2 名前・役割・値 | A | すべてのUIコンポーネントにプログラムで解釈可能な名前・役割・状態が設定されているか |
| 4.1.3 ステータスメッセージ | AA | フォーカス移動なしで伝えるべきメッセージが支援技術で読み取れるか |
カスタムUI(独自のドロップダウン、タブ、モーダルなど)を実装する場合、WAI-ARIAを適切に使用して、スクリーンリーダーが要素の役割と状態を正しく認識できるようにしてください。
画像の代替テキスト(alt属性)の正しい書き方
代替テキストは「画像が伝えている情報」を簡潔に記述するのが原則です。ファイル名やURL、「画像」「写真」といった冗長な表現は避けてください。
<!-- NG例 -->
<img src="team-photo.jpg" alt="IMG_2024.jpg">
<img src="graph.png" alt="画像">
<!-- OK例:情報を伝える画像 -->
<img src="team-photo.jpg" alt="2024年度 営業チーム集合写真(8名)">
<img src="graph.png" alt="2024年の売上推移グラフ:1月100万円から12月500万円に増加">
<!-- OK例:装飾目的の画像 -->
<img src="divider.png" alt="">
<!-- OK例:リンク画像 -->
<a href="/contact">
<img src="mail-icon.svg" alt="お問い合わせ">
</a>
画像の用途に応じた代替テキストの書き分けが重要です。情報画像には内容の説明を、装飾画像には空のalt属性を、リンク画像にはリンク先の目的を記述してください。
フォームのラベル・エラーメッセージの実装パターン
フォーム要素には必ず<label>要素を関連付け、エラーメッセージはテキストで明示します。色だけでエラーを伝えるのはNGです。
<!-- NG例:ラベルなし、色のみのエラー -->
<input type="email" placeholder="メールアドレス" style="border-color: red;">
<!-- OK例:ラベル付き、テキストエラーメッセージ -->
<div>
<label for="email">メールアドレス(必須)</label>
<input type="email" id="email" name="email"
autocomplete="email"
aria-describedby="email-error"
aria-invalid="true">
<p id="email-error" role="alert">
⚠ メールアドレスの形式が正しくありません。例:example@mail.com
</p>
</div>
aria-describedbyでエラーメッセージと入力欄を関連付け、aria-invalid="true"でエラー状態を支援技術に伝えます。autocomplete属性の設定も忘れずに行ってください。
キーボードフォーカスの可視化とフォーカストラップの回避
フォーカスリングをoutline: noneで消すことは、キーボードユーザーにとって致命的な問題を引き起こします。デフォルトのフォーカスリングが気になる場合は、:focus-visibleを使ってマウス操作時のみ非表示にする方法が推奨されます。
/* NG例:すべてのフォーカスリングを消す */
*:focus {
outline: none;
}
/* OK例:キーボード操作時のみフォーカスリングを表示 */
:focus-visible {
outline: 3px solid #005fcc;
outline-offset: 2px;
}
/* マウスクリック時はフォーカスリングを目立たせない */
:focus:not(:focus-visible) {
outline: none;
}
モーダルダイアログでは、開いている間はフォーカスをモーダル内に制限し(フォーカストラップ)、閉じたときに元の要素にフォーカスを戻す処理が必要です。ただし、モーダル外にフォーカスが完全に脱出できなくなる「キーボードトラップ」は2.1.2違反になるため、Escapeキーでの閉じる操作を必ず実装してください。
スキップリンクとランドマークの設置方法
スキップリンクは、キーボードユーザーが繰り返しナビゲーションを飛ばしてメインコンテンツに直接移動するための仕組みです。
<body>
<!-- スキップリンク -->
<a href="#main-content" class="skip-link">
メインコンテンツへスキップ
</a>
<header role="banner">
<nav role="navigation" aria-label="メインナビゲーション">
<!-- ナビゲーション -->
</nav>
</header>
<main id="main-content" role="main">
<!-- メインコンテンツ -->
</main>
<footer role="contentinfo">
<!-- フッター -->
</footer>
</body>
.skip-link {
position: absolute;
top: -100%;
left: 0;
padding: 8px 16px;
background: #005fcc;
color: #fff;
z-index: 1000;
}
.skip-link:focus {
top: 0;
}
HTMLのランドマーク要素(<header>, <nav>, <main>, <footer>)を正しく使用することで、スクリーンリーダーが各セクションの役割を自動的に認識します。
コントラスト比の確認と配色設計のポイント
コントラスト比はWCAG 2.2で最も頻繁に不適合が発見される項目です。通常テキストでは4.5:1以上、大きなテキスト(18pt以上または14pt太字以上)では3:1以上が必要です。
確認手順は以下のとおりです。
- WebAIM Contrast Checker(https://webaim.org/resources/contrastchecker/)にアクセスする
- 前景色(テキスト色)と背景色を入力する
- WCAG AAの基準を満たしているか確認する
- 不合格の場合、ツールが示す近似色に変更する
よくある不合格パターンとして、薄いグレーのテキスト(#999999)を白背景(#FFFFFF)に配置するケースがあります。この組み合わせのコントラスト比は2.85:1で不合格です。テキスト色を#767676以上の濃さに変更することで4.54:1となり、基準を満たせます。
ターゲットサイズ24×24pxを確保するCSS実装
WCAG 2.2の新基準(2.5.8)に対応するため、クリック・タップ対象のサイズを確保する実装例です。
/* ボタンの最小サイズを確保 */
button,
[role="button"],
input[type="submit"],
input[type="button"] {
min-height: 24px;
min-width: 24px;
padding: 8px 16px; /* 内部余白でさらに広げる */
}
/* 小さいアイコンボタンの場合 */
.icon-button {
min-height: 44px; /* 推奨サイズ */
min-width: 44px;
display: inline-flex;
align-items: center;
justify-content: center;
}
/* 隣接するボタンの間隔確保 */
.button-group button + button {
margin-left: 8px;
}
24×24pxはあくまで最低限の基準です。モバイル端末でのタップ操作を考慮すると、44×44px以上のサイズを確保することが実務上は推奨されます。
aria-liveによるステータスメッセージの通知
フォーム送信後の「送信完了」メッセージや、検索結果の件数表示など、フォーカスを移動せずにユーザーに伝えるべきメッセージには、aria-live属性を使用します。
<!-- 検索結果の件数表示 -->
<div aria-live="polite" role="status">
検索結果:42件見つかりました
</div>
<!-- フォーム送信後のメッセージ -->
<div aria-live="assertive" role="alert">
お問い合わせを送信しました。3営業日以内にご連絡いたします。
</div>
aria-live="polite"はユーザーの操作を中断せずに読み上げ、aria-live="assertive"は即座に読み上げます。通常のステータスメッセージにはpolite、エラーや緊急の通知にはassertiveを使い分けてください。
axe DevTools(ブラウザ拡張)
axe DevToolsは、Deque Systems社が提供するブラウザの開発者ツール向けアクセシビリティ検査ツールです。Chrome、Firefox、Edgeの拡張機能として無料で利用できます。ページ内のアクセシビリティ問題を自動検出し、問題の箇所、違反している達成基準、具体的な修正方法まで一覧で表示してくれます。無料版でも主要な検査項目をカバーしており、開発者が日常的に使うツールとして最も人気があります。
WAVE(Web Accessibility Evaluation Tool)
WAVEは、WebAIMが提供するアクセシビリティ評価ツールです。ブラウザ拡張またはWebサービスとして利用できます。ページ上にアクセシビリティの問題をアイコンでオーバーレイ表示するため、どの要素に問題があるかを視覚的に把握できます。構造の問題、コントラストの問題、ARIAの誤用などを一目で確認できる直感的なUIが特徴です。
Google Lighthouse
LighthouseはGoogle Chromeに内蔵されている監査ツールで、アクセシビリティスコアを100点満点で表示します。DevToolsの「Lighthouse」タブからワンクリックで実行でき、パフォーマンス・SEO・ベストプラクティスなども同時にチェックできます。ただし、Lighthouseのアクセシビリティスコアが100点でもWCAG完全準拠を意味するわけではない点に注意が必要です。自動検出できる項目は全体の約30〜40%にとどまります。
カラーコントラストチェッカー(WebAIM / TPGi)
WebAIMのContrast Checker(https://webaim.org/resources/contrastchecker/)は、テキスト色と背景色のコントラスト比をWCAG基準に照らして判定する無料Webツールです。TPGiのColour Contrast Analyser(CCA)はデスクトップアプリで、画面上の任意の箇所からスポイトで色を取得してコントラスト比を計算できます。デザインレビュー段階で使用することで、コーディング前に配色の問題を発見できます。
NVDA・VoiceOver(スクリーンリーダー)での手動テスト
NVDA(NonVisual Desktop Access)はWindows用の無料スクリーンリーダー、VoiceOverはmacOS / iOSに標準搭載されているスクリーンリーダーです。実際にスクリーンリーダーでサイトを操作し、代替テキストの適切さ、フォーカス順序の妥当性、フォームのラベル読み上げなどを確認することで、自動ツールでは検出できない問題を発見できます。すべてのアクセシビリティテストにおいて、スクリーンリーダーでの手動確認は不可欠です。
Pa11y / Deque axe-core(CI/CD連携向け自動テスト)
Pa11yはオープンソースのアクセシビリティテストツールで、コマンドラインやCI/CDパイプラインに組み込んで自動テストを実行できます。axe-coreはDeque Systems社が公開しているアクセシビリティテストエンジンで、JestやCypressなどのテストフレームワークと連携させることで、コードの変更ごとにアクセシビリティ検査を自動実行できます。開発チームが継続的にアクセシビリティ品質を監視するために有効です。
自動テストと手動テストの使い分け方
自動テストツールで検出できるアクセシビリティ問題は全体の約30〜40%にとどまります。残りの60〜70%は人間の判断が必要です。
| テスト種類 | 検出できること | 検出できないこと |
|---|---|---|
| 自動テスト | alt属性の有無、コントラスト比、ARIA属性の構文エラー、lang属性の有無 | alt属性の「適切さ」、フォーカス順序の「意味的整合性」、操作の「直感的わかりやすさ」 |
| 手動テスト | キーボード操作の実用性、スクリーンリーダーでの読み上げ品質、色のみに依存した情報伝達 | — |
推奨するアプローチは、日常的な開発サイクルでは自動テスト(axe DevTools・Lighthouse)を活用し、リリース前やリニューアル時にスクリーンリーダーでの手動テストを実施する組み合わせです。
セマンティックHTMLが検索エンジンのクロール効率を向上させる
正しいセマンティックHTML(適切な見出し階層、ランドマーク要素、リスト構造)は、検索エンジンのクローラーがページの構造と内容を正確に理解するための手がかりになります。見出しタグ(h1〜h6)の正しい使用はSEOの基本ですが、これはそのままWCAGの1.3.1(情報及び関係性)に該当します。アクセシビリティとSEOは「機械が理解しやすい構造」という共通の目標を持っており、一方を改善すればもう一方も自然と向上します。
代替テキストが画像検索の流入を増やす
画像のalt属性は、スクリーンリーダーだけでなく検索エンジンの画像インデックスにも利用されます。適切な代替テキストが設定された画像はGoogle画像検索に正しくインデックスされ、画像検索からの流入が増加します。WCAGの1.1.1(非テキストコンテンツ)への対応が、そのままSEOにおける画像最適化の実践となります。
Core Web Vitalsとアクセシビリティの相関
GoogleのランキングシグナルであるCore Web Vitals(LCP・FID・CLS)とアクセシビリティ対応には強い相関があります。例えば、テキスト画像を実テキストに置き換えることで読み込み速度が改善し、LCPが向上します。リフロー対応(1.4.10)はレイアウトシフトの抑制につながり、CLS改善に寄与します。アクセシビリティを改善する過程で、パフォーマンス指標も同時に改善されるケースが多くあります。
モバイルユーザビリティ向上でランキングシグナルが改善
Googleはモバイルファーストインデックスを採用しており、モバイル端末での操作性がランキングに影響します。ターゲットサイズの確保(2.5.8)やリフロー対応(1.4.10)は、モバイルユーザビリティの向上に直結します。Googleが提示する「タップターゲットのサイズ」に関する推奨事項は、WCAGのターゲットサイズ基準とほぼ同じ内容です。
E-E-A-T(経験・専門性・権威性・信頼性)への間接的貢献
Googleの品質評価ガイドラインが重視するE-E-A-T(Experience, Expertise, Authoritativeness, Trustworthiness)において、アクセシビリティへの配慮は「信頼性」の向上に寄与します。アクセシビリティ方針を公開し、チェック結果を表明しているサイトは、ユーザーや評価者から「すべてのユーザーに配慮した信頼できるサイト」として評価されやすくなります。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
📈 アクセシビリティ改善×離脱防止でCVRを最大化
アクセシビリティ対応でサイトの流入が増えても、ユーザーが
コンバージョンせずに離脱すればROIは上がりません。
DataPushなら、離脱直前のユーザーにパーソナライズされた
ポップアップを表示し、購入率+13%・離脱率-48%を実現します。
フリープラン(月額0円)で効果を試してみませんか?
▶ DataPushを無料で始める → http://service.data-push.jp/
フェーズ1:現状把握と致命的問題の解消(レベルA対応)
最初のステップは、現状のアクセシビリティレベルを把握し、致命的な問題を優先的に解消することです。
やるべきこと:
- axe DevToolsまたはLighthouseで現状のスコアを計測する
- キーボードのみでサイト全体を操作し、操作不能な箇所を特定する
- すべての画像に適切な代替テキストを設定する
- フォームのラベルが正しく関連付けられているか確認する
- テキストと背景のコントラスト比を検証する
目安期間: 小規模サイト(〜50ページ)で2〜4週間、中規模サイト(50〜200ページ)で1〜2ヶ月
このフェーズでは、ユーザーが情報にアクセスできるかどうかに直結するレベルAの基本項目を優先します。完璧を目指す必要はなく、最もインパクトの大きい問題から着手してください。
フェーズ2:レベルAAへの引き上げとWCAG 2.2新基準への対応
フェーズ1完了後、レベルAAの達成基準に対応を進めます。WCAG 2.2で新たに追加された6項目(レベルA+AA)もこの段階で対応します。
やるべきこと:
- コントラスト比の最適化(1.4.3, 1.4.11)
- リフロー対応の確認(1.4.10)
- ステータスメッセージのaria-live対応(4.1.3)
- ターゲットサイズの確保(2.5.8)
- フォーカスの非隠蔽の対応(2.4.11)
- ドラッグ操作の代替手段設置(2.5.7)
- アクセシブルな認証の実装(3.3.8)
目安期間: フェーズ1完了後2〜3ヶ月
デザインの変更を伴う項目が多いため、デザイナーとエンジニアが連携して対応する体制が必要です。
フェーズ3:運用ルール策定と継続的モニタリング体制の構築
アクセシビリティ対応は一度きりの施策ではなく、継続的な取り組みです。フェーズ3では、運用フローにアクセシビリティチェックを組み込みます。
やるべきこと:
- 新規コンテンツ作成時のアクセシビリティチェックリストを整備する
- CI/CDパイプラインにaxe-coreやPa11yを組み込み、自動テストを実施する
- 四半期ごとにスクリーンリーダーでの手動テストを実施する
- ユーザーからのフィードバック窓口(問い合わせフォーム等)を設置する
- チーム内でアクセシビリティ研修を定期的に実施する
アクセシビリティは「プロジェクト」ではなく「プロセス」です。サイトのコンテンツが更新されるたびに新たなアクセシビリティ問題が発生する可能性があるため、継続的なモニタリング体制が不可欠です。
アクセシビリティ方針の策定と公開方法
アクセシビリティ方針とは、自社サイトのアクセシビリティ対応状況と今後の取り組みを公式に表明する文書です。デジタル庁のウェブアクセシビリティ導入ガイドブックでは、方針の策定と公開が推奨されています。
方針に記載すべき主な項目は以下のとおりです。
- 対象とするWebサイトの範囲
- 準拠を目指す規格と適合レベル(例:WCAG 2.2 レベルAA)
- 現在の対応状況
- 今後の対応予定とスケジュール
- 問い合わせ先(アクセシビリティに関するフィードバック窓口)
方針は専用ページを作成してフッターからリンクするか、サイトのアクセシビリティページに掲載する方法が一般的です。
「オーバーレイツールを入れれば対応完了」は間違い
アクセシビリティオーバーレイとは、JavaScriptのウィジェットをサイトに追加するだけで「アクセシビリティ対応完了」を謳う製品のことです。結論として、オーバーレイツールだけでWCAG準拠を達成することはできません。
オーバーレイツールは、文字サイズの変更やコントラスト調整など一部の機能を提供しますが、HTMLの構造的な問題やキーボード操作の不備、代替テキストの適切さといった根本的な問題は解決できません。米国ではオーバーレイツールを導入していたサイトが訴訟の対象になった事例も報告されています。オーバーレイに頼るのではなく、サイトの構造やコードレベルでの対応を行うことが必要です。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
💡 ポップアップ=アクセシビリティの敵?正しく使えば最強の味方です
「オーバーレイ型アクセシビリティツール」はWCAG準拠の代替には
なりませんが、離脱防止ポップアップはアクセシビリティと両立でき
ます。DataPushは非同期読み込みでサイト速度に影響を与えず、
表示タイミング・頻度を細かく制御できるため、ユーザー体験を
損なわない設計が可能です。
ポップアップの表示条件をページ単位で設定でき、ABテスト機能で
最適なメッセージを検証することもできます。
▶ DataPushの機能詳細を見る → http://service.data-push.jp/
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
「alt属性にファイル名をそのまま入れる」問題
CMSの設定やコーディングの習慣で、画像のalt属性にファイル名がそのまま入っているケースが頻繁に見られます。「DSC_0042.jpg」や「hero-banner-v2.png」といった代替テキストは、スクリーンリーダーのユーザーにとって全く意味をなしません。
alt属性には「その画像がユーザーに伝えている情報」を記述してください。装飾画像であればalt=“”(空文字)を設定し、スクリーンリーダーに無視させるのが正しい対応です。CMS側の初期設定を見直し、画像アップロード時に代替テキストの入力を促す仕組みを導入することも有効です。
「フォーカスリングをoutline:noneで消す」のが危険な理由
CSSリセットやデザイン上の理由で*:focus { outline: none; }を設定しているサイトは非常に多く存在します。この設定は、キーボードユーザーにとってフォーカス位置が一切わからなくなるため、WCAG 2.4.7(フォーカスの可視化)に違反します。
フォーカスリングのデザインが気になる場合は、:focus-visible擬似クラスを使用してください。キーボード操作時のみフォーカスリングを表示し、マウスクリック時には表示しないという制御が可能です。フォーカスリングを「消す」のではなく「デザインする」というアプローチに切り替えることが重要です。
「WCAG対応=デザインの制約」ではない
アクセシビリティ対応がデザインの自由度を著しく制限するという誤解は根強くあります。実際には、WCAG準拠とデザインの質は両立可能です。
コントラスト比の基準を満たしながら洗練された配色デザインを実現しているサイトは数多く存在します。Apple、Microsoft、Googleといった世界的企業のサイトはWCAG AAに準拠しつつ、高いデザイン品質を維持しています。アクセシビリティはデザインの「制約」ではなく、より多くのユーザーに届く「質の高いデザイン」への指針です。
「自動テストで100点=完全準拠」ではない理由
LighthouseやaxeのスコアはWCAG準拠の目安にはなりますが、満点を取ったからといって完全準拠を意味しません。自動ツールで検出できるのはアクセシビリティ問題全体の約30〜40%にとどまります。
代替テキストが「適切かどうか」、フォーカス順序が「意味的に正しいか」、操作が「直感的に理解できるか」といった判断は、人間にしかできません。自動テストで100点を取った上で、スクリーンリーダーでの手動テストやキーボード操作テストを実施して初めて、本当の意味での「WCAG準拠」に近づきます。
Webアクセシビリティ対応は、障害者のための「特別な配慮」ではなく、すべてのユーザーにとってのWeb品質の基盤です。
本記事で解説したポイントを整理すると、WCAG 2.2は2023年10月にW3C勧告として公開された最新のアクセシビリティガイドラインであり、9つの新達成基準がモバイル操作性・認知障害支援・フォーカス管理を中心に追加されています。日本では2024年4月の改正障害者差別解消法により、民間事業者にも合理的配慮の提供が義務化され、アクセシビリティ対応の重要性はこれまで以上に高まっています。
対応は一度に完璧を目指す必要はありません。レベルAの致命的な問題から着手し、段階的にレベルAAへ引き上げ、運用フローに組み込むという3フェーズのアプローチで、持続可能なアクセシビリティ対応を実現してください。アクセシビリティの改善は、SEO、UX、ブランド価値のすべてに好影響をもたらします。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
🚀 アクセシビリティ対応の次は、離脱防止でCVRアップ
WCAG 2.2への対応でサイトの品質を高めたら、次のステップは
コンバージョン率の最大化です。
DataPushは、ユーザーがサイトを離れようとする瞬間を捉え、
ページごとに最適なポップアップを自動表示する離脱防止ツールです。
━━━━━━━━━━━━━━━━━━
✅ 無料プランあり(0円/月・クレジットカード不要)
✅ PV数無制限・コード設置5分で利用開始
✅ ABテストで最適なメッセージを自動検証
✅ 非同期読み込みでサイト速度に影響なし
━━━━━━━━━━━━━━━━━━
導入実績:離脱率-48%、購入率+13%
▶▶ DataPushを無料で試してみる → https://data-push.jp/
※ 離脱防止ポップアップの活用事例・ノウハウは
DataPushメディアサイトでも発信しています。
→ http://service.data-push.jp/
- WCAG 2.2への対応は法的に義務ですか?
-
WCAG 2.2への準拠そのものが法律で直接義務化されているわけではありません。2024年4月に施行された改正障害者差別解消法で義務化されたのは、障害のある方への「合理的配慮の提供」です。
ウェブアクセシビリティの確保は「環境の整備」として位置づけられ、現時点では努力義務にとどまっています。しかし、環境整備を怠ったことで合理的配慮ができない状況が生まれた場合、法的義務違反として問題になる可能性があります。
実務的には、デジタル庁がWCAG 2.2への準拠を推進しており、上場企業グループを中心にWCAG 2.2 AA準拠を社内基準として採用する企業が増えています。法的義務の有無に関わらず、アクセシビリティ対応はコンプライアンスとCSRの観点から企業にとって重要な取り組みです。
- WCAG 2.2とJIS X 8341-3の違いは何ですか?
-
WCAG 2.2とJIS X 8341-3:2016は、どちらもWebアクセシビリティの基準ですが、策定元とバージョンが異なります。
JIS X 8341-3:2016は日本産業規格として制定されたもので、技術的にはWCAG 2.0と一致しています。つまり「JIS X 8341-3:2016 AA準拠」と「WCAG 2.0 AA準拠」は実質的に同じ内容です。
一方、WCAG 2.2は2023年10月に公開された最新バージョンで、WCAG 2.0に含まれるすべての基準に加え、WCAG 2.1で追加された基準とWCAG 2.2で新たに追加された9基準を含んでいます。
今後、JIS規格がWCAG 2.2に追随して改定される可能性が高いため、新規サイトや大規模リニューアルの際にはWCAG 2.2を基準とすることを推奨します。
- レベルAAAまで対応する必要はありますか?
-
レベルAAAまでサイト全体で対応する必要は、通常ありません。W3C自身が「サイト全体の適合レベルとしてAAAを要求しないこと」を推奨しています。
レベルAAAの達成基準には、すべてのテキストのコントラスト比を7:1以上にする、前期中等教育レベルで読めるテキストにするなど、コンテンツの性質によっては達成が現実的に困難な項目が含まれています。
推奨されるアプローチは以下のとおりです。
- 必須対応: レベルA + レベルAA(全55項目)
- 推奨対応: レベルAAAの中で、自社サイトに関連する項目を可能な範囲で対応
- 特に有効なAAA項目: 2.4.13 フォーカスの外観、2.3.3 アニメーションの無効化、3.1.3 一般的でない用語の説明
レベルAA準拠を達成した上で、ユーザーの利便性が特に高まるAAA項目を選択的に取り入れることが、実務上のベストプラクティスです。
- WordPressサイトでもWCAG 2.2に対応できますか?
-
WordPressサイトでもWCAG 2.2に対応することは十分可能です。対応のポイントは、テーマ選び、プラグインの活用、コンテンツ作成ルールの3つです。
テーマの選定が最も重要です。WordPress公式テーマディレクトリでは「accessibility-ready」タグが付いたテーマを検索できます。このタグが付いたテーマは、キーボード操作、コントラスト比、スキップリンクなどの基本的なアクセシビリティ要件を満たしています。
プラグインの活用として、WP Accessibilityプラグインはスキップリンクの追加やフォーカスリングの強化などを簡単に設定できます。ただし、オーバーレイ型のアクセシビリティプラグインだけに頼ることは推奨しません。
コンテンツ作成ルールとして、画像アップロード時に必ずalt属性を入力すること、見出しレベルを正しく使用すること(h2→h3の順)、リンクテキストに「こちら」ではなく具体的な説明を書くことなどを、編集者全員に徹底してください。
WordPressの管理画面でコンテンツを作成する担当者向けに、簡易チェックリストを用意しておくと、日常的なコンテンツ更新でもアクセシビリティ品質を維持しやすくなります。
引用元・参考リンク
関連記事
ユーザビリティを高めるUX/UIデザイン改善の要点|7原則・5ステップ・チェックリスト付き
EFO(入力フォーム最適化)とは?離脱を防ぐフォーム改善術【施策20選+チェックリスト付】

