@-webkit-keyframes open_cathc {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    opacity: 0;
    -webkit-filter: blur(5px);
            filter: blur(5px);
  }
  18% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    -webkit-filter: blur(0px);
            filter: blur(0px);
  }
  60% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    -webkit-filter: blur(0px);
            filter: blur(0px);
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    opacity: 0;
    -webkit-filter: blur(18px);
            filter: blur(18px);
  }
}

@keyframes open_cathc {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    opacity: 0;
    -webkit-filter: blur(5px);
            filter: blur(5px);
  }
  18% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    -webkit-filter: blur(0px);
            filter: blur(0px);
  }
  60% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    -webkit-filter: blur(0px);
            filter: blur(0px);
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    opacity: 0;
    -webkit-filter: blur(18px);
            filter: blur(18px);
  }
}

@-webkit-keyframes open_out {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    opacity: 0;
  }
}

@keyframes open_out {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    opacity: 0;
  }
}

.loading {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  background: url("../img/bg_smoke_blue.png") no-repeat center #000;
  width: 100%;
  height: 100%;
}

.loading .catch {
  -webkit-transform: translateY(-50%);
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
}

.loading_open {
  -webkit-animation: open_out 1s cubic-bezier(0.32, 0, 0.67, 0) 2.2s forwards;
  animation: open_out 1s cubic-bezier(0.32, 0, 0.67, 0) 2.2s forwards;
}

.loading_open .catch {
  -webkit-animation: open_cathc 2.4s ease-in forwards;
  animation: open_cathc 2.4s ease-in forwards;
}

.top_visual {
  position: relative;
}

.top_visual .catch {
  position: absolute;
}

.top_visual:after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: "";
}

.top_movie {
  -webkit-background-size: cover;
  -o-background-size: cover;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  position: relative;
  box-sizing: border-box;
  border: 2px solid #89000a;
  background: no-repeat center;
  background-size: cover;
}

.top_movie:after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  background: url("../img/btn_play.png") no-repeat center rgba(0, 0, 0, 0.4);
  width: 100%;
  height: 100%;
  content: "";
}

@media only screen and (min-width: 751px) {
  .top_banner {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    float: left;
    box-sizing: border-box;
    padding: 50px 52px 0;
    width: 343px;
  }
  .top_banner li {
    margin-bottom: 20px;
  }
  .top_visual {
    float: right;
    width: calc(100% - 343px);
  }
  .top_visual .catch {
    top: 0;
  }
  .top_date {
    margin: 0 auto 34px;
    max-width: 216px;
  }
  .top_movie {
    cursor: pointer;
    margin-bottom: 20px;
    height: 138px;
  }
  .top_movie:after {
    -webkit-transition: all 0.2s ease-in;
    transition: all 0.2s ease-in;
    background-size: 150px;
  }
  .top_movie:hover:after {
    background-color: transparent;
  }
}

@media only screen and (max-width: 750px) {
  .top {
    position: relative;
    margin-bottom: 30px;
  }
  .top .top_date {
    position: absolute;
    top: 108vw;
    right: 3.3vw;
    width: 256px;
    width: 34.13vw;
  }
  .top_visual {
    margin-bottom: 13.4vw;
    margin-left: 5vw;
  }
  .top_visual .catch {
    top: 0;
  }
  .top_banner {
    margin: 0 auto;
    width: 66.7%;
    max-width: 250px;
  }
  .top_banner li {
    margin-bottom: 4vw;
  }
  .top_movie {
    margin-bottom: 4vw;
    height: 36.4vw;
  }
  .top_movie:after {
    background-size: 150px auto;
  }
}

@media only screen and (min-width: 751px) {
  .staffcast_area {
    position: relative;
    margin: 118px auto 0 auto;
    width: 990px;
  }
  .staffcast_area .staff {
    margin: 0 0 130px 0;
  }
  .staffcast_area .cast {
    padding-bottom: 31px;
  }
}

@media only screen and (max-width: 750px) {
  .staffcast_area .staff {
    margin-bottom: 58px;
  }
}

