アクセシビリティ改善レポートのサンプルです。 Harbor & Pineは、よくあるアクセシビリティの問題を含めて当社が作成した架空のストアで、お客様のウェブサイトをスキャンするのと同じエンジンでテストしています。

ウェブサイトを無料でスキャン

アクセシビリティ改善レポートのサンプル

harborandpine.example

プラットフォーム:
Shopify
作成日時:
2026年9月24日
テストしたページ:
9
エンジン:
axe-core 4.13.0

概要

自動テストで見つかるのは、サイト上のアクセシビリティの問題の一部であり、すべてではありません。このレポートは、当社のテストで見つかった内容とその修正方法を説明するものです。法的助言ではなく、ADA、欧州アクセシビリティ法、その他いかなる法律への準拠も証明するものではありません。

全体像

P1 · 最初に修正主要ページで訪問者の利用を妨げる問題
8
P2 · 次に修正深刻または中程度のバリア
0
P3 · 改善軽微な問題とベストプラクティス
2

重大度別の該当件数

重大
73
深刻
58
中程度
25
軽微
0
確認済みの不合格自動テストで不合格になった問題の種類
10
要確認検出されたが、人による判断が必要
4
合格したチェック不合格がなかった自動ルール
32
未テスト導線のステップと手動確認
7

9ページをテストしました。そのうち4ページはサイトマップから抽出したものです。目標日は重大度に基づく提案です。最終的な日程は開発者と相談して決めてください。

ウェブサイトの概要

テストしたページ上の公開されている根拠から判定しました。ラベルは誤っている場合がありますが、どの追加チェックを実行するかを決めるためだけに使われます。

ウェブサイトの種類

  • ECサイト信頼度:高
    • ECプラットフォームのShopifyで稼働
    • カートへのリンク
    • 商品またはショップへのリンク
  • ランディングページ信頼度:中
    • リンクされた内部ページは6件のみ

検出された技術

  • Shopify信頼度:高

    ページ上のShopifyのアセットまたはスクリプト

このサイトに対するチェック

  • 共通チェック:アクセシビリティ、SEO、表示速度、セキュリティ、メール
  • ECサイト向けモジュール:コレクション、商品、カートの各ページと、購入手続きボタンまでのキーボードでのショッピング導線
  • Shopify向けの注記:テーマと管理画面での修正手順。プラットフォームが管理するヘッダーとCookieは参考として表示

キーボードでのショッピング導線

マウスを使えない人と同じように、キーボード(Tab、Shift+Tab、Enter、Space、Escape)だけでショッピングを試しました。使い捨てのセッションで商品を1点カートに追加し、購入手続きボタンで止まります。購入手続きに進んだり、個人情報や決済情報を入力したりすることは一切ありません。 目標:キーボードだけで、ホームページから購入手続きボタンまでたどり着く。

  1. 01メインナビゲーションに到達する

    合格

    Tabキーを21回押した後、フォーカスがナビゲーション内の「Shop」に到達しました。

    期待される動作:ホームページの先頭からTabキーを押すと、メインナビゲーションのリンクに到達できます。

    • 注記:「Accept all」でEnterキーを押すまで、Cookieバナーがキーボードフォーカスを保持していました。
    再現方法

    https://harborandpine.example/

    1. ホームページを開きます。
    2. ブラウザのアドレスバーをクリックし、Tabキーを繰り返し押してください(Shift+Tabで戻ります)。

    確認したフォーカス順序

    「Shop」

  2. 02コレクションから商品を開く

    合格

    Tabキーを9回押した後、フォーカスが「Trail Daypack 22L」に到達し、Enterキーで/products/trail-daypackが開きました。

    期待される動作:Tabキーでコレクションの一覧にある商品に到達でき、Enterキーでその商品ページを開けます。

    再現方法

    https://harborandpine.example/collections/all

    1. /collections/allを開きます。
    2. 一覧の商品が強調表示されるまでTabキーを押し、Enterキーを押します。

    確認したフォーカス順序

    「Harbor & Pine」 → 「Shop」 → 「New arrivals」 → 「Our story」 → body > header.site > div.icons > button → 「Account」 → body > header.site > div.icons > a → 「FeaturedPrice, low to highPrice, high to low」 → 「Trail Daypack 22L」

  3. 03オプションと数量を選ぶ

    不合格

    3個の商品オプションにキーボードフォーカスが当たりません:「S」、「M」、「L」。マウスには反応しますが、キーボード利用者は選択できません。

    期待される動作:商品のすべてのオプション(サイズ、色、バリエーション)と数量の入力欄に、Tabキーで到達できます。

    2.1.1 キーボード · 信頼度:高

    オプションと数量を選ぶ:不合格の要素を枠で表示
    オプションと数量を選ぶ:不合格の要素を枠で表示
    再現方法

    https://harborandpine.example/products/trail-daypack

    1. /products/trail-daypackを開きます。
    2. ページの先頭からTabキーを押し、「カートに追加」より前にどのコントロールにフォーカスが当たるかを確認します。

    確認したフォーカス順序

    「Harbor & Pine」 → 「Shop」 → 「New arrivals」 → 「Our story」 → …ほか5件… → body > header.site > div.icons > a → div.page.product > div.gallery > div.thumbs > button → div.page.product > div.gallery > div.thumbs > button → div.page.product > div.gallery > div.thumbs > button → div.page.product > div > div.swatches > button → div.page.product > div > div.swatches > button → div.page.product > div > div.swatches > button → 「1」 → 「Add to cart」

    要素
    <div class="size-option" data-fr="opt-1">S</div>
  4. 04キーボードでカートに追加する

    要確認

    「カートに追加」でEnterキーを押すと機能しました(ヘッダーのカートの点数表示が変わった、「カートに追加しました」というメッセージが表示された)が、ステータスメッセージやフォーカスを受け取るダイアログが見つからなかったため、スクリーンリーダーの利用者には商品が追加されたことが伝わらない可能性があります。

    期待される動作:「カートに追加」でEnterキーを押すと商品が追加され、ステータスメッセージ、フォーカスを受け取るダイアログ、またはカートページによって、その確認が伝えられます。

    4.1.3 ステータスメッセージ · 信頼度:中

    キーボードでカートに追加する:このステップでのページ
    キーボードでカートに追加する:このステップでのページ
    再現方法

    https://harborandpine.example/products/trail-daypack

    1. /products/trail-daypackを開きます。
    2. 「カートに追加」にフォーカスが当たるまでTabキーを押し、Enterキーを押します。
    3. スクリーンリーダー(VoiceOver:Cmd+F5)で、確認のメッセージが読み上げられるかを聞きます。
  5. 05カートを変更して購入手続きに進む

    合格

    Tabキー12回で、カートの4個のコントロールすべてと購入手続きボタン(「Check out」)に到達しました。ボタンは押していません。

    期待される動作:数量の入力欄、削除ボタン、購入手続きボタンのすべてにTabキーで到達できます。

    再現方法

    https://harborandpine.example/cart

    1. 任意の商品をカートに追加し、カートページを開きます。
    2. Tabキーを押し、数量の入力欄、削除ボタン、購入手続きボタンのすべてにフォーカスが当たることを確認します。

    確認したフォーカス順序

    「Harbor & Pine」 → 「Shop」 → 「New arrivals」 → 「Our story」 → body > header.site > div.icons > button → 「Account」 → body > header.site > div.icons > a → 「1」 → tbody > tr > td > button.remove → 「2」 → tbody > tr > td > button.remove → 「Check out」

  6. 06購入手続き

    未テスト

    テストは購入手続きボタンで止まります。購入手続きに進むこと、注文の作成、決済情報の入力は一切行いません。Shopifyでは、購入手続きのページはテーマではなくShopifyが運用しています。購入手続きは手動で確認してください(「手動確認」を参照)。

警告書の主張照合マップ

警告書の各主張を、スキャンのエビデンスと照合しました。事実に基づく比較であり、法的助言ではありません。

  • “Images lack alternative text, so product photos are not described.”

    代替テキストのない画像. テストした5ページのうち3ページで10件。

    image-alt

    再現
  • “Text has insufficient color contrast against its background, including sale badges and prices.”

    色のコントラスト不足. テストした5ページのうち5ページで16件。

    color-contrast

    再現
  • “The website cannot be navigated using a keyboard alone.”

    キーボード操作とフォーカス. キーボードフォーカスがCookieバナーから抜け出せなくなります。

    再現
  • “Form fields do not have labels, including the newsletter sign-up and the quantity fields in the cart.”

    ラベルのないフォーム入力欄. テストした5ページのうち3ページで4件。

    select-name, label

    再現
  • “Product videos do not have captions.”

    動画と音声のキャプション. 自動スキャンではキャプションを判定できません。商品やブランドのすべての動画について、正確なキャプションと書き起こしがあるかを確認してください。

    手動確認
  • “Our client is legally blind and uses screen reader software.”

    その他の問題. これは一般的な記述です。主要な操作の流れ(検索、商品ページ、カートに追加、購入手続き)を、VoiceOverやNVDAなどのスクリーンリーダーでテストしてください。

    手動確認

