diff --git a/src/app.lisp b/src/app.lisp
index 27e1ca4..ce84206 100644
--- a/src/app.lisp
+++ b/src/app.lisp
@@ -5,7 +5,7 @@
   (:local-nicknames (#:fbr #:ningle-fbr))
   (:local-nicknames (#:pi #:piccolo))
   (:local-nicknames (#:view #:hp/view))
-  (:local-nicknames (#:cmp #:hp/components/**/*))
+  (:local-nicknames (#:cmp #:hp/components/*))
   (:local-nicknames (#:mw #:hp/middlewares/*))
   (:export #:start
            #:stop
diff --git a/src/components/global/document.lisp b/src/components/global/document.lisp
deleted file mode 100644
index 8efb0c8..0000000
--- a/src/components/global/document.lisp
+++ /dev/null
@@ -1,26 +0,0 @@
-(defpackage #:hp/components/global/document
-  (:use #:cl)
-  (:local-nicknames (#:pi #:piccolo))
-  (:export #:document))
-(in-package #:hp/components/global/document)
-
-(pi:define-element document (title description)
-  (pi:h
-    (html :lang "ja"
-      (head
-        (meta :charset "UTF-8")
-        (script :src "/scripts/htmx.js")
-        (script :src "/scripts/htmx-ext/head-support.js")
-        (script :src "/scripts/alpine.js" :defer t)
-        (link :rel "stylesheet" :type "text/css" :href "/styles/ress.css")
-        (link :rel "stylesheet" :type "text/css" :href "/styles/global.css")
-        (link :rel "preconnect" :href "https://fonts.googleapis.com")
-        (link :rel "preconnect" :href "https://fonts.gstatic.com" :crossorigin t)
-        (link 
-          :rel "stylesheet"
-          :href "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap")
-        (title (format nil "~@[~a - ~]skyizwhite.dev" title))
-        (meta
-          :name "description"
-          :content (or description "pakuの個人サイト")))
-      pi:children)))
diff --git a/src/components/global/layout.lisp b/src/components/global/layout.lisp
deleted file mode 100644
index 4d3caa6..0000000
--- a/src/components/global/layout.lisp
+++ /dev/null
@@ -1,10 +0,0 @@
-(defpackage #:hp/components/global/layout
-  (:use #:cl)
-  (:local-nicknames (#:pi #:piccolo))
-  (:export #:layout))
-(in-package #:hp/components/global/layout)
-
-(pi:define-element layout ()
-  (pi:h
-    (body :hx-ext "head-support"
-      (main pi:children))))
diff --git a/src/components/global/not-found.lisp b/src/components/not-found.lisp
similarity index 65%
rename from src/components/global/not-found.lisp
rename to src/components/not-found.lisp
index 3ec74e9..15ab9a3 100644
--- a/src/components/global/not-found.lisp
+++ b/src/components/not-found.lisp
@@ -1,8 +1,8 @@
-(defpackage #:hp/components/global/not-found
+(defpackage #:hp/components/not-found
   (:use #:cl)
   (:local-nicknames (#:pi #:piccolo))
   (:export #:not-found-page))
-(in-package #:hp/components/global/not-found)
+(in-package #:hp/components/not-found)
 
 (pi:define-element not-found-page ()
   (pi:h
diff --git a/src/view.lisp b/src/view.lisp
index 2cfc1cd..31f28e7 100644
--- a/src/view.lisp
+++ b/src/view.lisp
@@ -2,13 +2,32 @@
   (:use #:cl)
   (:local-nicknames (#:jg #:jingle))
   (:local-nicknames (#:pi #:piccolo))
-  (:local-nicknames (#:cmp #:hp/components/**/*))
   (:export #:render))
 (in-package #:hp/view)
 
-(defun render (page &key metadata status)
+(pi:define-element document (title description)
+  (pi:h
+    (html :lang "ja"
+      (head
+        (meta :charset "UTF-8")
+        (script :src "/scripts/htmx.js")
+        (script :src "/scripts/htmx-ext/head-support.js")
+        (script :src "/scripts/alpine.js" :defer t)
+        (link :rel "stylesheet" :type "text/css" :href "/styles/ress.css")
+        (link :rel "stylesheet" :type "text/css" :href "/styles/global.css")
+        (link :rel "preconnect" :href "https://fonts.googleapis.com")
+        (link :rel "preconnect" :href "https://fonts.gstatic.com" :crossorigin t)
+        (link 
+          :rel "stylesheet"
+          :href "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap")
+        (title (format nil "~@[~a - ~]skyizwhite.dev" title))
+        (meta
+          :name "description"
+          :content (or description "pakuの個人サイト")))
+      (body :hx-ext "head-support"
+        (main pi:children)))))
+
+(defun render (page &key status metadata)
   (jg:with-html-response
     (and status (jg:set-response-status status))
-    (pi:elem-str
-     (cmp:document metadata
-       (cmp:layout page)))))
+    (pi:elem-str (document metadata page))))