.sc_cap {
  -webkit-transform: translate(-50px, 0);
      -ms-transform: translate(-50px, 0);
          transform: translate(-50px, 0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
}

.is-scroll .sc_cap {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
  -webkit-transition: opacity 0.7s ease 0s, -webkit-transform 0.7s cubic-bezier(0.21, 0.75, 0.38, 0.95) 0s;
  transition: opacity 0.7s ease 0s, -webkit-transform 0.7s cubic-bezier(0.21, 0.75, 0.38, 0.95) 0s;
  transition: opacity 0.7s ease 0s, transform 0.7s cubic-bezier(0.21, 0.75, 0.38, 0.95) 0s;
  transition: opacity 0.7s ease 0s, transform 0.7s cubic-bezier(0.21, 0.75, 0.38, 0.95) 0s, -webkit-transform 0.7s cubic-bezier(0.21, 0.75, 0.38, 0.95) 0s;
}

.sc_text {
  -webkit-transform: translate(-50px, 0);
      -ms-transform: translate(-50px, 0);
          transform: translate(-50px, 0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
}

.is-scroll .sc_text {
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
  -webkit-transition: opacity 0.7s ease 0.3s, -webkit-transform 0.7s cubic-bezier(0.21, 0.75, 0.38, 0.95) 0.3s;
  transition: opacity 0.7s ease 0.3s, -webkit-transform 0.7s cubic-bezier(0.21, 0.75, 0.38, 0.95) 0.3s;
  transition: opacity 0.7s ease 0.3s, transform 0.7s cubic-bezier(0.21, 0.75, 0.38, 0.95) 0.3s;
  transition: opacity 0.7s ease 0.3s, transform 0.7s cubic-bezier(0.21, 0.75, 0.38, 0.95) 0.3s, -webkit-transform 0.7s cubic-bezier(0.21, 0.75, 0.38, 0.95) 0.3s;
}

.sc_cap {
  position: relative;
  margin-bottom: 24px;
}

.sc_cap::before {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: -6px;
  border-top: 2px solid #89000a;
  border-bottom: 2px solid #89000a;
  width: 745px;
  height: 6px;
  content: "";
}

.sc_cap_inner {
  display: block;
  width: 200px;
}

@media only screen and (min-width: 751px) {
  .cast .sc_cap_inner {
    margin-left: 13px;
  }
  .sc_text {
    margin-left: auto;
    width: 960px;
  }
}

@media only screen and (max-width: 750px) {
  .sc_cap {
    margin: 0 35px 0;
  }
  .sc_cap::before {
    right: 10px;
    left: 152px;
    margin-top: -4px;
    border-top: 1px solid #89000a;
    border-bottom: 1px solid #89000a;
    width: auto;
    height: 4px;
  }
  .sc_cap_inner {
    display: block;
    width: 150px;
  }
  .sc_text {
    margin: 23px 0px 0 25px;
  }
}

.floatimage .float_img {
  -webkit-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -o-transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}

.floatimage .float_img a {
  color: #fff;
}

@media only screen and (min-width: 751px) {
  .floatimage .float_img a {
    -webkit-transition: all 0.3s ease-in;
    transition: all 0.3s ease-in;
    cursor: pointer;
  }
  .floatimage .float_img a:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=65)";
    opacity: 0.65;
  }
  .floatimage .float_img a {
    font-size: 20px;
  }
}

@media only screen and (max-width: 750px) {
  .floatimage .float_img {
    width: 100%;
  }
  .floatimage .float_img a {
    font-size: 1.3rem;
  }
}

body:not(.is-hash-load) #wrapper {
  -webkit-filter: blur(50px);
          filter: blur(50px);
}

body.is-finish-loading #wrapper {
  -webkit-filter: blur(0);
          filter: blur(0);
  -webkit-transition: all 2.8s cubic-bezier(0.65, 0, 0.35, 1) 0s;
  transition: all 2.8s cubic-bezier(0.65, 0, 0.35, 1) 0s;
}

body.is-hash-load #wrapper {
  -webkit-filter: blur(0);
          filter: blur(0);
  -webkit-transition: none !important;
  transition: none !important;
}

@-webkit-keyframes loading_catch {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    opacity: 0;
    -webkit-filter: blur(10px);
            filter: blur(10px);
  }
  35% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    -webkit-filter: blur(0px);
            filter: blur(0px);
  }
  65% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    -webkit-filter: blur(0px);
            filter: blur(0px);
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    opacity: 0;
    -webkit-filter: blur(10px);
            filter: blur(10px);
  }
}

@keyframes loading_catch {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    opacity: 0;
    -webkit-filter: blur(10px);
            filter: blur(10px);
  }
  35% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    -webkit-filter: blur(0px);
            filter: blur(0px);
  }
  65% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    -webkit-filter: blur(0px);
            filter: blur(0px);
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    opacity: 0;
    -webkit-filter: blur(10px);
            filter: blur(10px);
  }
}

