:root{--f-navy:#00205b;--f-blue:#003f8a;--f-blue2:#005bbb;--f-gold:#ffd700;--f-red:#e8002d;--f-blue-light:#dceeff;--f-blue-pale:#f0f7ff;--f-navy-shadow:rgba(0,32,91,0.12);--f-blue-shadow:rgba(0,63,138,0.30);--f-text:#333;--f-bg:#f5f5f5;--f-white:#fff}

/* ============================================================
   コピー禁止 / 画像保護
   ============================================================ */
body{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}
img{-webkit-user-drag:none!important;user-drag:none!important;pointer-events:none!important}
a img{pointer-events:auto!important}

/* ============================================================
   アクセシビリティ
   ============================================================ */
.skip-link{position:absolute!important;top:-9999px!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;z-index:9999}
.skip-link:focus{position:fixed!important;top:8px!important;left:8px!important;width:auto!important;height:auto!important;overflow:visible!important;clip:auto!important;white-space:normal!important;background:var(--f-navy,#00205b);color:#fff;padding:10px 16px;border-radius:4px;font-size:14px;font-weight:700;text-decoration:none;z-index:9999}
.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
a:focus,button:focus,[tabindex]:focus,input:focus,textarea:focus,select:focus{outline:none}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--f-gold);outline-offset:3px;border-radius:3px;box-shadow:0 0 0 5px rgba(255,215,0,0.25)}
.to-pagetop a:focus-visible{border-radius:50%;outline-offset:4px}
.ldb_menu-list li a:focus-visible{outline-offset:-2px;border-radius:0}

/* ============================================================
   リセット・グローバル
   ============================================================ */
html,body{margin:0!important;padding:0!important;box-sizing:border-box}
html,body,#wrapper,#container{max-width:100%;overflow-x:hidden;box-sizing:border-box}
html{background-color:#fff}
body{background-color:var(--f-bg);color:var(--f-text)}
body{font-family:"Noto Sans JP","NotoSansJP-Fallback-Win","NotoSansJP-Fallback-Mac","メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ヒラギノ角ゴシック","Hiragino Sans",sans-serif}
@font-face{font-family:'NotoSansJP-Fallback-Win';src:local('Meiryo'),local('メイリオ');size-adjust:103%;ascent-override:90%;descent-override:20%;line-gap-override:0%}
@font-face{font-family:'NotoSansJP-Fallback-Mac';src:local('Hiragino Sans'),local('ヒラギノ角ゴシック'),local('Hiragino Kaku Gothic Pro'),local('ヒラギノ角ゴ Pro W3');size-adjust:100%;ascent-override:88%;descent-override:18%;line-gap-override:0%}
html{scroll-behavior:smooth;touch-action:manipulation}
a{color:#1A0DAB;text-decoration:none}
a:visited{color:#7c3aed}
a:hover{text-decoration:underline}
a:active{color:#062576}
img{-webkit-user-drag:none;user-select:none;-webkit-user-select:none}
img{aspect-ratio:attr(width) / attr(height);height:auto}
ul.galleryThumbnail li{display:inline-block;margin:5px}

/* ============================================================
   レイアウト（wrapper / container / main / sidebar）
   ============================================================ */
#wrapper{padding-top:16px;margin:0!important}
#container{margin:0 auto;width:1100px;max-width:100%;box-sizing:border-box}
#content{position:relative;box-sizing:border-box;overflow:visible}
#main{width:66.2%;max-width:728px;box-sizing:border-box}
#sidebar{width:30.5%;max-width:336px;box-sizing:border-box;vertical-align:top}
body.sidebar-right #main{float:left}
body.sidebar-right #sidebar{float:right}
body.sidebar-left #main{float:right}
body.sidebar-left #sidebar{float:left}
@media screen and (min-width:769px){#sidebar{vertical-align:top}}

/* ============================================================
   ヘッダー
   ============================================================ */
#blog-header{margin-bottom:0;position:relative;background:linear-gradient(135deg,#00205b 0%,#003f8a 50%,#005bbb 100%);overflow:visible}
#blog-header-inner{position:static!important;display:none!important;padding:0!important}
#blog-header > img,#blog-header-image{display:block;width:100%;height:auto;max-height:280px;object-fit:cover;object-position:center center}
#blog-header div#blog-header-image{height:0!important;background:transparent;display:block;width:100%;min-height:0!important}
#blog-title,#blog-description{display:none!important}
#blog-title a{color:#fff;text-decoration:none}
#blog-header.show-image #blog-header-inner{position:absolute!important;top:0;left:0;right:0;bottom:0;display:flex!important;flex-direction:column;justify-content:flex-end;padding:16px 20px!important;background:linear-gradient(to top,rgba(0,0,0,0.5) 0%,transparent 60%)}
#blog-header.show-image #blog-header-image{height:auto;display:block}
#blog-header.hide-text #blog-header-inner{display:none!important}
#blog-header.hide-text #blog-header-image{margin:0}

/* ============================================================
   検索ボックス（ヘッダー）
   ============================================================ */
#blog-header-nav{position:static!important}
#blog-header-nav > ul{padding-right:0!important}
#header-search{position:static!important;display:block!important;width:100%!important;box-sizing:border-box!important;padding:10px 14px 12px!important;margin:0!important;background:var(--f-navy)!important;border-bottom:2px solid var(--f-gold)!important}
.header-search-inner{display:flex!important;align-items:center!important;width:100%!important;max-width:400px!important;margin:0!important;background:rgba(255,255,255,0.12)!important;border:1px solid rgba(255,255,255,0.35)!important;border-radius:6px!important;overflow:hidden!important;transition:background 0.2s,border-color 0.2s}
.header-search-inner:focus-within{background:rgba(255,255,255,0.2)!important;border-color:var(--f-gold)!important}
#header-search-input{flex:1!important;background:transparent!important;border:none!important;outline:none!important;color:#fff!important;font-size:14px!important;padding:8px 12px!important;font-family:inherit!important;min-width:0!important}
#header-search-input::placeholder{color:rgba(255,255,255,0.5)!important}
#header-search input[type="search"]::-webkit-search-cancel-button{filter:invert(1)}
.header-search-inner button{background:var(--f-gold)!important;border:none!important;color:var(--f-navy)!important;padding:8px 14px!important;cursor:pointer!important;font-size:15px!important;font-weight:bold!important;transition:background 0.2s,color 0.2s;flex-shrink:0!important;line-height:1!important}
.header-search-inner button:hover{background:#ffe54c!important}
@media (min-width:769px){#header-search{padding:8px 20px 10px!important}.header-search-inner{max-width:360px!important;margin:0 0 0 auto!important}}

/* ============================================================
   グローバルナビ
   ============================================================ */
.ldb_menu{position:relative;z-index:20;background-color:#00205b;border-bottom:3px solid #ffd700;margin-bottom:20px}
.ldb_menu-list{position:relative;list-style:none;margin:0;padding:0}
.ldb_menu-list::after{content:"";display:block;clear:both}
.ldb_menu-list li{float:left;list-style:none}
.ldb_menu-list li a{padding:14px 18px;line-height:1.4;display:block;font-size:14px;font-weight:bold;color:#fff;text-decoration:none;transition:background-color 0.15s ease}
.ldb_menu-list .ldb_menu-item-current,.ldb_menu-list li a:hover{background-color:#ffd700;color:#00205b}
.nav-scrollable{position:relative}
.nav-scrollable::after{content:"";position:absolute;top:0;right:0;width:40px;height:100%;background:linear-gradient(to right,transparent,var(--f-navy,#00205b));pointer-events:none;z-index:10}
@media (min-width:769px){.nav-scrollable::after{display:none}}

/* ============================================================
   記事カード（article / article-inner / article-thumbnail / article-body-col）
   ============================================================ */
.article{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:12px!important;padding:0;position:relative;transition:box-shadow 0.2s ease,transform 0.18s ease;cursor:pointer;will-change:transform;overflow:hidden!important;box-shadow:0 2px 6px rgba(0,32,91,0.06)}
.article:last-child{margin-bottom:0!important}
.article:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,32,91,0.14)}
.article-body::before,.article-body-inner::before,.article-inner::before,.entry-content::before,.article::before,.hentry::before{content:none!important;display:none!important}

body div.article-inner,body .article .article-inner,div#main div.article-inner,div#main-inner div.article-inner,.article-inner{display:flex!important;flex-direction:row!important;align-items:stretch!important;flex-wrap:nowrap!important;gap:0!important;padding:0!important;margin:0!important;height:auto!important;min-height:0!important;max-height:none!important;width:100%!important;max-width:100%!important;overflow:hidden!important;box-sizing:border-box!important;background:#ffffff;transition:background 0.18s ease;position:relative!important;float:none!important}
body div.article-inner:hover,.article-inner:hover{background:#f8fbff}

.article-thumbnail{flex:0 0 130px!important;width:130px!important;min-width:130px!important;max-width:130px!important;height:130px!important;min-height:130px!important;max-height:130px!important;margin:0!important;padding:0!important;overflow:hidden!important;background:#ebf3fb;align-self:stretch!important;display:block!important;float:none!important;position:relative!important}
.article-thumbnail a{display:block!important;width:100%!important;height:100%!important;line-height:0}
.article-thumbnail-img,.article-thumbnail img{width:100%!important;height:130px!important;min-height:130px!important;max-width:100%!important;object-fit:cover!important;object-position:center center!important;display:block!important;float:none!important;margin:0!important;padding:0!important;transition:transform 0.3s ease,opacity 0.2s ease}
.article-inner:hover .article-thumbnail-img,.article-inner:hover .article-thumbnail img{transform:scale(1.06);opacity:0.9}
.article-thumbnail-placeholder{flex:0 0 130px!important;width:130px!important;min-width:130px!important;max-width:130px!important;height:130px!important;min-height:130px!important;max-height:130px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:linear-gradient(135deg,#edf3fa,#dceeff);color:#6696c8;font-size:36px;flex-shrink:0!important;float:none!important;margin:0!important;padding:0!important}

html body #main div.article div.article-inner,html body #main .hentry div.article-inner,html body #main-inner div.article div.article-inner,html body #container div.article div.article-inner{display:flex!important;flex-direction:row!important;align-items:flex-start!important;flex-wrap:nowrap!important;gap:0!important;padding:0!important;height:auto!important;min-height:0!important;max-height:none!important;width:100%!important;max-width:100%!important;float:none!important;overflow:hidden!important;box-sizing:border-box!important;position:static!important}
html body #main div.article figure.article-thumbnail,html body #main div.article div.article-thumbnail,html body #main .hentry figure.article-thumbnail,html body #main .hentry div.article-thumbnail,html body #main-inner div.article figure.article-thumbnail,html body #main-inner div.article div.article-thumbnail{flex:0 0 130px!important;width:130px!important;min-width:130px!important;max-width:130px!important;height:130px!important;min-height:130px!important;max-height:130px!important;overflow:hidden!important;margin:0!important;padding:0!important;float:none!important;display:block!important;align-self:stretch!important;flex-shrink:0!important}
html body #main div.article figure.article-thumbnail img,html body #main div.article figure.article-thumbnail .article-thumbnail-img,html body #main div.article div.article-thumbnail img,html body #main div.article div.article-thumbnail .article-thumbnail-img,html body #main .hentry figure.article-thumbnail img,html body #main .hentry div.article-thumbnail img{width:100%!important;height:130px!important;min-height:130px!important;max-width:none!important;object-fit:cover!important;object-position:center center!important;display:block!important;float:none!important;margin:0!important}
html body #main div.article div.article-thumbnail-placeholder,html body #main .hentry div.article-thumbnail-placeholder,html body #main-inner div.article div.article-thumbnail-placeholder{flex:0 0 130px!important;width:130px!important;min-width:130px!important;max-width:130px!important;height:130px!important;min-height:130px!important;max-height:130px!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:40px!important;float:none!important;margin:0!important;padding:0!important;flex-shrink:0!important;background:#dceeff!important}
html body #main div.article div.article-body-col,html body #main .hentry div.article-body-col,html body #main-inner div.article div.article-body-col{flex:1 1 0%!important;min-width:0!important;width:auto!important;max-width:100%!important;height:auto!important;display:flex!important;flex-direction:column!important;float:none!important;overflow:hidden!important;box-sizing:border-box!important}

#main div.article-inner,#main-inner div.article-inner,#container div.article-inner,div.article div.article-inner{display:flex!important;flex-direction:row!important;align-items:stretch!important;flex-wrap:nowrap!important;height:auto!important;min-height:0!important;max-height:none!important;padding:0!important;float:none!important}
#main figure.article-thumbnail,#main div.article-thumbnail,#main div.article-thumbnail-placeholder,div.article figure.article-thumbnail,div.article div.article-thumbnail,div.article div.article-thumbnail-placeholder{flex:0 0 130px!important;width:130px!important;min-width:130px!important;max-width:130px!important;height:130px!important;min-height:130px!important;max-height:130px!important;flex-shrink:0!important;float:none!important;display:block!important;overflow:hidden!important}
#main figure.article-thumbnail img,#main div.article-thumbnail img,#main div.article-thumbnail .article-thumbnail-img,div.article figure.article-thumbnail img,div.article div.article-thumbnail img,div.article div.article-thumbnail .article-thumbnail-img,figure.article-thumbnail .article-thumbnail-img,div.article-thumbnail .article-thumbnail-img{width:100%!important;height:130px!important;min-height:130px!important;max-width:none!important;object-fit:cover!important;object-position:center center!important;display:block!important;float:none!important;margin:0!important}
#main div.article-body-col,div.article div.article-body-col{flex:1 1 0%!important;min-width:0!important;width:auto!important;height:auto!important;float:none!important;display:flex!important;flex-direction:column!important}

.article-body-col{flex:1 1 0!important;min-width:0!important;width:auto!important;max-width:none!important;height:auto!important;display:flex!important;flex-direction:column!important;padding:12px 16px 10px!important;gap:8px;float:none!important;overflow:hidden!important;box-sizing:border-box!important}
.article-body-col:not(.page-article-body .article-body-col):not(.page-article .article-body-col),
.article-body:not(.article-page-body),
.article-body-inner:not(.article-page-body .article-body-inner){
  max-width:100%!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  min-width:0!important
}
.article-page-body,
.article-page-body .article-body-inner,
.page-article .article-body,
.page-article .article-body-inner,
.page-article .article-body-col,
body.page-article .article-body,
body.page-article .article-body-inner{
  overflow:visible!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  min-width:0!important
}
/* v9.29：詳細度競合対策 — 118行目の html body #main div.article div.article-body-col に勝つ */
html body #main div.article div.article-body-col.article-page-body,
html body #main div.article div.article-body-inner,
html body #main div.article .article-page-body,
html body #main div.article .article-page-body .article-body-inner,
html body #main .hentry div.article-body-col.article-page-body,
html body #main .page-article div.article-body-col,
html body #main .page-article .article-body-inner,
html body #main-inner div.article div.article-body-col.article-page-body,
html body #main-inner div.article .article-page-body,
html body #main-inner div.article .article-page-body .article-body-inner,
body.page-article #main div.article div.article-body-col,
body.page-article #main div.article .article-body-inner,
body.page-article #main-inner div.article div.article-body-col,
body.page-article #main-inner div.article .article-body-inner{
  overflow:visible!important
}

.article-header{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;border:none;background:none}
.article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:11px;color:var(--f-text-sub,#5a6480);line-height:1.4}
.article-meta-date .article-date{display:inline-flex;align-items:center;gap:3px;color:#888;font-size:11px}
.article-meta-category{display:flex;align-items:center;gap:4px}
.article-meta-comment a{display:inline-flex;align-items:center;gap:3px;color:#888;text-decoration:none;font-size:11px;font-weight:600;transition:color 0.15s ease}
.article-meta-comment a:hover{color:var(--f-blue)}
.comment-count{font-weight:700;color:var(--f-blue)}

.article-category-list{display:flex;flex-wrap:wrap;gap:4px;list-style:none;margin:0;padding:0}
.article-category-link{display:inline-block;padding:3px 9px;background:#002060;color:#fff;border-radius:3px;font-size:11px;font-weight:700;text-decoration:none;transition:background 0.15s ease;white-space:nowrap;letter-spacing:0.03em}
.article-category-link:hover{background:var(--f-blue)}
@media screen and (max-width:768px){.article-category-link{font-size:10px;padding:2px 6px}}

.article-title,
#main .article-title,
div.article .article-title,
.hentry .article-title{
  margin:0!important;
  padding:0!important;
  border:none!important;
  background:none!important;
  font-size:17px!important;
  font-weight:800!important;
  line-height:1.5!important;
  text-wrap:balance;
  color:#00205b!important;
  letter-spacing:-0.01em
}
.article-title a,
#main .article-title a,
div.article .article-title a{
  color:#00205b!important;
  text-decoration:none!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:3!important;
  overflow:hidden!important;
  transition:color 0.15s ease;
  font-weight:800!important
}
.article-title a:visited{color:#444!important}
.article-title a:hover{color:var(--f-blue)!important;text-decoration:underline!important}
.article-title.new-entry::after{content:"NEW";display:inline-block;background:var(--f-red);color:#fff;font-size:10px;font-weight:bold;padding:2px 6px;border-radius:3px;margin-left:8px;vertical-align:middle;letter-spacing:0.05em;animation:newBadgePulse 1.8s ease-in-out infinite}
@keyframes newBadgePulse{0%,100%{opacity:1}50%{opacity:0.6}}

body:not(.page-article) .article-body,
body:not(.page-article) #main .article-body,
body:not(.page-article) div.article .article-body,
body:not(.page-article) .hentry .article-body{
  margin:0!important;
  flex:1 1 auto;
  overflow:hidden;
  min-width:0;
  background:none!important;
  color:#333!important;
  padding:0!important
}
/* カード一覧用：個別記事ページを除外 */
body:not(.page-article) .article-body-inner,
body:not(.page-article) #main .article-body-inner,
body:not(.page-article) div.article .article-body-inner,
body:not(.page-article) .hentry .article-body-inner,
body:not(.page-article) .article-body .article-body-inner{
  font-size:12px!important;
  line-height:1.75!important;
  color:#555!important;
  background:none!important;
  background-color:transparent!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  padding:0!important
}
/* 全称セレクター削除済み（v9.56 個別記事崩れ修正） */
.article-body-ellipsis{color:var(--f-text-mute,#999)}
.article-body-inner table{max-width:100%!important;width:auto!important;table-layout:auto!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important;float:none!important}
.article-body-inner table td,.article-body-inner table th{max-width:100%!important;box-sizing:border-box!important;text-align:center!important;vertical-align:middle!important}
.article-body-inner img,.article-body-inner video,.article-body-inner embed,.article-body-inner object{max-width:100%!important;height:auto!important;box-sizing:border-box!important;display:block!important;margin-left:auto!important;margin-right:auto!important;float:none!important}
.article-body-inner iframe:not([src*="twitter"]):not([src*="x.com"]):not([id*="twitter"]){max-width:100%!important;height:auto!important;box-sizing:border-box!important;display:block!important;margin-left:auto!important;margin-right:auto!important;float:none!important}
.article-body-inner iframe[src*="twitter"],.article-body-inner iframe[src*="x.com"],.article-body-inner iframe[id*="twitter"]{max-width:100%!important;box-sizing:border-box!important;display:block!important;margin-left:auto!important;margin-right:auto!important;float:none!important;height:unset}

.article-body-more{margin-top:auto;padding-top:4px;background:none!important}
.article-read-more{display:inline-flex!important;width:auto!important;max-width:fit-content!important;align-items:center;gap:5px;padding:5px 14px;background:#fff!important;color:var(--f-navy)!important;border-radius:4px;font-size:12px;font-weight:700;text-decoration:none!important;transition:background 0.18s ease,color 0.18s ease,transform 0.15s ease;letter-spacing:0.04em;border:2px solid var(--f-navy)!important;box-sizing:border-box}
.article-read-more:hover{background:var(--f-navy)!important;color:#fff!important;transform:translateY(-1px)!important}

.article-share{display:flex;gap:6px;align-items:center;padding:6px 0 2px;flex-wrap:wrap;border-top:1px solid #eef2f8;margin-top:4px}
.share-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:4px;font-size:11px;font-weight:700;text-decoration:none!important;transition:opacity 0.2s,transform 0.15s;white-space:nowrap;letter-spacing:0.03em}
.share-btn:hover{opacity:0.82;transform:translateY(-1px)}
.share-x{background:#111;color:#fff!important}
.share-line{background:#06c755;color:#fff!important}
.share-btn .fa-x-twitter,.share-btn .fa-line{font-size:12px}
@media screen and (max-width:768px){.share-btn{font-size:10px;padding:4px 10px}}

.article-inner{position:relative!important}
.article-card-link::after{content:"";position:absolute;inset:0;z-index:1;cursor:pointer}
.article-meta-category,.article-meta-comment,.article-comment-link,.article-category-link,.article-share,.share-btn,.article-body-more,.article-read-more{position:relative;z-index:2}
.article-inner:hover .article-title-link{color:var(--f-blue)!important;text-decoration:underline}

.article-first-image{display:block!important;float:none!important;width:100%!important;max-width:100%!important;height:auto!important;position:static!important;margin:0!important;box-sizing:border-box!important}
.article-first-image img{display:block!important;width:100%!important;max-width:100%!important;height:auto!important;float:none!important}
.article-first-image,.article-first-image img{aspect-ratio:16/9;width:100%;height:auto;object-fit:cover}

.article-header-inner{margin-bottom:0;padding:4px 10px;background:#f0f7ff;display:flow-root}
.article-header-top{display:flow-root}
.article-header-date{padding-left:20px;margin:4px 10px 4px 0;font-size:12px;line-height:1.4;float:right;background:url(https://parts.blog.livedoor.jp/img/usr/default_2012/common/icon_date.png) no-repeat left 50%;color:#666}
.article-header-category{padding-left:20px;margin:4px 10px 4px 0;font-size:12px;line-height:1.4;float:left;background:url(https://parts.blog.livedoor.jp/img/usr/default_2012/common/icon_category.png) no-repeat left 50%}
.article-header-category li{list-style:none}
.article-header-category dt{display:none}
.article-header-category dd{padding:0 5px;float:left}
.article-header-category dd a{background:#e8f0ff;border-radius:3px;padding:1px 6px;font-size:11px;color:#003f8a;transition:background 0.15s ease}
.article-header-category dd a:hover{background:#003f8a;color:#fff;text-decoration:none}
.t_b{font-weight:bold}

/* 旧 .article-title スタイル削除済み（v9.56 カードデザイン刷新） */

/* 旧 .article-body スタイル削除済み（v9.56） */
.article-body-inner h1,.article-body-inner h2,.article-body-inner h3{border-bottom:3px solid #003f8a;padding-bottom:4px;margin:1.2em 0 0.6em;text-wrap:balance}
.article-body-inner h4{border-bottom:1px solid #ccc;padding-bottom:2px;margin:1em 0 0.5em;text-wrap:balance}
.article-body-inner h1{font-size:1.5em;color:var(--f-navy);border-bottom:3px solid var(--f-blue);padding-bottom:6px;margin:1.4em 0 0.7em;text-wrap:balance}
.article-body-inner h2{font-size:1.3em;color:var(--f-blue);border-bottom:2px solid var(--f-blue);padding-bottom:4px;margin:1.2em 0 0.6em;text-wrap:balance}
.article-body-inner h3{font-size:1.1em;color:var(--f-navy);border-bottom:1px solid #a8c4e0;padding-bottom:3px;margin:1em 0 0.5em;text-wrap:balance}
.article-body-inner h4{font-size:1em;color:#444;border-bottom:1px dashed #ccc;padding-bottom:2px;margin:1em 0 0.5em;text-wrap:balance}
.article-body-inner strong,.article-body-inner b{color:var(--f-navy);font-weight:700;background:rgba(255,215,0,0.20);padding:0 2px;border-radius:2px}
.article-body-inner em,.article-body-inner i{color:#002d6b;font-style:italic;font-weight:500}
.article-body-inner blockquote{background-color:#f0f7ff;border-left:4px solid var(--f-blue);border-bottom:1px solid rgba(0,63,138,0.20);margin:0.8em 0;padding:12px 16px 12px 24px;color:#333;border-radius:0 6px 6px 0;position:relative;font-size:15px;line-height:1.8}
.article-body-inner blockquote::before{content:"引用";position:absolute;top:-1px;left:-1px;font-size:10px;font-weight:bold;color:#fff;background:var(--f-blue);padding:1px 6px;border-radius:0 0 4px 0;letter-spacing:0.05em;line-height:1.8}
.article-body-inner img.pict{border:3px solid #e8e8e8;box-shadow:0 2px 6px rgba(0,0,0,0.12);height:auto;margin:0.8em 6px 1.2em!important;max-width:98%}
.article-body-inner img,.article-body-inner img.pict{aspect-ratio:attr(width) / attr(height);height:auto;max-width:100%}
.article-body-more iframe{max-width:100%}
div.hentry div.entry-content{padding:5px;overflow:hidden}

div.entry-content p.more a{display:block;padding:12px 5px;background:linear-gradient(to right,var(--f-blue) var(--grad-pos,0%),var(--f-blue2) calc(var(--grad-pos,0%) + 60%));border:none;border-radius:4px;text-align:center;font-size:15px;font-weight:bold;line-height:1.6;color:var(--f-white);transition:--grad-pos 0.4s ease,transform 0.15s ease,box-shadow 0.15s ease;box-shadow:0 3px 8px var(--f-blue-shadow);letter-spacing:0.05em;will-change:transform}
div.entry-content p.more a::after{content:" ▶";font-size:12px;display:inline-block;transition:transform 0.2s ease}
p.more a:hover{background:linear-gradient(to right,#002a6e,#003f8a);transform:translateY(-1px);box-shadow:0 5px 14px rgba(0,63,138,0.4);text-decoration:none}
p.more a:hover::after{transform:translateX(4px)}
@property --grad-pos{syntax:"*";inherits:false;initial-value:0%}
@property --btn-glow{syntax:"*";inherits:false;initial-value:transparent}
.to-pagetop a{transition:opacity 0.15s ease,transform 0.15s ease,box-shadow 0.15s ease,--btn-glow 0.25s ease;box-shadow:0 3px 10px rgba(0,32,91,0.40),0 0 0 0 var(--btn-glow)}
.to-pagetop a:hover{--btn-glow:rgba(255,215,0,0.60);box-shadow:0 6px 18px rgba(0,32,91,0.5),0 0 12px 3px var(--btn-glow)}

.article-footer{border-top:1px dashed #ddd;padding:0 16px}
.article-meta{padding:12px 0 20px}
.article-social-btn{background:linear-gradient(to right,#f0f7ff,#fafcff);border-top:2px solid #dceeff;border-bottom:none;padding:12px 16px;border-radius:0 0 4px 4px;position:relative}
.article-social-btn::before{content:"📣 この記事をシェアする";display:block;font-size:12px;font-weight:bold;color:#003f8a;margin-bottom:8px;letter-spacing:0.04em}
.article-meta{padding:10px 16px 18px;background:#fafafa;border-top:1px dashed #e0e0e0}

body.page-article .article{border:none!important;margin-bottom:0!important;padding:0!important;background-color:transparent!important;box-shadow:none!important;border-radius:0!important;transform:none!important}
body.page-article .article-title{max-height:none}
body.page-article .article-header,body.page-article .article-body{margin-left:0}
body.page-article .article-header{border-bottom:1px dashed #ccc;padding-bottom:12px}

@counter-style baseball{system:cyclic;symbols:"⚾";suffix:" "}
.article-body-inner ul{list-style:baseball;padding-left:1.6em}
.article-body-inner ul li{padding-left:0.2em;margin-bottom:0.3em;line-height:1.75}
.article-body-inner ul ul{list-style:disc;padding-left:1.4em}
.article-body-inner ul ul ul{list-style:circle}

:is(.article-body-inner,.article-sub-category,.article-sub-popular,.sidewrapper .side) a{position:relative;text-decoration:none}
:is(.article-body-inner,.article-sub-category,.article-sub-popular,.sidewrapper .side) a::after{content:"";position:absolute;bottom:-1px;left:0;width:0;height:1px;background:currentColor;transition:width 0.2s ease}
:is(.article-body-inner,.article-sub-category,.article-sub-popular,.sidewrapper .side) a:hover::after{width:100%}

/* ============================================================
   コメント
   ============================================================ */
.comment-date,.ping-blog-name,.ping-date{border-left:1px solid #bbb;color:#888}
.comment-body{margin-left:0;color:#222}
.ping-excerpt{color:#555;margin-left:16px}
#mypopup{display:none;position:absolute;border:1px solid #bbb;padding:5px 8px 8px;font-size:12px;color:#111;background-color:#ffc;list-style-type:none;line-height:1.4;text-align:left;max-width:750px;min-width:250px;box-shadow:3px 3px 6px rgba(0,0,0,0.15);border-radius:3px;z-index:100}
#mypopup li.comment-date,#mypopup li.comment-author{display:inline;color:#666}
.commentList{list-style:none;padding:0;margin:0}
.commentList li{padding:10px 14px;border-bottom:1px solid #eef2f8;font-size:14px;line-height:1.75;position:relative;transition:background 0.12s ease}
.commentList li:nth-child(odd){background:#fff}
.commentList li:nth-child(even){background:#f5f9ff}
.commentList li:hover{background:#fffae8}
.commentList li:first-child{border-top:2px solid var(--f-blue)}
.commentList li:last-child{border-bottom:2px solid #c8d8ec}
.commentList li{box-shadow:inset 3px 0 0 var(--id-color,transparent)}
.comment-num{display:inline-block;min-width:28px;font-size:11px;font-weight:bold;color:var(--f-white);background:var(--f-blue);padding:1px 6px;border-radius:3px;margin-right:6px;vertical-align:middle;letter-spacing:0.03em}
.comment-author,.commentList .comment-author{font-weight:bold;color:var(--f-navy);margin-right:8px}
.comment-date{font-size:11px;color:#999;border-left:none;padding-left:0;display:inline}
.comment-body{margin:4px 0 0 0;color:#222;line-height:1.8}
.comment-reply .comment-body{color:#1a2640}
.comment-id{display:inline-block;font-size:10px;font-weight:700;color:#6b7a99;background:#eef2fb;border:1px solid #d0d8ef;border-radius:3px;padding:1px 6px;margin-right:6px;vertical-align:middle;letter-spacing:.03em;font-family:'Courier New',monospace;cursor:default}
.comment-replies{list-style:none;margin:0;padding:0 0 0 20px;position:relative}
.comment-replies::before{content:'';position:absolute;left:7px;top:0;bottom:6px;width:2px;background:rgba(0,63,138,.25);border-radius:1px}
.comment-replies>li.comment-reply{position:relative;margin:0;padding:8px 12px;border-bottom:1px solid rgba(0,63,138,.08);font-size:13.5px;line-height:1.8;color:#1a2640;background:#f0f5ff;transition:background .12s ease;box-shadow:inset 3px 0 0 var(--id-color,transparent)}
.comment-replies>li.comment-reply:last-child{border-bottom:none}
.comment-replies>li.comment-reply:hover{background:#e6eeff}
.comment-replies>li.comment-reply::before{content:'';position:absolute;left:-13px;top:18px;width:11px;height:2px;background:rgba(0,63,138,.3)}
.comment-replies>li.comment-reply::after{content:none}
.comment-reply .comment-header::before{content:'↳';font-size:13px;font-weight:900;color:rgba(0,63,138,.5);margin-right:4px;vertical-align:middle}
.comment-replies .comment-replies{padding-left:16px}
.comment-replies .comment-replies::before{background:rgba(0,63,138,.15)}
.comment-replies .comment-replies>li.comment-reply{background:#e8f0ff;font-size:13px}
.comment-replies .comment-replies>li.comment-reply:hover{background:#dbe6ff}
.comment-replies>li.comment-reply:nth-child(odd),.comment-replies>li.comment-reply:nth-child(even){background:#f0f5ff}
.comment-replies>li.comment-reply:nth-child(odd):hover,.comment-replies>li.comment-reply:nth-child(even):hover{background:#e6eeff}
.comment-is-new{background:#fffef0!important;border-left:3px solid #e84040!important}
.comment-is-new:hover{background:#fffbe8!important}
.comment-reply.comment-is-new{background:#1e2d1e!important;border-left:3px solid #e84040!important}
.comment-reply.comment-is-new:hover{background:#253525!important}
.comment-reply.comment-is-new .comment-body{color:#d8ecd8!important}
.comment-new-badge{display:inline-block;font-size:9px;font-weight:800;letter-spacing:.08em;color:#fff;background:#e84040;border-radius:3px;padding:1px 5px;vertical-align:middle;margin-left:4px;line-height:1.5;text-transform:uppercase}
.comment-new-count{display:inline-block;font-size:11px;font-weight:700;color:#ffd700;background:rgba(255,255,255,.15);border:1px solid rgba(255,215,0,.5);border-radius:3px;padding:1px 7px;margin-left:8px;vertical-align:middle;letter-spacing:.03em}
.comment-folded{display:none}
.comment-show-more{text-align:center;padding:12px 0 8px;border-top:1px dashed #d0e0f0;background:#f4f8fd}
.comment-show-more-btn{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--f-blue,#003f8a);background:#fff;border:1px solid #b8d0ec;border-radius:20px;padding:6px 18px;cursor:pointer;transition:background .15s,border-color .15s,color .15s;letter-spacing:.02em}
.comment-show-more-btn:hover{background:var(--f-blue,#003f8a);border-color:var(--f-blue,#003f8a);color:#fff}
.comment-show-more-btn .comment-more-count{font-weight:700}
.article-comments,#comments{margin-top:16px;border:1px solid #e0e8f4!important;border-radius:6px;overflow:hidden;background:#f8fbff!important}
.article-comments h3,#comments h3,.comments-title{font-size:14px;font-weight:bold;color:var(--f-white);background:linear-gradient(to right,var(--f-navy),var(--f-blue));padding:8px 14px;margin:0;letter-spacing:0.04em}
.comment-form{background:#f8fbff;border-top:2px dashed #c8ddf0;padding:14px 16px}
.comment-form input[type="text"],.comment-form input[type="email"],.comment-form textarea{width:100%;box-sizing:border-box;border:1px solid #c0d4ea;border-radius:4px;padding:8px 10px;font-size:14px;font-family:inherit;transition:border-color 0.15s ease,box-shadow 0.15s ease}
.comment-form input[type="text"]:focus-visible,.comment-form input[type="email"]:focus-visible,.comment-form textarea:focus-visible{border-color:var(--f-blue);box-shadow:0 0 0 3px rgba(0,63,138,0.15);outline:none}
.comment-form input[type="submit"]{background:linear-gradient(to right,var(--f-blue),var(--f-blue2));color:var(--f-white);border:none;padding:9px 24px;border-radius:4px;font-size:14px;font-weight:bold;cursor:pointer;transition:opacity 0.15s ease,transform 0.15s ease;touch-action:manipulation}
.comment-form input[type="submit"]:hover{opacity:0.88;transform:translateY(-1px)}
.comment-form input[type="submit"]:focus-visible{outline:3px solid var(--f-gold);outline-offset:3px}
#comment-form-tools .facemark{display:none!important}
#comment-form-tools .rating,#comment-form-tools .rating-value,#comment-form-tools .rating-value-v2,#comment-form-tools .rating-icon,#comment-form-tools .rating-icon-v2{display:none!important}
#comment-form-tools .memorize,.comment-form .remember,.comment-form label[for*="remember"],.comment-form input[name="remember"],.comment-form .save-info,.comment-form .remember-me,.comment-form .check-remember,#comment-form .remember_check,#comment-form .save_info{display:none!important}

.fk-anchor{color:var(--f-blue);font-weight:700;text-decoration:none;border-bottom:1px dashed var(--f-blue);cursor:pointer;transition:color .1s}
.fk-anchor:hover{color:var(--f-navy);border-bottom-style:solid}
#fk-anchor-popup{display:none;position:absolute;z-index:9999;width:320px;max-width:calc(100vw - 24px);background:#fff;border:1px solid #c8d8ef;border-radius:8px;box-shadow:0 6px 24px rgba(0,32,91,.18);overflow:hidden;pointer-events:auto;animation:fk-popup-in .12s ease}
@keyframes fk-popup-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
.fk-popup-header{background:linear-gradient(to right,var(--f-navy),var(--f-blue));padding:6px 12px;font-size:11px;color:#fff;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.fk-popup-header .comment-num{background:rgba(255,255,255,.25);color:#fff;font-size:10px}
.fk-popup-header .comment-author{color:#ffd700;font-size:11px}
.fk-popup-header .comment-id{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.3);color:#e0eaff;font-size:10px}
.fk-popup-header .comment-date{color:rgba(255,255,255,.7);font-size:10px;border-left:none}
.fk-popup-body{padding:10px 14px;font-size:13px;line-height:1.75;color:#333;max-height:160px;overflow-y:auto}

/* ============================================================
   サイドバー・相互RSS
   ============================================================ */
.sidewrapper:first-child{padding-top:0}
.sidewrapper{font-size:13px;overflow:visible;padding:16px 0;position:relative}
.sidewrapper .sidetitle{border-bottom:3px solid #003f8a;color:#00205b;font-size:14px;font-weight:bold;line-height:1.2;margin-bottom:12px;padding:7px 10px 7px 12px;background:linear-gradient(to right,#dceeff,#f8fbff);border-left:4px solid #ffd700;border-radius:0 3px 0 0;display:flex;align-items:center;gap:6px}
.sidewrapper .sidetitle::before{content:"⚾";font-size:13px;flex-shrink:0}
.sidewrapper .sidetitle a{color:#00205b}
.sidewrapper .side .sidebody{line-height:1.6;padding:4px 0;border-bottom:1px dashed #ddd}
.sidewrapper .side .sidebody:last-child{border-bottom:0}
.sidewrapper .side .sidebody.category-child{padding-left:12px}
/* 相互RSS（.rss-blogroll）v9.58a リニューアル・高さ制限付き */
.blogroll-ad-text,.blogroll-ad-img,.blogroll-ad-default{display:none!important}
/* ダークテーマ上書き防止：最高詳細度で白背景を強制 */
html body .rss-blogroll .blogroll-channel{background:#ffffff!important;color:#00205b!important}
html body .rss-blogroll .blogroll-channel .blogroll-list{background:#ffffff!important;color:#00205b!important}
html body .rss-blogroll .blogroll-channel .blogroll-list a{color:#00205b!important}
html body .rss-blogroll .blogroll-channel-title{background:linear-gradient(135deg,#00205b,#005bbb)!important;color:#fff!important}
html body .rss-blogroll .blogroll-channel-title a{color:#fff!important}
.rss-blogroll:after{content:none;display:none}
.rss-blogroll{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:12px;width:100%;box-sizing:border-box;margin:0 0 20px 0;padding:16px!important;border:none!important;background:#f0f4fa!important;border-radius:8px;overflow:visible}
.rss-blogroll .blogroll-channel{float:none!important;display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;min-width:0!important;margin:0!important;padding:0!important;height:280px!important;max-height:280px!important;overflow:hidden!important;background:#ffffff!important;border:1px solid rgba(0,32,91,0.14)!important;border-radius:8px!important;box-shadow:0 2px 8px rgba(0,32,91,0.06)!important;box-sizing:border-box!important;flex:none!important;font-size:12px!important;scrollbar-width:thin;scrollbar-color:#003f8a #dceeff}
.rss-blogroll .blogroll-channel ul,.rss-blogroll .blogroll-channel ol{overflow-y:auto!important;flex:1 1 auto!important;min-height:80px!important;margin:0!important;padding:0!important;list-style:none!important;scrollbar-width:thin;scrollbar-color:#003f8a #dceeff}
.rss-blogroll .blogroll-channel-title,.blogroll-channel-title{display:flex!important;align-items:center!important;gap:6px;list-style-type:none!important;background:linear-gradient(135deg,#00205b 0%,#005bbb 100%)!important;background-image:none!important;color:#fff!important;font-size:12px!important;font-weight:700;padding:7px 12px!important;border-radius:8px 8px 0 0;border-bottom:none;margin:0;line-height:1.4;text-align:left!important}
.rss-blogroll .blogroll-channel-title a{color:#fff!important;text-decoration:none;font-size:12px!important;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rss-blogroll .blogroll-channel-title a:hover{text-decoration:underline;opacity:0.9}
.rss-blogroll .blogroll-channel .blogroll-list,.rss-blogroll .blogroll-list{display:flex!important;flex-direction:row!important;align-items:flex-start!important;gap:6px!important;padding:6px 12px!important;margin:0!important;list-style-type:none!important;border-bottom:1px solid rgba(0,32,91,0.07)!important;line-height:1.5!important;font-size:12px!important;text-align:left!important;background:#fff;transition:background 0.15s}
.rss-blogroll .blogroll-channel .blogroll-list:last-child,.rss-blogroll .blogroll-list:last-child{border-bottom:none!important;border-radius:0 0 8px 8px}
.rss-blogroll .blogroll-channel .blogroll-list:hover,.rss-blogroll .blogroll-list:hover{background:rgba(0,63,138,0.04)!important}
.rss-blogroll .blogroll-channel .blogroll-list img,.rss-blogroll .blogroll-list img{display:inline-block!important;flex-shrink:0!important;width:6px!important;height:6px!important;min-width:6px!important;min-height:6px!important;border-radius:50%!important;background:#005bbb!important;opacity:0!important;margin-top:6px!important;position:static!important;vertical-align:top!important;align-self:flex-start!important}
.rss-blogroll .blogroll-channel .blogroll-list a,.rss-blogroll .blogroll-list a{flex:1!important;min-width:0!important;color:#00205b!important;font-size:12px!important;font-weight:500;line-height:1.5!important;text-decoration:none!important;text-align:left!important;word-break:break-all}
.rss-blogroll .blogroll-channel .blogroll-list a:hover,.rss-blogroll .blogroll-list a:hover{color:#005bbb!important;text-decoration:underline!important}
.rss-blogroll .blogroll-channel .blogroll-list a:visited,.rss-blogroll .blogroll-list a:visited{color:#6b7db3!important}
.rss-blogroll .blogroll-new-entry{color:#fff!important;background:#ffd700;font-size:9px!important;font-weight:700;padding:1px 4px;border-radius:3px;flex-shrink:0;align-self:flex-start;margin-top:3px;line-height:1.4}
.rss-blogroll .blogroll-channel .blogroll-list,.rss-blogroll .blogroll-list,.rss-blogroll .blogroll-channel .blogroll-list a,.rss-blogroll .blogroll-list a,.rss-blogroll .blogroll-channel .blogroll-list li,.sidewrapper .blogroll-channel .blogroll-list,.sidewrapper .blogroll-channel .blogroll-list a{text-align:left!important;font-size:12px!important}
.blogroll-channel,.rss-blogroll .blogroll-channel,.sidewrapper .blogroll-channel{overscroll-behavior:contain;overscroll-behavior-y:contain}
@media screen and (max-width:600px){.rss-blogroll{grid-template-columns:1fr;gap:10px}.rss-blogroll .blogroll-channel{height:220px!important;max-height:220px!important}.rss-blogroll .blogroll-channel ul,.rss-blogroll .blogroll-channel ol{min-height:60px!important}}
.sidewrapper .blogroll-channel{border:1px solid rgba(0,32,91,0.14);border-radius:6px;margin-bottom:8px;padding:0;overflow:hidden;scrollbar-width:thin;scrollbar-color:#003f8a #dceeff}
.sidewrapper .blogroll-channel .blogroll-list{padding:5px 10px!important;list-style-type:none;font-size:12px;border-bottom:1px solid rgba(0,32,91,0.07);padding-top:5px}
.blogroll-channel-title{padding:6px 10px!important;background:linear-gradient(135deg,#00205b,#005bbb)!important;background-image:none!important;color:#fff!important;font-size:12px!important;list-style-type:none;border-bottom:none;border-radius:6px 6px 0 0;margin:0}
.rss-blogroll .blogroll-channel-title{border-bottom:none;border-radius:8px 8px 0 0}

.rss-blogroll .blogroll-channel .blogroll-list,.rss-blogroll .blogroll-list,.rss-blogroll .blogroll-channel .blogroll-list a,.rss-blogroll .blogroll-list a,.rss-blogroll .blogroll-channel .blogroll-list li,.sidewrapper .blogroll-channel .blogroll-list,.sidewrapper .blogroll-channel .blogroll-list a{text-align:left!important;font-size:12px!important}
.rss-blogroll .blogroll-channel-title,.blogroll-channel-title{text-align:left!important;font-size:12px!important}

/* ============================================================
   カレンダー
   ============================================================ */
.calendarhead{font-weight:bold;text-align:center}
table.caltblwk .weekday{color:#666}
table.caltblwk .sun{color:#cc2200}
table.caltblwk .sat{color:#0055cc}
table.caltblday{color:#8d8d8d;border-collapse:separate;border-spacing:1px}
table.caltblday .caloff{background-color:#f9f9f9}
table.caltblday .calon{background-color:#003f8a;border:none}
table.caltblday td a{color:#fff;height:23px;line-height:23px;display:block;text-align:center}
table.caltblday td a:hover{background-color:#ffd700;color:#00205b}
table.caltblday td a:visited{background-color:#5b8fcc}

/* ============================================================
   その他サイドバーウィジェット
   ============================================================ */
.message-board{background-color:#f8f9fa;border:1px solid #e0e7ee;border-radius:4px;color:#333;line-height:1.7;margin-bottom:20px;overflow:hidden;padding:14px 16px}
dl.common-theme{background:#f8f9fa;border:1px solid #ddd;border-radius:3px;padding:8px 12px}
div.private-mode-announcement,div.comment-auth-announcement{background-color:#fafafa;border:1px solid #ddd;border-radius:3px;padding:10px}
.archives-header{border-bottom:2px solid #003f8a;font-size:14px;margin-bottom:20px;padding:10px 0;color:#00205b;font-weight:bold;text-wrap:balance}
:is(.article-sub-category,.article-sub-popular) h3{margin-bottom:12px;padding-left:10px;color:#00205b;font-size:18px;font-weight:bold;border-left:5px solid #003f8a}
:is(.article-sub-popular,.sidewrapper .side) ol{list-style:none;padding-left:0;counter-reset:ranking-counter}
:is(.article-sub-popular,.sidewrapper .side) ol li{counter-increment:ranking-counter;padding:5px 4px 5px 38px;position:relative;border-bottom:1px dashed #eee;line-height:1.5}
:is(.article-sub-popular,.sidewrapper .side) ol li::before{content:counter(ranking-counter);position:absolute;left:4px;top:50%;transform:translateY(-50%);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:bold;color:#fff;background:#888}
:is(.article-sub-popular,.sidewrapper .side) ol li:nth-child(1)::before{background:linear-gradient(135deg,#ffd700,#ffb300);box-shadow:0 2px 6px rgba(255,179,0,0.5);color:#5a3a00}
:is(.article-sub-popular,.sidewrapper .side) ol li:nth-child(2)::before{background:linear-gradient(135deg,#c0c0c0,#9e9e9e);box-shadow:0 2px 6px rgba(158,158,158,0.5);color:#333}
:is(.article-sub-popular,.sidewrapper .side) ol li:nth-child(3)::before{background:linear-gradient(135deg,#cd7f32,#a0522d);box-shadow:0 2px 6px rgba(160,82,45,0.4)}
.related-articles,.pager-related-articles,#related-articles{padding-bottom:16px}
:is(.article-sub-category,.article-sub-popular) a{color:#1A0DAB;text-decoration:none}
:is(.article-sub-category,.article-sub-popular) a:hover{text-decoration:underline}
:is(.article-sub-category,.article-sub-popular) a:visited{color:#7c3aed}
.article-sub-category ul{padding-left:16px}
.article-sub-category li{padding:0 0 5px 18px;background:url(https://parts.blog.livedoor.jp/img/usr/default_2012/common/icon_list.png) no-repeat left 4px;list-style:none}
.article-sub-category,.article-sub-popular{background:#f8faff;border:1px solid #d0e4f8;border-radius:6px;padding:16px 18px;margin:20px 0}
.article-sub-category h3,.article-sub-popular h3{font-size:15px;background:linear-gradient(to right,#003f8a,#005bbb);color:#fff;padding:6px 12px;border-radius:4px;border-left:none;margin-bottom:12px}
.article-sub-category li,.article-sub-popular li{padding:5px 0 5px 20px;border-bottom:1px dotted #d0e4f8;background:url(https://parts.blog.livedoor.jp/img/usr/default_2012/common/icon_list.png) no-repeat left 6px}
.article-sub-category li:last-child,.article-sub-popular li:last-child{border-bottom:none}

/* ============================================================
   広告ユニット
   ============================================================ */
.google-user-ad:empty,.google-user-ad-728:empty,.google-user-ad-side:empty,.google-user-ad-side1:empty,
div.google-2ad:empty,div.google-2ad-m:empty,div.google-2ad-b:empty{display:none!important;height:0!important;margin:0!important}
/* 子要素にiframeが一切ない（広告が完全に消えた後）場合もコンテナを潰す */
div.google-2ad:not(:has(iframe)):not(:empty),
div.google-2ad-m:not(:has(iframe)):not(:empty),
div.google-2ad-b:not(:has(iframe)):not(:empty),
.google-user-ad:not(:has(iframe)):not(:empty),
.google-user-ad-728:not(:has(iframe)):not(:empty){height:0!important;overflow:hidden!important;margin:0!important;padding:0!important;min-height:0!important}
.google-user-ad{margin:16px 0;padding:0;border:none;text-align:center}
.google-user-ad::before,.google-user-ad-728::before,.google-user-ad-side::before,.google-user-ad-side1::before{content:none!important;display:none!important}
.google-user-ad-728{margin:20px auto;padding:0;text-align:center;border:none}
/* v9.49: PBPサイドバー広告を完全非表示（独自AdSenseに統一） */
.google-user-ad-side{display:none!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}
.google-user-ad-side1{display:none!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}
.ad-center{text-align:center}
#ad2{margin:24px 0 16px;padding:16px 0;border-top:2px solid #dceeff;border-bottom:2px solid #dceeff;text-align:center;background:#fafcff;border-radius:4px}

#ad2:empty{display:none!important}
#ad2::before{content:none!important;display:none!important}
#ad2 a.addescription{color:#666}
div.google-2ad{margin:0 10px 8px;height:auto!important;max-height:none!important;max-width:100%;box-sizing:border-box;overflow:visible!important;padding:0!important}
div.google-2ad-m{margin:0 10px 8px;height:auto!important;max-height:none!important;max-width:100%;box-sizing:border-box;overflow:visible!important;padding:0!important}
div.google-2ad-b{margin:0 10px 0;height:auto!important;max-height:none!important;max-width:100%;box-sizing:border-box;overflow:visible!important;padding:0!important}
/* v9.34: google-2ad / google-user-ad 系にも animation トリック適用
   ライブドアPBPが height:固定px を書き込んでもコンテナが縮むようにする */
div.google-2ad,div.google-2ad-m,div.google-2ad-b,
.google-user-ad,.google-user-ad-728,
.google-user-ad-side,.google-user-ad-side1{
  animation:fk-force-height-auto 1ms linear infinite!important
}
/* v9.46: iframe への animation:height:auto 適用を廃止
   （JS の syncIframeToInsHeight が px で高さを設定するためアニメーションで上書きされると切れる）*/
div.google-2ad iframe,div.google-2ad-m iframe,div.google-2ad-b iframe,
.google-user-ad iframe,.google-user-ad-728 iframe,
.google-user-ad-side iframe,.google-user-ad-side1 iframe{
  animation:none!important;
  display:block!important
}
div.g-ad1{float:left;margin-left:0;max-width:100%;box-sizing:border-box}
div.g-ad2{float:left;margin-left:35px;max-width:100%;box-sizing:border-box}
#imobile_adspotdiv1 .imobile_infeed_spot,#imobile_adspotdiv1 .imobile_infeed,#imobile_adspotdiv1 .imobile_infeed_body{width:100%!important;max-width:540px;height:23px!important}
#imobspot_1_0_p{margin:0!important}
#imobile_adspotdiv1 .imobile_infeed_title{display:none!important}
#imobile_adspotdiv1 .imobile_infeed_description::before{content:"【PR】"}
#imobile_adspotdiv1 .imobile_infeed_description{font-size:15px!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important;margin:0!important}
#imobile_adspotdiv1 .imobile_infeed_img_container{display:none}
#comments ins.adsbygoogle,
.comments-section ins.adsbygoogle,
ol.commentList ~ div ins.adsbygoogle,
ol.commentList ins.adsbygoogle {
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-height:0!important;
  height:auto!important;
  box-sizing:border-box!important;
  overflow:visible!important
}
#comments ins.adsbygoogle[data-ad-status="unfilled"],
.comments-section ins.adsbygoogle[data-ad-status="unfilled"],
ol.commentList ins.adsbygoogle[data-ad-status="unfilled"] {
  display:none!important;
  height:0!important;
  min-height:0!important
}
/* v9.29：fk-comment-ad コンテナ（CSS定義が未設定だったため追加） */
ol.commentList > div.fk-comment-ad,
div.fk-comment-ad {
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  padding:0!important;
  margin:4px 0!important;
  box-sizing:border-box!important;
  background:transparent!important;
  border-top:1px dashed #c8d8ea;
  border-bottom:1px dashed #c8d8ea
}
div.fk-comment-ad ins.adsbygoogle {
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  width:100%!important
}
div.fk-comment-ad:has(ins[data-ad-status="unfilled"]) {
  display:none!important;
  height:0!important;
  margin:0!important;
  border:none!important
}
/* v9.33: animation トリックでインラインstyle height を CSS から強制上書き */
/* v9.34更新: iframe にも適用（ライブドアJSがiframeに固定heightを書くケースに対応）*/
@keyframes fk-force-height-auto {
  from { height:auto; max-height:none; overflow:visible; }
  to   { height:auto; max-height:none; overflow:visible; }
}
div.fk-comment-ad:not(:has(ins[data-ad-status="unfilled"])) {
  animation: fk-force-height-auto 1ms linear infinite!important;
}
div.fk-comment-ad ins.adsbygoogle:not([data-ad-status="unfilled"]) {
  animation: fk-force-height-auto 1ms linear infinite!important;
}
div.fk-comment-ad ins.adsbygoogle:not([data-ad-status="unfilled"]) > iframe {
  animation: fk-force-height-auto 1ms linear infinite!important;
  display:block!important;
}

/* ============================================================
   サイドバー広告①②（v9.47追加）
   ============================================================ */
/* 基本コンテナ */
.sidebar-ad {
  display:block;
  width:100%;
  box-sizing:border-box;
  text-align:center;
  overflow:visible;
  padding:0;
}
/* 広告① PluginList_A 直下（パ・リーグ順位表の直下） */
.sidebar-ad-1 {
  margin:8px 0 16px;
  padding-top:8px;
  border-top:1px dashed #c8d8ea;
}
/* 広告② PluginList_B 直下（人気記事の直下） */
.sidebar-ad-2 {
  margin:8px 0 16px;
  padding-top:8px;
  border-top:1px dashed #c8d8ea;
}
/* ins タグの制御（overflow 問題を防ぐ） */
.sidebar-ad ins.adsbygoogle {
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-height:0!important;
  height:auto!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
/* unfilled 時はコンテナごと非表示にして余白を残さない */
.sidebar-ad:has(ins[data-ad-status="unfilled"]) {
  display:none!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  border:none!important;
}
.sidebar-ad ins.adsbygoogle[data-ad-status="unfilled"] {
  display:none!important;
  height:0!important;
  min-height:0!important;
}
/* 広告③ サイドバー最下部 */
.sidebar-ad-3 {
  margin:8px 0 0;
  padding-top:8px;
  border-top:1px dashed #c8d8ea;
}


/* ライブドアPBP自動挿入広告（google-auto-placed）を非表示 */
#sidebar-inner .google-auto-placed,
#sidebar-inner [class*="google-auto-placed"] {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* メイン広告：週間人気記事の直上 */
.main-ad{width:100%;box-sizing:border-box;text-align:center;overflow:visible}
.main-ad-before-popular{margin:0 0 16px;padding:14px 0 12px;border-top:2px solid var(--f-gold,#ffd700);border-bottom:1px dashed #c8d8ea;background:#fafcff}
.main-ad ins.adsbygoogle{display:block!important;width:100%!important;max-width:100%!important;min-height:0!important;height:auto!important;box-sizing:border-box!important;overflow:visible!important}
.main-ad:has(ins[data-ad-status="unfilled"]){display:none!important;height:0!important;margin:0!important;padding:0!important;border:none!important}
.main-ad ins.adsbygoogle[data-ad-status="unfilled"]{display:none!important;height:0!important;min-height:0!important}
@media (prefers-color-scheme:dark){.main-ad-before-popular{background:#1a1f2e;border-top-color:var(--f-gold,#ffd700);border-bottom-color:#2c3450}}

/* 記事内 blzoo RSS（.fk-blzoo-rss）v4 相互RSSと同じ白背景統一デザイン */
.fk-blzoo-rss{margin:20px 0;border-radius:8px;overflow:hidden;border:1px solid rgba(0,32,91,0.12);box-shadow:0 2px 6px rgba(0,32,91,0.05);background:#ffffff}
.fk-blzoo-rss table,.fk-blzoo-rss table[bgcolor],.fk-blzoo-rss table[bgcolor*="#"]{width:100%!important;border-collapse:collapse!important;border-spacing:0!important;background:#ffffff!important;background-color:#ffffff!important;margin:0!important}
.fk-blzoo-rss tbody{display:table-row-group!important}
.fk-blzoo-rss tr,.fk-blzoo-rss tr[bgcolor],.fk-blzoo-rss tr[bgcolor*="#"]{border-bottom:1px solid rgba(0,32,91,0.07)!important;background:#ffffff!important;background-color:#ffffff!important}
.fk-blzoo-rss tr:last-child{border-bottom:none!important}
.fk-blzoo-rss tr:hover{background:#f0f7ff!important;background-color:#f0f7ff!important}
.fk-blzoo-rss td,.fk-blzoo-rss td[bgcolor],.fk-blzoo-rss td[bgcolor*="#"],.article-body-inner .fk-blzoo-rss td,.article-body-inner .fk-blzoo-rss tr:nth-child(2n) td,.article-body-inner .fk-blzoo-rss tr:nth-child(odd) td,div.entry-content .fk-blzoo-rss td,div.entry-content .fk-blzoo-rss tr:nth-child(2n) td,div.entry-content .fk-blzoo-rss tr:nth-child(odd) td{padding:7px 10px!important;border:none!important;background:#ffffff!important;background-color:#ffffff!important;vertical-align:middle!important;color:#333!important;font-size:13px!important;line-height:1.5!important;white-space:normal!important}
.fk-blzoo-rss td:first-child{width:7em!important;min-width:7em!important;max-width:7em!important;white-space:nowrap!important;color:#999!important;font-size:11px!important;padding-left:12px!important}
.fk-blzoo-rss td:last-child{padding-right:12px!important}
.fk-blzoo-rss a,.fk-blzoo-rss td a{color:#00205b!important;font-size:13px!important;font-weight:400!important;text-decoration:none!important;word-break:break-all}
.fk-blzoo-rss a:hover,.fk-blzoo-rss td a:hover{color:#005bbb!important;text-decoration:underline!important}
.fk-blzoo-rss img{width:14px!important;height:14px!important;border-radius:2px!important;vertical-align:middle!important;margin-right:4px!important}
@media (prefers-color-scheme:dark){html body .fk-blzoo-rss *[bgcolor],html body .fk-blzoo-rss table,html body .fk-blzoo-rss tr,html body .fk-blzoo-rss td{background:#ffffff!important;background-color:#ffffff!important;color:#333!important}html body .fk-blzoo-rss a{color:#00205b!important}}
@media screen and (max-width:600px){.fk-blzoo-rss td{padding:6px 8px!important;font-size:12px!important}.fk-blzoo-rss td:first-child{width:6em!important;min-width:6em!important;font-size:10px!important;padding-left:9px!important}.fk-blzoo-rss a,.fk-blzoo-rss td a{font-size:12px!important}}

/* height auto 強制アニメーション（ライブドアJSの height 上書き対策） */
.sidebar-ad:not(:has(ins[data-ad-status="unfilled"])) {
  animation:fk-force-height-auto 1ms linear infinite!important;
}
.sidebar-ad ins.adsbygoogle:not([data-ad-status="unfilled"]) {
  animation:fk-force-height-auto 1ms linear infinite!important;
}

/* ============================================================
   プロフィールウィジェット コンパクト化（v9.48）
   JSが .fk-profile-compact クラスを付与した sidewrapper に適用
   ============================================================ */
/* プロフィール画像を小さく横並びに */
.fk-profile-compact .profile-image,
.fk-profile-compact img.profile-image,
.fk-profile-compact .ldblog-profile-image {
  float: left;
  width: 48px !important;
  height: 48px !important;
  border-radius: 50%;
  margin: 0 10px 0 0;
  object-fit: cover;
}
/* プロフィール名を横並びテキストに */
.fk-profile-compact .profile-name,
.fk-profile-compact .ldblog-profile-name {
  font-size: 13px;
  font-weight: bold;
  line-height: 1.4;
  margin-bottom: 4px;
}
/* 本文説明を2行で切る */
.fk-profile-compact .profile-description,
.fk-profile-compact .ldblog-profile-description {
  font-size: 12px;
  line-height: 1.5;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
/* clearfix */
.fk-profile-compact .side::after {
  content: "";
  display: block;
  clear: both;
}
/* message-board をシンプルな1行ボタンに */
.fk-profile-compact .message-board {
  padding: 8px 12px !important;
  margin-bottom: 0 !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}
/* 「管理人にメッセージを送る」ボタン周辺を締める */
.fk-profile-compact .message-board a,
.fk-profile-compact .message-board button {
  font-size: 12px !important;
}

/* ============================================================
   Xプロフィール フッター表示（v9.48）
   JSが sidebar から blog-footer へ移動した sidewrapper に適用
   ============================================================ */
/* フッター内 sidewrapper 全体を中央寄せ・幅制限 */
#blog-footer .fk-x-profile-footer {
  max-width: 400px;
  width: 100%;
  margin: 20px auto 0;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,0.15);
  box-sizing: border-box;
  text-align: left;
}
/* sidetitle をフッターカラーに上書き */
#blog-footer .fk-x-profile-footer .sidetitle {
  background: none !important;
  border: none !important;
  border-bottom: 1px solid rgba(255,255,255,0.2) !important;
  color: #ccc !important;
  font-size: 12px !important;
  font-weight: bold !important;
  padding: 0 0 8px !important;
  margin-bottom: 10px !important;
  letter-spacing: .05em;
  border-radius: 0 !important;
}
#blog-footer .fk-x-profile-footer .sidetitle::before {
  content: none !important;
}
/* .side 内のコンテンツも幅制限 */
#blog-footer .fk-x-profile-footer .side {
  width: 100% !important;
  max-width: 400px !important;
}
/* Twitter タイムライン・iframe の幅制限 */
#blog-footer .fk-x-profile-footer .twitter-timeline,
#blog-footer .fk-x-profile-footer iframe {
  max-width: 400px !important;
  width: 100% !important;
  margin: 0 auto !important;
  display: block !important;
}

/* ============================================================
   カテゴリアーカイブ 折りたたみ（v9.47）
   JSが .fk-cat-collapse クラスを付与した sidewrapper に適用
   ============================================================ */
/* 折りたたみ対象の li を非表示 */
.fk-cat-collapse .side li.fk-cat-hidden {
  display: none;
}
/* 「もっと見る」ボタン */
.fk-cat-toggle {
  display: block;
  width: 100%;
  margin: 8px 0 0;
  padding: 6px 0;
  background: none;
  border: none;
  border-top: 1px dashed #c8d8ea;
  color: #003f8a;
  font-size: 12px;
  font-weight: 600;
  text-align: center;
  cursor: pointer;
  letter-spacing: .04em;
  transition: color .15s;
}
.fk-cat-toggle:hover { color: #005bbb; }
.fk-cat-toggle .fk-cat-toggle-icon {
  display: inline-block;
  margin-left: 4px;
  transition: transform .2s;
}
.fk-cat-collapse.fk-cat-open .fk-cat-toggle .fk-cat-toggle-icon {
  transform: rotate(180deg);
}


#comments div.google-2ad,
#comments div.google-2ad-m,
#comments div.google-2ad-b,
.comments-section div.google-2ad,
.comments-section div.google-2ad-m,
.comments-section div.google-2ad-b {
  padding:0!important;
  background:transparent!important;
  overflow:visible!important;
  min-height:0!important;
  height:auto!important
}
.ad-unit{position:relative;width:100%;box-sizing:border-box;text-align:center;overflow:hidden}
.ad-unit:empty{display:none!important}
.ad-label{display:block;font-size:10px;color:#999;letter-spacing:.08em;margin-bottom:6px;text-align:center}
.ad-unit-top{margin:0 0 20px;padding:14px 0 12px;border-top:2px solid var(--f-gold,#ffd700);border-bottom:1px dashed #c8d8ea;background:#fafcff}
.ad-unit-between{margin:20px 0;padding:14px 0 12px;border-top:1px dashed #c8d8ea;border-bottom:1px dashed #c8d8ea;background:#fafcff}
.ad-unit-inline{margin:10px 0 6px;padding:10px 0 8px;border-top:1px dashed #dde4ef;border-bottom:1px dashed #dde4ef;background:transparent}
.ad-unit-inline .ad-label{font-size:9px}
/* v9.42: 個別記事ページ article.page-article-body の overflow:hidden 誤適用を修正
   .article{overflow:hidden} がトップページ用カードルールだが page-article-body にも適用されていた
   → mineo 縦長広告が下部で切れていた根本原因 */
article.page-article-body,article.hentry.page-article-body,html body article.hentry.page-article-body,html body #main article.hentry.page-article-body,html body #main-inner article.hentry.page-article-body{overflow:visible!important;max-height:none!important;height:auto!important;cursor:default!important;transform:none!important;transition:none!important;border-bottom:none!important;border-radius:0!important;will-change:auto!important;box-shadow:none!important}
/* v9.29: article-ad 系に height:auto!important を追加（ライブドアJSの固定px上書き対策） */
.article-ad{width:100%;box-sizing:border-box;text-align:center;overflow:visible!important;height:auto!important;max-height:none!important;min-height:0!important}
.article-ad-before-title{margin:0 0 12px}
.article-ad-after-body{margin:16px 0 12px;padding:14px 0 12px;border-top:1px dashed #c8d8ea;border-bottom:1px dashed #c8d8ea;background:#fafcff}
.article-ad-after-popular{margin:16px 0 12px}
.article-ad-after-popular-list{margin:16px 0 12px;padding:14px 0 12px;border-top:1px dashed #c8d8ea;border-bottom:1px dashed #c8d8ea;background:#fafcff}
.article-ad-comment-header{margin:8px 0 12px}
.article-ad-before-form{margin:12px 0 8px}
/* v9.40: article-ad ins の height は AdSense に完全委任（height:auto を設定しない）
   overflow:visible のみ保証してはみ出しを防ぐ */
.article-ad ins.adsbygoogle{display:block!important;width:100%!important;overflow:visible!important;max-height:none!important;min-height:0!important}
/* v9.38: article-ad の unfilled 時のみ非表示 */
.article-ad:has(ins.adsbygoogle[data-ad-status="unfilled"]){height:0!important;min-height:0!important;margin:0!important;padding:0!important;border:none!important;overflow:hidden!important;display:none!important}
ol.commentList > div,
ol.commentList > li > div.comment-ad {
  min-height:0!important;
  height:auto!important;
  overflow:visible!important;
  background:transparent!important;
  border-top:1px dashed #c8d8ea;
  border-bottom:1px dashed #c8d8ea;
  margin:4px 0!important;
  padding:0!important;
  box-sizing:border-box!important
}
ol.commentList > div:empty,
ol.commentList > div:has(ins[data-ad-status="unfilled"]),
ol.commentList > div:has(ins:empty) {
  display:none!important;
  height:0!important;
  border:none!important;
  margin:0!important
}
ol.commentList > div:has(ins[data-ad-status="filled"]) {
  border-top:1px dashed #c8d8ea!important;
  border-bottom:1px dashed #c8d8ea!important;
  margin:8px 0!important;
  padding:0!important;
  overflow:visible!important;
  height:auto!important;
  display:block!important
}
ol.commentList > div:not(:empty):not([style*="display:none"]) {
  display:block!important
}
[id^="blz_comment"], [id^="blz_rss"] {
  overflow:visible!important;
  padding:0!important
}
/* v9.29: commentList・google-2ad 内 iframe の固定高さ解除 */
/* v9.46: height:auto → height:100% に変更（ins が height:Xpx のとき auto では切れる）*/
ol.commentList > div iframe,
#comments > div iframe,
.comments-section > div iframe,
div.google-2ad iframe,
div.google-2ad-m iframe,
div.google-2ad-b iframe,
div.google-2ad ins.adsbygoogle iframe,
div.google-2ad-m ins.adsbygoogle iframe {
  height:100%!important;
  max-height:none!important;
  min-height:0!important;
  max-width:100%!important;
  display:block!important;
  box-sizing:border-box!important
}
#article-options > div[id^="blz"],
#article-options > div[id^="google"],
#article-options > div[id^="ad"] {
  overflow:visible!important;
  padding:0!important
}
.article-ad-in-body{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:8px 0!important;
  padding:0!important;
  border:none!important;
  background:transparent!important;
  clear:both!important;
  overflow:visible!important
}
.article-ad-in-body ins.adsbygoogle{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:0!important;
  height:auto!important;
  box-sizing:border-box!important;
  overflow:visible!important
}
.article-ad-in-body:has(ins[data-ad-status="unfilled"]),
.article-ad-in-body:has(ins[data-ad-status="unfill-optimized"]){
  display:none!important;
  margin:0!important;
  border:none!important
}
.article-ad-in-body ins.adsbygoogle[data-ad-status="unfilled"],
.article-ad-in-body ins.adsbygoogle[data-ad-status="unfill-optimized"]{
  display:none!important;
  height:0!important;
  min-height:0!important
}
.article-ad-slot,.article-ad-slot.active{display:none!important;width:0!important;height:0!important;margin:0!important;padding:0!important;border:none!important;overflow:hidden!important;visibility:hidden!important}
.article-ad-slot .ad-label{display:none!important}
ins.adsbygoogle,
ins.adsbygoogle *,
.article-ad ins.adsbygoogle,
.article-ad-in-body ins.adsbygoogle,
ol.commentList ins.adsbygoogle,
#comments ins.adsbygoogle {
  border:none!important;
  outline:none!important;
  box-shadow:none!important
}
.article-ad,
.article-ad-in-body,
ol.commentList > div {
  outline:none!important
}
/* v9.40: status:null 初期状態の overflow 対策
   article-ad 系は height を触らない（AdSense に委任）
   fk-comment-ad / google-2ad 系のみ height:auto を設定 */
.article-ad ins.adsbygoogle:not([data-ad-status]),
.article-ad-in-body ins.adsbygoogle:not([data-ad-status]),
.fk-comment-ad ins.adsbygoogle:not([data-ad-status]),
div.google-2ad ins.adsbygoogle:not([data-ad-status]),
div.google-2ad-m ins.adsbygoogle:not([data-ad-status]){
  overflow:visible!important;
  max-height:none!important;
  min-height:0!important
}
ins.adsbygoogle:not([data-ad-status]),
ins.adsbygoogle[data-ad-status=""],
ins.adsbygoogle[data-ad-status="filled"] {
  border:none!important;
  outline:none!important
}

/* ============================================================
   ページネーション
   ============================================================ */
.index-navigator,.index-navigator-top,.index-navigator-bottom,.paging,.index-pager,div.paging,.ldblog-paging{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;justify-content:center!important;gap:5px!important;padding:14px 12px!important;margin:0!important;width:100%!important;box-sizing:border-box!important;clear:both!important;overflow-x:auto!important;overflow-y:visible!important;-webkit-overflow-scrolling:touch;scrollbar-width:none!important}
.index-navigator::-webkit-scrollbar,.index-navigator-top::-webkit-scrollbar,.index-navigator-bottom::-webkit-scrollbar,.paging::-webkit-scrollbar{display:none}
.index-navigator a,.index-navigator span,.index-navigator-top a,.index-navigator-top span,.index-navigator-bottom a,.index-navigator-bottom span,.paging a,.paging span,.paging strong,.index-pager a,.index-pager span,.ldblog-paging a,.ldblog-paging span{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:36px!important;height:36px!important;padding:0 10px!important;border-radius:6px!important;font-size:13px!important;font-weight:600!important;line-height:1!important;text-decoration:none!important;border:1px solid var(--f-blue)!important;color:var(--f-blue)!important;background:#ffffff!important;white-space:nowrap!important;transition:background 0.15s ease,color 0.15s ease!important;cursor:pointer!important;flex-shrink:0!important;box-sizing:border-box!important}
.index-navigator a:hover,.index-navigator-top a:hover,.index-navigator-bottom a:hover,.paging a:hover,.index-pager a:hover,.ldblog-paging a:hover{background:var(--f-blue)!important;color:#ffffff!important}
.index-navigator strong,.index-navigator .current,.index-navigator-top strong,.index-navigator-bottom strong,.paging strong,.paging .current,.index-pager strong,.index-pager .current,.ldblog-paging strong,.ldblog-paging .current{background:var(--f-navy)!important;color:#ffffff!important;border-color:var(--f-navy)!important;cursor:default!important}
.index-navigator .prev,.index-navigator .next,.index-navigator a[rel="prev"],.index-navigator a[rel="next"],.index-navigator a:first-child,.index-navigator a:last-child,.index-navigator-top .prev,.index-navigator-top .next,.index-navigator-top a:first-child,.index-navigator-top a:last-child,.index-navigator-bottom .prev,.index-navigator-bottom .next,.index-navigator-bottom a:first-child,.index-navigator-bottom a:last-child,.paging .prev,.paging .next,.paging a:first-child,.paging a:last-child{padding:0 10px!important;background:var(--f-navy)!important;color:#ffffff!important;border-color:var(--f-navy)!important;font-weight:700!important;font-size:12px!important;white-space:nowrap!important;flex-shrink:0!important}
.index-navigator .prev:hover,.index-navigator .next:hover,.index-navigator a[rel="prev"]:hover,.index-navigator a[rel="next"]:hover,.index-navigator a:first-child:hover,.index-navigator a:last-child:hover,.index-navigator-top a:first-child:hover,.index-navigator-top a:last-child:hover,.index-navigator-bottom a:first-child:hover,.index-navigator-bottom a:last-child:hover,.paging .prev:hover,.paging .next:hover{background:var(--f-blue2)!important;border-color:var(--f-blue2)!important}
.index-navigator .hellip,.index-navigator .dots,.paging .hellip,.paging .dots,.index-pager .hellip{border:none!important;background:transparent!important;color:var(--f-text-sub,#667)!important;min-width:20px!important;padding:0 4px!important;font-weight:400!important}
.index-navigator-top{border-bottom:1px solid #d8e6f4;margin-bottom:0!important}
.index-navigator-bottom{border-top:2px solid #d8e6f4;margin-top:0!important;margin-bottom:24px!important}
ul.article-pager li a,ul.archives-pager li a{border:1px solid #ccc;border-radius:3px;color:#555;background-color:#fff;box-shadow:0 1px 2px rgba(0,0,0,0.05)}

/* ============================================================
   週間人気記事
   ============================================================ */
#main .popular-articles,#main .popularArticlesWithImage{margin:0 0 24px!important;padding:0!important;background:#fff!important;border-radius:8px!important;overflow:hidden!important;box-shadow:0 2px 8px rgba(0,32,91,0.07)!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;display:block!important}
#main .popular-articles::before{content:"🏆 週間人気記事";display:block;background:linear-gradient(135deg,var(--f-navy) 0%,var(--f-blue2) 100%);color:#fff;font-size:15px;font-weight:700;letter-spacing:0.06em;padding:10px 16px;border-radius:8px 8px 0 0}
#main .popular-articles .popularArticlesWithImage::before{display:none!important;content:none!important}
#main .popular-articles>h1,#main .popular-articles>h2,#main .popular-articles>h3,#main .popular-articles>h4,#main .popular-articles>h5,#main .popular-articles>h6,#main .popular-articles>p{display:none!important}
#main .popularArticlesWithImage[style],#main .popular-articles[style]{width:100%!important;max-width:100%!important}
#main .popular-articles .popularArticlesWithImage{margin:0!important;padding:0!important;background:transparent!important;border-radius:0!important;overflow:visible!important;box-shadow:none!important}
#main .popularArticlesWithImage ul>li>div,#main .popularArticlesWithImage ol>li>div,#main .popular-articles ul>li>div,#main .popular-articles ol>li>div{display:flex!important;flex-direction:column!important;flex-grow:1!important;align-items:stretch!important;width:100%!important;height:auto!important;min-height:0!important;padding:0!important;margin:0!important;box-sizing:border-box!important;background:transparent!important}
#main .popular-articles ul,#main .popular-articles ol,#main .popular-articles ul[style],#main .popular-articles ol[style],#main .popularArticlesWithImage ul,#main .popularArticlesWithImage ol,#main .popularArticlesWithImage ul[style],#main .popularArticlesWithImage ol[style]{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:0!important;list-style:none!important;margin:0!important;padding:0!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;background:transparent!important;counter-reset:popular-ranking;align-items:stretch!important;float:none!important}
#main .popular-articles ul>li,#main .popular-articles ol>li,#main .popularArticlesWithImage ul>li,#main .popularArticlesWithImage ol>li{position:relative!important;overflow:visible!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;border:1px solid rgba(0,32,91,0.12)!important;box-sizing:border-box!important;background:#fff!important;width:auto!important;height:auto!important;min-height:0!important;float:none!important;padding:0!important;margin:0!important;min-width:0!important;counter-increment:popular-ranking}
#main .popular-articles ul>li:hover,#main .popular-articles ol>li:hover,#main .popularArticlesWithImage ul>li:hover,#main .popularArticlesWithImage ol>li:hover{opacity:0.88!important}
#main .popular-articles ul>li::before,#main .popular-articles ol>li::before,#main .popularArticlesWithImage ul>li::before,#main .popularArticlesWithImage ol>li::before{content:counter(popular-ranking);position:absolute;top:0;left:0;width:26px;height:26px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;color:#fff;background:#888;border-radius:0 0 6px 0;z-index:2;line-height:1}
#main .popular-articles ul>li:nth-child(1)::before,#main .popular-articles ol>li:nth-child(1)::before,#main .popularArticlesWithImage ul>li:nth-child(1)::before,#main .popularArticlesWithImage ol>li:nth-child(1)::before{background:linear-gradient(135deg,#ffd700,#ffb300);color:#5a3a00;box-shadow:0 2px 6px rgba(255,179,0,0.45)}
#main .popular-articles ul>li:nth-child(2)::before,#main .popular-articles ol>li:nth-child(2)::before,#main .popularArticlesWithImage ul>li:nth-child(2)::before,#main .popularArticlesWithImage ol>li:nth-child(2)::before{background:linear-gradient(135deg,#c0c0c0,#9e9e9e);color:#333;box-shadow:0 2px 6px rgba(158,158,158,0.45)}
#main .popular-articles ul>li:nth-child(3)::before,#main .popular-articles ol>li:nth-child(3)::before,#main .popularArticlesWithImage ul>li:nth-child(3)::before,#main .popularArticlesWithImage ol>li:nth-child(3)::before{background:linear-gradient(135deg,#cd7f32,#a0522d);color:#fff;box-shadow:0 2px 6px rgba(160,82,45,0.35)}
#main .popular-articles ul>li a,#main .popular-articles ol>li a,#main .popularArticlesWithImage ul>li a,#main .popularArticlesWithImage ol>li a{display:flex!important;flex-direction:column!important;flex-grow:1!important;flex-shrink:0!important;align-items:stretch!important;text-decoration:none!important;overflow:visible!important;background:transparent!important;width:100%!important;max-width:100%!important;height:auto!important;max-height:none!important;min-height:0!important;float:none!important;position:static!important;box-sizing:border-box!important}
#main .popular-articles ul>li a:hover img,#main .popular-articles ol>li a:hover img,#main .popularArticlesWithImage ul>li a:hover img,#main .popularArticlesWithImage ol>li a:hover img{transform:scale(1.04)}
#main .popular-articles ul>li img,#main .popular-articles ol>li img,#main .popular-articles ul>li img[style],#main .popular-articles ol>li img[style],#main .popularArticlesWithImage ul>li img,#main .popularArticlesWithImage ol>li img,#main .popularArticlesWithImage ul>li img[style],#main .popularArticlesWithImage ol>li img[style]{display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;height:auto!important;max-height:none!important;aspect-ratio:16/9!important;object-fit:cover!important;object-position:center top!important;flex:0 0 auto!important;float:none!important;margin:0!important;padding:0!important;box-sizing:border-box!important;transition:transform 0.3s ease!important}
#main .popular-articles ul>li a div.image,#main .popular-articles ol>li a div.image,#main .popularArticlesWithImage ul>li a div.image,#main .popularArticlesWithImage ol>li a div.image{display:block!important;flex:0 0 auto!important;flex-grow:0!important;flex-shrink:0!important;background:transparent!important;background-color:transparent!important;min-height:0!important;padding:0!important;margin:0!important;width:100%!important;max-width:100%!important;overflow:hidden!important}
#main .popular-articles ul>li a div.title,#main .popular-articles ol>li a div.title,#main .popular-articles ul>li a .title,#main .popular-articles ol>li a .title,#main .popularArticlesWithImage ul>li a div.title,#main .popularArticlesWithImage ol>li a div.title,#main .popularArticlesWithImage ul>li a .title,#main .popularArticlesWithImage ol>li a .title,#main .popular-articles .popular-articles-list-title,#main .popularArticlesWithImage .popular-articles-list-title{display:block!important;flex-grow:1!important;flex-shrink:0!important;overflow:hidden!important;position:static!important;top:auto!important;bottom:auto!important;left:auto!important;right:auto!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:54px!important;max-height:none!important;box-sizing:border-box!important;background:#fff!important;background-color:#fff!important;color:var(--f-navy,#00205b)!important;padding:6px 8px 8px!important;font-size:12px!important;font-weight:600!important;line-height:1.5!important;word-break:break-all!important;white-space:normal!important;text-overflow:clip!important;-webkit-line-clamp:unset!important}

@media screen and (max-width:768px){#main .popular-articles ul,#main .popular-articles ol,#main .popular-articles ul[style],#main .popular-articles ol[style],#main .popularArticlesWithImage ul,#main .popularArticlesWithImage ol,#main .popularArticlesWithImage ul[style],#main .popularArticlesWithImage ol[style]{grid-template-columns:repeat(3,1fr)!important}#main .popular-articles::before,#main .popularArticlesWithImage::before{font-size:13px;padding:9px 14px}#main .popular-articles ul>li a div.title,#main .popular-articles ol>li a div.title,#main .popular-articles ul>li a .title,#main .popular-articles ol>li a .title,#main .popularArticlesWithImage ul>li a div.title,#main .popularArticlesWithImage ol>li a div.title,#main .popularArticlesWithImage ul>li a .title,#main .popularArticlesWithImage ol>li a .title{font-size:11px!important;padding:5px 6px 6px!important;min-height:44px!important;width:100%!important;max-width:100%!important;background-color:#fff!important;color:var(--f-navy,#00205b)!important}#main .popular-articles ul>li::before,#main .popular-articles ol>li::before,#main .popularArticlesWithImage ul>li::before,#main .popularArticlesWithImage ol>li::before{width:22px;height:22px;font-size:11px}}
@media screen and (max-width:480px){#main .popular-articles ul,#main .popular-articles ol,#main .popular-articles ul[style],#main .popular-articles ol[style],#main .popularArticlesWithImage ul,#main .popularArticlesWithImage ol,#main .popularArticlesWithImage ul[style],#main .popularArticlesWithImage ol[style]{grid-template-columns:repeat(2,1fr)!important}#main .popular-articles ul>li a div.title,#main .popular-articles ol>li a div.title,#main .popularArticlesWithImage ul>li a div.title,#main .popularArticlesWithImage ol>li a div.title,#main .popularArticlesWithImage ul>li a .title,#main .popularArticlesWithImage ol>li a .title{font-size:11px!important;min-height:52px!important;width:100%!important;max-width:100%!important;background-color:#fff!important;color:var(--f-navy,#00205b)!important}}
#main .popular-articles .popular-articles-list-category,#main .popular-articles .popular-articles-list-date,#main .popularArticlesWithImage .popular-articles-list-category,#main .popularArticlesWithImage .popular-articles-list-date{font-size:10px!important;color:var(--f-text-sub,#5a6480)!important;padding:0 8px 6px!important;line-height:1.4!important}
/* popular-articles内へのblogroll要素侵入をCSS側でも防衛 */
#main .popular-articles .blogroll-channel,#main .popular-articles .blogroll-list,#main .popular-articles .blogroll-channel-title,#main .popular-articles .blogroll-new-entry{display:none!important;visibility:hidden!important;height:0!important;overflow:hidden!important}
/* $PopularArticlesWithImageList$が展開されなかった場合（空）はボックスごと隠す */
#main .popular-articles[data-fk-empty="1"]{display:none!important}

/* ============================================================
   関連記事
   ============================================================ */
.related-articles,.pager-related-articles,#related-articles{margin:16px 0!important;padding:0!important;background:#fff;border-radius:8px;box-shadow:0 2px 8px rgba(0,32,91,.07);overflow:hidden}
.related-articles::before,.pager-related-articles::before,#related-articles::before{content:"📰 関連記事";display:block;background:linear-gradient(135deg,var(--f-navy) 0%,var(--f-blue2) 100%);color:#fff;font-size:14px;font-weight:700;letter-spacing:.05em;padding:8px 14px;border-radius:8px 8px 0 0}
.related-articles ul,.pager-related-articles ul,#related-articles ul{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:0!important;list-style:none!important;margin:0!important;padding:0!important;width:100%!important;box-sizing:border-box!important}
.related-articles ul li,.pager-related-articles ul li,#related-articles ul li{display:flex!important;flex-direction:column!important;border:1px solid rgba(0,32,91,.1)!important;box-sizing:border-box!important;overflow:hidden!important;background:#fff!important;transition:opacity .2s!important;position:static!important}
.related-articles ul li:hover,.pager-related-articles ul li:hover,#related-articles ul li:hover{opacity:.85!important}
.related-articles ul li a,.pager-related-articles ul li a,#related-articles ul li a{display:flex!important;flex-direction:column!important;text-decoration:none!important;color:var(--f-navy,#00205b)!important;font-size:12px!important;font-weight:600!important;line-height:1.5!important;padding:6px 8px 8px!important;flex:1!important}
.related-articles ul li a:visited,.pager-related-articles ul li a:visited,#related-articles ul li a:visited{color:#6d28d9!important}
.related-articles ul li img,.pager-related-articles ul li img,#related-articles ul li img{display:block!important;width:100%!important;height:140px!important;flex-shrink:0!important;object-fit:cover!important;object-position:center center!important;order:-1!important;margin:-6px -8px 6px!important}
.related-articles,.pager-related-articles,#related-articles{color:#00205b!important;font-size:12px!important;font-weight:700!important;letter-spacing:0.02em!important}

.article-body .related-articles{margin:2em 0;background:linear-gradient(to bottom right,#f0f7ff,#fafcff);border:2px solid #003f8a;border-radius:6px;padding:14px 18px;box-shadow:0 2px 8px rgba(0,63,138,0.08)}
.article-body .related-articles h3{font-size:13px;font-weight:bold;margin-bottom:10px;color:#fff;background:linear-gradient(to right,#003f8a,#005bbb);padding:5px 10px;border-radius:3px;letter-spacing:0.05em}
.article-body .related-articles ul li{margin:6px 0;padding-left:16px;border-left:3px solid #ffd700;line-height:1.5}
.article-body .related-articles ul li a{color:#00205b;font-size:14px;font-weight:bold;transition:color 0.15s ease}
.article-body .related-articles ul li a:hover{color:#005bbb;text-decoration:underline}

/* ============================================================
   カテゴリー・アーカイブページ
   ============================================================ */
.archives-page-header{background:#fff;border:1px solid #e0e8f4;border-left:5px solid var(--f-blue,#003f8a);border-radius:0 6px 6px 0;margin-bottom:20px;padding:16px 20px 18px;position:relative}
.archives-page-breadcrumb{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin-bottom:10px;font-size:12px;line-height:1.4}
.archives-breadcrumb-home,.archives-breadcrumb-parent{color:var(--f-blue,#003f8a);text-decoration:none;display:inline-flex;align-items:center;gap:4px;transition:color .15s ease}
.archives-breadcrumb-home:hover,.archives-breadcrumb-parent:hover{color:var(--f-blue2,#005bbb);text-decoration:underline}
.archives-breadcrumb-sep{color:#aaa;font-size:12px}
.archives-breadcrumb-current{color:#555;font-weight:500}
.archives-page-title-wrap{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.archives-page-type-badge{display:inline-flex;align-items:center;gap:5px;background:var(--f-navy,#00205b);color:var(--f-gold,#ffd700);font-size:11px;font-weight:700;padding:3px 10px;border-radius:20px;letter-spacing:.05em;white-space:nowrap;flex-shrink:0;line-height:1.6}
.archives-page-type-badge--tag{background:#4a5568;color:#fff}
.archives-page-type-badge--search{background:#1a56db;color:#fff}
.archives-page-type-badge--author{background:#047857;color:#fff}
.archives-page-type-badge--monthly{background:#0e7490;color:#fff}
.archives-page-title{font-size:22px;font-weight:700;color:var(--f-navy,#00205b);margin:0;line-height:1.4;text-wrap:balance}
.archives-parent-name{color:#888;font-size:16px;font-weight:400}
.archives-search-wrap{margin:0 0 16px;background:#fff;border:1px solid #d0dcea;border-radius:6px;padding:12px 14px}
.archives-search-inner{display:flex;align-items:center;border:1px solid #c0cfe0;border-radius:6px;overflow:hidden;background:#f8fbff;transition:border-color .18s ease,box-shadow .18s ease}
.archives-search-inner:focus-within{border-color:var(--f-blue,#003f8a);box-shadow:0 0 0 3px rgba(0,63,138,.12);background:#fff}
.archives-search-inner input[type="search"]{flex:1;border:none;outline:none;background:transparent;color:#333;font-size:14px;padding:9px 12px;font-family:inherit;min-width:0}
.archives-search-inner input[type="search"]::placeholder{color:#aaa}
.archives-search-inner input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}
.archives-search-inner button{background:var(--f-navy,#00205b);border:none;color:var(--f-gold,#ffd700);padding:9px 16px;cursor:pointer;font-size:15px;font-weight:bold;flex-shrink:0;line-height:1;transition:background .18s ease}
.archives-search-inner button:hover{background:var(--f-blue,#003f8a)}
.archives-noresult{text-align:center;padding:48px 24px;background:#fff;border:1px solid #e0e0e0;border-radius:6px;margin-bottom:20px;color:#666}
.archives-noresult i{font-size:36px;color:#b0bec5;display:block;margin-bottom:12px}
.archives-noresult p{font-size:15px;margin:0 0 6px}
.archives-noresult-sub{font-size:13px;color:#999}

/* ============================================================
   個別記事ページ
   ============================================================ */
body.page-article .article-inner{display:block!important;flex-direction:unset!important;height:auto!important}
body.page-article .article-thumbnail,body.page-article .article-thumbnail-placeholder{display:none!important}
body.page-article .article-page-header,
body .article-page-header,
.article-page-header{padding:20px 24px 16px!important;background:linear-gradient(to bottom,#dceeff,#f0f7ff)!important;border-bottom:3px solid #003f8a!important;border-radius:4px 4px 0 0!important}
body.page-article .article-page-meta,
.article-page-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:12px;color:#555!important;margin-bottom:12px}
.article-page-meta .article-meta-date,.article-page-meta .article-meta-comment{display:inline-flex;align-items:center;gap:4px}
.article-page-meta .article-comment-link{color:#555!important;text-decoration:none;display:inline-flex;align-items:center;gap:4px;transition:color 0.15s ease}
.article-page-meta .article-comment-link:hover{color:#7ab3f5}
body.page-article .article-page-title,
body .article-page-title,
.article-page-title{font-size:22px;font-weight:700;line-height:1.55;color:#00205b!important;margin:0 0 14px;border-left:5px solid #003f8a!important;padding-left:12px;text-wrap:balance}
.article-page-share{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:8px 0 0}
.article-page-share-label{font-size:11px;color:#888;letter-spacing:.06em;white-space:nowrap}
.article-page-body{padding:20px 24px;font-size:16px;line-height:1.85;color:#111!important;background:#ffffff!important;border-radius:0 0 4px 4px;word-break:break-word;overflow-wrap:break-word;overflow:visible!important}
body.page-article .article-page-body,body.page-article .article-page-body .article-body-inner,body.page-article .article-body.article-page-body,body.page-article div.entry-content{color:#111!important;background:#ffffff!important}
.article-page-body .article-body-inner{display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important;max-height:none!important;height:auto!important;color:#111!important;background:#ffffff!important}
/* v9.28：記事本文内広告 高さ完全解放（iframe含む） */
.article-page-body .article-ad-in-body,
.page-article-body .article-ad-in-body,
.article-body .article-ad-in-body,
.article-body-inner .article-ad-in-body,
.article-page-body ~ * .article-ad-in-body,
div.article-ad-in-body,
body.page-article .article-ad-in-body{
  display:block!important;
  overflow:visible!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  width:100%!important
}
.article-page-body .article-ad-in-body ins.adsbygoogle,
.page-article-body .article-ad-in-body ins.adsbygoogle,
.article-body .article-ad-in-body ins.adsbygoogle,
.article-body-inner .article-ad-in-body ins.adsbygoogle,
div.article-ad-in-body ins.adsbygoogle,
body.page-article .article-ad-in-body ins.adsbygoogle{
  display:block!important;
  overflow:visible!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  width:100%!important
}
/* iframe の固定高さを解除（AdSense fluid広告対策） */
.article-ad-in-body iframe,
.article-ad-in-body ins.adsbygoogle iframe{
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  display:block!important
}
.fk-ad-inbody-placeholder{
  display:none!important
}
/* v3.0: id="fk-ad-{slot}" マーカーdiv も非表示（JS生成前の一瞬の表示を防ぐ） */
[id^="fk-ad-"]{
  display:none!important
}
.article-page-body .article-body-inner iframe:not([src*="twitter"]):not([src*="x.com"]):not([id*="twitter"]),.article-page-body .article-body-inner video,.article-page-body .article-body-inner embed,.article-page-body .article-body-inner object{max-width:100%!important;height:auto!important;display:block;margin:1em auto}
.article-page-body .article-body-inner iframe[src*="youtube"],.article-page-body .article-body-inner iframe[src*="youtu.be"]{aspect-ratio:16/9;width:100%!important;height:auto!important}
.article-body-inner .twitter-tweet,.article-body-inner .twitter-tweet-rendered{max-width:100%!important;width:100%!important;min-width:0!important;box-sizing:border-box!important}
.article-body-inner .twitter-tweet iframe,.article-body-inner .twitter-tweet-rendered iframe{max-width:100%!important;width:100%!important;min-width:0!important;box-sizing:border-box!important;height:unset}
.article-page-share-bottom{margin:0 0 8px;padding:14px 0 8px;border-top:1px dashed #d0daea}
.article-page-footer{padding:14px 24px 20px;background:#fafafa;border-top:1px dashed #e0e0e0;border-radius:0 0 4px 4px}
.article-pager-wrap{margin-bottom:14px}
.article-pager-wrap ul.article-pager,.article-pager-wrap ul.archives-pager{display:flex!important;gap:8px;flex-wrap:wrap;list-style:none;padding:0;margin:0}
.article-pager-wrap ul.article-pager li a,.article-pager-wrap ul.archives-pager li a{display:inline-flex;align-items:center;gap:5px;padding:7px 14px;background:linear-gradient(to right,var(--f-navy),var(--f-blue));color:#fff!important;border-radius:4px;font-size:13px;font-weight:600;text-decoration:none;transition:opacity 0.15s ease,transform 0.15s ease}
.article-pager-wrap ul.article-pager li a:hover,.article-pager-wrap ul.archives-pager li a:hover{opacity:.82;transform:translateY(-1px)}
.article-footer-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:#666;margin-bottom:10px}
.article-footer-category,.article-footer-author{display:inline-flex;align-items:center;gap:5px}
.comments-section{margin-top:24px;background:#f8fbff!important;border:1px solid #e0e8f4!important;border-radius:6px;overflow:visible}
.comments-title{font-size:14px;font-weight:bold;color:#fff;background:linear-gradient(to right,var(--f-navy),var(--f-blue));padding:10px 16px;margin:0;display:flex;align-items:center;gap:8px;letter-spacing:0.04em}
.comment-form-wrap{padding:14px 16px;background:#f8fbff;border-top:2px dashed #c8ddf0}
/* CommentForm2 が展開する空の枠・トラックバック残骸を非表示 */
.comment-form-wrap > div:not(:has(form)):not(:has(textarea)):not(:has(input)):not(:has(button)):empty{display:none!important;height:0!important;margin:0!important;padding:0!important;border:none!important;background:none!important}
.comment-form-wrap > div:not(:has(form)):not(:has(textarea)):not(:has(input)):not(:has(button)){border:none!important;background:none!important;padding:0!important;margin:0!important}
#article-options > div:empty,#article-options > section:empty{display:none!important;height:0!important;margin:0!important;padding:0!important}
/* .trackbacks-section 削除済み（2026-06-14） */
.article-related-wrap{margin:0;padding:0}

#main .popular-articles-article-page{margin:20px 0 0;padding:0;background:#fff;border:1px solid #d8e8f8;border-radius:6px;overflow:hidden}
#main .popular-articles-article-page::before{content:"⚾ 今週よく読まれている記事";display:block;background:linear-gradient(to right,var(--f-navy,#00205b),var(--f-blue2,#005bbb));color:#fff;font-size:13px;font-weight:700;letter-spacing:0.05em;padding:8px 14px}
#main .popular-articles-article-page ul,#main .popular-articles-article-page ol,#main .popular-articles-article-page ul[style],#main .popular-articles-article-page ol[style]{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:0!important;list-style:none!important;margin:0!important;padding:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;counter-reset:article-page-ranking!important}
#main .popular-articles-article-page ul>li,#main .popular-articles-article-page ol>li{position:relative!important;padding:6px 8px 6px 36px!important;border-bottom:1px solid #edf2f8!important;border-right:1px solid #edf2f8!important;box-sizing:border-box!important;height:auto!important;overflow:hidden!important;counter-increment:article-page-ranking!important}
#main .popular-articles-article-page ul>li::before,#main .popular-articles-article-page ol>li::before{content:counter(article-page-ranking)!important;position:absolute!important;left:6px!important;top:50%!important;transform:translateY(-50%)!important;width:22px!important;height:22px!important;border-radius:50%!important;background:#888!important;color:#fff!important;font-size:11px!important;font-weight:bold!important;display:flex!important;align-items:center!important;justify-content:center!important}
#main .popular-articles-article-page ul>li:nth-child(1)::before,#main .popular-articles-article-page ol>li:nth-child(1)::before{background:linear-gradient(135deg,#ffd700,#ffb300)!important;color:#5a3a00!important}
#main .popular-articles-article-page ul>li:nth-child(2)::before,#main .popular-articles-article-page ol>li:nth-child(2)::before{background:linear-gradient(135deg,#c0c0c0,#9e9e9e)!important;color:#333!important}
#main .popular-articles-article-page ul>li:nth-child(3)::before,#main .popular-articles-article-page ol>li:nth-child(3)::before{background:linear-gradient(135deg,#cd7f32,#a0522d)!important}
#main .popular-articles-article-page ul>li img,#main .popular-articles-article-page ol>li img{display:none!important}
#main .popular-articles-article-page ul>li a span,#main .popular-articles-article-page ol>li a span,#main .popular-articles-article-page .popular-articles-list-title{font-size:12px!important;line-height:1.5!important;color:var(--f-navy,#00205b)!important;font-weight:600!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;background:transparent!important;padding:0!important;width:100%!important}

/* ============================================================
   ページトップボタン
   ============================================================ */
.to-pagetop{position:fixed;bottom:20px;right:16px;z-index:9999;text-align:right;padding:0;line-height:1}
.to-pagetop a{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;background:linear-gradient(135deg,var(--f-blue),var(--f-blue2));border-radius:50%;border:2px solid var(--f-gold);box-shadow:0 3px 10px rgba(0,32,91,0.40);text-indent:0;font-size:0;outline:0;opacity:0.88;transition:opacity 0.15s ease,transform 0.15s ease,box-shadow 0.15s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent;cursor:pointer;will-change:transform,opacity}
.to-pagetop a::before{content:"";display:block;width:14px;height:14px;border-top:3px solid #ffd700;border-right:3px solid #ffd700;transform:rotate(-45deg);margin-top:6px;flex-shrink:0}
.to-pagetop a:hover{opacity:1;transform:translateY(-3px);box-shadow:0 6px 18px rgba(0,32,91,0.5)}

/* ============================================================
   フッター
   ============================================================ */
#blog-footer{padding:32px 40px;background:#00205b;color:#ccc;margin-top:32px;text-align:center;font-size:13px}
#blog-footer a{color:#aaa}
#blog-footer a:hover{color:#ffd700}




/* ============================================================
   レスポンシブ：1120px以下
   ============================================================ */
@media screen and (max-width:1120px){
  #container{width:100%;padding:0 16px;box-sizing:border-box}
  #main{width:65%;max-width:none;box-sizing:border-box}
  #sidebar{width:33%;max-width:none;box-sizing:border-box}
  .article-title{font-size:18px}
  .article-body{font-size:15px}
}

/* ============================================================
   レスポンシブ：768px以下
   ============================================================ */
@media screen and (max-width:768px){
  html,body{margin:0!important;padding:0!important}
  html,body,#wrapper,#container,#content{width:100%!important;max-width:100vw!important;min-width:0!important;overflow-x:hidden!important;box-sizing:border-box!important}
  #container{padding:0 10px!important;margin-left:0!important;margin-right:0!important}
  #wrapper{padding-top:8px!important;margin:0!important}
  #content{display:block!important;overflow:visible!important}
  #main,body #main,body.sidebar-right #main,body.sidebar-left #main{width:100%!important;max-width:100vw!important;min-width:0!important;float:none!important;margin:0!important;padding:0!important;box-sizing:border-box!important;display:block!important}
  #sidebar,body #sidebar,body.sidebar-right #sidebar,body.sidebar-left #sidebar{width:100%!important;max-width:100vw!important;min-width:0!important;float:none!important;clear:both!important;margin:16px 0 0!important;padding:16px 0 0!important;border-top:3px solid #003f8a!important;box-sizing:border-box!important;display:block!important}
  .article,.hentry{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
  #blog-header-image{height:100px}
  .ldb_menu{overflow-x:auto;white-space:nowrap}
  .ldb_menu-list{display:flex;flex-wrap:nowrap}
  .ldb_menu-list li{float:none;flex-shrink:0}
  .ldb_menu-list li a{padding:12px 14px;font-size:13px;white-space:nowrap}
  body div.article-inner,.article-inner{display:flex!important;flex-direction:row!important;align-items:flex-start!important}
  .article-thumbnail{flex:0 0 100px!important;width:100px!important;min-width:100px!important;max-width:100px!important;height:100px!important;min-height:100px!important;max-height:100px!important}
  .article-thumbnail-img,.article-thumbnail img{height:100px!important;min-height:100px!important;max-height:100px!important}
  .article-thumbnail-placeholder{flex:0 0 100px!important;width:100px!important;min-width:100px!important;max-width:100px!important;height:100px!important;min-height:100px!important;max-height:100px!important}
  .article-body-col{padding:10px 12px 10px!important;gap:4px}
  .article-title{font-size:14px}
  .article-title a{-webkit-line-clamp:3}
  .article-body-inner{-webkit-line-clamp:3;font-size:11px}
  .article-read-more{font-size:11px;padding:4px 10px}
  html body #main div.article figure.article-thumbnail,html body #main div.article div.article-thumbnail,html body #main .hentry figure.article-thumbnail,html body #main .hentry div.article-thumbnail{flex:0 0 100px!important;width:100px!important;min-width:100px!important;max-width:100px!important;height:100px!important;min-height:100px!important;max-height:100px!important}
  html body #main div.article figure.article-thumbnail img,html body #main div.article div.article-thumbnail img,html body #main div.article div.article-thumbnail .article-thumbnail-img,html body #main .hentry figure.article-thumbnail img,html body #main .hentry div.article-thumbnail img{height:100px!important;min-height:100px!important;max-height:100px!important}
  html body #main div.article div.article-thumbnail-placeholder,html body #main .hentry div.article-thumbnail-placeholder{flex:0 0 100px!important;width:100px!important;min-width:100px!important;max-width:100px!important;height:100px!important;min-height:100px!important;max-height:100px!important}
  #main div.article-inner,div.article div.article-inner{display:flex!important;flex-direction:row!important}
  #main figure.article-thumbnail,#main div.article-thumbnail,#main div.article-thumbnail-placeholder,div.article figure.article-thumbnail,div.article div.article-thumbnail,div.article div.article-thumbnail-placeholder{flex:0 0 100px!important;width:100px!important;min-width:100px!important;max-width:100px!important;height:100px!important;min-height:100px!important;max-height:100px!important}
  #main figure.article-thumbnail img,#main div.article-thumbnail img,#main div.article-thumbnail .article-thumbnail-img,div.article figure.article-thumbnail img,div.article div.article-thumbnail img{height:100px!important;min-height:100px!important;max-height:100px!important}
  .article-title{font-size:16px;padding:10px 12px}
  .article-body{font-size:16px;padding:12px;line-height:1.75}
  .article-body-inner blockquote{padding:8px 12px 8px 16px;font-size:15px}
  .article-body-inner img.pict{max-width:100%!important;margin:0.5em 0 1em!important}
  .article-body-more iframe{width:100%!important}
  div.entry-content p.more a{font-size:16px;padding:12px}
  .article-header-date,.article-header-category{float:none;display:block;margin:3px 0}
  .article,.hentry,body.sidebar-right .article,body.sidebar-right .hentry,body.sidebar-left .article,body.sidebar-left .hentry{display:block!important;width:100%!important;max-width:100%!important}
  div.article-inner,div.article > div.article-inner{height:auto!important;min-height:0!important;display:block!important;float:none!important;width:100%!important;max-width:100%!important;overflow:visible!important}
  div.article-first-image,div.article-inner > div.article-first-image,div.article > div.article-inner > div.article-first-image{float:none!important;width:100%!important;max-width:100%!important;height:auto!important;position:static!important;left:auto!important;display:block!important;margin:0!important}
  div.article-inner > .article-header,div.article-inner > .article-body,div.article > div.article-inner > .article-header,div.article > div.article-inner > .article-body{margin-left:0!important;margin-right:0!important;width:100%!important;float:none!important;position:static!important;left:auto!important}
  body.page-article #main .article .article-inner{display:block!important;flex-direction:unset!important}
  body.page-article #main .article .article-body{display:block!important}
  body.page-article #main .article .ad-unit-inline{display:block!important}
  .article-page-header{padding:14px 14px 12px}
  .article-page-title{font-size:18px;padding-left:10px}
  .article-page-body{padding:14px 14px;font-size:16px}
  .article-page-footer{padding:12px 14px 16px}
  .article-pager-wrap ul.article-pager li a,.article-pager-wrap ul.archives-pager li a{font-size:12px;padding:6px 10px}
  .index-navigator a,.index-navigator span,.index-navigator-top a,.index-navigator-top span,.index-navigator-bottom a,.index-navigator-bottom span,.paging a,.paging span,.paging strong{min-width:30px!important;height:32px!important;padding:0 7px!important;font-size:12px!important}
  .index-navigator .prev,.index-navigator .next,.index-navigator a:first-child,.index-navigator a:last-child,.index-navigator-top a:first-child,.index-navigator-top a:last-child,.index-navigator-bottom a:first-child,.index-navigator-bottom a:last-child{padding:0 8px!important;font-size:11px!important}
  .index-navigator,.index-navigator-top,.index-navigator-bottom,.paging{gap:3px!important;padding:10px 6px!important}
  .ad-unit-top,.ad-unit-between{padding:10px 0 8px;margin-bottom:14px}
  .ad-unit-inline{padding:8px 0 6px}
  #main .popular-articles ul,#main .popular-articles ol,#main .popular-articles ul[style],#main .popular-articles ol[style]{grid-template-columns:repeat(3,1fr)!important}
  #main .popular-articles::before{font-size:13px;padding:9px 14px}
  #main .popular-articles ul > li a span,#main .popular-articles ol > li a span,#main .popular-articles ul > li a p,#main .popular-articles ol > li a p,#main .popular-articles ul > li a div,#main .popular-articles ol > li a div,#main .popular-articles ul > li a .title,#main .popular-articles ol > li a .title,#main .popular-articles .popular-articles-list-title{font-size:11px!important;padding:5px 6px 6px!important;min-height:44px!important;width:100%!important;max-width:100%!important;background-color:#fff!important;color:var(--f-navy,#00205b)!important}
  #main .popular-articles ul > li::before,#main .popular-articles ol > li::before{width:22px;height:22px;font-size:11px}
  #main .popular-articles-article-page ul,#main .popular-articles-article-page ol,#main .popular-articles-article-page ul[style],#main .popular-articles-article-page ol[style]{grid-template-columns:1fr!important}
  #main .popular-articles-article-page ul>li,#main .popular-articles-article-page ol>li{border-right:none!important;padding:7px 8px 7px 36px!important}
  .archives-page-header{padding:14px 14px;margin-bottom:14px}
  .archives-page-title{font-size:18px}
  .archives-page-type-badge{font-size:10px;padding:2px 8px}
  .archives-page-breadcrumb{font-size:11px}
  /* RSS: スマホは1カラム・高さ制限付きスクロール */
  .rss-blogroll{display:grid!important;grid-template-columns:1fr!important;gap:8px;padding:10px!important}
  .rss-blogroll .blogroll-channel{float:none!important;display:flex!important;flex-direction:column!important;width:100%!important;max-width:100%!important;min-width:0!important;flex:none!important;height:220px!important;max-height:220px!important;overflow:hidden!important;margin:0!important;box-sizing:border-box!important;background:#ffffff!important;border-radius:8px!important}
  .rss-blogroll .blogroll-channel ul,.rss-blogroll .blogroll-channel ol{overflow-y:auto!important;flex:1 1 auto!important;min-height:60px!important}
  div.blogroll-channel,ul.blogroll-channel,.sidewrapper div.blogroll-channel,.sidewrapper ul.blogroll-channel,.rss-blogroll div.blogroll-channel,.rss-blogroll ul.blogroll-channel{max-height:220px!important;min-height:0!important}
  #main{scroll-snap-type:y proximity}
  .article,.hentry{scroll-snap-align:start;scroll-margin-top:8px}
  .blogroll-channel,.rss-blogroll .blogroll-channel,.sidewrapper .blogroll-channel{overscroll-behavior:contain!important}
}

/* ============================================================
   レスポンシブ：480px以下
   ============================================================ */
@media screen and (max-width:480px){
  html,body{margin:0!important;padding:0!important}
  #container{padding:0 8px!important;margin-left:0!important;margin-right:0!important}
  .article-title{font-size:16px}
  .article-body{font-size:16px;padding:10px}
  .ldb_menu-list li a{padding:10px 12px;font-size:13px}
  .sidewrapper .sidetitle{font-size:13px}
  .article-body-inner blockquote{padding:6px 8px 6px 12px;font-size:15px}
  body div.article-inner,.article-inner{display:flex!important;flex-direction:row!important;align-items:flex-start!important}
  .article-thumbnail{flex:0 0 80px!important;width:80px!important;min-width:80px!important;max-width:80px!important;height:80px!important;min-height:80px!important;max-height:80px!important}
  .article-thumbnail-img,.article-thumbnail img{height:80px!important;min-height:80px!important;max-height:80px!important}
  .article-thumbnail-placeholder{flex:0 0 80px!important;width:80px!important;min-width:80px!important;max-width:80px!important;height:80px!important;min-height:80px!important;max-height:80px!important}
  .article-body-col{padding:8px 10px!important}
  .article-title{font-size:13px}
  .article-meta{font-size:10px;gap:5px}
  html body #main div.article figure.article-thumbnail,html body #main div.article div.article-thumbnail,html body #main .hentry figure.article-thumbnail,html body #main .hentry div.article-thumbnail{flex:0 0 80px!important;width:80px!important;min-width:80px!important;max-width:80px!important;height:80px!important;min-height:80px!important;max-height:80px!important}
  html body #main div.article figure.article-thumbnail img,html body #main div.article div.article-thumbnail img,html body #main div.article div.article-thumbnail .article-thumbnail-img,html body #main .hentry figure.article-thumbnail img,html body #main .hentry div.article-thumbnail img{height:80px!important;min-height:80px!important;max-height:80px!important}
  html body #main div.article div.article-thumbnail-placeholder,html body #main .hentry div.article-thumbnail-placeholder{flex:0 0 80px!important;width:80px!important;min-width:80px!important;max-width:80px!important;height:80px!important;min-height:80px!important;max-height:80px!important}
  #main figure.article-thumbnail,#main div.article-thumbnail,#main div.article-thumbnail-placeholder,div.article figure.article-thumbnail,div.article div.article-thumbnail,div.article div.article-thumbnail-placeholder{flex:0 0 80px!important;width:80px!important;min-width:80px!important;max-width:80px!important;height:80px!important;min-height:80px!important;max-height:80px!important}
  #main figure.article-thumbnail img,#main div.article-thumbnail img,#main div.article-thumbnail .article-thumbnail-img,div.article figure.article-thumbnail img,div.article div.article-thumbnail img{height:80px!important;min-height:80px!important;max-height:80px!important}
  .article-inner,body.sidebar-right .article-inner,body.sidebar-left .article-inner{display:block!important;float:none!important;width:100%!important;height:auto!important}
  .article-first-image,body.sidebar-right .article-first-image,body.sidebar-left .article-first-image{float:none!important;display:block!important;width:100%!important;max-width:100%!important;height:auto!important;margin:0!important;position:static!important;left:auto!important}
  .article-first-image img{width:100%!important;height:auto!important}
  .article-inner .article-header,.article-inner .article-body,body.sidebar-right .article-inner .article-header,body.sidebar-right .article-inner .article-body,body.sidebar-left .article-inner .article-header,body.sidebar-left .article-inner .article-body{margin-left:0!important;margin-right:0!important;width:100%!important;float:none!important;position:static!important;left:auto!important}
  .rss-blogroll .blogroll-channel{height:180px!important;max-height:180px!important;overflow:hidden!important}
  .sidewrapper .blogroll-channel{height:160px!important;max-height:160px!important;overflow-y:scroll!important}
  .article-page-title{font-size:16px}
  .article-page-body{padding:12px 12px}
  .article-page-share,.article-page-share-bottom{gap:6px}
  .index-navigator a,.index-navigator span,.index-navigator-top a,.index-navigator-top span,.index-navigator-bottom a,.index-navigator-bottom span,.paging a,.paging span,.paging strong{min-width:26px!important;height:28px!important;padding:0 5px!important;font-size:11px!important;border-radius:4px!important}
  .index-navigator .prev,.index-navigator .next,.index-navigator a:first-child,.index-navigator a:last-child,.index-navigator-bottom a:first-child,.index-navigator-bottom a:last-child{padding:0 6px!important;font-size:10px!important}
  .index-navigator,.index-navigator-top,.index-navigator-bottom,.paging{gap:2px!important;padding:8px 4px!important}
  #main .popular-articles ul,#main .popular-articles ol,#main .popular-articles ul[style],#main .popular-articles ol[style]{grid-template-columns:repeat(2,1fr)!important}
  #main .popular-articles ul > li a span,#main .popular-articles ol > li a span,#main .popular-articles ul > li a p,#main .popular-articles ol > li a p,#main .popular-articles ul > li a div,#main .popular-articles ol > li a div,#main .popular-articles ul > li a .title,#main .popular-articles ol > li a .title,#main .popular-articles .popular-articles-list-title{font-size:11px!important;min-height:52px!important;width:100%!important;max-width:100%!important;background-color:#fff!important;color:var(--f-navy,#00205b)!important}
  .archives-page-header{padding:12px 12px 14px}
  .archives-page-title{font-size:16px}
  .archives-page-title-wrap{gap:8px}
}

@media screen and (max-width:320px){
  #main .popular-articles ul,#main .popular-articles ol,#main .popular-articles ul[style],#main .popular-articles ol[style]{grid-template-columns:repeat(2,1fr)!important}
}

/* ============================================================
   v6.6 スマホ記事カード正方形サムネイル（最終強制）
   ============================================================ */
@media screen and (max-width:768px){
  #main .article .article-inner,#main .hentry .article-inner,#main-inner .article .article-inner{display:flex!important;flex-direction:row!important;align-items:flex-start!important;flex-wrap:nowrap!important;gap:0!important;overflow:hidden!important}
  #main .article .article-inner .article-thumbnail,#main .hentry .article-inner .article-thumbnail{flex:0 0 90px!important;width:90px!important;min-width:90px!important;max-width:90px!important;height:90px!important;min-height:90px!important;max-height:90px!important;overflow:hidden!important;border-radius:4px!important;flex-shrink:0!important}
  #main .article .article-inner .article-thumbnail img,#main .article .article-inner .article-thumbnail .article-thumbnail-img,#main .hentry .article-inner .article-thumbnail img,#main .hentry .article-inner .article-thumbnail .article-thumbnail-img{width:100%!important;min-width:100%!important;height:90px!important;min-height:90px!important;max-height:90px!important;object-fit:cover!important;object-position:center center!important;display:block!important}
  #main .article .article-inner .article-thumbnail-placeholder,#main .hentry .article-inner .article-thumbnail-placeholder{flex:0 0 90px!important;width:90px!important;min-width:90px!important;max-width:90px!important;height:90px!important;min-height:90px!important;font-size:24px!important}
  #main .article .article-inner .article-body-col,#main .hentry .article-inner .article-body-col{flex:1 1 0%!important;min-width:0!important;width:auto!important;max-width:100%!important}
  #main .article .article-title,#main .hentry .article-title{font-size:14px!important;line-height:1.5!important;margin:0!important;padding:0!important;border-left:none!important;background:none!important}
  #main .article .article-title-link,#main .hentry .article-title-link{color:var(--f-navy,#00205b)!important;font-size:14px!important;font-weight:700!important;line-height:1.5!important}
  #main .article .article-meta,#main .hentry .article-meta{font-size:10px!important;gap:5px!important}
  #main .article .article-body,#main .hentry .article-body{display:none!important}
  #main .article .article-body-more,#main .hentry .article-body-more{padding:4px 0 2px!important}
  #main .article .article-read-more,#main .hentry .article-read-more{font-size:12px!important;padding:4px 10px!important}
  #main .article .ad-unit-inline,#main .hentry .ad-unit-inline{display:none!important}
  #main .article .article-share,#main .hentry .article-share{padding:4px 0 2px!important;gap:5px!important}
}
@media screen and (max-width:480px){
  #main .article .article-inner .article-thumbnail,#main .hentry .article-inner .article-thumbnail{flex:0 0 72px!important;width:72px!important;min-width:72px!important;max-width:72px!important;height:72px!important;min-height:72px!important;max-height:72px!important;overflow:hidden!important;border-radius:4px!important;flex-shrink:0!important}
  #main .article .article-inner .article-thumbnail img,#main .article .article-inner .article-thumbnail .article-thumbnail-img,#main .hentry .article-inner .article-thumbnail img,#main .hentry .article-inner .article-thumbnail .article-thumbnail-img{width:100%!important;min-width:100%!important;height:72px!important;min-height:72px!important;max-height:72px!important;object-fit:cover!important;object-position:center center!important;display:block!important}
  #main .article .article-inner .article-thumbnail-placeholder,#main .hentry .article-inner .article-thumbnail-placeholder{flex:0 0 72px!important;width:72px!important;min-width:72px!important;max-width:72px!important;height:72px!important;min-height:72px!important;max-height:72px!important;font-size:18px!important}
  #main .article .article-title-link,#main .hentry .article-title-link{font-size:13px!important}
}

/* ============================================================
   v6.8 個別記事ページ overflow 完全解除
   ============================================================ */
html body.page-article .article-body-col,
html body.page-article .article-body,
html body.page-article .article-body-inner,
html body.page-article div.hentry,
html body.page-article div.entry-content,
html body.page-article .article-body-more,
html body.page-article .article-inner{overflow:visible!important;max-height:none!important;height:auto!important;-webkit-line-clamp:unset!important;-webkit-box-orient:unset!important;display:block!important}
html body.page-article .article-body-inner{display:block!important;-webkit-box-orient:unset!important;-webkit-line-clamp:unset!important;overflow:visible!important}
html body.page-article div.entry-content > *,html body.page-article .article-body-more > *{overflow:visible!important;max-height:none!important}
/* v9.32：記事ページの <article class="article hentry page-article-body"> 自体の overflow:hidden を解除 */
html body.page-article article.article,html body.page-article article.hentry,html body.page-article .page-article-body,html body.page-article #main article,html body.page-article #main-inner article{overflow:visible!important;height:auto!important;max-height:none!important;cursor:default!important}
html body.page-article #comments,html body.page-article #article-options,html body.page-article .comments-section,html body.page-article .comment-form-wrap,html body.page-article .article-ad,html body.page-article [id^="fk-ad-"]{overflow:visible!important;height:auto!important;max-height:none!important}
html body.page-article .twitter-tweet,html body.page-article .twitter-tweet-rendered{max-width:100%!important;width:100%!important;min-width:0!important;box-sizing:border-box!important;overflow:visible!important}
html body.page-article .twitter-tweet iframe,html body.page-article .twitter-tweet-rendered iframe{max-width:100%!important;width:100%!important;min-width:0!important;box-sizing:border-box!important;height:unset}
@media screen and (max-width:768px){
  html body.page-article .article-body-col,
  html body.page-article .article-body,
  html body.page-article .article-body-inner,
  html body.page-article div.hentry,
  html body.page-article div.entry-content,
  html body.page-article .article-body-more,
  html body.page-article .article-inner{overflow:visible!important;max-height:none!important;height:auto!important;-webkit-line-clamp:unset!important;display:block!important}
}

/* ============================================================
   v6.9 #content / #main overflow 全ページで visible
   ============================================================ */
html #content,html body #content{overflow:visible!important;overflow-x:visible!important;overflow-y:visible!important}
@media screen and (max-width:768px){
  html #content,html body #content{overflow:visible!important;overflow-x:visible!important;overflow-y:visible!important}
}
html body.page-article #content,html body.page-article #main,html body.page-article #container{overflow:visible!important;overflow-x:visible!important;overflow-y:visible!important;max-height:none!important;height:auto!important}
/* v9.45: article-ad 直接祖先コンテナの overflow:hidden 解除（レイアウト要素は除外） */
#comments,#article-options,.comments-section,section.comments-section,.comment-form-wrap{overflow:visible!important;overflow-y:visible!important;max-height:none!important}

/* ============================================================
   v8.4 コメント快適化UI
   ============================================================ */
#fk-dialog-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.6);z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box;animation:fk-overlay-in .15s ease}
@keyframes fk-overlay-in{from{opacity:0}to{opacity:1}}
.fk-dialog{background:#fff;border-radius:10px;overflow:hidden;width:100%;max-width:360px;box-shadow:0 8px 40px rgba(0,0,0,0.35);animation:fk-dialog-in .18s cubic-bezier(0.34,1.56,0.64,1)}
@keyframes fk-dialog-in{from{opacity:0;transform:scale(0.88) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}
.fk-dialog-header{display:flex;align-items:center;gap:10px;padding:12px 16px}
.fk-dialog-icon{font-size:20px;line-height:1;flex-shrink:0}
.fk-dialog-title{font-size:15px;font-weight:800;color:#fff;letter-spacing:0.03em}
.fk-dialog-body{padding:14px 16px;font-size:14px;line-height:1.7;color:#333;border-bottom:1px solid #eee}
.fk-dialog-body strong{font-weight:800}
.fk-dialog-footer{display:flex;justify-content:flex-end;gap:8px;padding:10px 14px;background:#f8f9fa}
.fk-dialog-btn{padding:8px 18px;border-radius:5px;font-size:13px;font-weight:700;cursor:pointer;border:none;transition:opacity .15s,transform .1s;touch-action:manipulation}
.fk-dialog-btn:active{transform:scale(0.96)}
.fk-dialog-cancel{background:#e8eef8;color:#003f8a}
.fk-dialog-cancel:hover{background:#d0dff5}
.fk-dialog-proceed{background:linear-gradient(to right,#003f8a,#005bbb);color:#fff}
.fk-dialog-proceed:hover{opacity:0.88}
@media screen and (max-width:400px){
  .fk-dialog{max-width:100%}
  .fk-dialog-body{font-size:13px}
}


/* ============================================================
   最終強制：個別記事ページ 本文背景色・文字色（v9.57）
   ※ #f8fbff → #ffffff に変更、color:#111 を追加
   ============================================================ */
html body.page-article .article-page-body,
html body.page-article div.article-page-body,
html body.page-article .article-body.article-page-body{background:#ffffff!important;background-color:#ffffff!important;color:#111!important}
html body.page-article .article-page-body .article-body-inner,
html body.page-article div.article-page-body .article-body-inner{color:#111!important}
/* v9.57c: article-body-inner の直接子要素のみに限定（li・a 単体は廃止→RSS誤爆防止）*/
html body.page-article .article-page-body div.article-body-inner>p,
html body.page-article .article-page-body div.article-body-inner>ul,
html body.page-article .article-page-body div.article-body-inner>ol,
html body.page-article .article-page-body div.article-body-inner>table,
html body.page-article .article-page-body div.article-body-inner>blockquote,
html body.page-article .article-page-body div.article-body-inner>h1,
html body.page-article .article-page-body div.article-body-inner>h2,
html body.page-article .article-page-body div.article-body-inner>h3,
html body.page-article .article-page-body div.article-body-inner>h4,
html body.page-article .article-page-body div.article-body-inner>h5,
html body.page-article .article-page-body div.article-body-inner>h6,
html body.page-article .article-page-body div.article-body-inner>strong,
html body.page-article .article-page-body div.article-body-inner>em{color:#111!important}
html body.page-article .article-page-body div.article-body-inner td,
html body.page-article .article-page-body div.article-body-inner th{color:#111!important}


/* ============================================================
   最終強制：a:visited 閲覧済みリンク色
   ============================================================ */
html body #main .article .article-title a:visited,
html body #main .hentry .article-title a:visited,
html body #main-inner .article .article-title a:visited,
html body #main .article .article-title-link:visited,
html body #main .hentry .article-title-link:visited{color:#6d28d9!important}
html body .related-articles ul li a:visited,
html body .pager-related-articles ul li a:visited,
html body #related-articles ul li a:visited,
html body #main .popular-articles ul > li > a:visited,
html body #main .popular-articles ol > li > a:visited,
html body #main .popular-articles-article-page ul > li a:visited,
html body #main .popular-articles-article-page ol > li a:visited{color:#6d28d9!important}
html body :is(.article-sub-category,.article-sub-popular) a:visited{color:#6d28d9!important}


/* ============================================================
   ユーティリティ（prefers-reduced-motion / forced-colors / print）
   ============================================================ */
/* ダークモード v9.48（美観・視認性全面リファクタリング） */
@media (prefers-color-scheme:dark){
  :root{
    --dk-bg0:#0b0e14;--dk-bg1:#0f1319;--dk-bg2:#1a1f2e;--dk-bg3:#212840;
    --dk-border:#2c3450;--dk-border2:#3a4260;
    --dk-text:#dde4f0;--dk-text-sub:#8a96b0;--dk-text-mute:#5a6480;
    --dk-blue:#4f9be6;--dk-blue-hl:#6eb5ff;--dk-blue-head:#1e3a8a;--dk-gold:#ffd000;
    --f-text:#dde4f0;--f-text-sub:#8a96b0;--f-bg:#0f1319;--f-white:#1a1f2e;
    --f-blue-light:#1e2e50;--f-blue-pale:#111827;
    --f-navy-shadow:rgba(0,0,0,0.55);--f-blue-shadow:rgba(0,0,0,0.65)
  }
  /* 基本構造 */
  html{background-color:#0b0e14}
  body{background-color:#0b0e14;color:#dde4f0}
  #wrapper,#container{background-color:#0b0e14}
  #content,#main,#main-inner{background-color:#0f1319}
  /* 記事カード */
  .article{background:#1a1f2e;border-color:#2c3450;box-shadow:0 1px 4px rgba(0,0,0,0.4)}
  .article:hover{background:#212840;border-color:#3a4260;box-shadow:0 3px 10px rgba(0,0,0,0.5)}
  /* 個別記事ページ */
  article.page-article-body{background:#1a1f2e;box-shadow:0 2px 8px rgba(0,0,0,0.4)}
  .article-page-header{background:linear-gradient(160deg,#112044 0%,#0d1830 100%)!important;border-bottom:2px solid #4f9be6!important}
  /* 記事タイトル */
  .article-title a{color:#dde4f0!important}
  .article-title a:hover{color:#6eb5ff!important}
  .article-title{border-left-color:#4f9be6!important}
  /* 記事本文 */
  div.entry-content,div.hentry div.entry-content,.article-body-inner{background-color:#1a1f2e!important;color:#dde4f0!important}
  .article-body-more{background:none!important;background-color:transparent!important}
  div.entry-content p,div.entry-content li,div.entry-content span:not([class*="ad"]):not([class*="google"]),div.entry-content label,.article-body-inner p,.article-body-inner li{color:#dde4f0!important}
  /* 見出し */
  .article-body-inner h1,div.entry-content h1{color:#e8f0ff!important;border-bottom-color:#2e4a7a!important}
  .article-body-inner h2,div.entry-content h2{color:#c8d8f5!important;border-bottom-color:#253d6a!important}
  .article-body-inner h3,div.entry-content h3{color:#b0c4e8!important;border-bottom-color:#1e3055!important}
  .article-body-inner h4,div.entry-content h4{color:#9ab0d8!important;border-bottom-color:#2c3450!important}
  .article-body-inner h5,div.entry-content h5{color:#849bb8!important}
  .article-body-inner h6,div.entry-content h6{color:#6e84a0!important}
  /* リンク */
  .article-body-inner a,div.entry-content a{color:#4f9be6!important;text-decoration-color:rgba(79,155,230,0.4)!important}
  .article-body-inner a:hover,div.entry-content a:hover{color:#6eb5ff!important}
  .article-body-inner a:visited,div.entry-content a:visited{color:#9d7fd4!important}
  /* 強調・斜体 */
  .article-body-inner strong,.article-body-inner b,div.entry-content strong,div.entry-content b{color:#ffd000!important;background:rgba(255,208,0,0.1)!important}
  .article-body-inner em,.article-body-inner i,div.entry-content em,div.entry-content i{color:#7eb8f7!important}
  /* blockquote */
  .article-body-inner blockquote,div.entry-content blockquote{background:#111827!important;border-left:4px solid #4f9be6!important;color:#8a96b0!important;border-radius:0 6px 6px 0}
  .article-body-inner blockquote::before,div.entry-content blockquote::before{background:#4f9be6!important;color:#fff!important}
  /* コード */
  .article-body-inner code,.article-body-inner pre,div.entry-content code,div.entry-content pre{background:#0d1117!important;color:#79c0ff!important;border-color:#2c3450!important;border-radius:4px}
  /* テーブル */
  .article-body-inner table,div.entry-content table{border-color:#2c3450!important}
  .article-body-inner table th,div.entry-content table th{background:#162040!important;color:#c8d8f5!important;border-color:#2c3450!important}
  .article-body-inner table td,div.entry-content table td{background:#1a1f2e!important;color:#dde4f0!important;border-color:#2c3450!important}
  .article-body-inner table tr:nth-child(even) td,div.entry-content table tr:nth-child(even) td{background:#151b2a!important}
  .article-body-inner table tr:hover td,div.entry-content table tr:hover td{background:#1c2438!important}
  .article-body-inner table thead th,.article-body-inner table tfoot th,div.entry-content table thead th,div.entry-content table tfoot th{background:#162040!important;color:#c8d8f5!important}
  /* 定義リスト・リスト */
  .article-body-inner dl,div.entry-content dl{border-color:#2c3450}
  .article-body-inner dt,div.entry-content dt{color:#4f9be6!important;font-weight:700}
  .article-body-inner dd,div.entry-content dd{color:#8a96b0!important}
  .article-body-inner ul>li,.article-body-inner ol>li,div.entry-content ul>li,div.entry-content ol>li{color:#dde4f0!important}
  .article-body-inner figcaption,.article-body-inner caption,div.entry-content figcaption,div.entry-content caption{color:#8a96b0}
  .article-body-inner hr,div.entry-content hr{border-color:#2c3450;opacity:0.6}
  /* プレビュー・プライベートボックス */
  div.entry-content .preview-box,div.entry-content .private-box,div.entry-content [class*="preview"],div.entry-content [class*="private"]{background:#111827!important;color:#8a96b0!important;border-color:#2c3450!important;border-radius:6px}
  /* 記事メタ・フッター */
  .article-footer,.article-page-footer{border-top-color:#2c3450}
  .article-footer-meta{color:#8a96b0}
  .article-meta,.article-meta-date,.article-meta-comment{color:#5a6480}
  .article-meta a{color:#8a96b0}
  .article-category-link{background:#1e2a50!important;color:#7eb8f7!important;border-color:#2e4270!important;border-radius:3px}
  .article-category-link:hover{background:#4f9be6!important;color:#fff!important}
  /* 前の記事・次の記事ボタン */
  .article-pager a,.pager-article a,a.btn-prev,a.btn-next,.article-page-footer a[rel="prev"],.article-page-footer a[rel="next"]{background:#0e387a!important;color:#fff!important;border-color:#1e4a8a!important;border-radius:4px}
  .article-pager a:hover,.pager-article a:hover,a.btn-prev:hover,a.btn-next:hover{background:#1a4d9e!important}
  /* シェアボタン */
  .share-btn.share-x{background:#111!important;border-color:#444!important;color:#fff!important}
  .share-btn.share-line{background:#06c755!important;border-color:#05b04b!important;color:#fff!important}
  /* コメント欄 */
  .comments-section{background:#0f1319!important;border-color:#2c3450!important;border-radius:8px}
  .comments-section>.comments-header,.comments-title,h2.comments-title,#comment-header,.fk-comments-header{background:linear-gradient(to right,#003b80,#004f9a)!important;color:#fff!important;border-radius:6px 6px 0 0}
  .commentList{background:transparent}
  .commentList li{background:#151b2a!important;border-bottom-color:#2c3450!important;color:#dde4f0!important}
  .commentList li:nth-child(even){background:#1a2236!important}
  .commentList li:first-child{border-top-color:#4f9be6!important}
  .commentList li:last-child{border-bottom-color:#3a4260!important}
  .commentList li:hover{background:#1e2840!important}
  .comment-body{color:#dde4f0!important}
  .comment-author,.commentList .comment-author{color:#4f9be6!important;font-weight:700}
  .comment-date{color:#5a6480!important}
  .comment-id{color:#8a96b0!important;background:#1e2840!important;border-color:#3a4260!important}
  .comment-num{background:#4f9be6!important;color:#fff!important}
  .comment-replies::before{background:rgba(79,155,230,0.3)!important}
  .comment-replies>li.comment-reply{background:#111827!important;color:#dde4f0!important;border-bottom-color:rgba(79,155,230,0.12)!important}
  .comment-replies>li.comment-reply:hover{background:#1a2236!important}
  .comment-replies .comment-replies>li.comment-reply{background:#0f1520!important;color:#dde4f0!important}
  .comment-replies .comment-replies>li.comment-reply:hover{background:#151e30!important}
  .comment-reply .comment-body{color:#dde4f0!important}
  .comment-reply .comment-header::before{color:rgba(79,155,230,0.7)!important}
  /* コメントフォーム */
  .comment-form-wrap{background:#111827;border-top-color:#2c3450;border-radius:0 0 6px 6px}
  .comment-form-wrap input[type="text"],.comment-form-wrap textarea{background:#1a1f2e!important;color:#dde4f0!important;border:1px solid #3a4260!important;border-radius:4px;caret-color:#4f9be6}
  .comment-form-wrap input[type="text"]:focus,.comment-form-wrap textarea:focus{border-color:#4f9be6!important;box-shadow:0 0 0 2px rgba(79,155,230,0.25)}
  .comment-form-wrap input[type="submit"],.comment-form-wrap button[type="submit"],.fk-comment-submit{background:#25c136!important;color:#fff!important;border-color:#1db32d!important;border-radius:4px;font-weight:700}
  .fk-sort-btn-old{background:#ffd000!important;color:#1a1000!important;border-color:#d4ac00!important;border-radius:4px;font-weight:700}
  .fk-sort-btn-new{background:#1a3a7a!important;color:#fff!important;border-color:#2a4a8a!important;border-radius:4px}
  .fk-comment-open{background:#00b050!important;color:#fff!important;border-color:#009040!important;border-radius:4px;font-weight:700}
  /* サイドバー */
  .sidewrapper{color:#dde4f0}
  .sidewrapper .sidetitle{background:linear-gradient(to right,#112240,#162a50)!important;border-bottom:2px solid #4f9be6!important;color:#c8d8f5!important;border-radius:4px 4px 0 0}
  .sidewrapper .side{background:#1a1f2e}
  .sidewrapper .side .sidebody{border-bottom-color:#2c3450;color:#dde4f0!important;background:transparent}
  .sidewrapper .side .sidebody p,.sidewrapper .side .sidebody li,.sidewrapper .side .sidebody span{color:#dde4f0!important}
  .sidewrapper .side .sidebody a{color:#4f9be6!important}
  .sidewrapper .side .sidebody a:hover{color:#6eb5ff!important}
  .sidewrapper dl,.sidewrapper dt,.sidewrapper dd{color:#dde4f0!important}
  /* 週間人気記事 */
  #main .popular-articles,#main .popularArticlesWithImage{background:#1a1f2e!important;border-color:#2c3450!important;box-shadow:0 2px 8px rgba(0,0,0,0.4)!important;border-radius:6px}
  #main .popular-articles ul>li,#main .popular-articles ol>li,#main .popularArticlesWithImage ul>li,#main .popularArticlesWithImage ol>li{background:#1a1f2e!important;border-color:#2c3450!important}
  #main .popular-articles ul>li a div.title,#main .popular-articles ol>li a div.title,#main .popularArticlesWithImage ul>li a div.title,#main .popularArticlesWithImage ol>li a div.title{background:#1a1f2e!important;color:#dde4f0!important}
  /* 関連記事 */
  .related-articles,.pager-related-articles,#related-articles{background:#1a1f2e;border-color:#2c3450;box-shadow:0 2px 8px rgba(0,0,0,0.4);border-radius:6px}
  .related-articles ul li,.pager-related-articles ul li,#related-articles ul li{background:#1a1f2e!important;border-color:#2c3450!important}
  .related-articles ul li a,#related-articles ul li a{color:#dde4f0!important}
  .related-articles ul li a:hover,#related-articles ul li a:hover{color:#6eb5ff!important}
  /* RSS・blogroll（v9.58b: .rss-blogroll .blogroll-channelは白背景を維持） */
  .blogroll,.blogroll-list{background:#1a1f2e!important;color:#dde4f0!important;border-color:#2c3450!important;border-radius:6px}
  /* .rss-blogroll全体の背景はグレー系のままでOK */
  /* .blogroll-channelは白背景を強制維持（ダークモードでも） */
  html body .rss-blogroll .blogroll-channel{background:#ffffff!important;color:#00205b!important;border-color:rgba(0,32,91,0.14)!important}
  html body .rss-blogroll .blogroll-channel .blogroll-list{background:#ffffff!important;color:#00205b!important}
  html body .rss-blogroll .blogroll-channel .blogroll-list a{color:#00205b!important}
  html body .rss-blogroll .blogroll-channel .blogroll-list li{color:#00205b!important}
  html body .rss-blogroll .blogroll-channel-title{background:linear-gradient(135deg,#00205b,#005bbb)!important;color:#fff!important}
  html body .rss-blogroll .blogroll-channel-title a{color:#fff!important}
  .blogroll-channel-title,.rss-blogroll .blogroll-channel-title{font-weight:600}
  html body .rss-blogroll a:hover,.blogroll-channel-title a:hover{color:#6eb5ff!important}
  html body .rss-blogroll a:visited,.blogroll-channel-title a:visited{color:#9d7fd4!important}
  .article-sub-popular,.article-sub-category,html body #main .article-sub-popular,html body #main .article-sub-category{background:#1a1f2e!important;color:#dde4f0!important;border-color:#2c3450!important;border-radius:6px}
  .article-sub-popular li,.article-sub-category li{color:#dde4f0!important;border-bottom-color:#2c3450!important}
  .article-sub-popular a,.article-sub-category a{color:#dde4f0!important}
  .article-sub-popular a:hover,.article-sub-category a:hover{color:#6eb5ff!important}
  /* ページネーション */
  .index-navigator a,.paging a,.index-pager a{background:#1a1f2e!important;color:#4f9be6!important;border-color:#2c3450!important;border-radius:4px}
  .index-navigator a:hover,.paging a:hover,.index-pager a:hover{background:#212840!important;color:#6eb5ff!important;border-color:#3a4260!important}
  .index-navigator strong,.paging strong{background:#1e3a8a!important;color:#fff!important;border-radius:4px}
  /* ダイアログ・ポップアップ */
  .fk-dialog{background:#1a1f2e;border-color:#2c3450;border-radius:8px;box-shadow:0 8px 32px rgba(0,0,0,0.6)}
  .fk-dialog-body{color:#dde4f0;border-bottom-color:#2c3450}
  .fk-dialog-footer{background:#111827;border-radius:0 0 8px 8px}
  .fk-dialog-cancel{background:#212840;color:#4f9be6;border-color:#2c3450;border-radius:4px}
  #fk-anchor-popup{background:#1a1f2e;border-color:#2c3450;border-radius:6px;box-shadow:0 4px 16px rgba(0,0,0,0.5);color:#dde4f0}
  /* ページトップ */
  .to-pagetop a{background:linear-gradient(135deg,#003f8a,#00205b)}
  .to-pagetop a:hover{background:linear-gradient(135deg,#1a4f9a,#003066)}
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:0.01ms!important;transition-delay:0ms!important;animation-duration:0.01ms!important;animation-iteration-count:1!important}
  html{scroll-behavior:auto!important}
  .article-title.new-entry::after{animation:none!important;opacity:1!important}
  .to-pagetop a:hover{transform:none!important}
  .article:hover{transform:none!important}
  p.more a:hover{transform:none!important}
  p.more a:hover::after{transform:none!important}
  .article,.to-pagetop a,div.entry-content p.more a{will-change:auto}
  .article-thumbnail-img,.article-read-more,.article-inner{transition:none!important}
  .article-inner:hover .article-thumbnail-img{transform:none}
  div.entry-content p.more a,.to-pagetop a{transition:none!important}
}
@media (forced-colors:active){
  a{color:LinkText}
  a:visited{color:VisitedText}
  .article{border:2px solid ButtonText;background:Canvas}
  .article-title{background:Canvas;border-left:5px solid Highlight;color:CanvasText}
  .article-title a{color:LinkText}
  div.entry-content p.more a{background:ButtonFace;color:ButtonText;border:2px solid ButtonText;forced-color-adjust:none}
  .to-pagetop a{background:ButtonFace;border:2px solid ButtonText;forced-color-adjust:none}
  .to-pagetop a::before{border-top-color:ButtonText;border-right-color:ButtonText}
  .ldb_menu{background:Canvas;border-bottom:3px solid Highlight}
  .ldb_menu-list li a{color:LinkText}
  .ldb_menu-list .ldb_menu-item-current,.ldb_menu-list li a:hover{background:Highlight;color:HighlightText;forced-color-adjust:none}
  .sidewrapper .sidetitle{background:Canvas;border-left:4px solid Highlight;border-bottom:2px solid ButtonText;color:CanvasText}
  .article-body-inner blockquote{background:Canvas;border-left:4px solid Highlight}
  .article-body-inner blockquote::before{background:Highlight;color:HighlightText;forced-color-adjust:none}
  .article-body-inner strong,.article-body-inner b{background:Mark;color:MarkText;forced-color-adjust:none}
  a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:3px solid Highlight;outline-offset:3px}
  .commentList li:nth-child(even){background:Canvas}
  .commentList li:hover{background:Highlight;color:HighlightText}
  .comment-num{background:Highlight;color:HighlightText;forced-color-adjust:none}
  .google-user-ad::before,.google-user-ad-728::before,.google-user-ad-side::before,.google-user-ad-side1::before{color:GrayText}
  #blog-footer{background:Canvas;border-top:2px solid ButtonText;color:CanvasText}
  #blog-footer a{color:LinkText}
  .article-category-link{background:ButtonFace;color:ButtonText;border:1px solid ButtonText;forced-color-adjust:none}
  .article-read-more{background:ButtonFace;color:ButtonText;border:2px solid ButtonText;forced-color-adjust:none}
  .share-btn{background:ButtonFace;color:ButtonText;border:1px solid ButtonText;forced-color-adjust:none}
}
@media print{
  #sidebar,.ldb_menu,.article-social-btn,.article-footer,.to-pagetop,#ad2,.google-user-ad,.google-user-ad-728,.google-user-ad-side,.google-user-ad-side1,div.google-2ad,#imobile_adspotdiv1,ul.index-navigator,ul.article-pager,ul.archives-pager,#blog-footer{display:none!important}
  #container,#main{width:100%!important;float:none!important;margin:0!important;padding:0!important}
  body{background:#fff!important;color:#000!important;font-size:12pt}
  .article{border:1px solid #ccc!important;box-shadow:none!important;margin-bottom:12pt!important;page-break-inside:avoid}
  .article-title{background:none!important;border-left:4pt solid #003f8a!important;font-size:14pt!important;color:#000!important}
  .article-title a{color:#000!important}
  .article-body{font-size:11pt!important;line-height:1.6!important}
  .article-body-inner a::after{content:" (" attr(href) ")";font-size:9pt;color:#666}
  .google-user-ad a::after,.google-user-ad-728 a::after,.google-user-ad-side a::after,#ad2 a::after,.ldb_menu a::after,.article-title a::after,.sidewrapper a::after,p.more a::after{content:none!important}
  #blog-header-image{display:none!important}
  #blog-title a{color:#000!important}
}

/* ============================================================
   v8.9 追加
   ============================================================ */
.comment-id,
span.comment-id,
.commentList .comment-id{cursor:default!important;pointer-events:none!important}
.comment-highlight,
.commentList li.comment-highlight,
.commentList .comment-set.comment-highlight{
  background:inherit!important;
  background-color:inherit!important;
  color:inherit!important;
  outline:none!important;
  box-shadow:none!important;
}
.comment-form-sumibit,
.comment-form-sumibit input,
.comment-form-sumibit button,
p.comment-form-sumibit,
p.comment-form-sumibit input[type="submit"],
p.comment-form-sumibit button{cursor:pointer!important}

/* ============================================================
   v8.9 返信ボタン（.fk-reply-btn）
   ============================================================ */
.fk-reply-btn{
  display:inline-flex;align-items:center;gap:4px;
  margin-left:auto;
  padding:2px 9px;
  font-size:11px;font-weight:600;
  color:#1a56db;
  background:transparent;
  border:1px solid #1a56db;
  border-radius:20px;
  cursor:pointer;
  transition:background .15s,color .15s;
  white-space:nowrap;
  line-height:1.6;
}
.fk-reply-btn:hover{background:#1a56db;color:#fff}
.fk-reply-btn--active{background:#16a34a!important;border-color:#16a34a!important;color:#fff!important}
.comment-header{display:flex;align-items:center;flex-wrap:wrap;gap:4px}
.comment-header .fk-reply-btn{margin-left:auto}


/* ============================================================
   v9.0 コメント並び順切り替えボタン（.fk-sort-btns / .fk-sort-btn）
   ============================================================ */
.comments-title{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.fk-sort-btns{display:inline-flex;align-items:center;gap:4px;margin-left:auto}
.fk-sort-btn{
  display:inline-flex;align-items:center;gap:4px;
  padding:3px 10px;
  font-size:11px;font-weight:700;
  color:rgba(255,255,255,0.7);
  background:transparent;
  border:1px solid rgba(255,255,255,0.35);
  border-radius:20px;
  cursor:pointer;
  transition:background .15s,color .15s,border-color .15s;
  white-space:nowrap;
  line-height:1.6;
  font-family:inherit;
}
.fk-sort-btn:hover{
  background:rgba(255,255,255,0.15);
  color:#fff;
  border-color:rgba(255,255,255,0.6);
}
.fk-sort-btn--active{
  background:var(--f-gold,#ffd700)!important;
  border-color:var(--f-gold,#ffd700)!important;
  color:var(--f-navy,#00205b)!important;
}
.fk-sort-btn--active:hover{
  background:#ffe54c!important;
}
.fk-comment-btn{
  display:inline-flex;align-items:center;gap:4px;
  padding:3px 11px;
  font-size:11px;font-weight:700;
  color:#fff;
  background:#16a34a;
  border:1px solid #16a34a;
  border-radius:20px;
  cursor:pointer;
  transition:background .15s,opacity .15s;
  white-space:nowrap;
  line-height:1.6;
  font-family:inherit;
}
.fk-comment-btn:hover{background:#15803d;border-color:#15803d}
.fk-comment-btn:active{opacity:.85}
@media screen and (max-width:480px){
  .fk-sort-btn{font-size:10px;padding:2px 8px}
  .fk-comment-btn{font-size:10px;padding:2px 9px}
}


/* ============================================================
   v9.37 サイドレール ins の余白対応

   【AdSenseサイドレールの仕様】
   ins[data-side-rail-status] は body直下に position:fixed で配置され、
   AdSenseが意図的に大きな height（例:600px）を確保する。
   これはスクロール追従広告のための縦長コンテナ確保であり、
   height:auto に変更するとスクロール追従機能が壊れる。

   【対策方針】
   overflow:hidden で ins の高さを iframe（広告本体）に合わせて切り取る。
   ins 自体の height はAdSenseに任せ、内部をクリップする。
   ============================================================ */
ins.adsbygoogle[data-side-rail-status]{
  overflow:hidden!important
}


/* ============================================================
   PBP広告 UX改善（v9.59）
   対象：フローティング・アンカー・インタースティシャル
   記事下AdSense（.google-user-ad等）は除外
============================================================ */
div[id^="imobile_adspot"],div[id^="imobile_"],#imobile_adspotdiv1,#imobile_adspotdiv2,#imobile_adspotdiv3{display:none!important}
div[id^="ldb_ad_bottom"],div[id^="ldb_ad_anchor"],#ldb_ad_bottom_float,#ldb_ad_bottom_fixed,div[class^="ldb-ad-bottom"],div[class*="anchor-ad"],div[class*="ad-anchor"],div[class*="bottom-ad-wrap"],div[class*="bottom_ad"],div[id*="bottom_ad"],div[id*="bottomad"]{display:none!important}
div[id^="ldb_float"],div[class*="float-ad"],div[class*="floating-ad"],div[class*="ad-float"],div[id*="float_ad"],div[id*="floatad"],div[id*="liberty"],div[class*="liberty"],iframe[src*="liberty"]{display:none!important}
@media (max-width:767px){
  body>div[style*="position: fixed"],body>div[style*="position:fixed"]{pointer-events:none!important;opacity:0!important;visibility:hidden!important}
  body>div#mypopup,body>div#toast,body>div.fk-firework-canvas,body>canvas{pointer-events:auto!important;opacity:1!important;visibility:visible!important}
}

