> ## Documentation Index
> Fetch the complete documentation index at: https://auth0-feat-sdk-reference-docs.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> Universal Login エクスペリエンス向けのログインページテンプレートを作成する方法を説明します。

# Universal Login Page Templates をカスタマイズ

export const AuthCodeGroup = ({children, dropdown}) => {
  const [processedChildren, setProcessedChildren] = useState(children);
  useEffect(() => {
    let unsubscribe = null;
    function init() {
      unsubscribe = window.autorun(() => {
        const processChildren = node => {
          if (typeof node === "string") {
            let processedNode = node;
            for (const [key, value] of window.rootStore.variableStore.values.entries()) {
              const escapedKey = key.replaceAll(/[.*+?^${}()|[\]\\]/g, (String.raw)`\$&`);
              processedNode = processedNode.replaceAll(new RegExp(escapedKey, "g"), value);
            }
            return processedNode;
          } else if (Array.isArray(node)) {
            return node.map(processChildren);
          } else if (node && node.props && node.props.children) {
            return {
              ...node,
              props: {
                ...node.props,
                children: processChildren(node.props.children)
              }
            };
          }
          return node;
        };
        setProcessedChildren(processChildren(children));
      });
    }
    if (window.rootStore) {
      init();
    } else {
      window.addEventListener("adu:storeReady", init);
    }
    return () => {
      window.removeEventListener("adu:storeReady", init);
      unsubscribe?.();
    };
  }, [children]);
  return <CodeGroup dropdown={dropdown}>{processedChildren}</CodeGroup>;
};

export const AuthCodeBlock = ({filename, icon, language, highlight, children}) => {
  const [displayText, setDisplayText] = useState(children);
  const [copyText, setCopyText] = useState(children);
  const wrapperRef = React.useRef(null);
  useEffect(() => {
    let unsubscribe = null;
    function init() {
      if (!window.autorun || !window.rootStore) {
        return;
      }
      unsubscribe = window.autorun(() => {
        let processedChildrenForDisplay = children;
        let processedChildrenForCopy = children;
        for (const [key, value] of window.rootStore.variableStore.values.entries()) {
          const escapedKey = key.replaceAll(/[.*+?^${}()|[\]\\]/g, (String.raw)`\$&`);
          let displayValue = value;
          if (key === "{yourClientSecret}" && value !== "{yourClientSecret}") {
            displayValue = value.substring(0, 3) + "*****MASKED*****";
          }
          processedChildrenForDisplay = processedChildrenForDisplay.replaceAll(new RegExp(escapedKey, "g"), displayValue);
          processedChildrenForCopy = processedChildrenForCopy.replaceAll(new RegExp(escapedKey, "g"), value);
        }
        setDisplayText(processedChildrenForDisplay);
        setCopyText(processedChildrenForCopy);
      });
    }
    if (window.rootStore) {
      init();
    } else {
      window.addEventListener("adu:storeReady", init);
    }
    return () => {
      window.removeEventListener("adu:storeReady", init);
      unsubscribe?.();
    };
  }, [children]);
  useEffect(() => {
    if (!wrapperRef.current) return;
    const originalWriteText = navigator.clipboard.writeText.bind(navigator.clipboard);
    let isOverriding = false;
    const handleClick = e => {
      const button = e.target.closest('[data-testid="copy-code-button"]');
      if (!button || !wrapperRef.current.contains(button)) return;
      isOverriding = true;
      navigator.clipboard.writeText = text => {
        if (isOverriding) {
          isOverriding = false;
          navigator.clipboard.writeText = originalWriteText;
          return originalWriteText(copyText);
        }
        return originalWriteText(text);
      };
      setTimeout(() => {
        if (isOverriding) {
          isOverriding = false;
          navigator.clipboard.writeText = originalWriteText;
        }
      }, 100);
    };
    const wrapper = wrapperRef.current;
    wrapper.addEventListener('click', handleClick, true);
    return () => {
      wrapper.removeEventListener('click', handleClick, true);
      if (navigator.clipboard.writeText !== originalWriteText) {
        navigator.clipboard.writeText = originalWriteText;
      }
    };
  }, [copyText]);
  return <div ref={wrapperRef}>
      <CodeBlock filename={filename} icon={icon} language={language} lines highlight={highlight}>
        {displayText}
      </CodeBlock>
    </div>;
};

