.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}:root{--blue-900: #062e8a;--blue-800: #0a5fd8;--blue-700: #0e6df8;--blue-600: #2563eb;--blue-500: #3b82f6;--blue-300: #93c5fd;--blue-200: #c3dbfc;--blue-100: #dbeafe;--blue-50: #eff6ff;--ink-900: #0f172a;--ink-800: #1e293b;--ink-700: #334155;--ink-500: #64748b;--ink-400: #94a3b8;--ink-300: #cbd5e1;--ink-200: #e2e8f0;--ink-100: #f1f5f9;--ink-50: #f8fafc;--white: #ffffff;--success: #059669;--warning: #d97706;--danger: #dc2626;--lp-blue-main: #2f80ed;--lp-blue-sub: #56ccf2;--lp-yellow: #f2c94c;--lp-orange: #f2994a;--lp-text-dark: #333333;--lp-text-sub: #828282;--lp-bg-light: #f5f7fa;--lp-card-border: #e0e0e0;--lp-icon-green: #27ae60;--lp-icon-blue: #2d9cdb;--font-jp: "Noto Sans JP", -apple-system, "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--font-num: "Inter", system-ui, sans-serif;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-xl: 20px;--sh-xs: 0 1px 2px rgba(15, 23, 42, .04);--sh-sm: 0 1px 3px rgba(15, 23, 42, .06), 0 1px 2px rgba(15, 23, 42, .04);--sh-md: 0 4px 12px rgba(15, 23, 42, .06), 0 2px 4px rgba(15, 23, 42, .04);--sh-lg: 0 12px 32px rgba(15, 23, 42, .08), 0 4px 8px rgba(15, 23, 42, .04);--sh-blue: 0 8px 24px rgba(37, 99, 235, .18);--bp-md: 768px;--nav-h: 72px}@media(max-width:960px){:root{--nav-h: 64px}}@media(max-width:767px){:root{--nav-h: 60px}}.post-page{background:#fff;min-height:calc(100dvh - var(--nav-h))}.post-container{max-width:720px;margin:0 auto;padding:28px 24px 48px}@media(max-width:767px){.post-container{padding:14px 18px 40px}}.post-breadcrumb{font-size:12px;color:var(--ink-400);margin-bottom:22px;letter-spacing:.01em}.post-breadcrumb ol{display:flex;flex-wrap:wrap;gap:4px;list-style:none;margin:0;padding:0}.post-breadcrumb li{display:inline-flex;align-items:center}.post-breadcrumb li+li:before{content:"›";margin:0 6px 0 0;color:var(--ink-300);font-size:13px;line-height:1}.post-breadcrumb a{color:var(--ink-500);transition:color .12s ease}.post-breadcrumb a:hover{color:var(--blue-700)}.post-breadcrumb [aria-current=page]{color:var(--ink-700);max-width:100%}@media(max-width:767px){.post-breadcrumb [aria-current=page]{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;max-width:220px}}.post-article{margin:0}.post-article--in-chat{position:relative;padding-left:22px}.post-article--in-chat:before{content:"元になった記事";display:block;font-size:10.5px;font-weight:700;letter-spacing:.14em;color:var(--ink-400);margin-bottom:14px;text-transform:uppercase}.post-article--in-chat:after{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--ink-200);border-radius:1px}@media(max-width:767px){.post-article--in-chat{padding-left:16px}.post-article--in-chat:before{font-size:10px;margin-bottom:10px}}.post-head{--accent: var(--blue-700);padding-bottom:22px;margin-bottom:32px;border-bottom:1px solid var(--ink-100);position:relative}.post-head:after{content:"";position:absolute;left:0;bottom:-1px;width:32px;height:2px;background:var(--accent);border-radius:1px}.post-cat{display:inline-flex;align-items:center;gap:6px;background:transparent;color:var(--accent);font-size:11.5px;font-weight:700;padding:0;border-radius:0;letter-spacing:.06em;margin-bottom:16px;text-transform:none}.post-cat:before{content:"";width:14px;height:1.5px;background:var(--accent);border-radius:1px}.post-title{font-size:30px;font-weight:700;color:var(--ink-900);letter-spacing:-.025em;line-height:1.4;margin:0 0 14px}@media(max-width:767px){.post-title{font-size:22px;letter-spacing:-.02em}}.post-meta{font-size:12.5px;color:var(--ink-500);margin:0;font-variant-numeric:tabular-nums;letter-spacing:.01em}.post-prose{font-size:15.5px;line-height:1.95;color:var(--ink-700);word-break:break-word}@media(max-width:767px){.post-prose{font-size:14.5px;line-height:1.85}}.post-prose :where(h2){font-size:22px;font-weight:700;color:var(--ink-900);letter-spacing:-.015em;line-height:1.45;margin:56px 0 18px;padding-bottom:12px;border-bottom:1px solid var(--ink-100);position:relative}.post-prose :where(h2):after{content:"";position:absolute;left:0;bottom:-1px;width:28px;height:2px;background:var(--accent, var(--blue-700));border-radius:1px}.post-prose :where(h3){font-size:17px;font-weight:700;color:var(--ink-900);line-height:1.55;margin:36px 0 12px;letter-spacing:-.005em}.post-prose :where(h1,h4,h5,h6){font-size:inherit;font-weight:700;line-height:inherit;margin:14px 0 6px;color:var(--ink-900)}@media(max-width:767px){.post-prose :where(h2){font-size:19px;margin-top:44px;padding-bottom:10px}.post-prose :where(h2):after{width:24px}.post-prose :where(h3){font-size:16px;margin-top:28px}}.post-prose :where(p){margin:0 0 22px}.post-prose :where(p:last-child){margin-bottom:0}.post-prose :where(a){color:var(--blue-700);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.post-prose :where(a:hover){color:var(--blue-600)}.post-prose :where(strong){font-weight:700;color:var(--ink-900);background:linear-gradient(transparent 62%,#fde04780 62%);padding:0 2px}.post-prose :where(ul){margin:0 0 22px;padding-left:0;list-style:none}.post-prose :where(ul)>li{position:relative;padding-left:1.25em;margin:10px 0}.post-prose :where(ul)>li:before{content:"";position:absolute;left:0;top:.72em;width:4px;height:4px;background:var(--ink-300);border-radius:1px}.post-prose :where(ul ul){margin:8px 0 0}.post-prose :where(ol){margin:0 0 22px;padding-left:1.6em;font-variant-numeric:tabular-nums}.post-prose :where(ol)>li{margin:10px 0;padding-left:4px}.post-prose :where(ol)>li::marker{color:var(--ink-500);font-weight:600}.post-prose :where(hr){border:0;height:1px;background:var(--ink-100);margin:40px auto;width:100%;max-width:200px}.post-prose :where(blockquote){margin:26px 0;padding:18px 22px;background:linear-gradient(to right,var(--ink-50),transparent 80%);border-left:3px solid var(--accent, var(--ink-300));color:var(--ink-800);border-radius:0;font-size:.98em;line-height:1.85}.post-prose :where(blockquote :where(p:last-child)){margin-bottom:0}.post-prose :where(code){font-family:ui-monospace,SF Mono,JetBrains Mono,Menlo,Consolas,monospace;font-size:.86em;background:var(--ink-100);color:var(--ink-800);padding:1.5px 6px;border-radius:4px;font-weight:500;letter-spacing:-.005em}.post-prose :where(table){width:100%;margin:28px 0 8px;border-collapse:separate;border-spacing:0;font-size:14px;line-height:1.65;color:var(--ink-800);background:#fff;border:1px solid var(--ink-100);border-radius:10px;overflow:hidden;font-variant-numeric:tabular-nums}.post-prose :where(thead th){text-align:left;font-weight:700;font-size:12px;letter-spacing:.05em;color:var(--ink-500);padding:11px 14px 9px;background:var(--ink-50);border-bottom:1px solid var(--ink-200);white-space:nowrap;vertical-align:bottom}.post-prose :where(tbody td){padding:13px 14px;border-bottom:1px solid var(--ink-100);color:var(--ink-800);vertical-align:top}.post-prose :where(tbody tr:last-child td){border-bottom:0}.post-prose :where(tbody tr:nth-child(2n) td){background:color-mix(in srgb,var(--ink-50) 55%,white)}.post-prose :where(table) :where(tbody td:first-child){font-weight:600;color:var(--ink-900)}.post-prose :where(table) :where(strong){background:none;padding:0;color:var(--ink-900)}.post-prose :where(table+p),.post-prose :where(.table-scroll+p){margin:6px 0 28px;padding-left:14px;font-size:12.5px;line-height:1.7;color:var(--ink-500);border-left:2px solid var(--ink-200)}.post-prose .table-scroll{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:28px 0 8px}.post-prose .table-scroll>:where(table){margin:0;min-width:100%}@media(max-width:767px){.post-prose :where(table){font-size:13px}.post-prose :where(table) :where(th,td){padding:10px 12px}.post-prose :where(table) :where(tbody td:first-child),.post-prose :where(table) :where(thead th:first-child){white-space:nowrap}.post-prose :where(table) :where(td.num),.post-prose :where(table) :where(th.num){white-space:nowrap}.post-prose :where(table+p),.post-prose .table-scroll+p{font-size:12px;margin:8px 0 24px}}.post-prose :where(img){max-width:100%;height:auto;border-radius:10px;margin:18px 0;border:1px solid var(--ink-100)}.post-prose :where(figure){margin:22px 0}.post-prose :where(figcaption){margin-top:8px;font-size:12.5px;color:var(--ink-500);line-height:1.65;text-align:center}.messages{display:flex;flex-direction:column;gap:24px;margin:28px 0 24px}chat-turn{display:block;width:100%}chat-turn[data-role=user]{display:flex;justify-content:flex-end;border-left:0;padding-left:0}.turn-label{font-size:11.5px;font-weight:700;letter-spacing:.06em;color:var(--ink-400);margin:0 0 4px}chat-turn[data-role=user] .turn-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}chat-turn[data-role=user] .turn-text{max-width:min(80%,560px);background:var(--ink-100);color:var(--ink-900);font-size:15px;font-weight:500;line-height:1.7;padding:12px 18px;border-radius:20px;white-space:pre-wrap;word-break:break-word;box-shadow:0 1px 2px #0f172a08}@media(max-width:767px){chat-turn[data-role=user] .turn-text{max-width:85%;font-size:14px;padding:10px 16px;border-radius:18px;line-height:1.65}}.quick-replies{display:flex;flex-wrap:wrap;gap:8px;margin-top:-10px}.quick-reply-chip{padding:7px 14px;background:#fff;border:1px solid var(--blue-200);border-radius:999px;font-size:13px;color:var(--blue-700);font-family:inherit;cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.quick-reply-chip:hover{background:var(--blue-50);border-color:var(--blue-700)}.quick-reply-chip:active{transform:translateY(1px)}.quick-reply-chip:focus-visible{outline:2px solid var(--blue-700);outline-offset:2px}@media(max-width:767px){.quick-replies{gap:6px;margin-top:-8px}.quick-reply-chip{padding:6px 12px;font-size:12.5px}}.typing-dots{display:inline-flex;align-items:center;gap:6px;padding:4px 0;height:1.4em}.typing-dots>span{width:6px;height:6px;border-radius:50%;background:var(--ink-400);animation:post-typing-bounce 1.4s infinite ease-in-out both}.typing-dots>span:nth-child(1){animation-delay:-.32s}.typing-dots>span:nth-child(2){animation-delay:-.16s}@keyframes post-typing-bounce{0%,80%,to{transform:scale(.6);opacity:.45}40%{transform:scale(1);opacity:1}}chat-composer{display:block;margin:8px 0 32px}.post-page:has(.messages chat-turn) chat-composer{position:fixed;left:0;right:0;bottom:0;margin:0;padding:12px 24px 16px;background:#fff;box-shadow:0 -8px 20px -12px #0f172a14;z-index:10}.post-page:has(.messages chat-turn) .post-composer-form{max-width:720px;margin:0 auto}.post-page:has(.messages chat-turn) .post-container{padding-bottom:120px}@media(max-width:767px){.post-page:has(.messages chat-turn) chat-composer{padding:10px 14px calc(env(safe-area-inset-bottom,0) + 10px)}.post-page:has(.messages chat-turn) .post-container{padding-bottom:110px}}.post-composer-form{display:flex;flex-direction:column;gap:10px}.post-composer-chips{display:flex;flex-wrap:wrap;gap:8px}.post-composer-chip{padding:7px 14px;background:#fff;border:1px solid var(--ink-200);border-radius:999px;font-size:13px;color:var(--ink-700);font-family:inherit;cursor:pointer;white-space:nowrap;transition:background .12s ease,border-color .12s ease,color .12s ease}.post-composer-chip:hover:not(:disabled){background:var(--blue-50);border-color:var(--blue-200, #b9d4fb);color:var(--blue-700)}.post-composer-chip:disabled{opacity:.5;cursor:not-allowed}.post-composer-shell{display:flex;align-items:flex-end;gap:10px;background:#fff;border:1.5px solid var(--ink-200);border-radius:22px;padding:6px 6px 6px 18px;transition:border-color .18s ease,box-shadow .18s ease}.post-composer-shell:focus-within{border-color:var(--blue-500);box-shadow:0 0 0 3px #0e6df824}.post-composer-input{flex:1;font-size:16px;line-height:1.5;padding:8px 0;min-height:40px;max-height:200px;color:var(--ink-900);border:0;background:transparent;outline:0;font-family:inherit;min-width:0;resize:none;overflow-y:auto}.post-composer-input::placeholder{color:var(--ink-400)}.post-composer-input:disabled{background:transparent;color:var(--ink-500);cursor:not-allowed}.post-composer-send{width:40px;height:40px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--blue-700);color:#fff;border:0;cursor:pointer;flex-shrink:0;transition:background .15s ease,transform .15s ease}.post-composer-send:hover{background:var(--blue-800);transform:translateY(-1px)}.post-composer-send:active{transform:translateY(0)}.post-composer-send:focus-visible{outline:3px solid rgba(14,109,248,.4);outline-offset:2px}.post-composer-send:disabled{cursor:not-allowed}.post-composer-send-icon{display:inline-flex}.post-composer-send-spinner{display:none;width:16px;height:16px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:post-composer-spin .7s linear infinite}.post-composer-send[data-loading=true] .post-composer-send-icon{display:none}.post-composer-send[data-loading=true] .post-composer-send-spinner{display:inline-block}@keyframes post-composer-spin{to{transform:rotate(360deg)}}@media(max-width:767px){.post-composer-shell{border-radius:20px;padding:5px 5px 5px 16px;gap:8px}.post-composer-input{padding:7px 0;min-height:38px}.post-composer-send{width:38px;height:38px}.post-composer-chips{max-width:100%}.post-composer-chip{padding:8px 14px;font-size:12.5px;line-height:1.45;white-space:normal;text-align:left;max-width:100%;word-break:auto-phrase;overflow-wrap:anywhere;border-radius:18px}}.hero-composer .post-composer-shell{border-radius:24px;padding:8px 8px 8px 22px;box-shadow:0 12px 32px #1e40af14,0 2px 6px #0f172a0a}.hero-composer .post-composer-shell:focus-within{box-shadow:0 0 0 3px #0e6df824,0 12px 32px #1e40af14}.hero-composer .post-composer-input{padding:10px 0;min-height:44px}.hero-composer .post-composer-send{width:44px;height:44px}.hero-composer .post-composer-send-spinner{width:18px;height:18px}.hero-composer .post-composer-chips{justify-content:center;margin-top:16px}@media(max-width:767px){.hero-composer .post-composer-shell{border-radius:22px;padding:6px 6px 6px 18px}.hero-composer .post-composer-input{padding:8px 0;min-height:40px}.hero-composer .post-composer-send{width:40px;height:40px}.hero-composer .post-composer-chips{margin-top:12px}}.inline-chat{margin:36px 0;scroll-margin-top:calc(var(--nav-h) + 24px)}.inline-chat-lead{margin:0 0 12px;font-size:13.5px;line-height:1.7;color:var(--ink-600, var(--ink-500));font-weight:500}@media(max-width:767px){.inline-chat{margin:28px 0}.inline-chat-lead{font-size:13px;margin:0 0 10px}}.inline-chat-marker,.post-prose .is-truncated{display:none}.inline-truncation-seam{margin:28px 0 26px;display:flex;align-items:center}.inline-truncation-seam:before,.inline-truncation-seam:after{content:"";flex:1;height:0;border-top:1px dashed var(--ink-200)}.inline-truncation-seam-button{background:#fff;border:1px solid var(--ink-200);color:var(--blue-700);font-family:inherit;font-size:13px;font-weight:600;min-width:180px;margin:0 16px;padding:8px 18px;border-radius:999px;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.inline-truncation-seam-button:hover{background:var(--blue-50);border-color:color-mix(in srgb,var(--blue-700) 25%,white);color:var(--blue-800)}.inline-truncation-seam-button:focus-visible{outline:3px solid rgba(14,109,248,.4);outline-offset:2px}@media(max-width:767px){.inline-truncation-seam{margin:22px 0 20px}.inline-truncation-seam-button{font-size:12.5px;padding:7px 16px;min-width:160px;margin:0 12px}}.post-prose .is-revealing{animation:revealFromTruncation .28s ease-out}@keyframes revealFromTruncation{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.post-related{border-top:1px solid var(--ink-100);border-bottom:1px solid var(--ink-100);padding:28px 0;margin:48px 0 24px;background:transparent}.post-related-title{font-size:11.5px;font-weight:700;color:var(--ink-500);letter-spacing:.12em;margin:0 0 18px;display:flex;align-items:center;gap:10px}.post-related-title:after{content:"";flex:1;height:1px;background:var(--ink-100)}.post-related ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.post-related li{display:block}.post-related a{display:flex;align-items:baseline;gap:12px;font-size:14.5px;color:var(--ink-800);text-decoration:none;font-weight:500;line-height:1.55;padding:10px 4px 10px 0;border-radius:4px;transition:color .15s ease}.post-related a:before{content:"→";flex-shrink:0;color:var(--ink-300);font-weight:400;transition:transform .18s ease,color .18s ease;transform:translate(0)}.post-related a:hover{color:var(--blue-700)}.post-related a:hover:before{color:var(--blue-700);transform:translate(4px)}.post-related a:focus-visible{outline:2px solid var(--blue-700);outline-offset:3px}@media(max-width:767px){.post-related{padding:24px 0;margin:36px 0 20px}.post-related a{font-size:14px;padding:9px 4px 9px 0;gap:10px}}.post-back{text-align:center;margin-top:8px}.post-back a{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--ink-500);text-decoration:none;padding:6px 12px;border-radius:999px;transition:color .15s ease,background .15s ease}.post-back a:hover{color:var(--blue-700);background:var(--blue-50)}.return-to-article{position:sticky;top:var(--nav-h);z-index:20;background:#ffffffeb;backdrop-filter:saturate(180%) blur(8px);-webkit-backdrop-filter:saturate(180%) blur(8px);border-bottom:1px solid var(--ink-100)}.return-to-article-inner{max-width:720px;margin:0 auto;padding:9px 24px}.return-to-article-link{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--ink-600);text-decoration:none;font-weight:500;letter-spacing:.01em;min-width:0;max-width:100%;transition:color .15s ease}.return-to-article-link:hover{color:var(--blue-700)}.return-to-article-link:focus-visible{outline:2px solid var(--blue-700);outline-offset:4px;border-radius:4px}.return-to-article-icon{flex-shrink:0;display:inline-flex;align-items:center;color:var(--ink-400);transition:transform .18s ease,color .18s ease}.return-to-article-link:hover .return-to-article-icon{color:var(--blue-700);transform:translate(-3px)}.return-to-article-prefix{flex-shrink:0;color:var(--ink-400);letter-spacing:.06em}.return-to-article-title{min-width:0;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;color:var(--ink-700)}@media(max-width:767px){.return-to-article-inner{padding:7px 16px}.return-to-article-link{font-size:12px;gap:6px}}::view-transition-old(root){animation-duration:.18s}::view-transition-new(root){animation-duration:.18s}logout-button,marketing-toggle,auth-magic-link,engineer-quiz{display:contents}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-jp);color:var(--ink-900);background:var(--ink-50);-webkit-font-smoothing:antialiased;font-feature-settings:"palt";letter-spacing:.01em;line-height:1.6}a{color:inherit;text-decoration:none}button{font-family:inherit}.num{font-family:var(--font-num);font-feature-settings:"tnum"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;cursor:pointer;font-family:inherit;font-weight:600;transition:all .15s ease;white-space:nowrap;line-height:1}.btn-primary{background:var(--blue-700);color:#fff;box-shadow:var(--sh-blue)}.btn-primary:hover{background:var(--blue-800)}.btn-ghost{background:transparent;color:var(--ink-700);border:1px solid var(--ink-200)}.btn-ghost:hover{background:var(--ink-100)}.btn-white{background:#fff;color:var(--blue-800);box-shadow:var(--sh-sm)}.pill{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;font-size:11px;border-radius:999px;font-weight:500;background:var(--ink-100);color:var(--ink-700)}.pill-blue{background:var(--blue-50);color:var(--blue-700)}.pill-solid{background:var(--blue-700);color:#fff}.placeholder{background:repeating-linear-gradient(135deg,#1e40af0a 0 8px,#1e40af14 8px 16px),var(--blue-50);color:var(--blue-700);font-family:var(--font-num);font-size:10px;letter-spacing:.08em;text-transform:uppercase;display:flex;align-items:center;justify-content:center;border-radius:var(--r-md)}.container{max-width:1200px;margin:0 auto;padding-inline:32px}@media(max-width:767px){.container{padding-inline:20px}}@media(min-width:768px){.sp-only{display:none!important}}@media(max-width:767px){.pc-only{display:none!important}}
