diff --git a/locales/index.d.ts b/locales/index.d.ts
index 3ed270629812eb31a5cf234bfcee3fe06bb767fb..654b64891c0896346b2fdcf8d73e474ee08f5f89 100644
--- a/locales/index.d.ts
+++ b/locales/index.d.ts
@@ -1642,7 +1642,9 @@ export interface Locale {
         "assignTarget": string;
         "descriptionOfAssignTarget": string;
         "manual": string;
+        "manualRoles": string;
         "conditional": string;
+        "conditionalRoles": string;
         "condition": string;
         "isConditionalRole": string;
         "isPublic": string;
diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml
index 9b5dfce63d50c6d9777fd075ca5002e1c6aaad3b..26deccd36508c6e06e33ee00776c467f0be28c46 100644
--- a/locales/ja-JP.yml
+++ b/locales/ja-JP.yml
@@ -1552,7 +1552,9 @@ _role:
   assignTarget: "アサイン"
   descriptionOfAssignTarget: "<b>マニュアル</b>は誰がこのロールに含まれるかを手動で管理します。\n<b>コンディショナル</b>は条件を設定し、それに合致するユーザーが自動で含まれるようになります。"
   manual: "マニュアル"
+  manualRoles: "マニュアルロール"
   conditional: "コンディショナル"
+  conditionalRoles: "コンディショナルロール"
   condition: "条件"
   isConditionalRole: "これはコンディショナルロールです。"
   isPublic: "公開ロール"
diff --git a/packages/frontend/src/pages/admin/roles.vue b/packages/frontend/src/pages/admin/roles.vue
index d3f3773564d24fe2a0a6a884baad59ab1f6d48cd..91cd86485f45e9835430ec06189e6c0190f11394 100644
--- a/packages/frontend/src/pages/admin/roles.vue
+++ b/packages/frontend/src/pages/admin/roles.vue
@@ -198,13 +198,13 @@ SPDX-License-Identifier: AGPL-3.0-only
 				<MkButton primary rounded @click="create"><i class="ti ti-plus"></i> {{ i18n.ts._role.new }}</MkButton>
 				<div class="_gaps_s">
 					<MkFoldableSection>
-						<template #header>Manual roles</template>
+						<template #header>{{ i18n.ts._role.manualRoles }}</template>
 						<div class="_gaps_s">
 							<MkRolePreview v-for="role in roles.filter(x => x.target === 'manual')" :key="role.id" :role="role" :forModeration="true"/>
 						</div>
 					</MkFoldableSection>
 					<MkFoldableSection>
-						<template #header>Conditional roles</template>
+						<template #header>{{ i18n.ts._role.conditionalRoles }}</template>
 						<div class="_gaps_s">
 							<MkRolePreview v-for="role in roles.filter(x => x.target === 'conditional')" :key="role.id" :role="role" :forModeration="true"/>
 						</div>