@charset "UTF-8";
#pc-view {
  display: block; }

#sp-view {
  display: none; }

.sg-footer {
  margin-top: 0; }
  .sg-footer > * {
    margin-top: 0; }

.sg-footer-sns > li {
  width: auto;
  height: auto; }
  .sg-footer-sns > li + li {
    margin-left: 10px; }
  .sg-footer-sns > li.facebook {
    margin-top: -1px; }

h3 {
  font-family: "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
  color: #FFFFFF; }

#lottie {
  width: 100%;
  height: 300px; }

body {
  background: #000000 url("/img/lp/worldhackathon/bg-main.svg") repeat left 0;
  background-attachment: fixed;
  background-size: 100%;
  color: #FFFFFF;
  letter-spacing: 1px;
  font-family: "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif; }

.pg-content {
  width: 880px;
  margin: 0 auto; }
  .pg-content__inner {
    padding-bottom: 100px; }

.c-content {
  background: #000000 url("/img/lp/worldhackathon/bg-main.svg") repeat left 0;
  background-attachment: fixed;
  background-size: 100%;
  padding-top: 120px; }

.c-kv-wrapper {
  position: relative; }

.c-kv {
  position: relative;
  width: 100vw;
  height: 100vh;
  background: url("/img/lp/worldhackathon/pc-kv.svg") no-repeat;
  background-size: 166%;
  background-position-x: center;
  background-position-y: 66%; }
  .c-kv__content {
    position: absolute;
    top: 65%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1; }
  .c-kv__close-message {
    font-size: 24px;
    font-weight: 400;
    letter-spacing: 2px;
    text-align: center; }

@media screen and (max-width: 1336px) {
  .c-kv {
    background-size: 140%;
    background-position-y: -384px; }
    .c-kv__content {
      top: 538px; } }

@media screen and (max-width: 1440px) {
  .c-kv {
    background-size: 168%;
    background-position-y: 58%; }
    .c-kv__content {
      top: 65%; } }

@media screen and (min-width: 1680px) {
  .c-kv {
    background-size: 170%;
    background-position-y: 60%; }
    .c-kv__content {
      top: 64%; } }

@media screen and (min-width: 1920px) {
  .c-kv {
    background-size: 170%;
    background-position-y: 60%; }
    .c-kv__content {
      top: 64%; } }

@media screen and (min-width: 2560px) {
  .c-kv {
    background-size: 170%;
    background-position-y: 60%; }
    .c-kv__content {
      top: 64%; } }

.c-date {
  font-size: 32px;
  text-align: center;
  letter-spacing: 6px; }

.c-countdown {
  display: flex;
  display: -webkit-box;
  margin: 0 auto;
  padding-bottom: 180px;
  letter-spacing: 6px; }
  .c-countdown__item {
    display: table-cell;
    width: 100px;
    padding-right: 46px; }
  .c-countdown__time {
    font-size: 60px;
    text-align: center;
    line-height: 1; }
  .c-countdown__text {
    display: block;
    padding-top: 6px;
    font-size: 16px; }

.is-active.c-countdown {
  opacity: 1;
  transform: translateY(-50px); }

.c-tagline {
  position: absolute;
  left: 38px;
  top: 36px;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 78px;
  line-height: 1;
  letter-spacing: 30px; }

.c-tagline__space {
  padding: 84px 0; }

.c-date span {
  display: block;
  margin-bottom: 40px;
  font-size: 16px; }

.pg-heading {
  padding-bottom: 24px;
  text-align: center; }

.pg-description {
  font-size: 18px;
  line-height: 2;
  text-align: center;
  color: #CCCCCC; }

@keyframes marquee {
  from {
    transform: translateY(0%); }
  100%, to {
    transform: translateY(-100%); } }

.c-kv-opening__01 {
  position: fixed;
  width: 100%;
  height: 100vh;
  z-index: 10000;
  background: #000000; }
  .c-kv-opening__01 .c-anim {
    position: absolute;
    top: 50%;
    width: 80%;
    padding-top: 0;
    transform: translate(10%, -50%); }

.c-kv-opening__02 {
  position: fixed;
  width: 100%;
  height: 100vh;
  z-index: 9999;
  background: #000000; }
  .c-kv-opening__02 .c-data {
    font-size: 80px;
    text-align: center;
    letter-spacing: 6px;
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    opacity: 0;
    animation-name: textanimation;
    animation-duration: 4s;
    animation-delay: 4s;
    animation-iteration-count: 1;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards; }
    .c-kv-opening__02 .c-data span {
      display: block;
      font-size: 50px; }

.c-kv-opening__03 {
  position: fixed;
  width: 100%;
  height: 1000vh;
  background: #000;
  z-index: 9998;
  transform-origin: left top;
  transform: skewY(-30deg) translateY(-50%);
  transition: transform 10s linear; }
  .c-kv-opening__03.active {
    transform: skewY(-30deg) translateY(100%);
    -webkit-transition-delay: 0;
    transition-delay: 0; }
  .c-kv-opening__03 .c-kv-mask::before {
    display: block;
    content: ""; }

#getting-started {
  text-align: center;
  font-size: 30px;
  margin-top: 50px; }

@keyframes textanimation {
  0% {
    opacity: 0;
    transform: translate(0, 0%); }
  30% {
    opacity: 1;
    transform: translate(0, -50%); }
  70% {
    opacity: 1;
    transform: translate(0, -50%); }
  100% {
    opacity: 0;
    transform: translate(0, -100%); } }

.c-process__heading {
  position: absolute;
  top: -5px;
  left: 50%;
  width: 150px;
  margin-left: -75px;
  font-size: 14px;
  text-align: center;
  letter-spacing: 3px;
  z-index: 1;
  opacity: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  -webkit-transition-delay: .1s;
  transition-delay: .1s; }

.c-process__title {
  position: absolute;
  top: 50%;
  width: 100%;
  padding: 0 20px;
  box-sizing: border-box;
  font-size: 18px;
  text-align: center;
  opacity: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  -webkit-transition-delay: .3s;
  transition-delay: .3s; }
  .c-process__title span {
    display: block;
    padding-top: 10px;
    font-size: 14px; }

.c-process-box-wrapper {
  width: 300px;
  margin: 0 auto; }

.c-process-box {
  position: relative;
  width: 100%;
  height: 100px;
  margin-bottom: 65px;
  text-align: center;
  -webkit-transition: all .5s ease;
  transition: all .5s ease; }
  .c-process-box::after {
    position: absolute;
    top: 100px;
    left: 50%;
    display: block;
    content: "";
    height: 0;
    width: 1px;
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
    background-color: #FFFFFF;
    -webkit-transition-delay: .9s;
    transition-delay: .9s; }
  .c-process-box__bd__top {
    position: absolute;
    top: 0;
    width: 0;
    height: 1px;
    -webkit-transition-delay: 0.1s;
    transition-delay: 0.1s; }
    .c-process-box__bd__top::before, .c-process-box__bd__top::after {
      position: absolute;
      display: block;
      content: "";
      width: 0;
      height: 1px;
      background-color: #FFFFFF;
      -webkit-transition: all .5s ease;
      transition: all .5s ease; }
    .c-process-box__bd__top::before {
      right: -74px; }
    .c-process-box__bd__top::after {
      left: 225px; }
  .c-process-box__bd__right {
    position: absolute;
    top: 0;
    right: 0;
    width: 1px;
    height: 0;
    background-color: #FFFFFF;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transition-delay: .3s;
    transition-delay: .3s; }
  .c-process-box__bd__left {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 0;
    background-color: #FFFFFF;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transition-delay: .3s;
    transition-delay: .3s; }
  .c-process-box__bd__bottom {
    position: absolute;
    bottom: 0;
    width: 0;
    height: 1px; }
    .c-process-box__bd__bottom::before, .c-process-box__bd__bottom::after {
      position: absolute;
      display: block;
      content: "";
      width: 0;
      height: 1px;
      background-color: #FFFFFF;
      -webkit-transition: all .5s ease;
      transition: all .5s ease;
      -webkit-transition-delay: .6s;
      transition-delay: .6s; }
    .c-process-box__bd__bottom::before {
      right: -300px; }
    .c-process-box__bd__bottom::after {
      left: 0; }
  .c-process-box__description {
    position: absolute;
    width: 390px;
    font-size: 16px;
    color: #888888;
    text-align: left;
    opacity: 0;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transition-delay: .9s;
    transition: .9s; }
    .c-process-box__description--step01 {
      top: 60px;
      right: -430px; }
    .c-process-box__description--step02 {
      top: 30px;
      left: -430px;
      text-align: right; }
    .c-process-box__description--step03 {
      top: 60px;
      right: -430px; }
  .c-process-box.is-active .c-process__heading {
    opacity: 1;
    transform: translateY(-5px); }
  .c-process-box.is-active .c-process__title {
    opacity: 1;
    transform: translateY(-50%); }
  .c-process-box.is-active .c-process-box__bd__right,
  .c-process-box.is-active .c-process-box__bd__left {
    height: 100%; }
  .c-process-box.is-active .c-process-box__bd__top::before {
    width: 74px; }
  .c-process-box.is-active .c-process-box__bd__top::after {
    width: 74px; }
  .c-process-box.is-active .c-process-box__bd__bottom::before, .c-process-box.is-active .c-process-box__bd__bottom::after {
    width: 150px; }
  .c-process-box.is-active::after {
    height: 46px;
    background: #FFFFFF; }
  .c-process-box.is-active .c-process-box__description {
    opacity: 1; }
    .c-process-box.is-active .c-process-box__description--step01 {
      top: 0;
      right: -430px; }
    .c-process-box.is-active .c-process-box__description--step02 {
      top: -30px;
      left: -430px;
      text-align: right; }
    .c-process-box.is-active .c-process-box__description--step03 {
      top: 20px;
      right: -430px; }
  .c-process-box--step04.is-active::after {
    height: 64px; }

.c-enty-button-warp {
  width: 253px;
  margin: 0 auto;
  padding: 76px 0 36px 4px; }

.hexagon {
  display: block;
  position: relative;
  width: 253px;
  height: 148.96px;
  text-align: center;
  color: #fff; }

.hexagon span {
  display: block;
  z-index: 3;
  position: absolute;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  opacity: 0;
  width: 253px;
  height: 100.96px;
  padding-top: 48px;
  background-color: #000;
  border-left: solid 2px #FFFFFF;
  border-right: solid 2px #FFFFFF;
  font-size: 18px;
  text-align: center;
  letter-spacing: 4px;
  line-height: 1.8;
  -webkit-transition-delay: 3s;
  transition-delay: 3s; }

.hexagon:before,
.hexagon:after {
  display: block;
  content: "";
  position: absolute;
  z-index: 1;
  width: 182.43px;
  height: 182.43px;
  -webkit-transform: scaleY(0.5774) rotate(-45deg);
  -ms-transform: scaleY(0.5774) rotate(-45deg);
  transform: scaleY(0.5774) rotate(-45deg);
  background-color: #000;
  left: 32.7832px;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  transition: all .5s linear;
  opacity: 0; }

.hexagon:before {
  top: -91.2168px;
  border-top: solid 2px #FFFFFF;
  border-right: solid 2px #FFFFFF;
  transition: all .5s linear;
  opacity: 0;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 3s;
  transition-delay: 3s; }

.hexagon:after {
  bottom: -91.2168px;
  border-bottom: solid 2px #FFFFFF;
  border-left: solid 2px #FFFFFF;
  transition: all .5s linear;
  opacity: 0;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 3s;
  transition-delay: 3s; }

.hexagon-pointer-top::before,
.hexagon-pointer-top::after,
.hexagon-pointer-middle::before,
.hexagon-pointer-middle::after,
.hexagon-pointer-bottom::before,
.hexagon-pointer-bottom::after {
  position: absolute;
  width: 15px;
  height: 15px;
  display: block;
  background: #FFFFFF;
  content: "";
  border-radius: 100%;
  z-index: 4;
  transition: all .5s ease; }

.hexagon-pointer-top::before {
  top: -78px;
  left: 50%;
  margin-left: -9px;
  opacity: 0;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 1s;
  transition-delay: 1s; }

.hexagon-pointer-top::after {
  top: -6px;
  right: -9px;
  opacity: 0;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 2s;
  transition-delay: 2s; }

.hexagon-pointer-middle::before {
  bottom: -9px;
  right: -9px;
  opacity: 0;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 2.6s;
  transition-delay: 2.6s; }

.hexagon-pointer-bottom::before {
  bottom: -78px;
  left: 50%;
  margin-left: -9px;
  opacity: 0;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 2.7s;
  transition-delay: 2.7s; }

.hexagon-pointer-bottom::after {
  bottom: -9px;
  left: -7px;
  opacity: 0;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 2.8s;
  transition-delay: 2.8s; }

.hexagon-pointer-middle::after {
  top: -8px;
  left: -7px;
  opacity: 0;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 2.9s;
  transition-delay: 2.9s; }

.is-active .hexagon-pointer-top::before {
  opacity: 1;
  animation-name: heartbeat;
  animation-duration: 2s;
  animation-timing-function: ease;
  animation-delay: 0;
  animation-iteration-count: 2;
  animation-direction: normal; }

.is-active .hexagon-pointer-top::after,
.is-active .hexagon-pointer-middle::after,
.is-active .hexagon-pointer-middle::before,
.is-active .hexagon-pointer-bottom::after,
.is-active .hexagon-pointer-bottom::before,
.is-active .hexagon::before,
.is-active .hexagon::after,
.is-active .hexagon span {
  opacity: 1; }

@keyframes heartbeat {
  0% {
    width: 14px; }
  50% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3); }
  100% {
    width: 14px; } }

.c-side-entry-button {
  position: fixed;
  bottom: 100px;
  right: 17px;
  display: none; }

.c-side-entry-button.is-active {
  opacity: 1; }

.hexagon-small {
  display: block;
  position: relative;
  width: 185px;
  height: 106.81px;
  text-align: center;
  color: #fff;
  -webkit-transition: all .5s ease;
  transition: all .5s ease; }

.hexagon-small span {
  display: block;
  z-index: 3;
  position: absolute;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  opacity: 1;
  width: 185px;
  height: 70.81px;
  padding-top: 36px;
  background-color: #000;
  border-left: solid 1px #FFFFFF;
  border-right: solid 1px #FFFFFF;
  font-size: 14px;
  text-align: center;
  letter-spacing: 4px;
  line-height: 1.5; }

.hexagon-small:before,
.hexagon-small:after {
  content: "";
  position: absolute;
  z-index: 1;
  width: 130.81px;
  height: 130.81px;
  -webkit-transform: scaleY(0.5774) rotate(-45deg);
  -ms-transform: scaleY(0.5774) rotate(-45deg);
  transform: scaleY(0.5774) rotate(-45deg);
  background-color: #000000;
  left: 26.0926px; }

.hexagon-small:before {
  top: -65.4074px;
  border-top: solid 1.4142px #FFFFFF;
  border-right: solid 1.4142px #FFFFFF; }

.hexagon-small:after {
  bottom: -65.4074px;
  border-bottom: solid 1.4142px #FFFFFF;
  border-left: solid 1.4142px #FFFFFF; }

.hexagon-small-pointer-top::before,
.hexagon-small-pointer-top::after,
.hexagon-small-pointer-middle::before,
.hexagon-small-pointer-middle::after,
.hexagon-small-pointer-bottom::before,
.hexagon-small-pointer-bottom::after {
  position: absolute;
  width: 15px;
  height: 15px;
  display: block;
  background: #FFFFFF;
  content: "";
  border-radius: 100%;
  z-index: 4;
  transition: all .5s ease; }

.hexagon-small-pointer-top::before {
  top: -59px;
  left: 50%;
  margin-left: -7px;
  opacity: 1;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 1.5s;
  transition-delay: 1.5s; }

.hexagon-small-pointer-top::after {
  top: -6px;
  right: -9px;
  opacity: 1;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 2.5s;
  transition-delay: 2.5s; }

.hexagon-small-pointer-middle::before {
  bottom: -9px;
  right: -9px;
  opacity: 1;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 2.6s;
  transition-delay: 2.6s; }

.hexagon-small-pointer-bottom::before {
  bottom: -60px;
  left: 50%;
  margin-left: -9px;
  opacity: 1;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 2.7s;
  transition-delay: 2.7s; }

.hexagon-small-pointer-bottom::after {
  bottom: -9px;
  left: -7px;
  opacity: 1;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 2.8s;
  transition-delay: 2.8s; }

.hexagon-small-pointer-middle::after {
  top: -8px;
  left: -7px;
  opacity: 1;
  -webkit-transition: all .5s ease;
  transition: all .5s ease;
  -webkit-transition-delay: 2.9s;
  transition-delay: 2.9s; }

@keyframes heartbeat {
  0% {
    width: 14px; }
  50% {
    -webkit-transform: scale(1.3);
    transform: scale(1.3); }
  100% {
    width: 14px; } }

.c-side-entry-button {
  position: fixed;
  bottom: 150px;
  right: 43px;
  transition: all .5s ease;
  -webkit-transition: all .5s ease;
  transition: all .5s ease; }

.c-heading {
  margin: auto;
  padding-bottom: 32px;
  text-align: center; }
  .c-heading--about {
    width: 543px;
    height: 135px; }
  .c-heading--prize {
    width: 485px;
    height: 134px; }
  .c-heading--schedule {
    width: 478px;
    height: 54px; }
  .c-heading--process {
    width: 428px;
    height: 59px; }

.c-heading--sub {
  font-size: 29px;
  color: #FFFFFF;
  font-weight: 200;
  letter-spacing: 10px;
  line-height: 1; }

.c-description {
  font-size: 18px;
  line-height: 2;
  text-align: center;
  color: #CCCCCC; }
  .c-description--sub {
    margin-top: 24px; }

.c-requirements {
  width: 615px;
  margin: 0 auto; }
  .c-requirements .scroll-show-01,
  .c-requirements .scroll-show-02,
  .c-requirements .scroll-show-03 {
    opacity: 0;
    -webkit-transition: all 1s ease;
    transition: all 1s ease; }
  .c-requirements .scroll-show-01 {
    -webkit-transition-delay: 3.5s;
    transition-delay: 3.5s; }
  .c-requirements .scroll-show-02 {
    -webkit-transition-delay: 4s;
    transition-delay: 4s; }
  .c-requirements .scroll-show-03 {
    -webkit-transition-delay: 4.5s;
    transition-delay: 4.5s; }
  .c-requirements__description {
    padding-bottom: 26px;
    font-size: 18px;
    text-align: left;
    color: #CCCCCC; }
    .c-requirements__description li {
      position: relative;
      padding: 0 0 10px 18px; }
      .c-requirements__description li::before {
        display: block;
        position: absolute;
        top: 11px;
        left: 0;
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 100%;
        background: #CCCCCC; }
  .c-requirements.is-active .scroll-show-01,
  .c-requirements.is-active .scroll-show-02,
  .c-requirements.is-active .scroll-show-03 {
    opacity: 1;
    transform: translateY(-14px); }

.c-contact .c-heading {
  padding-bottom: 16px;
  letter-spacing: 6px; }

.c-contact a {
  color: #FFFFFF;
  text-decoration: underline;
  font-size: 18px; }
  .c-contact a span {
    letter-spacing: 1px;
    margin-right: -1px; }

.c-contact__description {
  font-size: 14px;
  text-align: center;
  color: #888888; }

.c-about {
  width: 1058px;
  margin: 0 auto; }
  .c-about__content {
    display: flex; }
  .c-about__description {
    padding-bottom: 20px;
    color: #CCCCCC;
    font-size: 18px;
    line-height: 1.8; }
  .c-about__thumbnail {
    padding-right: 36px; }
    .c-about__thumbnail img {
      width: 480px;
      height: 320px; }
  .c-about__link {
    display: none;
    font-size: 18px;
    color: #FFFFFF;
    letter-spacing: 6px;
    text-decoration: underline; }
    .c-about__link span {
      letter-spacing: 1px; }
  .c-about .scroll-show-01,
  .c-about .scroll-show-02 {
    opacity: 0;
    -webkit-transition: all 1s ease;
    transition: all 1s ease; }
  .c-about .scroll-show-01 {
    -webkit-transition-delay: 4s;
    transition-delay: 4s; }
  .c-about .scroll-show-02 {
    -webkit-transition-delay: 4.5s;
    transition-delay: 4.5s; }
  .c-about.is-active .scroll-show-01,
  .c-about.is-active .scroll-show-02 {
    opacity: 1;
    transform: translateY(-50px); }

.c-about-hackathon .c-heading--sub {
  padding-bottom: 0; }

.c-about-hackathon .c-description {
  padding-bottom: 50px; }

.c-about-hackathon .scroll-show-01,
.c-about-hackathon .scroll-show-02,
.c-about-hackathon .scroll-show-03,
.c-about-hackathon .scroll-show-04 {
  opacity: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease; }

.c-about-hackathon .scroll-show-01 {
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s; }

.c-about-hackathon .scroll-show-02 {
  -webkit-transition-delay: 1s;
  transition-delay: 1s; }

.c-about-hackathon .scroll-show-03 {
  -webkit-transition-delay: 1.5s;
  transition-delay: 1.5s; }

.c-about-hackathon .scroll-show-04 {
  -webkit-transition-delay: 2s;
  transition-delay: 2s; }

.c-about-hackathon.is-active .scroll-show-01,
.c-about-hackathon.is-active .scroll-show-02,
.c-about-hackathon.is-active .scroll-show-03,
.c-about-hackathon.is-active .scroll-show-04 {
  opacity: 1;
  transform: translateY(-50px); }

footer {
  background: #000; }
  footer .c-footer-inner {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
    align-items: center;
    width: 1058px;
    margin: 0 auto;
    padding: 30px 0; }
  footer .sns-share-button {
    margin: 0 40px 0 auto; }
    footer .sns-share-button__item {
      display: inline-block;
      vertical-align: middle; }
      footer .sns-share-button__item a {
        display: block;
        width: 35px;
        line-height: 30px;
        text-align: center; }
        footer .sns-share-button__item a:hover {
          opacity: 1; }

.c-inquiry-form {
  background: #FFFFFF; }
  .c-inquiry-form-header {
    text-align: center; }
    .c-inquiry-form-header img {
      width: 100%; }
  .c-inquiry-form footer {
    background: #000000; }

.pg-inquiry-wrapper {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding-top: 40px;
  color: #000000;
  font-size: 14px; }

.pg-inquiry-heading {
  padding: 20px 0;
  font-size: 34px;
  font-weight: bold;
  text-align: center; }

.pg-inquiry-description {
  padding: 20px 20px 30px;
  line-height: 1.5;
  font-weight: normal; }

.pg-inquiry-form {
  margin: 0 20px 20px; }

.pg-inquiry-form__input {
  padding: 20px 0; }

.pg-inquiry-form__heading {
  padding: 20px 20px 20px 0;
  font-weight: bold;
  text-align: left;
  vertical-align: top; }

.pg-inquiry-foot {
  padding: 0 20px 20px;
  text-align: left;
  font-weight: 400; }

.pg-inquiry-foot-description {
  font-weight: 400; }

.pg-inquiry-foot-heading {
  padding-bottom: 16px;
  font-weight: bold;
  font-size: 18px; }

.pg-inquiry-submit-agree {
  padding-bottom: 5px;
  text-align: center; }
  .pg-inquiry-submit-agree label {
    font-weight: 400; }

.pg-inquiry-submit-button {
  display: block;
  width: 240px;
  height: 45px;
  margin: 0 auto 100px;
  background: #000;
  line-height: 45px;
  text-align: center;
  font-size: 15px;
  color: #fff; }

.pg-inquiry-form input[type="text"],
.pg-inquiry-form input[type="email"],
.pg-inquiry-form textarea {
  width: 100%;
  padding: 5px;
  box-sizing: border-box;
  border: 1px solid #ddd;
  border-radius: 2px; }

.c-form-thanks {
  padding-bottom: 100px;
  text-align: center; }

.c-form-button a {
  display: block;
  width: 240px;
  height: 45px;
  margin: 0 auto;
  line-height: 45px;
  font-size: 15px;
  color: #FFFFFF;
  text-decoration: none;
  background: #000000; }

@media screen and (max-width: 1024px) {
  .pg-inquiry-wrapper {
    padding-top: 0; }
  .pg-inquiry-form,
  .pg-inquiry-form__input,
  .pg-inquiry-form__heading {
    display: block; }
  .pg-inquiry-form__input {
    margin-bottom: 20px; }
  .pg-inquiry-form__heading,
  .pg-inquiry-form__input {
    padding: 5px 0; }
  .c-inquiry-form {
    text-align: center; }
    .c-inquiry-form a {
      font-size: 14px; }
    .c-inquiry-form footer {
      background: #000; }
      .c-inquiry-form footer .c-footer-inner {
        display: block;
        width: 100%;
        padding: 30px;
        box-sizing: border-box; }
      .c-inquiry-form footer .c-footer-logo img {
        width: 50%; }
      .c-inquiry-form footer .c-copyright {
        font-size: 10px;
        color: #888888; }
      .c-inquiry-form footer .sns-share-button {
        margin: 0;
        padding: 28px 0; }
        .c-inquiry-form footer .sns-share-button__item {
          display: inline-block;
          vertical-align: middle; }
          .c-inquiry-form footer .sns-share-button__item a {
            display: block;
            width: 35px;
            line-height: 30px;
            text-align: center; }
            .c-inquiry-form footer .sns-share-button__item a:hover {
              opacity: 1; } }

.c-inquiry-form-content {
  height: auto; }

/* overwrite */
.pg-inquiry-description,
.pg-inquiry-foot li {
  font-weight: normal; }

.c-prize .scroll-show-01,
.c-prize .scroll-show-02,
.c-prize .scroll-show-03 {
  opacity: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease; }

.c-prize .scroll-show-01 {
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s; }

.c-prize .scroll-show-02 {
  -webkit-transition-delay: 1s;
  transition-delay: 1s; }
  .c-prize .scroll-show-02::before, .c-prize .scroll-show-02::after {
    width: 0;
    -webkit-transition: all 1s ease;
    transition: all 1s ease;
    -webkit-transition-delay: 1s;
    transition-delay: 1s; }

.c-prize .scroll-show-03 {
  -webkit-transition-delay: 1.5s;
  transition-delay: 1.5s; }

.c-prize.is-active .scroll-show-01,
.c-prize.is-active .scroll-show-02,
.c-prize.is-active .scroll-show-03 {
  opacity: 1; }

.c-prize.is-active .scroll-show-01,
.c-prize.is-active .scroll-show-02,
.c-prize.is-active .scroll-show-03 {
  transform: translateY(-50px); }

.c-prize.is-active .scroll-show-02::before, .c-prize.is-active .scroll-show-02::after {
  width: 100%; }

.c-prize .c-prize__details-content {
  width: 760px;
  margin: 0 auto; }
  .c-prize .c-prize__details-content .c-prize__details {
    padding: 40px 0;
    text-align: center;
    letter-spacing: 10px; }
    .c-prize .c-prize__details-content .c-prize__details span {
      display: block;
      padding-bottom: 10px;
      font-size: 16px;
      line-height: 1;
      letter-spacing: 5px; }
    .c-prize .c-prize__details-content .c-prize__details--first {
      position: relative;
      font-size: 64px;
      line-height: 1; }
      .c-prize .c-prize__details-content .c-prize__details--first::before, .c-prize .c-prize__details-content .c-prize__details--first::after {
        position: absolute;
        display: block;
        content: "";
        height: 1px;
        background: #A2A2A2; }
      .c-prize .c-prize__details-content .c-prize__details--first::before {
        top: -1px; }
      .c-prize .c-prize__details-content .c-prize__details--first::after {
        bottom: -1px; }
    .c-prize .c-prize__details-content .c-prize__details--column {
      width: 100%;
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      margin-bottom: 44px;
      border-bottom: 1px solid #A2A2A2; }
    .c-prize .c-prize__details-content .c-prize__details--second, .c-prize .c-prize__details-content .c-prize__details--third {
      font-size: 40px;
      margin: 40px 0;
      padding: 0 54px;
      line-height: 1; }
    .c-prize .c-prize__details-content .c-prize__details--third {
      border-left: 1px solid #A2A2A2; }
    .c-prize .c-prize__details-content .c-prize__details--others {
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      font-size: 16px; }
      .c-prize .c-prize__details-content .c-prize__details--others__item {
        position: relative;
        padding: 0 0 10px 40px;
        color: #888888; }
        .c-prize .c-prize__details-content .c-prize__details--others__item::before {
          position: absolute;
          left: 18px;
          display: block;
          content: "・"; }

.c-schedule .scroll-show-01 {
  opacity: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease; }

.c-schedule .scroll-show-02 .c-timeline::before {
  opacity: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease; }

.c-schedule .scroll-show-02 .c-timeline::after {
  height: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease; }

.c-schedule .scroll-show-02 .c-timeline--0816::before {
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s; }

.c-schedule .scroll-show-02 .c-timeline--0816::after {
  height: 0;
  -webkit-transition-delay: 0.2s;
  transition-delay: 0.2s; }

.c-schedule .scroll-show-02 .c-timeline--0816__text {
  opacity: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s; }

.c-schedule .scroll-show-02 .c-timeline--0926::before {
  -webkit-transition-delay: 0.4s;
  transition-delay: 0.4s; }

.c-schedule .scroll-show-02 .c-timeline--0926::after {
  height: 0;
  -webkit-transition-delay: 0.5s;
  transition-delay: 0.5s; }

.c-schedule .scroll-show-02 .c-timeline--0926__text {
  opacity: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  -webkit-transition-delay: 0.6s;
  transition-delay: 0.6s; }

.c-schedule .scroll-show-02 .c-timeline--0927::before {
  -webkit-transition-delay: 0.7s;
  transition-delay: 0.7s; }

.c-schedule .scroll-show-02 .c-timeline--0927::after {
  height: 0;
  -webkit-transition-delay: 0.8s;
  transition-delay: 0.8s; }

.c-schedule .scroll-show-02 .c-timeline--0927__text {
  opacity: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  -webkit-transition-delay: 0.9s;
  transition-delay: 0.9s; }

.c-schedule .scroll-show-02 .c-timeline--0928::before {
  -webkit-transition-delay: 1s;
  transition-delay: 1s; }

.c-schedule .scroll-show-02 .c-timeline--0928::after {
  height: 0;
  -webkit-transition-delay: 1.1s;
  transition-delay: 1.1s; }

.c-schedule .scroll-show-02 .c-timeline--0928__text {
  opacity: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  -webkit-transition-delay: 1.2s;
  transition-delay: 1.2s; }

.c-schedule .scroll-show-02 .c-timeline--0929::before {
  -webkit-transition-delay: 1.3s;
  transition-delay: 1.3s; }

.c-schedule .scroll-show-02 .c-timeline--0929::after {
  height: 0;
  -webkit-transition-delay: 1.4s;
  transition-delay: 1.4s; }

.c-schedule .scroll-show-02 .c-timeline--0929__text {
  opacity: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  -webkit-transition-delay: 1.5s;
  transition-delay: 1.5s; }

.c-schedule .scroll-show-02 .c-timeline--0930::before {
  -webkit-transition-delay: 1.6s;
  transition-delay: 1.6s; }

.c-schedule .scroll-show-02 .c-timeline--0930::after {
  height: 0;
  -webkit-transition-delay: 1.7s;
  transition-delay: 1.7s; }

.c-schedule .scroll-show-02 .c-timeline--0930__text {
  opacity: 0;
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
  -webkit-transition-delay: 1.8s;
  transition-delay: 1.8s; }

.c-schedule.is-active .scroll-show-01 {
  opacity: 1;
  transform: translateY(-50px); }

.c-schedule.is-active .scroll-show-02 .c-timeline--0816::before {
  opacity: 1;
  -webkit-transform: scale(1.1);
  transform: scale(1.1); }

.c-schedule.is-active .scroll-show-02 .c-timeline--0816::after {
  height: 80px; }

.c-schedule.is-active .scroll-show-02 .c-timeline--0816__text {
  transform: translateY(-16px);
  opacity: 1; }

.c-schedule.is-active .scroll-show-02 .c-timeline--0926::before {
  opacity: 1;
  -webkit-transform: scale(1.1);
  transform: scale(1.1); }

.c-schedule.is-active .scroll-show-02 .c-timeline--0926::after {
  height: 80px; }

.c-schedule.is-active .scroll-show-02 .c-timeline--0926__text {
  transform: translateY(-16px);
  opacity: 1; }

.c-schedule.is-active .scroll-show-02 .c-timeline--0927::before {
  opacity: 1;
  -webkit-transform: scale(1.1);
  transform: scale(1.1); }

.c-schedule.is-active .scroll-show-02 .c-timeline--0927::after {
  height: 80px; }

.c-schedule.is-active .scroll-show-02 .c-timeline--0927__text {
  transform: translateY(-12px);
  opacity: 1; }

.c-schedule.is-active .scroll-show-02 .c-timeline--0928::before {
  opacity: 1;
  -webkit-transform: scale(1.1);
  transform: scale(1.1); }

.c-schedule.is-active .scroll-show-02 .c-timeline--0928::after {
  height: 80px; }

.c-schedule.is-active .scroll-show-02 .c-timeline--0928__text {
  transform: translateY(-12px);
  opacity: 1; }

.c-schedule.is-active .scroll-show-02 .c-timeline--0929::before {
  opacity: 1;
  -webkit-transform: scale(1.1);
  transform: scale(1.1); }

.c-schedule.is-active .scroll-show-02 .c-timeline--0929::after {
  height: 80px; }

.c-schedule.is-active .scroll-show-02 .c-timeline--0929__text {
  transform: translateY(-12px);
  opacity: 1; }

.c-schedule.is-active .scroll-show-02 .c-timeline--0930::before {
  opacity: 1;
  -webkit-transform: scale(1.1);
  transform: scale(1.1); }

.c-schedule.is-active .scroll-show-02 .c-timeline--0930::after {
  height: 80px; }

.c-schedule.is-active .scroll-show-02 .c-timeline--0930__text {
  transform: translateY(-12px);
  opacity: 1; }

.c-schedule__timeline {
  position: relative;
  width: 14px;
  height: 584px;
  margin: 0 auto; }
  .c-schedule__timeline .c-timeline {
    width: 14px;
    font-size: 20px; }
    .c-schedule__timeline .c-timeline span {
      display: block;
      font-size: 16px;
      letter-spacing: 1px; }
    .c-schedule__timeline .c-timeline::before {
      position: absolute;
      display: block;
      content: "";
      width: 14px;
      height: 14px;
      border-radius: 100%;
      background: #FFFFFF; }
    .c-schedule__timeline .c-timeline::after {
      position: absolute;
      top: 15px;
      left: 6px;
      display: block;
      content: "";
      width: 1px;
      height: 80px;
      background: #FFFFFF; }
    .c-schedule__timeline .c-timeline--0816__text {
      position: absolute;
      top: 12px;
      left: 35px;
      width: 300px;
      text-align: left; }
    .c-schedule__timeline .c-timeline--0816__supplementary {
      font-size: 14px !important; }
    .c-schedule__timeline .c-timeline--0926::before {
      top: 96px; }
    .c-schedule__timeline .c-timeline--0926::after {
      top: 111px; }
    .c-schedule__timeline .c-timeline--0926__text {
      position: absolute;
      top: 112px;
      right: 35px;
      width: 200px;
      text-align: right; }
    .c-schedule__timeline .c-timeline--0927::before {
      top: 192px; }
    .c-schedule__timeline .c-timeline--0927::after {
      top: 207px; }
    .c-schedule__timeline .c-timeline--0927__text {
      position: absolute;
      top: 200px;
      left: 35px;
      width: 308px;
      text-align: left; }
    .c-schedule__timeline .c-timeline--0928::before {
      top: 288px; }
    .c-schedule__timeline .c-timeline--0928::after {
      top: 303px; }
    .c-schedule__timeline .c-timeline--0928__text {
      position: absolute;
      top: 296px;
      right: 35px;
      width: 400px;
      text-align: right; }
    .c-schedule__timeline .c-timeline--0929::before {
      top: 384px; }
    .c-schedule__timeline .c-timeline--0929::after {
      top: 396px; }
    .c-schedule__timeline .c-timeline--0929__text {
      position: absolute;
      top: 394px;
      left: 35px;
      width: 308px;
      text-align: left; }
    .c-schedule__timeline .c-timeline--0930::before {
      top: 480px; }
    .c-schedule__timeline .c-timeline--0930::after {
      top: 414px;
      height: 0; }
    .c-schedule__timeline .c-timeline--0930__text {
      position: absolute;
      top: 488px;
      right: 35px;
      width: 308px;
      text-align: right; }

.c-movie {
  width: 560px;
  margin: auto;
  padding-bottom: 40px;
  cursor: pointer; }
  .c-movie img {
    width: 100%;
    height: auto; }

.c-movie-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8); }

.c-popup {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  opacity: 0;
  visibility: hidden;
  transition: .6s; }

.c-popup.is-show {
  opacity: 1;
  visibility: visible; }

.c-popup-inner {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  margin-top: 20px; }

.c-popup-inner img {
  width: 100%; }

.close-btn {
  position: absolute;
  right: 0;
  top: -44px;
  width: 32px;
  height: 32px;
  line-height: 50px;
  text-align: center;
  cursor: pointer; }

.black-background {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 1;
  cursor: pointer; }