[Liquid template language](https://shopify.github.io/liquid/basics/introduction/) で作成したページテンプレートを使用すると、<Tooltip tip="Universal Login: ユーザーのアイデンティティを確認するために、アプリケーションは Auth0 の認可サーバーでホストされる Universal Login にリダイレクトされます。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Universal+Login">Universal Login</Tooltip> ページをカスタマイズできます。ページテンプレートでは、ログインボックスや <Tooltip tip="多要素認証 (MFA): SMS で送信されるコードなど、ユーザー名とパスワードに加えた認証要素を使用するユーザー認証プロセス。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=MFA">MFA</Tooltip> チャレンジなど、Universal Login のプロンプトの周囲に表示するコンテンツを定義できます。同じページテンプレートがすべてのログインフローページで使用されるため、このカスタマイズ方法を使えば、統一されたブランド体験をユーザーに簡単に提供できます。

カスタマイズしたページテンプレートを使用するには、テナントに [カスタムドメイン](/docs/ja-jp/customize/custom-domains) を設定する必要があります。さらに、Universal Login のページテンプレートを更新できるのは [Management API](https://auth0.com/docs/api/management/v2) のみです。

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">
  `prompt` という用語は、サインアップページや MFA チャレンジなど、ログインフロー内の特定のステップを指します。このページの変数やコードサンプルでは、`prompt` または `widget` という用語が使われている場合があります。これらの用語は Universal Login の文脈では同義ですが、コード内では**互換的に使用できません**。正しくカスタマイズするため、コードに追加する要素には、記載されている適切な用語を使用していることを確認してください。
</Callout>

<h2 id="page-template-requirements">
  ページテンプレートの要件
</h2>

Universal Login のページテンプレートを作成する際は、次のタグを含める必要があります。

| タグ | 説明 |
| - | - |
| `auth0:widget` | ログインページやパスワードのリセットページなど、ログインフローのすべてのページに表示される プロンプト の HTML が含まれます |
| `auth0:head` | プロンプト をレンダリングするために必要なタグが含まれます |

ページ上で プロンプト を中央に配置するには、`<body>` 要素に `class="_widget-auto-layout"` を追加します。必要に応じて プロンプト を手動で配置する場合は、この属性を省略できます。

<Warning>
  **ページテンプレートの制限事項:**

  * Auth0 がプロジェクトをビルドするたびに、CSS クラス名は変更されます。これらのクラスを対象とするカスタム CSS は、新しいビルドのたびに機能しなくなります。
  * Universal Login ページの HTML 構造は変更される可能性があります。中断を防ぐため、HTML 構造に依存するカスタマイズは避けてください。

  詳細については、[CSS のカスタマイズ](#css-customization)を参照してください。
</Warning>

<h5 id="example-template">
  テンプレートの例:
</h5>

次の例は、必要なタグを含む、作成可能な最もシンプルなUniversal Loginのページテンプレートです。

```liquid lines theme={null}
<!DOCTYPE html>
{% assign resolved_dir = dir | default: "auto" %}
<html lang="{{locale}}" dir="{{resolved_dir}}">
  <head>
    {%- auth0:head -%}
  </head>
  <body class="_widget-auto-layout">
    {%- auth0:widget -%}
  </body>
</html>
```

<Warning>
  Storybook を使ってテンプレートを表示する場合、`<script>` タグはこれらのタグを正しく解析できないため、レンダリングが崩れる点に注意してください。回避策として、テンプレートコードに `<script>` タグを適切に注入するには、バッククォート (\`) とプラス記号 (+) を使用します。

  **例**:

  ``<scr`+`ipt>console.log("test");</scr`+`ipt>``
</Warning>

<h2 id="page-template-variables">
  ページテンプレート の変数
</h2>

ページテンプレート では、ページのレンダリング方法に影響するさまざまなコンテキスト変数をサポートしています。

たとえば、これらの変数を使用して次のことができます。

* ログインフローに関連付けられたアプリケーションに応じて、異なるコンテンツをレンダリングする。たとえば、異なるページデザインが必要な 2 つのブランドを管理している場合があります。
* 特定の プロンプト に応じて、異なるコンテンツをレンダリングする。たとえば、Login page にはアプリケーションで提供している内容に関する情報を追加しつつ、MFA フローでは MFA challenge プロンプト のみを表示したい場合があります。
* サポートページへのリンクや連絡先情報など、ユーザーサポート情報を含むフッターを追加する。

<h3 id="available-variables">
  利用可能な変数
</h3>

ページテンプレートでは、次の変数を使用できます。

<h4 id="application">
  アプリケーション
</h4>

| 変数 | 説明 | 例 |
| - | - | - |
| `application.id` | アプリケーションのクライアント ID | XXXXXXXXXXXXXXXXXXXXXXXXX |
| `application.name` | アプリケーション名 | My Application |
| `application.logo_url` | アプリケーションのロゴの URL | `https://example.com/mylogo.png` |
| `application.metadata` | アプリケーションのメタデータ | `json lines { "attribute1": "value", "attribute2": "value", "attribute3": "value" } ` |

<h4 id="branding">
  ブランディング
</h4>

| 変数 | 説明 | 例 |
| - | - | - |
| `branding.logo_url` | アプリケーションのロゴのURL | `https://example.com/mylogo.png` |
| `branding.colors.primary` | ブランドのメインカラー | #000000 |
| `branding.colors.page_background` | Universal Loginページの背景色 | #FFFFFF |

<h4 id="tenant">
  テナント
</h4>

| 変数 | 説明 | 例 |
| - | - | - |
| `tenant.friendly_name` | テナントの表示名 | My Tenant |
| `tenant.support_email` | テナントのサポート用メールアドレス | [support@example.com](mailto:support@example.com) |
| `tenant.support_url` | テナントのサポートページのURL | `https://example.com/support` |
| `tenant.enabled_locales` | テナントで有効なロケールのカンマ区切りリスト | `en, es` |

<h4 id="organizations">
  Organizations
</h4>

以下の変数は、[Auth0 Organizations](/docs/ja-jp/manage-users/organizations/organizations-overview) 機能に関連します。

| 変数 | 説明 | 例 |
| - | - | - |
| `organization.id` | 組織のID | org\_XXXXXXXXXXXXXXX |
| `organization.display_name` | 組織の表示名 | My Organization |
| `organization.name` | 組織の内部名 | my-organization |
| `organization.metadata` | 組織のメタデータ | `json lines { "attribute1": "value", "attribute2": "value", "attribute3": "value" } ` |
| `organization.branding.logo_url` | 組織のロゴのURL | `https://example.com/orglogo.png` |
| `organization.branding.colors.primary` | 組織のメインのブランドカラー | #000000 |
| `organization.branding.colors.page_background` | 組織のログインページの背景色 | #FFFFFF |

<h4 id="tenant-2">
  テナント
</h4>

| **変数** | **説明** | **例** |
| - | - | - |
| `tenant.friendly_name` | テナントの表示名 | My Tenant |
| `tenant.support_email` | テナントのサポート用メールアドレス | [support@example.com](mailto:support@example.com) |
| `tenant.support_url` | テナントのサポートページの URL | `https://example.com/support` |
| `tenant.enabled_locales` | テナントで有効なロケールのカンマ区切りリスト | `en, es` |

<h4 id="tracking">
  トラッキング
</h4>

<Warning>
  Correlation ID は現在、早期アクセス段階です。この機能を使用することで、Okta の [Master Subscription Agreement](https://www.okta.com/legal) に記載された該当する Free Trial 条項に同意したものとみなされます。Auth0 の製品リリースサイクルの詳細については、[Product Release Stages](/docs/ja-jp/troubleshoot/product-lifecycle/product-release-stages) をご覧ください。このプログラムに参加するには、[Auth0 Support](https://support.auth0.com) または担当の Technical Account Manager までお問い合わせください。
</Warning>

| **Variable** | **Description** | **Example** |
| - | - | - |
| `correlation_id` | Signup やログイン成功などの認証イベントを追跡するための一意の識別子です。64 文字以内で指定してください。カスタムログインページを通じてイベントを追跡するには、テンプレートに `correlationId: "{{correlation_id}}"` を追加します。 | `0001234` |

<Warning>
  一意の `correlation_id` には、Personally Identifiable Information (PII) やその他の機密情報を絶対に使用しないことを強く推奨します。
</Warning>

<h4 id="custom-domain">
  カスタムドメイン
</h4>

以下の変数は、現在のセッションで使用されている[カスタムドメイン](/docs/ja-jp/customize/custom-domains)を表します。これらの変数を使用すると、ユーザーがアクセスしているカスタムドメインに応じて異なるコンテンツをレンダリングしたり、そのドメインに設定された[ドメインメタデータ](/docs/ja-jp/customize/custom-domains/multiple-custom-domains)を取得したりできます。

| 変数 | 説明 | 例 |
| - | - | - |
| `custom_domain.domain` | 現在のログインセッションで使用されているカスタムドメイン | `login.example.com`. |
| `custom_domain.domain_metadata.<key>` | カスタムドメインに関連付けられた特定のメタデータ値 | `{{ custom_domain.domain_metadata.environment }}` は `development` を返します |

<h4 id="current-user-information">
  現在のユーザー情報
</h4>

以下の変数は、認証後にレンダリングされるページでのみ使用できます。

| 変数 | 説明 | 例 | |
| - | - | - | - |
| `user.user_id` | ユーザープロファイルの ID | auth0 | XXXXXXXXXXXXXXXXXXXX |
| `user.picture` | ユーザーのプロフィール画像の URL | `https://example.com/userimage` | |
| `user.email` | ユーザーのメールアドレス | [user@example.com](mailto:user@example.com) | |
| `user.email_verified` | メール確認ステータスの真偽値 (true/false) | true | |
| `user.user_metadata` | ユーザープロファイルの `user_metadata` オブジェクト | `json lines { "attribute1": "value", "attribute2": "value", "attribute3": "value" } ` | |
| `user.family_name` | ユーザーの姓 | Smith | |
| `user.given_name` | ユーザーの名 | Abigail | |
| `user.name` | ユーザーの氏名 | Abigail Smith | |
| `user.nickname` | ユーザーのニックネーム (別名) | Abby | |
| `user.username` | ユーザーの内部ユーザー名 | asmith | |

<h4 id="current-screen-information">
  現在の画面情報
</h4>

| Variables | Description | Example |
| - | - | - |
| `dir` | 要素のテキスト方向を示します。 | `auto`, `rtl`, `ltr` |
| `locale` | ページのレンダリングに使用されるロケールです。[サポート対象のテナント言語](/docs/ja-jp/customize/internationalization-and-localization/universal-login-internationalization)のいずれかと一致します | en-US |
| `prompt.name` | 現在レンダリングされている[Universal Loginプロンプト](#prompts)の名前 | mfa |
| `prompt.screen.name` | 現在レンダリングされているUniversal Login画面の名前 | mfa-login-options |
| `prompt.screen.texts` | 現在の画面のローカライズ済みテキスト一式 | `json lines { "pageTitle": "Available methods" } ` |
| `state` | 現在のページの`state`値をレンダリングします。これは不透明な値であり、セキュリティ目的で使用されます。 | |

<h3 id="prompts">
  プロンプト
</h3>

`prompt` という用語は、ログインフロー内の特定のステップを指します。1 つのプロンプトは、1 つ以上の画面で構成される場合があります。プロンプトは、[Auth0 Dashboard](https://manage.auth0.com/#/universal-login/customizations-new) または [Management API](https://auth0.com/docs/api/management/v2) のプロンプト エンドポイントで管理できます。

以下のセクションでは、利用可能な各プロンプトの詳細を紹介します。

<AccordionGroup>
  <Accordion title="総当たり攻撃対策">
    <h2 id="screen-brute-force-protection-unblock">
      画面: brute-force-protection-unblock
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/brute-force-unblock.png" alt="brute-force-protection-unblock 参照用スクリーンショット" />
    </Frame>

    | Text | Key |
    | - | - |
    | アカウントのブロックを解除 | `pageTitle` |
    | アカウントのブロックを解除 | `description` |
    | 続行 | `buttonText` |
    | \$\{companyName} | `logoAltText` |

    <h2 id="screen-brute-force-protection-unblock-success">
      画面: brute-force-protection-unblock-success
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/brute-force-unblock-success.png" alt="brute-force-protection-unblock-success 参照用スクリーンショット" />
    </Frame>

    | Text | Key |
    | - | - |
    | アカウントのブロックを解除 | `pageTitle` |
    | アカウントのブロックを解除 | `description` |
    | 続行 | `buttonText` |
    | \$\{companyName} | `logoAltText` |

    <h2 id="screen-brute-force-protection-unblock-failure">
      画面: brute-force-protection-unblock-failure
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/brute-force-unblock-fail.png" alt="brute-force-protection-unblock-failure 参照用スクリーンショット" />
    </Frame>

    | Text | Key |
    | - | - |
    | アカウントのブロックを解除 | `pageTitle` |
    | アカウントのブロックを解除 | `description` |
    | 続行 | `buttonText` |
    | \$\{companyName} | `logoAltText` |
  </Accordion>

  <Accordion title="共通">
    <h2 id="screen-redeem-ticket">
      画面: redeem-ticket
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/7H4DS8I8fnlUgtS4ttpMyK/90006ee36032cc1ee3d9674fe6bcf575/redeem-ticket.png" alt="redeem-ticket 参考スクリーンショット" />
    </Frame>

    | テキスト | キー |
    | - | - |
    | 読み込み中... | `pageTitle` |
    | お使いのブラウザーではJavaScriptが有効になっていません。続行するには、ボタンをクリックしてください。 | `description` |
    | 続行 | `buttonText` |
  </Accordion>

  <Accordion title="同意">
    <h2 id="screen-consent">
      画面: 同意
    </h2>

    <Frame>![consent の参考スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/consent.png)</Frame>

    | Text | Key |
    | - | - |
    | \$\{clientName} を承認する | `pageTitle` |
    | アプリを承認する | `title` |
    | \$\{userName} さん、 | `pickerTitle` |
    | tenant と audience のセレクター | `audiencePickerAltText` |
    | \$\{clientName} があなたのアカウントへのアクセスを要求しています。 | `messageMultipleTenants` |
    | $&#123;clientName&#125; があなたの $\{companyName} アカウントへのアクセスを要求しています。 | `messageSingleTenant` |
    | 承認 | `acceptButtonText` |
    | 拒否 | `declineButtonText` |
    | \$\{companyName} | `logoAltText` |
    | 無効な操作 | `invalid-action` |
    | audience は必須です | `invalid-audience` |
    | scope が無効です。配列である必要があります | `invalid-scope` |
  </Accordion>

  <Accordion title="デバイスフロー">
    <h2 id="screen-device-code-activation">
      画面: device-code-activation
    </h2>

    <Frame>![device-code-activation の参考スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/device-code-activation.png)</Frame>

    | Text | Key |
    | - | - |
    | \$\{clientName} にログインするにはデバイスコードを入力してください | `pageTitle` |
    | 続行 | `buttonText` |
    | デバイスに表示されているコードを入力してください | `description` |
    | ワンタイムコードを入力してください | `placeholder` |
    | デバイスの有効化 | `title` |
    | \$\{companyName} | `logoAltText` |
    | 無効または期限切れのユーザーコードです | `invalid-expired-code` |
    | デバイスに表示されているコードを入力してください | `no-code` |
    | 入力したコードは無効です | `invalid-code` |

    <h2 id="screen-device-code-activation-allowed">
      画面: device-code-activation-allowed
    </h2>

    <Frame>![device-code-activation-allowed の参考スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/device-code-activation-allowed.png)</Frame>

    | Text | Key |
    | - | - |
    | \$\{clientName} へのログインに成功しました | `pageTitle` |
    | デバイスが接続されました。 | `description` |
    | おめでとうございます。これで準備完了です！ | `eventTitle` |

    <h2 id="screen-device-code-activation-denied">
      画面: device-code-activation-denied
    </h2>

    <Frame>![device-code-activation-denied の参考スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/device-code-activation-denied.png)</Frame>

    | Text | Key |
    | - | - |
    | \$\{clientName} のログインエラー | `pageTitle` |
    | デバイスを有効化できませんでした。 | `description` |
    | 有効化が拒否されました | `eventTitle` |

    <h2 id="screen-device-code-confirmation">
      画面: device-code-confirmation
    </h2>

    <Frame>![device-code-confirmation の参考スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/device-code-confirmation.png)</Frame>

    | Text | Key |
    | - | - |
    | \$\{clientName} にログインするにはデバイスコードを確認してください | `pageTitle` |
    | 以下が \$\{clientName} に表示されているコードであることを確認してください: | `description` |
    | セキュリティコード | `inputCodeLabel` |
    | デバイスの確認 | `title` |
    | 確認 | `confirmButtonText` |
    | キャンセル | `cancelButtonText` |
    | この操作を開始していない場合、またはこのデバイスに覚えがない場合は、キャンセルを選択してください。 | `confirmationText` |
    | \$\{companyName} | `logoAltText` |
  </Accordion>

  <Accordion title="メール-OTP-チャレンジ">
    <h2 id="screen-email-otp-challenge">
      画面: email-otp-challenge
    </h2>

    <Frame>![email-otp-challenge 参照スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/email-otp-challenge.png)</Frame>

    | Text | Key |
    | - | - |
    | \$\{clientName} にログインするため、メールコードを入力してください | `pageTitle` |
    | 続行 | `buttonText` |
    | コードを記載したメールを \$\{email} 宛てに送信しました | `description` |
    | コードを入力 | `placeholder` |
    | 再送信 | `resendActionText` |
    | メールが届きませんか？ | `resendText` |
    | 本人確認 | `title` |
    | \$\{companyName} | `logoAltText` |
    | OTP コードは6桁の数字で入力してください | `invalid-otp-code-format` |
    | 入力したコードが無効です | `invalid-code` |
    | コードを確認できませんでした。しばらくしてからもう一度お試しください。 | `authenticator-error` |
    | メールの送信回数が上限に達しました。数分待ってからもう一度お試しください。 | `too-many-email` |
    | コードを入力してください | `no-code` |
  </Accordion>

  <Accordion title="メール-確認">
    <h2 id="screen-email-verification-result">
      画面: email-verification-result
    </h2>

    <Frame>![email-verification-result の参照スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/email-verification-result.png)</Frame>

    | Text | Key |
    | - | - |
    | \$\{clientName}のメール確認ステータス | `pageTitle` |
    | メール確認済み | `verifiedTitle` |
    | エラー | `errorTitle` |
    | メールアドレスの確認が正常に完了しました。 | `verifiedDescription` |
    | このアカウントはすでに確認済みです。 | `alreadyVerifiedDescription` |
    | ユーザーアカウントが存在しないか、確認コードが無効です。 | `invalidAccountOrCodeDescription` |
    | メールアドレスを確認できませんでした。 | `unknownErrorDescription` |
    | \$\{clientName} に戻る | `buttonText` |
    | このチケットの有効期限が切れています。 | `auth0-users-expired-ticket` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `custom-script-error-code` |
    | このチケットはすでに使用されています。 | `auth0-users-used-ticket` |
    | 問題が発生しました。しばらくしてからもう一度お試しください | `auth0-users-validation` |
  </Accordion>

  <Accordion title="招待">
    <h2 id="screen-accept-invitation">
      画面: accept-invitation
    </h2>

    <Frame>![accept-invitation の参照スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/accept-invitation.png)</Frame>

    | テキスト | キー |
    | - | - |
    | 招待を承諾して \$\{clientName} に登録する | `pageTitle` |
    | 招待されています！ | `title` |
    | "$&#123;inviterName&#125;&quot; さんが、&quot;$\{clientName}" 上の "$&#123;companyName&#125;&quot; に、あなた (&quot;$\{email}") を招待しています。 | `description` |
    | 続行 | `buttonText` |
    | \$\{companyName} | `logoAltText` |
  </Accordion>

  <Accordion title="ログイン">
    <h2 id="screen-login">
      画面: login
    </h2>

    <Frame>![login の参照スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/login.png)</Frame>

    | テキスト | キー |
    | - | - |
    | ログイン | \<%= "\${clientName}" %> |
    | ようこそ | `title` |
    | \<%= "${clientName}&quot; %&gt; に進むには、&lt;%= &quot;${companyName}" %> にログインしてください。 | `description` |
    | または | `separatorText` |
    | 続行 | `buttonText` |
    | \<%= "{yourConnectionName}" %> で続行 | `federatedConnectionButtonText` |
    | 新規登録 | `signupActionLinkText` |
    | アカウントをお持ちでないですか？ | `signupActionText` |
    | パスワードをお忘れですか？ | `forgotPasswordText` |
    | パスワード | `passwordPlaceholder` |
    | ユーザー名またはメールアドレス | `usernamePlaceholder` |
    | メールアドレス | `emailPlaceholder` |
    | 電話番号 | `phonePlaceholder` |
    | ユーザー名 | `usernameOnlyPlaceholder` |
    | 電話番号、ユーザー名、またはメールアドレス | `phoneOrUsernameOrEmailPlaceholder` |
    | 電話番号またはメールアドレス | `phoneOrEmailPlaceholder` |
    | 電話番号またはユーザー名 | `phoneOrUsernamePlaceholder` |
    | ユーザー名またはメールアドレス | `usernameOrEmailPlaceholder` |
    | 編集 | `editEmailText` |
    | アラート | `alertListTitle` |
    | 招待されています！ | `invitationTitle` |
    | \<%= "${clientName}&quot; %&gt; で &lt;%= &quot;${companyName}" %> に参加するための、\<%= "\${inviterName}" %> からの招待を承諾するには、ログインしてください。 | `invitationDescription` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | パスワードを表示 | `showPasswordText` |
    | パスワードを非表示 | `hidePasswordText` |
    | ユーザー名またはパスワードが正しくありません | `wrong-credentials` |
    | メールアドレスまたはパスワードが正しくありません | `wrong-email-credentials` |
    | ユーザー名またはパスワードが正しくありません | `wrong-username-credentials` |
    | 電話番号またはパスワードが正しくありません | `wrong-phone-credentials` |
    | メールアドレス、ユーザー名、またはパスワードが正しくありません | `wrong-email-username-credentials` |
    | メールアドレス、電話番号、ユーザー名、またはパスワードが正しくありません。電話番号には国番号を含める必要があります。 | `wrong-email-phone-username-credentials` |
    | メールアドレス、電話番号、またはパスワードが正しくありません。電話番号には国番号を含める必要があります。 | `wrong-email-phone-credentials` |
    | 電話番号、ユーザー名、またはパスワードが正しくありません。電話番号には国番号を含める必要があります。 | `wrong-phone-username-credentials` |
    | 入力したコードが無効です | `invalid-code` |
    | ユーザーコードが無効であるか、有効期限が切れています | `invalid-expired-code` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `custom-script-error-code` |
    | 問題が発生しました。しばらくしてからもう一度お試しください | `auth0-users-validation` |
    | 申し訳ありません。ログイン中に問題が発生しました | `authentication-failure` |
    | 無効な接続 | `invalid-connection` |
    | 不審なログイン動作が検出されたため、今後の試行はブロックされます。管理者に連絡してください。 | `ip-blocked` |
    | 無効な接続 | `no-db-connection` |
    | このアカウントでセキュリティ上の問題が疑われるため、アカウント保護のためにこのログインはブロックされました。続行するには、パスワードをリセットしてください。 | `password-breached` |
    | 複数回連続してログインに失敗したため、このアカウントはブロックされました。 | `user-blocked` |
    | このユーザーのログイン試行回数が多すぎます。しばらく待ってから、もう一度お試しください。 | `same-user-login` |
    | メールアドレスを入力してください | `no-email` |
    | パスワードは必須です | `no-password` |
    | ユーザー名は必須です | `no-username` |
  </Accordion>

  <Accordion title="ログインID">
    <h2 id="screen-login-id">
      画面: login-id
    </h2>

    <Frame>![login-id reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/login-id.png)</Frame>

    | テキスト | キー |
    | - | - |
    | ログイン | \<%= "\${clientName}" %> |
    | ようこそ | `title` |
    | \<%= "${companyName}&quot; %&gt; にログインして、&lt;%= &quot;${clientName}" %> に進みます。 | `description` |
    | または | `separatorText` |
    | 続行 | `buttonText` |
    | \<%= "{yourConnectionName}" %> で続行 | `federatedConnectionButtonText` |
    | アカウントにログインできませんか？ | `forgotPasswordText` |
    | 新規登録 | `signupActionLinkText` |
    | アカウントをお持ちではありませんか？ | `signupActionText` |
    | パスワード | `passwordPlaceholder` |
    | ユーザー名またはメールアドレス | `usernamePlaceholder` |
    | メールアドレス | `emailPlaceholder` |
    | 電話番号 | `phonePlaceholder` |
    | ユーザー名 | `usernameOnlyPlaceholder` |
    | 電話番号、ユーザー名、またはメールアドレス | `phoneOrUsernameOrEmailPlaceholder` |
    | 電話番号またはメールアドレス | `phoneOrEmailPlaceholder` |
    | 電話番号またはユーザー名 | `phoneOrUsernamePlaceholder` |
    | ユーザー名またはメールアドレス | `usernameOrEmailPlaceholder` |
    | 編集 | `editEmailText` |
    | アラート | `alertListTitle` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | パスキーで続行 | `passkeyButtonText` |
    | ユーザー名またはパスワードが正しくありません | `wrong-credentials` |
    | メールアドレスまたはパスワードが正しくありません | `wrong-email-credentials` |
    | ユーザー名またはパスワードが正しくありません | `wrong-username-credentials` |
    | 電話番号またはパスワードが正しくありません | `wrong-phone-credentials` |
    | メールアドレス、ユーザー名、またはパスワードが正しくありません | `wrong-email-username-credentials` |
    | メールアドレス、電話番号、ユーザー名、またはパスワードが正しくありません。電話番号には国番号を含める必要があります。 | `wrong-email-phone-username-credentials` |
    | メールアドレス、電話番号、またはパスワードが正しくありません。電話番号には国番号を含める必要があります。 | `wrong-email-phone-credentials` |
    | 電話番号、ユーザー名、またはパスワードが正しくありません。電話番号には国番号を含める必要があります。 | `wrong-phone-username-credentials` |
    | 入力したコードが無効です | `invalid-code` |
    | ユーザーコードが無効か、有効期限切れです | `invalid-expired-code` |
    | ユーザー名に使用できるのは英数字または '\<%= "${characters}&quot; %&gt;&#39; のみです。ユーザー名は &lt;%= &quot;${min}" %> 文字以上 \<%= "\${max}" %> 文字以下である必要があります。 | `invalid-username` |
    | 無効なLogin IDが入力されました | `invalid-login-id` |
    | 有効なメールアドレスまたは電話番号を入力してください。電話番号には国番号を含める必要があります。 | `invalid-email-phone` |
    | 有効なメールアドレスまたはユーザー名を入力してください | `invalid-email-username` |
    | 有効な電話番号またはユーザー名を入力してください。電話番号には国番号を含める必要があります。 | `invalid-phone-username` |
    | 有効なメールアドレス、電話番号、またはユーザー名を入力してください。電話番号には国番号を含める必要があります。 | `invalid-email-phone-username` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `custom-script-error-code` |
    | 問題が発生しました。しばらくしてからもう一度お試しください | `auth0-users-validation` |
    | 申し訳ありません。ログイン中に問題が発生しました | `authentication-failure` |
    | 無効な接続です | `invalid-connection` |
    | 不審なログイン動作が検出されたため、これ以上の試行はブロックされます。管理者に連絡してください。 | `ip-blocked` |
    | 無効な接続です | `no-db-connection` |
    | メールアドレスに一致する Enterprise ディレクトリがありません | `no-hrd-connection` |
    | このアカウントでセキュリティ上の問題の可能性が検出されました。アカウントを保護するため、このログインはブロックされました。続行するにはパスワードをリセットしてください。 | `password-breached` |
    | ログイン試行が連続して複数回行われたため、アカウントがブロックされました。 | `user-blocked` |
    | このユーザーのログイン試行回数が多すぎます。しばらく待ってから、もう一度お試しください。 | `same-user-login` |
    | メールアドレスを入力してください | `no-email` |
    | パスワードは必須です | `no-password` |
    | ユーザー名は必須です | `no-username` |
    | 有効な電話番号を入力してください | `invalid-phone-number` |
    | パスワードとパスキーは併用できません | `conflict-password-passkey` |
    | パスワードは使用できません | `password-not-allowed` |
    | パスキーは使用できません | `passkey-not-allowed` |
    | パスキーを選択してください | `no-passkey` |
    | パスキー認証に失敗しました | `passkey-authentication-failed` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `invalid-passkey` |
  </Accordion>

  <Accordion title="ログイン用パスワード">
    <h2 id="screen-login-password">
      画面: login-password
    </h2>

    <Frame>![login-password 参照用スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/login-password.png)</Frame>

    | Text | Key |
    | - | - |
    | ログインするにはパスワードを入力してください | \<%= "\${clientName}" %> |
    | パスワードを入力 | `title` |
    | \<%= "${companyName}&quot; %&gt; のパスワードを入力して、&lt;%= &quot;${clientName}" %> に進んでください | `description` |
    | または | `separatorText` |
    | 続行 | `buttonText` |
    | \<%= "{yourConnectionName}" %> で続行 | `federatedConnectionButtonText` |
    | サインアップ | `signupActionLinkText` |
    | アカウントをお持ちではありませんか？ | `signupActionText` |
    | パスワードをお忘れですか？ | `forgotPasswordText` |
    | パスワード | `passwordPlaceholder` |
    | ユーザー名またはメールアドレス | `usernamePlaceholder` |
    | メールアドレス | `emailPlaceholder` |
    | 編集 | `editEmailText` |
    | メールアドレスを編集 | `editLinkScreenReadableText` |
    | アラート | `alertListTitle` |
    | 招待されています！ | `invitationTitle` |
    | \<%= "${inviterName}&quot; %&gt; からの招待を承諾して &lt;%= &quot;${clientName}" %> の \<%= "\${companyName}" %> に参加するには、ログインしてください。 | `invitationDescription` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | 指紋認証または顔認証を使用する | `useBiometricsText` |
    | パスワードを表示 | `showPasswordText` |
    | パスワードを非表示 | `hidePasswordText` |
    | ユーザー名またはパスワードが正しくありません | `wrong-credentials` |
    | 入力したコードは無効です | `invalid-code` |
    | ユーザーコードが無効か、有効期限が切れています | `invalid-expired-code` |
    | メールアドレスまたはパスワードが正しくありません | `wrong-email-credentials` |
    | ユーザー名またはパスワードが正しくありません | `wrong-username-credentials` |
    | 電話番号またはパスワードが正しくありません | `wrong-phone-credentials` |
    | メールアドレス、ユーザー名、またはパスワードが正しくありません | `wrong-email-username-credentials` |
    | メールアドレス、電話番号、ユーザー名、またはパスワードが正しくありません。電話番号には国番号を含める必要があります。 | `wrong-email-phone-username-credentials` |
    | メールアドレス、電話番号、またはパスワードが正しくありません。電話番号には国番号を含める必要があります。 | `wrong-email-phone-credentials` |
    | 電話番号、ユーザー名、またはパスワードが正しくありません。電話番号には国番号を含める必要があります。 | `wrong-phone-username-credentials` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `custom-script-error-code` |
    | 問題が発生しました。しばらくしてからもう一度お試しください | `auth0-users-validation` |
    | 申し訳ありません。ログイン中に問題が発生しました | `authentication-failure` |
    | 無効な接続 | `invalid-connection` |
    | 不審なログインの挙動が検出されたため、今後の試行はブロックされます。管理者にお問い合わせください。 | `ip-blocked` |
    | 無効な接続 | `no-db-connection` |
    | このアカウントでセキュリティ上の問題の可能性が検出されました。アカウントを保護するため、このログインはブロックされました。続行するにはパスワードをリセットしてください。 | `password-breached` |
    | ログイン試行が連続して複数回行われたため、アカウントはブロックされました。 | `user-blocked` |
    | このユーザーのログイン試行回数が多すぎます。しばらく待ってから、もう一度お試しください。 | `same-user-login` |
    | メールアドレスを入力してください | `no-email` |
    | パスワードは必須です | `no-password` |
    | ユーザー名は必須です | `no-username` |
  </Accordion>

  <Accordion title="パスワードレス-ログイン">
    <h2 id="screen-login-passwordless-email-code">
      画面: login-passwordless-email-code
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/6zazshkUI5sdFDd2Fgbo6w/0193e17673250b5293d9581e34316c20/login-passwordless-email-code.png" alt="login-passwordless-email-code 参照スクリーンショット" />
    </Frame>

    | テキスト | キー |
    | - | - |
    | \$\{clientName} にログインするにはメールに送信されたコードを入力してください | `pageTitle` |
    | 続行 | `buttonText` |
    | \$\{email} にコードを記載したメールを送信しました | `description` |
    | コードを入力 | `placeholder` |
    | 再送信 | `resendActionText` |
    | メールが届きませんか？ | `resendText` |
    | 本人確認 | `title` |
    | \$\{companyName} | `logoAltText` |
    | コードが無効です | `invalid-verification-code` |
    | コードを送信できませんでした。しばらくしてからもう一度お試しください。 | `passwordless-authenticator-error` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `passwordless-unknown-error` |

    <h2 id="screen-login-passwordless-email-link">
      画面: login-passwordless-email-link
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/7EcEUmoEPC6GVgJjNyTugr/e160cb40af3a0c748ba1f9fe2307488b/login-passwordless-email-link.png" alt="login-passwordless-email-link 参照スクリーンショット" />
    </Frame>

    | テキスト | キー |
    | - | - |
    | \$\{clientName} のメールサインインリンク | `pageTitle` |
    | メールを送信しました | `successTitle` |
    | 問題が発生しました | `errorTitle` |
    | メールを送信しました。受信トレイでログインリンクを確認してください。 | `description` |
    | しばらくしてからもう一度お試しください。 | `unknownErrorDescription` |

    <h2 id="screen-login-passwordless-sms-otp">
      画面: login-passwordless-sms-otp
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/5dk4vZpc06UojLdnelUInO/f5fb02e0adeeceaa1b8ce6eef8151bc2/login-passwordless-sms-otp.png" alt="login-passwordless-sms-otp 参照スクリーンショット" />
    </Frame>

    | テキスト | キー |
    | - | - |
    | \$\{clientName} にログインするには携帯電話に送信されたコードを入力してください | `pageTitle` |
    | 本人確認 | `title` |
    | 次の宛先にSMSを送信しました: | `description` |
    | 続行 | `buttonText` |
    | 編集 | `editText` |
    | 6桁のコードを入力 | `placeholder` |
    | 再送信 | `resendActionText` |
    | コードが届きませんか？ | `resendText` |
    | \$\{companyName} | `logoAltText` |
    | コードが無効です | `invalid-verification-code` |
    | コードを送信できませんでした。しばらくしてからもう一度お試しください。 | `passwordless-authenticator-error` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `passwordless-unknown-error` |
  </Accordion>

  <Accordion title="ログイン-メール-認証">
    <h2 id="screen-login-email-verification">
      画面: login-email-verification
    </h2>

    <Frame>![login-email-verification 参照スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/login-email-verification.png)</Frame>

    | テキスト | キー |
    | - | - |
    | \$\{clientName} にログインするためのメールコードを入力してください | `pageTitle` |
    | 続行 | `buttonText` |
    | コードを記載したメールを \$\{email} 宛てに送信しました | `description` |
    | コードを入力 | `placeholder` |
    | 再送信 | `resendActionText` |
    | メールが届きませんか？ | `resendText` |
    | メールを確認 | `title` |
    | \$\{companyName} | `logoAltText` |
    | OTPコードは6桁の数字である必要があります | `invalid-otp-code-format` |
    | 入力したコードが無効です | `invalid-code` |
    | 無効または期限切れのユーザーコード | `invalid-expired-code` |
    | コードを確認できませんでした。しばらくしてからもう一度お試しください。 | `authenticator-error` |
    | メール送信回数の上限を超えました。数分待ってからもう一度お試しください。 | `too-many-email` |
  </Accordion>

  <Accordion title="ログアウト">
    <h2 id="screen-logout">
      画面: logout
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/2lXg143oKAF4OlIilbwDCK/d770603ba5203adff07cf4e23e4fcbbb/logout.png" alt="logout reference screenshot" />
    </Frame>

    | Text | Key |
    | - | - |
    | \$\{clientName} からログアウト | `pageTitle` |
    | ログアウト | `title` |
    | \$\{userName} さん、こんにちは | `userSalute` |
    | \$\{clientName} からログアウトしてもよろしいですか？ | `description` |
    | はい | `acceptButtonText` |
    | いいえ | `declineButtonText` |
    | \$\{companyName} | `logoAltText` |
  </Accordion>

  <Accordion title="多要素認証">
    <h2 id="screen-mfa-detect-browser-capabilities">
      画面: mfa-detect-browser-capabilities
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/2D7DbdMRJ7SdwxEzOYYsLX/595c1436aaa38ed342137c4a5227f4b0/mfa-detect-browser-capabilities.png" alt="mfa-detect-browser-capabilities reference screenshot" />
    </Frame>

    | Text | Key |
    | - | - |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 再読み込み | `reloadButtonText` |
    | JavaScript が必要です | `noJSErrorTitle` |
    | お使いのブラウザーでは JavaScript が有効になっていません。有効にしてから、ページの再読み込みボタンを押してください。 | `noJSErrorDescription` |

    <h2 id="screen-mfa-enroll-result">
      画面: mfa-enroll-result
    </h2>

    <Frame>![mfa-enroll-result reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-enroll-result.png)</Frame>

    | Text | Key |
    | - | - |
    | MFA 登録状況 | `pageTitle` |
    | 設定が完了しました！ | `enrolledTitle` |
    | 新しい認証要素が正常に追加されました。 | `enrolledDescription` |
    | 無効なリンク | `invalidTicketTitle` |
    | このリンクは無効か、有効期限が切れています。 | `invalidTicketDescription` |
    | 期限切れのリンク | `expiredTicketTitle` |
    | このリンクは期限切れです。 | `expiredTicketDescription` |
    | すでに使用されています | `alreadyUsedTitle` |
    | このリンクはすでに使用されています。多要素認証に登録するには、新しいリンクを取得してください。 | `alreadyUsedDescription` |
    | 二要素認証はすでに有効です。 | `alreadyEnrolledDescription` |
    | 問題が発生しました | `genericError` |

    <h2 id="screen-mfa-login-options">
      画面: mfa-login-options
    </h2>

    <Frame>![mfa-login-options reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-login-options.png)</Frame>

    | Text | Key |
    | - | - |
    | \$\{clientName} のその他のログイン方法 | `pageTitle` |
    | 戻る | `backText` |
    | その他の方法 | `title` |
    | SMS | `authenticatorNamesSMS` |
    | 電話 | `authenticatorNamesVoice` |
    | 電話 | `authenticatorNamesPhone` |
    | \$\{appName} アプリによる通知 | `authenticatorNamesPushNotification` |
    | Google Authenticator など | `authenticatorNamesOTP` |
    | メール | `authenticatorNamesEmail` |
    | リカバリーコード | `authenticatorNamesRecoveryCode` |
    | DUO アプリによる通知 | `authenticatorNamesDUO` |
    | セキュリティキー | `authenticatorNamesWebauthnRoaming` |
    | 指紋または顔認証 | `authenticatorNamesWebauthnPlatform` |

    <h2 id="screen-mfa-begin-enroll-options">
      画面: mfa-begin-enroll-options
    </h2>

    <Frame>![mfa-begin-enroll-options reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-begin-enroll-options.png)</Frame>

    | Text | Key |
    | - | - |
    | \$\{clientName} に別の認証方法を追加 | `pageTitle` |
    | 戻る | `backText` |
    | アカウントを安全に保ちましょう | `title` |
    | 別の認証方法を追加します。 | `description` |
    | \$\{companyName} | `logoAltText` |
    | SMS | `authenticatorNamesSMS` |
    | 電話 | `authenticatorNamesVoice` |
    | 電話 | `authenticatorNamesPhone` |
    | \$\{appName} アプリによる通知 | `authenticatorNamesPushNotification` |
    | Google Authenticator など | `authenticatorNamesOTP` |
    | メール | `authenticatorNamesEmail` |
    | リカバリーコード | `authenticatorNamesRecoveryCode` |
    | DUO アプリによる通知 | `authenticatorNamesDUO` |
    | セキュリティキー | `authenticatorNamesWebauthnRoaming` |
    | 指紋または顔認証 | `authenticatorNamesWebauthnPlatform` |
  </Accordion>

  <Accordion title="mfa-メール">
    <h2 id="screen-mfa-email-challenge">
      画面: mfa-email-challenge
    </h2>

    <Frame>![mfa-email-challenge の参照スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-email-challenge.png)</Frame>

    | テキスト | キー |
    | - | - |
    | \$\{clientName} にログインするためにメールコードを入力してください | `pageTitle` |
    | 戻る | `backText` |
    | 続行 | `buttonText` |
    | コードを記載したメールを次の宛先に送信しました | `description` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | コードを入力 | `placeholder` |
    | このデバイスを30日間記憶する | `rememberMeText` |
    | 再送信 | `resendActionText` |
    | メールが届きませんでしたか？ | `resendText` |
    | 本人確認 | `title` |
    | \$\{companyName} | `logoAltText` |
    | OTP コードは6桁の数字である必要があります | `invalid-otp-code-format` |
    | 入力したコードは無効です | `invalid-code` |
    | コードを確認できませんでした。しばらくしてからもう一度お試しください。 | `authenticator-error` |
    | 通知を送信できませんでした。コードを再送してみてください。 | `no-transaction-in-progress` |
    | メール送信回数の上限を超えました。数分待ってからもう一度お試しください。 | `too-many-email` |
    | 登録用トランザクションの有効期限が切れたため、最初からやり直す必要があります。 | `transaction-not-found` |
    | メールを送信できませんでした。しばらくしてからもう一度お試しください。 | `mfa-email-challenge-authenticator-error` |
    | コードを入力してください | `no-code` |

    <h2 id="screen-mfa-email-list">
      画面: mfa-email-list
    </h2>

    <Frame>![mfa-email-list の参照スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-email-list.png)</Frame>

    | テキスト | キー |
    | - | - |
    | \$\{clientName} で利用可能なメールアドレス一覧 | `pageTitle` |
    | 戻る | `backText` |
    | 登録済みメールアドレス | `title` |
  </Accordion>

  <Accordion title="MFA-OTP">
    <h2 id="screen-mfa-otp-enrollment-qr">
      画面: mfa-otp-enrollment-qr
    </h2>

    <Frame>![mfa-otp-enrollment-qr 参照用スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-otp-enrollment-qr.png)</Frame>

    | Text | Key |
    | - | - |
    | ワンタイムパスワードを使用して \$\{clientName} にログインするには、コードをスキャンしてください | `pageTitle` |
    | アカウントを保護 | `title` |
    | お好みの認証器アプリで以下のQRコードをスキャンし、表示されたワンタイムコードを下に入力してください。 | `description` |
    | 続行 | `buttonText` |
    | スキャンできませんか？ | `codeEnrollmentText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | ワンタイムコードを入力してください | `placeholder` |
    | 次に | `separatorText` |
    | \$\{companyName} | `logoAltText` |
    | OTPコードは6桁の数字である必要があります | `invalid-otp-code-format` |
    | 入力したコードが無効です | `invalid-code` |
    | コードの入力失敗回数が多すぎます。数分待ってから再試行してください。 | `too-many-failures` |
    | 登録トランザクションの有効期限が切れました。最初からやり直してください。 | `transaction-not-found` |
    | すでにMFAに登録されています。 | `user-already-enrolled` |
    | コードを入力してください | `no-code` |

    <h2 id="screen-mfa-otp-enrollment-code">
      画面: mfa-otp-enrollment-code
    </h2>

    <Frame>![mfa-otp-enrollment-code 参照用スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-otp-enrollment-code.png)</Frame>

    | Text | Key |
    | - | - |
    | ワンタイムパスワードを使用して \$\{clientName} にログインするには、コードをコピーしてください | `pageTitle` |
    | 戻る | `backText` |
    | 続行 | `buttonText` |
    | コピー用のセキュアコード | `altText` |
    | コードをコピー | `copyCodeButtonText` |
    | 次のコードをお好みの認証器アプリに手動で入力し、表示されたワンタイムコードを下に入力してください。 | `description` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | ワンタイムコードを入力してください | `placeholder` |
    | アカウントを保護 | `title` |
    | \$\{companyName} | `logoAltText` |
    | コードの入力失敗回数が多すぎます。数分待ってから再試行してください。 | `too-many-failures` |
    | 登録トランザクションの有効期限が切れました。最初からやり直してください。 | `transaction-not-found` |
    | コードを入力してください | `no-code` |

    <h2 id="screen-mfa-otp-challenge">
      画面: mfa-otp-challenge
    </h2>

    <Frame>![mfa-otp-challenge 参照用スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-otp-challenge.png)</Frame>

    | Text | Key |
    | - | - |
    | \$\{clientName} にログインするには、ワンタイムパスワードを入力してください | `pageTitle` |
    | 本人確認 | `title` |
    | お使いの認証器アプリでコードを確認してください。 | `description` |
    | 続行 | `buttonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | ワンタイムコードを入力してください | `placeholder` |
    | このデバイスを30日間記憶する | `rememberMeText` |
    | \$\{companyName} | `logoAltText` |
    | パスワードを使用 | `usePasswordText` |
    | コードを確認できませんでした。後でもう一度お試しください。 | `authenticator-error` |
    | コードの入力失敗回数が多すぎます。数分待ってから再試行してください。 | `too-many-failures` |
    | 登録トランザクションの有効期限が切れました。最初からやり直してください。 | `transaction-not-found` |
    | コードを入力してください | `no-code` |
  </Accordion>

  <Accordion title="mfa-phone">
    <h2 id="screen-mfa-phone-challenge">
      画面: mfa-phone-challenge
    </h2>

    <Frame>![mfa-phone-challenge の参考スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-phone-challenge.png)</Frame>

    | Text | Key |
    | - | - |
    | 電話番号を使って \$\{clientName} にログイン | `pageTitle` |
    | 本人確認 | `title` |
    | 次の電話番号に6桁のコードを送信します: | `description` |
    | 続行 | `continueButtonText` |
    | 別の電話番号を選択してください。 | `changePhoneText` |
    | SMS | `smsButtonText` |
    | 音声通話 | `voiceButtonText` |
    | コードの受け取り方法を選択してください | `chooseMessageTypeText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 電話番号を入力してください | `placeholder` |
    | \$\{companyName} | `logoAltText` |
    | SMS の送信中に問題が発生しました | `send-sms-failed` |
    | 音声通話の発信中に問題が発生しました | `send-voice-failed` |
    | 電話番号には数字のみ使用できます。 | `invalid-phone-format` |
    | 電話番号が有効ではないようです。確認してもう一度お試しください。 | `invalid-phone` |
    | 1時間あたりの電話メッセージの上限回数を超えました。数分待ってからもう一度お試しください。 | `too-many-sms` |
    | 1時間あたりの電話メッセージの上限回数を超えました。数分待ってからもう一度お試しください。 | `too-many-voice` |
    | 登録処理の有効期限が切れました。最初からやり直してください。 | `transaction-not-found` |
    | 電話番号を入力してください | `no-phone` |

    <h2 id="screen-mfa-phone-enrollment">
      画面: mfa-phone-enrollment
    </h2>

    <Frame>![mfa-phone-enrollment の参考スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-phone-enrollment.png)</Frame>

    | Text | Key |
    | - | - |
    | 電話コードで \$\{clientName} にログインするため、電話番号を入力してください | `pageTitle` |
    | アカウントを保護 | `title` |
    | 6桁のコードを送信できる国番号と電話番号を入力してください: | `description` |
    | 続行 | `continueButtonText` |
    | SMS | `smsButtonText` |
    | 音声通話 | `voiceButtonText` |
    | コードの受け取り方法を選択してください | `chooseMessageTypeText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 電話番号を入力してください | `placeholder` |
    | \$\{companyName} | `logoAltText` |
    | SMS の送信中に問題が発生しました | `send-sms-failed` |
    | 音声通話の発信中に問題が発生しました | `send-voice-failed` |
    | SMS を送信できませんでした。しばらくしてからもう一度お試しください。 | `sms-authenticator-error` |
    | 電話番号には数字のみ使用できます。 | `invalid-phone-format` |
    | 電話番号が有効ではないようです。確認してもう一度お試しください。 | `invalid-phone` |
    | 1時間あたりの電話メッセージの上限回数を超えました。数分待ってからもう一度お試しください。 | `too-many-sms` |
    | 1時間あたりの電話メッセージの上限回数を超えました。数分待ってからもう一度お試しください。 | `too-many-voice` |
    | 登録処理の有効期限が切れました。最初からやり直してください。 \[**注: このエラーには通常到達しません**] | `transaction-not-found` |
    | 電話番号を入力してください | `no-phone` |
  </Accordion>

  <Accordion title="mfa-プッシュ">
    <h2 id="screen-mfa-push-welcome">
      画面: mfa-push-welcome
    </h2>

    <Frame>![mfa-push-welcome reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-push-welcome.png)</Frame>

    | Text | Key |
    | - | - |
    | アプリケーション \$\{clientName} をインストール | `pageTitle` |
    | アカウントを保護 | `title` |
    | 続行するには、モバイル端末のアプリストアから \$\{appName} アプリをインストールしてください。 | `description` |
    | Google Play | `androidButtonText` |
    | 続行 | `buttonText` |
    | App Store | `iosButtonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | \$\{companyName} | `logoAltText` |

    <h2 id="screen-mfa-push-enrollment-qr">
      画面: mfa-push-enrollment-qr
    </h2>

    <Frame>![mfa-push-enrollment-qr reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-push-enrollment-qr.png)</Frame>

    | Text | Key |
    | - | - |
    | プッシュ通知でログインするにはコードをスキャンしてください \$\{clientName} | `pageTitle` |
    | アカウントを保護 | `title` |
    | モバイル端末の \$\{appName} アプリを使用して、以下のQRコードをスキャンしてください。 | `description` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 続行 | `buttonText` |
    | \$\{companyName} | `logoAltText` |
    | モバイル端末の \$\{appName} アプリでQRコードをスキャンする必要があります。 | `enrollment-transaction-pending` |

    <h2 id="screen-mfa-push-challenge-push">
      画面: mfa-push-challenge-push
    </h2>

    <Frame>![mfa-push-challenge-push reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-push-challenge-push.png)</Frame>

    | Text | Key |
    | - | - |
    | ログインするにはプッシュ通知を承認してください \$\{clientName} | `pageTitle` |
    | 本人確認 | `title` |
    | 次のデバイスに、\$\{appName} アプリ経由で通知を送信しました： | `description` |
    | デバイスで応答しました | `buttonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | このデバイスを30日間記憶しておく | `rememberMeText` |
    | 再送信 | `resendActionText` |
    | 通知が届いていませんか？ | `resendText` |
    | コードを手動で入力 | `enterOtpCode` |
    | または | `separatorText` |
    | \$\{companyName} | `logoAltText` |
    | モバイル端末の \$\{appName} アプリで通知を承認する必要があります。 | `challenge-transaction-pending` |
    | 確認を受信していません。少し間隔を空けてください。 | `polling-interval-exceeded` |
    | 通知リクエストが多すぎます。数分待ってからもう一度お試しください。 | `too-many-push` |
    | 登録トランザクションの有効期限が切れたため、最初からやり直す必要があります。 | `transaction-not-found` |
    | 確認を受信していません。もう一度コードをスキャンしてみてください。 | `mfa-push-verify-transaction-pending` |
    | 登録を確認できませんでした。後でもう一度お試しください。 | `mfa-push-verify-authenticator-error` |
    | 通知を送信できませんでした。後でもう一度お試しください。 | `mfa-push-challenge-authenticator-error` |
    | 通知は拒否されました | `transaction-rejected` |

    <h2 id="screen-mfa-push-list">
      画面: mfa-push-list
    </h2>

    <Frame>![mfa-push-list reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-push-list.png)</Frame>

    | Text | Key |
    | - | - |
    | 利用可能なデバイスの一覧 \$\{clientName} | `pageTitle` |
    | 戻る | `backText` |
    | 登録済みのデバイス | `title` |
  </Accordion>

  <Accordion title="MFA-リカバリー-コード">
    <h2 id="screen-mfa-recovery-code-enrollment">
      画面: mfa-recovery-code-enrollment
    </h2>

    <Frame>![mfa-recovery-code-enrollment の参照スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-recovery-code-enrollment.png)</Frame>

    | Text | Key |
    | - | - |
    | リカバリーコードをコピーして安全に保管してください \$\{clientName} | `pageTitle` |
    | あと少しです！ | `title` |
    | このリカバリーコードをコピーして、安全な場所に保管してください。デバイスなしでログインする必要がある場合に必要になります。 | `description` |
    | コピーするセキュアコード | `altText` |
    | 続行 | `buttonText` |
    | このコードを安全な場所に記録しました | `checkboxText` |
    | コードをコピー | `copyCodeButtonText` |
    | \$\{companyName} | `logoAltText` |
    | コードを記録したことを確認してください | `no-confirmation` |

    <h2 id="screen-mfa-recovery-code-challenge">
      画面: mfa-recovery-code-challenge
    </h2>

    <Frame>![mfa-recovery-code-challenge の参照スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-recovery-code-challenge.png)</Frame>

    | Text | Key |
    | - | - |
    | \$\{clientName} にログインするには、リカバリーコードを入力してください | `pageTitle` |
    | 本人確認 | `title` |
    | 初回登録時に提供されたリカバリーコードを入力してください。 | `description` |
    | 続行 | `buttonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | リカバリーコードを入力してください | `placeholder` |
    | \$\{companyName} | `logoAltText` |
    | 入力したコードは無効です | `invalid-code` |
    | リカバリーコードは24文字の英数字である必要があります | `invalid-code-format` |
    | コードを確認できませんでした。しばらくしてからもう一度お試しください。 | `authenticator-error` |
    | コードを記録したことを確認してください | `no-confirmation` |
    | 失敗が多すぎます。数分待ってから再試行してください。 | `too-many-failures` |
    | 登録手続きの有効期限が切れました。最初からやり直してください。 | `transaction-not-found` |
  </Accordion>

  <Accordion title="mfa-sms">
    <h2 id="screen-mfa-country-codes">
      画面: mfa-country-codes
    </h2>

    <Frame>![mfa-country-codes reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-country-codes.png)</Frame>

    | テキスト | キー |
    | - | - |
    | \${clientName}の国番号を選択してください | `pageTitle` |
    | 戻る | `backText` |
    | 国番号を選択 | `title` |

    <h2 id="screen-mfa-sms-enrollment">
      画面: mfa-sms-enrollment
    </h2>

    <Frame>![mfa-sms-enrollment reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-sms-enrollment.png)</Frame>

    | テキスト | キー |
    | - | - |
    | SMSで \$\{clientName} にログインするには、電話番号を入力してください | `pageTitle` |
    | アカウントを保護する | `title` |
    | 下に電話番号を入力してください。その番号宛てに、次の画面で入力するコードを記載したSMSが送信されます。 | `description` |
    | 続行 | `buttonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 電話番号を入力 | `placeholder` |
    | \$\{companyName} | `logoAltText` |
    | SMSの送信中に問題が発生しました | `send-sms-failed` |
    | SMSを送信できませんでした。しばらくしてからもう一度お試しください。 | `sms-authenticator-error` |
    | 電話番号には数字のみ使用できます。 | `invalid-phone-format` |
    | 電話番号が無効のようです。内容を確認のうえ、もう一度お試しください。 | `invalid-phone` |
    | 1時間あたりのSMS送信回数が上限に達しました。数分待ってからもう一度お試しください。 | `too-many-sms` |
    | 登録のトランザクションの有効期限が切れました。最初からやり直してください。 | `transaction-not-found` |
    | 電話番号を入力してください | `no-phone` |

    <h2 id="screen-mfa-sms-challenge">
      画面: mfa-sms-challenge
    </h2>

    <Frame>![mfa-sms-challenge reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-sms-challenge.png)</Frame>

    | テキスト | キー |
    | - | - |
    | \${clientName}にログインするには、電話に送信されたコードを入力してください | `pageTitle` |
    | 本人確認 | `title` |
    | 次の電話番号にテキストメッセージを送信しました: | `description` |
    | 続行 | `buttonText` |
    | 編集 | `editText` |
    | 電話番号を編集 | `editLinkScreenReadableText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 6桁のコードを入力してください | `placeholder` |
    | このデバイスを30日間記憶する | `rememberMeText` |
    | 再送信 | `resendActionText` |
    | コードが届かない場合 | `resendText` |
    | または | `resendVoiceActionSeparatorTextBefore` |
    | 音声通話を受ける | `resendVoiceActionText` |
    | \$\{companyName} | `logoAltText` |
    | OTPコードは6桁の数字で入力してください | `invalid-otp-code-format` |
    | 入力したコードが無効です | `invalid-code` |
    | SMSの送信中に問題が発生しました | `send-sms-failed` |
    | コードを確認できませんでした。しばらくしてからもう一度お試しください。 | `authenticator-error` |
    | SMSを送信できませんでした。しばらくしてからもう一度お試しください。 | `sms-authenticator-error` |
    | 通知を送信できませんでした。コードを再送してください。 | `no-transaction-in-progress` |
    | コードの認証失敗回数が多すぎます。数分待ってからもう一度お試しください。 | `too-many-failures` |
    | 1時間あたりの電話メッセージ送信数が上限を超えました。数分待ってからもう一度お試しください。 | `too-many-sms` |
    | 登録トランザクションの有効期限が切れました。最初からやり直してください。 | `transaction-not-found` |
    | コードを入力してください | `no-code` |

    <h2 id="screen-mfa-sms-list">
      画面: mfa-sms-list
    </h2>

    <Frame>![mfa-sms-list reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-sms-list.png)</Frame>

    | テキスト | キー |
    | - | - |
    | \${clientName}で利用可能な電話番号一覧 | `pageTitle` |
    | 戻る | `backText` |
    | 登録済みの電話番号 | `title` |
  </Accordion>

  <Accordion title="mfa-音声通話">
    <h2 id="screen-mfa-voice-enrollment">
      画面: mfa-voice-enrollment
    </h2>

    <Frame>![mfa-voice-enrollment reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-voice-enrollment.png)</Frame>

    | Text | Key |
    | - | - |
    | 電話コードでログインするには、電話番号を入力してください \$\{clientName} | `pageTitle` |
    | アカウントを保護する | `title` |
    | 以下に電話番号を入力してください。その番号に音声通話でコードをお送りしますので、次の画面で入力してください。 | `description` |
    | 続行 | `buttonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 電話番号を入力してください | `placeholder` |
    | \$\{companyName} | `logoAltText` |
    | SMS の送信中に問題が発生しました | `send-sms-failed` |
    | 電話番号には数字のみを入力できます。 | `invalid-phone-format` |
    | 電話番号が無効のようです。確認してから再試行してください。 | `invalid-phone` |
    | 1時間あたりの電話メッセージの上限を超えました。数分待ってから再試行してください。 | `too-many-sms` |
    | 登録トランザクションの有効期限が切れました。最初からやり直す必要があります。 | `transaction-not-found` |
    | 電話番号を入力してください | `no-phone` |

    <h2 id="screen-mfa-voice-challenge">
      画面: mfa-voice-challenge
    </h2>

    <Frame>![mfa-voice-challenge reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-voice-challenge.png)</Frame>

    | Text | Key |
    | - | - |
    | ログインするには電話コードを入力してください \$\{clientName} | `pageTitle` |
    | 本人確認 | `title` |
    | 次の電話番号に、6桁のコードを音声通話でお送りしました。 | `description` |
    | 続行 | `buttonText` |
    | 編集 | `editText` |
    | 電話番号を編集 | `editLinkScreenReadableText` |
    | 別の電話番号を選択してください。 | `changePhoneText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 6桁のコードを入力 | `placeholder` |
    | このデバイスを30日間記憶する | `rememberMeText` |
    | もう一度電話をかける | `resendActionText` |
    | 電話がかかってきませんでしたか？ | `resendText` |
    | または | `resendSmsActionSeparatorTextBefore` |
    | テキストメッセージを送信 | `resendSmsActionText` |
    | \$\{companyName} | `logoAltText` |
    | OTP コードは6桁の数字で入力してください | `invalid-otp-code-format` |
    | 入力したコードが無効です | `invalid-code` |
    | 音声通話の発信中に問題が発生しました | `send-voice-failed` |
    | コードを確認できませんでした。後でもう一度お試しください。 | `authenticator-error` |
    | 音声通話を発信できませんでした。後でもう一度お試しください。 | `voice-authenticator-error` |
    | 通知を送信できませんでした。コードを再送してみてください。 | `no-transaction-in-progress` |
    | 無効なコードの入力回数が多すぎます。数分待ってから再試行してください。 | `too-many-failures` |
    | 1時間あたりの電話メッセージの上限を超えました。数分待ってから再試行してください。 | `too-many-voice` |
    | 登録トランザクションの有効期限が切れました。最初からやり直す必要があります。 | `transaction-not-found` |
    | コードを入力してください | `no-code` |
  </Accordion>

  <Accordion title="mfa-webauthn">
    <h2 id="screen-mfa-webauthn-platform-enrollment">
      画面: mfa-webauthn-platform-enrollment
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/universal-login/text-customization/mfa-webauth-platform-enrollment.png" alt="mfa-webauthn-enrollmentの参照スクリーンショット" />
    </Frame>

    | テキスト | キー |
    | - | - |
    | このデバイスで \$\{clientName} にすばやくログイン | `pageTitle` |
    | このデバイスで素早くログイン | `title` |
    | このデバイスを信頼しますか？ 次回からは、このデバイスの指紋認証または顔認証を使って、すばやく安全にログインできます。 | `description` |
    | デバイスの確認待ち | `awaitingConfirmation` |
    | \$\{companyName} | `logoAltText` |
    | 続行 | `continueButtonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 後で再通知 | `snoozeEnrollmentButtonText` |
    | このデバイスではありません | `refuseAddingDeviceText` |
    | 今はしない | `skipAddingDeviceText` |
    | デバイスの登録を開始できませんでした。しばらくしてからもう一度お試しください。 | `webauthn-platform-associate-error` |

    <h2 id="screen-mfa-webauthn-roaming-enrollment">
      画面: mfa-webauthn-roaming-enrollment
    </h2>

    <Frame>
      <Frame>
        <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/universal-login/text-customization/mfa-webauth-roaming-enrollment.png" alt="mfa-webauthn-guidance-enrollment 参照スクリーンショット" />
      </Frame>
    </Frame>

    | テキスト | キー |
    | - | - |
    | \$\{clientName} にセキュリティキーを登録 | `pageTitle` |
    | セキュリティキーの追加 | `title` |
    | セキュリティキーは追加の認証要素として使用できます。 | `description` |
    | セキュリティキーを待っています | `awaitingConfirmation` |
    | \$\{companyName} | `logoAltText` |
    | セキュリティキーを使う | `continueButtonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | セキュリティキーを接続して、次に進んでください。 | `instructions1` |
    | ブラウザーの指示に従ってください。 | `instructions2` |
    | 後で見分けやすいように、セキュリティキーに名前を付けてください。 | `instructions3` |
    | セキュリティキーの登録を開始できませんでした。しばらくしてからもう一度お試しください。 | `webauthn-associate-error` |

    <h2 id="screen-mfa-webauthn-platform-challenge">
      画面: mfa-webauthn-platform-challenge
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/universal-login/text-customization/mfa-webauth-platform-challenge.png" alt="mfa-webauthn-challenge-user-initiated 参照スクリーンショット" />
    </Frame>

    | テキスト | キー |
    | - | - |
    | 指紋または顔認証を使って\$\{clientName}にログイン | `title` |
    | 下のボタンを押して、ブラウザーの手順に従ってログインしてください。 | `description` |
    | デバイスの確認を待っています | `awaitingConfirmation` |
    | 認証の試行回数が上限に達しました。しばらくしてからもう一度お試しください。 | `too-many-webauthn-challenge-attempts-error` |
    | \$\{companyName} | `logoAltText` |
    | 続行 | `continueButtonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | パスワードを使う | `usePasswordText` |
    | 今後30日間このデバイスを記憶する | `rememberMeText` |
    | デバイス認証を開始できませんでした。後でもう一度お試しください。 | `webauthn-platform-challenge-error` |

    <h2 id="screen-mfa-webauthn-roaming-challenge">
      画面: mfa-webauthn-roaming-challenge
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/universal-login/text-customization/mfa-webauth-roaming-challenge.png" alt="mfa-webauthn-challenge-user-initiated 参照スクリーンショット" />
    </Frame>

    | テキスト | キー |
    | - | - |
    | セキュリティキーを使って\$\{clientName}にログイン | `pageTitle` |
    | 本人確認 | `title` |
    | お使いのセキュリティキーをお手元にご用意ください。続行すると、その使用を求められます。 | `description` |
    | セキュリティキーを待っています | `awaitingConfirmation` |
    | 認証の失敗回数が多すぎます。しばらくしてからもう一度お試しください。 | `too-many-webauthn-challenge-attempts-error` |
    | \$\{companyName} | `logoAltText` |
    | セキュリティキーを使用する | `continueButtonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | このデバイスを30日間記憶する | `rememberMeText` |
    | セキュリティキーの認証を開始できませんでした。しばらくしてからもう一度お試しください。 | `webauthn-challenge-error` |

    <h2 id="screen-mfa-webauthn-change-key-nickname">
      画面: mfa-webauthn-change-key-nickname
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/universal-login/text-customization/mfa-webauth-change-key-nickname.png" alt="mfa-webauthn-change-key-nickname 参照スクリーンショット" />
    </Frame>

    | テキスト | キー |
    | - | - |
    | セキュリティキー「\$\{clientName}」に名前を付ける | `title` |
    | セキュリティキーを複数お持ちの場合、この別名があれば目的のものを見分けやすくなります。 | `description` |
    | \$\{userName}のキー | `nickname` |
    | セキュリティキーの名前 | `nicknamePlaceholder` |
    | デバイスに名前を付ける | \$\{clientName} |
    | 複数のデバイスをお持ちの場合、この別名があれば正しいデバイスを見分けやすくなります。 | `descriptionPlatform` |
    | $&#123;userName&#125;の$\{deviceName} | `nicknamePlatform` |
    | デバイス名 | `nicknamePlaceholderPlatform` |
    | 続行 | `buttonText` |
    | \$\{companyName} | `logoAltText` |
    | キー名を更新できませんでした。もう一度お試しください。 | `webauthn-patch-nickname-error` |
    | デバイス名を更新できませんでした。もう一度お試しください。 | `webauthn-platform-patch-nickname-error` |
    | 名前を入力してください | `no-nickname` |
    | 名前が短すぎます | `nickname-too-short` |
    | 名前が長すぎます | `nickname-too-long` |
    | 情報の取得中にエラーが発生しました。もう一度お試しください。 | `error-while-retrieving-authenticator` |
    | 名前の保存中にエラーが発生しました。もう一度お試しください。 | `error-while-patching` |

    <h2 id="screen-mfa-webauthn-enrollment-success">
      画面: mfa-webauthn-enrollment-success
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/universal-login/text-customization/mfa-webauthn-enrollment-success.png" alt="mfa-webauthn-enrollment-success 参照スクリーンショット" />
    </Frame>

    | テキスト | キー |
    | - | - |
    | \${clientName} のセキュリティキーの登録が完了しました | `title` |
    | \${clientName} のデバイス登録が完了しました | `titlePlatform` |
    | セキュリティキーの登録が完了しました。 | `description` |
    | デバイスの登録が完了しました。 | `descriptionPlatform` |
    | 続行 | `buttonText` |
    | \${companyName} | `logoAltText` |

    <h2 id="screen-mfa-webauthn-error">
      画面: mfa-webauthn-error
    </h2>

    <Frame>![mfa-webauthn-error reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-webauthn-error.png)</Frame>

    | テキスト | キー |
    | - | - |
    | もう一度お試しください | `tryAgainLinkText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | セキュリティキーの登録エラー | \$\{clientName} |
    | セキュリティキーの確認に失敗しました | `errorTitleChallenge` |
    | デバイスの登録エラー | \$\{clientName} |
    | エラーが発生しました | `errorTitlePlatformChallenge` |
    | 問題が発生しました。もう一度お試しいただくか、別の方法をお試しください。 | `description` |
    | このデバイスをすでに登録済みの場合は、もう一度お試しください。まだ登録していない場合は、別の方法をお試しください。 | `descriptionPlatform` |
    | いいえ、結構です | `refuseAddingAuthenticatorText` |
    | パスワードを使用 | `usePasswordText` |

    <h2 id="screen-mfa-webauthn-not-available-error">
      画面: mfa-webauthn-not-available-error
    </h2>

    <Frame>![mfa-webauthn-not-available-error reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/mfa-webauthn-not-available-error.png)</Frame>

    | テキスト | キー |
    | - | - |
    | \$\{clientName} ではセキュリティキーはサポートされていません | `pageTitle` |
    | セキュリティキーはサポートされていません | `errorTitle` |
    | 申し訳ありませんが、お使いのブラウザーまたはデバイスはセキュリティキーに対応していません。別のブラウザーを使用するか、別のデバイスからログインしてください。 | `errorDescription` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | パスワードを使用する | `usePasswordText` |
  </Accordion>

  <Accordion title="組織">
    <h2 id="screen-organization-selection">
      画面: organization-selection
    </h2>

    <Frame>![organization-selection の参考スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/organization-selection.png)</Frame>

    | Text | Key |
    | - | - |
    | organization \$\{clientName} を入力してください | `pageTitle` |
    | 続行 | `buttonText` |
    | 続行するには、\$\{companyName} の organization名を入力してください | `description` |
    | organization名を入力してください | `placeholder` |
    | organizationを入力 | `title` |
    | \$\{companyName} | `logoAltText` |
    | 入力したorganizationは無効です | `invalid-organization` |

    <h2 id="screen-organization-picker">
      画面: organization-picker
    </h2>

    <Frame>![organization-picker の参考スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/organization-picker-rev2.png)</Frame>

    | Text | Key |
    | - | - |
    | 組織を選択 | `pageTitle` |
    | は複数の組織に所属しています。 | `loggedInText` |
    | は個人アカウントとして使用されており、複数の組織に所属しています。 | `loggedInTextB2C` |
    | 組織を選択 | `title` |
    | 続行するアカウントを選択 | `titleB2C` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | または | `separatorText` |
    | 個人アカウントで続行 | `continueTextB2C` |
  </Accordion>

  <Accordion title="パスワードのリセット">
    <h2 id="screen-reset-password-request">
      画面: reset-password-request
    </h2>

    <Frame>![reset-password-request reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-request.png)</Frame>

    | テキスト | キー |
    | - | - |
    | パスワードをリセット | \<%= "\${clientName}" %> |
    | パスワードをお忘れですか？ | `title` |
    | \<%= "\${clientName}" %> に戻る | `backToLoginLinkText` |
    | 続行 | `buttonText` |
    | メールアドレスを入力してください。パスワードをリセットするための手順をお送りします。 | `descriptionEmail` |
    | ユーザー名を入力してください。パスワードをリセットするための手順をお送りします。 | `descriptionUsername` |
    | メールアドレス | `placeholderEmail` |
    | ユーザー名 | `placeholderUsername` |
    | メールアドレス | `emailPlaceholder` |
    | ユーザー名 | `usernamePlaceholder` |
    | 電話番号 | `phonePlaceholder` |
    | 電話番号、ユーザー名、またはメールアドレス | `phoneOrUsernameOrEmailPlaceholder` |
    | 電話番号またはメールアドレス | `phoneOrEmailPlaceholder` |
    | 電話番号またはユーザー名 | `phoneOrUsernamePlaceholder` |
    | ユーザー名またはメールアドレス | `usernameOrEmailPlaceholder` |
    | メールアドレスを入力してください。パスワードをリセットするための手順をお送りします。 | `emailDescription` |
    | ユーザー名を入力してください。パスワードをリセットするための手順をお送りします。 | `usernameDescription` |
    | 電話番号を入力してください。パスワードをリセットするための手順をお送りします。 | `phoneDescription` |
    | 電話番号、ユーザー名、またはメールアドレスを入力してください。パスワードをリセットするための手順をお送りします。 | `phoneOrUsernameOrEmailDescription` |
    | 電話番号またはメールアドレスを入力してください。パスワードをリセットするための手順をお送りします。 | `phoneOrEmailDescription` |
    | 電話番号またはユーザー名を入力してください。パスワードをリセットするための手順をお送りします。 | `phoneOrUsernameDescription` |
    | ユーザー名またはメールアドレスを入力してください。パスワードをリセットするための手順をお送りします。 | `usernameOrEmailDescription` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | このチケットの有効期限が切れています。 | `auth0-users-expired-ticket` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `custom-script-error-code` |
    | このチケットはすでに使用されています。 | `auth0-users-used-ticket` |
    | 問題が発生しました。しばらくしてからもう一度お試しください | `auth0-users-validation` |
    | メールの送信中に問題が発生しました。しばらくしてからもう一度お試しください。 | `reset-password-error` |
    | メールの送信回数が上限に達しました。数分待ってからもう一度お試しください。 | `too-many-email` |
    | メールの送信回数が上限に達しました。数分待ってからもう一度お試しください。 | `too-many-requests` |
    | メールアドレスを入力してください | `no-email` |
    | ユーザー名は必須です | `no-username` |
    | 電話番号を入力してください | `no-phone_number` |
    | 電話番号の形式が正しくありません。 | `invalid-phone-format` |
    | 入力されたLogin IDが無効です | `invalid-login-id` |
    | 有効なメールアドレスまたは電話番号を入力してください。電話番号には国番号を含めてください。 | `invalid-email-phone` |

    <h2 id="screen-reset-password-email">
      画面: reset-password-email
    </h2>

    <Frame>![reset-password-email reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-email.png)</Frame>

    | テキスト | キー |
    | - | - |
    | メールを確認 | \<%= "\${clientName}" %> |
    | メールを確認 | `title` |
    | 戻る | `backButtonText` |
    | メールアドレス \<%= "\$ をご確認ください{メール}" %> に送信された、パスワードをリセットするための手順をご確認ください。 | `emailDescription` |
    | メールを再送 | `resendLinkText` |
    | ユーザー名 \<%= "\$ に関連付けられているメールアドレスをご確認ください{メール}" %> に送信された、パスワードをリセットするための案内をご確認ください。 | `usernameDescription` |

    <h2 id="screen-reset-password">
      画面: reset-password
    </h2>

    <Frame>![reset-password reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password.png)</Frame>

    | テキスト | キー |
    | - | - |
    | パスワードをリセット | \<%= "\${clientName}" %> |
    | パスワードを変更 | `title` |
    | パスワードを変更するには、以下に新しいパスワードを入力してください。 | `description` |
    | パスワードをリセット | `buttonText` |
    | 新しいパスワード | `passwordPlaceholder` |
    | 新しいパスワードを再入力 | `reEnterpasswordPlaceholder` |
    | パスワードには次の内容を含める必要があります： | `passwordSecurityText` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | パスワードを表示 | `showPasswordText` |
    | パスワードを非表示 | `hidePasswordText` |
    | 失敗 | `accessibilityError` |
    | 成功 | `accessibilityValid` |
    | このチケットは期限切れです。 | `auth0-users-expired-ticket` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `custom-script-error-code` |
    | このチケットはすでに使用済みです。 | `auth0-users-used-ticket` |
    | 問題が発生しました。しばらくしてからもう一度お試しください | `auth0-users-validation` |
    | 新しいパスワードを入力してください。 | `no-password-reset` |
    | 新しいパスワード (確認用) が入力されていません | `no-re-enter-password` |
    | パスワードにユーザー情報が含まれています | `password-contains-user-information` |
    | この資格情報の組み合わせは、別のウェブサイトで発生した公開済みのデータ侵害で検出されました。続行するには、アカウントの安全を守るため、別のパスワードを使用してください。 | `password-breached-reset` |
    | パスワードが一致しません | `password-mismatch` |

    <h2 id="screen-reset-password-success">
      画面: reset-password-success
    </h2>

    <Frame>![reset-password-success reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-success.png)</Frame>

    | テキスト | キー |
    | - | - |
    | パスワードリセットが完了しました | \<%= "\${clientName}" %> |
    | パスワードが変更されました！ | `eventTitle` |
    | パスワードが正常に変更されました。 | `description` |
    | \<%= "\$ に戻る{clientName}" %> | `buttonText` |

    <h2 id="screen-reset-password-error">
      画面: reset-password-error
    </h2>

    <Frame>![reset-password-error reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-error.png)</Frame>

    | テキスト | キー |
    | - | - |
    | パスワードリセットエラー | \<%= "\${clientName}" %> |
    | \<%= "\$ に戻る{clientName}" %> | `backToLoginLinkText` |
    | パスワードをリセットするには、login pageに戻り、"Forgot Your Password"を選択して、新しいメールを送信してください。 | `descriptionExpired` |
    | 問題が発生しました。login pageに戻り、"Forgot Your Password"を選択して、もう一度お試しください。 | `descriptionGeneric` |
    | このリンクはすでに使用されています。パスワードを再設定するには、ログインページに戻り、"パスワードをお忘れですか" を選択して、新しいメールの送信を依頼してください。 | `descriptionUsed` |
    | リンクの有効期限切れ | `eventTitleExpired` |
    | 再度お試しください | `eventTitleGeneric` |
    | 無効なリンク | `eventTitleUsed` |
    | このチケットの有効期限は切れています。 | `auth0-users-expired-ticket` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `custom-script-error-code` |
    | このチケットはすでに使用されています。 | `auth0-users-used-ticket` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `auth0-users-validation` |
    | メールの送信に失敗しました。しばらくしてからもう一度お試しください。 | `reset-password-error` |

    <h2 id="screen-reset-password-mfa-email-challenge">
      画面: reset-password-mfa-email-challenge
    </h2>

    <Frame>![reset-password-mfa-email-challenge reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-mfa-email-challenge.png)</Frame>

    | テキスト | キー |
    | - | - |
    | 次のアカウントのパスワードを変更するには、ワンタイムパスワードを入力してください | \<%= "\${clientName}" %> |
    | 戻る | `backText` |
    | 続ける | `buttonText` |
    | コードを記載したメールを次の宛先に送信しました | `description` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | コードを入力 | `placeholder` |
    | このデバイスを30日間記憶する | `rememberMeText` |
    | 再送信 | `resendActionText` |
    | メールが届きませんか？ | `resendText` |
    | 本人確認 | `title` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | OTPコードは6桁の数字である必要があります | `invalid-otp-code-format` |
    | 入力したコードが無効です | `invalid-code` |
    | コードを検証できませんでした。しばらくしてからもう一度お試しください。 | `authenticator-error` |
    | 通知を送信できませんでした。コードを再送してお試しください。 | `no-transaction-in-progress` |
    | メールの送信回数が上限に達しました。数分待ってから、もう一度お試しください。 | `too-many-email` |
    | 登録のtransactionの有効期限が切れました。最初からやり直してください。 | `transaction-not-found` |
    | メールを送信できませんでした。しばらくしてからもう一度お試しください。 | `mfa-email-challenge-authenticator-error` |

    <h2 id="screen-reset-password-mfa-otp-challenge">
      画面: reset-password-mfa-otp-challenge
    </h2>

    <Frame>![reset-password-mfa-otp-challenge reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-mfa-otp-challenge.png)</Frame>

    | テキスト | キー |
    | - | - |
    | 以下のパスワードを変更するには、ワンタイムパスワードを入力してください | \<%= "\${clientName}" %> |
    | 本人確認 | `title` |
    | ご利用のワンタイムパスワードアプリでコードを確認してください。 | `description` |
    | 続行 | `buttonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | ワンタイムコードを入力してください | `placeholder` |
    | このデバイスを30日間記憶する | `rememberMeText` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | パスワードを使用する | `usePasswordText` |
    | コードを確認できませんでした。しばらくしてからもう一度お試しください。 | `authenticator-error` |
    | コードの入力に何度も失敗しました。数分待ってからもう一度お試しください。 | `too-many-failures` |
    | 登録のトランザクションの有効期限が切れました。最初からやり直してください。 | `transaction-not-found` |

    <h2 id="screen-reset-password-mfa-phone-challenge">
      画面: reset-password-mfa-phone-challenge
    </h2>

    <Frame>![reset-password-mfa-phone-challenge reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-mfa-phone-challenge.png)</Frame>

    | テキスト | キー |
    | - | - |
    | 次のサービスのパスワードを変更するには、ワンタイムパスワードを入力してください | \<%= "\${clientName}" %> |
    | 本人確認 | `title` |
    | 以下の電話番号に6桁のコードを送信します: | `description` |
    | 続行 | `continueButtonText` |
    | 別の電話番号を選択してください。 | `changePhoneText` |
    | SMS | `smsButtonText` |
    | 音声通話 | `voiceButtonText` |
    | コードの受け取り方法を選択してください | `chooseMessageTypeText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 電話番号を入力してください | `placeholder` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | SMSの送信で問題が発生しました | `send-sms-failed` |
    | 音声通話の発信で問題が発生しました | `send-voice-failed` |
    | 電話番号には数字のみ使用できます。 | `invalid-phone-format` |
    | 電話番号が無効のようです。確認して、もう一度お試しください。 | `invalid-phone` |
    | 1時間あたりの電話メッセージの送信上限を超えました。数分待ってから、もう一度お試しください。 | `too-many-sms` |
    | 1時間あたりの電話メッセージの送信上限を超えました。数分待ってから、もう一度お試しください。 | `too-many-voice` |
    | 登録のトランザクションの有効期限が切れたため、もう一度最初からやり直してください。 | `transaction-not-found` |
    | 電話番号を入力してください | `no-phone` |

    <h2 id="screen-reset-password-mfa-push-challenge-push">
      画面: reset-password-mfa-push-challenge-push
    </h2>

    <Frame>![reset-password-mfa-push-challenge-push reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-mfa-push-challenge-push.png)</Frame>

    | テキスト | キー |
    | - | - |
    | パスワードを変更するには、ワンタイムパスワードを入力してください | \<%= "\${clientName}" %> |
    | 本人確認 | `title` |
    | 以下のデバイスに \<%= "\$ 経由で通知を送信しました{appName}" %> アプリ: | `description` |
    | デバイスで承認しました | `buttonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 30日間このデバイスを記憶する | `rememberMeText` |
    | 再送信 | `resendActionText` |
    | 通知が届きませんか？ | `resendText` |
    | コードを手動で入力 | `enterOtpCode` |
    | または | `separatorText` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | モバイル端末の\<%= "\${appName}" %>アプリで通知を承認する必要があります。{appName}" %> アプリで、モバイル端末上の通知を承認してください。 | `challenge-transaction-pending` |
    | 確認が取れていません。しばらく時間をおいてください。 | `polling-interval-exceeded` |
    | 通知リクエストが多すぎます。数分待ってからもう一度お試しください。 | `too-many-push` |
    | 登録トランザクションの有効期限が切れました。最初からやり直してください。 | `transaction-not-found` |
    | 確認が取れていません。コードをもう一度スキャンしてください。 | `mfa-push-verify-transaction-pending` |
    | 登録を確認できませんでした。しばらくしてからもう一度お試しください。 | `mfa-push-verify-authenticator-error` |
    | 通知を送信できませんでした。しばらくしてからもう一度お試しください。 | `mfa-push-challenge-authenticator-error` |
    | 通知は拒否されました | `transaction-rejected` |

    <h2 id="screen-reset-password-mfa-recovery-code-challenge">
      画面: reset-password-mfa-recovery-code-challenge
    </h2>

    <Frame>![reset-password-mfa-recovery-code-challenge reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-mfa-recovery-code-challenge.png)</Frame>

    | テキスト | キー |
    | - | - |
    | 次のパスワードを変更するには、ワンタイムパスワードを入力してください | \<%= "\${clientName}" %> |
    | 本人確認 | `title` |
    | 初回登録時に提供されたリカバリーコードを入力してください。 | `description` |
    | 続行 | `buttonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | リカバリーコードを入力 | `placeholder` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | 入力したコードが無効です | `invalid-code` |
    | リカバリーコードは24文字の英数字である必要があります | `invalid-code-format` |
    | コードを確認できませんでした。しばらくしてからもう一度お試しください。 | `authenticator-error` |
    | コードを控えたことをご確認ください | `no-confirmation` |
    | コードの入力に何度も失敗しました。再試行する前に数分お待ちください。 | `too-many-failures` |
    | 登録処理のトランザクションの有効期限が切れました。最初からやり直してください。 | `transaction-not-found` |

    <h2 id="screen-reset-password-mfa-sms-challenge">
      画面: reset-password-mfa-sms-challenge
    </h2>

    <Frame>![reset-password-mfa-sms-challenge reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-mfa-sms-challenge.png)</Frame>

    | テキスト | キー |
    | - | - |
    | 次のサービスのパスワードを変更するには、ワンタイムパスワードを入力してください | \<%= "\${clientName}" %> |
    | 本人確認 | `title` |
    | 次の電話番号にテキストメッセージを送信しました: | `description` |
    | 続行 | `buttonText` |
    | 編集 | `editText` |
    | 電話番号を編集 | `editLinkScreenReadableText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 6桁のコードを入力してください | `placeholder` |
    | このデバイスを30日間記憶する | `rememberMeText` |
    | 再送信 | `resendActionText` |
    | コードが届きませんでしたか？ | `resendText` |
    | または | `resendVoiceActionSeparatorTextBefore` |
    | 音声通話を受ける | `resendVoiceActionText` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | OTPコードは6桁の数字で入力してください | `invalid-otp-code-format` |
    | 入力したコードが無効です | `invalid-code` |
    | SMSの送信中に問題が発生しました | `send-sms-failed` |
    | コードを確認できませんでした。しばらくしてからもう一度お試しください。 | `authenticator-error` |
    | SMSを送信できませんでした。しばらくしてからもう一度お試しください。 | `sms-authenticator-error` |
    | 通知を送信できませんでした。コードを再送してみてください。 | `no-transaction-in-progress` |
    | コードの入力に何度も失敗しました。数分待ってからもう一度お試しください。 | `too-many-failures` |
    | 1時間あたりに送信できる電話メッセージの上限を超えました。数分待ってから、もう一度お試しください。 | `too-many-sms` |
    | 登録トランザクションの有効期限が切れました。最初からやり直してください。 | `transaction-not-found` |

    <h2 id="screen-reset-password-mfa-voice-challenge">
      画面: reset-password-mfa-voice-challenge
    </h2>

    <Frame>![reset-password-mfa-voice-challenge reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-mfa-voice-challenge.png)</Frame>

    | テキスト | キー |
    | - | - |
    | 次のサービスのパスワードを変更するには、ワンタイムパスワードを入力してください | \<%= "\${clientName}" %> |
    | 本人確認 | `title` |
    | 以下の電話番号に、音声通話で6桁のコードを送信しました。 | `description` |
    | 続行 | `buttonText` |
    | 編集 | `editText` |
    | 電話番号を編集 | `editLinkScreenReadableText` |
    | 別の電話番号を選択してください。 | `changePhoneText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | 6桁のコードを入力 | `placeholder` |
    | 30日間このデバイスを記憶する | `rememberMeText` |
    | もう一度電話を受ける | `resendActionText` |
    | 電話がかかってきませんでしたか？ | `resendText` |
    | または | `resendSmsActionSeparatorTextBefore` |
    | SMSを送信 | `resendSmsActionText` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | OTPコードは6桁の数字で入力してください | `invalid-otp-code-format` |
    | 入力したコードが無効です | `invalid-code` |
    | 音声通話の発信中に問題が発生しました | `send-voice-failed` |
    | コードを確認できませんでした。しばらくしてからもう一度お試しください。 | `authenticator-error` |
    | 音声通話を発信できませんでした。しばらくしてからもう一度お試しください。 | `voice-authenticator-error` |
    | 通知を送信できませんでした。コードを再送してください。 | `no-transaction-in-progress` |
    | コードの入力に何度も失敗しました。数分待ってからもう一度お試しください。 | `too-many-failures` |
    | 1時間あたりの電話メッセージの上限を超えました。数分待ってから、もう一度お試しください。 | `too-many-voice` |
    | 登録トランザクションの有効期限が切れたため、最初からやり直す必要があります。 | `transaction-not-found` |

    <h2 id="screen-reset-password-mfa-webauthn-platform-challenge">
      画面: reset-password-mfa-webauthn-platform-challenge
    </h2>

    <Frame>![reset-password-mfa-webauthn-platform-challenge reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-mfa-webauthn-platform-challenge.png)</Frame>

    | テキスト | キー |
    | - | - |
    | 指紋または顔認証で確認 | `pageTitle` |
    | 指紋または顔認証を使ってパスワードをリセット | \<%= "\${clientName}" %> |
    | 下のボタンを押し、ブラウザーの案内に従ってログインしてください。 | `description` |
    | デバイスの確認待ちです | `awaitingConfirmation` |
    | 認証に何度も失敗しました。しばらくしてからもう一度お試しください。 | `too-many-webauthn-challenge-attempts-error` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | 続行 | `continueButtonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | パスワードを使う | `usePasswordText` |
    | 30日間このデバイスを記憶する | `rememberMeText` |
    | デバイスの確認を開始できませんでした。しばらくしてからもう一度お試しください。 | `webauthn-platform-challenge-error` |

    <h2 id="screen-reset-password-mfa-webauthn-roaming-challenge">
      画面: reset-password-mfa-webauthn-roaming-challenge
    </h2>

    <Frame>![reset-password-mfa-webauthn-roaming-challenge reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/reset-password-mfa-webauthn-roaming-challenge.png)</Frame>

    | テキスト | キー |
    | - | - |
    | セキュリティキーを使用してパスワードをリセット | \<%= "\${clientName}" %> |
    | 本人確認 | `title` |
    | セキュリティキーをお手元にご用意ください。続行すると、セキュリティキーの使用を求められます。 | `description` |
    | セキュリティキーをお待ちしています | `awaitingConfirmation` |
    | 認証の試行に失敗した回数が多すぎます。しばらくしてからもう一度お試しください。 | `too-many-webauthn-challenge-attempts-error` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | セキュリティキーを使う | `continueButtonText` |
    | 別の方法を試す | `pickAuthenticatorText` |
    | このデバイスを30日間信頼する | `rememberMeText` |
    | セキュリティキーの認証を開始できませんでした。しばらくしてからもう一度お試しください。 | `webauthn-challenge-error` |
  </Accordion>

  <Accordion title="パスキー登録">
    <h2 id="screen-passkey-enrollment">
      画面: passkey-enrollment
    </h2>

    <Frame>![passkey-enrollment の参照スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/passkey-enrollment.png)</Frame>

    | Text | Key |
    | - | - |
    | このデバイスで `$\{clientName}` のパスキーを作成します。 | `title` |
    | `$\{clientName}` にログイン | `pageTitle` |
    | `$\{clientName}` に進むには、`$\{companyName}` にログインしてください。 | `description` |
    | パスワードを覚える必要はありません。 | `passkeyBenefit1Title` |
    | WebAuthn プラットフォームのアイコン | `passkeyBenefit1ImgAltText` |
    | パスキーを使えば、指紋や顔認証などでログインできます。 | `passkeyBenefit1Description` |
    | お使いのすべてのデバイスで利用できます。 | `passkeyBenefit2Title` |
    | 地球儀付きのデバイス | `passkeyBenefit2ImgAltText` |
    | パスキーは、同期されているデバイス間で自動的に利用できるようになります。 | `passkeyBenefit2Description` |
    | アカウントをより安全に保てます。 | `passkeyBenefit3Title` |
    | チェックマーク付きの盾 | `passkeyBenefit3ImgAltText` |
    | パスキーは最先端のフィッシング耐性を備えています。 | `passkeyBenefit3Description` |
    | パスキーを作成 | `createButtonText` |
    | パスキーを使わずに続行 | `continueButtonText` |
    | 新しいパスキーを作成 | `createButtonResetText` |
    | 新しいパスワードを作成 | `usePasswordButtonText` |
    | 戻る | `backButtonText` |
    | 今後は表示しない | `checkboxText` |
    | このユーザーはすでに存在します。 | `error_email-in-use` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `error_auth0-users-validation` |
    | パスワードとパスキーは使用できません。 | `error_conflict-password-passkey` |
    | パスワードは使用できません。 | `error_password-not-allowed` |
    | パスキーは使用できません。 | `error_passkey-not-allowed` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `error_invalid-passkey` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `error_passkey-enrollment-failure` |
    | このアカウントで作成できるパスキーの上限に達しました。 | `error_passkey-enrollment-max-allowed-reached` |
  </Accordion>

  <Accordion title="パスキー-登録-ローカル">
    <h2 id="screen-passkey-enrollment-local">
      画面: passkey-enrollment-local
    </h2>

    <Frame>![passkey-enrollment-local 参考スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/passkey-enrollment-local.png)</Frame>

    | Text | Key |
    | - | - |
    | このデバイスに `$\{clientName}` のパスキーを作成します。 | `title` |
    | `$\{clientName}` にログイン | `pageTitle` |
    | `$\{clientName}` に進むには、`$\{companyName}` にログインしてください。 | `description` |
    | このデバイスですばやくサインイン | `passkeyBenefit1Title` |
    | Lock | `passkeyBenefit1ImgAltText` |
    | 次回サインイン時に、別のデバイスのパスキーを使う必要がなくなります。 | `passkeyBenefit1Description` |
    | パスワードを覚える必要はありません | `passkeyBenefit2Title` |
    | WebAuthn プラットフォームのアイコン。 | `passkeyBenefit2ImgAltText` |
    | パスキーを使えば、指紋認証や顔認証などでログインできます。 | `passkeyBenefit2Description` |
    | 新しいパスキーを作成する | `createButtonText` |
    | 新しいパスキーを作成せずに続行する | `continueButtonText` |
    | 今後は表示しない | `checkboxText` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `error_passkey-enrollment-failure` |
    | このアカウントで作成できるパスキーの上限に達しました。 | `error_passkey-enrollment-max-allowed-reached` |
  </Accordion>

  <Accordion title="phone-identifier-チャレンジ">
    <h2 id="screen-phone-identifier-challenge">
      画面: phone-identifier-challenge
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/CustomizeULTemplate/phone-identifier-challenge.png" alt="phone-identifier-challenge の参照スクリーンショット" />
    </Frame>

    | テキスト | キー |
    | - | - |
    | ログインするには電話に届いたコードを入力してください | \<%= "\${clientName}" %> |
    | 本人確認 | `title` |
    | 次の宛先にSMSを送信しました: | `smsDescription` |
    | 次の電話番号宛てに、音声通話で6桁のコードを送信しました: | `voiceDescription` |
    | 続行 | `buttonText` |
    | 戻る | `backButtonText` |
    | 6桁のコードを入力 | `placeholder` |
    | 再送信 | `resendActionText` |
    | コードが届きませんでしたか? | `resendText` |
    | または | `resendVoiceActionSeparatorTextBefore` |
    | または | `resendSmsActionSeparatorTextBefore` |
    | SMSを送信 | `resendSmsActionText` |
    | 音声通話を受ける | `resendVoiceActionText` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | コードを再送しました。 | `resendLimitReachedText` |
    | OTPコードは6桁の数字である必要があります | `invalid-otp-code-format` |
    | 入力したコードが無効です | `invalid-code` |
    | 音声通話の発信中に問題が発生しました | `send-voice-failed` |
    | SMSの送信中に問題が発生しました | `send-sms-failed` |
    | コードを確認できませんでした。しばらくしてからもう一度お試しください。 | `authenticator-error` |
    | 音声通話を発信できませんでした。しばらくしてからもう一度お試しください。 | `voice-authenticator-error` |
    | SMSを送信できませんでした。しばらくしてからもう一度お試しください。 | `sms-authenticator-error` |
    | 通知を送信できませんでした。コードを再送してみてください。 | `no-transaction-in-progress` |
    | コードの入力ミスが多すぎます。数分待ってからもう一度お試しください。 | `too-many-failures` |
    | 1時間あたりに送信できる電話メッセージ数の上限を超えました。数分待ってからもう一度お試しください。 | `too-many-voice` |
    | 1時間あたりに送信できる電話メッセージ数の上限を超えました。数分待ってからもう一度お試しください。 | `too-many-sms` |
    | 登録トランザクションの有効期限が切れました。もう一度最初からやり直す必要があります。 | `transaction-not-found` |
  </Accordion>

  <Accordion title="phone-識別子-登録">
    <h2 id="screen-phone-identifier-enrollment">
      画面: phone-identifier-enrollment
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/CustomizeULTemplate/Phone-identifier-enrollment.png" alt="phone-identifier-enrollment 参照スクリーンショット" />
    </Frame>

    | Text | Key |
    | - | - |
    | 電話番号でログイン | \<%= "\${clientName}" %> |
    | 本人確認 | `title` |
    | 次の電話番号に6桁のコードを送信します。 | `description` |
    | 続行 | `continueButtonText` |
    | 別の電話番号を選択する。 | `changePhoneText` |
    | テキストメッセージ | `smsButtonText` |
    | 音声通話 | `voiceButtonText` |
    | コードの受け取り方法を選択してください | `chooseMessageTypeText` |
    | 戻る | `backButtonText` |
    | 電話番号を入力 | `placeholder` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | SMSの送信中に問題が発生しました | `send-sms-failed` |
    | 音声通話の発信中に問題が発生しました | `send-voice-failed` |
    | 電話番号には数字のみ使用できます。 | `invalid-phone-format` |
    | 電話番号が無効のようです。確認してもう一度お試しください。 | `invalid-phone` |
    | 1時間あたりの電話メッセージの上限を超えました。数分待ってからもう一度お試しください。 | `too-many-sms` |
    | 1時間あたりの電話メッセージの上限を超えました。数分待ってからもう一度お試しください。 | `too-many-voice` |
    | 登録処理の有効期限が切れました。最初からやり直す必要があります。 | `transaction-not-found` |
    | 電話番号を入力してください | `no-phone` |
  </Accordion>

  <Accordion title="新規登録">
    <h2 id="screen-signup">
      画面: signup
    </h2>

    <Frame><Frame>![サインアップ参照スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/signup.png)</Frame></Frame>

    | テキスト | キー |
    | - | - |
    | サインアップ | \<%= "\${clientName}" %> |
    | ようこそ | `title` |
    | \<%= "${clientName}&quot; %&gt; を続けるには、&lt;%= &quot;${companyName}" %> にサインアップしてください。 | `description` |
    | または | `separatorText` |
    | 続行 | `buttonText` |
    | メールアドレス | `emailPlaceholder` |
    | \<%= "{yourConnectionName}" %> で続行 | `federatedConnectionButtonText` |
    | ログイン | `loginActionLinkText` |
    | すでにアカウントをお持ちですか？ | `loginActionText` |
    | パスワード | `passwordPlaceholder` |
    | パスワードは次の条件を満たしている必要があります: | `passwordSecurityText` |
    | ユーザー名 | `usernamePlaceholder` |
    | 電話番号 | `phonePlaceholder` |
    | メールアドレス (任意) | `emailOptionalPlaceholder` |
    | ユーザー名 (任意) | `usernameOptionalPlaceholder` |
    | 電話番号 (任意) | `phoneOptionalPlaceholder` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | パスワードを表示 | `showPasswordText` |
    | パスワードを非表示 | `hidePasswordText` |
    | 無効 | `accessibilityError` |
    | 有効 | `accessibilityValid` |
    | このアカウントはすでに存在します。 | `email-in-use` |
    | パスワードが弱すぎます | `password-too-weak` |
    | パスワードが弱すぎます | `password-policy-not-conformant` |
    | パスワードが一般的すぎます | `password-too-common` |
    | このパスワードは以前使用されています | `password-previously-used` |
    | パスワードが一致しません | `password-mismatch` |
    | パスワードにユーザー情報が含まれています | `password-contains-user-information` |
    | ユーザー名には英数字または '\<%= "${characters}&quot; %&gt;&#39; のみ使用できます。ユーザー名は &lt;%= &quot;${min}" %> 文字以上 \<%= "\${max}" %> 文字以下である必要があります。 | `invalid-username` |
    | ユーザー名は \<%= "\${max}" %> 文字以内である必要があります。 | `invalid-username-max-length` |
    | ユーザー名は少なくとも \<%= "\${min}" %> 文字である必要があります。 | `invalid-username-min-length` |
    | ユーザー名に無効な文字が含まれています。 | `invalid-username-invalid-characters` |
    | ユーザー名にメールアドレスは使用できません。 | `invalid-username-email-not-allowed` |
    | 指定されたユーザー名はすでに使用されています。 | `username-taken` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `custom-script-error-code` |
    | 問題が発生しました。しばらくしてからもう一度お試しください | `auth0-users-validation` |
    | 無効な接続 | `invalid-connection` |
    | 不審なログインの挙動が検出されたため、以後の試行はブロックされます。管理者に連絡してください。 | `ip-blocked` |
    | 同じ IP からの新規登録が多すぎます | `ip-signup-blocked` |
    | 無効な接続 | `no-db-connection` |
    | メールアドレスを入力してください | `no-email` |
    | パスワードは必須です | `no-password` |
    | 新しいパスワードを入力してください。 | `no-password-reset` |
    | 新しいパスワードの確認が入力されていません | `no-re-enter-password` |
    | ユーザー名は必須です | `no-username` |
    | 少なくとも 1 つの識別子が必要です | `no-identifier` |
    | この資格情報の組み合わせは、別のウェブサイトで発生した公開済みの情報漏えいで検出されました。アカウントを作成する前に、安全のため別のパスワードを使用してください。 | `password-breached` |
    | 電話番号で新規登録しようとした際に問題が発生しました。サポートに連絡してください。 | `invalid-phone-attribute-config` |
  </Accordion>

  <Accordion title="サインアップ-ID">
    <h2 id="screen-signup-id">
      画面: signup-id
    </h2>

    <Frame>![signup-id 参照スクリーンショット](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/signup-id.png)</Frame>

    | Text | Key |
    | - | - |
    | サインアップ | \<%= "\${clientName}" %> |
    | アカウントを作成 | `title` |
    | \<%= "${clientName}&quot; %&gt; に進むには、&lt;%= &quot;${companyName}" %> にサインアップしてください。 | `description` |
    | または | `separatorText` |
    | 続行 | `buttonText` |
    | 電話番号 | `phonePlaceholder` |
    | メールアドレス | `emailPlaceholder` |
    | \<%= "{yourConnectionName}" %> を使用して続行 | `federatedConnectionButtonText` |
    | ログイン | `loginActionLinkText` |
    | すでにアカウントをお持ちですか？ | `loginActionText` |
    | パスワード | `passwordPlaceholder` |
    | パスワードは次の要件を満たす必要があります: | `passwordSecurityText` |
    | ユーザー名 | `usernamePlaceholder` |
    | メールアドレス (任意) | `emailOptionalPlaceholder` |
    | ユーザー名 (任意) | `usernameOptionalPlaceholder` |
    | 電話番号 (任意) | `phoneOptionalPlaceholder` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | このユーザーはすでに存在します。 | `email-in-use` |
    | パスワードが弱すぎます | `password-too-weak` |
    | パスワードが弱すぎます | `password-policy-not-conformant` |
    | そのパスワードは一般的すぎます | `password-too-common` |
    | そのパスワードは以前に使用されています | `password-previously-used` |
    | パスワードが一致しません | `password-mismatch` |
    | ユーザー名に使用できるのは英数字または「\<%= "${characters}&quot; %&gt;」のみです。ユーザー名は &lt;%= &quot;${min}" %> 文字以上 \<%= "\${max}" %> 文字以下である必要があります。 | `invalid-username` |
    | ユーザー名は \<%= "\${max}" %> 文字を超えることはできません。 | `invalid-username-max-length` |
    | ユーザー名は少なくとも \<%= "\${min}" %> 文字必要です。 | `invalid-username-min-length` |
    | ユーザー名に無効な文字が含まれています。 | `invalid-username-invalid-characters` |
    | ユーザー名をメールアドレスにすることはできません。 | `invalid-username-email-not-allowed` |
    | 指定されたユーザー名はすでに使用されています。 | `username-taken` |
    | 問題が発生しました。後でもう一度お試しください。 | `custom-script-error-code` |
    | 問題が発生しました。後でもう一度お試しください。 | `auth0-users-validation` |
    | 無効な接続 | `invalid-connection` |
    | 不審なログイン動作が検出されたため、これ以上の試行はブロックされます。管理者に連絡してください。 | `ip-blocked` |
    | 同一 IP からのサインアップが多すぎます | `ip-signup-blocked` |
    | 無効な接続 | `no-db-connection` |
    | メールアドレスがどのエンタープライズディレクトリとも一致しません | `no-hrd-connection` |
    | メールアドレスを入力してください | `no-email` |
    | パスワードは必須です | `no-password` |
    | 新しいパスワードを入力してください。 | `no-password-reset` |
    | 新しいパスワード (確認用) を入力してください | `no-re-enter-password` |
    | ユーザー名は必須です | `no-username` |
    | 少なくとも 1 つの識別子が必要です | `no-identifier` |
    | 有効な電話番号を入力してください | `invalid-phone-number` |
  </Accordion>

  <Accordion title="新規登録-パスワード">
    <h2 id="screen-signup-password">
      画面: signup-password
    </h2>

    <Frame>![signup-password reference screenshot](https://cdn2.auth0.com/docs/1.14516.0/media/articles/universal-login/text-customization/signup-password.png)</Frame>

    | テキスト | キー |
    | - | - |
    | サインアップ用のパスワードを作成 | \<%= "\${clientName}" %> |
    | アカウントを作成 | `title` |
    | \<%= "${clientName}&quot; %&gt; に進むには、&lt;%= &quot;${companyName}" %> のパスワードを設定してください | `description` |
    | または | `separatorText` |
    | 続行 | `buttonText` |
    | 電話番号 | `phonePlaceholder` |
    | メールアドレス | `emailPlaceholder` |
    | 編集 | `editEmailText` |
    | 編集 | `editPhoneText` |
    | 編集 | `editUsernameText` |
    | メールアドレスを編集 | `editLinkScreenReadableText` |
    | \<%= "{yourConnectionName}" %> を使用して続行 | `federatedConnectionButtonText` |
    | ログイン | `loginActionLinkText` |
    | すでにアカウントをお持ちですか？ | `loginActionText` |
    | パスワード | `passwordPlaceholder` |
    | パスワードには次を含める必要があります: | `passwordSecurityText` |
    | ユーザー名 | `usernamePlaceholder` |
    | メールアドレス (任意) | `emailOptionalPlaceholder` |
    | ユーザー名 (任意) | `usernameOptionalPlaceholder` |
    | 電話番号 (任意) | `phoneOptionalPlaceholder` |
    | 戻る | `backButtonText` |
    | 招待を承諾してサインアップ | \<%= "\${clientName}" %> |
    | \<%= "${clientName}&quot; %&gt; 上の &lt;%= &quot;${companyName}" %> への参加に関する、\<%= "\${inviterName}" %> からの招待を承諾するには、サインアップしてください。 | `invitationDescription` |
    | \<%= "\${companyName}" %> | `logoAltText` |
    | パスワードを表示 | `showPasswordText` |
    | パスワードを非表示 | `hidePasswordText` |
    | 満たしていません | `accessibilityError` |
    | 満たしています | `accessibilityValid` |
    | このユーザーはすでに存在します。 | `email-in-use` |
    | パスワードが弱すぎます | `password-too-weak` |
    | パスワードが弱すぎます | `password-policy-not-conformant` |
    | パスワードが一般的すぎます | `password-too-common` |
    | このパスワードは以前に使用されています | `password-previously-used` |
    | パスワードが一致しません | `password-mismatch` |
    | パスワードにユーザー情報が含まれています | `password-contains-user-information` |
    | ユーザー名には英数字または '\<%= "${characters}&quot; %&gt;&#39; のみ使用できます。ユーザー名は &lt;%= &quot;${min}" %> 文字以上 \<%= "\${max}" %> 文字以下である必要があります。 | `invalid-username` |
    | ユーザー名は \<%= "\${max}" %> 文字以下である必要があります。 | `invalid-username-max-length` |
    | ユーザー名は少なくとも \<%= "\${min}" %> 文字必要です。 | `invalid-username-min-length` |
    | ユーザー名に使用できない文字が含まれています。 | `invalid-username-invalid-characters` |
    | ユーザー名にメールアドレスは使用できません。 | `invalid-username-email-not-allowed` |
    | 入力されたユーザー名はすでに使用されています。 | `username-taken` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `custom-script-error-code` |
    | 問題が発生しました。しばらくしてからもう一度お試しください | `auth0-users-validation` |
    | 無効な接続 | `invalid-connection` |
    | 不審なログイン行為が検出されたため、今後の試行はブロックされます。管理者に連絡してください。 | `ip-blocked` |
    | 同じ IP からのサインアップが多すぎます | `ip-signup-blocked` |
    | 無効な接続 | `no-db-connection` |
    | メールアドレスを入力してください | `no-email` |
    | パスワードは必須です | `no-password` |
    | 新しいパスワードを入力してください。 | `no-password-reset` |
    | 新しいパスワードの確認入力がありません | `no-re-enter-password` |
    | ユーザー名は必須です | `no-username` |
    | 有効な電話番号を入力してください | `invalid-phone-number` |
    | この資格情報の組み合わせは、別のウェブサイトで公になったデータ侵害で検出されました。アカウントを作成する前に、安全のため別のパスワードを使用してください。 | `password-breached` |
    | 電話番号でサインアップしようとした際に問題が発生しました。サポートに連絡して支援を受けてください。 | `invalid-phone-attribute-config` |
  </Accordion>

  <Accordion title="ステータス">
    <h2 id="screen-status">
      画面: ステータス
    </h2>

    <Frame>
      <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/6sVCv5Bq3QI0rhe21wzU8E/universal-login-text-prompt-status.png" alt="status reference screenshot" />
    </Frame>

    | テキスト | キー |
    | - | - |
    | 問題が発生しました | `passwordless-no-session-title` |
    | リンクは、メールアドレスを送信したときと同じデバイスおよびブラウザーで開く必要があります。 | `passwordless-no-session` |
    | このデバイスまたはブラウザーで最初からやり直してください | `passwordless-no-session-link` |
    | 問題が発生しました | `mfa-required-title` |
    | このアプリケーションにアクセスするには多要素認証が必要です。有効化するには、システム管理者に連絡してください。 | `mfa-required` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `custom-script-error-code` |
    | 問題が発生しました。しばらくしてからもう一度お試しください。 | `auth0-users-validation` |
    | 申し訳ありません。ログイン中に問題が発生しました | `authentication-failure` |
  </Accordion>
</AccordionGroup>

<h3 id="custom-query-parameters">
  カスタムクエリパラメータ
</h3>

<Warning>
  Auth0 では、`ext-` パラメータは攻撃者が操作できる URL 入力値になり得るため、信頼しない値として扱うことを推奨しています。セキュリティ上の懸念を軽減するため、以下の推奨手順に従ってください。

  * テンプレートでは HTML エスケープした出力を使用する
  * `<script>` ブロックやイベントハンドラー属性内で `ext-` の値を埋め込まない
  * これらの値を URL で使用する前に、JavaScript スキームや data スキームでないことを検証する

  文字の許可リストを使用しても、あらゆるレンダリングコンテキストにおける XSS リスクをすべて排除できるわけではない点に注意してください。セキュリティガイドラインと推奨事項の詳細については、[Security Guidance](/docs/ja-jp/secure/security-guidance) を参照してください。
</Warning>

認証リクエストを開始する際に、`/authorize` エンドポイントにクエリパラメータを渡すことで、コンテキスト内でも使用できます。これらのカスタムクエリパラメータには、`ext-` 接頭辞が付いている必要があります。

次の例では、`ext-ga` と `ext-test` のクエリパラメータをログインページテンプレートで使用しています。

```html lines theme={null}
<!DOCTYPE html>
<html>
  <head>
    {%- auth0:head -%}
  </head>
  <body>
    {%- auth0:widget -%}
  </body>
  <pre style='background: wheat'>
    <b>Value of the ext-ga parameter:</b>{{ transaction.params.ext-ga }}
    <b>Value of the ext-test parameter:</b>{{ transaction.params.ext-test }}
  </pre>
</html>
```

ユーザー定義のクエリパラメータには、次の制限があります。

* 各 `ext-` パラメータ名は一意である必要があります
* 1 つの認可リクエストに含められる `ext-` パラメータは最大 10 個です
* `ext-` パラメータ名は ext- で始まり、使用できるのは \[a-zA-z0-9\_-] のみで、最大 28 文字です。次のとおりです: `/^ext-[\w-]{1,28}$/`
* `ext-` パラメータ値に使用できるのは \[a-zA-Z0-9-.\*\~@+ /:\_] のみで、最大 255 文字です。次のとおりです: `/^[-\w.*~@+ /:]{1,255}$/`

<h3 id="custom-signup-prompts">
  カスタムサインアッププロンプト
</h3>

カスタムサインアッププロンプトを使用する場合は、カスタムページテンプレートを有効にする必要があります。以下は、カスタムサインアッププロンプトをレンダリングするための最小限のテンプレートです。

```html lines theme={null}
<!DOCTYPE html>
<html>
  <head>
    {%- auth0:head -%}
    <style>
      body._widget-auto-layout {
        --page-background-image: url('https://REPLACE/WITH/YOUR/BACKGROUND/IMAGE.png');
        background-color: var(--page-background-color);
        background-image: var(--page-background-image);
        background-position: center;
        background-size: cover;
        background-repeat: no-repeat;
      }
    </style>
    <title>{{ prompt.screen.texts.pageTitle }}</title>
  </head>
  <body class="_widget-auto-layout">
    {%- auth0:widget -%}
  </body>
</html>
```

詳しくは、[Signup と Login のプロンプトをカスタマイズする](/docs/ja-jp/customize/login-pages/universal-login/customize-signup-and-login-prompts)をご覧ください。

<h2 id="examples">
  使用例
</h2>

<h3 id="login-box-image-layout">
  ログインボックス + 画像レイアウト
</h3>

次のテンプレートでは、ログイン/サインアップページでのみ、左側にログインボックス、右側に画像が表示されます。その他のページはデフォルトの表示になります。

```html lines expandable theme={null}
<!DOCTYPE html>
<html lang="{{locale}}">
  <head>
    {%- auth0:head -%}
    <style>
      body {
        background-image: url("https://images.unsplash.com/photo-1592450865877-e3a318ec3522?ixlib=rb-1.2.1&auto=format&fit=crop&w=2255&q=80");
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
      }
      .prompt-wrapper {
        position: relative;
        display: flex;
        align-items: center;
        width: 480px;
        height: 100%;
        justify-content: center;
        background-color: rgb(60,60,60);
      }
    </style>
    <title>{{ prompt.screen.texts.pageTitle }}</title>

  </head>
  <body class="_widget-auto-layout">
    {% if prompt.name == "login" or prompt.name == "signup" %} 
        <div class="prompt-wrapper">
        {%- auth0:widget -%}
        </div>
    {% else %}
        {%- auth0:widget -%}
    {% endif %}
  </body>
</html>
```

<Frame>
  <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/7F2LIZ4qVdGqMUNnj66wcP/49dfcd7c5c04c7a4d28b58265ba63378/Login_Screen_-_Background_-_EN.png" alt="メール、ユーザー名/パスワード、画像レイアウトを含むUniversal Loginボックスの例" />
</Frame>

<h3 id="page-footers">
  ページのフッター
</h3>

以下の例では、プライバシーポリシーと利用規約へのリンクを含む灰色のフッターを追加します。

```html lines expandable theme={null}
<!DOCTYPE html><html lang="{{locale}}">
  <head>
    {%- auth0:head -%}
    <style>
      body {
        background-image: radial-gradient(white, rgb(200, 200, 200));
      }
      .footer {
        background-color: rgb(120, 120, 120);
        position: absolute;
        bottom: 0;
        left: 0;
        padding: 16px 0; 
        width: 100%;
        color: white;
        /* 将来の拡張性を考慮して高いz-indexを使用 */
        z-index: 10;
      }
      .footer ul {
        text-align: center;
      }
      .footer ul li {
        display: inline-block;
        margin: 0 4px;
      }
      .footer ul li:not(:first-of-type) {
        margin-left: 0;
      }
      .footer ul li:not(:first-of-type)::before {
        content: '';
        display: inline-block;
        vertical-align: middle;
        width: 4px;
        height: 4px;
        margin-right: 4px;
        background-color: white;
        border-radius: 50%;
      }
      .footer a {
        color: white;
      }
    </style>
     <title>{{ prompt.screen.texts.pageTitle }}</title>
  </head>
  <body class="_widget-auto-layout">
    {%- auth0:widget -%}
    <footer class="footer">
      <ul>
        <li><a href="https://company.com/privacy">Privacy Policy</a></li>
        <li><a href="https://company.com/terms">Terms of Service</a></li>
      </ul>
    </footer>
  </body></html>
```

<Frame>
  <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/17BeLStId6jsxSfEnVFPMa/b36afc2aea9203aae4ed8dc8c65447ba/Login_Screen_-_EN.png" alt="メールアドレス/パスワードとフッターのレイアウトを示したUniversal Loginボックスの例" />
</Frame>

<h2 id="page-templates-api">
  ページテンプレート API
</h2>

ページテンプレートを設定するには、<Tooltip tip="Management API: お客様が管理タスクを実行できるようにするための製品です。" cta="用語集を見る" href="/docs/ja-jp/glossary?term=Management+API">Management API</Tooltip>を使用します。まず、`update:branding`、`read:branding`、`delete:branding` のスコープを持つ Management API トークンを取得する必要があります。`API Explorer Application` を使用してトークンを生成する場合は、`Auth0 Management API` でこれらのスコープが有効になっていることを確認してください。

テンプレートを設定するには、次のエンドポイントを使用します：

<Callout icon="file-lines" color="#0EA5E9" iconType="regular">Auth0 CLI をお使いですか？まだの場合は、このコマンドを実行する前に[CLI セッションのセットアップと認証](/docs/ja-jp/deploy-monitor/auth0-cli)を行ってください。</Callout>

<AuthCodeGroup>
  ```bash Auth0 CLI theme={null}
  auth0 api put "branding/templates/universal-login" \
    --data '<!DOCTYPE html><html><head>{%- auth0:head -%}</head><body>{%- auth0:widget -%}</body></html>'
  ```

  ```bash cURL theme={null}
  curl --request PUT \
    --url 'https://{yourDomain}/api/v2/branding/templates/universal-login' \
    --header 'authorization: Bearer MGMT_API_ACCESS_TOKEN' \
    --header 'content-type: text/html' \
    --data '<!DOCTYPE html><html><head>{%- auth0:head -%}</head><body>{%- auth0:widget -%}</body></html>'
  ```

  ```csharp C# theme={null}
  var client = new RestClient("https://{yourDomain}/api/v2/branding/templates/universal-login");
  var request = new RestRequest(Method.PUT);
  request.AddHeader("authorization", "Bearer MGMT_API_ACCESS_TOKEN");
  request.AddHeader("content-type", "text/html");
  request.AddParameter("text/html", "
  {%- auth0:head -%}{%- auth0:widget -%}", ParameterType.RequestBody);
  IRestResponse response = client.Execute(request);
  ```

  ```go Go theme={null}
  package main

  import (
  	"fmt"
  	"strings"
  	"net/http"
  	"io/ioutil"
  )

  func main() {

  	url := "https://{yourDomain}/api/v2/branding/templates/universal-login"

  	payload := strings.NewReader("<!DOCTYPE html><html><head>{%- auth0:head -%}</head><body>{%- auth0:widget -%}</body></html>")

  	req, _ := http.NewRequest("PUT", url, payload)

  	req.Header.Add("authorization", "Bearer MGMT_API_ACCESS_TOKEN")
  	req.Header.Add("content-type", "text/html")

  	res, _ := http.DefaultClient.Do(req)

  	defer res.Body.Close()
  	body, _ := ioutil.ReadAll(res.Body)

  	fmt.Println(res)
  	fmt.Println(string(body))

  }
  ```

  ```java Java theme={null}
  HttpResponse<String> response = Unirest.put("https://{yourDomain}/api/v2/branding/templates/universal-login")
    .header("authorization", "Bearer MGMT_API_ACCESS_TOKEN")
    .header("content-type", "text/html")
    .body("<!DOCTYPE html><html><head>{%- auth0:head -%}</head><body>{%- auth0:widget -%}</body></html>")
    .asString();
  ```

  ```javascript Node.JS theme={null}
  var axios = require("axios").default;

  var options = {
    method: 'PUT',
    url: 'https://{yourDomain}/api/v2/branding/templates/universal-login',
    headers: {authorization: 'Bearer MGMT_API_ACCESS_TOKEN', 'content-type': 'text/html'},
    data: '<!DOCTYPE html><html><head>{%- auth0:head -%}</head><body>{%- auth0:widget -%}</body></html>'
  };

  axios.request(options).then(function (response) {
    console.log(response.data);
  }).catch(function (error) {
    console.error(error);
  });
  ```

  ```php PHP theme={null}
  $curl = curl_init();

  curl_setopt_array($curl, [
    CURLOPT_URL => "https://{yourDomain}/api/v2/branding/templates/universal-login",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "PUT",
    CURLOPT_POSTFIELDS => "<!DOCTYPE html><html><head>{%- auth0:head -%}</head><body>{%- auth0:widget -%}</body></html>",
    CURLOPT_HTTPHEADER => [
      "authorization: Bearer MGMT_API_ACCESS_TOKEN",
      "content-type: text/html"
    ],
  ]);

  $response = curl_exec($curl);
  $err = curl_error($curl);

  curl_close($curl);

  if ($err) {
    echo "cURL Error #:" . $err;
  } else {
    echo $response;
  }
  ```

  ```python Python theme={null}
  import http.client

  conn = http.client.HTTPSConnection("")

  payload = "<!DOCTYPE html><html><head>{%- auth0:head -%}</head><body>{%- auth0:widget -%}</body></html>"

  headers = {
      'authorization': "Bearer MGMT_API_ACCESS_TOKEN",
      'content-type': "text/html"
      }

  conn.request("PUT", "/{yourDomain}/api/v2/branding/templates/universal-login", payload, headers)

  res = conn.getresponse()
  data = res.read()

  print(data.decode("utf-8"))
  ```

  ```ruby Ruby theme={null}
  require 'uri'
  require 'net/http'
  require 'openssl'

  url = URI("https://{yourDomain}/api/v2/branding/templates/universal-login")

  http = Net::HTTP.new(url.host, url.port)
  http.use_ssl = true
  http.verify_mode = OpenSSL::SSL::VERIFY_PEER

  request = Net::HTTP::Put.new(url)
  request["authorization"] = 'Bearer MGMT_API_ACCESS_TOKEN'
  request["content-type"] = 'text/html'
  request.body = "<!DOCTYPE html><html><head>{%- auth0:head -%}</head><body>{%- auth0:widget -%}</body></html>"

  response = http.request(request)
  puts response.read_body
  ```
</AuthCodeGroup>

テンプレートを取得するには、次のエンドポイントを使用します。

<AuthCodeGroup>
  ```bash Auth0 CLI theme={null}
  auth0 api get "branding/templates/universal-login"
  ```

  ```bash cURL theme={null}
  curl --request GET \
    --url 'https://{yourDomain}/api/v2/branding/templates/universal-login' \
    --header 'authorization: Bearer MGMT_API_ACCESS_TOKEN'
  ```

  ```csharp C# theme={null}
  var client = new RestClient("https://{yourDomain}/api/v2/branding/templates/universal-login");
  var request = new RestRequest(Method.GET);
  request.AddHeader("authorization", "Bearer MGMT_API_ACCESS_TOKEN");
  IRestResponse response = client.Execute(request);
  ```

  ```go Go theme={null}
  package main

  import (
  	"fmt"
  	"net/http"
  	"io/ioutil"
  )

  func main() {

  	url := "https://{yourDomain}/api/v2/branding/templates/universal-login"

  	req, _ := http.NewRequest("GET", url, nil)

  	req.Header.Add("authorization", "Bearer MGMT_API_ACCESS_TOKEN")

  	res, _ := http.DefaultClient.Do(req)

  	defer res.Body.Close()
  	body, _ := ioutil.ReadAll(res.Body)

  	fmt.Println(res)
  	fmt.Println(string(body))

  }
  ```

  ```java Java theme={null}
  HttpResponse<String> response = Unirest.get("https://{yourDomain}/api/v2/branding/templates/universal-login")
    .header("authorization", "Bearer MGMT_API_ACCESS_TOKEN")
    .asString();
  ```

  ```javascript Node.JS theme={null}
  var axios = require("axios").default;

  var options = {
    method: 'GET',
    url: 'https://{yourDomain}/api/v2/branding/templates/universal-login',
    headers: {authorization: 'Bearer MGMT_API_ACCESS_TOKEN'}
  };

  axios.request(options).then(function (response) {
    console.log(response.data);
  }).catch(function (error) {
    console.error(error);
  });
  ```

  ```php PHP theme={null}
  $curl = curl_init();

  curl_setopt_array($curl, [
    CURLOPT_URL => "https://{yourDomain}/api/v2/branding/templates/universal-login",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "GET",
    CURLOPT_HTTPHEADER => [
      "authorization: Bearer MGMT_API_ACCESS_TOKEN"
    ],
  ]);

  $response = curl_exec($curl);
  $err = curl_error($curl);

  curl_close($curl);

  if ($err) {
    echo "cURL Error #:" . $err;
  } else {
    echo $response;
  }
  ```

  ```python Python theme={null}
  import http.client

  conn = http.client.HTTPSConnection("")

  headers = { 'authorization': "Bearer MGMT_API_ACCESS_TOKEN" }

  conn.request("GET", "/{yourDomain}/api/v2/branding/templates/universal-login", headers=headers)

  res = conn.getresponse()
  data = res.read()

  print(data.decode("utf-8"))
  ```

  ```ruby Ruby theme={null}
  require 'uri'
  require 'net/http'
  require 'openssl'

  url = URI("https://{yourDomain}/api/v2/branding/templates/universal-login")

  http = Net::HTTP.new(url.host, url.port)
  http.use_ssl = true
  http.verify_mode = OpenSSL::SSL::VERIFY_PEER

  request = Net::HTTP::Get.new(url)
  request["authorization"] = 'Bearer MGMT_API_ACCESS_TOKEN'

  response = http.request(request)
  puts response.read_body
  ```
</AuthCodeGroup>

テンプレートを削除するには、次のエンドポイントを使用します。

<AuthCodeGroup>
  ```bash Auth0 CLI theme={null}
  auth0 api delete "branding/templates/universal-login"
  ```

  ```bash cURL theme={null}
  curl --request DELETE \
    --url 'https://{yourDomain}/api/v2/branding/templates/universal-login' \
    --header 'authorization: Bearer MGMT_API_ACCESS_TOKEN'
  ```

  ```csharp C# theme={null}
  var client = new RestClient("https://{yourDomain}/api/v2/branding/templates/universal-login");
  var request = new RestRequest(Method.DELETE);
  request.AddHeader("authorization", "Bearer MGMT_API_ACCESS_TOKEN");
  IRestResponse response = client.Execute(request);
  ```

  ```go Go theme={null}
  package main

  import (
  	"fmt"
  	"net/http"
  	"io/ioutil"
  )

  func main() {

  	url := "https://{yourDomain}/api/v2/branding/templates/universal-login"

  	req, _ := http.NewRequest("DELETE", url, nil)

  	req.Header.Add("authorization", "Bearer MGMT_API_ACCESS_TOKEN")

  	res, _ := http.DefaultClient.Do(req)

  	defer res.Body.Close()
  	body, _ := ioutil.ReadAll(res.Body)

  	fmt.Println(res)
  	fmt.Println(string(body))

  }
  ```

  ```java Java theme={null}
  HttpResponse<String> response = Unirest.delete("https://{yourDomain}/api/v2/branding/templates/universal-login")
    .header("authorization", "Bearer MGMT_API_ACCESS_TOKEN")
    .asString();
  ```

  ```javascript Node.JS theme={null}
  var axios = require("axios").default;

  var options = {
    method: 'DELETE',
    url: 'https://{yourDomain}/api/v2/branding/templates/universal-login',
    headers: {authorization: 'Bearer MGMT_API_ACCESS_TOKEN'}
  };

  axios.request(options).then(function (response) {
    console.log(response.data);
  }).catch(function (error) {
    console.error(error);
  });
  ```

  ```php PHP theme={null}
  $curl = curl_init();

  curl_setopt_array($curl, [
    CURLOPT_URL => "https://{yourDomain}/api/v2/branding/templates/universal-login",
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => "",
    CURLOPT_MAXREDIRS => 10,
    CURLOPT_TIMEOUT => 30,
    CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
    CURLOPT_CUSTOMREQUEST => "DELETE",
    CURLOPT_HTTPHEADER => [
      "authorization: Bearer MGMT_API_ACCESS_TOKEN"
    ],
  ]);

  $response = curl_exec($curl);
  $err = curl_error($curl);

  curl_close($curl);

  if ($err) {
    echo "cURL Error #:" . $err;
  } else {
    echo $response;
  }
  ```

  ```python Python theme={null}
  import http.client

  conn = http.client.HTTPSConnection("")

  headers = { 'authorization': "Bearer MGMT_API_ACCESS_TOKEN" }

  conn.request("DELETE", "/{yourDomain}/api/v2/branding/templates/universal-login", headers=headers)

  res = conn.getresponse()
  data = res.read()

  print(data.decode("utf-8"))
  ```

  ```ruby Ruby theme={null}
  require 'uri'
  require 'net/http'
  require 'openssl'

  url = URI("https://{yourDomain}/api/v2/branding/templates/universal-login")

  http = Net::HTTP.new(url.host, url.port)
  http.use_ssl = true
  http.verify_mode = OpenSSL::SSL::VERIFY_PEER

  request = Net::HTTP::Delete.new(url)
  request["authorization"] = 'Bearer MGMT_API_ACCESS_TOKEN'

  response = http.request(request)
  puts response.read_body
  ```
</AuthCodeGroup>

ページテンプレートの最大サイズは 100KB です。これで足りない場合は、画像や CSS ファイルをページテンプレートのコードの外に移すことを検討してください。

<h2 id="css-customization">
  CSS のカスタマイズ
</h2>

<Warning>
  **ページテンプレートの制限事項:**

  * CSS のクラス名は、Auth0 がプロジェクトをビルドするたびに変わります。これらのクラスを対象にしたカスタム CSS は、ビルドのたびに機能しなくなります。
  * Universal Login ページの HTML 構造は変更される可能性があります。問題を避けるため、HTML 構造に依存するカスタマイズは行わないでください。
</Warning>

CSS を使ってカスタマイズできる項目がいくつかあります。

* `<head>` 要素内の `<style>` タグに以下の変数を記述することで、ログインプロンプトのサイズを変更できます。

  * `--prompt-width` を使ってコンテナーの幅を調整できます。既定値は 400px です。
  * [フォーム](/docs/ja-jp/customize/forms) の場合: `--form-max-width` を使ってフォームの最大幅を設定できます。既定値は 500px です。

    * コードを Form ページにのみ適用するには、`<head>` 要素に `{% if prompt.name == "custom-form" %}` を含めます。
* Google フォントは、インポートして `--font-family` CSS 変数を上書きすることで使用できます。
* `<body>` 要素に `class="_hide-prompt-logo"` を追加すると、テナントロゴを非表示にできます。
* `<body>` 要素に `class="_use-custom-prompt-logo"` を追加すると、カスタムロゴを指定できます。これにより、たとえばアプリケーションに応じてログインページのロゴを変更できます。

```html lines expandable theme={null}
<!DOCTYPE html>
<html lang="{{locale}}">

  <head>
    <title>Welcome to {{ application.name }} </title>
    {%- auth0:head -%}
    <style>
      :root {
        --prompt-width: 800px;
      }
      {% if application.name == "Auth0 Community" %}
      #custom-prompt-logo {
      background-image: url('https://cdn.auth0.com/manhattan/versions/1.3312.0/assets/badge.png');
      }
      {% elsif application.name == "Auth0 Dashboard" %}
      #custom-prompt-logo {
      background-image: url('https://cdn.auth0.com/blog/auth0rta/theme/logos/auth0-logo-black.png');
      }
      {% endif %}
  </style>

  </head>

  <body class="_widget-auto-layout _use-custom-prompt-logo">
    {%- auth0:widget -%}
  </body>

</html>
```

現在の実装では、これ以上 CSS をカスタマイズすることはできません。生成される HTML を見ると、次のようなコードが表示されます。

```text lines theme={null}
.c10d15918.c7b3b8672 {
  background: #D00E17;
}
```

<h2 id="using-the-auth0-cli">
  Auth0 CLI の使用
</h2>

[Auth0 CLI](https://github.com/auth0/auth0-cli) を使用すると、ページテンプレートを簡単に更新できます。

Auth0 CLI で次を実行します。

`auth0 universal-login customize`

Auth0 CLI を実行すると、2 つのウィンドウが開きます。

* ページテンプレートが適用されたログインページを表示する [Storybook](https://storybook.js.org/) を開いたブラウザーウィンドウ:

<Frame>
  <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/1Ms4jj0pdMowoSZi54i72S/a2adcffa34a491ed7a587094884ad0f1/storybook.png" alt="ページテンプレートの Storybook" />
</Frame>

* ページテンプレートのコードを表示する既定のエディター:

<Frame>
  <img src="https://mintlify.s3.us-west-1.amazonaws.com/auth0-feat-sdk-reference-docs/docs/images/cdy7uua7fh8z/3fTqpTmRRgVeLu5p8cioWa/e5a5c8a12dc93f5de95f12581ce0e5ff/vs-code.png" alt="undefined" />
</Frame>

これでページテンプレートのコードを変更し、その変更をブラウザーウィンドウでプレビューできます。

ウィンドウを閉じると、テンプレートを保存するかどうかを確認されます。**Yes** を選択すると、テンプレートがテナントにアップロードされます。

<h2 id="troubleshooting">
  トラブルシューティング
</h2>

テンプレートが適用されない場合は、`{customDomain}/authorize` にアクセスしていることを確認してください。`{yourDomain}/authorize` にアクセスしていると、Auth0 はページテンプレートをレンダリングしません。
