.overview-visual {
  background: #fff;
  padding: 0 0 115px;
}

.overview-visual-frame {
  border-radius: 26px;
  box-shadow: 0 30px 70px rgba(7, 29, 59, .16);
  height: 540px;
  overflow: hidden;
  position: relative;
}

.overview-visual-frame::after {
  background: linear-gradient(90deg, rgba(6, 26, 53, .94), rgba(6, 26, 53, .18) 60%, transparent);
  content: "";
  inset: 0;
  position: absolute;
}

.overview-visual-frame > img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.overview-visual-frame > div {
  color: #fff;
  left: 48px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.overview-visual-frame span {
  color: #ff9a61;
  display: block;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .18em;
  margin-bottom: 18px;
  text-transform: uppercase;
}

.overview-visual-frame strong {
  font-size: clamp(38px, 4.6vw, 62px);
  letter-spacing: -.05em;
  line-height: 1.03;
}

@media (max-width: 760px) {
  .overview-visual {
    padding-bottom: 78px;
  }

  .overview-visual-frame {
    border-radius: 18px;
    height: 430px;
  }

  .overview-visual-frame > img {
    object-position: 62% center;
  }

  .overview-visual-frame > div {
    bottom: 30px;
    left: 25px;
    right: 25px;
    top: auto;
    transform: none;
  }

  .overview-visual-frame strong {
    font-size: 38px;
  }
}
