@charset "UTF-8";
body {
  margin: 0;
  padding: 0;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
  color: #fff;
  background: #282624;
  position: relative; }
  body::before {
    content: "";
    background: linear-gradient(to left, #E12C2B, #D9071C);
    width: 50%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1; }

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

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom; }

.global_head {
  margin: 0; }

p {
  margin: 0; }
  @media only screen and (max-width: 767px) {
    p {
      font-size: 0.9rem;
      line-height: 1.7rem; } }
  @media only screen and (min-width: 768px) {
    p {
      font-size: 0.95rem;
      line-height: 1.7rem; } }

.wrap {
  overflow: hidden; }

@media only screen and (max-width: 767px) {
  .section {
    margin: 0 25px; } }
@media only screen and (min-width: 768px) {
  .section {
    max-width: 1200px;
    width: calc(100% - 30px);
    margin: 0 auto; } }

@media only screen and (max-width: 767px) {
  .content {
    margin: 0 0 40px; } }
@media only screen and (min-width: 768px) {
  .content {
    margin: 0 auto 50px; } }

h1 {
  text-align: center; }
  @media only screen and (max-width: 767px) {
    h1 {
      margin: 0 0 30px;
      font-size: 1.3rem; } }
  @media only screen and (min-width: 768px) {
    h1 {
      margin: 0 0 50px; } }

h2 {
  text-align: center;
  filter: drop-shadow(7px 7px 0 rgba(0, 0, 0, 0.2)); }
  @media only screen and (max-width: 767px) {
    h2 {
      margin: 0 0 80px; } }
  @media only screen and (min-width: 768px) {
    h2 {
      margin: 0 0 120px; } }
  @media only screen and (max-width: 767px) {
    h2 img {
      width: 150px; } }
  @media only screen and (min-width: 768px) {
    h2 img {
      width: 220px; } }

.hero {
  position: relative; }
  @media only screen and (max-width: 767px) {
    .hero {
      padding: 90px 0 0; } }
  @media only screen and (min-width: 768px) {
    .hero {
      padding: 120px 0 0; } }
  .hero__logo {
    position: absolute; }
    @media only screen and (max-width: 767px) {
      .hero__logo {
        top: 8px;
        right: 10px; } }
    @media only screen and (min-width: 768px) {
      .hero__logo {
        top: 15px;
        right: 15px; } }
    @media only screen and (max-width: 767px) {
      .hero__logo img {
        width: 90px; } }
    @media only screen and (min-width: 768px) {
      .hero__logo img {
        width: 150px; } }
  .hero__title {
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .hero__title {
        margin: 0 0 50px; } }
    @media only screen and (min-width: 768px) {
      .hero__title {
        margin: 0 0 70px; } }
    .hero__title img {
      filter: drop-shadow(7px 7px 0 rgba(0, 0, 0, 0.2)); }
      @media only screen and (max-width: 767px) {
        .hero__title img {
          width: 270px; } }
      @media only screen and (min-width: 768px) {
        .hero__title img {
          width: 500px; } }
  .hero__container {
    position: relative; }
    @media only screen and (max-width: 767px) {
      .hero__container {
        height: 470px; } }
    @media only screen and (min-width: 768px) {
      .hero__container {
        max-width: 1050px;
        margin: 0 auto;
        height: 1000px; } }
  .hero__item {
    position: absolute;
    top: 0; }
    @media only screen and (max-width: 767px) {
      .hero__item:first-child {
        left: -200px; } }
    @media only screen and (min-width: 768px) {
      .hero__item:first-child {
        left: -300px; } }
    @media only screen and (max-width: 767px) {
      .hero__item:last-child {
        right: -200px; } }
    @media only screen and (min-width: 768px) {
      .hero__item:last-child {
        right: -300px; } }
    @media only screen and (max-width: 767px) {
      .hero__item img {
        width: 370px;
        filter: drop-shadow(3px 3px 5px rgba(0, 0, 0, 0.7)); } }
    @media only screen and (min-width: 768px) {
      .hero__item img {
        filter: drop-shadow(5px 5px 8px rgba(0, 0, 0, 0.3)); } }

@media only screen and (max-width: 767px) {
  .intro {
    margin: 0 0 160px; } }
@media only screen and (min-width: 768px) {
  .intro {
    margin: 0 0 250px; } }
.intro__logo {
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .intro__logo {
      margin: 0 0 30px; } }
  @media only screen and (min-width: 768px) {
    .intro__logo {
      margin: 0 0 40px; } }
  @media only screen and (max-width: 767px) {
    .intro__logo img {
      width: 200px; } }
  @media only screen and (min-width: 768px) {
    .intro__logo img {
      width: 300px; } }
.intro p {
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.15rem; }
  @media only screen and (max-width: 767px) {
    .intro p {
      margin: 0 0 15px;
      font-size: 0.95rem;
      line-height: 2.0rem; } }
  @media only screen and (min-width: 768px) {
    .intro p {
      font-size: 1.2rem;
      line-height: 3.2rem;
      margin: 0 0 25px; } }
  .intro p:last-child {
    margin: 0; }

