* {
  margin: 0;
  padding: 0;
}

body {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  background-image: linear-gradient(90deg, rgba(211, 183, 111, 1), rgba(251, 238, 198, 1) 50%, rgba(210, 183, 91, 1));
  font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  color: #333;
}

img {
  width: 100%;
}

header {
  width: 100%;
  height: 55px;
  background-color: #fff;
}

.headerSp {
  width: 100%;
  height: 60px;
  background-color: #fff;
}

.headItem {
  margin: 0 auto;
  width: 90%;
  padding: 0.6rem;
}

.logo {
  width: 150px;
}

.logos {
  width: 160px;
}

.container {
  overflow: hidden;
}

footer {
  margin: 0 auto;
  text-align: center;
  font-size: 80%;
  width: 100%;
  padding-top: 0.7rem;
  height: 100px;
  background-color: #fff;
}

.comme {
  font-size: 80%;
  text-align: right;
  line-height: 0.9rem;
  position: fixed;
  bottom: 15px;
  right: 15px;
  text-shadow: 0px 0px 3px rgba(255, 255, 255, 1);
}

.voxA {
  margin: 0 auto;
  width: 90%;
  height: auto;
  background-image: url(../img/head_base_pc.png);
  background-size: 100%;
  background-repeat: no-repeat;
  padding: 0;
}

.voxAs {
  margin: 0 auto;
  width: 100%;
  height: auto;
  background-image: url(../img/head_base_sp.jpg);
  background-size: 100%;
  background-repeat: no-repeat;
  padding: 0;
}

.voxB {
  margin: 0 auto;
  width: 90%;
  height: auto;
  padding: 0;
}

.voxBs {
  margin: 0 auto;
  width: 90%;
  height: auto;
  padding: 0;
}

.voxC {
  margin: 0 auto;
  width: 90%;
  height: auto;
  background-image: url(../img/stage_a_pc.png);
  background-size: 100%;
  background-repeat: no-repeat;
  padding: 0;
}

.voxCs {
  margin: 0 auto;
  width: 90%;
  height: auto;
  background-image: url(../img/stage_a_sp.png);
  background-size: 100%;
  background-repeat: no-repeat;
  padding: 0;
}

.voxD {
  margin: 0 auto;
  width: 90%;
  height: auto;
  background-image: url(../img/stage_b_pc.png);
  background-size: 100%;
  background-repeat: no-repeat;
  padding: 0;
}

.voxDs {
  margin: 0 auto;
  width: 90%;
  height: auto;
  background-image: url(../img/stage_b_sp.png);
  background-size: 100%;
  background-repeat: no-repeat;
  padding: 0;
}

.voxE {
  margin: -0.6rem auto 1rem auto;
  width: 90%;
  height: 47vw;
  background-color: #fff9e0;
  border-radius: 25px;
  padding: 0;
}

.voxEs {
  margin: 0 auto 1rem auto;
  width: 90%;
  height: 242vw;
  background-color: #fff9e0;
  border-radius: 16px;
  padding: 0;
}
.voxF {
  margin: 0 auto;
  width: 90%;
  height: auto;
  padding: 0;
}

.voxFs {
  margin: 0 auto;
  width: 90%;
  height: auto;
  padding: 0;
}

.stageA {
  margin: 0 auto;
  padding: 0;
  width: 90vw;
  height: 56vw;
}

.stageAs {
  margin: 0 auto;
  padding: 0;
  width: 98vw;
  height: 120vw;
}

.stageB {
  margin: 0 auto;
  padding: 0;
  width: 90vw;
  height: 17vw;
}

.stageBs {
  margin: 0 auto;
  padding: 0;
  width: 90vw;
  height: 43vw;
}

.stageC {
  margin: 0 auto;
  padding: 0;
  width: 90vw;
  height: 62vw;
}

.stageCs {
  margin: 0 auto;
  padding: 0;
  width: 90vw;
  height: 196vw;
}

