.main {
  overflow: hidden; }

img {
  width: 100%;
  height: auto; }

#key {
  background: url("../img/kai/key.jpg") no-repeat top center;
  background-size: cover;
  padding-bottom: 10vw;
  padding-top: 28vw; }
  #key .catch-1 {
    margin-bottom: 10vw; }

#lead {
  padding: 2vw 0 0;
  background: url("../img/kai/lead_bg02.jpg") repeat-y top center;
  background-size: 100% auto;
  position: relative; }
  #lead::before, #lead::after {
    content: "";
    height: 122vw;
    position: absolute;
    left: 0;
    right: 0; }
  #lead::before {
    top: -26vw;
    background: url("../img/kai/lead_bg01.png") no-repeat top center;
    background-size: 100% auto; }
  #lead::after {
    bottom: -20vw;
    background: url("../img/kai/lead_bg03.png") no-repeat bottom center;
    background-size: 100% auto; }
  #lead h2 {
    margin-bottom: 5vw; }
  #lead .text {
    padding-left: 5%;
    padding-right: 5%;
    position: relative;
    z-index: 2; }
    #lead .text p {
      margin-bottom: 0; }
  #lead .photo {
    position: relative;
    z-index: 2; }

    #lead .btn_blog{position: relative;z-index: 1;margin: 0 10vw 10vw;}

#kodawari {
  position: relative; }
  #kodawari .bg-parallax {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0; }
  #kodawari .set {
    padding-top: 20vw;
    padding-bottom: 15vw; }
    #kodawari .set h2 {
      margin-bottom: 5vw; }
    #kodawari .set .slider__s {
      padding-left: 5%;
      padding-right: 5%; }
      #kodawari .set .slider__s .col {
        position: relative;
        color: #fff; }
        #kodawari .set .slider__s .col .photo {
          position: relative; }
        #kodawari .set .slider__s .col dl {
          position: relative;
          z-index: 2;
          padding-top: 0; }
          #kodawari .set .slider__s .col dl dt {
            margin-bottom: 3vw;
            margin-left: -2vw;
            margin-right: -2vw; }
          #kodawari .set .slider__s .col dl dd {
            letter-spacing: 0.02em; }
  #kodawari .slick-dots {
    text-align: center;
    margin-top: 30px; }
  #kodawari .slick-arrow {
    width: 55px;
    height: 49px;
    border: none;
    position: absolute;
    bottom: -15px; }
  #kodawari .slick-next.slick-arrow {
    right: 20px;
    background: url("../img/kai/next.png") no-repeat center;
    background-size: 100% auto; }
  #kodawari .slick-prev.slick-arrow {
    left: 20px;
    background: url("../img/kai/prev.png") no-repeat center;
    background-size: 100% auto; }

#recommend {
  position: relative;
  overflow: hidden; }
  #recommend .sticky__container__in {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    position: relative;
    width: max-content; }
  #recommend .sticky-slide {
    padding-left: 0;
    width: 100%; }
  #recommend #col1.sticky-slide .box__in {
    width: 100vw;
    padding-left: 0;
    padding-right: 0; }
  #recommend #col4.sticky-slide .box__in {
    padding-right: 0; }
  #recommend .box__in {
    padding-top: 20vw;
    padding-bottom: 20vw;
    padding-left: 5vw;
    padding-right: 5vw;
    width: 100%;
    box-sizing: border-box; }
    #recommend .box__in h2 {
      text-align: center; }
    #recommend .box__in .note {
      text-align: center;
      letter-spacing: 0.05em; }
  #recommend .box__col {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    width: 172vw; }
    #recommend .box__col .photo {
      margin-bottom: 0; }
    #recommend .box__col dl {
      padding-left: 0;
      padding-right: 0; }
      #recommend .box__col dl dt {
        margin: 0 auto 1vw; }
      #recommend .box__col dl .price {
        text-align: center;
        color: #f4cdb0;
        font-weight: 700;
        font-size: 22px;
        letter-spacing: 0.05em;
        margin-bottom: 3vw; }
        #recommend .box__col dl .price span {
          font-size: 30px; }
      #recommend .box__col dl .desc {
        letter-spacing: 0.05em;
        width: 94%;
        margin: 0 auto;
        padding-left: 0; }

