@charset "UTF-8";

/* @media screen and (min-width: 1081px) {
  #viewport {
    position: fixed;
    width: 100%;
  }

  #scroll-container {
    overflow: hidden;
  }
} */

@media screen and (max-width: 1080px) {
  .content {
    padding: 0 5vw;
  }

  .category-wrap li.cs::before {
    top: -3vw;
    font-size: 2.4vw;
  }

  .item-list {
    gap: 3.5vw 0;
  }

  .item-list li {
    width: calc((100% - 3.5vw) / 2);
  }
}

@media screen and (min-width: 769px) {
  .sp {
    display: none !important;
  }
}

@media screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }

  .load-ribbon {
    top: 40.5%;
    width: 97.6%;
  }

  .load-subttl {
    top: 45.3%;
    width: 60%;
  }

  .load-ttl {
    top: 48.7%;
    width: 72.1%;
  }

  .snow-fall div {
    width: 10vw;
    height: 10vw;
  }

  #category {
    padding: unset;
  }

  .category-wrap {
    flex-direction: column;
    align-items: center;
    gap: 5vw 0;
  }

  .category-wrap li {
    width: 100%;
  }

  .category-wrap li.cs::before {
    top: -26px;
    font-size: 2rem;
  }

  .category-wrap li a {
    padding: 0 calc(50vw - 140px);
  }

  .item .content {
    margin-top: unset;
    padding: 0 5%;
    background: unset;
    border-radius: unset;
  }

  .item h2 {
    padding: 17vw 0 8vw;
  }

  .item-list {
    grid-template-columns: 1fr;
  }

  .item-list li {
    width: 100%;
  }

  .foot-logo {
    height: 180px;
    padding: 80px 0 60px;
  }

  #page-top {
    right: 3vw;
    bottom: 3vw;
    transform: translateY(18vw);
  }

  #page-top a {
    width: 15vw;
    height: 15vw;
  }
}
