/*  */
.news-section h2{
 font-size: 18px;
}
.news-list{
 list-style: none;
 padding: 0;
 margin: 0;
}
.news-item{
 display: flex;
 align-items: center;
 gap: 20px;
 padding: 4px 0;
 border-bottom: 1px solid #ccc;
 font-size: 15px;
}
.news-item .category{
 display: inline-block;
 min-width: 100px;
 font-size: 13px;
 color: white;
 padding: 4px 8px;
 border-radius: 4px;
 text-align: center;
}
.news-item.golden .category{ background-color: #B8860B; }
.news-item .date{ font-size: 13px; color: #666; }
.news-item a{
 color: #333;
 text-decoration: none;
 font-weight: bold;
 flex-grow: 1;
}
.news-item a:hover{
 text-decoration: underline;
}

/* サブタイトル用 */
.heading-31{
 position: relative;
 padding: .3em 0 .2em 1em;
 border-bottom: 3px solid #186B42;
 color: #186B42;                   /* サブタイトル・カラー */
}
.heading-31::before{
 position: absolute;
 top: 0;
 left: .3em;
 transform: rotate(55deg);
 height: 11px;
 width: 12px;
 border-bottom: 8px solid #186B42;  /* サブタイトル・カラー */
 content: '';
}
.heading-31::after{
 position: absolute;
 transform: rotate(15deg);
 top: .6em;
 left: 0;
 height: 8px;
 width: 8px;
 border-bottom: 8px solid #186B42;  /* サブタイトル・カラー */
 content: '';
}

img{
 width: 100%;
 height: 100%;
 vertical-align: bottom;
}

/* =========================================================
   Contents BOX（元定義）
========================================================= */
.wrap{
 display: flex;
 flex-wrap: wrap;
 justify-content: flex-start;
 gap: 11px;
}

.item{
 padding: 10px 15px;
 width: 24%;            /* PC時 */
 background-color: #fff;
 box-shadow: 0 12px 10px -6px rgba(0,0,0,.25);
 box-sizing: border-box;
 display: flex;
 flex-direction: column;
}

.item img{
 width: 100%;
 height: auto;
 display: block;
}

.item p{
 font-size: 12px;
}

/* タブレット */
@media (max-width: 1023px) and (min-width: 768px){
 .item{
  width: calc(50% - 6px);
 }
}

@media (max-width: 767px){
 .item{
  width: calc(50% - 6px);
 }
 .item img{
  aspect-ratio: 4 / 3;
  height: auto;
  object-fit: cover;
 }
}

/* =========================================================
 ✅ 指定修正反映（他エリア非影響・最終版）
========================================================= */
.top--section_block_B .wrap .item{
 border-radius: 12px;      /* itemの角丸 */
 overflow: hidden;         /* 拡大画像のはみ出し防止 */
}

.top--section_block_B .wrap .item a{
 display: block;
 text-decoration: none;    /* 下線非表示 */
 color: inherit;           /* 文字色固定 */
}

.top--section_block_B .wrap .item a:hover,
.top--section_block_B .wrap .item a:visited,
.top--section_block_B .wrap .item a:active{
 text-decoration: none;
 color: inherit;
}

.top--section_block_B .wrap .item img{
 border-radius: 12px;      /* imgの角丸 */
 transition: transform 0.3s ease;
 will-change: transform;
}

.top--section_block_B .wrap .item:hover img{
 transform: scale(1.05);   /* 画像オンマウス拡大 */
}

.top--section_block_B .wrap .item h4{
 color: inherit;           /* hover時も文字色変化なし */
}