改善計画

優先順位順に並べた問題と、担当者および目標日
優先度問題ステータスWCAG該当件数担当者目標日
P1キーボードフォーカスがCookieバナーから抜け出せない確認済み2.1.21アプリの提供元2026-10-08
P1キーボードで商品のオプションを選べない確認済み2.1.11テーマの開発者2026-10-08
P1ボタンには認識可能なテキストが存在しなければなりません確認済み4.1.241テーマの開発者2026-10-08
P1画像には代替テキストがなければなりません確認済み1.1.122コンテンツの編集者2026-10-08
P1フォーム要素にはラベルがなければなりません確認済み4.1.27テーマの開発者2026-10-08
P1select要素にはアクセシブルな名前がなければなりません確認済み4.1.21テーマの開発者2026-10-08
P1リンクには認識可能なテキストがなければなりません確認済み2.4.4, 4.1.236テーマの開発者2026-10-08
P1要素は色のコントラスト比(最低限)の閾値を満たしていなければなりません確認済み1.4.322ストアのオーナー(管理画面の設定)2026-10-08
P3ページのすべてのコンテンツはlandmarkに含まれていなければなりません確認済みベストプラクティス18テーマの開発者2026-11-23
P3見出しのレベルは1つずつ増加させなければなりません確認済みベストプラクティス7テーマの開発者2026-11-23

各問題の修正方法

P1重大確認済みの不合格WCAG 2.1.2

キーボードフォーカスがCookieバナーから抜け出せない

工数:中・担当:アプリの提供元 · 2.1.2 キーボードトラップなし

キーボード利用者がTabキーを押すと、フォーカスが少数の要素の間を循環し、ページの残りの部分にたどり着けません。

フォーカスが閉じ込められると、キーボードのみの利用者やスクリーンリーダーの利用者はまったく買い物ができません(WCAG 2.1.2 キーボードトラップなし)。

エビデンス

検出方法
キーボードテスト(ホームページをTabキーで移動)
ステータス・信頼度
確認済みの不合格 · 高
検出日時
2026年9月24日(UTC)
場所
1ページで1件

期待される状態: Tabキーを押すと、ページ上のすべての操作可能な要素を順に移動し、ページの残りの部分へと進みます。

確認された状態: Tabキーを40回押した後も、フォーカスは次の要素の間を循環し続けました:Settings、Accept all。

再現方法
  1. ホームページを開きます。
  2. アドレスバーをクリックし、Tabキーを繰り返し押します。
  3. フォーカスが同じ少数の要素に戻り続けます。
不合格の要素(6件を表示)
button#cc-settings
Settings
button#cc-accept.primary
Accept all
button#cc-settings
Settings
button#cc-accept.primary
Accept all
button#cc-settings
Settings
button#cc-accept.primary
Accept all
影響を受けるページ(1)
  • https://harborandpine.example/

修正方法

一般的なガイダンス
  1. CookieバナーまたはCookie同意バナーのアプリの設定に、アクセシビリティやフォーカストラップに関するオプションがないか確認するか、提供元に修正を依頼してください。
  2. モーダルがフォーカスを内部に保持してよいのは開いている間だけで、Escapeキーで閉じられ、フォーカスを元の位置に戻す必要があります。
AIで修正プロンプトを表示

これをテーマファイルと一緒にChatGPT、Claude、Cursor、Copilotに貼り付けてください。公開する前に変更内容を確認してください。

harborandpine.exampleでShopifyストア(Online Store 2.0テーマ、Liquidテンプレート)を運営しています。アクセシビリティのテストでこの問題が見つかったので、テーマで修正したいと考えています。

問題:キーボードフォーカスがCookieバナーから抜け出せない(WCAG 2.1.2)。
場所:1ページで1件(例:/)。

ブラウザが描画した、不合格の要素の1つ:
```html
Settings
```

なぜ重要なのか:フォーカスが閉じ込められると、キーボードのみの利用者やスクリーンリーダーの利用者はまったく買い物ができません(WCAG 2.1.2 キーボードトラップなし)。

変更が必要な点:
- CookieバナーまたはCookie同意バナーのアプリの設定に、アクセシビリティやフォーカストラップに関するオプションがないか確認するか、提供元に修正を依頼してください。
- モーダルがフォーカスを内部に保持してよいのは開いている間だけで、Escapeキーで閉じられ、フォーカスを元の位置に戻す必要があります。

回答のルール:
- 正確な変更内容を修正前と修正後の形で示し、変更を加えるファイルまたは設定の名前を挙げてください。先に私のファイルを確認する必要がある場合は、貼り付けるよう依頼してください。
- 見た目のデザインと既存の動作はすべてそのまま維持してください。
- 商品名、価格、テキストを創作せず、私が後から記入できるプレースホルダーを使ってください。
- 最後に、私自身が修正を確認する方法を示してください。
- キーボードとスクリーンリーダーで確認する方法も含めてください。

修正を確認する

  • ホームページを読み込み、Tabキーを繰り返し押して、フォーカスがメインのナビゲーションとコンテンツに到達することを確認します。

自動のキーボード検査で検出しました。手動で確認してください。

P1重大確認済みの不合格WCAG 2.1.1

キーボードで商品のオプションを選べない

工数:中・担当:テーマの開発者 · 2.1.1 キーボード

サイズ、色、バリエーションのオプションがマウスには反応しますが、キーボードフォーカスを受けられないため、キーボード利用者はバリエーションを選べません。

多くのスクリーンリーダー利用者を含め、キーボードのみの買い物客はこのステップから先に進めません(WCAG 2.1.1)。

エビデンス

検出方法
キーボード導線
ステータス・信頼度
確認済みの不合格 · 高
検出日時
2026年9月24日(UTC)
場所
1ページで1件

期待される状態: 商品のすべてのオプション(サイズ、色、バリエーション)と数量の入力欄に、Tabキーで到達できます。

確認された状態: 3個の商品オプションにキーボードフォーカスが当たりません:「S」、「M」、「L」。マウスには反応しますが、キーボード利用者は選択できません。

キーボードで商品のオプションを選べない:枠で囲んだ要素
キーボードで商品のオプションを選べない:枠で囲んだ要素
再現方法
  1. /products/trail-daypackを開きます。
  2. ページの先頭からTabキーを押し、「カートに追加」より前にどのコントロールにフォーカスが当たるかを確認します。
不合格の要素(1件を表示)
(スクリーンショットを参照)
<div class="size-option" data-fr="opt-1">S</div>
影響を受けるページ(1)
  • https://harborandpine.example/products/trail-daypack

修正方法

一般的なガイダンス
  1. オプションの選択欄は、表示ラベル付きのネイティブのラジオボタン(または<select>)で作り、ラベルをスウォッチとしてスタイル設定します。
  2. カスタム要素を使い続ける場合は、各オプションにtabindex="0"、role="radiogroup"の中でaria-checkedを伴うrole="radio"、矢印キーとSpaceキーの処理が必要です。ネイティブのラジオボタンなら、これらすべてが最初から備わっています。

コード

開発者向けの実装例です。当社はテーマのソースコードを持っていないため、ファイルの場所は目安であり、正確なパスではありません。

修正前・検出内容 · テーマの商品フォーム(バリエーションの選択欄)
<div class="size-option" data-fr="opt-1">S</div>
修正後 · 調整して使う例
<fieldset class="variant-picker">
  <legend>Size</legend>
  <input type="radio" id="size-s" name="Size" value="S" class="visually-hidden">
  <label for="size-s" class="size-option">S</label>
  <input type="radio" id="size-m" name="Size" value="M" class="visually-hidden">
  <label for="size-m" class="size-option">M</label>
</fieldset>

各オプションは本物のラジオボタンで、Tabキーでたどり着け、矢印キーで変更できます。ラベルはスウォッチのスタイルを維持します。お客様のオプション名と値を使ってください。

AIで修正プロンプトを表示

これをテーマファイルと一緒にChatGPT、Claude、Cursor、Copilotに貼り付けてください。公開する前に変更内容を確認してください。

harborandpine.exampleでShopifyストア(Online Store 2.0テーマ、Liquidテンプレート)を運営しています。アクセシビリティのテストでこの問題が見つかったので、テーマで修正したいと考えています。

問題:キーボードで商品のオプションを選べない(WCAG 2.1.1)。
場所:1ページで1件(例:/products/trail-daypack)。

ブラウザが描画した、不合格の要素の1つ:
```html
<div class="size-option" data-fr="opt-1">S</div>
```

なぜ重要なのか:多くのスクリーンリーダー利用者を含め、キーボードのみの買い物客はこのステップから先に進めません(WCAG 2.1.1)。

