.catch {
  width: 64%;
  margin: 0 auto;
  background-size: auto 100%, auto 100%, 80% 100%;
  background-repeat: no-repeat;
  background-position: top left, top right, center;
  text-align: center;
  font-size: 30px;
  font-weight: 900;
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.6));
  z-index: 10;
}

.webp .catch {
  background-image:
    url(../img/top/tape-l.webp),
    url(../img/top/tape-r.webp),
    url(../img/top/tape.webp);
}

.no-webp .catch {
  background-image:
    url(../img/top/tape-l.png),
    url(../img/top/tape-r.png),
    url(../img/top/tape.png);
}

.top {
  position: relative;
  width: 100%;
  margin: 0 auto 2rem;
  padding: 3rem 0 0;
  overflow: hidden;
}

.top-inner {
  position: relative;
  width: 100%;
  max-width: 1150px;
  margin: 0 auto;
  aspect-ratio: 1 / 0.572;
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(../img/top/top-bg.png);
}

.top-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.top-logo {
  position: absolute;
  width: 100%;
  top: 14%;
  left: 0;
  text-align: center;
}

.top-logo img {
  width: 43%;
}

.item-1 {
  position: absolute;
  top: 9.5%;
  left: -1.5%;
  width: 26%;
}

.item-2 {
  position: absolute;
  top: -2%;
  right: 15.5%;
  width: 26%;
}

.item-3 {
  position: absolute;
  top: 25.5%;
  right: -3%;
  width: 26%;
}

.item-4 {
  position: absolute;
  top: 2%;
  right: 0.5%;
  width: 26%;
}

.item-5 {
  position: absolute;
  top: 10%;
  right: -2%;
  width: 26%;
}

.item-6 {
  position: absolute;
  bottom: -7%;
  left: -5%;
  width: 26%;
}

.item-7 {
  position: absolute;
  bottom: 6%;
  right: 1%;
  width: 26%;
}

@media screen and (min-width: 1px) and (max-width: 743px) {
  .catch {
    width: 96%;
    font-size: 4.27vw;
    filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.6));
  }

  .top {
    margin: 0 auto 1.2rem;
    padding: 5rem 0 0;
    overflow: hidden;
  }

  .top-inner {
    width: 100%;
    aspect-ratio: 1 / 1;
    background-image: url(../img/top/sp-top-bg.png);
  }

  .top-logo {
    position: absolute;
    width: 100%;
    top: 12%;
    left: 0;
    text-align: center;
  }

  .top-logo img {
    width: 76%;
  }

  .item-1 {
    top: 8%;
    left: -6%;
    width: 30%;
  }

  .item-2 {
    top: 2%;
    right: 12%;
    width: 30%;
  }

  .item-3 {
    top: 26%;
    right: -6%;
    width: 30%;
  }

  .item-4 {
    top: 0;
    right: -2%;
    width: 30%;
  }

  .item-5 {
    top: 10%;
    right: 0%;
    width: 30%;
  }

  .item-6 {
    bottom: 10%;
    left: -8%;
    width: 30%;
  }

  .item-7 {
    bottom: 10%;
    right: -3%;
    width: 30%;
  }

}

@media screen and (min-width: 744px) and (max-width: 1024px) {
  .catch {
    width: 74%;
    font-size: 3.13vw;
    transform: rotate(-3deg) translateY(0);
  }
}

@media screen and (min-width: 1025px) {}