﻿@charset "utf-8";

/* -------------------------
  1. common
  2. header
  3. about
  4. loneup
  5. series 
  6. spec 
  7. download 
  8. footer
  
  ---
  ・width: 737px以上（背景込 PCサイズ）
  ・width: 736px以下（背景無 スマホ横以下）
  ・width: 414px以上（背景無 スマホ縦以下）
  ---
  
------------------------- */

/* -------------------------
  1. common
------------------------- */

html {
  min-height: 100%;
}

body {
  background: #1a1a1a;
  color: #FFF;
  font: 500 16px/1 "Noto Sans Japanese", "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "MS Pゴシック", "MS PGothic", sans-serif;
  min-height: 100%;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

#wrap {
  width: 720px;
  margin: 0 auto;
}

/* common */

.txt {
  padding: 0 5%;
  width: 90%;
}

.txt p {
  line-height: 1.4 !important;
  text-align: justify;
  margin-bottom: 1em;
}

.txt p:last-child {
  margin-bottom: 0;
}

p.caution {
  font-size: 80%;
  line-height: 1.4;
}

a:hover img {
	opacity: .6;
	-webkit-opacity: .6;
	-moz-opacity: .6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
}

a img {
	-webkit-transition: opacity .2s ease-out;
	-moz-transition: opacity .2s ease-out;
	-ms-transition: opacity .2s ease-out;
	transition: opacity .2s ease-out;
}

span.br {
  display: block;
}

/*****   width: 737px ~   *****/

@media (min-width: 737px) {
  body {
    background: #1a1a1a url(../img/body-bg.jpg) no-repeat center top fixed;
  }
}

/*****   width: ~ 736px   *****/

@media (max-width: 736px) {
  #wrap {
    width: 100%;
  }
}

/*****   width: ~ 414px   *****/

@media (max-width: 414px) {
  #wrap {
    font-size: 80%;
    font-weight: 400;
  }
  
  span.br {
    display: inline-block;
  }
  
}


/* -------------------------
  2. header
------------------------- */

#header {
  width: 100%;
  height: auto;
}

nav {
  background: rgb(80,80,80);
  background: -moz-linear-gradient(top,  rgba(80,80,80,.08) 0%, rgba(255,255,255,.08) 12%, rgba(46,46,46,.08) 100%);
  background: -webkit-linear-gradient(top,  rgba(80,80,80,.08) 0%,rgba(255,255,255,.08) 12%,rgba(46,46,46,.08) 100%);
  background: linear-gradient(to bottom,  rgba(80,80,80,.08) 0%,rgba(255,255,255,.08) 12%,rgba(46,46,46,.08) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#505050', endColorstr='#2e2e2e',GradientType=0 );
}

nav ul {
  display: flex;
  -webkit-display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  justify-content: center;
  -webkit-justify-content: center;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  margin: 0 auto;
  padding: 20px 0;
  width: 100%;
}

nav ul li {
  padding: 0 18px 0 0;
  text-align: center;
}

nav ul li img {
  vertical-align: top;
}

/*****   width: 737px ~   *****/

@media (min-width: 737px) {
  nav ul li {
    background: url(../img/nav-punctuation.png) left center no-repeat;
    padding: 0 0 0 38px;
    margin-left: 18px;
  }
  
  nav ul li:nth-child(1+3n) {
    margin-left: 0;
  }
  
  nav ul li.break {
    background: url(../img/nav-punctuation.png) left center no-repeat, url(../img/nav-punctuation.png) right center no-repeat;
    padding: 0 38px;
  }
}

/*****   width: ~ 736px   *****/

@media (max-width: 736px) {
  header img {
    width: 100%;
    height: auto;
  }

  nav ul {
    display: inherit;
    width: 90%;
    margin: 0 auto;
  }
  
  nav ul li {
    display: table-cell;
    background: url(../img/nav-punctuation.png) left center no-repeat;
    padding: 0 0 0 19px;
    text-align: center;
  }
  
  nav ul li:nth-child(1+3n) {
    margin-left: 0;
  }
  
  nav ul li.break {
    background: url(../img/nav-punctuation.png) left center no-repeat, url(../img/nav-punctuation.png) right center no-repeat;
    padding: 0 19px;
  }

  nav ul li img {
    width: 80%;
  }
}

/*****   width: ~ 414px   *****/

@media (max-width: 414px) {
  nav ul {
    display: inherit;
    width: 96%;
  }
}



/* -------------------------
  3. about
------------------------- */

#about {
  background:url(../img/about-bg.jpg) no-repeat left top;
  padding: 28px 0 0;
}

#about h2 {
  margin: 0 auto 25px;
}

#about-slick-box {
  background: rgba(0,0,0,.7);
  margin: 38px auto 0;
  padding: 38px 0;
}

.about-slick {
  margin: 0 auto;
  width: 582px;
}

.slick-prev,
.slick-next {
  height: 75px;
  width: 31px;
}

.slick-prev {
  left: -48px;
}

.slick-next {
  right: -48px;
}

.slick-prev::before {
  content: url(../img/slider-arrow-left.png);
}

.slick-next::before {
  content: url(../img/slider-arrow-right.png);
}

/*****   width: 737px ~   *****/

@media (min-width: 737px) {
}

/*****   width: ~ 736px   *****/

@media (max-width: 736px) {
  #about h2 img {
    width: 100%;
  }

  .about-slick {
    margin: 0 auto;
    width: 80%;
  }

  .about-slick img {
    width: 100%;
    height: auto;
  }
}