.stageD {
  margin: 0 auto;
  padding: 0;
  width: 90vw;
  height: 62vw;
}

.stageDs {
  margin: 0 auto;
  padding: 0;
  width: 90vw;
  height: 186vw;
}

.stageE {
  margin: 0 auto;
  padding: 0;
  width: 90vw;
  height: 50vw;
}

.stageEs {
  margin: 0 auto;
  padding: 0;
  width: 90vw;
  height: 230vw;
}

.stageF {
  margin: 0 auto;
  padding: 0;
  width: 90vw;
  height: 5vw;
}

.stageFs {
  margin: 0 auto;
  padding: 0;
  width: 90vw;
  height: 12.5vw;
}

.position-base {
  width: 100%;
  height: 0;
  margin: 0 auto;
  padding-top: 120%;
  position: relative;
}

.itemA {
  position: absolute;
  left: 15%;
  top: .5%;
  width: 70%;
}

.itemAs {
  position: absolute;
  left: 6%;
  top: -0.5%;
  width: 88%;
}

.itemB {
  position: absolute;
  left: 5%;
  top: 11%;
  width: 25%;
}

.itemBs {
  position: absolute;
  left: 5%;
  top: 11%;
  width: 36%;
}

.itemC {
  position: absolute;
  right: 5%;
  top: 11%;
  width: 25%;
}

.itemCs {
  position: absolute;
  right: 5%;
  top: 11%;
  width: 36%;
}

.itemD {
  position: absolute;
  left: 43.5%;
  top: 12%;
  width: 12%;
}

.itemDs {
  position: absolute;
  left: 17%;
  top: 85%;
  width: 65%;
}

.itemE {
  position: absolute;
  left: 24.3%;
  top: 10.2%;
  width: 18%;
}

.itemEs {
  position: absolute;
  left: 12%;
  top: 65%;
  width: 32%;
}

.itemF {
  position: absolute;
  left: 54%;
  top: 10.2%;
  width: 24%;
}

.itemFs {
  position: absolute;
  right: 6%;
  top: 65%;
  width: 42%;
}

.itemG {
  position: absolute;
  left: 40%;
  top: 27%;
  width: 20%;
}

.itemGs {
  position: absolute;
  left: 40%;
  top: 17.5%;
  width: 20%;
}

.itemH {
  position: absolute;
  left: 24%;
  top: 8%;
  width: 25%;
}

.itemHs {
  position: absolute;
  right: 0;
  top: 25%;
  width: 40%;
}

.itemLogos {
  position: absolute;
  right: 3%;
  top: 3%;
  width: 25%;
}

.itemI {
  position: absolute;
  left: 0;
  top: 0;
  width: 32%;
}

.itemIs {
  position: absolute;
  left: 25%;
  top: 3%;
  width: 48%;
}

.itemJ {
  position: absolute;
  right: 3%;
  top: 1.5%;
  width: 52%;
}

.itemJs {
  position: absolute;
  left: 5%;
  top: 72%;
  width: 75%;
}

.itemK {
  position: absolute;
  left: 37%;
  top: 35.9%;
  width: 55%;
}

.itemKs {
  position: absolute;
  left: 5%;
  top: 128%;
  width: 90%;
}

.itemL {
  position: absolute;
  left: 18%;
  top: 52%;
  width: 65%;
}
.itemL a {
  display: block;
  transform: scale(1);
  transition: all .3s ease-in-out;
}

.itemL a:hover {
  transform: scale(1.02);
  transition: .3s;
}

.itemLs {
  position: absolute;
  left: 15%;
  top: 166%;
  width: 65%;
}

.itemM {
  position: absolute;
  right: 10%;
  top: 45.6%;
  width: 25%;
}
.itemM a {
  display: block;
  transform: scale(1);
  transition: all .3s ease-in-out;
}

.itemM a:hover {
  transform: scale(1.05);
  transition: .3s;
}

.itemMs {
  position: absolute;
  left: 23%;
  top: 152%;
  width: 55%;
}