#sidemenu {
  padding-top: 8vw;
  margin-bottom: 13vw;
  position: relative; }
  #sidemenu::before, #sidemenu::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    z-index: -1; }
  #sidemenu::before {
    background: url("../img/kai/recommend_bg01.png") no-repeat center top;
    background-size: 100% auto;
    top: 0;
    height: 200vw; }
  #sidemenu::after {
    bottom: 0;
    top: 0;
    background: url("../img/kai/recommend_bg02.png") no-repeat bottom center;
    background-size: 100% auto; }
  #sidemenu h2 {
    margin-bottom: 5vw; }
  #sidemenu .slider__s {
    position: relative;
    padding-left: 12vw;
    padding-right: 12vw;
    padding-bottom: 25vw; }
    #sidemenu .slider__s .slidemenu__box .photo {
      margin-bottom: 14vw;
      margin-left: 2vw;
      margin-right: 2vw; }
    #sidemenu .slider__s .slidemenu__box .info dl {
      margin-bottom: 3vw;
      margin-left: 5vw;
      margin-right: 5vw;
      text-align: center; }
      #sidemenu .slider__s .slidemenu__box .info dl dt {
        margin-bottom: 4vw; }
      #sidemenu .slider__s .slidemenu__box .info dl dd {
        color: #593116;
        font-size: 22px; }
        #sidemenu .slider__s .slidemenu__box .info dl dd span {
          font-size: 30px; }
    #sidemenu .slider__s .slidemenu__box .info .text {
      color: #000000;
      letter-spacing: 0.05em;
      margin-bottom: 0; }
  #sidemenu .slick-dots {
    text-align: center;
    top: 52vw;
    position: absolute;
    right: 0; }

.bnr__popup {
  margin-left: 5vw;
  margin-right: 5vw;
  margin-bottom: 20vw;
  }

#overdeco {
  padding-top: 0vw;
  padding-bottom: 15vw;
  padding-left: 5vw;
  padding-right: 5vw;
  }
  #overdeco .set1 {
    margin-bottom: 79px; }
    #overdeco .set1 h2 {
      text-align: center;
      margin-bottom: 5vw; }
    #overdeco .set1 .row .photo {
      margin-bottom: 5vw; }
    #overdeco .set1 .row .info h3 {
      margin-bottom: 0; }
      #overdeco .set1 .row .info .tel {
        text-align: center;
      }
    #overdeco .set1 .row .info .tel dt {
      margin-bottom: 3vw; }
    #overdeco .set1 .row .info .tel dd {
      position: relative;
      border-bottom: 1px solid #fff;
      font-size: 8.2vw;
      box-sizing: border-box;
      padding-bottom: 6vw;
 }


 #overdeco .set1 .row .info .tel dd span {
      font-weight: 700;
      color: #fff;
      padding-left: 12vw;
      letter-spacing: 0.05em;
       position: relative;
       display: inline-block;
 }
 #overdeco .set1 .row .info .tel dd span::before {
        content: "";
        background: url(../img/kai/icontel.png) no-repeat center;
        width: 9vw;
        height: 9vw;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 1vw;
        background-size: 100% auto; }
    #overdeco .set1 .row .info .list {
      padding-top: 4vw; }
      #overdeco .set1 .row .info .list dl {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        padding: 14px 0;
        line-height: 25px; }
        #overdeco .set1 .row .info .list dl dt {
          width: 25%; }
        #overdeco .set1 .row .info .list dl dd {
          width: 75%; }
          #overdeco .set1 .row .info .list dl dd a {
            text-decoration: underline; }
  #overdeco .set2 .mmap {
    height: 350px;
    margin-bottom: 5vw; }
    #overdeco .set2 .mmap iframe {
      width: 100%;
      height: 100%; }
  #overdeco .set2 .btn-copy {
    width: 205px;
    text-align: center;
    margin: 0 auto; }
    #overdeco .set2 .btn-copy span {
      display: inline-block;
      position: relative;
      padding-right: 30px;
      letter-spacing: 1px; }
      #overdeco .set2 .btn-copy span::after {
        content: "";
        background: url("../img/kai/icon_copy.png") no-repeat right center;
        background-size: 100% auto;
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        width: 4vw;
        height: 4vw; }

