/* ========================================
   バナー・リンクセクション専用CSS（上書き補正用）
   既存CSSとの競合を回避
   ======================================== */

/* ========================================
   バナーセクション（.eachcontent.one）
   ======================================== */
.site-content .wrap .content-area .site-main .eachcontent.one .container ul.fbox.banner-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  gap: 20px 20px !important;
  margin-top: 50px !important;
  margin-bottom: 50px !important;
  max-width: 1020px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.site-content .wrap .content-area .site-main .eachcontent.one .container ul.fbox.banner-grid li.banner-item {
  width: calc(25% - 15px) !important;
  min-width: 240px !important;
  max-width: none !important;
  flex: 0 0 calc(25% - 15px) !important;
  margin: 0 !important;
}

.site-content .wrap .content-area .site-main .eachcontent.one .container ul.fbox.banner-grid li.banner-item:nth-child(5) {
  width: 240px !important;
  flex: 0 0 240px !important;
}

.site-content .wrap .content-area .site-main .eachcontent.one .container ul.fbox.banner-grid li.banner-item img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

/* スマホ版 */
@media screen and (max-width: 750px) {
  .site-content .wrap .content-area .site-main .eachcontent.one .container ul.fbox.banner-grid {
    gap: 20px 3% !important;
    margin-top: 30px !important;
  }

  .site-content .wrap .content-area .site-main .eachcontent.one .container ul.fbox.banner-grid li.banner-item {
    width: 47% !important;
    min-width: 47% !important;
    max-width: 47% !important;
    flex: 0 0 47% !important;
  }
}

/* ========================================
   リンクセクション（.eachcontent.six）
   ======================================== */

/* PC: 余白・行数調整 */
.site-content .wrap .content-area .site-main .eachcontent.six .container ul#flex-justify.fbox.lf.link-grid {
  gap: 20px 20px !important;
  justify-content: flex-start !important;
  margin-top: 30px !important;
  margin-bottom: 30px !important;
}

.site-content .wrap .content-area .site-main .eachcontent.six .container ul#flex-justify.fbox.lf.link-grid li.link-item {
  width: 200px !important;
  flex: 0 0 200px !important;
  margin: 0 !important;
}

/* 画像バナー用：既存a.banを尊重 */
.site-content .wrap .content-area .site-main .eachcontent.six .container ul#flex-justify.fbox.lf li a.ban.link-ban {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  padding: 0 !important;
  border: none !important;
  background: none !important;
}

.site-content .wrap .content-area .site-main .eachcontent.six .container ul#flex-justify.fbox.lf li a.ban.link-ban img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

/* スマホ版 */
@media screen and (max-width: 750px) {
  .site-content .wrap .content-area .site-main .eachcontent.six .container ul#flex-justify.fbox.lf.link-grid {
    gap: 20px 3% !important;
    width: 96% !important;
    margin: 30px auto !important;
  }

  .site-content .wrap .content-area .site-main .eachcontent.six .container ul#flex-justify.fbox.lf.link-grid li.link-item {
    width: 47% !important;
    flex: 0 0 47% !important;
  }
}

