/* page styles */
.page-media-main {
  padding: 110px 0 0;
}

@media screen and (width <=992px) {
  .page-media-main {
    padding: 60px 0 0;
  }
}

.page-media-content-section .read{
  margin-bottom: 30px;
  font-size: 18px;
  font-weight: 500;
  text-align: center;
}

@media screen and (width <=767px) {
  .page-media-content-section .read{
    margin-bottom: 30px;
    font-size: 11px;
  }
}

/* TODO: リファクタリング（クラス命名） */

/* NOTE: top.cssからママ流用 */

.container-media {
  margin-bottom: 120px;
}

.container-media .tab {
  max-width: 920px;
  padding: 0 15px;
  margin: 0 auto;
  margin-bottom: 30px;
}

.container-media .tab_menu {
  display: flex;
  justify-content: space-between;
  height: 40px;
  margin: 0 auto 20px;
  cursor: pointer;
  background: #F2F2F2;
  border-radius: 40px;
}

.container-media .tab_menu .tab_menu-item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 33.3%;
  line-height: 80%;
  border-radius: 40px;
}

.tab_menu .tab_menu-item.is-active {
  color: #FFF;
}

/* 黒背景アニメーション */
.tab_menu {
  position: relative;

  --i: 0;
}

.tab_menu::after {
  position: absolute;
  top: 0;
  left: calc(100% / var(--item-count) * var(--i));
  z-index: 0;
  width: calc(100% / var(--item-count));
  height: 100%;
  content: "";
  background: #353535;
  border-radius: 40px;
  transition: left .3s;
}

.tab_menu .tab_menu-item {
  position: relative;
  z-index: 1;
}

/* 黒背景アニメーション END */

.tab_panel-box {
  display: none;
  opacity: 0;
}

.tab_panel-box.is-show {
  display: block;
  animation-name: fadeIn;
  animation-fill-mode: forwards;
  animation-duration: 0.6s;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(-5px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.bnr-area ul {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 30px;
  margin: 0 auto;
}

.bnr-area p.empty {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 140px;
}

.bnr-area ul li {
  max-width: calc(50% - 15px);
}

.bnr-area.is-display {
  display: block;
}

@media screen and (width <=768px) {
  .container-media {
    margin-bottom: 70px;
  }

  .container-media .tab {
    padding: 0 20px;
  }

  .container-media .tab_menu {
    flex-wrap: wrap;
    height: auto;
    border-radius: 17px;
  }

  .container-media .tab_menu .tab_menu-item {
    // width: 33%;
    width: 50%;

    /* tab4piece */
    height: 34px;
    font-size: 14px;
  }

  .bnr-area ul li {
    max-width: 100%;
  }

  .bnr-area p.empty {
    height: 29vw;
    font-size: 11px;
  }

  /* 黒背景アニメーション */
  .tab_menu::after {
    // top: calc(100% / 2 * var(--ii));
    top: calc(100% / 2 * var(--ii));

    /* tab4piece */

    // left: calc(100% / 3 * var(--i));
    left: calc(100% / 2 * var(--i));

    /* tab4piece */

    // width: 33.3%;
    width: 50%;
    height: 34px;
    transition: all .3s;
  }

  /* 黒背景アニメーション END */
}

.js-following-tab-menu.tab_menu[data-is-fixed="true"] {
  position: fixed;
  top: 0;
  z-index: 10;
  width: 100%;
  max-width: 880px;
  margin: 0 auto;
  transform: translateY(15px);
}

@media screen and (width <=768px) {
  .js-following-tab-menu.tab_menu[data-is-fixed="true"] {
    max-width: calc(100% - 40px);
  }
}

/** MEDIA END */