.itemN {
  position: absolute;
  left: 50%;
  top: 10%;
  width: 25%;
}

.itemNs {
  position: absolute;
  right: 0;
  top: 25%;
  width: 40%;
}

.itemO {
  position: absolute;
  right: 0;
  top: 1%;
  width: 32%;
}

.itemOs {
  position: absolute;
  left: 26%;
  top: 0;
  width: 48%;
}

.itemP {
  position: absolute;
  left: 2.5%;
  top: 2.5%;
  width: 55%;
}

.itemPs {
  position: absolute;
  left: 3.5%;
  top: 64%;
  width: 95%;
}

.itemQ {
  position: absolute;
  left: 5%;
  top: 36%;
  width: 63%;
}

.itemQs {
  position: absolute;
  left: 5%;
  top: 11%;
  width: 36%;
}

.itemQ2s {
  position: absolute;
  left: 5%;
  top: 118%;
  width: 90%;
}

.itemR {
  position: absolute;
  left: 5%;
  top: 47%;
  width: 25%;
}

.itemR a {
  display: block;
  transform: scale(1);
  transition: all .3s ease-in-out;
}

.itemR a:hover {
  transform: scale(1.05);
  transition: .3s;
}

.itemRs {
  position: absolute;
  left: 23%;
  top: 143%;
  width: 55%;
}

.itemS {
  position: absolute;
  left: 1%;
  top: 0.5%;
  width: 98%;
}

.itemSs {
  position: absolute;
  left: 0;
  top: 0%;
  width: 100%;
}

.itemT {
  position: absolute;
  left: 21%;
  top: 2%;
  width: 53%;
}

.itemTs {
  position: absolute;
  left: 25%;
  top: 4%;
  width: 50%;
}

.itemU {
  position: absolute;
  left: 1%;
  top: 10%;
  width: 38%;
}

.itemUs {
  position: absolute;
  left: 5%;
  top: 28%;
  width: 85%;
}

.itemV {
  position: absolute;
  left: 36%;
  top: 10%;
  width: 33%;
}

.itemVs {
  position: absolute;
  left: 12%;
  top: 91%;
  width: 85%;
}

.itemW {
  position: absolute;
  right: 3%;
  top: 20%;
  width: 36%;
}

.itemWs {
  position: absolute;
  left: 6%;
  top: 165%;
  width: 85%;
}

.saleA {
  position: absolute;
  left: 30%;
  top: 5%;
  width: 14%;
}

.saleB {
  position: absolute;
  right: 30%;
  top: 7%;
  width: 14%;
}

.saleAs {
  position: absolute;
  right: 6.5%;
  top: 62%;
  width: 25%;
}

.saleBs {
  position: absolute;
  right: 6.5%;
  top: 62%;
  width: 25%;
}

.catchPc {
  position: absolute;
  left: 2%;
  top: 2%;
  width: 96%;
}

.catchSp {
  position: absolute;
  left: 8%;
  top: 2.5%;
  width: 85%;
}

.pchide {
  display: none;
}

.sphide {
  display: block;
}

@media screen and (min-width: 1200px) {
  .headItem {
    width: 80%;
  }

  .voxA {
    width: 80%;
  }

  .voxB {
    width: 80%;
  }

  .voxC {
    width: 80%;
  }

  .voxD {
    width: 80%;
  }

  .voxE {
    width: 80%;
    height: 42vw;
  }

  .voxF {
    width: 80%;
  }

  .stageA {
    width: 80vw;
    height: 48.3vw;
  }

  .stageB {
    width: 80vw;
    height: 14vw;
  }

  .stageC {
    width: 80vw;
    height: 55vw;
  }

  .stageD {
    width: 80vw;
    height: 55vw;
  }

  .stageE {
    width: 80vw;
    height: 42vw;
  }

  .stageF {
    width: 80vw;
    height: 5vw;
  }

}

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

  .sphide {
    display: none;
  }
}