@media only screen and (max-width: 767px) {
  .prod {
    margin: 0 0 160px; } }
@media only screen and (min-width: 768px) {
  .prod {
    margin: 0 0 230px; } }
.prod .section {
  position: relative; }
@media only screen and (min-width: 768px) {
  .prod__container {
    display: flex;
    justify-content: center; } }
.prod__item {
  box-sizing: border-box; }
  @media only screen and (max-width: 767px) {
    .prod__item {
      margin: 0 0 80px;
      padding: 0 20px;
      border-radius: 10px; }
      .prod__item:last-child {
        margin: 0; } }
  @media only screen and (min-width: 768px) {
    .prod__item {
      width: calc(100% / 2); }
      .prod__item:first-child {
        padding: 0 50px 0 0; }
      .prod__item:last-child {
        padding: 0 0 0 50px; } }
@media only screen and (max-width: 767px) {
  .prod__pic {
    margin: 0 auto 70px;
    width: 93%; } }
@media only screen and (min-width: 768px) {
  .prod__pic {
    margin: 0 auto 50px;
    width: 90%; } }
.prod__pic .slide .slick-dots {
  bottom: -34px !important; }
.prod__ttl {
  font-weight: 700;
  text-align: center;
  letter-spacing: 0.1rem;
  margin: 0 0 15px; }
  @media only screen and (max-width: 767px) {
    .prod__ttl {
      font-size: 1.3rem; } }
  @media only screen and (min-width: 768px) {
    .prod__ttl {
      font-size: 1.6rem; } }
  .prod__ttl span {
    display: block;
    font-weight: 500;
    letter-spacing: 0;
    margin: 0 0 5px; }
    @media only screen and (max-width: 767px) {
      .prod__ttl span {
        font-size: 0.85rem; } }
    @media only screen and (min-width: 768px) {
      .prod__ttl span {
        font-size: 1.0rem; } }
.prod__ttl-sub {
  display: flex;
  flex-direction: column;
  align-items: center; }
  @media only screen and (max-width: 767px) {
    .prod__ttl-sub {
      margin: 0 0 28px; } }
  @media only screen and (min-width: 768px) {
    .prod__ttl-sub {
      margin: 0 0 35px; } }
  .prod__ttl-sub--eita {
    box-shadow: 5px 5px 0 rgba(255, 255, 255, 0.2);
    display: inline-block;
    box-sizing: border-box;
    font-weight: 500;
    margin: 0; }
    @media only screen and (max-width: 767px) {
      .prod__ttl-sub--eita {
        padding: 2px 35px 1px;
        font-size: 0.85rem;
        line-height: 1.3rem; } }
    @media only screen and (min-width: 768px) {
      .prod__ttl-sub--eita {
        padding: 1px 35px 0;
        font-size: ß1 0rem; } }
  .prod__ttl-sub--masuko {
    box-shadow: 5px 5px 0 rgba(255, 255, 255, 0.2);
    display: inline-block;
    padding: 2px 35px 0;
    box-sizing: border-box;
    font-weight: 500;
    margin: 0 0 15px;
    line-height: 1.4rem; }
    @media only screen and (max-width: 767px) {
      .prod__ttl-sub--masuko {
        padding: 2px 35px 1px;
        font-size: 0.85rem;
        line-height: 1.5rem; } }
    @media only screen and (min-width: 768px) {
      .prod__ttl-sub--masuko {
        padding: 1px 35px 0;
        font-size: 1.0rem;
        line-height: 1.8rem; } }
    .prod__ttl-sub--masuko:last-child {
      margin: 0; }
      @media only screen and (max-width: 767px) {
        .prod__ttl-sub--masuko:last-child {
          padding: 2px 15px 1px; } }
.prod__text p {
  text-align: center; }
@media only screen and (max-width: 767px) {
  .prod__price {
    margin: 0 0 20px; } }
@media only screen and (min-width: 768px) {
  .prod__price {
    margin: 0 0 23px; } }
.prod__price span {
  font-weight: 600;
  margin: 0 5px; }
  @media only screen and (max-width: 767px) {
    .prod__price span {
      font-size: 1.3rem; } }
  @media only screen and (min-width: 768px) {
    .prod__price span {
      font-size: 1.5rem; } }
.prod__detail {
  margin: 0 auto; }
  @media only screen and (max-width: 767px) {
    .prod__detail {
      width: 280px; } }
  @media only screen and (min-width: 768px) {
    .prod__detail {
      width: 300px; } }
  .prod__detail dl {
    display: flex;
    margin: 0 0 10px;
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .prod__detail dl {
        font-size: 0.9rem;
        line-height: 1.7rem; } }
    @media only screen and (min-width: 768px) {
      .prod__detail dl {
        font-size: 0.95rem;
        line-height: 1.7rem; } }
    .prod__detail dl:last-child {
      margin: 0; }
    .prod__detail dl dt {
      width: 80px;
      margin: 0;
      font-weight: 600; }
    .prod__detail dl dd {
      width: calc(100% - 80px);
      margin: 0; }
