/* 見出し帯（既存の「おすすめ」と同等の見た目） */
.isa-recohead--related{
    --reco-band-bg:#fff; /* 今回は白地に */
    --reco-title-color:#232a31;
    display:flex; align-items:center; gap:10px;
    background:var(--reco-band-bg);
    padding:8px 2px 6px; /* 余白控えめ */
    margin:18px 0 8px;
}
.isa-reco__icon{
    width: 41px;
    height: 31px;
    object-fit:contain;
}
.isa-reco__title{
    font-size: 18px;
    font-weight: 700;
    color: var(--reco-title-color);
    letter-spacing: .02em;
}

/* 下線 */

/* 上部ヒーロー */
.isa-relp__hero{
    width:100%;
    aspect-ratio: 16/9;
    background:#e6e6e6;
    margin:40px 0 18px;
    position:relative; overflow:hidden;
}
.isa-relp__heroimg{ width:100%; height:100%; object-fit:cover; display:block; }
.isa-relp__hero-ph{ display:block; width:100%; height:100%; background:#e3e3e3; }

/* リスト（縦並び） */
.isa-relp__list{
    list-style:none; margin:24px 0 0; padding:0;
    display:flex; flex-direction:column; gap:26px;
}

.isa-relp__card{
    display:flex; gap:22px;
    text-decoration:none; color:inherit;
    align-items: center;
}

.isa-relp__thumb{
    width: 116px;
    flex:0 0 auto;
}
.isa-relp__thumbimg{ width:100%; }
.isa-relp__thumb-ph{ display:block; width:100%; height:100%; background:#e6e6e6; }

.isa-relp__body{
    min-width:0;
    font-size: 14px;
}
.isa-relp__desc{
    margin:0;
    font-size: clamp(16px, 2vw, 20px);
    line-height: 1.8;
    color:#2b333a;
    letter-spacing:.2px;
}

/* 既定では PC/SP 専用改行は非表示 */
.isa-br--pc,
.isa-br--sp { display: none; }

.isa-relp__notice{ font-size:14px; color:#888; }

@media (max-width: 640px){
    .isa-relp__thumb{ width:140px; }
}

/* PCのみ改行（1025px以上） */
@media (min-width: 1025px) {
    .isa-br--pc { display: inline; }
}

/* SPのみ改行（1024px以下） */
@media (max-width: 1024px) {
    .isa-br--sp { display: inline; }
}