@charset "UTF-8";
/*
====================================================
■ BASE
====================================================
*/
/*
===== reset ===========================
*/
* {
  margin: 0;
  padding: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

fieldset,
img {
  border: 0; }

img {
  vertical-align: top; }

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
  font-style: normal;
  font-weight: normal; }

ol,
ul {
  list-style: none; }

caption,
th {
  text-align: left; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal; }

q:before,
q:after {
  content: ''; }

abbr,
acronym {
  border: 0; }

iframe {
  border: none; }

input:focus {
  outline: none; }

/*
===== base ===========================
*/
/* base.css, part of YUI's CSS Foundation */
h1 {
  /*18px via YUI Fonts CSS foundation*/
  font-size: 138.5%; }

h2 {
  /*16px via YUI Fonts CSS foundation*/
  font-size: 123.1%; }

h3 {
  /*14px via YUI Fonts CSS foundation*/
  font-size: 108%; }

h1,
h2,
h3 {
  /* top & bottom margin based on font size */
  margin: 0 0; }

h1,
h2,
h3,
h4,
h5,
h6,
strong {
  /*bringing boldness back to headers and the strong element*/
  font-weight: bold; }

abbr,
acronym {
  /*indicating to users that more info is available */
  border-bottom: 1px dotted #000;
  cursor: help; }

em {
  /*bringing italics back to the em element*/
  font-style: italic; }

blockquote,
ul,
ol,
dl {
  /*giving blockquotes and lists room to breath*/
  margin: 0; }

ol,
ul,
dl {
  /*bringing lists on to the page with breathing room */
  margin: 0; }

ol li {
  /*giving OL's LIs generated numbers*/
  list-style: none; }

ul li {
  /*giving UL's LIs generated disc markers*/
  list-style: none; }

dl dd {
  /*giving UL's LIs generated numbers*/
  margin: 0; }

th,
td {
  /*borders and padding to make the table readable*/
  padding: 0; }

th {
  /*distinguishing table headers from data cells*/
  font-weight: bold;
  text-align: center; }

caption {
  /*coordinated marking to match cell's padding*/
  margin-bottom: .5em;
  /*centered so it doesn't blend in to other content*/
  text-align: center; }

p,
fieldset,
table {
  /*so things don't run into each other*/
  margin: 0; }

/* =============================================================================
   HTML5 display definitions
   ========================================================================== */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block; }

audio,
canvas,
video {
  display: inline-block;
  *display: inline;
  *zoom: 1; }

audio:not([controls]) {
  display: none; }

[hidden] {
  display: none; }

/*
===== link setting ===========================
*/
a {
  color: #FF1932;
  text-decoration: underline; }

a:visited {
  color: #C7162B; }

a:hover {
  color: #C7162B;
  text-decoration: none; }

a:active {
  color: #FF1932; }

/* FireFox リンク選択時の点線を消す */
a:link,
a:visited,
a:active,
a:hover {
  overflow: hidden;
  outline: none; }

::-moz-selection {
  background: #fd2155;
  /* Safari */ }

::selection {
  background: #fd2155;
  /* Safari */ }

::-moz-selection {
  background: #fd2155;
  /* Firefox */ }

body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 500;
  color: #fff;
  background-color: #000; }

a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  text-decoration: none; }
  a:link,
  a:visited,
  a:hover {
    text-decoration: none; }

html, body {
  width: 100%;
  word-break: break-all;
  overflow-x: hidden; }

*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.clearfix:after {
  content: " ";
  display: block;
  clear: both; }

.slide-list{
  opacity: 0;
  transition: opacity .3s linear;
}
.slide-list.slick-initialized{
  opacity: 1;
}

.mv {
  margin-bottom: 45px; }
  .mv ul.slide-list {
    overflow-x: hidden;
  }
  .mv ul.pager {
    padding-top: 19px;
    text-align: center; }
    .mv ul.pager li {
      display: inline-block;
      margin: 0 6px; }
      .mv ul.pager li button {
        display: block;
        text-indent: -9999px;
        width: 15px;
        height: 15px;
        background-color: #4d4d4d;

        border-radius: 50%;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%; 
      }
      .mv ul.pager li.slick-active button {
        background-color: #fff; }

.info {
  margin-bottom: 80px; }
  .info a {text-decoration: underline;}
  .info ul {
    width: 712px;
    height: 62px;
    background: url(../images/bg-info.png);
    margin: 0 auto; }
    .info ul li {
      padding-left: 32px; }
      .info ul li span {
        font-size: 24px;
        line-height: 62px; }

.list {
  padding-bottom: 1px;
  background: url(../images/bg-list.jpg) center bottom no-repeat;
  background-size: 100% 100%;
  margin-bottom: 95px; }
  .list .title {
    text-align: center;
    height: 116px;
    padding-top: 38px;
    background: url(../images/bg-list.jpg) center top no-repeat; }
  .list ul {
    width: 730px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 auto; }
    .list ul li {
      width: 360px;
      height: 360px;
      margin-bottom: 10px;
      background-color: rgba(0, 0, 0, 0.5); }
  .list .single {
    text-align: center;
    margin-bottom: 10px; }

.about {
  width: 710px;
  height: 462px;
  padding-top: 48px;
  background: url(../images/bg-about.jpg);
  margin: 0 auto 68px; }
  .about .wrap {
    overflow: hidden;
    width: 642px;
    margin: 0 auto 53px; }
    .about .wrap .pct {
      float: left;
      margin-right: 18px; }
    .about .wrap .title {
      padding-top: 8px;
      margin-bottom: 30px; }
    .about .wrap p {
      font-size: 26px;
      line-height: 48px;
      padding-left: 8px; }
  .about .btn {
    text-align: center; }

#footer .customShareBtn {
  text-align: center;
  margin-bottom: 85px; }

@media screen and (min-width: 751px) {
  a img {
    transition: opacity 0.3s ease-out; }
  a:hover img {
    opacity: 0.5; }
  #Container {
    width: 750px;
    margin: 0 auto; }
  .snsButtons {
    position: relative;
    width: 335px;
    height: 65px;
    margin: 0 auto; }
    .snsButtons .tw {
      position: absolute;
      top: 0px;
      left: 0px; }
    .snsButtons .fb {
      position: absolute;
      top: 0px;
      left: 100px; }
    .snsButtons .hatena {
      position: absolute;
      top: 0px;
      left: 196px; }
    .snsButtons .line {
      position: absolute;
      top: 0px;
      left: 300px; } }

@media screen and (max-width: 750px) {
  a img {
    transition: opacity 0.3s ease-out; }
  a:active img {
    opacity: 0.5; }
  #Container,
  .footer {
    zoom: 0.5; }
  .snsButtons {
    position: relative;
    width: 670px;
    height: 150px;
    margin: 0 auto; }
    .snsButtons .tw,
    .snsButtons .fb,
    .snsButtons .hatena,
    .snsButtons .line {
      zoom: 2;
      transform: scale(1.16); }
    .snsButtons .tw {
      position: absolute;
      top: 0px;
      left: 0px; }
    .snsButtons .fb {
      position: absolute;
      top: 0px;
      left: 99px; }
    .snsButtons .hatena {
      position: absolute;
      top: 0px;
      left: 196px; }
    .snsButtons .line {
      position: absolute;
      top: 0px;
      left: 300px; } }
