diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml
index 99b1482538..6b71acb1cf 100644
--- a/locales/ja-JP.yml
+++ b/locales/ja-JP.yml
@@ -672,6 +672,7 @@ wide: "広い"
 narrow: "狭い"
 reloadToApplySetting: "設定はページリロード後に反映されます。今すぐリロードしますか?"
 showTitlebar: "タイトルバーを表示する"
+clearCache: "キャッシュをクリア"
 
 _aboutMisskey:
   about: "Misskeyはsyuiloによって2014年から開発されている、オープンソースのソフトウェアです。"
diff --git a/src/client/init.ts b/src/client/init.ts
index 9683075785..7c3df68c34 100644
--- a/src/client/init.ts
+++ b/src/client/init.ts
@@ -91,10 +91,6 @@ if (_DEV_) {
 // タッチデバイスでCSSの:hoverを機能させる
 document.addEventListener('touchend', () => {}, { passive: true });
 
-if (localStorage.theme == null) {
-	applyTheme(require('@/themes/l-light.json5'));
-}
-
 //#region SEE: https://css-tricks.com/the-trick-to-viewport-units-on-mobile/
 // TODO: いつの日にか消したい
 const vh = window.innerHeight * 0.01;
@@ -204,7 +200,7 @@ watch(defaultStore.reactiveState.darkMode, (darkMode) => {
 		const themes = builtinThemes.concat(ColdDeviceStorage.get('themes'));
 		applyTheme(themes.find(x => x.id === (darkMode ? ColdDeviceStorage.get('darkTheme') : ColdDeviceStorage.get('lightTheme'))));
 	});
-});
+}, { immediate: localStorage.theme == null });
 
 //#region Sync dark mode
 if (ColdDeviceStorage.get('syncDeviceDarkMode')) {
diff --git a/src/client/pages/settings/index.vue b/src/client/pages/settings/index.vue
index 05756716db..aa9fe27164 100644
--- a/src/client/pages/settings/index.vue
+++ b/src/client/pages/settings/index.vue
@@ -27,6 +27,9 @@
 			<FormLink :active="page === 'api'" replace to="/settings/api"><template #icon><Fa :icon="faKey"/></template>API</FormLink>
 			<FormLink :active="page === 'other'" replace to="/settings/other"><template #icon><Fa :icon="faEllipsisH"/></template>{{ $ts.other }}</FormLink>
 		</FormGroup>
+		<FormGroup>
+			<FormButton @click="clear">{{ $ts.clearCache }}</FormButton>
+		</FormGroup>
 		<FormGroup>
 			<FormButton @click="logout" danger>{{ $ts.logout }}</FormButton>
 		</FormGroup>
@@ -126,6 +129,11 @@ export default defineComponent({
 			logout: () => {
 				signout();
 			},
+			clear: () => {
+				localStorage.removeItem('locale');
+				localStorage.removeItem('theme');
+				location.reload();
+			},
 			faPalette, faPlug, faUser, faListUl, faLock, faLaugh, faCommentSlash, faMusic, faBell, faCogs, faEllipsisH, faBan, faShareAlt, faLockOpen, faKey, faBoxes, faEnvelope,
 		};
 	},