body.is-library{--lt-ink2: #F5F7FA;--lt-panel2: #F4F6F8;--lt-line: #E3E6EB;--lt-line2: #CDD2DA;--lt-text: #111111;--lt-head: #17274A;--lt-body: #3A4356;--lt-sub: #5B6474;--lt-dim: #6B7280;--lt-glow: #2E4372;--lt-glow-rgb: 46, 67, 114;--lt-mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace}body.is-library .site-header{background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--lt-line)}body.is-library .site-header .site-header__inner{max-width:none;padding:0 48px}@media(max-width: 1023px){body.is-library .site-header .site-header__inner{padding:0 max(20px,(100vw - 640px)/2)}}body.is-library .site-header .read-bar{position:absolute;left:0;right:0;bottom:-1px;height:1px;pointer-events:none}body.is-library .site-header .read-bar i{display:block;height:1px;width:100%;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg, rgba(var(--lt-glow-rgb), 0.4), var(--lt-glow) 85%, #17274A);box-shadow:0 0 4px rgba(var(--lt-glow-rgb), 0.45)}body.is-library .archive-pickup:not(.archive-pickup--fade) .hero-slide{opacity:.4;transition:opacity .45s,border-color .45s,box-shadow .45s}body.is-library .archive-pickup:not(.archive-pickup--fade) .hero-slide.is-active{opacity:1;border-color:var(--lt-line2);box-shadow:0 24px 56px -32px rgba(12,26,50,.3)}body.is-library .hero-slide__body::before{content:"";position:absolute;left:0;top:0;width:100%;height:1px;background:linear-gradient(90deg, rgba(var(--lt-glow-rgb), 0.9), rgba(var(--lt-glow-rgb), 0));opacity:0;transition:opacity .45s}body.is-library .hero-slide.is-active .hero-slide__body::before{opacity:1}body.is-library .hero-slide__title{font-size:24px;letter-spacing:.01em}body.is-library .hero-slide__title a:hover{color:var(--lt-glow)}body.is-library .hero-slide__more{color:var(--lt-glow);font-weight:500;letter-spacing:.06em}body.is-library .hero-slider__dot{background:rgba(0,0,0,0);border:1px solid var(--lt-line2)}body.is-library .hero-slider__dot.is-active{background:var(--lt-glow);border-color:var(--lt-glow);box-shadow:0 0 0 4px rgba(var(--lt-glow-rgb), 0.18)}body.is-library .hero-slider__nav,body.is-library .card-slider__nav button{background:rgba(255,255,255,.96);border:1px solid var(--lt-line2);color:var(--lt-text)}body.is-library .hero-slider__nav:hover,body.is-library .card-slider__nav button:hover{background:rgba(var(--lt-glow-rgb), 0.16);border-color:rgba(var(--lt-glow-rgb), 0.8)}body.is-library .search-form{border-color:var(--lt-line2);background:#fff}body.is-library .search-form:focus-within{border-color:rgba(var(--lt-glow-rgb), 0.8)}body.is-library .search-form__submit:hover{color:var(--lt-glow)}body.is-library .category-nav{gap:8px}body.is-library .category-nav__item{padding:7px 16px;font-size:13px;font-weight:500;letter-spacing:.02em;border-color:var(--lt-line2);color:var(--lt-body)}body.is-library .category-nav__item:hover{border-color:rgba(var(--lt-glow-rgb), 0.8);background:rgba(var(--lt-glow-rgb), 0.08);color:var(--lt-glow)}body.is-library .category-nav__item.is-active{background:var(--lt-glow);border-color:var(--lt-glow);color:#fff}body.is-library .tag-chip{border-color:var(--lt-line2);color:var(--lt-body)}body.is-library .tag-chip:hover{border-color:rgba(var(--lt-glow-rgb), 0.8);background:rgba(var(--lt-glow-rgb), 0.08);color:var(--lt-glow)}body.is-library .tag-chip__count{font-family:var(--lt-mono);color:var(--lt-dim)}body.is-library .pagination{font-family:var(--lt-mono)}body.is-library .pagination a,body.is-library .pagination span{border-color:var(--lt-line);color:var(--lt-body)}body.is-library .pagination a:hover{border-color:rgba(var(--lt-glow-rgb), 0.8);color:var(--lt-glow)}body.is-library .pagination .current{background:var(--lt-glow);border-color:var(--lt-glow);color:#fff}body.is-library .card__cat,body.is-library .article-meta__cat{background:rgba(0,0,0,0);border-color:rgba(var(--lt-glow-rgb), 0.45);color:var(--lt-glow);font-weight:700}body.is-library .card__cat:hover,body.is-library .article-meta__cat:hover{background:var(--lt-glow);border-color:var(--lt-glow);color:#fff}body.is-library .card__meta time,body.is-library .card-compact__date,body.is-library .article-meta__item{font-family:var(--lt-mono),"Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;letter-spacing:.04em;color:var(--lt-dim)}body.is-library .card{position:relative;transition:border-color .5s,background-color .5s,box-shadow .5s}body.is-library .card::before{content:"";position:absolute;left:0;top:0;z-index:2;height:1px;width:0;background:linear-gradient(90deg, rgba(var(--lt-glow-rgb), 0), var(--lt-glow) 70%, var(--lt-head));transition:width .6s cubic-bezier(0.19, 1, 0.22, 1)}body.is-library .card:hover::before{width:100%}body.is-library .card:hover,body.is-library .ranking-card:hover{background:#fff;box-shadow:0 18px 40px -24px rgba(12,26,50,.28)}body.is-library .card:hover .card__title,body.is-library .card-compact:hover .card-compact__title,body.is-library .ranking-card__link:hover .ranking-card__title{color:var(--lt-glow)}body.is-library .card-compact:hover{background:rgba(var(--lt-glow-rgb), 0.06)}body.is-library .ranking-card__title{font-size:16px;min-height:51.2px}body.is-library .archive-section__more .btn{position:relative;overflow:hidden;isolation:isolate;border:none;color:#fff;background:linear-gradient(90deg, #2E4372 0%, #17274A 100%)}body.is-library .archive-section__more .btn::before{content:"";position:absolute;inset:0;z-index:-1;background:#0e1b33;transform:translateX(-101%);transition:transform .52s cubic-bezier(0.625, 0.05, 0, 1)}body.is-library .archive-section__more .btn:hover{color:#fff}body.is-library .archive-section__more .btn:hover::before{transform:none}body.is-library .article-toc__title{color:var(--lt-head)}body.is-library .article-toc li::before{content:counter(toc, decimal-leading-zero);font-family:var(--lt-mono);font-size:11.5px;letter-spacing:.06em;color:var(--lt-glow)}body.is-library .article-toc .toc-h3::before{content:"";background:var(--lt-line2)}body.is-library .article-toc a{color:var(--lt-text)}body.is-library .article-toc .toc-h3 a{color:var(--lt-sub)}body.is-library .article-toc a:hover{color:var(--lt-glow);text-decoration:underline;text-underline-offset:4px;text-decoration-color:rgba(var(--lt-glow-rgb), 0.7)}body.is-library .article-body h2{color:var(--lt-head);border-left:3px solid var(--lt-glow)}body.is-library .article-body a{color:var(--lt-head);text-decoration-color:rgba(23,39,74,.45)}body.is-library .article-body a:hover{color:var(--lt-glow);text-decoration-color:var(--lt-glow)}body.is-library .article-body ul li::marker{color:var(--lt-glow)}body.is-library .article-body ol li::marker{color:var(--lt-glow);font-family:var(--lt-mono);font-size:.85em}body.is-library .article-body figure:not(.article-table){border:1px solid var(--lt-line);border-radius:var(--radius);background:#fff}body.is-library .article-body th{background:var(--lt-panel2)}body.is-library .article-body thead tr{border-bottom:2px solid rgba(var(--lt-glow-rgb), 0.75)}body.is-library .article-relate{background:var(--lt-panel2);border:1px solid var(--lt-line);border-left:3px solid var(--lt-glow)}body.is-library .article-relate a{color:var(--lt-glow)}body.is-library .article-faq{position:relative;overflow:hidden;background:var(--lt-panel2);border:1px solid var(--lt-line)}body.is-library .article-faq::before{content:"";position:absolute;left:0;top:0;width:100%;height:1px;background:linear-gradient(90deg, rgba(var(--lt-glow-rgb), 0), rgba(var(--lt-glow-rgb), 0.9), rgba(var(--lt-glow-rgb), 0))}body.is-library .article-faq__title{color:var(--lt-head);border-left-color:var(--lt-glow)}body.is-library .article-faq dt{color:var(--lt-head)}body.is-library .article-faq dt::before{font-family:var(--lt-mono);color:var(--lt-glow)}body.is-library .article-faq dd{color:var(--lt-body)}body.is-library .article-author{border:1px solid var(--lt-line);transition:border-color .4s,box-shadow .4s}body.is-library .article-author:hover{border-color:rgba(var(--lt-glow-rgb), 0.45);box-shadow:0 18px 40px -24px rgba(12,26,50,.28)}body.is-library .article-author .img-frame,body.is-library .article-author-inline .img-frame{border:1px solid var(--lt-line2)}body.is-library .article-author-inline .name,body.is-library .article-author .name{white-space:nowrap}body.is-library .article-author-inline .name{flex:0 0 auto}body.is-library .article-author-inline .job{min-width:0;line-break:strict;word-break:auto-phrase}body.is-library .article-more__title{color:var(--lt-head)}body.is-library .article-more__card:hover .title{color:var(--lt-glow)}::selection{background:rgba(46,67,114,.18)}body.is-library .site-ftr{--ink:#F5F7FA;--sub:#5B6474;--text:#111111;--dim:#6B7280;--line:#E3E6EB;--mono:ui-monospace,"SF Mono","JetBrains Mono",Menlo,monospace;--gut:120px}body.is-library .site-ftr ul{margin:0}body.is-library .site-ftr .logo{display:flex;align-items:center;gap:18px;color:#17274a}body.is-library .site-ftr .logo .tl{font-size:10px;color:var(--sub);letter-spacing:.12em;padding-left:18px;border-left:1px solid #cdd2da;line-height:1.6}body.is-library .site-ftr{position:relative;z-index:1;background:var(--ink);padding:76px var(--gut) 40px;color:var(--sub)}body.is-library .site-ftr .fbrand{display:flex;justify-content:space-between;align-items:flex-start;padding-bottom:56px}body.is-library .site-ftr .fbrand .logo .lg{width:164px;height:38px}body.is-library .site-ftr .fbrand p{font-size:12px;line-height:1.9;text-align:right}body.is-library .site-ftr .fgrid{display:grid;grid-template-columns:repeat(6, 1fr);gap:40px;padding:48px 0 64px;border-top:1px solid var(--line)}body.is-library .site-ftr .fcol.wide{grid-column:span 3}body.is-library .site-ftr .fcols{display:grid;grid-template-columns:repeat(3, 1fr);gap:40px}body.is-library .site-ftr .fcol h4{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--text);font-weight:700;padding-bottom:18px;min-height:36px}body.is-library .site-ftr .fcol h5{font-size:11px;color:var(--dim);font-weight:500;letter-spacing:.06em;padding:4px 0 10px}body.is-library .site-ftr .fcol ul{list-style:none;padding-bottom:18px}body.is-library .site-ftr .fcol li{font-size:13px;line-height:1.6;padding-bottom:10px;color:#3a4356}body.is-library .site-ftr .fcol li a{color:inherit}body.is-library .site-ftr .fcol li a:hover{color:#2e4372}body.is-library .site-ftr .fbottom{border-top:1px solid var(--line);padding-top:24px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;letter-spacing:.08em}body.is-library .site-ftr .fbottom a{color:inherit}body.is-library .site-ftr .fbottom a:hover{color:#2e4372}@media(max-width: 1023px){body.is-library .site-ftr{--gut:max(20px, calc((100vw - 640px) / 2))}body.is-library .site-ftr{padding:20px var(--gut) 32px}body.is-library .site-ftr .fbrand{flex-direction:column;gap:20px;padding-bottom:36px}body.is-library .site-ftr .fbrand .logo .lg{width:132px;height:30px}body.is-library .site-ftr .fbrand p{text-align:left}body.is-library .site-ftr .fgrid{grid-template-columns:1fr;gap:0;padding:0 0 40px}body.is-library .site-ftr .fcol.wide{grid-column:auto}body.is-library .site-ftr .fcols{grid-template-columns:1fr;gap:0}body.is-library .site-ftr .fcol{border-bottom:1px solid var(--line)}body.is-library .site-ftr .fcol h4{min-height:0;padding:20px 0;display:flex;justify-content:space-between;align-items:center;cursor:pointer}body.is-library .site-ftr .fcol h4:after{content:"";width:12px;height:12px;background:linear-gradient(var(--sub), var(--sub)) center/12px 1px no-repeat,linear-gradient(var(--sub), var(--sub)) center/1px 12px no-repeat;transition:transform .3s}body.is-library .site-ftr .fcol.open h4:after{transform:rotate(45deg)}body.is-library .site-ftr .fcol .fbody{display:none;padding-bottom:12px}body.is-library .site-ftr .fcol.open .fbody{display:block}body.is-library .site-ftr .fcol li{font-size:14px;padding-bottom:12px}body.is-library .site-ftr .fbottom{flex-direction:column;gap:8px}}body.is-library .article-next__title{color:var(--lt-head)}body.is-library .article-next__card{border-color:var(--lt-line);background:#fff}body.is-library .article-next__card .name{color:var(--lt-head)}body.is-library .article-next__card .kind,body.is-library .article-next__card .desc{color:var(--lt-sub)}body.is-library .article-next__card .more{color:var(--lt-glow)}body.is-library .article-next__card:hover{border-color:var(--lt-glow)}
