@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;
}

.ftg {
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 75rem;
  padding: 2rem 1rem 3rem;
  background-color: rgba(255, 255, 255, 0.9);
}

.sec07 {
  margin-bottom: 20rem;
}

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

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

  .tb {
    display: none;
  }

  .sp {
    display: block;
  }
}