変更が必要な点:
- オプションの選択欄は、表示ラベル付きのネイティブのラジオボタン(または<select>)で作り、ラベルをスウォッチとしてスタイル設定します。
- カスタム要素を使い続ける場合は、各オプションにtabindex="0"、role="radiogroup"の中でaria-checkedを伴うrole="radio"、矢印キーとSpaceキーの処理が必要です。ネイティブのラジオボタンなら、これらすべてが最初から備わっています。

変更の提案(テーマの商品フォーム(バリエーションの選択欄)):
```html
<fieldset class="variant-picker">
  <legend>Size</legend>
  <input type="radio" id="size-s" name="Size" value="S" class="visually-hidden">
  <label for="size-s" class="size-option">S</label>
  <input type="radio" id="size-m" name="Size" value="M" class="visually-hidden">
  <label for="size-m" class="size-option">M</label>
</fieldset>
```

回答のルール:
- 正確な変更内容を修正前と修正後の形で示し、変更を加えるファイルまたは設定の名前を挙げてください。先に私のファイルを確認する必要がある場合は、貼り付けるよう依頼してください。
- 見た目のデザインと既存の動作はすべてそのまま維持してください。
- 商品名、価格、テキストを創作せず、私が後から記入できるプレースホルダーを使ってください。
- 最後に、私自身が修正を確認する方法を示してください。
- キーボードとスクリーンリーダーで確認する方法も含めてください。

修正を確認する

  • キーボードだけを使って、再現手順を繰り返します。
  • このレポートから再テストを依頼してください。導線テストがもう一度実行されます。
P1重大確認済みの不合格WCAG 4.1.2

ボタンには認識可能なテキストが存在しなければなりません

工数:小・担当:テーマの開発者 · 4.1.2 名前・役割・値

一部のボタンにアクセシブルな名前がないため、スクリーンリーダーの利用者には「ボタン」としか聞こえません。

WCAG 4.1.2では、すべてのコントロールに名前が求められます。名前のないボタンには、数量の増減ボタン、閉じるボタン、スライダーの矢印がよくあります。

エビデンス

検出方法
axe-coreの自動ルール
ステータス・信頼度
確認済みの不合格 · 高
検出日時
2026年9月24日(UTC)
場所
9ページで41件

期待される状態: ボタンには認識可能なテキストが存在しなければなりません

確認された状態: 要素内にスクリーン・リーダーが認識可能なテキストが存在しません。aria-label属性が存在しない、または空です。aria-labelledby属性が存在しない、存在しない要素を参照している、または空の要素を参照しています。要素にtitle属性が指定されていません。要素に暗黙の(包含された)<label>が存在しません。要素に明示的な<label>が存在しません。要素のデフォルトのセマンティクスはrole="none"またはrole="presentation"で上書きされませんでした。

ボタンには認識可能なテキストが存在しなければなりません:/で枠で囲んだ要素
ボタンには認識可能なテキストが存在しなければなりません:/で枠で囲んだ要素
ボタンには認識可能なテキストが存在しなければなりません:/collections/allで枠で囲んだ要素
ボタンには認識可能なテキストが存在しなければなりません:/collections/allで枠で囲んだ要素
再現方法
  1. ChromeまたはEdgeでhttps://harborandpine.example/を開きます。
  2. デベロッパーツール(F12)›「Elements」を開き、Ctrl+F(MacではCmd+F)を押して次を検索します:.icons > button[type="button"]
  3. デベロッパーツールの「Accessibility」ペインで、要素の計算された名前(Name)が空になっています。
  4. または、無料のブラウザ拡張機能axe DevToolsをページで実行します。この問題は「button-name」として報告されます。
不合格の要素(4件を表示)
.icons > button[type="button"]
<button type="button"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="11" cy="11" r="7"></circle><path d="M20 20l-3.5-3.5"></path></svg></button>
.thumbs > button:nth-child(1)
<button type="button"><img src="/img/daypack.svg"></button>
.thumbs > button:nth-child(2)
<button type="button"><img src="/img/jacket.svg"></button>
.thumbs > button:nth-child(3)
<button type="button"><img src="/img/bottle.svg"></button>
影響を受けるページ(9)
  • https://harborandpine.example/
  • https://harborandpine.example/collections/all
  • https://harborandpine.example/products/trail-daypack
  • https://harborandpine.example/cart
  • https://harborandpine.example/pages/about
  • https://harborandpine.example/products/pine-wool-beanie
  • https://harborandpine.example/products/enamel-camp-mug
  • https://harborandpine.example/products/harbor-lantern
  • https://harborandpine.example/products/insulated-bottle

修正方法

お客様のページのマークアップから作成したコード
  1. 下の例にあるボタンを探します。
  2. ボタンの機能を示す表示テキスト、視覚的に非表示のテキスト、またはaria-labelを追加します(例:aria-label="Close"やaria-label="Increase quantity")。

コード

開発者向けの実装例です。当社はテーマのソースコードを持っていないため、ファイルの場所は目安であり、正確なパスではありません。

修正前・検出内容 · テーマのコード(表示されているマークアップで検索してください)
<button type="button">…</button>
修正後 · 不合格の要素から作成
<button type="button" aria-label="[What this button does]">…</button>

角括弧内のテキストを、ボタンの機能を表す言葉に置き換えてください。ボタン内の表示テキストや、視覚的に非表示のテキストでもかまいません。

修正前・検出内容 · テーマのコード(表示されているマークアップで検索してください)
<button type="button"><img src="/img/daypack.svg"></button>
修正後 · 不合格の要素から作成
<button type="button" aria-label="[Describe the image, e.g. Back view]"><img src="/img/daypack.svg"></button>

角括弧内のテキストを、ボタンの機能を表す言葉に置き換えてください。ボタン内の表示テキストや、視覚的に非表示のテキストでもかまいません。

修正前・検出内容 · テーマのコード(表示されているマークアップで検索してください)
<button type="button"><img src="/img/jacket.svg"></button>
修正後 · 不合格の要素から作成
<button type="button" aria-label="[Describe the image, e.g. Back view]"><img src="/img/jacket.svg"></button>

角括弧内のテキストを、ボタンの機能を表す言葉に置き換えてください。ボタン内の表示テキストや、視覚的に非表示のテキストでもかまいません。

修正前・検出内容 · テーマのコード(表示されているマークアップで検索してください)
<button type="button"><img src="/img/bottle.svg"></button>
修正後 · 不合格の要素から作成
<button type="button" aria-label="[Describe the image, e.g. Back view]"><img src="/img/bottle.svg"></button>

角括弧内のテキストを、ボタンの機能を表す言葉に置き換えてください。ボタン内の表示テキストや、視覚的に非表示のテキストでもかまいません。

AIで修正プロンプトを表示

これをテーマファイルと一緒にChatGPT、Claude、Cursor、Copilotに貼り付けてください。公開する前に変更内容を確認してください。

harborandpine.exampleでShopifyストア(Online Store 2.0テーマ、Liquidテンプレート)を運営しています。アクセシビリティのテストでこの問題が見つかったので、テーマで修正したいと考えています。

問題:ボタンには認識可能なテキストが存在しなければなりません(WCAG 4.1.2)。
場所:9ページで41件(例:/、/collections/all、/products/trail-daypack、/cart)。

ブラウザが描画した、不合格の要素の1つ:
```html
<button type="button"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="11" cy="11" r="7"></circle><path d="M20 20l-3.5-3.5"></path></svg></button>
```

なぜ重要なのか:WCAG 4.1.2では、すべてのコントロールに名前が求められます。名前のないボタンには、数量の増減ボタン、閉じるボタン、スライダーの矢印がよくあります。

変更が必要な点:
- 下の例にあるボタンを探します。
- ボタンの機能を示す表示テキスト、視覚的に非表示のテキスト、またはaria-labelを追加します(例:aria-label="Close"やaria-label="Increase quantity")。

変更の提案(テーマのコード(表示されているマークアップで検索してください)):
```html
<button type="button" aria-label="[What this button does]">…</button>
```

回答のルール:
- 正確な変更内容を修正前と修正後の形で示し、変更を加えるファイルまたは設定の名前を挙げてください。先に私のファイルを確認する必要がある場合は、貼り付けるよう依頼してください。
- 見た目のデザインと既存の動作はすべてそのまま維持してください。
- 商品名、価格、テキストを創作せず、私が後から記入できるプレースホルダーを使ってください。
- 最後に、私自身が修正を確認する方法を示してください。
- キーボードとスクリーンリーダーで確認する方法も含めてください。

修正を確認する

  • 該当するページを再スキャンします。
  • スクリーンリーダーでボタンを確認します。

詳しいガイダンス:https://dequeuniversity.com/rules/axe/4.13/button-name?application=playwright

P1重大確認済みの不合格WCAG 1.1.1

画像には代替テキストがなければなりません

工数:中・担当:コンテンツの編集者 · 1.1.1 非テキストコンテンツ

画像に代替テキストがないため、スクリーンリーダーの利用者には何が写っているのかがわかりません。