.prod__bg {
  position: absolute;
  z-index: -1; }
@media only screen and (max-width: 767px) {
  .prod .order {
    margin: 50px 0 0; } }
@media only screen and (min-width: 768px) {
  .prod .order {
    margin: 70px 0 0; } }
@media only screen and (max-width: 767px) {
  .prod .order__item {
    margin: 0 0 45px; } }
@media only screen and (min-width: 768px) {
  .prod .order__item {
    border-top: 1px solid #888; } }
@media only screen and (max-width: 767px) {
  .prod .order__item:last-child {
    margin: 0; } }
@media only screen and (min-width: 768px) {
  .prod .order__item:last-child {
    border-bottom: 1px solid #888; } }
@media only screen and (min-width: 768px) {
  .prod .order__item-inner {
    display: flex;
    justify-content: space-between; } }
@media only screen and (max-width: 767px) {
  .prod .order__item-pic {
    width: 40%;
    margin: 0 auto 20px; } }
@media only screen and (min-width: 768px) {
  .prod .order__item-pic {
    width: 120px;
    padding: 30px 0 0; } }
.prod .order__item-pic p {
  font-weight: 500;
  margin: 10px 0 0; }
@media only screen and (min-width: 768px) {
  .prod .order__item-btn-container {
    width: calc(100% - 150px); } }
.prod .order__item-btn-container dl {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0; }
  @media only screen and (max-width: 767px) {
    .prod .order__item-btn-container dl {
      padding: 20px 10px;
      border-top: 1px solid #888; } }
  @media only screen and (min-width: 768px) {
    .prod .order__item-btn-container dl {
      padding: 23px 15px;
      border-bottom: 1px solid #888; } }
  @media only screen and (max-width: 767px) {
    .prod .order__item-btn-container dl:last-child {
      border-bottom: 1px solid #888; } }
  @media only screen and (min-width: 768px) {
    .prod .order__item-btn-container dl:last-child {
      border-bottom: none; } }
  .prod .order__item-btn-container dl dt {
    margin: 0;
    font-weight: 600; }
  .prod .order__item-btn-container dl dd {
    margin: 0; }
    .prod .order__item-btn-container dl dd .btn {
      background: #23abdd;
      text-align: center;
      border-radius: 3px;
      height: 40px;
      line-height: 40px;
      width: 180px;
      font-size: 0.9rem;
      font-weight: 500;
      letter-spacing: 0.05rem; }
      .prod .order__item-btn-container dl dd .btn:hover {
        background: #4cc9f7;
        transition: 0.3s; }
      .prod .order__item-btn-container dl dd .btn a {
        color: #fff;
        width: 100%;
        display: block; }
        .prod .order__item-btn-container dl dd .btn a::before {
          font-family: "Font Awesome 5 Free";
          content: "\f07a";
          font-size: 0.8rem;
          font-weight: 900;
          color: #fff;
          margin-right: 7px;
          position: relative; }
        .prod .order__item-btn-container dl dd .btn a:hover {
          text-decoration: none; }

@media only screen and (min-width: 768px) {
  .sale {
    max-width: 800px;
    margin: 0 auto; } }
.sale__ttl {
  text-align: center;
  font-weight: bold;
  letter-spacing: 0.1rem;
  line-height: 100%; }
  @media only screen and (max-width: 767px) {
    .sale__ttl {
      font-size: 1.35rem;
      margin: 0 0 30px; } }
  @media only screen and (min-width: 768px) {
    .sale__ttl {
      font-size: 1.8rem;
      margin: 0 0 45px; } }
.sale ul {
  margin: 0 0 0 17px;
  padding: 0; }
  @media only screen and (max-width: 767px) {
    .sale ul {
      font-size: 0.9rem;
      line-height: 1.7rem; } }
  @media only screen and (min-width: 768px) {
    .sale ul {
      font-size: 1.0rem;
      line-height: 1.7rem; } }
  .sale ul li {
    margin: 0 0 7px; }
.sale__btn {
  background: #f13131;
  text-align: center;
  height: 50px;
  line-height: 50px;
  margin: 30px 0 0; }
@inlcude mq-sp {}
  .sale__btn a {
    color: #fff; }

@media only screen and (max-width: 767px) {
  .copyright {
    margin: 180px 0 0; } }
@media only screen and (min-width: 768px) {
  .copyright {
    margin: 300px 0 0; } }
.copyright__logo {
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .copyright__logo {
      margin: 0 0 10px; } }
  @media only screen and (min-width: 768px) {
    .copyright__logo {
      margin: 0 0 20px; } }
  @media only screen and (max-width: 767px) {
    .copyright__logo img {
      width: 40px; } }
  @media only screen and (min-width: 768px) {
    .copyright__logo img {
      width: 55px; } }
.copyright p {
  text-align: center; }
  @media only screen and (max-width: 767px) {
    .copyright p {
      font-size: 0.75rem; } }
  @media only screen and (min-width: 768px) {
    .copyright p {
      font-size: 0.8rem; } }

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

@media only screen and (max-width: 767px) {
  .pconly {
    display: none; } }
