:root{--navy:#1F3B73;--navy-dark:#16294f;--red:#C62828;--ink:#333333;--muted:#777777;--line:#dddddd;--soft:#f6f6f6}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Hiragino Kaku Gothic ProN,Hiragino Sans,Yu Gothic Medium,Noto Sans JP,sans-serif;color:var(--ink);background:#fff;line-height:1.85;font-size:15px;-webkit-font-smoothing:antialiased}html{scroll-behavior:smooth}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{max-width:1060px;margin:0 auto;padding:0 16px}.site-head{padding:22px 0 16px;border-bottom:1px solid var(--line)}.site-head .inner{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}.site-title{font-size:26px;font-weight:700;letter-spacing:.04em;color:var(--navy)}.site-desc{font-size:12px;color:var(--muted)}.gnav{background:var(--navy)}.gnav ul{display:flex;list-style:none;overflow-x:auto;-webkit-overflow-scrolling:touch}.gnav a{display:block;color:#fff;font-size:13.5px;padding:12px 18px;white-space:nowrap;border-right:1px solid rgba(255,255,255,.12)}.gnav li:first-child a{border-left:1px solid rgba(255,255,255,.12)}.gnav a:hover{background:var(--navy-dark)}.layout{display:flex;gap:34px;padding-top:30px;padding-bottom:50px}.main{flex:1;min-width:0}.sidebar{width:300px;flex-shrink:0}@media(max-width:860px){.layout{flex-direction:column;padding-top:22px}.sidebar{width:100%}}@media(max-width:560px){.prose table{display:block;overflow-x:auto}}.sec-title{font-size:18px;font-weight:700;letter-spacing:.02em;border-left:5px solid var(--navy);background:var(--soft);padding:9px 12px;margin-bottom:18px}.sec-title span{font-size:11px;color:var(--muted);font-weight:400;margin-left:10px}.pickup{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:36px}.p-card{border:1px solid var(--line);background:#fff}.p-card:hover .p-title{color:var(--navy);text-decoration:underline}.p-thumb{aspect-ratio:16/9;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;letter-spacing:.1em}.p-thumb.t-red{background:var(--red)}.p-thumb.t-gray{background:#4a5568}.p-body{padding:12px 13px 14px}.p-title{font-size:14px;font-weight:700;line-height:1.55}.p-meta{margin-top:8px;font-size:11.5px;color:var(--muted)}@media(max-width:860px){.pickup{grid-template-columns:1fr}}.post{display:flex;gap:16px;padding:18px 0;border-bottom:1px dotted #ccc}.post:first-of-type{padding-top:4px}.post-thumb{width:168px;aspect-ratio:16/10;flex-shrink:0;background:var(--soft);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--navy);font-size:12px;letter-spacing:.08em;text-align:center;padding:6px}.post-body{min-width:0}.post-cat{display:inline-block;font-size:10.5px;color:#fff;background:var(--navy);padding:2px 8px;margin-bottom:6px;letter-spacing:.05em}.post-cat.c-red{background:var(--red)}.post-title{font-size:16px;font-weight:700;line-height:1.55}.post:hover .post-title{color:var(--navy);text-decoration:underline}.post-excerpt{font-size:13px;color:var(--muted);margin-top:6px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.post-date{font-size:12px;color:var(--muted);margin-top:7px}@media(max-width:560px){.post{gap:12px}.post-thumb{width:108px;aspect-ratio:4/3;font-size:10.5px}.post-title{font-size:14px}.post-excerpt{display:none}}.empty-note{padding:30px 0;color:var(--muted);font-size:14px}.pagination{display:flex;gap:8px;justify-content:center;margin-top:30px}.pagination a,.pagination span{min-width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);font-size:13.5px;color:var(--ink);padding:0 10px}.pagination a:hover{border-color:var(--navy);color:var(--navy)}.pagination .current{background:var(--navy);color:#fff;border-color:var(--navy)}.widget{margin-bottom:34px}.w-title{font-size:14px;font-weight:700;letter-spacing:.03em;color:#fff;background:var(--navy);padding:8px 12px;margin-bottom:0}.w-body{border:1px solid var(--line);border-top:none;padding:16px 14px}.search-form{display:flex}.search-form input{flex:1;min-width:0;border:1px solid var(--line);padding:9px 10px;font-size:13px;font-family:inherit}.search-form button{border:none;background:var(--navy);color:#fff;padding:0 16px;font-size:13px;cursor:pointer;font-family:inherit}.profile{text-align:center}.profile img{width:110px;height:110px;border-radius:50%;object-fit:cover;object-position:50% 30%;margin:4px auto 12px}.profile .name{font-size:15px;font-weight:700;letter-spacing:.05em}.profile .role{font-size:11.5px;color:var(--muted);margin-bottom:10px}.profile p{font-size:12.5px;text-align:left;color:var(--ink);margin-bottom:12px}.sns-btn{display:block;text-align:center;font-size:13px;font-weight:700;padding:10px;margin-top:8px;border:1px solid var(--navy);color:var(--navy)}.sns-btn:hover{background:var(--navy);color:#fff}.sns-btn.fill{background:var(--red);border-color:var(--red);color:#fff}.sns-btn.fill:hover{background:#a51f1f;border-color:#a51f1f}.rank{list-style:none;counter-reset:rank}.rank li{counter-increment:rank;border-bottom:1px dotted #ccc}.rank li:last-child{border-bottom:none}.rank a{display:flex;gap:10px;padding:11px 0;align-items:flex-start}.rank a:hover .r-title{color:var(--navy);text-decoration:underline}.rank a:before{content:counter(rank);width:22px;height:22px;flex-shrink:0;margin-top:2px;background:var(--navy);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}.rank li:nth-child(1) a:before,.rank li:nth-child(2) a:before,.rank li:nth-child(3) a:before{background:var(--red)}.r-title{font-size:12.5px;line-height:1.6;font-weight:500}.cat-list{list-style:none}.cat-list li{border-bottom:1px dotted #ccc}.cat-list li:last-child{border-bottom:none}.cat-list a{display:flex;justify-content:space-between;padding:9px 2px;font-size:13px}.cat-list a:hover{color:var(--navy);text-decoration:underline}.cat-list .count{color:var(--muted);font-size:12px}.line-banner{display:block;background:var(--navy);color:#fff;text-align:center;padding:20px 14px}.line-banner .big{font-size:15px;font-weight:700;letter-spacing:.03em}.line-banner .small{font-size:11.5px;opacity:.85;margin-top:4px}.line-banner .fake-btn{display:inline-block;margin-top:12px;background:#fff;color:var(--navy);font-size:13px;font-weight:700;padding:9px 22px}.site-foot{background:var(--navy-dark);color:#fff;margin-top:20px}.foot-inner{padding:28px 16px 24px;text-align:center}.foot-nav{display:flex;justify-content:center;gap:6px 22px;flex-wrap:wrap;font-size:12.5px;margin-bottom:14px}.foot-nav a:hover{text-decoration:underline}.copy{font-size:11.5px;opacity:.7}.crumb{font-size:12px;color:var(--muted);margin-bottom:14px}.crumb a:hover{color:var(--navy);text-decoration:underline}.article{border:1px solid var(--line);background:#fff;padding:30px 34px 38px}@media(max-width:560px){.article{padding:22px 16px 28px;border-left:none;border-right:none;margin:0 -16px}}.article h1{font-size:26px;line-height:1.55;font-weight:700;margin:10px 0 14px}@media(max-width:560px){.article h1{font-size:21px}}.cat-tag{display:inline-block;font-size:11.5px;font-weight:700;color:#fff;background:var(--navy);padding:4px 12px}.pr-badge{display:inline-block;font-size:10.5px;font-weight:700;color:#8a6d1a;background:#fff3d6;border:1px solid #f0d98a;padding:3px 9px;margin-left:6px;vertical-align:middle}.byline{display:flex;align-items:center;gap:12px;font-size:12.5px;color:var(--muted);flex-wrap:wrap;padding-bottom:18px;border-bottom:1px solid var(--line)}.byline b{color:var(--ink);font-weight:700}.prose{font-size:15.5px;margin-top:24px}.prose p{margin:0 0 22px}.prose h2{font-size:20px;font-weight:700;line-height:1.5;margin:44px 0 18px;background:var(--soft);padding:12px 16px;border-left:5px solid var(--navy);scroll-margin-top:20px}.prose h3{font-size:17px;font-weight:700;margin:32px 0 12px;padding-bottom:8px;border-bottom:2px dashed #ccd4e0;color:var(--navy)}.prose ul,.prose ol{margin:0 0 22px;padding-left:24px}.prose li{margin-bottom:8px}.prose strong{font-weight:700;background:linear-gradient(transparent 65%,#ffe08a 65%);padding:0 2px}.prose blockquote{margin:0 0 22px;padding:14px 20px;background:var(--soft);border-left:5px solid var(--navy);font-weight:700;color:var(--navy)}.prose table{width:100%;border-collapse:collapse;margin:6px 0 26px;font-size:13.5px}.prose th,.prose td{padding:10px 13px;text-align:left;border:1px solid var(--line);vertical-align:top}.prose thead th{background:var(--navy);color:#fff;font-size:13px;font-weight:700;border-color:var(--navy)}.prose tbody tr:nth-child(2n){background:#fafbfd}.prose th:first-child{white-space:nowrap}.prose a{color:var(--navy);text-decoration:underline}.prose a:hover{color:var(--red)}.prose hr{border:none;border-top:1px dotted #ccc;margin:34px 0}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.src-note{font-size:12.5px;color:var(--muted);background:var(--soft);padding:10px 14px;margin:26px 0 0}.author-box{display:flex;gap:16px;align-items:flex-start;background:var(--soft);padding:20px;margin:38px 0 0}.author-box img{width:62px;height:62px;border-radius:50%;object-fit:cover;object-position:50% 30%;flex-shrink:0}.author-box h2{font-size:15px;font-weight:700;margin-bottom:5px}.author-box p{font-size:13px;color:var(--muted);margin:0;line-height:1.8}.author-box .fl{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}.author-box .fl a{display:inline-block;font-size:12px;font-weight:700;padding:6px 16px;color:#fff;background:var(--red)}.author-box .fl a.alt{background:var(--navy)}.related{margin-top:34px}.related .rh{font-size:17px;font-weight:700;margin-bottom:14px;border-left:5px solid var(--red);padding-left:10px}.rgrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:560px){.rgrid{grid-template-columns:1fr}}.rcard{border:1px solid var(--line);background:#fff}.rcard:hover h3{color:var(--navy);text-decoration:underline}.rcard .th{aspect-ratio:16/7;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;letter-spacing:.08em}.rcard .bd{padding:12px 14px 14px}.rcard .c{font-size:10.5px;font-weight:700;color:var(--red)}.rcard h3{font-size:13.5px;font-weight:700;line-height:1.5;margin:4px 0 0;color:var(--ink)}.rcard .d{font-size:11.5px;color:var(--muted);margin-top:8px}.page-body{border:1px solid var(--line);background:#fff;padding:30px 34px 38px}@media(max-width:560px){.page-body{padding:22px 16px 28px;border-left:none;border-right:none;margin:0 -16px}}.page-body h1{font-size:24px;line-height:1.55;font-weight:700;margin-bottom:22px}
