.exam-results-news {
  section.links {
    width: 1184px;
    margin-inline: auto;
    padding: 60px 0;
    @media (max-width: 768px) {
      width: 100%;
      padding: 30px 0;
    }
    .links__container {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 20px;
      @media (max-width: 768px) {
        flex-direction: row;
        img {
          width: 110px;
        }
      }
    }
    .link {
      transition: opacity 0.3s;
      &:hover {
        opacity: 0.7;
      }
    }
  }
  section.all-results {
    margin: 0 auto;
    .all-results__img {
      max-width: 1000px;
      width: 100%;
      margin-inline: auto;
    }
  }
}

.exam-results-news-pref {
  .sp-only {
    display: none;
    @media (max-width: 960px) {
      display: inline-block;
    }
  }
  > .head {
    position: relative;
    padding: 70px 0 60px;
    width: calc(100% - 2rem);
    max-width: 1200px;
    margin-inline: auto;
    @media (max-width: 768px) {
      width: fit-content;
      padding: 15px 0px;
    }
    .head__label {
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 20px;
      @media (max-width: 768px) {
        gap: 10px;
      }
      .laurel {
        width: 55px;
        @media (max-width: 768px) {
          width: 29px;
          height: 75px;
        }
      }
      .laurel2 {
        transform: scale(-1, 1);
      }
      .title {
        text-align: center;
        width: fit-content;
        letter-spacing: 2.88px;
        .title1 {
          font-size: 28px;
          font-weight: bold;
          line-height: 2;
          margin-bottom: 16px;
          @media (max-width: 768px) {
            font-size: 14px;
            line-height: 1.3;
            margin-bottom: 6px;
          }
        }
        .title2 {
          color: #0863c2;
          font-size: 68px;
          font-weight: bold;
          @media (max-width: 768px) {
            font-size: 20px;
          }
        }
      }
    }
    .head__star.star1 {
      position: absolute;
      width: 62px;
      top: 30%;
      left: 10%;
      animation: rotation-y 4s linear infinite;
      /* transform-origin:50% 100%; */
      @media (max-width: 768px) {
        width: 31px;
        top: 20%;
        left: -13%;
      }
    }
    .head__star.star2 {
      position: absolute;
      width: 62px;
      bottom: 23%;
      right: 10%;
      animation: rotation-y 4s linear infinite;
      animation-delay: -1s;
      @media (max-width: 768px) {
        width: 31px;
        bottom: 20%;
        right: -12%;
      }
    }
  }

  > .trophies {
    width: 1333px;
    margin-inline: auto;
    margin-bottom: 60px;
    @media (max-width: 768px) {
      margin-bottom: 16px;
    }
    .marquee-wrapper {
      overflow: hidden;
      width: 100%;
    }
    .marquee {
      display: flex;
      width: max-content;
      animation: marquee-scroll 60s linear infinite;
      .marquee__group {
        display: flex;
      }
      .trophies-img {
        width: auto;
        height: 100px;
        margin-right: 23px;
        @media (max-width: 768px) {
          height: 40px;
          margin-right: 9px;
        }
      }
    }
  }

  > .results {
    margin-bottom: 65px;
    @media (max-width: 768px) {
      margin-bottom: 0px;
    }
    .results-container {
      background-color: #e6edfa;
      width: 1333px;
      margin-inline: auto;
      padding: 75px 75px;
      @media (max-width: 768px) {
        width: 100%;
        padding: 0 0 45px;
      }
    }
    .all-results {
      width: 1184px;
      margin-inline: auto;
      /* margin-bottom: 60px; */
      @media (max-width: 768px) {
        width: 100%;
      }
      .all-results__title {
        padding: 57px;
        margin-bottom: 50px;
        background-color: #0863c2;
        border-radius: 10px;
        font-size: 40px;
        font-weight: bold;
        letter-spacing: 1.44px;
        color: #fff;
        @media (max-width: 768px) {
          border-radius: 0;
          font-size: 25px;
          padding: 24px 36px;
          margin-bottom: 24px;
        }
      }
      .all-results__text {
        font-size: 28px;
        text-align: center;
        font-weight: bold;
        line-height: 1.4;
        letter-spacing: 2.88px;
        margin-bottom: 70px;
        @media (max-width: 768px) {
          max-width: 280px;
          margin-inline: auto;
          margin-bottom: 30px;
          font-size: 16px;
          text-align: left;
          .sp-small {
            font-size: 14px;
          }
        }
      }
      .all-results__items {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        column-gap: 60px;
        row-gap: 60px;
        @media (max-width: 768px) {
          width: 100%;
          max-width: 340px;
          margin-inline: auto;
          row-gap: 24px;
        }
        .all-results__item {
          width: calc(50% - 30px);
          display: flex;
          @media (max-width: 768px) {
            width: 100%;
            gap: 20px;
          }
          .img-wrapper {
            width: 40%;
            display: flex;
            justify-content: center;
            align-items: center;
            @media (max-width: 768px) {
              width: calc(40% - 20px);
            }
            .all-results__item-img {
              max-width: min(100%, 204px);
            }
          }
          .body-wrapper {
            width: 60%;
            .head {
              font-size: 38px;
              font-weight: bold;
              color: #fff;
              background-color: #0863c2;
              padding: 0 16px;
              width: fit-content;
              line-height: 1.4;
              letter-spacing: 2.16px;
              @media (max-width: 768px) {
                font-size: 20px;
                padding: 0 8px;
              }
            }
            .subhead {
              font-size: 24px;
              font-weight: bold;
              color: #fff;
              background-color: #0863c2;
              padding: 0 16px;
              width: fit-content;
              line-height: 1.4;
              letter-spacing: 2.16px;
              @media (max-width: 768px) {
                font-size: 16px;
                padding: 0 8px;
              }
            }
            .number_container {
              display: flex;
              align-items: baseline;
              .number {
                font-family: Roboto, sans-serif;
                font-size: 120px;
                font-weight: bold;
                color: #0863c2;
                line-height: 1.4;
                letter-spacing: 2.16px;
                @media (max-width: 768px) {
                  font-size: 66px;
                }
              }
              .unit {
                font-size: 50px;
                font-weight: bold;
                color: #0863c2;
                line-height: 1.4;
                @media (max-width: 768px) {
                  font-size: 30px;
                }
              }
            }
          }
        }
      }
    }
    .individual-results {
      .individual-results__title-wrapper {
        position: relative;
        margin-top: 140px;
        margin-bottom: 75px;
        @media (max-width: 768px) {
          width: fit-content;
          margin: 100px 0 30px;
          margin-inline: auto;
        }
      }
      .individual-results__title {
        color: #0863c2;
        text-align: center;
        font-size: 48px;
        font-weight: bold;
        letter-spacing: 2.16px;
        @media (max-width: 768px) {
          font-size: 24px;
        }
      }
      .individual-results__title-img {
        opacity: 0;
        transform: translateY(100px);
        position: absolute;
        width: 264px;
        top: -80px;
        left: 10%;
        transition: opacity 0.4s ease, transform 0.4s ease;
        @media (max-width: 768px) {
          width: 130px;
          rotate: -9deg;
          top: -64px;
          left: -75px;
        }
      }
      .individual-results__title-img.is-visible {
        opacity: 1;
        transform: translateY(0px);
      }
      .individual-results__schools {
        display: grid;
        grid-template-columns: 1fr 1fr;
        column-gap: 32px;
        row-gap: 35px;
        flex-wrap: wrap;
        margin-bottom: 100px;
        @media (max-width: 768px) {
          max-width: 320px;
          margin-inline: auto;
          margin-bottom: 0px;
          grid-template-columns: 1fr;
          gap: 20px;
        }
      }
      .individual-results__school {
        width: 100%;
        min-height: 130px;
        background-color: #fff;
        display: grid;
        grid-template-columns: auto 1fr auto;
        gap: 24px;
        align-items: center;
        padding: 0px 50px;
        border-radius: 10px;
        transition: transform 0.3s ease;
        @media (max-width: 768px) {
          padding: 18px 20px 18px;
          min-height: auto;
          gap: 12px;
        }
        &:hover {
          transform: scale(1.025);
        }
        .icon {
          width: 32px;
          @media (max-width: 768px) {
            width: 16px;
          }
        }
        .school-name {
          font-size: 34px;
          font-weight: bold;
          letter-spacing: 2.4px;
          line-height: 1.4;
          @media (max-width: 768px) {
            font-size: 20px;
          }
        }
        .r-arrow {
          width: 38px;
          @media (max-width: 768px) {
            width: 20px;
            height: 14px;
          }
        }
      }
    }
  }
  > .links {
    margin: 70px 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
    @media (max-width: 768px) {
      max-width: 320px;
      margin: 20px 0;
      margin-inline: auto;
      flex-direction: column;
      gap: 16px;
    }
    .link {
      position: relative;
      display: flex;
      justify-content: center;
      align-items: center;
      width: 365px;
      height: 70px;
      border-radius: 35px;
      background-color: #2b2d2e;
      border: 3px solid #2b2d2e;
      color: #fff;
      font-size: 20px;
      font-weight: 700;
      letter-spacing: 2.4px;
      transition: color 0.3s, background-color 0.3s;
      @media (max-width: 768px) {
        width: 300px;
        height: 50px;
        font-size: 16px;
        margin-inline: auto;
      }
      &:hover {
        color: #2b2d2e;
        background-color: #fff;
      }
      .link-icon {
        width: 20px;
        height: 13px;
        position: absolute;
        top: 50%;
        right: 15px;
        transform: translateY(-50%);
        transition: transform 0.3s;
      }
    }
  }
}

@keyframes rotation-y {
  0% {
    transform: rotateY(0deg);
  }
  100% {
    transform: rotateY(360deg);
  }
}

/* トロフィー部分のアニメーション */
@keyframes marquee-scroll {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}

.footer__conversion {
  display: block !important;
}
