/* 共通 */
.fdbi-related-block{margin:16px 0}
.fdbi-related-block > h2{font-size:1.05rem;margin:0 0 .6em}
.fdbi-linkcards{width:100%}

/* ============ 横型（既定） ============ */
.fdbi-linkcards.fdbi-layout--hlist{display:flex;flex-direction:column;gap:12px}
.fdbi-linkcards.fdbi-layout--hlist .fdbi-linkcard{
  display:flex;gap:10px;align-items:flex-start;
  background:transparent;  /* テーマ色に馴染ませる */
  color:inherit;
  border-radius:10px;overflow:hidden;
}
.fdbi-linkcards.fdbi-layout--hlist .fdbi-lc-thumb{
  flex:0 0 180px;display:block;aspect-ratio:16/10;
  background:#222;overflow:hidden;position:relative;
}
.fdbi-linkcards.fdbi-layout--hlist .fdbi-lc-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.fdbi-linkcards.fdbi-layout--hlist .fdbi-lc-body{flex:1 1 auto;padding:10px}
.fdbi-linkcards.fdbi-layout--hlist .fdbi-lc-title{margin:0 0 .35em;font-weight:700;font-size:1rem}
.fdbi-linkcards.fdbi-layout--hlist .fdbi-lc-excerpt{margin:.2em 0 .6em;font-size:.9rem;opacity:.9}
.fdbi-linkcards.fdbi-layout--hlist .fdbi-lc-meta{display:flex;gap:8px;font-size:.8rem;opacity:.8}
.fdbi-linkcards.fdbi-layout--hlist a{color:inherit;text-decoration:none}

/* ============ カード（grid） ============ */
.fdbi-linkcards.fdbi-layout--grid{display:grid;gap:12px}
.fdbi-linkcards.fdbi-layout--grid.cols-1{grid-template-columns:1fr}
.fdbi-linkcards.fdbi-layout--grid.cols-2{grid-template-columns:repeat(2,1fr)}
.fdbi-linkcards.fdbi-layout--grid.cols-3{grid-template-columns:repeat(3,1fr)}
@media (max-width:640px){
  .fdbi-linkcards.fdbi-layout--grid.cols-3{grid-template-columns:repeat(2,1fr)}
  .fdbi-linkcards.fdbi-layout--grid.cols-2{grid-template-columns:repeat(2,1fr)}
}

/* カード本体：タイトルを画像の上に重ね、hoverでタイトル非表示 */
.fdbi-linkcards.fdbi-layout--grid .fdbi-linkcard{
  position:relative; display:block; background:#111; color:#fff; border-radius:10px; overflow:hidden;
  box-shadow:0 6px 16px rgba(0,0,0,.15); transition:transform .15s ease, box-shadow .15s ease;
}
.fdbi-linkcards.fdbi-layout--grid .fdbi-linkcard:hover{
  transform:translateY(-2px); box-shadow:0 10px 24px rgba(0,0,0,.22);
}
.fdbi-linkcards.fdbi-layout--grid .fdbi-lc-thumb{
  display:block; position:relative; aspect-ratio:16/10; background:#222; overflow:hidden;
}
.fdbi-linkcards.fdbi-layout--grid .fdbi-lc-thumb img{
  width:100%; height:100%; object-fit:cover; display:block; position:relative; z-index:0; transform:scale(1.001);
  transition:transform .25s ease;
}
.fdbi-linkcards.fdbi-layout--grid .fdbi-linkcard:hover .fdbi-lc-thumb img{ transform:scale(1.02); }
/* 画像上グラデ（可読性UP） */
.fdbi-linkcards.fdbi-layout--grid .fdbi-lc-thumb::before{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(0,0,0,0) 45%, rgba(0,0,0,.70) 100%);
  z-index:1; pointer-events:none;
}
/* タイトルを画像上に重ねる（hoverで透明に） */
.fdbi-linkcards.fdbi-layout--grid .fdbi-lc-body{
  position:absolute; left:10px; right:10px; bottom:10px; padding:0; z-index:2; pointer-events:none;
}
.fdbi-linkcards.fdbi-layout--grid .fdbi-lc-title{
  margin:0; font-size:.95rem; line-height:1.35; font-weight:700; color:#fff;
  text-shadow:0 1px 2px rgba(0,0,0,.7); transition:opacity .2s ease; opacity:1;
}
.fdbi-linkcards.fdbi-layout--grid .fdbi-linkcard:hover .fdbi-lc-title{ opacity:0; }
/* テーマの飾り抑止 */
.fdbi-linkcards.fdbi-layout--grid .fdbi-lc-thumb::after,
.fdbi-linkcards.fdbi-layout--grid .fdbi-lc-thumb a::before{ content:none !important; }

/* リンク色は継承 */
.fdbi-linkcards .fdbi-linkcard a,
.fdbi-linkcards .fdbi-linkcard a:hover,
.fdbi-linkcards .fdbi-linkcard a:focus{ color:inherit; text-decoration:none }
