/*=============================
common
=============================*/
:root {
  --transition-duration: 0.8s;
}

html {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 8px;
  font-weight: 300;
  font-feature-settings: "palt";
  word-break: break-all;
  scroll-behavior: smooth;
}

main {
  position: relative;
  max-width: 75rem;
  margin: auto;
  box-shadow: 0px 0px 16px 5px rgba(0, 0, 0, 0.7);
}

img,video {
  display: block;
  max-width: 100%;
  height: auto;
}

.position {
  position: relative;
}

.com_txt_line {
  text-decoration: underline;
}

.com_txt_yellow {
  color: #fff462;
}

@media screen and (min-width: 751px) {
  a {
    transition: filter 0.3s ease;
  }

  a:hover {
    filter: brightness(1.2); /* 20%明るく */
  }
}

@media screen and (max-width: 750px) {
  html {
    font-size: 1.333vw;
  }
}


/*=============================
responsive
=============================*/
.sp-only {
  display: none;
}

@media screen and (max-width: 767px) {
  .pc-only {
    display: none;
  }

  .sp-only {
    display: block;
  }
}


/*=============================
pc_container
=============================*/
.pc_container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
}

.bg-layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../img/pc_bg.webp");
  background-size: cover;
  background-position: center;
  transition: opacity var(--transition-duration) ease-in-out;
}

.pc_container_left {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: calc((100% - 75rem) / 2);
  display: flex;
  align-items: center;
  justify-content: center;
}
.pc_logo {
  max-width: 80%;
  width: 54rem;
}

.pc_container_right {
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: calc((100% - 75rem) / 2);
  display: flex;
  align-items: center;
  justify-content: center;
}

.pc_btn_wrap {
  display: flex;
  flex-direction: column;
  gap: 2rem;
  width: 75%;
  max-width: 45rem;
}

.pc_btn_wrap img {
  width: 100%;
}

.btn_2nd_wrap {
  position: relative;
}

.btn_2nd_wrap .btn_2nd {
  position: absolute;
  top: -2.5rem;
  left: -2rem;
  width: 11rem;
}

@media screen and (max-width: 1200px) {
  .pc_container_left,
  .pc_container_right {
    display: none;
  }
}

@media screen and (max-width: 750px) {
  .pc_container {
    display: none;
  }
}



/*=============================
footer
=============================*/
footer {
  background-color: #fff;
  padding: 5rem 0 3rem;
}

footer .footer__bottom__nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding-bottom: 2rem;
}

footer .footer__bottom__nav ul li {
  font-size: 2.5rem;
  font-weight: 400;
}

footer .footer__bottom__nav ul li {
  display: flex;
  align-items: center;
  margin-right: 1em;
}

footer .footer__bottom__nav ul li::after {
  content: "";
  display: block;
  margin-left: 1em;
  height: 1em;
  width: 1px;
  background-color: #000
}

footer .footer__bottom__nav ul li:last-of-type::after {
  content: none;
}


footer .footer__bottom__copy {
  font-size: 2rem;
  font-weight: 400;
  text-align: center;
}