@media screen and (max-width: 1050px) {

  .itemG {
    position: absolute;
    left: 40%;
    top: 27%;
    width: 20%;
  }
}

.fadeIn {
  animation-name: fadeIn;
  -webkit-animation-name: fadeIn;
  animation-duration: 1s;
  -webkit-animation-duration: 1s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  visibility: visible !important;
}

@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(20%);
  }

  10% {
    opacity: 0;
    transform: translateY(20%);
  }

  100% {
    opacity: 1;
    transform: translateY(0%);
  }
}

.fadeIn2 {
  animation-name: fadeIn2;
  -webkit-animation-name: fadeIn2;
  animation-duration: 3.5s;
  -webkit-animation-duration: 3.5s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  visibility: visible !important;
}

@keyframes fadeIn2 {
  0% {
    opacity: 0;
    transform: translateY(40%);
  }

  50% {
    opacity: 0;
    transform: translateY(20%);
  }

  100% {
    opacity: 1;
    transform: translateY(0%);
  }
}

.fadeIn3 {
  animation-name: fadeIn3;
  -webkit-animation-name: fadeIn3;
  animation-duration: 3s;
  -webkit-animation-duration: 3s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  visibility: visible !important;
}

@keyframes fadeIn3 {
  0% {
    opacity: 0;
    transform: translateX(-20%);
  }

  60% {
    opacity: 0;
    transform: translateX(-20%);
  }

  100% {
    opacity: 1;
    transform: translateX(0%);
  }
}

.fadeIn4 {
  animation-name: fadeIn4;
  -webkit-animation-name: fadeIn4;
  animation-duration: 3.5s;
  -webkit-animation-duration: 3.5s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  visibility: visible !important;
}

@keyframes fadeIn4 {
  0% {
    opacity: 0;
    transform: translateX(20%);
  }

  60% {
    opacity: 0;
    transform: translateX(20%);
  }

  100% {
    opacity: 1;
    transform: translateX(0%);
  }
}

.fadeIn5 {
  animation-name: fadeIn4;
  -webkit-animation-name: fadeIn4;
  animation-duration: 3s;
  -webkit-animation-duration: 3s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  visibility: visible !important;
}

@keyframes fadeIn5 {
  0% {
    opacity: 0;
    transform: translateY(15%);
  }

  60% {
    opacity: 0;
    transform: translateY(15%);
  }

  100% {
    opacity: 1;
    transform: translateY(0%);
  }
}

.fadeIn6 {
  animation-name: fadeIn;
  -webkit-animation-name: fadeIn;
  animation-duration: 3s;
  -webkit-animation-duration: 3s;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
  visibility: visible !important;
}

@keyframes fadeIn6 {
  0% {
    opacity: 0;
    transform: translateY(20%);
  }

  10% {
    opacity: 0;
    transform: translateY(20%);
  }

  100% {
    opacity: 1;
    transform: translateY(0%);
  }
}

.yuragi {
  transform-origin: center bottom;
  animation: yurayura 5s linear infinite;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
}

@keyframes yurayura {

  0%,
  100% {
    transform: rotate(0.7deg);
  }

  50% {
    transform: rotate(-0.7deg);
  }
}

.yuragi2 {
  transform-origin: center bottom;
  animation: yurayura2 4.5s linear infinite;
  animation-timing-function: ease;
  -webkit-animation-timing-function: ease;
}

@keyframes yurayura2 {

  0%,
  100% {
    transform: rotate(-0.7deg);
  }

  50% {
    transform: rotate(0.7deg);
  }
}

.slidein {
  opacity: 0;
  transform: translate(0, 0);
  transition: all 1.0s;

  &.slidein-left {
    transform: translate(-10%, 0);
  }

  &.slidein-right {
    transform: translate(10%, 0);
  }

  &.slidein-up {
    transform: translate(0, -12%);
  }

  &.slidein-bottom {
    transform: translate(0, 12%);
  }

  &.scrollin {
    transform: translate(0, 0) !important;
    opacity: 1 !important;
  }
}
