:where([data-astro-image]){object-fit:var(--fit);object-position:var(--pos);height:auto}:where([data-astro-image=full-width]){width:100%}:where([data-astro-image=constrained]){max-width:100%}:root{color:#222;background:#f5f5f5;font-family:Helvetica Neue,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;line-height:1.4}*{box-sizing:border-box}body{margin:0;background:#f5f5f5;position:relative}.background-figure{--background-figure-opacity: .2;position:fixed;right:max(-40px,calc(50vw - 620px));bottom:-16px;z-index:0;width:min(42vw,520px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity 80ms ease-out,visibility 0s linear 80ms}.background-figure.is-visible{opacity:var(--background-figure-opacity);visibility:visible;transition-duration:.18s,0s;transition-delay:0s,0s}.background-figure img{display:block;width:100%;height:auto;filter:drop-shadow(2px 2px 1px rgba(23,26,28,.26))}html{scroll-behavior:smooth}img{vertical-align:middle}a{color:inherit}.menu-toggle{position:fixed;top:18px;right:18px;z-index:20;display:inline-flex;width:40px;height:40px;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:0;border:1px solid rgba(34,34,34,.18);border-radius:0;background:linear-gradient(rgba(52,76,88,.008) 50%,transparent 50%),#e3e7e9d6;background-size:100% 4px,auto;box-shadow:inset 0 -1px #ffffff52,inset 0 1px #ffffff47,0 2px 10px #2222220f;cursor:pointer;transition:opacity .18s ease,transform .18s ease,visibility .18s ease}.menu-toggle.is-hidden{opacity:0;pointer-events:none;transform:translateY(-8px);visibility:hidden}.menu-toggle span{display:block;width:16px;height:1px;background:#4b585f;box-shadow:1px 1px #cad3d894}.menu-panel{position:fixed;top:68px;right:18px;z-index:19;min-width:136px;border:1px solid rgba(52,66,74,.18);background:linear-gradient(rgba(52,76,88,.008) 50%,transparent 50%),#e3e7e9f5;background-size:100% 4px,auto;box-shadow:inset 0 -1px #ffffff52,inset 0 1px #ffffff47,0 2px 10px #22222214}.menu-panel nav{display:grid}.menu-panel a{padding:12px 18px;text-align:center;font-family:Silkscreen,cursive;font-size:14px;color:#4b585f;text-decoration:none;text-shadow:1px 1px 0 rgba(202,211,216,.58),0 0 4px rgba(38,48,54,.08)}.menu-panel a+a{border-top:1px solid rgba(52,66,74,.12)}.floating-nav{position:fixed;top:0;left:0;z-index:18;display:flex;align-items:center;justify-content:center;gap:36px;width:100%;padding:18px 24px 17px;border-bottom:1px solid rgba(52,66,74,.18);background:linear-gradient(rgba(52,76,88,.008) 50%,transparent 50%),#e3e7e9;background-size:100% 4px,auto;box-shadow:inset 0 -1px #ffffff52,inset 0 1px #ffffff47,0 2px 10px #22222214;opacity:0;pointer-events:none;transform:translateY(-100%);transition:opacity .18s ease,transform .18s ease}.floating-nav.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.floating-nav a{font-family:Silkscreen,cursive;font-size:15px;font-weight:400;letter-spacing:0;color:#4b585f;text-decoration:none;text-shadow:1px 1px 0 rgba(202,211,216,.58),0 0 4px rgba(38,48,54,.08);white-space:nowrap}.menu-panel a:hover,.floating-nav a:hover{color:#111a1f}.top{position:relative;z-index:1;min-height:100svh;display:flex;flex-direction:column;justify-content:center;padding:28px 0}.tagline{margin:0;text-align:center;font-family:Silkscreen,cursive;font-size:10pt;font-weight:300;color:#8b8b8b}.top-logo{display:block;width:80%;max-width:560px;height:auto;margin:0 auto}.title{margin:.67em 0;text-align:center}.name{display:block;font-family:Klee One,cursive;font-size:24px;font-weight:300}.eng{display:block;font-size:8px;font-weight:300}.subtitle{margin:18px 0 0;text-align:center;font-family:Klee One,cursive;font-size:16px;font-weight:300}.intro{width:min(760px,calc(100% - 48px));margin:0 auto 72px;padding-top:16px}.intro p{margin:0;font-family:Klee One,cursive;font-size:18px;font-weight:300;text-align:center}.content-section{position:relative;z-index:1;width:min(760px,calc(100% - 48px));margin:0 auto;padding:72px 0;border-top:1px solid rgba(34,34,34,.14)}.page-main-with-nav{padding-top:88px}.page-main-with-nav .content-section{border-top:0}.worldview-gallery{position:relative;z-index:1;width:min(1120px,calc(100% - 32px));margin:0 auto;padding:24px 0 56px}.worldview-card{margin:0;border:1px solid rgba(52,66,74,.14);background:#ffffff80;box-shadow:0 16px 40px #22222214,inset 0 1px #ffffff47;overflow:hidden}.worldview-card+.worldview-card{margin-top:28px}.worldview-card img{display:block;width:100%;height:auto}.worldview-card-secondary{margin-left:auto}.worldview-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:28px}.worldview-pair .worldview-card+.worldview-card{margin-top:0}.worldview-card-compact{align-self:start}.section-kicker{margin:0 0 10px;font-family:Silkscreen,cursive;font-size:11px;color:#8b8b8b}.content-section h2{margin:0 0 18px;font-family:Roboto,Helvetica Neue,Arial,sans-serif;font-size:28px;font-weight:500;letter-spacing:.02em;color:#5a5458}.content-section p{margin:0;color:#4a4a4a;font-size:15px;line-height:1.9}.about-profile-grid{display:grid;grid-template-columns:104px minmax(0,1fr);gap:28px;align-items:start;margin-top:22px}.about-profile-avatar{position:relative;width:104px;aspect-ratio:1 / 1;border-radius:50%;overflow:hidden;border:1px solid rgba(52,66,74,.12)}.about-profile-avatar img{display:block;width:100%;height:100%;object-fit:cover}.about-profile-heading{min-width:0}.about-profile-body{display:grid;gap:24px;padding-top:2px}.content-section .about-profile-name{margin:0;font-family:Klee One,cursive;font-size:29px;line-height:1.1;letter-spacing:.1em;font-weight:300;color:#433c41}.content-section .about-profile-subtitle{max-width:none;margin-top:2px;font-family:Klee One,cursive;font-size:13px;color:#5a5458}.content-section .about-profile-handle{max-width:none;margin-top:4px;font-family:Silkscreen,cursive;font-size:11px;color:#7d747a;letter-spacing:.06em}.content-section .about-profile-links{max-width:none;display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:10px;font-family:Silkscreen,cursive;font-size:12px;color:#7d747a}.about-profile-links a{color:#4b585f;text-decoration:none}.about-profile-copy{display:grid;gap:12px}.content-section .about-profile-copy p{font-size:14px;line-height:2}.about-profile-specialties{display:grid;gap:12px;padding-top:2px}.content-section .about-profile-caption{max-width:none;margin:0;font-family:Silkscreen,cursive;font-size:11px;letter-spacing:.08em;color:#8b8b8b}.about-profile-offerings{display:grid;grid-template-columns:repeat(2,minmax(0,max-content));gap:8px 22px;margin:0;padding:0;list-style:none}.content-section .about-profile-offerings li{max-width:none;font-size:13px;line-height:1.75;color:#6a6166}.works-list{display:grid;gap:14px;margin-top:28px;padding:0;list-style:none}.work-item{display:grid;gap:6px}.content-section .work-item-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:0;font-family:Silkscreen,cursive;font-size:11px;letter-spacing:.04em;color:#8b8b8b}.content-section .work-item-title{margin:0;font-size:14px;line-height:1.9;color:#4a4a4a}.work-item-title a{text-decoration:none}.work-item-title a:hover,.work-item-title a:focus-visible{text-decoration:underline;text-underline-offset:.16em}.content-section .works-note{margin-top:18px;font-size:13px;line-height:1.85;color:#7d747a}.portfolio-sections{margin-top:32px}.portfolio-section+.portfolio-section{margin-top:44px}.portfolio-section h3{margin:0 0 18px;font-family:Silkscreen,Roboto,sans-serif;font-size:18px;font-weight:400;letter-spacing:.08em;color:#6a6166}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.portfolio-card{margin:0;border:1px solid rgba(52,66,74,.14);background:#ffffff8f;box-shadow:0 14px 34px #22222214,inset 0 1px #ffffff47;overflow:hidden}.portfolio-card-book{border:0;background:transparent;box-shadow:none;overflow:visible}.portfolio-link{--thumb-scale: 1;--thumb-offset-x: 0px;--thumb-offset-y: 0px;position:relative;display:block;aspect-ratio:1 / 1;background:#dbdfe2b8}.portfolio-card img{display:block;width:100%;height:100%;object-fit:cover;object-position:calc(50% + var(--thumb-offset-x)) calc(50% + var(--thumb-offset-y));transform:scale(var(--thumb-scale));transform-origin:center center;transition:transform .22s ease,filter .22s ease}.portfolio-link:hover img,.portfolio-link:focus-visible img{transform:scale(calc(var(--thumb-scale) + .03));filter:saturate(1.04)}.portfolio-link:focus-visible{outline:2px solid rgba(208,63,48,.7);outline-offset:-2px}.portfolio-link-book{aspect-ratio:1 / 1.4142;background:transparent}.portfolio-link-book img{object-fit:cover;object-position:center center;transform:none}.portfolio-link-book:hover img,.portfolio-link-book:focus-visible img{transform:none;filter:saturate(1.03)}.portfolio-divider{margin:44px 0;border-top:1px solid rgba(52,66,74,.12)}:global(.pswp__bg){background:#0e1216f0}:global(.pswp__counter),:global(.pswp__button),:global(.pswp__preloader){color:#f2efea}.contact-grid{position:relative;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:28px}.contact-card{display:grid;grid-template-columns:52px minmax(0,1fr);gap:16px;align-items:start;padding:20px;border:1px solid rgba(52,66,74,.14);background:linear-gradient(rgba(52,76,88,.008) 50%,transparent 50%),#ffffff8f;background-size:100% 4px,auto;box-shadow:0 14px 34px #22222214,inset 0 1px #ffffff47;text-decoration:none;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.contact-card:hover,.contact-card:focus-visible{transform:translateY(-2px);border-color:#5883b357;box-shadow:0 18px 40px #2222221a,inset 0 1px #ffffff47}.contact-card:focus-visible{outline:2px solid rgba(88,131,179,.42);outline-offset:2px}.contact-card-icon{display:inline-flex;width:52px;height:52px;align-items:center;justify-content:center;border:1px solid rgba(52,66,74,.1);background:#e3e7e9b8}.contact-card-icon img{width:28px;height:28px}.contact-card-icon .mail-icon{width:32px;height:32px}.contact-card-body{display:grid;gap:6px;min-width:0}.contact-card-label{font-family:Silkscreen,cursive;font-size:11px;letter-spacing:.08em;color:#7d747a}.contact-card-value{color:#433c41;font-size:16px;line-height:1.5;word-break:break-word}.contact-card-note{color:#6a6166;font-size:13px;line-height:1.8}.page-main-with-nav .content-section:first-child{padding-top:40px}.page-main-with-nav .content-section p+p{margin-top:16px}.book-entry{width:min(920px,calc(100% - 48px));display:grid;grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:32px;align-items:start}.book-entry-cover{border:1px solid rgba(52,66,74,.14);background:#ffffff8f;box-shadow:0 16px 40px #22222214,inset 0 1px #ffffff47;overflow:hidden}.book-entry-cover img{display:block;width:100%;height:auto}.book-entry-copy h2{margin-top:0;font-family:"Noto Serif JP",serif}.book-entry-copy .book-subtitle{font-family:"Noto Serif JP",serif;margin-top:-14px;font-size:17px;font-weight:600;letter-spacing:.08em;color:#6a6166}.book-entry-copy{align-self:start;display:grid;gap:22px;padding:8px 0 0}.book-entry-copy .section-kicker,.book-entry-copy h2,.book-entry-copy p{margin:0}.book-meta{display:grid;gap:12px;margin:0;padding:18px 0 0;border-top:1px solid rgba(52,66,74,.12)}.book-meta div{display:grid;grid-template-columns:minmax(72px,88px) minmax(0,1fr);gap:14px;align-items:baseline}.book-meta dt{font-family:Silkscreen,cursive;font-size:11px;color:#8b8b8b}.book-meta dd{margin:0;color:#4a4a4a;font-size:14px;letter-spacing:.04em}.book-meta-link{color:#9f342a;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.book-meta-link:hover,.book-meta-link:focus-visible{color:#5a5458}.book-entry-note{display:grid;gap:14px;padding:2px 0 0}.book-entry-note p{max-width:none;font-size:14px;line-height:1.85}.book-content{position:relative;z-index:1;width:min(920px,calc(100% - 48px));margin:0 auto;padding:0 0 72px;color:#4a4a4a}.book-content>*{margin-top:0}.book-content>*+*{margin-top:22px}.book-content p,.book-content li,.book-content blockquote{font-size:15px;line-height:1.9}.book-content h2,.book-content h3{margin-top:56px;margin-bottom:0;color:#5a5458}.book-content h2{font-family:Roboto,Helvetica Neue,Arial,sans-serif;font-size:28px;font-weight:500;letter-spacing:.02em}.book-content h3{font-family:Silkscreen,Roboto,sans-serif;font-size:16px;font-weight:400;letter-spacing:.06em;color:#6a6166}.book-content p:has(>img:only-child){display:grid;justify-items:center;margin:40px 0}.book-content p:has(>img:only-child)+p:has(>img:only-child){margin-top:18px}.book-content img{display:block;width:auto;max-width:min(100%,var(--book-image-max-width, 720px));max-height:min(74vh,760px);height:auto;object-fit:contain;border:1px solid rgba(52,66,74,.14);background:#ffffff94;box-shadow:0 16px 40px #22222214,inset 0 1px #ffffff47}.book-content :where(p+p){margin-top:16px}.book-content ul,.book-content ol{padding-left:1.2em}.book-content li+li{margin-top:8px}.book-content blockquote{margin-left:0;padding:18px 20px;border-left:3px solid rgba(208,63,48,.48);background:#ffffff73;font-family:"Noto Serif JP",serif;line-height:1.95;color:#5a5458}.book-content hr{margin:48px 0;border:0;border-top:1px solid rgba(52,66,74,.12)}@media(max-width:900px){.background-figure{--background-figure-opacity: .2;right:-72px;width:min(70vw,460px)}}@media(max-width:700px){.background-figure{--background-figure-opacity: .2;right:0;bottom:0;width:min(70vw,400px)}}.contact-grid{grid-template-columns:1fr}.contact-card{grid-template-columns:44px minmax(0,1fr);gap:14px;padding:18px 16px}.contact-card-icon{width:44px;height:44px}.contact-card-icon img{width:24px;height:24px}.contact-card-icon .mail-icon{width:28px;height:28px}@media(max-width:700px){.floating-nav{display:none}.intro{margin-bottom:48px}.intro p{font-size:16px;line-height:1.8}.worldview-gallery{width:calc(100% - 24px);padding:8px 0 40px}.worldview-card+.worldview-card{margin-top:18px}.worldview-pair{grid-template-columns:1fr;gap:18px;margin-top:18px}.content-section{padding:56px 0}.about-profile-grid{grid-template-columns:1fr;gap:18px}.about-profile-avatar{width:88px}.about-profile-body{gap:20px;max-width:none;padding-top:0}.content-section .about-profile-name{font-size:29px}.about-profile-links{margin-top:8px}.about-profile-offerings{grid-template-columns:1fr;gap:6px}.page-main-with-nav{padding-top:72px}.book-entry{grid-template-columns:1fr;gap:24px}.book-entry-copy{padding:0;gap:18px}.book-meta div{grid-template-columns:1fr;gap:4px}.book-content h2{margin-top:44px;font-size:24px}.book-content p:has(>img:only-child){margin:32px 0}.book-content img{max-width:min(100%,var(--book-image-max-width, 620px));max-height:min(68vh,620px)}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.portfolio-sections{margin-top:24px}.portfolio-section+.portfolio-section{margin-top:36px}.portfolio-divider{margin:36px 0}}