.remodal {
  padding: 0; }
  .remodal .remodal-close {
    transition: all .4s ease; }
    .remodal .remodal-close:hover {
      opacity: .6; }
    .remodal .remodal-close::before {
      display: none; }

.p-box {
  background: #000000; }
  .p-box .pp {
    width: 45px;
    position: sticky;
    margin-left: auto;
    top: 0;
    right: 0;
    display: block;
    background: none;
    border: none;
    margin-right: 10px; }
  .p-box .pop__in {
    padding: 10vw 5vw; }
  .p-box .pp__content {
    color: #fff; }
    .p-box .pp__content h2 {
      width: 70vw;
      margin: 0 auto 2vw; }
    .p-box .pp__content .pp__note {
      text-align: center;
      margin-bottom: 8vw; }
    .p-box .pp__content .pp__row .pp__col h3 {
      font-size: 18px;
      border-top: 1px solid #bc7d33;
      border-bottom: 1px solid #bc7d33;
      line-height: 1;
      padding: 12px 0 12px 25px;
      margin-bottom: 5px;
      position: relative;
      font-family: "Noto Serif JP", serif;
      font-optical-sizing: auto;
      font-weight: 700;
      font-style: normal;
      text-align: left; }
      .p-box .pp__content .pp__row .pp__col h3::before {
        content: "";
        background: url("../img/kai/icon01.png") no-repeat center;
        background-size: 100% auto;
        width: 11px;
        height: 11px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        left: 0; }
    .p-box .pp__content .pp__row .pp__col .pp__item {
      margin-bottom: 50px; }
      .p-box .pp__content .pp__row .pp__col .pp__item dl {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between;
        border-bottom: 1px solid #593116;
        padding: 12px 0;
        line-height: 26px; }
        .p-box .pp__content .pp__row .pp__col .pp__item dl dt {
          position: relative;
          padding-left: 17px;
          text-align: left; }
          .p-box .pp__content .pp__row .pp__col .pp__item dl dt::before {
            content: "";
            background: url("../img/kai/icon02.png") no-repeat center;
            background-size: 100% auto;
            width: 9px;
            height: 9px;
            position: absolute;
            top: 6px;
            left: 0; }
        .p-box .pp__content .pp__row .pp__col .pp__item dl dd {
          min-width: 128px;
          text-align: right;
          color: #f4cdb0; }
  .p-box .ppp {
    width: 107px;
    display: block;
    margin: 0 auto;
    background: none;
    border: none;
    position: relative; }



    #delivery{
      margin-bottom: 10vw;
      }
      
      #delivery h2{
        margin-bottom: 10px;
        text-align: center;
      }
      #delivery .col{
        display: flex;
        justify-content: space-evenly;
        margin: 0 auto 0;
        width: 95%;
      }
 #delivery .col .bnr{
   width: 43vw;

   
 }

 #sns {
  margin-bottom: 10vw;
 }
 #sns h2{
  text-align: center;
  width: 85%;
  margin: 0 auto;
}
#sns .social__sns .col ul{
  padding-top: 5vw;
  display: flex;
  justify-content: space-evenly;
  margin: 0px auto 11vw;
  gap: 7vw;
  width: 36vw;
  flex-wrap: wrap;
}
