/* ↓↓↓ fv ↓↓↓ */
.fv {
  position: relative;
  padding-top: min(260px, 20.3125cqw);
  @media (max-width: 768px) {
    padding-top: 196px;
  }
  .fv-inner {
    max-width: 1280px;
    margin: 0 auto;
    container-type: inline-size;
    @media (max-width: 768px) {
      max-width: 100%;
    }

    .ttl-wrap {
      margin-left: 10cqw;
      @media (max-width: 768px) {
        margin-left: 32px;
      }
      .en {
        position: relative;
        font-size: 1.09375cqw;
        font-family: var(--text-lato);
        font-weight: 700;
        color: #0090BA;
        letter-spacing: 0.08em;
        padding-left: 1.7968749999999998cqw;
        @media (max-width: 768px) {
          font-size: 1.4rem;
          padding-left: 23px;
        }
        &::after {
          content: '';
          position: absolute;
          translate: 0 -50%;
          top: 50%;
          left: 0;
          width: 1.171875cqw;
          height: 1.25cqw;
          background: url(../img/message/en-deco.svg) no-repeat;
          background-size: 1.171875cqw 1.25cqw;
          @media (max-width: 768px) {
            width: 15px;
            height: 16px;
            background-size: 15px 16px;
          }
        }
      }
      .ttl {
        font-size: 3.125cqw;
        font-weight: 600;
        line-height: 1.2;
        letter-spacing: 0.08em;
        margin-top: 0.625cqw;
        @media (max-width: 768px) {
          font-size: 2.4rem;
          margin-top: 8px;
        }
      }
    }
  }
}
/* ↑↑↑ fv ↑↑↑ */

/* ↓↓↓ news-box ↓↓↓ */
.news-box {
  margin-block: min(100px, 7.8125cqw) min(120px, 9.375cqw);
  @media (max-width: 768px) {
    margin-block: 63px 80px;
    padding-inline: 24px;
  }
  .news-box_inner {
    max-width: 1280px;
    margin: 0 auto;
    container-type: inline-size;
    @media (max-width: 768px) {
      max-width: 100%;
    }
    .news-list {
      width: 67.65625cqw;
      display: flex;
      flex-direction: column;
      gap: 1.875cqw;
      margin: 0 auto;
      @media (max-width: 768px) {
        width: 100%;
        gap: 24px;
      }
      .item {
        position: relative;
        padding-bottom: 1.875cqw;
        @media (max-width: 768px) {
          padding-bottom: 24px;
        }
        &::before {
          content: '';
          position: absolute;
          bottom: 0;
          left: 0;
          width: 100%;
          height: 1px;
          background-color: #B3DFF0;
        }
        &::after {
          content: '';
          position: absolute;
          bottom: 0;
          left: 0;
          width: 100%;
          height: 1px;
          background-color: #0090BA;
          scale: 0 1;
          transition: scale 300ms ease;
          transform-origin: left;
        }
        @media (min-width: 769px) {
          &:hover {
            &::after {
              scale: 1 1;
            }
            .txt-wrap {
              opacity: 0.5;
            }
          }
        }

        .txt-wrap {
          padding-left: 1.25cqw;
          transition: opacity 300ms ease;

          @media (max-width: 768px) {
            width: 100%;
            padding-left: 16px;
          }

          .day {
            font-size: 1.09375cqw;
            font-family: var(--text-lato);
            font-weight: 700;
            letter-spacing: 0.08em;
            color: #0090BA;
            @media (max-width: 768px) {
              font-size: 1.4rem;
            }
          }

          .txt {
            font-size: 1.25cqw;
            letter-spacing: 0.2em;
            margin-top: 0.9375cqw;
            @media (max-width: 768px) {
              font-size: 1.6rem;
              margin-top: 11px;
            }
            .pdf {
              display: inline-flex;
              justify-content: center;
              width: 3.125cqw;
              aspect-ratio: 40 / 20;
              height: fit-content;
              font-size: 0.9375cqw;
              font-family: var(--text-lato);
              font-weight: 700;
              letter-spacing: 0.08em;
              color: #fff;
              background-color: #0090BA;
              border-radius: 50px;
              @media (max-width: 768px) {
                width: 40px;
                font-size: 1.2rem;
              }             
            }
          }
        }
      }
    }

    .pagination {
      width: fit-content;
      display: flex;
      gap: 2.5cqw;
      margin: 4.296875cqw auto 0;
      align-items: center;
      @media (max-width: 768px) {
        width: 100%;
        gap: 20px;
        margin: 64px auto 0;
        justify-content: center;
      }
      .page-btn {
        position: relative;
        width: 4.375cqw;
        height: 4.375cqw;
        border: 1px solid #14B1E0;
        background-color: #14B1E0;
        border-radius: 50%;
        cursor: pointer;
        transition: background-color 300ms ease;
        @media (max-width: 768px) {
          width: 56px;
          height: 56px;
        }

        &::after {
          content: '';
          position: absolute;
          translate: 0 -50%;
          top: 50%;
          left: 1.71875cqw;
          width: 0.859375cqw;
          height: 0.859375cqw;
          mask: url(../img/selling-point/arrow.svg) no-repeat;
          mask-size: cover;
          background-color: #fff;
          transition: background-color 300ms ease;
          @media (max-width: 768px) {
            left: 22px;
            width: 11px;
            height: 11px;
          }
        }
        &.next {
          &::after {
            scale: -1 1;
            left: unset;
            right: 1.71875cqw;
            @media (max-width: 768px) {
              right: 22px;
            }
          }
        }
        @media (min-width: 769px) {
          &:hover {
            background-color: #fff;
            &::after {
              background-color: #14B1E0;
            }
          }
        }
      }

      .page-numbers {
        display: flex;
        align-items: center;
        gap: 0.625cqw;
        @media (max-width: 768px) {
          gap: 4px;
        }
        button {
          width: 2.5cqw;
          height: 2.5cqw;
          font-size: 1.171875cqw;
          font-family: var(--text-lato);
          font-weight: 700;
          color: #0090BA;
          border: none;
          border-radius: 50%;
          display: flex;
          justify-content: center;
          align-items: center;
          background-color: transparent;
          cursor: pointer;
          transition: color 300ms ease, background-color 300ms ease;
          @media (max-width: 768px) {
            width: 32px;
            height: 32px;
            font-size: 1.5rem;
          }
          &.is-active {
            color: #fff;
            background-color: #0064B4;
          }

          &:disabled {
            pointer-events: none;
          }

          @media (min-width: 769px) {
            &:hover {
              color: #fff;
              background-color: #0064B4;
            }
          }
        }

        .ellipsis {
          width: 1.5625cqw;
          height: 0.3125cqw;
          background: url(../img/common/three-dot.svg) no-repeat;
          background-size: cover;
          @media (max-width: 768px) {
            width: 20px;
            height: 4px;
          }
        }

      }
    }
  }
}
/* ↑↑↑ news-box ↑↑↑ */
footer {
  .link-box {
    margin: 0 auto;
    @media (max-width: 768px) {
      margin: 0 auto;
    }
  }
}