html,
body
{
  max-width: 100%;
  margin: 0;
  padding: 0;
  overflow-x: hidden;

  color: #405264;
  font-family: 'RocknRoll One', sans-serif;
}

body.js-wait-page
{
  opacity: 0;
}

body.js-wait-page.is-loaded
{
  opacity: 1;
}

html
{
  scrollbar-gutter: stable;
  scroll-behavior: smooth;
}

html.is-open,
body.is-open
{
  overflow: hidden;
}

.list--disc
{
  list-style-type: disc;
  padding-left: 1.2em;
}

.list--circle
{
  list-style-type: circle;
  padding-left: 1.2em;
}

.sp__only
{
  display: none;
}

.sp__hidden
{
  display: inline;
}

.pc__hidden
{
  display: none;
}

.top-btn
{
  position: fixed;
  right: 30px;
  bottom: 20px;

  width: clamp(40px, 8.0vw, 80px);
  height: auto;

  z-index: 1000;

  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.top-btn.is-visible
{
  opacity: 1;
  pointer-events: auto;
}

.top-btn img
{
  width: 100%;
}

.top-btn.privact-policy
{
  right: 25%;
  width: 54px;
  height: 54px;
}

@media (max-width: 480px)
{
  .sp__only
  {
    display: inline;
  }
  .sp__hidden
  {
    display: none;
  }
  .pc__hidden
  {
    display: inline;
  }
  .top-btn.privact-policy
  {
    right: 20px;
    width: 36px;
    height: 36px;
  }
  .top-btn
  {
    right: 10px;
  }
}