@-webkit-keyframes loading-smoke-slide--1 {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    background-position: left 20% top 0px;
  }
  25% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  50% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  75% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    background-position: left 20% top -2110px;
  }
}

@keyframes loading-smoke-slide--1 {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    background-position: left 20% top 0px;
  }
  25% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  50% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  75% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    background-position: left 20% top -2110px;
  }
}

@-webkit-keyframes loading-smoke-slide--2 {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left 80% top 1055px;
  }
  25% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  50% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  75% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left 80% top -1055px;
  }
}

@keyframes loading-smoke-slide--2 {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left 80% top 1055px;
  }
  25% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  50% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  75% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left 80% top -1055px;
  }
}

.l-loading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  opacity: 1;
  z-index: 1000;
  background-color: #000;
  width: 100%;
  height: 100%;
}

.is-load .l-loading {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
  -webkit-transition: opacity 1s ease-out 4.5s;
  transition: opacity 1s ease-out 4.5s;
  pointer-events: none;
}

.is-hash-load .l-loading {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
  -webkit-transition: opacity 1s ease-out 0s;
  transition: opacity 1s ease-out 0s;
  pointer-events: none;
}

.l-loading__bg {
  position: absolute;
  top: 0;
  left: 0;
  background: url("../img/bg_smoke_blue.png") repeat-y center top 50%;
  width: 100%;
  height: 100%;
}

.l-loading__bg-smoke {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: loading-smoke-slide--1 24s linear 0.2s infinite;
          animation: loading-smoke-slide--1 24s linear 0.2s infinite;
  background: url("../img/bg_smoke_blue.png") repeat-y center top 50%;
  width: 100%;
  height: 100%;
}

.l-loading__bg-smoke--2 {
  -webkit-animation-name: loading-smoke-slide--2;
          animation-name: loading-smoke-slide--2;
  -webkit-animation-duration: 10s;
          animation-duration: 10s;
}

.l-loading__main {
  position: relative;
  max-width: 1520px;
}

@media screen and (min-width: 751px) {
  .l-loading__main {
    width: 50%;
  }
}

.l-loading__catch {
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  opacity: 0;
}

.is-load .l-loading__catch {
  -webkit-animation: loading_catch 4.5s ease 0.2s forwards;
          animation: loading_catch 4.5s ease 0.2s forwards;
}

.l-loading__catch img {
  -webkit-transform: scale(0.9);
      -ms-transform: scale(0.9);
          transform: scale(0.9);
}

.is-load .l-loading__catch img {
  -webkit-transform: scale(1);
      -ms-transform: scale(1);
          transform: scale(1);
  -webkit-transition: -webkit-transform 4.5s linear 0.2s;
  transition: -webkit-transform 4.5s linear 0.2s;
  transition: transform 4.5s linear 0.2s;
  transition: transform 4.5s linear 0.2s, -webkit-transform 4.5s linear 0.2s;
}

.tieup {
  background-color: #000;
  padding-left: 5vw;
}

@media screen and (min-width: 751px) {
  .tieup {
    padding-left: 131px;
  }
}

.tieup::before, .tieup::after {
  display: block;
  background: url(../img/footer/bg_bnr.jpg) repeat left top 2px;
  background-size: 12px;
  height: 18px;
  content: "";
}

@media screen and (min-width: 751px) {
  .tieup::before, .tieup::after {
    background-size: 21px;
    height: 25px;
  }
}

.tieup_banner {
  margin: 0 auto;
  padding: 25px 0 25px;
  width: 70%;
  max-width: 804px;
}

@media screen and (min-width: 751px) {
  .tieup_banner {
    padding: 31px 0 31px;
  }
}

.tieup_list {
  font-size: 0;
  letter-spacing: -.4em;
}

@media screen and (max-width: 750px) {
  .tieup_list {
    white-space: nowrap;
  }
}

@media screen and (min-width: 751px) {
  .tieup_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}

.tieup_item {
  display: inline-block;
}

@media screen and (min-width: 751px) {
  .tieup_item {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
    -webkit-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
    margin-right: 3%;
    width: 31.1%;
    max-width: 250px;
  }
}

@media screen and (min-width: 751px) and (min-width: 751px) {
  .tieup_item:hover {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=65)";
    opacity: 0.65;
  }
}

