.business__wrap {
  padding-block: calc(60 * var(--r)) calc(50 * var(--r));
  overflow-x: clip;
  position: relative;
}

@media (min-width: 768px) {

.business__wrap {
    padding-block: calc(140 * var(--r)) calc(100 * var(--r));
}
  }

.business:last-child .business__wrap {
  padding-block: calc(60 * var(--r)) calc(140 * var(--r));
}

@media(min-width: 768px) {

.business:last-child .business__wrap {
    padding-block: calc(140 * var(--r)) calc(180 * var(--r));
}
  }

.business__wrap._bg-gray::before,
.business__wrap._bg-gray2::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url('/business/img/section_bg.webp') no-repeat center center / cover;
}

.business__wrap._bg-gray2::before {
  background-color: var(--gray-200);
  background-image: none;
}

.business__inner {
  position: relative;
}

.business__img {
  position: relative;
}

.business__img._w1200 {
  width: min(100%, calc(1200 * var(--r)));
  margin-inline: auto;
}

.business__img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: auto;
  position: relative;
}

.business__img::before {
  content: '';
  position: absolute;
  bottom: calc(-30 * var(--r));
  left: calc(50% - 50vw);
  width: calc(1480 / 1920 * 100vw);
  height: calc(80 * var(--r));
  background-color: var(--blue-500);
  background-image: -webkit-gradient(linear, right top, left top, color-stop(47%, transparent), to(color-mix(in srgb, var(--blue-300) 55%, transparent)));
  background-image: linear-gradient(to left, transparent 47%, color-mix(in srgb, var(--blue-300) 55%, transparent) 100%);
}

@media (min-width: 768px) {

.business__img::before {
    bottom: calc(-40 * var(--r));
    height: calc(126 * var(--r));
}
  }

.business__img._rev::before {
  left: unset;
  right: calc(50% - 50vw);
  background-image: -webkit-gradient(linear, left top, right top, color-stop(47%, transparent), to(color-mix(in srgb, var(--blue-300) 55%, transparent)));
  background-image: linear-gradient(to right, transparent 47%, color-mix(in srgb, var(--blue-300) 55%, transparent) 100%);
  z-index: 0;
}

.business__cards {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: calc(20 * var(--r));
  width: calc(610 / 720 * 100%);
  margin-top: clamp(
    calc(30 * var(--r)),
    calc(30 * var(--r)) + (40 - 30) * var(--fluid-rate),
    calc(40 * var(--r))
  );
  margin-inline: auto;
}

@media (min-width: 768px) {

.business__cards {
    -ms-grid-columns: 1fr calc(30 * var(--r)) 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: calc(40 * var(--r)) calc(30 * var(--r));
}
  }
