@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Coda:800&display=swap");
img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

body {
  margin: 0 auto;
  padding: 0;
  position: relative;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI","Noto Sans Japanese","ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
  position: relative;
  background: #000;
  background-repeat: repeat;
  background-position: top; }
  @media only screen and (max-width: 767px) {
    body {
      background-image: url("../img/bg_sp.png"); } }
  @media only screen and (min-width: 768px) {
    body {
      background-image: url("../img/bg_pc.png"); } }

.cco_link {
  position: absolute;
  z-index: 55; }
  @media only screen and (max-width: 767px) {
    .cco_link {
      display: none;
      top: 2.5%;
      right: 0; }
      .cco_link img {
        width: 80%; } }
  @media only screen and (min-width: 768px) {
    .cco_link {
      top: 2.5%;
      left: 2.3%; } }
  .cco_link:hover {
    opacity: 0.8; }

h1 {
  font-size: 1.25rem;
  background: #333;
  color: #fff;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    h1 {
      margin: 20px 0 30px 0;
      padding: 11px 10px 9px; } }
  @media only screen and (min-width: 768px) {
    h1 {
      margin: 10px 0 30px 0;
      padding: 11px 0 9px 10px; } }

.head {
  background: #d14b26;
  width: 100%;
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 56%, 0 32%);
  clip-path: polygon(0 0, 100% 0, 100% 46%, 0 32%); }
  @media only screen and (max-width: 767px) {
    .head {
      height: 400px; } }
  @media only screen and (min-width: 768px) {
    .head {
      height: 490px; } }

.sns {
  position: absolute;
  top: 38px; }
  @media only screen and (max-width: 767px) {
    .sns {
      left: 30px; } }
  @media only screen and (min-width: 768px) {
    .sns {
      right: 220px; } }
  .sns .inner {
    background: #000;
    padding: 11px 12px 5px;
    border-radius: 3px;
    display: flex;
    box-sizing: border-box;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.5); }
    .sns .inner .text {
      font-size: 15px;
      border-right: #fff solid 2px;
      padding-right: 11px;
      margin-right: 13px;
      color: #fff; }
      .sns .inner .text span {
        line-height: 22px; }
    .sns .inner .icon {
      display: flex; }
      .sns .inner .icon .item {
        margin-right: 12px; }
        .sns .inner .icon .item:last-child {
          margin-right: 0; }
        @media only screen and (max-width: 767px) {
          .sns .inner .icon .item img {
            width: 23px;
            height: auto; } }
        @media only screen and (min-width: 768px) {
          .sns .inner .icon .item img {
            width: 23px;
            height: auto; } }
        .sns .inner .icon .item:hover {
          opacity: 0.8; }

.language {
  position: absolute;
  top: 38px; }
  @media only screen and (max-width: 767px) {
    .language {
      right: 14px; } }
  @media only screen and (min-width: 768px) {
    .language {
      right: 20px; } }
  .language .inner {
    background: #000;
    padding: 13px 12px 7px;
    border-radius: 3px;
    display: flex;
    box-sizing: border-box;
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.5); }
    .language .inner .text {
      font-size: 15px;
      border-right: #fff solid 2px;
      padding-right: 10px;
      margin-right: 10px;
      color: #fff; }
    .language .inner .icon {
      display: flex; }
      .language .inner .icon .item {
        margin-right: 10px; }
        .language .inner .icon .item:last-child {
          margin-right: 0; }
        @media only screen and (max-width: 767px) {
          .language .inner .icon .item img {
            width: 30px;
            height: auto; } }
        @media only screen and (min-width: 768px) {
          .language .inner .icon .item img {
            width: 30px;
            height: auto; } }
        .language .inner .icon .item a {
          text-decoration: none;
          color: #fff;
          cursor: pointer; }
          .language .inner .icon .item a:hover {
            color: #dc5431; }

.hero_bg {
  position: relative;
  z-index: 99;
  background-position: top center;
  background-size: cover;
  width: 100%; }
  @media only screen and (max-width: 767px) {
    .hero_bg {
      height: 520px;
      margin-top: -385px;
      margin-bottom: -440px; } }
  @media only screen and (min-width: 768px) {
    .hero_bg {
      height: 754px;
      margin-top: -510px;
      margin-bottom: -65px; } }

.hero {
  position: relative;
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .hero {
      margin: 60px auto 0;
      padding: 0 15px; } }
  @media only screen and (min-width: 768px) {
    .hero {
      margin: 100px auto 0; } }
  .hero img {
    box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.9); }
    @media only screen and (max-width: 767px) {
      .hero img {
        width: 345px;
        height: auto; } }
    @media only screen and (min-width: 768px) {
      .hero img {
        width: 800px;
        height: auto; } }

.intro {
  background: #1F101C;
  margin: 0 auto;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.9);
  box-sizing: border-box; }
  @media only screen and (max-width: 767px) {
    .intro {
      max-width: 345px;
      padding: 30px 20px; } }
  @media only screen and (min-width: 768px) {
    .intro {
      max-width: 800px;
      padding: 30px 20px; } }
  .intro .text {
    text-align: center;
    font-weight: bold;
    margin: 0 0 20px;
    padding: 0;
    color: #DE5328;
    text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.9); }
    @media only screen and (max-width: 767px) {
      .intro .text {
        font-size: 1.5rem; } }
    @media only screen and (min-width: 768px) {
      .intro .text {
        font-size: 2.0rem; } }
  .intro h2 {
    text-align: center;
    margin: 0;
    padding: 0;
    color: #DE5328;
    text-shadow: 0px 0px 8px rgba(0, 0, 0, 0.9); }
    @media only screen and (max-width: 767px) {
      .intro h2 {
        font-size: 1.2rem; } }
    @media only screen and (min-width: 768px) {
      .intro h2 {
        font-size: 1.5rem; } }
  .intro .info {
    color: #DE5328;
    text-align: center;
    text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.9);
    border: #DE5328 solid 1px;
    box-sizing: border-box; }
    @media only screen and (max-width: 767px) {
      .intro .info {
        max-width: 280px;
        padding: 15px 0;
        margin: 10px auto 0; } }
    @media only screen and (min-width: 768px) {
      .intro .info {
        max-width: 350px;
        padding: 15px 0;
        margin: 10px auto 0; } }
  .intro .pic {
    text-align: center;
    margin: 0 0 30px; }