WCAG 1.1.1では、意味のある画像に代替テキストが求められます。代替テキストがないと、スクリーンリーダーの利用者は写真がどの商品を写しているのかを判断できません。

エビデンス

検出方法
axe-coreの自動ルール
ステータス・信頼度
確認済みの不合格 · 高
検出日時
2026年9月24日(UTC)
場所
7ページで22件

期待される状態: 画像には代替テキストがなければなりません

確認された状態: 要素にalt属性が指定されていません。aria-label属性が存在しない、または空です。aria-labelledby属性が存在しない、存在しない要素を参照している、または空の要素を参照しています。要素にtitle属性が指定されていません。要素のデフォルトのセマンティクスはrole="none"またはrole="presentation"で上書きされませんでした。

画像には代替テキストがなければなりません:/で枠で囲んだ要素
画像には代替テキストがなければなりません:/で枠で囲んだ要素
画像には代替テキストがなければなりません:/collections/allで枠で囲んだ要素
画像には代替テキストがなければなりません:/collections/allで枠で囲んだ要素
再現方法
  1. ChromeまたはEdgeでhttps://harborandpine.example/を開きます。
  2. デベロッパーツール(F12)›「Elements」を開き、Ctrl+F(MacではCmd+F)を押して次を検索します:img[src$="hero-photo.jpg"]
  3. デベロッパーツールの「Accessibility」ペインで、要素の計算された名前(Name)が空になっています。
  4. または、無料のブラウザ拡張機能axe DevToolsをページで実行します。この問題は「image-alt」として報告されます。
不合格の要素(4件を表示)
img[src$="hero-photo.jpg"]
<img src="/img/hero-photo.jpg" loading="lazy">
img[src$="mug.svg"]
<img src="/img/mug.svg">
img[src$="beanie.svg"]
<img src="/img/beanie.svg">
img[src$="jacket.svg"]
<img src="/img/jacket.svg">
影響を受けるページ(7)
  • https://harborandpine.example/
  • https://harborandpine.example/collections/all
  • https://harborandpine.example/products/trail-daypack
  • https://harborandpine.example/products/pine-wool-beanie
  • https://harborandpine.example/products/enamel-camp-mug
  • https://harborandpine.example/products/harbor-lantern
  • https://harborandpine.example/products/insulated-bottle

修正方法

お客様のページのマークアップから作成したコード
  1. Shopifyの管理画面で「商品管理 > [商品] > メディア」を開き、各画像をクリックして「代替テキスト」を入力します。セクションの画像は、「オンラインストア > テーマ > カスタマイズ」を開き、セクションの設定で画像の代替テキストを設定します。
  2. 買い物客にとって重要な情報、つまり商品名、色、写っている角度を記述します(例:「キャンバストートバッグ、オリーブ、正面」)。
  3. 装飾目的の画像は、スクリーンリーダーが読み飛ばすように空のalt属性(alt="")にします。

コード

開発者向けの実装例です。当社はテーマのソースコードを持っていないため、ファイルの場所は目安であり、正確なパスではありません。

修正前・検出内容 · 商品写真:Shopifyの管理画面 › 商品管理 › メディア › 代替テキスト。その他の画像:テーマのコード
<img src="/img/hero-photo.jpg" loading="lazy">
修正後 · 不合格の要素から作成
<img src="/img/hero-photo.jpg" loading="lazy" alt="[Describe the image for a shopper]">

画像に写っているものを記述します(商品写真の場合:商品、色、角度)。画像が純粋に装飾目的であれば、スクリーンリーダーが読み飛ばすように、代わりにalt=""を使います。

修正前・検出内容 · 商品写真:Shopifyの管理画面 › 商品管理 › メディア › 代替テキスト。その他の画像:テーマのコード
<img src="/img/mug.svg">
修正後 · 不合格の要素から作成
<img src="/img/mug.svg" alt="[Describe the image for a shopper]">

画像に写っているものを記述します(商品写真の場合:商品、色、角度)。画像が純粋に装飾目的であれば、スクリーンリーダーが読み飛ばすように、代わりにalt=""を使います。

修正前・検出内容 · 商品写真:Shopifyの管理画面 › 商品管理 › メディア › 代替テキスト。その他の画像:テーマのコード
<img src="/img/beanie.svg">
修正後 · 不合格の要素から作成
<img src="/img/beanie.svg" alt="[Describe the image for a shopper]">

画像に写っているものを記述します(商品写真の場合:商品、色、角度)。画像が純粋に装飾目的であれば、スクリーンリーダーが読み飛ばすように、代わりにalt=""を使います。

修正前・検出内容 · 商品写真:Shopifyの管理画面 › 商品管理 › メディア › 代替テキスト。その他の画像:テーマのコード
<img src="/img/jacket.svg">
修正後 · 不合格の要素から作成
<img src="/img/jacket.svg" alt="[Describe the image for a shopper]">

画像に写っているものを記述します(商品写真の場合:商品、色、角度)。画像が純粋に装飾目的であれば、スクリーンリーダーが読み飛ばすように、代わりにalt=""を使います。

AIで修正プロンプトを表示

これをテーマファイルと一緒にChatGPT、Claude、Cursor、Copilotに貼り付けてください。公開する前に変更内容を確認してください。

harborandpine.exampleでShopifyストア(Online Store 2.0テーマ、Liquidテンプレート)を運営しています。アクセシビリティのテストでこの問題が見つかったので、テーマで修正したいと考えています。

問題:画像には代替テキストがなければなりません(WCAG 1.1.1)。
場所:7ページで22件(例:/、/collections/all、/products/trail-daypack、/products/pine-wool-beanie)。

ブラウザが描画した、不合格の要素の1つ:
```html
<img src="/img/hero-photo.jpg" loading="lazy">
```

なぜ重要なのか:WCAG 1.1.1では、意味のある画像に代替テキストが求められます。代替テキストがないと、スクリーンリーダーの利用者は写真がどの商品を写しているのかを判断できません。

変更が必要な点:
- Shopifyの管理画面で「商品管理 > [商品] > メディア」を開き、各画像をクリックして「代替テキスト」を入力します。セクションの画像は、「オンラインストア > テーマ > カスタマイズ」を開き、セクションの設定で画像の代替テキストを設定します。
- 買い物客にとって重要な情報、つまり商品名、色、写っている角度を記述します(例:「キャンバストートバッグ、オリーブ、正面」)。
- 装飾目的の画像は、スクリーンリーダーが読み飛ばすように空のalt属性(alt="")にします。

変更の提案(商品写真:Shopifyの管理画面 › 商品管理 › メディア › 代替テキスト。その他の画像:テーマのコード):
```html
<img src="/img/hero-photo.jpg" loading="lazy" alt="[Describe the image for a shopper]">
```

回答のルール:
- 正確な変更内容を修正前と修正後の形で示し、変更を加えるファイルまたは設定の名前を挙げてください。先に私のファイルを確認する必要がある場合は、貼り付けるよう依頼してください。
- 見た目のデザインと既存の動作はすべてそのまま維持してください。
- 商品名、価格、テキストを創作せず、私が後から記入できるプレースホルダーを使ってください。
- 最後に、私自身が修正を確認する方法を示してください。
- キーボードとスクリーンリーダーで確認する方法も含めてください。

修正を確認する

  • 該当するページを再スキャンします。
  • スクリーンリーダー(MacのVoiceOverはCmd+F5)を使い、商品画像がどう読み上げられるかを聞いて確認します。

詳しいガイダンス:https://dequeuniversity.com/rules/axe/4.13/image-alt?application=playwright

P1重大確認済みの不合格WCAG 4.1.2

フォーム要素にはラベルがなければなりません

工数:小・担当:テーマの開発者 · 4.1.2 名前・役割・値

一部のフォーム入力欄にラベルがないため、スクリーンリーダーの利用者には何を入力すればよいかがわかりません。

WCAG 1.3.1、3.3.2、4.1.2では、フォーム入力欄にラベルが求められます。よく問題になるのは、メールマガジンの登録欄や検索欄です。

エビデンス

検出方法
axe-coreの自動ルール
ステータス・信頼度
確認済みの不合格 · 高
検出日時
2026年9月24日(UTC)
場所
6ページで7件

期待される状態: フォーム要素にはラベルがなければなりません

確認された状態: 要素に暗黙の(包含された)<label>が存在しません。要素に明示的な<label>が存在しません。aria-label属性が存在しない、または空です。aria-labelledby属性が存在しない、存在しない要素を参照している、または空の要素を参照しています。要素にtitle属性が指定されていません。要素にplaceholder属性が指定されていません。要素のデフォルトのセマンティクスはrole="none"またはrole="presentation"で上書きされませんでした。

