:root{--pp-100: #f3e8ff;--pp-200: #dec5fa;--pp-300: #b89def;--pp-500: #7c5dcf;--pp-700: #3d2778;--pp-800: #2d1b4e;--pp-900: #1a0f3d;--gold: #d4a017;--gold-soft: #f0c75e;--gold-pale: #fde9b6;--pink-50: #fff5f8;--pink-100: #ffe1ec;--pink-200: #ffc4d8;--pink-300: #ffa3c1;--pink-400: #f88aa8;--pink-500: #e76590;--bg-page: #fff8fc;--paper: #fdf7ff;--text-dark: #3d2778;--text-mid: #5d4d80;--text-light: #9b8db5}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:Klee One,"Noto Serif JP",serif;background:var(--bg-page);color:var(--text-dark);font-feature-settings:"palt";-webkit-font-smoothing:antialiased;line-height:1.95}.container{max-width:760px;margin:0 auto;padding:0 24px}.site-header{padding:18px 24px;background:#fff8fcd9;backdrop-filter:blur(8px);position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(220,197,250,.3)}.header-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none}.brand-moon{font-size:24px}.brand-jp{display:block;font-family:Shippori Mincho,serif;font-weight:700;font-size:16px;color:var(--pp-800);letter-spacing:.18em;line-height:1.1}.brand-en{display:block;font-family:Sacramento,cursive;font-size:14px;color:var(--pink-500);margin-top:2px;line-height:1}.site-nav{display:flex;gap:24px;align-items:center}.site-nav a{color:var(--pp-700);text-decoration:none;font-family:Shippori Mincho,serif;font-size:13px;font-weight:600;letter-spacing:.1em}.site-nav a:hover{opacity:.7}.nav-fav{background:linear-gradient(135deg,#fff,#ffe1ec);color:var(--pink-500)!important;padding:7px 16px!important;border-radius:999px!important;font-size:12px!important;font-weight:700!important}.star-mark{color:var(--gold)}@media(max-width:720px){.site-nav a:not(.nav-fav){display:none}.brand-jp{font-size:14px}.brand-en{font-size:12px}}.article-hero{padding:56px 0 32px;background:radial-gradient(ellipse at top,rgba(255,230,240,.6) 0%,transparent 60%),linear-gradient(180deg,#fff8fc,#fdf7ff)}.breadcrumb{font-size:12px;color:var(--text-mid);margin:0 0 14px;letter-spacing:.05em}.breadcrumb a{color:var(--pink-500);text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.article-title{font-family:Shippori Mincho,serif;font-size:clamp(24px,4.5vw,34px);font-weight:800;line-height:1.5;letter-spacing:.02em;margin:0 0 18px;color:var(--pp-900)}.article-meta{font-size:12px;color:var(--text-light);margin:0;letter-spacing:.05em;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.article-tags{display:inline-flex;gap:8px;flex-wrap:wrap}.tag{background:var(--pink-50);color:var(--pink-500);padding:2px 10px;border-radius:999px;font-size:11px}.article-body{padding:40px 24px 32px}.article-body h2{font-family:Shippori Mincho,serif;font-size:clamp(20px,3.4vw,26px);font-weight:700;color:var(--pp-900);margin:56px 0 20px;padding-bottom:12px;border-bottom:2px solid var(--pink-200);line-height:1.5}.article-body h3{font-family:Shippori Mincho,serif;font-size:clamp(17px,2.7vw,20px);font-weight:700;color:var(--pp-800);margin:36px 0 14px;padding-left:14px;border-left:4px solid var(--pink-400);line-height:1.5}.article-body p{font-size:15px;line-height:2;margin:0 0 22px;color:var(--text-dark)}.article-body a{color:var(--pink-500);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px}.article-body a:hover{color:var(--pp-700)}.article-body strong{color:var(--pp-700);font-weight:700}.article-body ul,.article-body ol{margin:0 0 22px;padding-left:28px}.article-body li{font-size:15px;line-height:2;margin:4px 0}.article-body blockquote{margin:24px 0;padding:20px 24px;background:linear-gradient(135deg,var(--pink-50) 0%,#fff 100%);border-left:4px solid var(--pink-400);border-radius:0 12px 12px 0}.article-body blockquote p{margin:0;font-size:14px;color:var(--text-mid)}.article-body blockquote strong{color:var(--pink-500)}.article-body code{background:var(--pink-50);padding:2px 8px;border-radius:4px;font-size:.9em;color:var(--pp-700)}.article-body pre{background:var(--pp-900);color:#fde9b6;padding:18px 22px;border-radius:12px;overflow-x:auto;margin:22px 0}.article-body pre code{background:transparent;color:inherit;padding:0}.article-body table{width:100%;border-collapse:collapse;margin:22px 0;font-size:14px;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 14px -4px #baa1e84d}.article-body th,.article-body td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--pink-100)}.article-body th{background:var(--pink-50);color:var(--pp-700);font-weight:700}.article-body hr{border:none;border-top:1px dashed var(--pp-200);margin:40px 0}.article-foot{padding:0 24px 80px}.cta-box{margin:56px 0 32px;padding:32px 28px;background:linear-gradient(135deg,var(--pink-50) 0%,#fff 60%,var(--pp-50, #fdf7ff) 100%),radial-gradient(ellipse at top right,rgba(255,215,0,.15) 0%,transparent 60%);border:1.5px dashed var(--pink-300);border-radius:20px;text-align:center}.cta-eyebrow{font-family:Sacramento,cursive;font-size:22px;color:var(--pink-500);margin:0 0 6px}.cta-title{font-family:Shippori Mincho,serif;font-size:19px;font-weight:700;color:var(--pp-900);margin:0 0 8px;letter-spacing:.04em}.cta-desc{font-size:13px;color:var(--text-mid);margin:0 0 20px}.cta-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 28px;background:linear-gradient(135deg,var(--pink-400) 0%,var(--pp-500) 100%);color:#fff;text-decoration:none;border-radius:999px;font-family:Shippori Mincho,serif;font-weight:700;font-size:14px;box-shadow:0 8px 18px -4px #f88aa880;transition:all .3s;letter-spacing:.05em}.cta-btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px -4px #f88aa8b3}.cta-arrow{font-family:Cormorant Garamond,serif;font-style:italic;font-size:18px}.back-link{text-align:center;margin:24px 0 0}.back-link a{color:var(--pp-700);font-size:13px;text-decoration:none;font-family:Shippori Mincho,serif}.back-link a:hover{color:var(--pink-500)}.site-footer{background:var(--pp-800);color:var(--pp-100);padding:32px 24px;text-align:center;font-size:12px;line-height:1.9}.site-footer p{margin:4px 0}.site-footer a{color:var(--pink-200);text-decoration:none}.site-footer a:hover{color:var(--gold-soft);text-decoration:underline}
