.page{--grad:linear-gradient(105deg,#5A2EFD 0%,#0078FF 100%);font-family:Inter,Noto Sans JP,sans-serif;background:#fff;color:var(--ink);-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.5;letter-spacing:-.002em}.ahead{max-width:760px}.atitle{font-family:Inter,Noto Sans JP,sans-serif;font-weight:700;font-size:clamp(28px,3.2vw,42px);line-height:1.4;letter-spacing:-.025em;margin:20px 0 0;word-break:keep-all;line-break:strict}.alead{color:#46506a;font-size:16px;line-height:1.95;margin:20px 0 0}.ameta{display:flex;align-items:center;gap:12px;margin-top:24px;flex-wrap:wrap}.hero{position:relative;border-radius:18px;overflow:hidden;aspect-ratio:1200/630;max-width:760px;margin-top:32px;background:linear-gradient(135deg,#5a2efd,#9b6bff);display:flex;flex-direction:column;justify-content:space-between;padding:34px 38px}.hero:after{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 80% 15%,rgba(255,255,255,.22),transparent 60%);pointer-events:none}.hero .hc{position:relative;z-index:1;font-family:Inter,sans-serif;font-weight:700;font-size:12px;letter-spacing:.16em;color:#ffffffbf;align-self:flex-end}.hero .ht{position:relative;z-index:1;font-family:Noto Sans JP,sans-serif;font-weight:700;font-size:clamp(20px,2.4vw,30px);line-height:1.55;letter-spacing:-.01em;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.2);max-width:560px}.hero .hb{position:relative;z-index:1;display:flex;align-items:center;gap:9px;font-family:Montserrat,Inter,sans-serif;font-weight:600;font-size:11px;letter-spacing:.16em;color:#ffffffd9}.hero .hb img{height:15px;width:auto;filter:brightness(0) invert(1);opacity:.9}.alayout{display:grid;grid-template-columns:minmax(0,760px) 300px;gap:72px;align-items:start;margin-top:48px}.toc{position:sticky;top:88px;border-left:1px solid var(--hair);padding-left:26px}.toc .tl{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);font-weight:700;margin-bottom:14px}.toc a{display:block;font-family:Noto Sans JP,sans-serif;font-size:13px;color:var(--mutl);text-decoration:none;padding:6px 0;line-height:1.6;transition:color .2s}.toc a:hover{color:var(--accent)}.toc a.h3{padding-left:16px;font-size:12.5px;color:var(--mut)}.toc-cta{margin-top:26px;background:var(--paper);border-radius:14px;padding:20px 22px}.toc-cta .t{font-family:Noto Sans JP,sans-serif;font-weight:700;font-size:13.5px;line-height:1.6}.toc-cta p{font-family:Noto Sans JP,sans-serif;font-size:12px;color:var(--mutl);line-height:1.75;margin:8px 0 14px}.afoot{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;border-top:1px solid var(--hair);margin-top:56px;padding-top:24px}.tagrow{display:flex;gap:8px;flex-wrap:wrap}.htag{font-family:Inter,Noto Sans JP,sans-serif;font-size:12px;color:var(--mutl);background:var(--paper);border-radius:999px;padding:6px 14px;text-decoration:none}.htag:hover{color:var(--accent)}.share{display:flex;gap:10px;align-items:center}.share .sl{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);font-weight:600}.share a{width:36px;height:36px;border-radius:50%;border:1px solid var(--hair);display:flex;align-items:center;justify-content:center;color:var(--mutl);transition:all .2s}.share a:hover{border-color:var(--accent);color:var(--accent)}.share svg{width:16px;height:16px}.author{display:flex;gap:20px;align-items:flex-start;background:var(--paper);border-radius:18px;padding:28px 30px;margin-top:32px}.avatar{width:64px;height:64px;border-radius:50%;background:linear-gradient(125deg,#0d1117,#1a237e 55%,#481ddb);display:flex;align-items:center;justify-content:center;flex:none}.avatar img{width:32px;height:32px;object-fit:contain}.author .an{font-family:Noto Sans JP,sans-serif;font-weight:700;font-size:15px}.author .ar{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.08em;color:var(--accent);font-weight:600;margin-top:3px}.author p{font-family:Noto Sans JP,sans-serif;font-size:13px;color:var(--mutl);line-height:1.85;margin:10px 0 0}.svc-link{display:flex;align-items:center;gap:20px;justify-content:space-between;background:linear-gradient(135deg,#5a2ef00f,#007bff0f);border:1px solid rgba(90,46,240,.15);border-radius:16px;padding:24px 28px;margin-top:32px;text-decoration:none;color:inherit;transition:box-shadow .25s,transform .2s}.svc-link:hover{box-shadow:0 20px 44px -30px #28287859;transform:translateY(-2px)}.svc-l-body{display:flex;flex-direction:column;gap:6px}.svc-l-lbl{font-family:Inter,sans-serif;font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--accent)}.svc-l-t{font-family:Inter,Noto Sans JP,sans-serif;font-weight:700;font-size:17px;color:var(--ink)}.svc-l-d{font-family:Noto Sans JP,sans-serif;font-size:13px;color:var(--mutl);line-height:1.75}.svc-l-arrow{flex:none;color:var(--accent)}.pn{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}.pn-a{display:flex;flex-direction:column;gap:8px;border:1px solid var(--hair);border-radius:14px;padding:18px 20px;text-decoration:none;color:inherit;transition:border-color .2s,box-shadow .25s}.pn-a:hover{border-color:#d6dbe8;box-shadow:0 16px 40px -32px #2828784d}.pn-r{text-align:right;align-items:flex-end}.pn-empty{border:none;box-shadow:none;pointer-events:none}.pn-l{font-family:Inter,sans-serif;font-size:11.5px;letter-spacing:.06em;color:var(--mut);font-weight:600}.pn-t{font-family:Inter,Noto Sans JP,sans-serif;font-size:14px;font-weight:700;line-height:1.5;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.rel-h{font-family:Inter,Noto Sans JP,sans-serif;font-weight:700;font-size:24px;letter-spacing:-.02em;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:28px}.card{border:1px solid var(--hair);border-radius:18px;padding:14px 14px 22px;text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:box-shadow .25s,transform .25s,border-color .25s;background:#fff}.card:hover{box-shadow:0 24px 54px -36px #28287852;transform:translateY(-3px);border-color:#d6dbe8}.thumb{position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;padding:16px 18px;background:linear-gradient(135deg,#5a2efd,#0078ff)}.thumb:after{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 80% 15%,rgba(255,255,255,.22),transparent 60%);pointer-events:none}.thumb-cat{position:relative;z-index:1;font-family:Inter,sans-serif;font-weight:700;font-size:9.5px;letter-spacing:.16em;color:#ffffffbf;align-self:flex-end}.thumb-t{position:relative;z-index:1;font-family:Noto Sans JP,Inter,sans-serif;font-weight:700;font-size:15.5px;line-height:1.5;color:#fff;text-shadow:0 2px 16px rgba(0,0,0,.2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.thumb-brand{position:relative;z-index:1;display:flex;align-items:center;gap:7px;font-family:Montserrat,Inter,sans-serif;font-weight:600;font-size:9px;letter-spacing:.16em;color:#ffffffd9}.thumb-brand img{height:12px;width:auto;filter:brightness(0) invert(1);opacity:.9}.card-b{padding:18px 12px 0;display:flex;flex-direction:column;flex:1}.card-meta{display:flex;align-items:center;gap:11px;margin-bottom:13px}.card-h{font-family:Inter,Noto Sans JP,sans-serif;font-weight:700;font-size:16px;line-height:1.55;margin:0;color:var(--ink)}.cta{position:relative;overflow:hidden;background:linear-gradient(135deg,#1a1d30,#0b0e18);border-radius:26px;padding:52px 56px;color:#fff;text-align:center}.cta:before{content:"";position:absolute;top:-80px;left:-80px;width:380px;height:380px;border-radius:50%;background:radial-gradient(circle,rgba(123,77,255,.5),transparent 60%);pointer-events:none}.cta:after{content:"";position:absolute;bottom:-130px;right:-100px;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle,rgba(0,120,255,.3),transparent 62%);pointer-events:none}.cta h2{font-family:Inter,Noto Sans JP,sans-serif;font-weight:700;font-size:clamp(22px,2.4vw,32px);letter-spacing:-.02em;margin:0;position:relative;z-index:1;line-height:1.5}.cta p{color:#aeb8cf;font-size:14.5px;margin:14px 0 26px;position:relative;z-index:1}.cta .btn{position:relative;z-index:1}@media (max-width:980px){.alayout{grid-template-columns:minmax(0,1fr)}.toc{display:none}.cards{grid-template-columns:1fr}.prose{min-width:0}}@media (max-width:560px){.svc-link{padding:20px 22px}.pn{grid-template-columns:1fr}.pn-r{text-align:left;align-items:flex-start}}