フォーム要素にはラベルがなければなりません:/products/trail-daypackで枠で囲んだ要素
フォーム要素にはラベルがなければなりません:/products/trail-daypackで枠で囲んだ要素
フォーム要素にはラベルがなければなりません:/cartで枠で囲んだ要素
フォーム要素にはラベルがなければなりません:/cartで枠で囲んだ要素
再現方法
  1. ChromeまたはEdgeでhttps://harborandpine.example/products/trail-daypackを開きます。
  2. デベロッパーツール(F12)›「Elements」を開き、Ctrl+F(MacではCmd+F)を押して次を検索します:input
  3. デベロッパーツールの「Accessibility」ペインで、要素の計算された名前(Name)が空になっています。
  4. または、無料のブラウザ拡張機能axe DevToolsをページで実行します。この問題は「label」として報告されます。
不合格の要素(2件を表示)
input
<input type="number" value="1" min="1">
input[value="2"]
<input type="number" value="2" min="1">
影響を受けるページ(6)
  • https://harborandpine.example/products/trail-daypack
  • https://harborandpine.example/cart
  • https://harborandpine.example/products/pine-wool-beanie
  • https://harborandpine.example/products/enamel-camp-mug
  • https://harborandpine.example/products/harbor-lantern
  • https://harborandpine.example/products/insulated-bottle

修正方法

お客様のページのマークアップから作成したコード
  1. 各入力欄に<label for="field-id">要素を付けるか、少なくともaria-labelを付けます。
  2. プレースホルダーテキストだけではラベルとみなされません。

コード

開発者向けの実装例です。当社はテーマのソースコードを持っていないため、ファイルの場所は目安であり、正確なパスではありません。

修正前・検出内容 · テーマのコード(表示されているマークアップで検索してください)
<input type="number" value="1" min="1">
修正後 · 不合格の要素から作成
<input type="number" value="1" min="1" aria-label="Quantity">

入力欄にidがないため、最も手早い修正はaria-labelです。表示される<label>のほうが、誰にとっても使いやすくなります。ラベルのテキスト「Quantity」は入力欄から推測したものです。必要に応じて調整してください。

修正前・検出内容 · テーマのコード(表示されているマークアップで検索してください)
<input type="number" value="2" min="1">
修正後 · 不合格の要素から作成
<input type="number" value="2" min="1" aria-label="Quantity">

入力欄にidがないため、最も手早い修正はaria-labelです。表示される<label>のほうが、誰にとっても使いやすくなります。ラベルのテキスト「Quantity」は入力欄から推測したものです。必要に応じて調整してください。

AIで修正プロンプトを表示

これをテーマファイルと一緒にChatGPT、Claude、Cursor、Copilotに貼り付けてください。公開する前に変更内容を確認してください。

harborandpine.exampleでShopifyストア(Online Store 2.0テーマ、Liquidテンプレート)を運営しています。アクセシビリティのテストでこの問題が見つかったので、テーマで修正したいと考えています。

問題:フォーム要素にはラベルがなければなりません(WCAG 4.1.2)。
場所:6ページで7件(例:/products/trail-daypack、/cart、/products/pine-wool-beanie、/products/enamel-camp-mug)。

ブラウザが描画した、不合格の要素の1つ:
```html
<input type="number" value="1" min="1">
```

なぜ重要なのか:WCAG 1.3.1、3.3.2、4.1.2では、フォーム入力欄にラベルが求められます。よく問題になるのは、メールマガジンの登録欄や検索欄です。

変更が必要な点:
- 各入力欄に<label for="field-id">要素を付けるか、少なくともaria-labelを付けます。
- プレースホルダーテキストだけではラベルとみなされません。

変更の提案(テーマのコード(表示されているマークアップで検索してください)):
```html
<input type="number" value="1" min="1" aria-label="Quantity">
```

回答のルール:
- 正確な変更内容を修正前と修正後の形で示し、変更を加えるファイルまたは設定の名前を挙げてください。先に私のファイルを確認する必要がある場合は、貼り付けるよう依頼してください。
- 見た目のデザインと既存の動作はすべてそのまま維持してください。
- 商品名、価格、テキストを創作せず、私が後から記入できるプレースホルダーを使ってください。
- 最後に、私自身が修正を確認する方法を示してください。
- キーボードとスクリーンリーダーで確認する方法も含めてください。

修正を確認する

  • 再スキャンし、labelルールが不合格にならなくなったことを確認します。
  • 各ラベルをクリックし、対応する入力欄にフォーカスが移ることを確認します。

詳しいガイダンス:https://dequeuniversity.com/rules/axe/4.13/label?application=playwright

P1重大確認済みの不合格WCAG 4.1.2

select要素にはアクセシブルな名前がなければなりません

工数:小・担当:テーマの開発者 · 4.1.2 名前・役割・値

ドロップダウン(多くは並べ替えやバリエーションの選択)にラベルがありません。

WCAG 4.1.2では、セレクトメニューにアクセシブルな名前が求められます。

エビデンス

検出方法
axe-coreの自動ルール
ステータス・信頼度
確認済みの不合格 · 高
検出日時
2026年9月24日(UTC)
場所
1ページで1件

期待される状態: select要素にはアクセシブルな名前がなければなりません

確認された状態: 要素に暗黙の(包含された)<label>が存在しません。要素に明示的な<label>が存在しません。aria-label属性が存在しない、または空です。aria-labelledby属性が存在しない、存在しない要素を参照している、または空の要素を参照しています。要素にtitle属性が指定されていません。要素のデフォルトのセマンティクスはrole="none"またはrole="presentation"で上書きされませんでした。

select要素にはアクセシブルな名前がなければなりません:/collections/allで枠で囲んだ要素
select要素にはアクセシブルな名前がなければなりません:/collections/allで枠で囲んだ要素
再現方法
  1. ChromeまたはEdgeでhttps://harborandpine.example/collections/allを開きます。
  2. デベロッパーツール(F12)›「Elements」を開き、Ctrl+F(MacではCmd+F)を押して次を検索します:select
  3. デベロッパーツールの「Accessibility」ペインで、要素の計算された名前(Name)が空になっています。
  4. または、無料のブラウザ拡張機能axe DevToolsをページで実行します。この問題は「select-name」として報告されます。
不合格の要素(1件を表示)
select
<select><option>Featured</option><option>Price, low to high</option><option>Price, high to low</option></select>
影響を受けるページ(1)
  • https://harborandpine.example/collections/all

修正方法

お客様のページのマークアップから作成したコード
  1. select要素に関連付けた<label>か、aria-label="Sort by"のようなaria-labelを追加します。

コード

開発者向けの実装例です。当社はテーマのソースコードを持っていないため、ファイルの場所は目安であり、正確なパスではありません。

修正前・検出内容 · テーマのコード(表示されているマークアップで検索してください)
<select><option>Featured</option><option>Price, low to high</option><option>Price, high to low</option></select>
修正後 · 不合格の要素から作成
<select aria-label="[Field label]"><option>Featured</option><option>Price, low to high</option><option>Price, high to low</option></select>

入力欄にidがないため、最も手早い修正はaria-labelです。表示される<label>のほうが、誰にとっても使いやすくなります。角括弧内のテキストを、入力欄のラベルに置き換えてください。

AIで修正プロンプトを表示

これをテーマファイルと一緒にChatGPT、Claude、Cursor、Copilotに貼り付けてください。公開する前に変更内容を確認してください。

harborandpine.exampleでShopifyストア(Online Store 2.0テーマ、Liquidテンプレート)を運営しています。アクセシビリティのテストでこの問題が見つかったので、テーマで修正したいと考えています。

問題:select要素にはアクセシブルな名前がなければなりません(WCAG 4.1.2)。
場所:1ページで1件(例:/collections/all)。

ブラウザが描画した、不合格の要素の1つ:
```html
<select><option>Featured</option><option>Price, low to high</option><option>Price, high to low</option></select>
```

なぜ重要なのか:WCAG 4.1.2では、セレクトメニューにアクセシブルな名前が求められます。

変更が必要な点:
- select要素に関連付けた<label>か、aria-label="Sort by"のようなaria-labelを追加します。

変更の提案(テーマのコード(表示されているマークアップで検索してください)):
```html
<select aria-label="[Field label]"><option>Featured</option><option>Price, low to high</option><option>Price, high to low</option></select>
```

回答のルール:
- 正確な変更内容を修正前と修正後の形で示し、変更を加えるファイルまたは設定の名前を挙げてください。先に私のファイルを確認する必要がある場合は、貼り付けるよう依頼してください。
- 見た目のデザインと既存の動作はすべてそのまま維持してください。
- 商品名、価格、テキストを創作せず、私が後から記入できるプレースホルダーを使ってください。
- 最後に、私自身が修正を確認する方法を示してください。
- キーボードとスクリーンリーダーで確認する方法も含めてください。

修正を確認する

  • コレクションページと商品ページを再スキャンします。

詳しいガイダンス:https://dequeuniversity.com/rules/axe/4.13/select-name?application=playwright

P1深刻確認済みの不合格WCAG 1.4.3

要素は色のコントラスト比(最低限)の閾値を満たしていなければなりません

工数:小・担当:ストアのオーナー(管理画面の設定) · 1.4.3 コントラスト(最低限)

