/* ==========================================================
  shared.css
  display: common
========================================================== */
@import url("/css/gdpr.css");

@font-face {
  font-family: 'NotoSansCJKjp';
  font-style: normal;
  font-weight: 400;
  src: url("../../../font/NotoSansCJKjp-Regular.woff") format("woff"), url("../../../font/NotoSansCJKjp-Regular.ttf") format("truetype");
  /* Safari, Android, iOS */
}

@font-face {
  font-family: 'NotoSerifCJKjp';
  font-style: bold;
  font-weight: 700;
  src: url("../../../font/NotoSerifCJKjp-Bold.woff") format("woff"), url("../../../font/NotoSerifCJKjp-Bold.ttf") format("truetype");
  /* Safari, Android, iOS */
}
@font-face {
  font-family: 'NotoSerifCJKjp';
  font-style: normal;
  font-weight: 400;
  src: url("../../../font/NotoSerifCJKjp-Regular.woff") format("woff"), url("../../../font/NotoSerifCJKjp-Regular.ttf") format("truetype");
  /* Safari, Android, iOS */
}

body {
  color: #fff;
  font-family: 'NotoSansCJKjp';
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.1rem;
  vertical-align: baseline;
}

@media all and (-ms-high-contrast: none) {
  body {
    transform: rotate(0.001deg);
  }
}

/* ==========================================================
  display: PC
========================================================== */

@media screen and (min-width: 768px) {
  /* ====================
    @BASE
  ===================== */
  body {
    background: #000;
  }
  #wrap {
    background: url("../images/bg_page.jpg") center top no-repeat;
    background-attachment: fixed;
    background-size: cover;
    width: 100%;
    min-width: 768px;
    height: inherit;
    color: #fff;
    font-size: 16px;
    overflow: hidden;
    position: relative;
  }
  #wrap img {
    width: 100%;
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
  }
  a {
    color: #fff;
    outline: none;
  }
  a:hover {
    color: #cfee1d;
  }
  *[class^="sp"],
  *[id^="sp"] {
    display: none !important;
  }

  /* ====================
    @HEADER
  ===================== */
  header {
    height: 260px;
  }
  header h1 {
    width: 350px;
    padding: 50px 0;
    margin: 0 auto;
  }

  /* ====================
    @COMMON
  ===================== */
  section {
    width: 100%;
    max-width: 1000px;
/*    min-width: 768px;*/
    padding: 0 0 50px;
    margin: 0 auto;
  }

  /* BACKGROUND
  ------------------ */
  .bg-dark {
    background: url("../images/bg_dark.jpg") repeat center 0; }

  .bg-brown {
    background: url("../images/bg_brown.jpg") repeat center 0; }

  /* HEADING
  ------------------ */
  .bg-h2 {
    background: url("../images/bg_h2_repeat.jpg") repeat-y center 0;
    background-size: 100% auto;
    background-color: #130d0c;
    max-width: 1000px;
  }
  .bg-h2 h2 {
    background: url("../images/bg_h2_top.jpg") no-repeat center 0, url("../images/bg_h2_bottom.jpg") no-repeat center bottom;
    background-size: contain;
    font-size: 34px;
    line-height: 1.35;
    font-weight: 700;
    letter-spacing: -0.10rem;
    text-align: center;
    padding: 40px 50px 40px;
  }
  .bg-h2 h2 span {
    color: #cfee1d;
  }
  h3 {
    background: url("../images/bg_dark.jpg") repeat;
    text-align: center;
    padding: 10px 40px;
  }
  h3 span {
    font-size: 24px;
  }

  /* CONTENTS
  ------------------ */
  #contents {
    background: url("../images/bg_lightbrown.jpg") repeat;
    padding: 40px 40px 50px;
  }
  #contents .inner {
    padding: 0 40px;
  }
  #contents .read {
    font-size: 18px;
    line-height: 1.8;
    font-weight: bold;
    text-align: center;
  }
  #contents .text {
    font-size: 14px;
    line-height: 1.7;
  }
  #contents .attention {
    font-size: 12px;
    color: #cccccc;
    line-height: 1.8;
  }
  #contents .copyright {
    font-size: 12px;
    color: #cccccc;
    text-align: center;
  }
  #contents .comment {
    font-size: 20px;
    color: #cfee1d;
    text-align: center;
  }
  /* LIST
  ------------------ */
  /* column2 */
  .list-column2 {
    width: 100%;
  }
  .list-column2 li {
    float: left;
    margin: 0 0 2%;
  }
  .list-column2 li.ss {
    width: 48.5%;
  }
  .list-column2 li:nth-child(even) {
    margin-left: 3%;
  }

  /* column3 */
  .list-column3 {
    width: 100%;
  }
  .list-column3 li {
    float: left;
  }
  .list-column3 li.ss {
    width: 32%;
  }
  .list-column3 li:not(:nth-child(3n)){
    margin-right: 2%;
  }

  /* ====================
    @FOOTER
  ===================== */
  .offisial-footer {
    background-color: #000;
    border-bottom: 1px solid #474747;
    padding: 24px 0 22px;
  }
  .offisial-footer ul{
    text-align: center;
    font-size: 0;
  }
  .offisial-footer ul li {
    font-size: 16px;
    display: inline-block;
    vertical-align: middle;
  }
  .offisial-footer ul li:nth-child(even) {
    margin-left: 30px;
  }
}

