.blog-shell{z-index:1;min-height:100vh;color:var(--ink);background:#fff;font-family:Helvetica Neue,Hiragino Sans,Hiragino Kaku Gothic ProN,Arial,Noto Sans JP,Meiryo,sans-serif;line-height:1.8;position:relative}.blog-shell ::selection{background:#58ace847}.blog-header{z-index:20;-webkit-backdrop-filter:blur(14px);background:#ffffffdb;border-bottom:1px solid #14242112;justify-content:space-between;align-items:center;width:100%;height:64px;padding:0 28px;display:flex;position:sticky;top:0}.blog-header__brand{letter-spacing:.02em;color:var(--ink);align-items:baseline;gap:10px;font-family:Plus Jakarta Sans,Noto Sans JP,sans-serif;font-size:18px;font-weight:700;display:flex}.blog-header__brand-mark{color:var(--blue)}.blog-header__brand-tag{letter-spacing:.18em;color:#1424218c;font-family:Noto Sans JP,sans-serif;font-size:12px;font-weight:500}.blog-header__nav{color:#142421bf;align-items:center;gap:24px;font-size:13px;display:flex}.blog-header__nav a{transition:color .16s}.blog-header__nav a:hover{color:var(--blue)}.blog-footer{background:#fafbfc;border-top:1px solid #14242112;margin-top:96px;padding:48px 28px 64px}.blog-footer__inner{color:#14242199;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;max-width:1080px;margin:0 auto;font-size:13px;display:flex}.blog-footer__links{gap:20px;display:flex}.blog-footer__links a:hover{color:var(--blue)}.blog-container{max-width:1440px;margin:0 auto;padding:56px 48px 0}@media (max-width:760px){.blog-container{padding:40px 20px 0}}.blog-hero{margin-bottom:56px}.blog-hero__eyebrow{letter-spacing:.22em;color:var(--blue);background:#58ace81a;border-radius:999px;margin-bottom:14px;padding:4px 12px;font-size:11px;font-weight:600;display:inline-block}.blog-hero__title{letter-spacing:.02em;color:var(--ink);margin:0 0 14px;font-family:inherit;font-size:clamp(28px,4vw,40px);font-weight:700;line-height:1.35}.blog-hero__lead{color:#142421b3;max-width:640px;font-size:15px}.blog-tag-row{flex-wrap:wrap;gap:8px;margin:28px 0 0;display:flex}.blog-tag-pill{color:#142421b3;background:#f3f5f7;border-radius:999px;padding:6px 14px;font-size:12px;font-weight:500;transition:background .16s,color .16s}.blog-tag-pill:hover,.blog-tag-pill.is-active{color:var(--blue);background:#58ace824}.blog-feed{grid-template-columns:1fr;gap:8px;padding:24px 0 48px;display:grid}@media (min-width:760px){.blog-feed{grid-template-columns:1fr 1fr;gap:8px 36px}}@media (min-width:1200px){.blog-feed{grid-template-columns:1fr 1fr 1fr;gap:12px 40px}}.blog-card{border-top:1px solid #14242112;flex-direction:column;padding:28px 0;transition:transform .2s;display:flex}.blog-card:hover{transform:translateY(-2px)}.blog-card__cover{aspect-ratio:16/9;background:linear-gradient(135deg,#eef4fb 0%,#f7f9fc 100%);border-radius:8px;margin-bottom:18px;position:relative;overflow:hidden}.blog-card__cover-emoji{filter:drop-shadow(0 4px 12px #58ace833);justify-content:center;align-items:center;font-size:clamp(48px,7vw,72px);display:flex;position:absolute;inset:0}.blog-card__cover-image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.blog-card__title{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 8px;font-family:inherit;font-size:20px;font-weight:700;line-height:1.5;display:-webkit-box;overflow:hidden}.blog-card:hover .blog-card__title{color:var(--blue)}.blog-card__excerpt{color:#142421a6;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 14px;font-size:14px;line-height:1.75;display:-webkit-box;overflow:hidden}.blog-card__meta{color:#14242180;align-items:center;gap:12px;font-size:12px;display:flex}.blog-card__meta-dot{background:#1424214d;border-radius:50%;width:3px;height:3px}.blog-layout{grid-template-columns:minmax(0,720px) 280px;align-items:start;gap:40px;max-width:1080px;margin:0 auto;padding:56px 28px 24px;display:grid}.blog-article{min-width:0;max-width:720px;margin:0;padding:0}@media (max-width:1100px){.blog-layout{grid-template-columns:1fr;gap:0;max-width:720px;padding:40px 24px 24px}.blog-article{max-width:720px;margin:0 auto}}.blog-article__back{color:#14242199;align-items:center;gap:6px;margin-bottom:28px;font-size:13px;transition:color .16s;display:inline-flex}.blog-article__back:hover{color:var(--blue)}.blog-article__tags{flex-wrap:wrap;gap:6px;margin-bottom:18px;display:flex}.blog-article__title{letter-spacing:0;color:#222;margin:0 0 20px;font-family:inherit;font-size:clamp(30px,3.8vw,40px);font-weight:700;line-height:1.4}.blog-article__meta{color:#1424218c;align-items:center;gap:12px;margin-bottom:20px;font-size:13px;display:flex}.blog-article__byline{color:#1424218c;align-items:baseline;gap:6px;margin:0 0 32px;font-size:12px;line-height:1.5;text-decoration:none;display:inline-flex}.blog-article__byline:hover .blog-article__byline-name{color:var(--blue)}.blog-article__byline-icon{font-size:12px;line-height:1}.blog-article__byline-text{display:inline}.blog-article__byline-name{color:#142421bf;letter-spacing:0;font-weight:600;transition:color .16s}.blog-article__byline-desc{color:#14242180}.blog-article__byline-desc:before{content:" — "}.about-editorial{background:#fafbfc;padding:88px 28px}.editorial-inner{max-width:880px;margin:28px auto 0}.editorial-lead{color:var(--ink);margin:0 0 28px;font-size:17px;line-height:1.85}.editorial-lead a{color:var(--blue);text-underline-offset:3px;text-decoration:underline}.editorial-points{gap:18px;margin:0 0 32px;padding:0;list-style:none;display:grid}.editorial-points li{border-left:3px solid var(--blue);color:#142421c7;background:#fff;border-radius:6px;padding:18px 22px;font-size:15px;line-height:1.85}.editorial-points li strong{color:#1f1f1f;letter-spacing:.02em;margin-bottom:4px;font-size:14px;font-weight:700;display:block}.editorial-cta{color:#142421b3;margin:0;font-size:15px}.editorial-cta a{color:var(--blue);text-underline-offset:3px;font-weight:600;text-decoration:underline}.blog-article__cover{aspect-ratio:16/9;background:linear-gradient(135deg,#eef4fb 0%,#f7f9fc 100%);border-radius:0;margin:0 -28px 40px;position:relative;overflow:hidden}@media (min-width:760px){.blog-article__cover{border-radius:12px;margin:0 0 40px}}.blog-article__cover-image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.blog-article__cover-emoji{filter:drop-shadow(0 6px 18px #58ace840);justify-content:center;align-items:center;font-size:clamp(72px,12vw,128px);display:flex;position:absolute;inset:0}.blog-prose{color:#222;font-size:17px;line-height:1.85}.blog-prose>*+*{margin-top:16px}.blog-prose>h2+*,.blog-prose>h3+*,.blog-prose>h4+*{margin-top:12px}.blog-prose>p+p{margin-top:14px}.blog-prose h2{letter-spacing:0;color:#1a1a1a;background:0 0;border:none;border-bottom:2px solid #0000;border-image:linear-gradient(90deg,#1a2a6c 0%,#58ace8 100%) 1;border-radius:0;margin-top:64px;margin-bottom:20px;padding:0 0 14px;font-family:inherit;font-size:28px;font-weight:700;line-height:1.5}.blog-prose h3{color:#1a1a1a;border-left:4px solid var(--blue);margin-top:36px;margin-bottom:8px;padding-left:14px;font-size:20px;font-weight:700;line-height:1.5}.blog-prose p{font-size:18px;line-height:2}.blog-prose h4{color:#222;margin-top:40px;margin-bottom:8px;font-size:20px;font-weight:700;line-height:1.5}.blog-prose h5,.blog-prose h6{color:#222;margin-top:32px;margin-bottom:6px;font-size:18px;font-weight:700;line-height:1.5}.blog-prose strong,.blog-prose b{color:#000;font-weight:700}.blog-prose em,.blog-prose i{font-style:italic}.blog-prose mark{color:inherit;background:linear-gradient(#0000 60%,#fff3a0 60%);padding:2px 4px}.blog-prose a{color:#2f6fd1;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.blog-prose a:hover{color:#1f4e9c}.blog-prose ul,.blog-prose ol{margin-top:12px;padding-left:1.4em;font-size:17px;line-height:1.85}.blog-prose li{margin:4px 0}.blog-prose li>ul,.blog-prose li>ol{margin-top:8px}.blog-prose ul li{list-style:outside}.blog-prose ol li{list-style:decimal}.blog-prose blockquote{color:#4a4a4a;background:#f7f8fa;border-left:4px solid #d0d6db;border-radius:0 4px 4px 0;margin:32px 0;padding:16px 22px;font-size:15px;font-style:normal;line-height:1.85}.blog-prose .callout{background:#f3f4f5;border-radius:8px;margin:32px 0;padding:28px 36px}.blog-prose .callout>:first-child{margin-top:0}.blog-prose .callout>:last-child{margin-bottom:0}.blog-prose .callout ul,.blog-prose .callout ol{margin:0;padding-left:24px}.blog-prose .callout li{margin:4px 0;font-size:17px;line-height:1.85}.blog-prose .callout p{margin:0;font-size:17px;line-height:1.85}@media (max-width:640px){.blog-prose .callout{padding:20px 22px}}.blog-prose blockquote p{margin:0;font-size:15px;line-height:1.85}.blog-prose blockquote p+p{margin-top:12px}.blog-prose hr{border:0;border-top:1px solid #e5e7eb;margin:48px 0}.blog-prose img{border-radius:8px;width:100%;height:auto;margin:32px auto;display:block}.blog-prose figure{margin:32px 0}.blog-prose figcaption{color:#767676;text-align:center;margin-top:10px;font-size:14px;line-height:1.6}.blog-prose table{border-collapse:collapse;width:100%;margin:32px 0;font-size:17px;line-height:1.7}.blog-prose table th,.blog-prose table td{text-align:left;vertical-align:top;border:1px solid #e5e7eb;padding:12px 14px}.blog-prose table th{color:#222;background:#f3f5f7;font-weight:700}.blog-prose code{background:#f3f5f7;border-radius:4px;padding:2px 6px;font-family:IBM Plex Mono,monospace;font-size:16px}.blog-prose pre{color:#e8edf2;background:#142421;border-radius:8px;padding:18px 20px;font-family:IBM Plex Mono,monospace;font-size:14px;line-height:1.7;overflow-x:auto}.blog-prose pre code{color:inherit;background:0 0;padding:0;font-size:14px}.blog-prose>p:first-of-type{color:#1a1a1a;font-size:17px;line-height:1.85}.blog-prose>h2:last-of-type{color:#143b6b;letter-spacing:.02em;background:linear-gradient(135deg,#eaf2fb 0%,#dceaf7 100%);border-left:none;border-radius:12px 12px 0 0;margin-top:80px;margin-bottom:0;padding:24px 28px 22px;font-size:22px;font-weight:700}.blog-prose>h2:last-of-type:before{content:"💬 ";margin-right:6px}.blog-prose>h2:last-of-type~*{background:#f4f8fc}.blog-prose>h2:last-of-type~h3{color:#2f6fd1;border:none;margin:0;padding:22px 28px 10px;font-size:17px;font-weight:700;line-height:1.55;position:relative}.blog-prose>h2:last-of-type~h3:before{content:"";opacity:.5;background:#2f6fd1;width:36px;height:2px;margin-bottom:10px;display:block}.blog-prose>h2:last-of-type~p{color:#2c2c2c;margin:0;padding:0 28px 22px;font-size:15px;line-height:1.85}.blog-prose>h2:last-of-type~p+h3{border-top:1px solid #2f6fd11f;padding-top:22px}.blog-prose>h2:last-of-type~p:last-child{border-radius:0 0 12px 12px;padding-bottom:28px}.blog-prose .ogp-card{color:inherit;background:#fff;border:1px solid #1424211f;border-radius:10px;align-items:stretch;margin:24px 0 40px;padding:20px 24px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.blog-prose .ogp-card:hover{border-color:var(--blue);transform:translateY(-1px);box-shadow:0 4px 16px #14242114}.blog-prose .ogp-card__body{flex-direction:column;flex:auto;justify-content:center;min-width:0;padding-right:20px;display:flex}.blog-prose .ogp-card__title{color:#1a1a1a;margin-bottom:8px;font-size:16px;font-weight:700;line-height:1.55}.blog-prose .ogp-card__desc{color:#142421b3;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-bottom:10px;font-size:13px;line-height:1.7;display:-webkit-box;overflow:hidden}.blog-prose .ogp-card__url{color:#1424218c;font-size:12px}.blog-prose .ogp-card__thumb{border-left:1px solid #14242114;flex:0 0 160px;justify-content:center;align-items:center;padding-left:20px;display:flex}.blog-prose .ogp-card__thumb img{object-fit:contain;border-radius:0;width:auto;max-width:100%;height:auto;max-height:80px;margin:0}@media (max-width:640px){.blog-prose .ogp-card{flex-direction:column-reverse;padding:16px}.blog-prose .ogp-card__body{padding-right:0}.blog-prose .ogp-card__thumb{border-bottom:1px solid #14242114;border-left:none;flex:none;margin-bottom:12px;padding-bottom:12px;padding-left:0}.blog-prose .ogp-card__thumb img{max-height:56px}}.blog-related{border:none;width:100%;margin-top:0;padding:0;position:sticky;top:88px}.blog-related__heading{letter-spacing:0;color:#1a1a1a;text-transform:none;margin:0 0 24px;padding-bottom:12px;font-family:inherit;font-size:20px;font-weight:700;position:relative}.blog-related__heading:after{content:"";background:#b0b0b0;width:36px;height:2px;position:absolute;bottom:0;left:0}.blog-related__heading--secondary{margin-top:40px}.blog-category-list{flex-direction:column;gap:0;margin:0 0 8px;padding:0;list-style:none;display:flex}.blog-category-list li{border-bottom:1px solid #14242114}.blog-category-list li:first-child{border-top:1px solid #14242114}.blog-category-list__link{color:#1a1a1a;padding:12px 4px;font-size:14px;text-decoration:none;transition:color .16s;display:block}.blog-category-list__link:hover{color:var(--blue)}.blog-related__list{flex-direction:column;gap:28px;display:flex}.related-card{color:inherit;align-items:flex-start;gap:14px;text-decoration:none;display:flex}.related-card__thumb{aspect-ratio:16/10;background:linear-gradient(135deg,#eef4fb 0%,#f7f9fc 100%);border-radius:6px;flex:0 0 110px;justify-content:center;align-items:center;display:flex;overflow:hidden}.related-card__thumb img{object-fit:cover;width:100%;height:100%;display:block}.related-card__emoji{font-size:32px}.related-card__body{flex-direction:column;flex:auto;gap:6px;min-width:0;display:flex}.related-card__chip{color:#fff;background:#6c6c6c;border-radius:3px;align-self:flex-start;padding:3px 10px;font-size:11px;font-weight:500;line-height:1.4;display:inline-block}.related-card__title{color:#1a1a1a;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:13px;font-weight:500;line-height:1.5;display:-webkit-box;overflow:hidden}.related-card:hover .related-card__title{color:var(--blue)}@media (max-width:1100px){.blog-related{border-top:1px solid #14242112;width:auto;max-width:720px;margin:32px auto 0;padding-top:32px;position:static}}.blog-tagpage-heading{color:var(--ink);margin:0 0 8px;font-family:inherit;font-size:clamp(24px,3.4vw,32px);font-weight:700}.blog-tagpage-sub{color:#1424218c;font-size:13px}.blog-chip{color:var(--blue);letter-spacing:.04em;background:#58ace81a;border-radius:999px;align-items:center;padding:3px 10px;font-size:11px;font-weight:500;transition:background .16s;display:inline-flex}.blog-chip:hover{background:#58ace82e}
