@charset "UTF-8";
/*-----------------------------------------------------------------------
 modifier
----------------------------------------------------------------------- */
.is-inline_wrap {
  letter-spacing: -0.4em;
}
.is-br {
  display: block;
}
.is-split {
  display: inline-block;
}
.is-pc_br {
  display: block;
}
.is-sp_br {
/*  display: none; */ /* sp to pc */
}
.is-font_bold {
  font-weight: bold;
}
.is-sp_img {
  display: block;
}
.is-before_icon::before,
.is-after_icon::after {
  background-repeat: no-repeat;
  background-size: 100% auto;
  content: '';
  display: inline-block;
  vertical-align: middle;
}
.is-before_symbol::before,
.is-after_symbol::after {
  content: '';
  display: inline-block;
  position: relative;
  vertical-align: middle;
}
.is-disabled {
  display: none;
}
.is-bg_gray {
  background: #f0f5f9;
}
@media screen and (min-width: 584px) {
  .is-pc_img {
    display: block;
  }
  .is-sp_img {
    display: none;
  }
}


/*-----------------------------------------------------------------------
 container
----------------------------------------------------------------------- */
/* content settings */
html {
  font-size: 100%;
}
/*main :hover {
  opacity: 1.0;
}*/
main a {
  display: inline-block;
  text-decoration: none;
}
main {
  background: transparent;
  padding: 0
}
.container {
  background-size: 4%;
  margin: 0 auto;
}
.com-inner_wrap,
.period-inner_wrap {
  margin: 0 auto;
  max-width: 1000px;
  width: 92%;
}
.com-inner {
  padding: 10% 0 7%;
}
@media screen and (max-width: 767px) {
  .com-inner_wrap {
    max-width: none;
  }
  .com-inner {
  }
}
@media screen and (max-width: 583px) {
  .com-inner_wrap {
    max-width: 480px;
  }
  .com-inner {
    padding: 10% 0 7%;
  }
}


/*-----------------------------------------------------------------------
 main_visual
----------------------------------------------------------------------- */
.main_visual-wrap {
  background: url(/special/halloween2019/img/main_visual_bg.png) center bottom;
  background-size: cover;
}
.main_visual-inner_wrap {
  margin: 0 auto;
  max-width: 1200px;
}
.main_visual-head {
  background: transparent;
  left: 0.5%;
  margin: 0 auto;
  padding: 2% 0 1.5%;
  position: relative;
  width: 80%;
}
.period {
  background: #7f1f5f;
}
.period-inner {
  margin: 0 auto;
  padding: 3% 0;
  width: 56%;
}
@media screen and (max-width: 583px) {
  .main_visual-head {
    position: static;
    width: 92%;
  }
  .period-inner {
    padding: 2.5% 0;
    width: 60%;
  }
}
@media screen and (max-width: 479px) {
  .main_visual-head {
    padding: 2.8% 0 1.8%;
    width: 96%;
  }
  .period-inner {
    width: 72%;
  }
  
}


/*-----------------------------------------------------------------------
 summary
*----------------------------------------------------------------------- */
body::before {
  content:"";
  display:block;
  position:fixed;
  top:0;
  left:0;
  z-index:-1;
  width:100%;
  height:100vh;
  background:url(/special/halloween2019/img/content_bg.png) center no-repeat;
  background-size:cover;
}
/*
.summary {
  background: url(/special/halloween2019/img/content_bg.png) no-repeat;
  background-size: cover;
  background-attachment: fixed;
}
*/
.summary img {
  color: #fff;
}
.summary-head {
  margin: 0 auto 4%;
  position: relative;
  width: 65.4%;
}
.summary-head::before,
.summary-head::after {
  content: '';
  display: block;
  height: 0;
  padding: 0 0 32.7%;
  position: absolute;
  top: 0;
  width: 47.7%;
}
.summary-head::before {
  animation: angel 1.3s linear 0s infinite normal;
  background: url(/special/halloween2019/img/angel.png) no-repeat;
  background-size: 100%;
  left: 0;
}
.summary-head::after {
  animation: devil 1.3s linear 0s infinite normal;
  background: url(/special/halloween2019/img/devil.png) no-repeat;
  background-size: 100%;
  right: 0;
}
@keyframes angel {
  0% {
    margin: -8% 0 0 -36%;
  }
  25% {
    margin: -7% 0 0 -35.8%;
  }
  50% {
    margin: -6% 0 0 -36%;
  }
  75% {
    margin: -7% 0 0 -36.2%;
  }
  100% {
    margin: -8% 0 0 -36%;
  }
}
@keyframes devil {
  0% {
    margin: -6% -33% 0 0;
  }
  25% {
    margin: -7% -33.2% 0 0;
  }
  50% {
    margin: -8% -33% 0 0;
  }
  75% {
    margin: -7% -32.8% 0 0;
  }
  100% {
    margin: -6% -33% 0 0;
  }
}
.summary-text {
  margin: 0 auto 5%;
  width: 77.7%;
}
.summary-sub_head {
  margin: 0 auto 2%;
  width: 69.7%;
}
.summary_twitter {
  margin: 0 auto 4%;
  width: 62%;
}
.summary_polling {
  display: block;
  margin: 0 auto 5%;
  width: 64%;
}
@media screen and (max-width: 583px) {
  .summary-head {
    left: -0.6%;
    margin: 0 auto 7%;
    width: 86%;
  }
  
  .summary-head::before,
  .summary-head::after {
    width: 30%;
  }
  .summary-head::before {
    animation: angel583 1.3s linear 0s infinite normal;
  }
  .summary-head::after {
    animation: devil583 1.3s linear 0s infinite normal;
  }
  .summary-text {
    margin: 0 auto 8%;
    width: 80%;
  }
  .summary-sub_head {
    margin: 0 auto 7%;
    width: 92%;
  }
  .summary_twitter {
    margin: 0 auto 6.6%;
    width: 72%;
  }
  .summary_twitter {
    margin: 0 auto 6%;
  }
}
@keyframes angel583 {
  0% {
    margin: -2% 0 0 -13%;
  }
  25% {
    margin: -1% 0 0 -12.8%;
  }
  50% {
    margin: 0% 0 0 -13%;
  }
  75% {
    margin: -1% 0 0 -13.2%;
  }
  100% {
    margin: -2% 0 0 -13%;
  }
}
@keyframes devil583 {
  0% {
    margin: 0% -12% 0 0;
  }
  25% {
    margin: -1% -12.2% 0 0;
  }
  50% {
    margin: -2% -12% 0 0;
  }
  75% {
    margin: -1% -11.8% 0 0;
  }
  100% {
    margin: 0% -12% 0 0;
  }
}


/*-----------------------------------------------------------------------
 scroll fade
*----------------------------------------------------------------------- */
.scroll_fade {
  opacity: 0;
  position: relative;
  top: 120px;
  transition: 0.35s ease-out;
}
.is-fade {
  opacity: 1.0;
  top: 0;
}