/* ==========================================================
  display: SP
========================================================== */

@media screen and (max-width: 767px) {
  /* ====================
    @BASE
  ===================== */
  body {
    background: #000;
  }
  #wrap {
    width: 100%;
    height: inherit;
    color: #fff;
    font-size: 14px;
    padding: 0 2%;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
  }
  #wrap img {
    width: 100%;
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
  }
  #sp-bg {
    background: url("../images/bg_page_sp.jpg") center top no-repeat;
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
  }
  a {
    color: #fff;
    outline: none;
  }
  *[class^="pc"],
  *[id^="pc"] {
    display: none !important;
  }

  /* ====================
    @HEADER
  ===================== */
  header {
    padding: 5% 0;
  }
  header h1 {
    width: 35%;
    margin: 0 auto;
  }

  /* ====================
    @COMMON
  ===================== */
  section {
    width: 100%;
    padding: 0 0 10%;
    margin: 0 auto;
  }

  /* BACKGROUND
  ------------------ */
  .bg-dark {
    background: url("../images/bg_dark.jpg") repeat center 0; }

  .bg-brown {
    background: url("../images/bg_brown.jpg") repeat center 0; }

  /* HEADING
  ------------------ */
  .bg-h2 {
    background: url("../images/bg_h2_repeat_sp.jpg") repeat-y center 0;
    background-size: 100% auto;
    background-color: #130d0c;
  }
  .bg-h2 h2 {
    background: url("../images/bg_h2_top_sp.jpg") no-repeat center 0,
    url("../images/bg_h2_bottom_sp.jpg") no-repeat center bottom;
    background-size: contain;
    font-size: 24px;
    line-height: 1.3;
    font-weight: 700;
    letter-spacing: -0.10rem;
    text-align: center;
    padding: 4% 4.5%;
  }
  .bg-h2 h2 span {
    color: #cfee1d;
  }
  h3 {
    background: url("../images/bg_dark.jpg") repeat;
    text-align: center;
    padding: 2% 30px;
  }
  h3 span {
    font-size: 20px;
  }

  /* CONTENTS
  ------------------ */
  #contents {
    background: url("../images/bg_lightbrown.jpg") repeat;
    padding: 6.5% 2.5%;
  }
  #contents .inner {
    padding: 0 2.5%;
  }
  #contents .read {
    font-size: 16px;
    line-height: 1.6;
  }
  #contents .text {
    font-size: 16px;
    line-height: 1.6;
  }
  #contents .attention {
    font-size: 12px;
    color: #cccccc;
  }
  #contents .attention p {
    margin: 0 0 5px;
  }
  #contents .copyright {
    font-size: 12px;
    color: #cccccc;
    text-align: center;
  }
  #contents .comment {
    font-size: 16px;
    color: #cfee1d;
    text-align: center;
  }

  /* LIST
  ------------------ */
  /* column */
  ul[class^="list-column"] li:not(:first-child) {
    margin-top: 3%;
  }

  /* ====================
    @FOOTER
  ===================== */
  .offisial-footer {
    background-color: #000;
    border-bottom: 1px solid #474747;
    padding: 6% 0 7%;
  }
  .offisial-footer ul{
    width: 100%;
    padding: 0 8%;
    text-align: center;
    font-size: 0;
    box-sizing: border-box;
  }
  .offisial-footer ul li {
    font-size: 16px;
    display: table-cell;
    vertical-align: middle;
  }
  .offisial-footer ul li img {
    width: 100%;
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
  }
  .offisial-footer ul li:first-child {
    text-align: left;
    width: 55%;
  }
  .offisial-footer ul li:last-child {
    width: 40%;
    padding-left: 5%;
  }
}
@media screen and (max-width: 375px) {
  .offisial-footer ul li {
    font-size: 15px;
  }
}
@media screen and (max-width: 320px) {
  .offisial-footer ul li {
    font-size: 13px;
  }
}