diff --git a/src/client/components/modal-page-window.vue b/src/client/components/modal-page-window.vue
index a9a5c0ce57544c90a82acfc8367a0370257424ae..6079c08f05498b56204afb089724f96a59bd4db4 100644
--- a/src/client/components/modal-page-window.vue
+++ b/src/client/components/modal-page-window.vue
@@ -10,7 +10,9 @@
 			<button class="_button" @click="$refs.modal.close()"><Fa :icon="faTimes"/></button>
 		</div>
 		<div class="body _flat_">
-			<component :is="component" v-bind="props" :ref="changePage"/>
+			<keep-alive>
+				<component :is="component" v-bind="props" :ref="changePage"/>
+			</keep-alive>
 		</div>
 	</div>
 </MkModal>
diff --git a/src/client/components/ui/window.vue b/src/client/components/ui/window.vue
index 1613644c87e16370db0c01d9f5fede164ec102d6..70676cdaf5f6cb70ad3e17c0cebb15fda5495431 100644
--- a/src/client/components/ui/window.vue
+++ b/src/client/components/ui/window.vue
@@ -395,7 +395,7 @@ export default defineComponent({
 	position: fixed;
 	top: 0;
 	left: 0;
-	z-index: 5000;
+	z-index: 10000; // mk-modalのと同じでなければならない
 
 	&.front {
 		z-index: 11000; // front指定の時は、mk-modalのよりも大きくなければならない
diff --git a/src/client/pages/api-console.vue b/src/client/pages/api-console.vue
index 5321f8e7ce99ea08a9f07d3c76a7fbf8184350bd..7deb18afa24f218723bd1a05fb24dd7b1ac24c78 100644
--- a/src/client/pages/api-console.vue
+++ b/src/client/pages/api-console.vue
@@ -1,25 +1,29 @@
 <template>
 <div>
-<section class="_section">
-	<MkInput v-model:value="endpoint" :datalist="endpoints" @update:value="onEndpointChange()">
-		<span>Endpoint</span>
-	</MkInput>
-	<MkTextarea v-model:value="body" code>
-		<span>Params (JSON or JSON5)</span>
-	</MkTextarea>
-	<MkSwitch v-model:value="withCredential">
-		With credential
-	</MkSwitch>
-	<MkButton primary full @click="send" :disabled="sending">
-		<template v-if="sending"><MkEllipsis/></template>
-		<template v-else><Fa :icon="faPaperPlane"/> Send</template>
-	</MkButton>
-</section>
-<section class="_section" v-if="res">
-	<MkTextarea v-model:value="res" code readonly tall>
-		<span>Response</span>
-	</MkTextarea>
-</section>
+	<div class="_root">
+		<div class="_block" style="padding: 24px;">
+			<MkInput v-model:value="endpoint" :datalist="endpoints" @update:value="onEndpointChange()">
+				<span>Endpoint</span>
+			</MkInput>
+			<MkTextarea v-model:value="body" code>
+				<span>Params (JSON or JSON5)</span>
+			</MkTextarea>
+			<MkSwitch v-model:value="withCredential">
+				With credential
+			</MkSwitch>
+			<MkButton primary full @click="send" :disabled="sending">
+				<template v-if="sending"><MkEllipsis/></template>
+				<template v-else><Fa :icon="faPaperPlane"/> Send</template>
+			</MkButton>
+		</div>
+	</div>
+	<div class="_root" v-if="res">
+		<div class="_block" style="padding: 24px;">
+			<MkTextarea v-model:value="res" code readonly tall>
+				<span>Response</span>
+			</MkTextarea>
+		</div>
+	</div>
 </div>
 </template>
 
diff --git a/src/client/pages/settings/index.vue b/src/client/pages/settings/index.vue
index 0387d66ae87a4d387ae2471a34c1bcf74f2d34e4..5a21cf2ff3ea26a5fa914485ae5bef2c2d3b4c4b 100644
--- a/src/client/pages/settings/index.vue
+++ b/src/client/pages/settings/index.vue
@@ -148,7 +148,11 @@ export default defineComponent({
 		}, { immediate: true });
 
 		watch(() => props.initialPage, () => {
-			page.value = props.initialPage;
+			if (props.initialPage == null && !narrow.value) {
+				page.value = 'profile';
+			} else {
+				page.value = props.initialPage;
+			}
 		});
 
 		onMounted(() => {