/**
 * lp-design-c CSS
 */
/*  PCとSPの表示非表示の切り替え */
/*(md)px以上で表示*/
@media (max-width: 450px) {
    .pc-only {
      display: none;
    }
  }

  /*モバイルのみ表示*/
  .sp-only {
    display: none;
  }
  @media (max-width: 650px) {
    .sp-only {
      display: block;
    }
  }

  .lp-design-c {
    font-family: "DNP ShueiGoGinStd", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    background-color: #FAF7E3;
    padding-bottom: 147px;
    line-height: calc(30 / 16);
    font-size: 16px;
  }
    @media (max-width: 650px) {
      .lp-design-c {
        font-size: 14px;
        line-height: calc(20 / 14);
      }
    }
.lp-design-c--christmas {
  background-color: #540000;
}
  .lp-design-c__wrapper {
    max-width: 650px;
    margin-inline: auto;
    background-color: #fff;
    position: relative;
  }
  .lp-design-c__wrapper--christmas {
    background-color: #ECD9C9;
  }
  .lp-design-c__wrapper::before{
    content: '';
    position: fixed;
    width: 48px;
    height: 304px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 10;
    opacity: 1;
    transition: opacity 0.8s ease;
  }
  @media (max-width: 650px) {
    .lp-design-c__wrapper::before{
      display: none;
    }
  }

  .lp-design-c__wrapper.hide-pseudo::before{
    opacity: 0;
  }
  .lp-design-c__wrapper::before{
    background-image: url(../img/gift/text01.png);
    top: 50svh;
    left: calc(50vw - 325px - 44px - 2%);
  }
  .lp-design-c__wrapper--christmas::before{
    background-image: url(../img/gift/text02.png);
  }

  .small-text{
    letter-spacing: -1px;
  }
  @media (max-width: 650px) {
    .small-text{
      letter-spacing: 0;

    }
  }
  .mv {
    width: 100%;
    height: auto;
    object-fit: cover;
  }
  .inner{
    padding-inline: 40px;
  }

  @media (max-width: 450px) {
    .inner {
      padding-inline: 20px;
    }
  }
  .concept{
      padding-block: 100px 95px;
  }
  .item {
    padding-top: 40px;
    padding-bottom: 180px;
  }
    @media (max-width: 450px) {
      .item {
        padding-bottom: 90px;
      }
    }
  .item__inner {
    padding-inline: 40px;
    @media (max-width: 450px) {
      padding-inline: 20px;
    }
  }

  .item__inner-right{
      padding-right: 0;
  }
  .item__title-wrapper{
    position: relative;
    z-index: 1;
  }
  .item__title-wrapper--right{
    position: relative;
    z-index: 1;
    text-align: right;
  }
  .item__title{
    font-size: 28px;
    font-weight: 400;
  }
  @media (max-width: 650px) {
    .item__title {
      font-size: 24px;
    }
  }

  .item__title--white{
    color: #fff;
  }
  .item__title--small{
    font-size: 20px;
    width: 100%;
    max-width: 650px;
    margin-inline: auto;
    text-align: center;
  }
  @media (max-width: 450px) {
    .item__title--small{
      font-size: 17px;
    }
  }
  .item__title .small{
    display: block;
    font-size: 16px;
  }
  @media (max-width: 650px) {
    .item__title .small{
      font-size: 12px;
    }
  }
  .item__title .item__title-en{
    font-family: "the-seasons", sans-serif;
    display: inline-block;
  }
  .item__wrapper {
    position: relative;
    margin-top: 30px;
  }
  .item__wrapper{
    display: grid;
    grid-template-areas:
    "block01 block01"
    "block02 block03";
    gap: 10px;
  }
  .item__wrapper--another{
    display: grid;
    grid-template-areas:
    "block01 block01"
    "block02 block03";
    gap: 10px;
    grid-template-columns: 1.3fr 1fr;
  }
  .item__wrapper--side{
    display: grid;
    grid-template-areas:
    "text text"
    "block01 block03"
    "block01 block02";
    gap: 10px;
    grid-template-columns: 1.3fr 1fr;
    margin-top: 180px;
  }
  @media (max-width: 450px) {
    @media (max-width: 450px) {
      .item__wrapper--side {
        margin-top: 90px;
      }
    }
  }
  .item__wrapper--side-reverse{
    display: grid;
    grid-template-areas:
    "text text"
    "block03 block01"
    "block02 block01";
    gap: 10px;
    grid-template-columns: 1fr 1.3fr;
    margin-top: 180px;
    row-gap: 55px;
  }

  .item__wrapper :first-child{
    grid-area: block01;
  }
  .item__wrapper :nth-child(2){
    grid-area: block02;
  }
  .item__wrapper :nth-child(3){
    grid-area: block03;
  }
  .item__wrapper :nth-child(4){
    grid-area: text;
  }

  .item-background{
      position: relative;
  }
  .item-background::before{
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 490px;
      background-color: #FCFAEE;
      z-index: 0;
  }
  @media (max-width: 650px) {
    .item-background::before{
      height: 300px;
    }
  }
  .item-background--christmas::after{
        content: '';
        position: absolute;
        background-image: url(../img/gift/background.png);
        background-size: contain;
        background-repeat: no-repeat;
        width:150px;
        height:200px;
        top: 30px;
        right: 30px;
  }
  @media (max-width: 650px) {
    .item-background--christmas::after{
      width: 60px;
      height: 80px;
      top: 20px;
      right: 0px;
    }
  }
