@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box; }

*:after {
  display: block;
  clear: both; }

article, aside, figure, footer, header, hgroup, nav, section, main {
  display: block; }

html, body {
  -webkit-text-size-adjust: none;
  width: 100%;
  height: 100%; }

/*---------------------------*/
body {
  /*overflow: hidden;*/ }

body:after {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  -webkit-background-size: 100vw auto;
  background-size: 100vw auto;
  background-image: url(../img/nyain_bg.jpg);
  z-index: -1; }

article {
  /*position: relative;*/
  /*overflow: hidden;*/
  height: 100vh; }

.css-motion {
  /*transition: ease 0.7s;
   -webkit-transition: ease 0.7s;*/ }

/*フッターのレンダリング用*/
.motionDefalt {
  transform: scale(1);
  -webkit-transform: scale(1);
  opacity: 0; }

.motionadd {
  animation: motion 0.7s 1; }

@keyframes motion {
  from {
    transform: scale(4);
    opacity: 0; }
  to {
    transform: scale(1);
    opacity: 1; } }

/*
.motionadd{
   transform: scale(4);
   -webkit-transform: scale(4);
   opacity: 0;
}
.motionadd-first{
   transform: scale(1);
   -webkit-transform: scale(1);
   opacity: 1;
}*/
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  color: #fff;
  z-index: 100; }

.header-inner {
  position: relative; }
  .header-inner .header-antenna {
    position: absolute;
    top: 30px;
    left: 10px; }
  .header-inner .header-time {
    width: 100px;
    margin: auto;
    padding-top: 30px;
    font-size: 20px;
    text-align: center;
    font-family: 'Titillium Web', sans-serif;
    letter-spacing: 1px; }
  .header-inner .header-battery {
    position: absolute;
    top: 31px;
    right: 10px; }

#open {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/open-bg.png) center top;
  background-repeat: no-repeat;
  background-size: 100% auto;
  z-index: 1000;
  -webkit-transition: opacity 900ms ease-out;
  transition: opacity 900ms ease-out;
  overflow: hidden; }
  #open .header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%; }

#open.off {
  opacity: 0; }

#open .header-inner .header-time {
  width: 200px;
  margin-left: -100px;
  font-size: 65px;
  color: #fff;
  position: absolute;
  top: 70px;
  left: 50%;
  text-align: center;
  font-family: 'Titillium Web', sans-serif; }

#open-logo {
  background-image: url(../img/nyain_mark.png);
  background-size: 100%;
  position: absolute;
  top: 70px;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 151px;
  height: 127px; }

.chara-icon-area {
  width: 89vw;
  padding-top: 77px;
  margin: 0 auto;
  position: relative; }
  .chara-icon-area .chara-icon-area-inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    .chara-icon-area .chara-icon-area-inner p {
      width: 25vw;
      margin-bottom: 2.3vh; }
    .chara-icon-area .chara-icon-area-inner p:nth-child(n+4) {
      margin-bottom: 1.4vh; }

@media screen and (min-width: 768px) {
  .chara-icon-area {
    width: 90vw; }
    .chara-icon-area p {
      width: 26vw;
      margin-bottom: 4vw; } }

.chara-icon-area .read {
  position: absolute;
  right: -1.9vw;
  bottom: 8vh;
  width: 31vw; }

.aten {
  font-family: "Mplus 1p";
  position: absolute;
  font-size: 3.4375vw;
  color: #ffffff;
  display: block;
  width: 100%;
  text-align: center;
  /*bottom:-40px;*/
  line-height: 160%; }

@media screen and (max-width: 320px) {
  .aten {
    /*bottom:-30px;*/ } }

@media screen and (orientation: landscape) {
  .aten {
    font-size: 2.4375vw;
    /*bottom:-75px;*/ } }

.chara-icon-area p img,
.chara-icon-area .read img {
  width: 100%; }

