:root{--coral-50:#fef3f1;--coral-100:#fde4e0;--coral-200:#fac9c2;--coral-300:#f7b0a7;--coral-400:#f4988e;--coral-500:#e77b70;--coral-600:#cc5f55;--coral-700:#a84840;--coral-800:#7d3530;--coral-900:#52231f;--blossom-50:#fdfbec;--blossom-100:#faf5d3;--blossom-200:#f6ecb5;--blossom-300:#f2e29a;--blossom-400:#e6d276;--blossom-500:#cdb752;--blossom-600:#a08c33;--blossom-700:#6f6122;--petal-0:#fff;--petal-50:#fbfaf8;--petal-100:#f6f4f2;--petal-200:#ece8e4;--petal-300:#ddd6d0;--petal-400:#bdb3ac;--petal-500:#968b84;--petal-600:#6f6560;--petal-700:#4e4541;--petal-800:#362f2c;--petal-900:#231e1c;--bleed:#f4d9cd;--color-bg-page:var(--petal-50);--color-bg-surface:var(--petal-0);--color-bg-subtle:var(--petal-100);--color-bg-brand:var(--coral-400);--color-bg-brand-soft:var(--coral-100);--color-bg-highlight:var(--blossom-300);--color-text-primary:var(--petal-800);--color-text-secondary:var(--petal-600);--color-text-on-brand:var(--coral-900);--color-action:var(--coral-700);--color-action-hover:var(--coral-800);--color-text-on-action:var(--petal-0);--color-border:var(--petal-200);--color-border-strong:var(--petal-400);--color-focus:var(--blossom-400);--color-success:#4f7a4a;--color-success-bg:#e6efe0;--color-warning:var(--blossom-700);--color-warning-bg:var(--blossom-100);--color-error:#b3362c;--color-error-bg:#fbe3e0;--color-info:#4a6a86;--color-info-bg:#e4ecf3;--font-display:"Zen Maru Gothic", sans-serif;--font-body:"Figtree", sans-serif;--font-serif:"Shippori Mincho", serif;--text-display:56px;--text-h1:44px;--text-h2:34px;--text-h3:26px;--text-h4:21px;--text-lg:18px;--text-md:16px;--text-sm:14px;--text-xs:12px;--leading-heading:1.2;--leading-body:1.6;--tracking-heading:-.01em;--tracking-body:0;--measure:68ch}:lang(ja){--font-display:"Zen Maru Gothic", "Noto Sans JP", sans-serif;--font-body:"Figtree", "Noto Sans JP", sans-serif;--font-serif:"Shippori Mincho", serif;--leading-heading:1.4;--leading-body:1.85;--tracking-heading:.02em;--tracking-body:.04em;--measure:36em}:lang(zh-Hant),:lang(zh-TW){--font-display:"Huninn", "Noto Sans TC", sans-serif;--font-body:"Figtree", "Noto Sans TC", sans-serif;--font-serif:"Noto Serif TC", serif;--leading-heading:1.4;--leading-body:1.85;--tracking-heading:.03em;--tracking-body:.05em;--measure:34em}:root{--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--radius-xs:4px;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-pill:999px;--radius-petal:50% 50% 50% 50% / 60% 60% 40% 40%;--control-sm:32px;--control-md:44px;--control-lg:52px;--container:1200px;--shadow-sm:0 1px 2px #52231f0f;--shadow-md:0 1px 2px #52231f0f, 0 12px 28px -14px #a8484047;--shadow-lg:0 2px 6px #52231f14, 0 24px 48px -18px #a8484057;--focus-ring:0 0 0 2px var(--petal-0), 0 0 0 5px var(--color-focus);--feather:0 0 6px 2px currentColor;--ease-soft:cubic-bezier(.3,.7,.2,1)}html{font-family:var(--font-body);color:var(--color-text-primary);background:var(--color-bg-page);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}body{line-height:var(--leading-body);letter-spacing:var(--tracking-body);margin:0}:lang(ja),:lang(zh-Hant),:lang(zh-TW){font-synthesis:none;line-break:strict;text-spacing-trim:trim-start;text-autospace:normal;hanging-punctuation:allow-end}:lang(ja){word-break:auto-phrase}:lang(ja) em,:lang(zh-Hant) em,:lang(zh-TW) em{font-style:normal;text-emphasis:dot}:lang(zh-Hant) em,:lang(zh-TW) em{text-emphasis-position:under}a{color:var(--color-action);text-underline-offset:.2em}a:hover{color:var(--color-action-hover)}:root{--font-mono:"IBM Plex Mono", ui-monospace, monospace;--space-0-5:2px;--space-1-5:6px;--space-2-5:10px;--space-3-5:14px;--space-7:28px;--space-14:56px;--space-18:72px;--space-24:96px;--space-28:112px;--text-h1-mobile:32px;--text-display-mobile:36px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}[lang=en]{letter-spacing:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.site-nav[data-astro-cid-rutobish]{z-index:40;background:var(--color-bg-page);border-bottom:1px solid var(--color-border);position:sticky;top:0}.bar[data-astro-cid-rutobish]{justify-content:space-between;align-items:center;gap:var(--space-6);max-width:var(--container);height:72px;padding:0 var(--space-10);margin:0 auto;display:flex}.brand[data-astro-cid-rutobish]{font-family:var(--font-display);letter-spacing:0;color:var(--color-text-primary);font-size:20px;font-weight:700;text-decoration:none}.right[data-astro-cid-rutobish]{align-items:center;gap:var(--space-7);display:flex}.links[data-astro-cid-rutobish]{align-items:center;gap:var(--space-8);display:flex}.links[data-astro-cid-rutobish] a[data-astro-cid-rutobish]{padding:var(--space-2) 0;font-size:var(--text-sm);letter-spacing:.02em;color:var(--color-text-primary);font-weight:500;text-decoration:none}.links[data-astro-cid-rutobish] a[data-astro-cid-rutobish]:hover{color:var(--color-action)}.lang[data-astro-cid-rutobish]{border-radius:var(--radius-pill);background:var(--color-bg-surface);box-shadow:inset 0 0 0 1px var(--color-border-strong);align-items:center;padding:3px;display:flex}.lang[data-astro-cid-rutobish] a[data-astro-cid-rutobish],.lang[data-astro-cid-rutobish] .current[data-astro-cid-rutobish]{min-width:44px;height:30px;padding:0 var(--space-3);border-radius:var(--radius-pill);letter-spacing:.02em;color:var(--color-text-primary);place-items:center;font-size:13px;font-weight:500;text-decoration:none;display:grid}.lang[data-astro-cid-rutobish] a[data-astro-cid-rutobish]:hover{background:var(--color-bg-subtle)}.lang[data-astro-cid-rutobish] .current[data-astro-cid-rutobish]{background:var(--color-bg-highlight);font-weight:700}.toggle[data-astro-cid-rutobish]{background:var(--color-bg-surface);width:44px;height:44px;box-shadow:inset 0 0 0 1px var(--color-border-strong);cursor:pointer;border:0;border-radius:50%;padding:0;display:none;position:relative}.line[data-astro-cid-rutobish]{background:var(--color-text-primary);width:18px;height:1.5px;transition:transform .25s var(--ease-soft), top .25s var(--ease-soft);border-radius:2px;position:absolute;top:17px;left:13px}.line[data-astro-cid-rutobish]+.line[data-astro-cid-rutobish]{top:25px}[data-astro-cid-rutobish][data-menu-open] .toggle[data-astro-cid-rutobish]{background:var(--color-bg-subtle)}[data-astro-cid-rutobish][data-menu-open] .line[data-astro-cid-rutobish]{top:21px;transform:rotate(45deg)}[data-astro-cid-rutobish][data-menu-open] .line[data-astro-cid-rutobish]+.line[data-astro-cid-rutobish]{transform:rotate(-45deg)}a[data-astro-cid-rutobish]:focus-visible,.toggle[data-astro-cid-rutobish]:focus-visible{box-shadow:var(--focus-ring);outline:none}.menu[data-astro-cid-rutobish]{display:none}@media (width<=680px){.bar[data-astro-cid-rutobish]{height:64px;padding:0 var(--space-5)}.right[data-astro-cid-rutobish]{gap:var(--space-2-5)}.links[data-astro-cid-rutobish]{display:none}.lang[data-astro-cid-rutobish] a[data-astro-cid-rutobish],.lang[data-astro-cid-rutobish] .current[data-astro-cid-rutobish]{height:38px}.toggle[data-astro-cid-rutobish]{display:block}[data-astro-cid-rutobish][data-menu-open] .menu[data-astro-cid-rutobish]{gap:var(--space-8);height:calc(100dvh - 64px);padding:var(--space-2) var(--space-5) var(--space-8);background:var(--color-bg-page);border-top:1px solid var(--color-border);flex-direction:column;display:flex;position:absolute;top:100%;left:0;right:0;overflow:auto}}.menu[data-astro-cid-rutobish] nav[data-astro-cid-rutobish]{flex-direction:column;display:flex}.menu[data-astro-cid-rutobish] nav[data-astro-cid-rutobish] a[data-astro-cid-rutobish]{align-items:center;gap:var(--space-4);min-height:var(--space-18);border-bottom:1px solid var(--color-border);color:var(--color-text-primary);text-decoration:none;display:flex}.menu-num[data-astro-cid-rutobish]{font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:0;color:var(--color-action)}.menu-label[data-astro-cid-rutobish]{font-family:var(--font-display);letter-spacing:var(--tracking-heading);flex:1;font-size:30px;font-weight:700;line-height:1.2}.menu-arrow[data-astro-cid-rutobish]{color:var(--color-action);font-size:20px}.connect[data-astro-cid-rutobish]{gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-md);background:var(--color-bg-brand-soft);color:var(--color-text-on-brand);flex-direction:column;margin-top:auto;display:flex}.connect[data-astro-cid-rutobish] span[data-astro-cid-rutobish]{font-size:var(--text-sm);font-weight:600}.connect[data-astro-cid-rutobish] div[data-astro-cid-rutobish]{gap:var(--space-6);display:flex}.connect[data-astro-cid-rutobish] a[data-astro-cid-rutobish]{min-height:44px;color:var(--color-text-on-brand);align-items:center;font-weight:600;display:inline-flex}.petals[data-astro-cid-xgrsmrjy]{pointer-events:none;position:absolute}.onBrand[data-astro-cid-xgrsmrjy]{--petal-fill:var(--petal-50);--petal-bleed:var(--bleed)}.onSoft[data-astro-cid-xgrsmrjy]{--petal-fill:var(--coral-300);--petal-bleed:var(--coral-200)}.mobile[data-astro-cid-xgrsmrjy]{display:none}@media (width<=680px){.desktop[data-astro-cid-xgrsmrjy]{display:none}.mobile[data-astro-cid-xgrsmrjy]{display:block}}.petal[data-astro-cid-xgrsmrjy],.drift[data-astro-cid-xgrsmrjy],.shape[data-astro-cid-xgrsmrjy],.blossom[data-astro-cid-xgrsmrjy],.core[data-astro-cid-xgrsmrjy],.blossom-petal[data-astro-cid-xgrsmrjy]{position:absolute}.drift[data-astro-cid-xgrsmrjy],.shape[data-astro-cid-xgrsmrjy]{inset:0}.shape[data-astro-cid-xgrsmrjy]{background:var(--petal-fill);border-radius:50%/58% 58% 42% 42%}.animate[data-astro-cid-xgrsmrjy] .drift[data-astro-cid-xgrsmrjy]{animation-name:gv-drift;animation-timing-function:ease-in-out;animation-iteration-count:infinite;animation-direction:alternate}@keyframes gv-drift{0%{transform:translate(0)rotate(0)}to{transform:translate(5px,10px)rotate(6deg)}}@media (prefers-reduced-motion:reduce){.animate[data-astro-cid-xgrsmrjy] .drift[data-astro-cid-xgrsmrjy]{animation:none}}.blossom[data-astro-cid-xgrsmrjy]{filter:blur(1.45px) drop-shadow(0 0 6px var(--blossom-300))}.core[data-astro-cid-xgrsmrjy]{background:var(--blossom-300);border-radius:50%;width:44%;height:44%;top:28%;left:28%}.blossom-petal[data-astro-cid-xgrsmrjy]{background:var(--blossom-300);transform-origin:50% 100%;border-radius:50% 50% 46% 46%/60% 60% 40% 40%;bottom:50%;left:50%}.container[data-astro-cid-ap6mcnip]{max-width:var(--container);padding:0 var(--space-10);margin:0 auto}@media (width<=680px){.container[data-astro-cid-ap6mcnip]{padding:0 var(--space-5)}}.tags[data-astro-cid-xbinfh25]{gap:var(--space-1-5);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}li[data-astro-cid-xbinfh25]{border-radius:var(--radius-pill);background:var(--blossom-100);color:var(--blossom-700);font-family:var(--font-mono);line-height:1.5}.sm[data-astro-cid-xbinfh25] li[data-astro-cid-xbinfh25]{padding:var(--space-1) var(--space-2-5);font-size:var(--text-xs)}.md[data-astro-cid-xbinfh25] li[data-astro-cid-xbinfh25]{padding:var(--space-1-5) var(--space-3);font-size:var(--text-sm)}.contact[data-astro-cid-vekgkm42]{border-top:1px solid var(--color-border)}.grid[data-astro-cid-vekgkm42]{gap:var(--space-10) var(--space-16);padding:var(--space-28) 0;grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;display:grid}.intro[data-astro-cid-vekgkm42]{gap:var(--space-5);padding-top:var(--space-6);flex-direction:column;display:flex}h2[data-astro-cid-vekgkm42]{font-family:var(--font-display);font-weight:700;font-size:var(--text-h1);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);margin:0}.intro[data-astro-cid-vekgkm42] p[data-astro-cid-vekgkm42]{max-width:30em;font-size:var(--text-md);color:var(--color-text-secondary);text-wrap:pretty;margin:0}.links[data-astro-cid-vekgkm42]{gap:var(--space-6);display:flex}.links[data-astro-cid-vekgkm42] a[data-astro-cid-vekgkm42]{text-underline-offset:.25em;align-items:center;min-height:44px;font-weight:600;text-decoration:underline;display:inline-flex}.card[data-astro-cid-vekgkm42]{padding:var(--space-8);border-radius:var(--radius-lg);background:var(--color-bg-surface);box-shadow:inset 0 0 0 1px var(--color-border), var(--shadow-sm)}.form[data-astro-cid-vekgkm42]{gap:var(--space-5);flex-direction:column;display:flex}.form[data-astro-cid-vekgkm42][hidden],.alert[data-astro-cid-vekgkm42][hidden],.success[data-astro-cid-vekgkm42][hidden]{display:none}.alert[data-astro-cid-vekgkm42]{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);background:var(--color-error-bg);color:var(--color-error);font-size:var(--text-sm);font-weight:600;line-height:1.5;display:flex}.badge[data-astro-cid-vekgkm42]{background:var(--color-error);width:20px;height:20px;color:var(--petal-0);font-size:var(--text-xs);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.field[data-astro-cid-vekgkm42]{gap:var(--space-2);flex-direction:column;display:flex}label[data-astro-cid-vekgkm42]{font-size:var(--text-sm);font-weight:600}input[data-astro-cid-vekgkm42],textarea[data-astro-cid-vekgkm42]{border-radius:var(--radius-sm);border:1.5px solid var(--color-border-strong);background:var(--color-bg-page);width:100%;font-family:var(--font-body);font-size:var(--text-md);color:var(--color-text-primary)}input[data-astro-cid-vekgkm42]{height:var(--control-md);padding:0 var(--space-3-5)}textarea[data-astro-cid-vekgkm42]{min-height:168px;padding:var(--space-3) var(--space-3-5);line-height:var(--leading-body);resize:vertical}input[data-astro-cid-vekgkm42]:focus-visible,textarea[data-astro-cid-vekgkm42]:focus-visible{border-color:var(--color-action);box-shadow:var(--focus-ring);outline:none}[data-astro-cid-vekgkm42][aria-invalid=true]{border-color:var(--color-error);background:var(--color-error-bg)}.field-error[data-astro-cid-vekgkm42]{font-size:var(--text-sm);color:var(--color-error);line-height:1.5}.honeypot[data-astro-cid-vekgkm42]{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.send[data-astro-cid-vekgkm42]{height:var(--control-lg);min-width:140px;padding:0 var(--space-8);border-radius:var(--radius-pill);background:var(--color-action);color:var(--color-text-on-action);font-family:var(--font-body);font-size:var(--text-md);letter-spacing:.04em;cursor:pointer;transition:background .2s var(--ease-soft);border:0;align-self:flex-start;font-weight:600}.send[data-astro-cid-vekgkm42]:hover,.send[data-astro-cid-vekgkm42]:disabled{background:var(--color-action-hover)}.send[data-astro-cid-vekgkm42]:disabled{cursor:progress}.send[data-astro-cid-vekgkm42]:focus-visible,.again[data-astro-cid-vekgkm42]:focus-visible,.links[data-astro-cid-vekgkm42] a[data-astro-cid-vekgkm42]:focus-visible{box-shadow:var(--focus-ring);outline:none}.success[data-astro-cid-vekgkm42]{gap:var(--space-4);padding:var(--space-8) var(--space-6);border-radius:var(--radius-md);background:var(--color-success-bg);outline:none;flex-direction:column;display:flex}.check[data-astro-cid-vekgkm42]{background:var(--color-success);width:44px;height:44px;color:var(--petal-0);border-radius:50%;place-items:center;font-size:20px;font-weight:700;display:grid}.success[data-astro-cid-vekgkm42] h3[data-astro-cid-vekgkm42]{font-family:var(--font-display);font-weight:700;font-size:var(--text-h4);line-height:var(--leading-heading);color:var(--color-success);margin:0}.success[data-astro-cid-vekgkm42] p[data-astro-cid-vekgkm42]{font-size:var(--text-md);color:var(--color-text-primary);text-wrap:pretty;margin:0}.again[data-astro-cid-vekgkm42]{min-height:44px;color:var(--color-action);font-family:var(--font-body);font-size:var(--text-md);text-underline-offset:.25em;cursor:pointer;background:0 0;border:0;align-self:flex-start;padding:0;font-weight:600;text-decoration:underline}.noscript[data-astro-cid-vekgkm42]{color:var(--color-text-secondary);margin:0}@media (width<=680px){.grid[data-astro-cid-vekgkm42]{padding:var(--space-16) 0;grid-template-columns:minmax(0,1fr)}.intro[data-astro-cid-vekgkm42]{padding-top:0}h2[data-astro-cid-vekgkm42]{font-size:var(--text-h1-mobile)}.card[data-astro-cid-vekgkm42]{padding:var(--space-5)}input[data-astro-cid-vekgkm42]{height:var(--space-12)}.send[data-astro-cid-vekgkm42]{align-self:stretch}}.footer[data-astro-cid-nns7i3if]{background:var(--color-bg-brand);color:var(--color-text-on-brand);position:relative;overflow:hidden}.inner[data-astro-cid-nns7i3if]{justify-content:flex-end;gap:var(--space-4);max-width:var(--container);min-height:280px;padding:var(--space-14) var(--space-10) var(--space-12);flex-direction:column;margin:0 auto;display:flex;position:relative}.name[data-astro-cid-nns7i3if]{font-family:var(--font-display);letter-spacing:0;font-size:28px;font-weight:700;line-height:1.2}.links[data-astro-cid-nns7i3if]{gap:var(--space-6);flex-wrap:wrap;display:flex}a[data-astro-cid-nns7i3if]{min-height:44px;color:var(--color-text-on-brand);text-underline-offset:.25em;align-items:center;font-weight:600;text-decoration:underline;display:inline-flex}a[data-astro-cid-nns7i3if]:hover{color:var(--color-text-on-brand);text-decoration-thickness:2px}a[data-astro-cid-nns7i3if]:focus-visible{box-shadow:var(--focus-ring);outline:none}.copy[data-astro-cid-nns7i3if]{font-size:var(--text-sm)}@media (width<=680px){.inner[data-astro-cid-nns7i3if]{min-height:240px;padding:var(--space-10) var(--space-5) var(--space-8)}}