.item-background--christmas-left::after{
  top: 30px;
  left: 30px;
  transform: scaleX(-1);
}
@media (max-width: 650px) {
  .item-background--christmas-left::after{
    width: 60px;
    height: 80px;
    top: 20px;
    left: 0px;
  }
}
  .item-background.item-background--small::before{
    height: 350px;
  }
  @media (max-width: 650px) {
    .item-background.item-background--small::before{
      height: 280px;
    }
  }
  .item-background--christmas::before{
    background-color: #B58F3A;
  }

  .item__image-01 {
    max-width:calc(480px / 650px * 100%);
  }

  .item__image-01--right{
    margin-left: auto;
  }
.item__image-01--below{
  max-width:calc(400px / 570px * 100%);
  margin-inline: auto;
}
.item__image-01--side{
  max-width: 100%;
}

.item__text-wrapper{
  margin-top: 16px;
}
.item__text-wrapper--center{
  margin-top: 40px;
  text-align: center;
}
.item__text{
  margin-top: 16px;
}
.item__text span{
  font-size: 14px;
  display: block;
  margin-top: 16px;
}
.item__text-side--center{
  text-align: center;
}
.item__text--seasons{
  font-family: "the-seasons", sans-serif;
  font-size: 28px;
  font-weight: 400;
}
  .item__btn-wrapper{
    margin-top: 40px;
  }
  .item__btn{
    background-color: #000;
    padding: 12px 50px;
    border-radius: 9999px;
    display: block;
    width: fit-content;
    color: #fff;
    margin-inline: auto;
  }
  @media (max-width: 650px) {
    .item__btn {
      padding: 12px 20px;
    }
  }
  @media (max-width: 650px) {
    .item__btn--small {
      padding: 12px 10px;
    }
  }

  .flex-box {
      margin-top: 180px;
      @media (max-width: 650px) {
        margin-top: 90px;
      }
  }

  .flex-box__inner {
      max-width: 80%;
      margin-inline: auto;
      @media (max-width: 450px) {
        max-width: 90%;
      }

  }

  .flex-box__text {
      text-align: center;
      font-size: 28px;
      font-family: "the-seasons", sans-serif;
  }

  .flex-box__wrapper {
      display: flex;
      gap: 30px;
      margin-top: 55px;
      flex-wrap: nowrap;
      @media (max-width: 650px) {
        gap: 15px;
      }
  }
  .flex-box__item {
      flex: 1;
      min-width: 0;
  }
  .flex-box__item-image{
    aspect-ratio: 230/276;
    height: auto;
    object-fit: cover;
  }
  .flex-box__item-text{
    margin-top: 16px;
    font-size: 14px;
    @media (max-width: 650px) {
      font-size: 12px;
    }
  }


  .flex-box__item-btn {
      background-color: #000;
      padding: 12px 30px;
      border-radius: 9999px;
      display: block;
      width: 100%;
      margin-inline: auto;
      transition: opacity 0.3s ease;
      color: #fff;
      margin-top: 45px;
      text-align: center;
  }
      @media (max-width: 650px) {
        .flex-box__item-btn {
        padding: 12px 10px;
        margin-top: 20px;
      }
  }

.section02 .item__image-03{
  max-width: calc(480px / 650px * 100%);
  margin-inline: auto;
  margin-top: 180px;
}
@media (max-width: 450px) {
  .section02 .item__image-03 {
    margin-top: 90px;
  }
}
