html {
  visibility: hidden
}

html.wf-active,html.loading-delay {
  visibility: visible
}

.u-pc-hidden {
  display: none
}

.u-sp-hidden {
  display: inline-block
}

@media all and (max-width: 768px) {
  .u-pc-hidden {
      display:inline-block
  }

  .u-sp-hidden {
      display: none
  }
}

@media (max-width: 769px) {
  .home ul li:nth-of-type(1) {
      display:none
  }
}

.mvArea {
  padding: 16vw 0 0 18.66667vw;
  height: 106.66667vw;
  margin-bottom: 24vw;
  padding-bottom: 10.66667vw;
  box-sizing: border-box;
  position: relative
}

.mvArea .slide-box {
  position: absolute;
  top: 16vw
}

.mvArea .slide {
  background: #fff;
  position: relative;
  box-sizing: border-box;
  height: 100vw;
  padding-bottom: 10.66667vw
}

.mvArea .slide header {
  width: 81.33333vw;
  text-align: center;
  overflow: hidden;
  height: 100%;
  margin-left: auto;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center
}

.mvArea .slide>div:not(.circleTime) {
  width: 100%;
  position: absolute;
  z-index: 2;
  box-sizing: border-box;
  bottom: 0vw;
  left: -13.33333vw
}

.mvArea .slide>div:not(.circleTime) span,.mvArea .slide>div:not(.circleTime) h2 {
  display: inline;
  padding: 1%
}

.mvArea .slide>div:not(.circleTime) span {
  background: #fff;
  display: inline-block;
  margin-bottom: 5.33333vw;
  font-size: 3.73333vw
}

.mvArea .slide>div:not(.circleTime) h2 {
  background: #fff;
  line-height: 2.2;
  font-size: 4.8vw;
  margin-bottom: 2%
}

.mvArea .slide>div:not(.circleTime) time {
  background: #fff;
  font-size: 3.2vw;
  margin-top: 2%;
  display: inline-block
}

.mvArea .slide>div:not(.circleTime) p {
  margin-top: 5%
}

.mvArea .slide footer {
  position: absolute;
  transform: rotate(90deg);
  top: 10%;
  right: 0;
  background: #fff;
  padding: 1%
}

.item {
  display: flex;
  justify-content: center;
  align-items: center
}

.timer-time {
  text-align: center;
  position: absolute;
  line-height: 4em;
  width: 100%;
  font-size: 3.2vw
}

svg {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg)
}

.timer-circle {
  stroke-dasharray: 280;
  stroke-dashoffset: 0;
  transition: all 1s linear;
  stroke-width: 1px;
  stroke: #000
}

.bg-circle {
  stroke-dasharray: 280;
  stroke-dashoffset: 0;
  transition: all 1s linear;
  stroke: #cccccc;
  stroke-width: 1px
}

.circleTime {
  display: block;
  position: absolute;
  bottom: 0vw;
  right: 5.33333vw
}

@keyframes strokeAni {
  0% {
      stroke-dashoffset: 280
  }

  100% {
      stroke-dashoffset: 0
  }
}

.slide-box.active circle.timer-circle {
  animation: strokeAni 12000ms
}

@media (min-width: 769px) {
  .mvArea {
      padding:0;
      width: 95%;
      height: 50.78125vw;
      margin-bottom: 4.6875vw;
      padding-bottom: 0vw
  }

  .mvArea .slide-box {
      width: calc(100vw - (60/1280)*100vw);
      position: absolute;
      top: 0;
      left: 0
  }

  .mvArea .slide {
      display: flex;
      align-items: center;
      height: 50.78125vw;
      box-sizing: content-box;
      padding-bottom: 0
  }

  .mvArea .slide header {
      height: 100%;
      width: 50%;
      text-align: left;
      margin-bottom: 0;
      position: relative;
      display: flex;
      justify-content: center;
      align-items: center;
      background-position: center
  }

  .mvArea .slide>div:not(.circleTime) {
      position: static;
      margin-top: 0;
      width: 50%;
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      padding: 5%;
      box-sizing: border-box
  }

  .mvArea .slide>div:not(.circleTime) span,.mvArea .slide>div:not(.circleTime) h2 {
      padding: 0;
      width: 100%
  }

  .mvArea .slide>div:not(.circleTime) span {
      background: #fff;
      display: inline-block;
      margin-bottom: 25px;
      font-size: 1.25vw
  }

  .mvArea .slide>div:not(.circleTime) h2 {
      background: #fff;
      line-height: 1.4;
      font-size: 2.8125vw
  }

  .mvArea .slide>div:not(.circleTime) time {
      display: block;
      margin-top: 25px;
      font-size: .9375vw
  }

  .mvArea .slide>div:not(.circleTime) p {
      margin-top: 5%;
      font-size: 1.40625vw;
      width: 100%
  }

  .mvArea .slide footer {
      position: static;
      transform: none;
      background: none
  }

  .mvArea .circleTime {
      bottom: 2.34375vw;
      right: 2.34375vw
  }

  .timer-time {
      font-size: .9375vw
  }
}