.sale_container {
  display: block;
  width: 100%;
  overflow: hidden;
  padding-top: 150px;
  position: relative;
  z-index: 88; }

.sale {
  background: #be201d; }
  @media only screen and (max-width: 767px) {
    .sale {
      -webkit-clip-path: polygon(0 30%, 100% 0, 100% 100%, 0 91%);
      clip-path: polygon(0 20%, 100% 0, 100% 100%, 0 91%); } }
  @media only screen and (min-width: 768px) {
    .sale {
      -webkit-clip-path: polygon(0 33%, 100% 0, 100% 100%, 0 91%);
      clip-path: polygon(0 33%, 100% 0, 100% 100%, 0 91%); } }
  @media only screen and (max-width: 767px) {
    .sale .sale_inner {
      padding: 280px 0 106px; } }
  @media only screen and (min-width: 768px) {
    .sale .sale_inner {
      padding: 320px 0 100px; } }
  .sale .wrap {
    box-sizing: border-box;
    background-repeat: repeat;
    color: #fff; }
    @media only screen and (max-width: 767px) {
      .sale .wrap {
        margin: 0 auto;
        padding: 30px 15px;
        max-width: 345px; } }
    @media only screen and (min-width: 768px) {
      .sale .wrap {
        max-width: 800px;
        margin: 0 auto;
        padding: 45px 35px; } }
  .sale .box {
    margin: 0 auto 20px;
    font-size: 16px;
    text-align: center; }
    .sale .box:last-child {
      margin: 0 auto; }
    .sale .box h3 {
      padding: 0; }
      @media only screen and (max-width: 767px) {
        .sale .box h3 {
          font-size: 19px;
          margin: 0 0 10px; } }
      @media only screen and (min-width: 768px) {
        .sale .box h3 {
          font-size: 28px;
          margin: 0 0 15px; } }
    .sale .box ol {
      margin: 0 0 10px 20px;
      padding: 0;
      text-align: left; }
    .sale .box p {
      margin: 0;
      padding: 0; }
    .sale .box a {
      color: #DE5328; }
  .sale .text {
    font-family: 'ヒラギノ角ゴ StdN','Hiragino Kaku Gothic StdN',sans-serif;
    text-align: center;
    font-weight: bold; }
    @media only screen and (max-width: 767px) {
      .sale .text {
        font-size: 1.3rem;
        line-height: 38px; } }
    @media only screen and (min-width: 768px) {
      .sale .text {
        font-size: 2.8rem;
        margin: 0 0 35px; } }
  .sale .prod_detail {
    border: #fff solid 1px;
    padding: 30px;
    max-width: 500px;
    margin: 0 auto; }
    @media only screen and (max-width: 767px) {
      .sale .prod_detail {
        line-height: 34px;
        font-size: 16px; } }
    @media only screen and (min-width: 768px) {
      .sale .prod_detail {
        line-height: 38px;
        font-size: 18px; } }
  @media only screen and (max-width: 767px) {
    .sale .date {
      margin: 0 0 0 10px; } }

.note_container {
  display: block;
  width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 88;
  margin-top: -80px; }

.note {
  background: #000;
  background-image: url("../img/bg_bottom.png");
  background-position: center;
  background-repeat: repeat; }
  @media only screen and (max-width: 767px) {
    .note {
      -webkit-clip-path: polygon(0 0, 100% 11%, 100% 100%, 0 96%);
      clip-path: polygon(0 0, 100% 3%, 100% 100%, 0 96%); } }
  @media only screen and (min-width: 768px) {
    .note {
      -webkit-clip-path: polygon(0 0, 100% 11%, 100% 100%, 0 86%);
      clip-path: polygon(0 0, 100% 11%, 100% 100%, 0 86%); } }
  @media only screen and (max-width: 767px) {
    .note .inner {
      padding: 50px 0 58px; } }
  @media only screen and (min-width: 768px) {
    .note .inner {
      padding: 95px 100px 112px 100px; } }
  .note .wrap {
    color: #fff;
    margin: 0 auto;
    box-sizing: border-box; }
    @media only screen and (max-width: 767px) {
      .note .wrap {
        margin: 0 auto;
        padding: 30px 15px;
        max-width: 345px; } }
    @media only screen and (min-width: 768px) {
      .note .wrap {
        max-width: 800px;
        margin: 0 auto;
        padding: 40px 35px; } }
    .note .wrap h2 {
      margin: 0 0 10px;
      padding: 0; }
      @media only screen and (max-width: 767px) {
        .note .wrap h2 {
          font-size: 20px; } }
      @media only screen and (min-width: 768px) {
        .note .wrap h2 {
          font-size: 20px; } }
  @media only screen and (max-width: 767px) {
    .note .box {
      margin: 0 0 30px; } }
  @media only screen and (min-width: 768px) {
    .note .box {
      margin: 0 0 40px; }
      .note .box:last-child {
        margin: 0; } }
  .note p {
    margin: 0;
    padding: 0; }
    @media only screen and (max-width: 767px) {
      .note p {
        font-size: 1.1rem;
        line-height: 29px; } }
    @media only screen and (min-width: 768px) {
      .note p {
        font-size: 1.2rem;
        line-height: 33px; } }
  .note ul {
    margin: 0 0 0 20px;
    padding: 0;
    text-align: left; }
    .note ul li {
      margin: 0 0 8px;
      padding: 0; }
      .note ul li:last-child {
        margin: 0; }

.bottom {
  background: #060b07;
  text-align: center;
  box-sizing: border-box; }
  @media only screen and (max-width: 767px) {
    .bottom {
      margin-top: -120px;
      padding: 135px 0 40px; } }
  @media only screen and (min-width: 768px) {
    .bottom {
      margin-top: -120px;
      padding: 140px 0 40px; } }

h5 {
  font-weight: normal;
  text-align: center;
  color: #fff;
  padding: 0; }
  @media only screen and (max-width: 767px) {
    h5 {
      font-size: 16px;
      margin: 30px 0 40px; } }
  @media only screen and (min-width: 768px) {
    h5 {
      font-size: 16px;
      margin: 30px 0 40px; } }

@media only screen and (min-width: 768px) {
  .sponly {
    display: none; } }

.global_head {
  margin: 0;
  position: relative;
  z-index: 99; }