一部のテキストが、ロービジョンの人が読み取れるほど背景から際立っていません。

WCAG 1.4.3では、通常のテキストで4.5:1以上、大きなテキストで3:1以上のコントラスト比が求められます。薄い色の価格、バッジ、バナーは、ロービジョンの人にとっても、明るい場所にいるすべての人にとっても読みにくくなります。

エビデンス

検出方法
axe-coreの自動ルール
ステータス・信頼度
確認済みの不合格 · 高
検出日時
2026年9月24日(UTC)
場所
9ページで22件

期待される状態: 要素は色のコントラスト比(最低限)の閾値を満たしていなければなりません

確認された状態: 要素のコントラスト比が不十分です 3.09(前景色: #ffffff、背景色: #e76f51、フォントサイズ: 9.8pt (13px)、フォントの太さ: normal)。コントラスト比4.5:1を必要とします。

要素は色のコントラスト比(最低限)の閾値を満たしていなければなりません:/で枠で囲んだ要素
要素は色のコントラスト比(最低限)の閾値を満たしていなければなりません:/で枠で囲んだ要素
要素は色のコントラスト比(最低限)の閾値を満たしていなければなりません:/collections/allで枠で囲んだ要素
要素は色のコントラスト比(最低限)の閾値を満たしていなければなりません:/collections/allで枠で囲んだ要素
再現方法
  1. ChromeまたはEdgeでhttps://harborandpine.example/を開きます。
  2. デベロッパーツール(F12)›「Elements」を開き、Ctrl+F(MacではCmd+F)を押して次を検索します:.announce
  3. 「Styles」ペインで要素の色の横にあるカラースウォッチをクリックすると、測定されたコントラスト比が表示されます。
  4. または、無料のブラウザ拡張機能axe DevToolsをページで実行します。この問題は「color-contrast」として報告されます。
不合格の要素(4件を表示)
.announce
<div class="announce">Free shipping on orders over $75 · Easy 30-day returns</div>
article:nth-child(3) > .badge
<span class="badge">Sale</span>
article:nth-child(3) > .price > .compare
<span class="compare">$72</span>
article:nth-child(4) > .price > .compare
<span class="compare">$40</span>
影響を受けるページ(9)
  • https://harborandpine.example/
  • https://harborandpine.example/collections/all
  • https://harborandpine.example/products/trail-daypack
  • https://harborandpine.example/cart
  • https://harborandpine.example/pages/about
  • https://harborandpine.example/products/pine-wool-beanie
  • https://harborandpine.example/products/enamel-camp-mug
  • https://harborandpine.example/products/harbor-lantern
  • https://harborandpine.example/products/insulated-bottle

修正方法

お客様のページのマークアップから作成したコード
  1. 下に一覧表示された不合格の要素を開き、不合格の概要に記載された前景色と背景色を控えます。
  2. 「オンラインストア > テーマ > カスタマイズ > テーマ設定 > 色」で、該当する配色のテキストの色を濃くするか背景を明るくして、比率を4.5:1以上にします。
  3. セールのバッジ、プレースホルダーテキスト、フッターのリンク、画像上のボタンには特に注意してください。

コード

開発者向けの実装例です。当社はテーマのソースコードを持っていないため、ファイルの場所は目安であり、正確なパスではありません。

修正前・検出内容 · テーマ設定 › 色、またはテーマのCSSファイル
<div class="announce">Free shipping on orders over $75 · Easy 30-day returns</div>
修正後 · 不合格の要素から作成
.announce {
  background-color: #b95941; /* was #e76f51: 3.09:1, now 4.59:1 */
}

13pxのテキストで3.09:1と測定されました。WCAG 1.4.3では4.5:1が必要です。#b95941なら同じ色相のまま合格します。セレクターは当社のテストで使用したものです。テーマでは、同じスタイルにもっと広い範囲のクラスを使っている場合があります。

修正前・検出内容 · テーマ設定 › 色、またはテーマのCSSファイル
<span class="badge">Sale</span>
修正後 · 不合格の要素から作成
.badge {
  background-color: #9f693f; /* was #f4a261: 2.06:1, now 4.59:1 */
}

12pxの太字テキストで2.06:1と測定されました。WCAG 1.4.3では4.5:1が必要です。#9f693fなら同じ色相のまま合格します。セレクターは当社のテストで使用したものです。テーマでは、同じスタイルにもっと広い範囲のクラスを使っている場合があります。

修正前・検出内容 · テーマ設定 › 色、またはテーマのCSSファイル
<span class="compare">$72</span>
修正後 · 不合格の要素から作成
.compare {
  color: #78736c; /* was #b0a99f: 2.29:1, now 4.62:1 */
}

14pxのテキストで2.29:1と測定されました。WCAG 1.4.3では4.5:1が必要です。#78736cなら同じ色相のまま合格します。セレクターは当社のテストで使用したものです。テーマでは、同じスタイルにもっと広い範囲のクラスを使っている場合があります。

AIで修正プロンプトを表示

これをテーマファイルと一緒にChatGPT、Claude、Cursor、Copilotに貼り付けてください。公開する前に変更内容を確認してください。

harborandpine.exampleでShopifyストア(Online Store 2.0テーマ、Liquidテンプレート)を運営しています。アクセシビリティのテストでこの問題が見つかったので、テーマで修正したいと考えています。

問題:要素は色のコントラスト比(最低限)の閾値を満たしていなければなりません(WCAG 1.4.3)。
場所:9ページで22件(例:/、/collections/all、/products/trail-daypack、/cart)。

ブラウザが描画した、不合格の要素の1つ:
```html
<div class="announce">Free shipping on orders over $75 · Easy 30-day returns</div>
```

なぜ重要なのか:WCAG 1.4.3では、通常のテキストで4.5:1以上、大きなテキストで3:1以上のコントラスト比が求められます。薄い色の価格、バッジ、バナーは、ロービジョンの人にとっても、明るい場所にいるすべての人にとっても読みにくくなります。

変更が必要な点:
- 下に一覧表示された不合格の要素を開き、不合格の概要に記載された前景色と背景色を控えます。
- 「オンラインストア > テーマ > カスタマイズ > テーマ設定 > 色」で、該当する配色のテキストの色を濃くするか背景を明るくして、比率を4.5:1以上にします。
- セールのバッジ、プレースホルダーテキスト、フッターのリンク、画像上のボタンには特に注意してください。

変更の提案(テーマ設定 › 色、またはテーマのCSSファイル):
```css
.announce {
  background-color: #b95941; /* was #e76f51: 3.09:1, now 4.59:1 */
}
```

回答のルール:
- 正確な変更内容を修正前と修正後の形で示し、変更を加えるファイルまたは設定の名前を挙げてください。先に私のファイルを確認する必要がある場合は、貼り付けるよう依頼してください。
- 見た目のデザインと既存の動作はすべてそのまま維持してください。
- 商品名、価格、テキストを創作せず、私が後から記入できるプレースホルダーを使ってください。
- 最後に、私自身が修正を確認する方法を示してください。
- キーボードとスクリーンリーダーで確認する方法も含めてください。

修正を確認する

  • スキャンを再実行し、color-contrastが表示されなくなったことを確認します。
  • 実際の色をコントラストチェッカーで抜き取り確認します。

詳しいガイダンス:https://dequeuniversity.com/rules/axe/4.13/color-contrast?application=playwright

P3中程度確認済みの不合格

ページのすべてのコンテンツはlandmarkに含まれていなければなりません

工数:中・担当:テーマの開発者

一部のコンテンツが、ページのランドマーク(header、nav、main、footer)の中にありません。

ランドマークがあると、スクリーンリーダーの利用者はページ内をすばやく移動できます。これはWCAG 1.3.1と2.4.1を補うベストプラクティスです。

エビデンス

検出方法
axe-coreの自動ルール
ステータス・信頼度
確認済みの不合格 · 高
検出日時
2026年9月24日(UTC)
場所
9ページで18件

期待される状態: ページのすべてのコンテンツはlandmarkに含まれていなければなりません

確認された状態: ページの一部のコンテンツがランドマークに含まれていません。

ページのすべてのコンテンツはlandmarkに含まれていなければなりません:/で枠で囲んだ要素
ページのすべてのコンテンツはlandmarkに含まれていなければなりません:/で枠で囲んだ要素
ページのすべてのコンテンツはlandmarkに含まれていなければなりません:/cartで枠で囲んだ要素
ページのすべてのコンテンツはlandmarkに含まれていなければなりません:/cartで枠で囲んだ要素
再現方法
  1. ChromeまたはEdgeでhttps://harborandpine.example/を開きます。
  2. デベロッパーツール(F12)›「Elements」を開き、Ctrl+F(MacではCmd+F)を押して次を検索します:.announce
  3. または、無料のブラウザ拡張機能axe DevToolsをページで実行します。この問題は「region」として報告されます。
不合格の要素(2件を表示)
.announce
<div class="announce">Free shipping on orders over $75 · Easy 30-day returns</div>
#cookie-banner > p
<p>We use cookies to improve your experience and measure traffic.</p>
影響を受けるページ(9)
  • https://harborandpine.example/
  • https://harborandpine.example/collections/all
  • https://harborandpine.example/products/trail-daypack
  • https://harborandpine.example/cart
  • https://harborandpine.example/pages/about
  • https://harborandpine.example/products/pine-wool-beanie
  • https://harborandpine.example/products/enamel-camp-mug
  • https://harborandpine.example/products/harbor-lantern
  • https://harborandpine.example/products/insulated-bottle

修正方法

一般的なガイダンス
  1. ランドマークの外にあるコンテンツ(お知らせバー、ポップアップ、チャットウィジェット)を適切なランドマークで囲むか、<main>の中に配置します。
AIで修正プロンプトを表示

これをテーマファイルと一緒にChatGPT、Claude、Cursor、Copilotに貼り付けてください。公開する前に変更内容を確認してください。

harborandpine.exampleでShopifyストア(Online Store 2.0テーマ、Liquidテンプレート)を運営しています。アクセシビリティのテストでこの問題が見つかったので、テーマで修正したいと考えています。

問題:ページのすべてのコンテンツはlandmarkに含まれていなければなりません。
場所:9ページで18件(例:/、/collections/all、/products/trail-daypack、/cart)。

ブラウザが描画した、不合格の要素の1つ:
```html
<div class="announce">Free shipping on orders over $75 · Easy 30-day returns</div>
```

なぜ重要なのか:ランドマークがあると、スクリーンリーダーの利用者はページ内をすばやく移動できます。これはWCAG 1.3.1と2.4.1を補うベストプラクティスです。

変更が必要な点:
- ランドマークの外にあるコンテンツ(お知らせバー、ポップアップ、チャットウィジェット)を適切なランドマークで囲むか、<main>の中に配置します。

回答のルール:
- 正確な変更内容を修正前と修正後の形で示し、変更を加えるファイルまたは設定の名前を挙げてください。先に私のファイルを確認する必要がある場合は、貼り付けるよう依頼してください。
- 見た目のデザインと既存の動作はすべてそのまま維持してください。
- 商品名、価格、テキストを創作せず、私が後から記入できるプレースホルダーを使ってください。
- 最後に、私自身が修正を確認する方法を示してください。
- キーボードとスクリーンリーダーで確認する方法も含めてください。

修正を確認する

  • 該当するページを再スキャンします。

詳しいガイダンス:https://dequeuniversity.com/rules/axe/4.13/region?application=playwright

P3中程度確認済みの不合格

見出しのレベルは1つずつ増加させなければなりません

工数:中・担当:テーマの開発者

見出しのレベルが飛んでいる(例:H2からH4)ため、スクリーンリーダーの利用者にとってページの構造がわかりにくくなっています。

スクリーンリーダーの利用者は、見出しを使ってページ内を移動します。これはWCAG 1.3.1を補うベストプラクティスです。

エビデンス

検出方法
axe-coreの自動ルール
ステータス・信頼度
確認済みの不合格 · 高
検出日時
2026年9月24日(UTC)
場所
7ページで7件

期待される状態: 見出しのレベルは1つずつ増加させなければなりません

確認された状態: 見出しの順序が無効です。

見出しのレベルは1つずつ増加させなければなりません:/collections/allで枠で囲んだ要素
見出しのレベルは1つずつ増加させなければなりません:/collections/allで枠で囲んだ要素
見出しのレベルは1つずつ増加させなければなりません:/products/trail-daypackで枠で囲んだ要素
見出しのレベルは1つずつ増加させなければなりません:/products/trail-daypackで枠で囲んだ要素
再現方法
  1. ChromeまたはEdgeでhttps://harborandpine.example/collections/allを開きます。
  2. デベロッパーツール(F12)›「Elements」を開き、Ctrl+F(MacではCmd+F)を押して次を検索します:article:nth-child(1) > a[href$="trail-daypack"] > h3
  3. または、無料のブラウザ拡張機能axe DevToolsをページで実行します。この問題は「heading-order」として報告されます。
不合格の要素(3件を表示)
article:nth-child(1) > a[href$="trail-daypack"] > h3
<h3>Trail Daypack 22L</h3>
h3
<h3>Reviews</h3>
h3:nth-child(3)
<h3>Started on the trail</h3>
影響を受けるページ(7)
  • https://harborandpine.example/collections/all
  • https://harborandpine.example/products/trail-daypack
  • https://harborandpine.example/pages/about
  • https://harborandpine.example/products/pine-wool-beanie
  • https://harborandpine.example/products/enamel-camp-mug
  • https://harborandpine.example/products/harbor-lantern
  • https://harborandpine.example/products/insulated-bottle

修正方法

一般的なガイダンス
  1. 該当するセクションの見出しのレベルを、レベルを飛ばさずに順番どおりになるよう調整します。
  2. 変更するのはタグだけで、見た目のスタイルは変えません(サイズにはCSSのクラスを使います)。

コード

開発者向けの実装例です。当社はテーマのソースコードを持っていないため、ファイルの場所は目安であり、正確なパスではありません。

修正前・検出内容 · テーマのコード(表示されているマークアップで検索してください)
<h3>Trail Daypack 22L</h3>
修正後 · 調整して使う例
<h2 class="h3">Trail Daypack 22L</h2>

ページ内の直前の見出しに続くレベル(多くの場合は1つ上のレベル)を使い、クラスで見た目を維持します。変更する前に、ページの見出し構成を確認してください。

修正前・検出内容 · テーマのコード(表示されているマークアップで検索してください)
<h3>Reviews</h3>
修正後 · 調整して使う例
<h2 class="h3">Reviews</h2>

ページ内の直前の見出しに続くレベル(多くの場合は1つ上のレベル)を使い、クラスで見た目を維持します。変更する前に、ページの見出し構成を確認してください。

修正前・検出内容 · テーマのコード(表示されているマークアップで検索してください)
<h3>Started on the trail</h3>
修正後 · 調整して使う例
<h2 class="h3">Started on the trail</h2>

ページ内の直前の見出しに続くレベル(多くの場合は1つ上のレベル)を使い、クラスで見た目を維持します。変更する前に、ページの見出し構成を確認してください。

AIで修正プロンプトを表示

これをテーマファイルと一緒にChatGPT、Claude、Cursor、Copilotに貼り付けてください。公開する前に変更内容を確認してください。

harborandpine.exampleでShopifyストア(Online Store 2.0テーマ、Liquidテンプレート)を運営しています。アクセシビリティのテストでこの問題が見つかったので、テーマで修正したいと考えています。

問題:見出しのレベルは1つずつ増加させなければなりません。
場所:7ページで7件(例:/collections/all、/products/trail-daypack、/pages/about、/products/pine-wool-beanie)。

ブラウザが描画した、不合格の要素の1つ:
```html
<h3>Trail Daypack 22L</h3>
```

なぜ重要なのか:スクリーンリーダーの利用者は、見出しを使ってページ内を移動します。これはWCAG 1.3.1を補うベストプラクティスです。

変更が必要な点:
- 該当するセクションの見出しのレベルを、レベルを飛ばさずに順番どおりになるよう調整します。
- 変更するのはタグだけで、見た目のスタイルは変えません(サイズにはCSSのクラスを使います)。

変更の提案(テーマのコード(表示されているマークアップで検索してください)):
```html
<h2 class="h3">Trail Daypack 22L</h2>
```

回答のルール:
- 正確な変更内容を修正前と修正後の形で示し、変更を加えるファイルまたは設定の名前を挙げてください。先に私のファイルを確認する必要がある場合は、貼り付けるよう依頼してください。
- 見た目のデザインと既存の動作はすべてそのまま維持してください。
- 商品名、価格、テキストを創作せず、私が後から記入できるプレースホルダーを使ってください。
- 最後に、私自身が修正を確認する方法を示してください。
- キーボードとスクリーンリーダーで確認する方法も含めてください。

修正を確認する

  • 再スキャンし、HeadingsMapなどのブラウザ拡張機能で見出しの構成を確認します。

詳しいガイダンス:https://dequeuniversity.com/rules/axe/4.13/heading-order?application=playwright

手動での確認が必要

画像の上のテキストや、スマートフォンの画面に収まらない可能性のあるコンテンツなど、自動テストで検出されたものの判定できなかった項目です。不合格としてはカウントしていません。それぞれを確認するよう開発者に依頼してください。

  • 要確認WCAG 4.1.3

    キーボード導線:キーボードでカートに追加する

    「カートに追加」でEnterキーを押すと機能しました(ヘッダーのカートの点数表示が変わった、「カートに追加しました」というメッセージが表示された)が、ステータスメッセージやフォーカスを受け取るダイアログが見つからなかったため、スクリーンリーダーの利用者には商品が追加されたことが伝わらない可能性があります。

    1ページで1件 · 確認方法

  • 要確認WCAG 1.4.10

    商品ページが、横スクロールなしでは狭い画面に収まらない可能性がある

    幅320 CSSピクセル(400%に拡大した状態と同等)で、ページが画面より200px広くなっています。データの表や地図はスクロールしてもかまいませんが、テキストやコントロールで横スクロールが必要になるべきではありません。

    1ページで2件 · 確認方法

    確認する要素(2件を表示)
    div.icons
    <div class="icons"> <button type="button"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="11" cy="11" r="7"></circle><path d="M20 20l-3.5-3.5"></path></svg></bu
    div
    <div> <p style="color:#6a6a60;font-size:14px">Harbor &amp; Pine</p> <h1>Trail Daypack 22L</h1> <p class="price" style="font-size:22px">$128<span class="compare">$150</span></p> <p class="opt-label">Si
  • 要確認WCAG 1.4.10

    ホームページが、横スクロールなしでは狭い画面に収まらない可能性がある

    幅320 CSSピクセル(400%に拡大した状態と同等)で、ページが画面より55px広くなっています。データの表や地図はスクロールしてもかまいませんが、テキストやコントロールで横スクロールが必要になるべきではありません。

    1ページで3件 · 確認方法

    確認する要素(3件を表示)
    div.icons
    <div class="icons"> <button type="button"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><circle cx="11" cy="11" r="7"></circle><path d="M20 20l-3.5-3.5"></path></svg></bu
    article.card
    <article class="card"><span class="badge">Sale</span><a href="/products/trail-daypack"><img src="/img/beanie.svg"><h3>Pine Wool Beanie</h3></a><p class="price">$32<span class="compare">$40</span></p><
    button.btn.light
    <button class="btn light" type="submit">Subscribe</button>
  • 要確認WCAG 1.4.3

    要素は色のコントラスト比(最低限)の閾値を満たしていなければなりません

    画像ノードが含まれるため、要素の背景色を判定できません。

    1ページで1件 · 確認方法

    確認する要素(1件を表示)
    h1
    <h1>Gear for the long way home</h1>

修正を再テストする

開発者が変更を加えたら、再テストを実行してください。同じページで同じ自動チェック、キーボードテスト、キーボード導線テストをもう一度実行し、再現されなくなった問題を示します。再テストは5回含まれています。

再テストは有料レポートで実行できます。

手動確認

これらは自動ツールでは判定できません。作業を完了とする前に実施してください。

  • キーボードだけで購入手続きを最後まで行ってください。当社の自動導線テストは購入手続きボタンで止まり、購入手続きには進みません。
  • スクリーンリーダー(MacのVoiceOver:Cmd+F5、WindowsのNVDA)で同じ操作を繰り返し、価格、バリエーション、エラーが読み上げられることを確認してください。
  • ブラウザを200%に拡大し、何も重なったり消えたりしないことを確認してください。
  • 商品やブランドの動画に正確なキャプションがあることを確認してください。
  • フォーム(メールマガジン、お問い合わせ、購入手続き)を誤りのある状態で送信し、エラーがテキストで説明されることを確認してください。
  • カルーセルやポップアップを、Escapeキーも含めて一時停止したり閉じたりできることを確認してください。

アクセシビリティ声明の下書き

括弧内の部分を編集し、フッターからリンクしたページに掲載してください。

harborandpine.exampleのアクセシビリティ声明

当社は、スクリーンリーダー、キーボード操作、画面拡大などの支援技術を使う方を含め、すべての人がharborandpine.exampleで買い物できることを目指しています。ウェブコンテンツ・アクセシビリティ・ガイドライン(WCAG)2.2のレベルAAを満たすことを目標としています。

取り組み内容
- 自動のアクセシビリティツールでストアをテストし、見つかった問題を修正しています。
- 購入の主なステップ(商品の閲覧、商品ページ、カート、購入手続き)を、キーボードとスクリーンリーダーでテストしています。
- サードパーティのアプリやウィジェットは、追加する前にアクセシビリティを確認しています。

既知の制限事項(2026年9月24日時点)
- キーボード操作とフォーカス(WCAG 2.1.1)。2026-10-08までに修正する予定です。
- 名前のないリンクとボタン(WCAG 2.4.4、4.1.2)。2026-10-08までに修正する予定です。
- 代替テキストのない画像(WCAG 1.1.1)。2026-10-08までに修正する予定です。
- ラベルのないフォーム入力欄(WCAG 4.1.2)。2026-10-08までに修正する予定です。
- 色のコントラスト不足(WCAG 1.4.3)。2026-10-08までに修正する予定です。

フィードバックとサポート
当ストアのご利用で困ったことがあれば、[メールアドレス]または[電話番号]までご連絡ください。該当するページと問題をお知らせいただければ、ご購入を完了できるようお手伝いし、5営業日以内にご返信します。

この声明は2026年9月24日に作成され、少なくとも年1回見直されます。

エビデンス記録

各ページをChromiumで読み込み、axe-core 4.13.0でテストしました。SHA-256ハッシュは、各ページの生のテスト結果を識別するものです。

テストしたページと、そのタイムスタンプおよび結果のハッシュ
ページテスト日時(UTC)HTTP問題SHA-256
ホームページhttps://harborandpine.example/2026-09-24 14:05:0020015da1e5470a57859a864332912dd1e4f62b4c4f64487ba144865b74879519599a3
コレクションページhttps://harborandpine.example/collections/all2026-09-24 14:05:092002028d8dfcf5ca953af353264a930a351bea3cf23f98a303874b32e5da355a4c8b0
商品ページhttps://harborandpine.example/products/trail-daypack2026-09-24 14:05:182002068a173ddfd16eeeef5e36d6c0fa9d426769f0d96e358c5e35b67608dd84139b4
カートhttps://harborandpine.example/cart2026-09-24 14:05:27200125b7945c2cdf779dcef2bd8975d96eb8f42d8dedbf10e767ec80199dd22ce257c
コンテンツページhttps://harborandpine.example/pages/about2026-09-24 14:05:362009daf61ae856358a574e63f9357db0bfd9ae6079065acf3aebd5b3c5a7f460e53f
追加ページhttps://harborandpine.example/products/pine-wool-beanie2026-09-24 14:08:0020020f708ccd7de34dfb65d59d3716580b6ec15a6420020c8387fa4da4e2ff5bd52d3
追加ページhttps://harborandpine.example/products/enamel-camp-mug2026-09-24 14:08:0720019c619bcd29e89d06099d174b9fc19305a42f2fa9bdddb600a750c867fc7477022
追加ページhttps://harborandpine.example/products/harbor-lantern2026-09-24 14:08:14200205720b7433b75050ba413ac74c2bd726b0620aaa68f7918083052383257d5c418
追加ページhttps://harborandpine.example/products/insulated-bottle2026-09-24 14:08:21200196f1972c22e477c9a63e2dfde1123ed759718f6a75e1606b23f208848691510fd

範囲と方法

テストした内容

  • 9ページ(ホームページ、コレクションページ、商品ページ、カート、コンテンツページ、追加ページ)を1366×900のChromiumで読み込みました。
  • WCAG 2.0、2.1、2.2のレベルAおよびAAに対するaxe-core 4.13.0のルールと、ベストプラクティスのルール(P3として表示)。
  • キーボードテスト:ホームページでTabキーを40回押し、フォーカストラップやフォーカスインジケーターの欠落を確認しました。
  • ホームページから購入手続きボタンまでの、キーボードのみでのショッピング導線テスト(上記参照)。
  • ホームページ、商品ページでの、幅320 CSSピクセルでのリフローチェック(WCAG 1.4.10)。

テストしなかった内容

  • 購入手続きと決済のページ、フォームの送信、アカウントページとログインが必要なページ。
  • 自動ルールの範囲を超えた、スクリーンリーダーの実際の読み上げ内容。
  • 動画の字幕と音声解説、PDF文書、サードパーティのフレーム内のコンテンツ。
  • わかりやすい言葉づかい、認知面のアクセシビリティ、その他人による判断が必要なすべての項目(「手動確認」を参照)。

結果の読み方

確認済みの不合格
自動テストまたはキーボード導線テストで不合格になりました。エビデンスを示しています。
要確認
テストで検出されたものの判定できなかった項目です。人が確認する必要があります。
合格
テストしたページで、自動ルールによる不合格は見つかりませんでした。
未テスト
ここでの自動テストの対象範囲外です。「手動確認」を参照してください。

お客様のウェブサイトでこのレポートを入手しましょう。

まずは無料スキャンで、ウェブサイトの問題と、それが警告書の内容とどう対応するかを確認してください。アクセシビリティ改善レポートは1回払いで$249、約10分で完成します。

ウェブサイトを無料でスキャン

このレポートは自動テストの結果を説明し、改善のためのガイダンスを示すものです。法的助言ではなく、ADA、欧州アクセシビリティ法、その他いかなる法律への準拠も証明するものではありません。