@-webkit-keyframes scnavi_effect {
  0% {
    top: 0;
    opacity: 0
  }
  15% {
    top: 0;
    opacity: 1
  }
  100% {
    top: 100%
  }
}

@keyframes scnavi_effect {
  0% {
    top: 0;
    opacity: 0
  }
  15% {
    top: 0;
    opacity: 1
  }
  100% {
    top: 100%
  }
}

canvas {
  opacity: 0;
  -webkit-transition: ease 1.5s opacity;
  transition: ease 1.5s opacity
}

canvas.is-show {
  opacity: 1
}

main {
  opacity: 0;
  -webkit-transition: opacity ease 1.5s;
  transition: opacity ease 1.5s
}

main.is-show {
  opacity: 1
}

.p-vision__container {
  position: relative;
  padding-top: 0px
}

@media screen and (max-width: 767px) {
  .p-vision__container {
    padding-top: 0px
  }
}

.p-vision__catch {
  width: 100%;
    font-weight: normal;
    font-size: 38px;
    line-height: 1.6em;
    letter-spacing: 0.1em;
		padding-bottom:50px;
}

@media screen and (max-width: 1049px) {
  .p-vision__catch {
    width: 100px
  }
}

@media screen and (max-width: 767px) {
  .p-vision__catch {
    width: 100%;
    font-size: 22px;
  }
}

.p-vision__catch img {
  /*width: 100%*/
}

@media screen and (min-width: 768px) {
  .p-vision__txt {
    font-size: 14px;
    line-height: 2.75em;
    letter-spacing: .2em
  }
}

@media print {
  .p-vision__txt {
    font-size: 14px;
    line-height: 2.75em;
    letter-spacing: .2em
  }
}

@media screen and (max-width: 767px) {
  .p-vision__txt {
    line-height: 2.5em;
    letter-spacing: .05em
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .p-vision__txt {
    font-size: 3.46667vw
  }
}

@media screen and (min-width: 768px) {
  .p-vision__txt+.p-vision__txt {
    margin: 30px 0 0
  }
}

@media print {
  .p-vision__txt+.p-vision__txt {
    margin: 30px 0 0
  }
}

@media screen and (max-width: 767px) {
  .p-vision__txt+.p-vision__txt {
    margin: 30px 0 0
  }
}

.p-vision__btn__container {
  margin: 70px 0 0
}

@media screen and (max-width: 767px) {
  .p-vision__btn__container {
    width: auto
  }
}

@media screen and (min-width: 768px) {
  .p-vision__btn {
    width: 25vw
  }
}

@media print {
  .p-vision__btn {
    width: 25vw
  }
}

@media screen and (max-width: 767px) {
  .p-vision__btn {
    width: auto
  }
}