.pc-item {
  display: block; }
  @media screen and (max-width: 767px) {
    .pc-item {
      display: none; } }

.sp-item {
  display: none; }
  @media screen and (max-width: 767px) {
    .sp-item {
      display: block; } }

body {
  background: url(img/bg_anime.gif) top center;
  background-size: contain; }
  @media screen and (max-width: 767px) {
    body {
      border-top: none; } }

.ani-set {
  opacity: 0;
  -webkit-animation-duration: 3s;
  -moz-animation-duration: 3s;
  -ms-animation-duration: 3s;
  -o-animation-duration: 3s;
  animation-duration: 3s;
  *position: relative;
  *zoom: 1; }

.ani-delay01 {
  -webkit-animation-delay: 2s;
  -moz-animation-delay: 2s;
  -ms-animation-delay: 2s;
  -o-animation-delay: 2s;
  animation-delay: 2s;
  *position: relative;
  *zoom: 1; }

.ani-delay02 {
  -webkit-animation-delay: 2.5s;
  -moz-animation-delay: 2.5s;
  -ms-animation-delay: 2.5s;
  -o-animation-delay: 2.5s;
  animation-delay: 2.5s;
  *position: relative;
  *zoom: 1; }

.ani-delay03 {
  -webkit-animation-delay: 3s;
  -moz-animation-delay: 3s;
  -ms-animation-delay: 3s;
  -o-animation-delay: 3s;
  animation-delay: 3s;
  *position: relative;
  *zoom: 1; }

.ani-delay04 {
  -webkit-animation-delay: 3.5s;
  -moz-animation-delay: 3.5s;
  -ms-animation-delay: 3.5s;
  -o-animation-delay: 3.5s;
  animation-delay: 3.5s;
  *position: relative;
  *zoom: 1; }

.ani-delay05 {
  -webkit-animation-delay: 4s;
  -moz-animation-delay: 4s;
  -ms-animation-delay: 4s;
  -o-animation-delay: 4s;
  animation-delay: 4s;
  *position: relative;
  *zoom: 1; }

#bg {
  opacity: 1;
  overflow: hidden;
  position: absolute;
  z-index: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  min-width: 1000px; }
  #bg img {
    max-width: none;
    width: 100%;
    -webkit-animation: ani-bg 2s cubic-bezier(0.845, 0.005, 0.07, 1);
    -moz-animation: ani-bg 2s cubic-bezier(0.845, 0.005, 0.07, 1);
    -ms-animation: ani-bg 2s cubic-bezier(0.845, 0.005, 0.07, 1);
    -o-animation: ani-bg 2s cubic-bezier(0.845, 0.005, 0.07, 1);
    animation: ani-bg 2s cubic-bezier(0.845, 0.005, 0.07, 1);
    *position: relative;
    *zoom: 1; }
  @media screen and (max-width: 767px) {
    #bg {
      min-width: 0; } }

@keyframes ani-bg {
  from {
    opacity: 0;
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
    *position: relative;
    *zoom: 1; }
  to {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    *position: relative;
    *zoom: 1; } }
#hero {
  position: relative;
  z-index: 2;
  padding-top: 60%;
  margin: 0 auto;
  max-width: 1400px;
  min-width: 1000px; }
  #hero h1 {
    width: 50.234375%;
    position: absolute;
    padding-top: 4.5%;
    top: 0;
    left: 7%; }
  #hero h2 {
    width: 34.609375%;
    position: absolute;
    padding-top: 12.5%;
    top: 0;
    right: 7%; }
  @media screen and (max-width: 767px) {
    #hero {
      min-width: 0;
      padding-top: 0; }
      #hero h1 {
        margin: 3% 10%;
        width: 80%;
        position: relative;
        top: auto;
        left: auto; }
      #hero h2 {
        margin: 3% 10%;
        width: 80%;
        position: relative;
        top: auto;
        right: auto; } }

#intro {
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  width: 1000px;
  margin: 0 auto;
  text-align: center;
  background: rgba(255, 255, 255, 0.5);
  padding: 100px; }
  #intro p {
    font-size: 138.4615384615%;
    margin-top: 50px;
    line-height: 2; }
    @media screen and (max-width: 767px) {
      #intro p {
        font-size: 20px; } }
  @media screen and (max-width: 767px) {
    #intro {
      margin: 15% 5%;
      width: 90%;
      padding: 10% 5%; }
      #intro p {
        margin-top: 10%;
        font-size: 107.6923076923%; } }
    @media screen and (max-width: 767px) and (max-width: 767px) {
      #intro p {
        font-size: 16px; } }

#nav {
  width: 900px;
  margin: 160px auto 60px; }
  #nav p {
    margin-bottom: 24px; }
  @media screen and (max-width: 767px) {
    #nav {
      width: 90%;
      margin: 80px 5% 0; } }

#btn {
  width: 900px;
  margin: 40px auto 130px; }
  #btn li {
    margin-right: 53px; }
    #btn li:last-child {
      margin-right: 0; }
  @media screen and (max-width: 767px) {
    #btn {
      margin: 15px 5% 60px;
      width: 90%; }
      #btn li {
        width: 24%;
        margin-right: 1%; }
        #btn li:nth-child(4n) {
          margin-right: 0; } }

#copyright {
  width: 1000px;
  margin: 0 auto;
  padding-bottom: 100px;
  text-align: center; }
  #copyright p {
    font-size: 138.4615384615%;
    margin-top: 50px; }
    @media screen and (max-width: 767px) {
      #copyright p {
        font-size: 20px; } }
    #copyright p span img {
      margin: 0 auto;
      display: block;
      padding-bottom: 10px;
      margin-bottom: 10px;
      border-bottom: 1px dotted #ccc; }
  @media screen and (max-width: 767px) {
    #copyright {
      margin: 15% 5% 0;
      padding-bottom: 5%;
      width: 90%;
      font-size: 123.0769230769%; } }
  @media screen and (max-width: 767px) and (max-width: 767px) {
    #copyright {
      font-size: 18px; } }