@media screen and (min-width: 751px) {
  .tieup_item:nth-child(3n) {
    margin-right: 0;
  }
  .tieup_item:last-child {
    margin-right: 0;
  }
  .tieup_item:nth-child(n+4) {
    margin-top: 3%;
  }
}

@-webkit-keyframes bg-smoke-slide--1 {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left 0px top 0px;
  }
  25% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  50% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  75% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left -1410px top  0px;
  }
}

@keyframes bg-smoke-slide--1 {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left 0px top 0px;
  }
  25% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  50% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  75% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left -1410px top  0px;
  }
}

@-webkit-keyframes bg-smoke-slide--2 {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left 705px top 500px;
  }
  25% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  50% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  75% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left -705px top  500px;
  }
}

@keyframes bg-smoke-slide--2 {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left 705px top 500px;
  }
  25% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  50% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  75% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left -705px top  500px;
  }
}

@-webkit-keyframes bg-smoke-slide-sp--1 {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left 0px top 0px;
  }
  25% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  50% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  75% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left -700px top  0px;
  }
}

@keyframes bg-smoke-slide-sp--1 {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left 0px top 0px;
  }
  25% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  50% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  75% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left -700px top  0px;
  }
}

@-webkit-keyframes bg-smoke-slide-sp--2 {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left 350px top 200px;
  }
  25% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  50% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  75% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left -350px top  200px;
  }
}

@keyframes bg-smoke-slide-sp--2 {
  0% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left 350px top 200px;
  }
  25% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  50% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
  }
  75% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    opacity: 1;
  }
  100% {
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    opacity: 0.8;
    background-position: left -350px top  200px;
  }
}

.bg_smoke--bi, .bg_smoke--red {
  display: none;
}

.bg_smoke {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}

.bg_smoke::before, .bg_smoke::after {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation: bg-smoke-slide--1 60s linear 0.2s infinite;
          animation: bg-smoke-slide--1 60s linear 0.2s infinite;
  background: url("../img/bg_smoke_blue.png") repeat center top 50%;
  background-size: 1410px auto;
  width: 100%;
  height: 100%;
  content: "";
}

@media screen and (max-width: 750px) {
  .bg_smoke::before, .bg_smoke::after {
    -webkit-animation-name: bg-smoke-slide-sp--1;
            animation-name: bg-smoke-slide-sp--1;
    background-image: url(../img/bg_smoke_blue_sp.png);
    background-size: 700px auto;
  }
}

.bg_smoke::after {
  -webkit-animation-name: bg-smoke-slide--2;
          animation-name: bg-smoke-slide--2;
  -webkit-animation-duration: 48s;
          animation-duration: 48s;
}

@media screen and (max-width: 750px) {
  .bg_smoke::after {
    -webkit-animation-name: bg-smoke-slide-sp--2;
            animation-name: bg-smoke-slide-sp--2;
  }
}

.bg_smoke--red::before, .bg_smoke--red::after {
  background-image: url(../img/bg_smoke_red.png);
}

@media screen and (max-width: 750px) {
  .bg_smoke--red::before, .bg_smoke--red::after {
    background-image: url(../img/bg_smoke_red_sp.png);
  }
}

.bg_smoke--bi::before {
  background-image: url(../img/bg_smoke_red.png);
}

@media screen and (max-width: 750px) {
  .bg_smoke--bi::before {
    background-image: url(../img/bg_smoke_red_sp.png);
  }
}


.floattext { display: block; opacity: 1; }
.floattext .fl_contents { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%); line-height: 1.8; text-align: center; }
.floattext .fl_contents a { color: #FFF; text-decoration: underline; }
@media only screen and (min-width: 751px) { .floattext .close { top: 60px; }
  .floattext .fl_contents { width: 720px; }
  .floattext .fl_contents .img { margin-bottom: 20px; }
  .floattext .fl_contents .text a { font-size: 18px; } }
@media only screen and (max-width: 750px) { .floattext .fl_contents { width: 90vw; }
  .floattext .fl_contents .img { margin-bottom: 4vw; }
  .floattext .fl_contents .text a { font-size: 1.1rem; } }
  
  
.floatimage{
	background: url("../img/tanabata2021/bg.jpg") no-repeat center;
	-webkit-background-size: cover;
	     -o-background-size: cover;
	        background-size: cover;
}
@media only screen and (min-width: 751px) {
	.floatimage .float_img p{
		width: 320px;
		margin: auto;
	}
}

@media only screen and (max-width: 750px) {
	.floatimage .float_img p{
		width: 48vw;
		margin: auto;
	}
}