/*****   width: ~ 414px   *****/

@media (max-width: 414px) {
  .about-slick {
    margin: 0 auto;
    width: 70%;
  }
}


/* -------------------------
  4. lineup
------------------------- */

#lineup {
}

#lineup section {
  padding: 28px 0 0;
}

.game-img {
  margin: 27px auto 19px;
  width: 662px;
}

#kito {
  background: url(../img/game-kito-bg.jpg) repeat-y left top;
}

#kito .txt {
  background: rgba(1,10,42,.5);
  padding: 32px 5%;}

#akenai {
  background: url(../img/game-akenai-bg.jpg) repeat-y left top;
}

#akenai .txt {
  background: rgba(112,69,114,.6);
  padding: 32px 5%;
}

#nakiko {
  background: url(../img/game-nakiko-bg.jpg) repeat-y left top;
}

#nakiko .txt {
  background: rgba(0,0,0,.3);
  padding: 32px 5%;
}

/*****   width: 737px ~   *****/

@media (min-width: 737px) {
}

/*****   width: ~ 736px   *****/

@media (max-width: 736px) {
  #lineup h3 img {
    width: 100%;
  }

  .game-img {
    margin: 27px auto 19px;
    width: 90%;
  }

  .game-img img {
    width: 100%;
  }
}

/*****   width: ~ 414px   *****/

@media (max-width: 414px) {
}


/* -------------------------
  5. series
------------------------- */

#series {
  background:url(../img/about-bg.jpg) no-repeat left top;
  padding: 28px 0;
}

#series h2 {
  margin: 0 auto 25px;
}

#series dl {
  text-align: center;
}

#series dl dd + dt {
  margin: 37px 0 0;
}

#series dl dd {
  margin: 12px 0 0;
  line-height: 1.4;
}

/*****   width: 737px ~   *****/

@media (min-width: 737px) {
}

/*****   width: ~ 736px   *****/

@media (max-width: 736px) {
  #series h2 img {
    width: 100%;
  }
  
  #series dl {
    margin: 27px auto 19px;
    width: 70%;
  }
  
  #series dl img {
    width: 100%;
    height: auto;
  }
}

/*****   width: ~ 414px   *****/

@media (max-width: 414px) {
  #series dl {
    width: 90%;
  }
  
}



/* -------------------------
  6. spec
------------------------- */

#spec {
  background: #1a1a1a;
  padding: 38px 0;
}

#spec dl {
  display: flex;
  -webkit-display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  margin: 0 auto;
  width: 490px
}

#spec dl dt ,
#spec dl dd {
  line-height: 2;
  margin-bottom: 5px;
}

#spec dl dt {
  background: #3b3b3b;
  border-radius: 5px 5px;
  text-align: center;
  width: 36%;
}

#spec dl dd {
  width: 62%;
}

#spec p.caution {
  margin-top: 10px;
  text-align: center;
}

/*****   width: 737px ~   *****/

@media (min-width: 737px) {
}

/*****   width: ~ 736px   *****/

@media (max-width: 736px) {
}

/*****   width: ~ 414px   *****/

@media (max-width: 414px) {
  #spec dl {
    width: 90%;
  }
  
  #spec dl dt ,
  #spec dl dd {
    width: 100%;
    text-align: center;
  }
  
  #spec p.caution {
    width: 90%;
    margin: 10px auto 0;
  }
}


/* ------------------------- 
  7. download 
------------------------- */

#download {
  background: #000;
  padding: 20px 0;
}

#download .inr {
  display: flex;
  -webkit-display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  margin: 0 auto;
  width: 544px;
}

#download .inr p {
  width: 108px;
}

#download .inr dl {
  display: flex;
  -webkit-display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  width: 418px;
}

#download .inr dl dt {
  margin: 1px 0 6px;
  text-align: center;
  width: 418px;
}

/*****   width: 737px ~   *****/

@media (min-width: 737px) {
}

/*****   width: ~ 736px   *****/

@media (max-width: 736px) {
}

/*****   width: ~ 414px   *****/

@media (max-width: 414px) {
  #download .inr {
    width: 90%;
  }
  
  #download .inr p {
    margin: 0 auto 10px;
    text-align: center;
  }

  #download .inr p img {
    width: 70%;
    height: auto;
  }
  
  #download .inr dl ,
  #download .inr dl dt ,
  #download .inr dl img {
    width: 100%;
    height: auto;
  }
  
  #download .inr dl dd {
    width: 48%;
  }
}


/* ------------------------- 
  8. footer
------------------------- */

footer {
  background: #1a1a1a;
  padding: 18px 0 18px;
}

footer .sns {
  display: flex;
  -webkit-display: flex;
  flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  justify-content: space-between;
  -webkit-justify-content: space-between;
  align-items: flex-start;
  -webkit-align-items: flex-start;
  margin: 0 auto 19px;
  width: 380px;
}

footer p {
  font-size: 80%;
  text-align: center;
}

/*****   width: 737px ~   *****/

@media (min-width: 737px) {
}

/*****   width: ~ 736px   *****/

@media (max-width: 736px) {
}

/*****   width: ~ 414px   *****/

@media (max-width: 414px) {
  footer .sns {
    width: 80%;
  }
  
  footer .sns li {
    width: 23%;
  }

  footer .sns li img {
    width: 100%;
    height: auto;
  }
}

