@charset "UTF-8";
*,
*::before,
*::after {
  box-sizing: border-box;
  font-family: "Font Awesome 5 Free", Osaka, "Meiryo UI", sans-sheif;
  letter-spacing: 2px;
  line-height: 1.2;
}

/* Youtube のレスポンシブ対応 */
.retro-youtube {
  width: 90%;
  aspect-ratio: 16/9;
  margin: 5% auto;
  text-align: center;
}

.retro-youtube iframe {
  width: 100%;
  height: 100%;
}

i {
  letter-spacing: initial;
  font-size: 1em;
}

@media all and (max-width: 639px) {
  * {
    font-size: 16px;
  }
}
@media all and (max-width: 639px) and (orientation: portrait) {
  body {
    background-image: url("../image/background_visual_sp(portrait).png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
  }
}
@media all and (max-width: 639px) and (orientation: landscape) {
  body {
    background-image: url("../image/background_visual_sp(landscape).png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
  }

  .bx-wrapper {
    width: 100%;
  }
}
@media all and (min-width: 640px) and (max-width: 1023px) {
  * {
    font-size: 18px;
  }
}
@media all and (min-width: 640px) and (max-width: 1023px) and (orientation: portrait) {
  body {
    background-image: url("../image/background_visual_tab(portrait).png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
  }
}
@media all and (min-width: 640px) and (max-width: 1023px) and (orientation: landscape) {
  body {
    background-image: url("../image/background_visual_tab(landscape).png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
  }
}
@media all and (min-width: 640px) and (max-width: 1023px) {
  .bx-wrapper {
    width: 45%;
  }
}
@media all and (min-width: 1024px) and (max-width: 1919px) {
  * {
    font-size: 20px;
  }

  body {
    background-image: url("../image/background_visual.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
  }

  .bx-wrapper {
    width: 45%;
  }
}
@media all and (min-width: 1920px) {
  * {
    font-size: 20px;
  }

  body {
    background-image: url("../image/background_visual.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto;
    background-attachment: fixed;
  }

  .bx-wrapper {
    width: 45%;
  }
}