@keyframes zoom {
  from {
      transform: scale(1)
  }

  to {
      transform: scale(1.05)
  }
}

.swiper-slide-prev img,.swiper-slide-active img,.swiper-slide-duplicate-active img {
  animation-name: zoom;
  animation-duration: 8s;
  animation-fill-mode: forwards
}

.category__area {
  margin-top: 10%;
  background: #f9f9f9;
  padding: 8% 8vw 8vw;
  position: relative
}

.category__area+.category__area {
  margin-top: 0%;
  padding: 0 8vw 8vw
}

@media (min-width: 769px) {
  .category__area {
      box-sizing:border-box;
      width: calc(100% - (60/1280)*100vw);
      margin: 0vw auto 0 0;
      padding: 40px 0 0
  }

  .category__area+.category__area {
      padding: 0
  }
}

@media (min-width: 769px) {
  .category__area .inner {
      position:relative;
      z-index: 2;
      width: 71.875vw;
      margin: 0 auto
  }
}

.category__area h2 {
  margin-bottom: 3%;
  font-size: 18px;
  letter-spacing: 2px
}

@media (min-width: 769px) {
  .category__area h2 {
      font-size:20px;
      position: relative;
      margin-bottom: 1.5625vw
  }
}

.category__area__more {
  position: relative;
  display: inline-block;
  padding-right: 20px
}

@media (min-width: 769px) {
  .category__area__more {
      padding-right:30px
  }
}

.category__area__more::after,.category__area__more::before {
  content: "";
  width: 5px;
  height: 1px;
  top: 50%;
  right: 0;
  background: #333;
  display: block;
  position: absolute;
  transform-origin: right
}

@media (min-width: 769px) {
  .category__area__more::after,.category__area__more::before {
      width:5px
  }
}

.category__area__more::after {
  transform: rotate(45deg)
}

.category__area__more::before {
  transform: rotate(-45deg)
}

@media (min-width: 769px) {
  .category__area ul {
      display:flex;
      justify-content: space-between;
      flex-wrap: wrap
  }
}

@media (min-width: 769px) {
  .category__area ul li {
      width:33.59375vw;
      margin-bottom: 4.6875vw
  }
}

.category__area ul li+li {
  margin-top: 5.33333vw
}

@media (min-width: 769px) {
  .category__area ul li+li {
      margin-top:0vw
  }
}

.category__area ul li h3 {
  font-size: 12px
}

@media (min-width: 769px) {
  .category__area ul li h3 {
      font-size:14px;
      line-height: 1.6
  }
}

.category__area ul li a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: #333;
  text-decoration: none
}

@media (min-width: 769px) {
  .category__area ul li a {
      margin-bottom:0
  }
}

.category__area ul li figure {
  width: 20vw
}

@media (min-width: 769px) {
  .category__area ul li figure {
      width:7.8125vw;
      margin-right: 1.5625vw
  }
}

.category__area ul li figure img {
  width: 100%;
  height: auto
}

.category__area ul li div {
  width: calc(100% - (95/375)*100vw);
  font-size: 3.46667vw;
  line-height: 1.6
}

@media (min-width: 769px) {
  .category__area ul li div {
      position:relative;
      width: calc(100% - (100/1280)*100vw);
      font-size: 1.40625vw;
      height: 7.8125vw
  }
}

.category__area ul li div span,.category__area ul li div time {
  font-size: 2.66667vw
}

@media (min-width: 769px) {
  .category__area ul li div span,.category__area ul li div time {
      font-size:.78125vw
  }
}

@media (min-width: 769px) {
  .category__area ul li div span {
      margin-bottom:.78125vw;
      display: block;
      line-height: 1;
      position: static
  }

  .category__area ul li div time {
      position: absolute;
      bottom: 0
  }
}