footer {
  position: fixed;
  bottom: 0;
  left: 0;
  background: #ff7e00;
  padding: 8px 0 8px;
  width: 100%;
  z-index: 100;
  color: #000; }

.footer-inner {
  max-width: 100%;
  margin: auto; }
  .footer-inner nav ul {
    max-width: 100vh;
    padding: 0 2%;
    margin: auto;
    display: flex;
    flex-direction: row; }
    .footer-inner nav ul li {
      margin: 0 1%; }
    .footer-inner nav ul img {
      width: 100%; }

@media screen and (min-width: 768px) {
  .footer-inner nav ul {
    max-width: 660px; } }

@media screen and (min-width: 1024px) {
  .footer-inner nav ul {
    max-width: 680px; } }

@media screen and (orientation: landscape) {
  article {
    overflow: visible; }
  #open .header-inner .header-time {
    font-size: 25px;
    top: 0px; }
  .chara-icon-area {
    max-width: 66vw;
    margin: 0px auto;
    padding-top: 60px;
    margin-bottom: 26vh; }
    .chara-icon-area p {
      width: 20vw;
      margin-bottom: 4vw; }
    .chara-icon-area .read {
      width: 23vw;
      bottom: 17%;
      right: -3vw; }
  footer {
    position: static; }
  .footer-inner {
    max-width: 400px;
    margin: auto; }
    .footer-inner nav ul {
      max-width: 100vh; } }

@media screen and (orientation: landscape) and (min-width: 768px) {
  .footer-inner {
    max-width: 600px;
    margin: auto; }
  .chara-icon-area {
    width: 90vw; } }

@media screen and (orientation: landscape) and (min-width: 1024px) {
  .footer-inner {
    max-width: 610px; } }

@media screen and (orientation: landscape) {
  .footer-inner .navi {
    display: none; }
  .bx-wrapper .bx-pager,
  .bx-wrapper .bx-controls-auto {
    display: none; } }

/*SNS部分*/
.snsPopup {
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.8);
  position: fixed;
  top: 0;
  left: 0;
  margin: auto;
  -webkit-transition: all 400ms ease-out;
  transition: all 400ms ease-out;
  transform-origin: center center;
  -webkit-transform: scale(1.7);
  transform: scale(1.7);
  opacity: 0;
  z-index: -2; }
  .snsPopup .btn-wrap {
    text-align: center;
    width: 240px;
    margin-left: -120px;
    margin-top: -70px;
    height: 50px;
    position: absolute;
    top: 50%;
    left: 50%;
    transition: all 0.8s ease; }
  .snsPopup img {
    width: 50px;
    margin: 0 10px; }
  .snsPopup a {
    text-decoration: none; }
  .snsPopup .copyright {
    position: absolute;
    font-family: "Mplus 1p";
    color: #363636;
    top: 55%;
    left: 50%;
    width: 300px;
    margin-left: -150px;
    text-align: center;
    font-size: 11px; }

.snsPopup.on {
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1;
  z-index: 200; }

/*
.snsPopup.off{
   animation: snsmotionRemove 0.7s 1;
}*/
/*@keyframes snsmotion {
    from {
      transform: scale(3);
      opacity: 0;
    }
    to {
      transform: scale(1);
      opacity: 1;
    }
}

@keyframes snsmotionRemove {
    from {
      transform: scale(1);
      opacity: 1;
    }
    to {
      transform: scale(3);
      opacity: 0;
    }
}
*/
/*動画部分*/
#moviePopup {
  position: fixed;
  top: 0;
  left: 0;
  /*display: none;*/
  width: 100%;
  height: 100%;
  -webkit-transition: all 400ms ease-out;
  transition: all 400ms ease-out;
  transform-origin: center center;
  -webkit-transform: scale(0.7);
  transform: scale(0.7);
  opacity: 0;
  z-index: -1; }

#moviePopup.on {
  display: block;
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 1;
  z-index: 200; }

.movieBackGround {
  position: relative;
  width: 100%;
  height: 100%;
  font-size: 100px;
  background-size: 100% auto;
  background-image: url(../img/nyain_bg.jpg);
  text-align: center; }

.movieBackGround > div {
  position: relative;
  display: block;
  margin: 0 auto;
  width: 100%;
  height: 100%;
  z-index: 100; }

#close {
  position: absolute;
  font-family: "Mplus 1p";
  right: 1.9vw;
  top: 50px;
  width: 17vw;
  height: 11vw;
  border: none;
  background-color: #383838;
  border-radius: 8px;
  color: #fff;
  font-size: 10vw;
  text-align: center;
  line-height: 100%;
  z-index: 110;
  opacity: 0.7;
  -webkit-transition: all 300ms 600ms ease-in;
  transition: all 300ms 600ms ease-in; }

#close.bg-none {
  background: none;
  color: #000000; }

.movieHidden {
  opacity: 0; }
