:root{color-scheme:light;--ink:#171717;--muted:#66665f;--ivory:#f7f5ee;--border:#e4e1d8;--aqua:#65d4cb;--aqua-soft:#e3f5f1;--pink:#f7e7ed;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;color:var(--ink);background:#fff;font-synthesis:none}*{box-sizing:border-box}html{scroll-padding-top:90px}body{margin:0;padding-top:72px}a{color:inherit;text-decoration:none}button,summary{font:inherit}button{cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #267770;outline-offset:4px}img{display:block;max-width:100%}p{line-height:1.85}h1,h2,p,figure{margin:0}h1,h2{overflow-wrap:anywhere}button{border:0}main{min-height:55vh}.skip-link{position:fixed;z-index:100;top:8px;left:10px;background:white;padding:12px;transform:translateY(-160%)}.skip-link:focus{transform:none}.site-header{position:fixed;inset:0 0 auto;z-index:40;background:#f7f5eef5;border-bottom:1px solid var(--border);box-shadow:0 12px 30px #11111108;backdrop-filter:blur(16px)}.header-inner{max-width:1200px;margin:auto;height:72px;padding:0 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;flex-direction:column;flex-shrink:0}.brand-name{display:block;font:600 26px/1.05 Georgia,"Times New Roman",serif;letter-spacing:.04em}.brand-name span{color:#73736b}.brand-sub{display:block;margin-top:5px;font-size:10px;letter-spacing:.3em;color:var(--muted)}.desktop-nav{display:none;align-items:center;gap:12px;font-size:13px}.desktop-nav>a{white-space:nowrap}.desktop-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:6px;text-decoration-color:var(--aqua)}.consultation,.booking{min-height:48px;display:inline-flex;gap:8px;align-items:center;justify-content:center;border-radius:28px;font-weight:700;white-space:nowrap;padding:12px 20px;line-height:1.4}.consultation{background:var(--aqua);color:var(--ink)}.booking{background:var(--ink);color:white}.mobile-menu>summary{width:44px;height:44px;list-style:none;display:flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:50%;background:#fff;font-size:25px;cursor:pointer}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu[open]>summary{background:var(--aqua-soft)}.mobile-menu nav{position:absolute;top:72px;left:0;right:0;background:var(--ivory);padding:20px 24px 28px;max-height:calc(100dvh - 72px);overflow-y:auto;box-shadow:0 16px 24px #1112}.mobile-menu nav>a{display:block;padding:12px 16px;min-height:48px;background:white;margin-top:8px;border:1px solid var(--border);border-radius:14px;font-weight:600}.mobile-menu a[aria-current=page]{background:var(--aqua-soft)}.menu-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:20px;font-size:13px}.menu-actions .booking,.menu-actions .consultation{padding:12px 8px}.eyebrow{font-size:11px;font-weight:600;letter-spacing:.27em;color:var(--muted)}.wide-container{max-width:1152px;padding-left:24px;padding-right:24px;margin:auto}.journal-hero{border-bottom:1px solid var(--border);background:linear-gradient(125deg,var(--ivory),var(--ivory) 60%,#f7e7ed88)}.journal-hero .wide-container{padding-top:64px;padding-bottom:64px}.journal-hero h1{margin-top:16px;font:600 clamp(40px,6vw,64px)/1.1 Georgia,serif;letter-spacing:.03em}.journal-subtitle{margin-top:16px;font-size:18px;font-weight:700}.journal-description{margin-top:20px;max-width:620px;color:var(--muted);font-size:15px}.journal-list{padding-top:40px;padding-bottom:64px}.category-nav{display:flex;gap:8px;flex-wrap:wrap}.category-nav a{display:inline-flex;align-items:center;min-height:44px;padding:8px 20px;border:1px solid var(--border);border-radius:50px;font-size:14px;background:white}.category-nav a[aria-current=page]{background:var(--aqua);border-color:var(--aqua)}.category-nav a:hover{background:var(--aqua-soft)}.post-grid{margin-top:32px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.post-card{overflow:hidden;border:1px solid var(--border);border-radius:24px;background:#fff;box-shadow:0 4px 14px #11111105}.post-card>a{display:block;height:100%}.post-card>a:hover h2{text-decoration:underline;text-underline-offset:4px}.card-cover{aspect-ratio:4/3;overflow:hidden;background:linear-gradient(140deg,var(--aqua-soft),var(--ivory),var(--pink));display:flex;align-items:center;justify-content:center}.card-cover>img{width:100%;height:100%;object-fit:cover}.card-cover>span{font:italic 30px Georgia,serif;color:#63695e}.card-content{padding:24px}.post-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.category{background:var(--aqua-soft);padding:6px 12px;border-radius:30px;color:var(--ink)}.card-content h2{font-size:19px;line-height:1.7;margin-top:17px}.excerpt{font-size:14px;color:var(--muted);margin-top:12px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;overflow-wrap:anywhere}.read-more{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;margin-top:24px;color:#267770}.empty-state{border:1px solid var(--border);border-radius:28px;padding:64px 24px;text-align:center;margin-top:32px}.empty-icon{display:flex;margin:auto;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:var(--pink);font-size:30px;color:#7b6470}.empty-state h2{font-size:20px;line-height:1.8;margin-top:24px}.empty-state p{max-width:470px;margin:16px auto 0;font-size:14px;color:var(--muted)}.outline-link{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border:1px solid var(--border);border-radius:30px;padding:10px 24px;font-size:14px;margin-top:28px}.outline-link:hover{background:var(--aqua-soft)}.article-container{max-width:768px;margin:auto;padding:40px 24px 60px}.back-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px;color:var(--muted)}.article-header{margin-top:28px;padding-bottom:32px;border-bottom:1px solid var(--border)}.article-header .post-meta{font-size:14px}.article-header .category{min-height:40px;display:inline-flex;align-items:center;padding:8px 16px}.article-header h1{margin-top:20px;font-size:clamp(26px,5vw,38px);line-height:1.65;letter-spacing:.015em}.article-author{font-size:14px;margin-top:20px;color:var(--muted);overflow-wrap:anywhere}.article-cover{margin-top:32px;border:1px solid var(--border);overflow:hidden;border-radius:20px;background:white}.article-cover img{width:100%;height:auto;object-fit:contain}.article-body{padding:36px 0;color:#30302d;font-size:17px;overflow-wrap:anywhere}.article-body p{white-space:pre-wrap;line-height:2}.article-body p+p{margin-top:24px}.article-bottom{border-top:1px solid var(--border);padding-top:8px}.error-state{padding-top:70px;padding-bottom:90px}.error-state h1{font-size:28px;line-height:1.6;margin-top:16px}.error-state>p:not(.eyebrow){margin-top:20px;color:var(--muted)}.site-footer{border-top:1px solid var(--border);padding:56px 24px 145px;background:white}.footer-grid{max-width:1104px;margin:auto;display:grid;grid-template-columns:1fr .8fr 1.25fr;gap:48px;font-size:14px;color:#54544e}.footer-grid p:not(.eyebrow){margin-top:12px;line-height:1.9}.footer-brand>p{max-width:310px;margin-top:24px!important}.footer-grid nav{display:flex;flex-direction:column;gap:2px;margin-top:16px}.footer-grid a{display:inline-flex;min-height:36px;align-items:center}.footer-grid a:hover{text-decoration:underline}.footer-grid .brand-name{color:var(--ink)}.copyright{max-width:1104px;margin:42px auto 0;padding-top:24px;border-top:1px solid var(--border);font-size:11px;line-height:1.8;text-align:center;color:var(--muted)}.copyright>a{display:block;width:fit-content;margin:12px auto 0;padding:10px;text-decoration:underline;text-underline-offset:3px}.cta-dock{position:fixed;z-index:35;right:24px;bottom:24px;display:flex;gap:12px}.cta-dock .consultation,.cta-dock .booking{min-height:58px;box-shadow:0 4px 18px #1112}.floating-line{position:fixed;z-index:35;right:24px;bottom:102px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:4px;min-height:72px;width:72px;border:1px solid #06c75533;border-radius:26px;background:white;box-shadow:0 6px 24px #1111;font-size:11px;font-weight:700}.floating-line>span{display:flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:50%;background:#06c755;color:white;font-size:23px}.floating-line:hover{box-shadow:0 8px 26px #1113}@media(min-width:1280px){.desktop-nav{display:flex}.mobile-menu{display:none}.desktop-nav .consultation,.desktop-nav .booking{font-size:12px;padding:10px 12px;min-height:40px}}@media(max-width:1023px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{gap:30px;grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-brand>p{max-width:500px}}@media(max-width:639px){body{padding-top:68px}.header-inner{height:68px;padding:0 20px}.brand-name{font-size:23px}.brand-sub{font-size:9px}.mobile-menu nav{top:68px;max-height:calc(100dvh - 68px)}.wide-container{padding-left:20px;padding-right:20px}.journal-hero .wide-container{padding-top:44px;padding-bottom:44px}.journal-description{font-size:14px}.journal-description br{display:none}.journal-list{padding-top:28px;padding-bottom:48px}.category-nav{gap:7px}.category-nav a{font-size:13px;padding:8px 15px}.post-grid{grid-template-columns:1fr;gap:24px}.card-content{padding:22px}.empty-state{padding:48px 20px}.empty-state h2{font-size:18px}.article-container{padding:26px 20px 46px}.article-body{font-size:16px;padding:30px 0}.article-header h1{font-size:27px}.footer-grid{grid-template-columns:1fr;gap:34px}.footer-brand{grid-column:auto}.site-footer{padding:44px 20px calc(120px + env(safe-area-inset-bottom))}.cta-dock{inset:auto 0 0;gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom));background:#f7f5eef5;border-top:1px solid var(--border);backdrop-filter:blur(12px)}.cta-dock .consultation,.cta-dock .booking{min-width:0;flex:1;min-height:54px;padding:12px 6px;font-size:13px;gap:5px;box-shadow:0 2px 7px #1111}.floating-line{right:12px;bottom:calc(88px + env(safe-area-inset-bottom));min-height:64px;width:64px;font-size:10px}.floating-line>span{width:32px;height:32px}.menu-actions{font-size:12px}}@media(prefers-reduced-motion:no-preference){a,button{transition:background-color .15s,box-shadow .15s}}@media print{.site-header,.cta-dock,.floating-line,.site-footer,.back-link,.article-bottom{display:none}body{padding:0}.article-container{max-width:100%;padding:0}.article-cover{max-width:400px}a{color:#000}}
body :is(.brand-name,.journal-hero h1,.card-cover>span){font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif}
