@charset "UTF-8";
/*reset*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }

q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none; }

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

html {
  font-size: 15px;
  font-weight: bold;
  line-height: 2;
  letter-spacing: 0.025em; }

body {
  font-family: "HelveticaNeue-Bold", "Helvetica Neue Bold", "Helvetica Neue", Helvetica, Verdana, Arial, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ',Meiryo, '游ゴシック', 'Yu Gothic', YuGothic, 'ＭＳ Ｐゴシック', sans-serif;
  color: #000;
  background-color: #fff; }
  body * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box; }

a {
  color: inherit;
  text-decoration: none; }

img, iframe {
  max-width: 100%;
  display: block;
  margin: 0 auto; }

body {
  min-width: 680px; }

nav {
  position: fixed;
  z-index: 100;
  top: 30px;
  left: 0;
  width: 100%;
  opacity: 0;
  -webkit-transform: translateY(-10rem);
  -ms-transform: translateY(-10rem);
  transform: translateY(-10rem);
  -webkit-transition: all 0.6s ease-in-out 2s;
  -moz-transition: all 0.6s ease-in-out 2s;
  -o-transition: all 0.6s ease-in-out 2s;
  transition: all 0.6s ease-in-out 2s;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column; }
  nav.move {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0); }
  nav ul {
    width: 680px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0 30px; }
    nav ul li {
      width: 135px;
      margin: 0 10px; }
      nav ul li a {
        display: block; }
        nav ul li a:hover {
          opacity: 1; }

#bg {
  position: relative;
  z-index: -1;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50%;
  background-image: url("../images/top_bg.jpg");
  position: fixed;
  width: 100%;
  height: 100vh;
  opacity: 0;
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  -o-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out; }
  #bg.move {
    opacity: 1; }

#TOP {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
  z-index: 50;
  width: 100%;
  height: 100vh;
  opacity: 0;
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  -o-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out; }
  #TOP.move {
    opacity: 1; }
    #TOP.move .inner {
      opacity: 1; }
      #TOP.move .inner h1 {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0); }
      #TOP.move .inner ul {
        opacity: 1; }
  #TOP .inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    z-index: 1;
    opacity: 0;
    -webkit-transition: all 1s ease-in-out 0.5s;
    -moz-transition: all 1s ease-in-out 0.5s;
    -o-transition: all 1s ease-in-out 0.5s;
    transition: all 1s ease-in-out 0.5s; }
    #TOP .inner a.logo {
      display: block;
      width: 191px;
      position: absolute;
      bottom: 100%;
      left: 50%;
      margin-left: -95.5px; }
    #TOP .inner h1 {
      width: 568px;
      opacity: 0;
      -webkit-transform: translateY(2rem);
      -ms-transform: translateY(2rem);
      transform: translateY(2rem);
      -webkit-transition: all 1s ease-in-out 1.5s;
      -moz-transition: all 1s ease-in-out 1.5s;
      -o-transition: all 1s ease-in-out 1.5s;
      transition: all 1s ease-in-out 1.5s; }
      #TOP .inner h1 a {
        display: block; }
  #TOP .scroll {
    display: block;
    position: absolute;
    z-index: 0;
    height: 50vh;
    bottom: 0;
    left: 0;
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
    #TOP .scroll a {
      width: 175px; }

article {
  width: 860px;
  background-color: #fff;
  margin: 0 auto; }
  article .inner {
    width: 680px;
    margin: 0 auto; }
  article .img {
    opacity: 0;
    -webkit-transform: translateY(2rem);
    -ms-transform: translateY(2rem);
    transform: translateY(2rem);
    -webkit-transition: all 1s ease-in-out;
    -moz-transition: all 1s ease-in-out;
    -o-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out; }
    article .img.move {
      opacity: 1;
      -webkit-transform: translateY(0);
      -ms-transform: translateY(0);
      transform: translateY(0); }
  article #OVERVIEW .inner {
    padding: 100px 40px 40px; }
    article #OVERVIEW .inner .illust {
      margin-bottom: 60px; }
    article #OVERVIEW .inner h2 {
      margin-bottom: 80px; }
  article #MOVIE .inner {
    padding: 120px 40px 40px; }
    article #MOVIE .inner h2 {
      margin-bottom: 80px; }
  article #PHOTO .inner {
    padding: 120px 40px 40px; }
    article #PHOTO .inner h2 {
      margin-bottom: 80px; }
    article #PHOTO .inner ul li {
      margin-top: 80px; }
      article #PHOTO .inner ul li:first-child {
        margin-top: 0; }
  article #INTERVIEW .inner {
    padding: 120px 40px 0px; }
    article #INTERVIEW .inner:last-child {
      padding-bottom: 40px; }
    article #INTERVIEW .inner h2 {
      margin-bottom: 40px; }
    article #INTERVIEW .inner .copy {
      margin-bottom: 60px; }
    article #INTERVIEW .inner > .img {
      margin-bottom: 60px; }
      article #INTERVIEW .inner > .img img {
        width: 280px; }
    article #INTERVIEW .inner .txt p {
      text-indent: 1em; }
    article #INTERVIEW .inner .txt .profile {
      margin-top: 2em; }
    article #INTERVIEW .inner .photo {
      margin-top: 60px; }
  article #ITEM .inner {
    padding: 120px 40px 80px; }
    article #ITEM .inner h2 {
      margin-bottom: 80px; }
    article #ITEM .inner ul li {
      margin-top: 80px; }
      article #ITEM .inner ul li:first-child {
        margin-top: 0; }
      article #ITEM .inner ul li .img {
        margin-bottom: 40px; }
      article #ITEM .inner ul li .name {
        margin-bottom: 22.5px; }
      article #ITEM .inner ul li .data {
        margin-bottom: 32.5px;
        text-align: center;
        font-size: 16px;
        line-height: 1.75; }
      article #ITEM .inner ul li .buy {
        margin-top: 32.5px; }
        article #ITEM .inner ul li .buy a.btn {
          display: block;
          width: 64.5px;
          margin: 0 auto; }

footer {
  text-align: center; }
  footer .copyright {
    width: 600px;
    margin: 0 auto;
    border-top: #000 solid 2px;
    font-size: 14px;
    line-height: 60px; }
    footer .copyright br {
      display: none; }

.no-touch a {
  -webkit-transition: all 0.2s ease-in-out;
  -moz-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out; }
  .no-touch a:hover {
    opacity: 0.6; }
  .no-touch a.btn:hover {
    opacity: 1; }

@media only screen and (max-width: 860px) {
  article {
    width: auto; } }

@media only screen and (max-width: 681px) {
  #bg {
    background-image: url("../images/top_bg_sp.jpg"); }
  .txt {
    font-size: 22px;
    line-height: 2; } }
