@charset "UTF-8";

main {
  max-width: 75rem;
  width: 100%;
  margin: 0 auto;
}

.hidden {
  overflow: hidden;
}

.sp {
  display: none;
}

.tb {
  display: none;
}

.pc {
  display: block;
}

@media (min-width: 1080px) {
  .hover {
    transition: all 0.3s;
  }

  .hover:hover {
    opacity: 0.7;
    transition: all 0.3s;
  }
}

img {
  width: 100%;
  height: auto;
}

.relative {
  position: relative;
}

.fv-cta {
  position: absolute;
  top: 144rem;
  left: 3.5rem;
  width: 69.6rem;
}

.sec04-cta {
  position: absolute;
  top: 3rem;
  left: 3.5rem;
  width: 69.6rem;
}

/* ------------------------------------------
  /* sp
  /* ------------------------------------------ */

@media (max-width: 750px) {
  html,
  body {
    font-size: calc(100vw / 75);
  }

  .tb {
    display: none;
  }

  .sp {
    display: block;
  }
}
