.c-item {
  text-align: center;
}
.c-item h3 {
  margin: 3vw 0 0vw;
  --gap: 1.5vw;
}

@media screen and (min-width: 768px) {
  .loop-sl img {
    height: 268px;
  }
  .c-item h3 {
    margin: 16px 0 -2px 2px;
    letter-spacing: 0em;
  }
  .c-item .price {
    letter-spacing: 0em;
    margin-left: 15px;
  }
  .price {
    font-size: 25px;
  }
}
/*--------------------------------------
    sec1
--------------------------------------*/
#sec1 {
  padding: 13vw 0 16.5vw;
  position: relative;
  z-index: 1;
}
#sec1:before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 159%;
  height: 280vw;
  background: url('../img/menu/s1_smoke.png') no-repeat center top;
  background-size: contain;
  z-index: -1;
}
#sec1 h2 {
  margin: 0 auto 4vw;
  height: 83vw;
  --gap: 1.5vw;
}
#sec1 .photos {
  flex-direction: row;
  flex-wrap: wrap;
  margin: 8vw 0;
  justify-content: space-between;
}
#sec1 .photos p:nth-child(1) {
  width: 50%;
}
#sec1 .photos p:nth-child(2) {
  width: 40%;
  margin-top: 17vw;
  margin-right: 5vw;
}
#sec1 .photos p:nth-child(n + 3) {
  width: 42.6vw;
  margin-left: 5vw;
}
#sec1 .photos p:last-child {
  margin-top: 17vw;
  margin-left: auto;
  margin-right: 10px;
}
#sec1 .buttons {
  gap: 15px;
  flex-direction: row;
}
#sec1 .buttons .btn-cus a:after {
  left: 0;
  height: 23px;
  transform: rotate(90deg);
}
@media screen and (min-width: 768px) {
  #sec1 {
    padding: 171px 0 114px;
  }
  #sec1:before {
    width: 871px;
    height: 1118px;
    margin-left: -8px;
  }
  #sec1 h2 {
    letter-spacing: 0em;
    height: 456px;
    width: 140px;
    margin-bottom: 73px;
  }
  #sec1 h2 .orange {
    letter-spacing: -0.02em;
    margin-bottom: -11px;
  }
  #sec1 .txt {
    text-align: center;
  }
  #sec1 .photos {
    position: absolute;
    top: -14px;
    width: 100%;
    max-width: 1500px;
    left: 50%;
    z-index: -1;
    transform: translateX(-50%);
  }
  #sec1 .photos p:nth-child(1) {
    width: 520px;
  }
  #sec1 .photos p:nth-child(2) {
    width: 420px;
    margin: 210px 91px -8px 0;
  }
  #sec1 .photos p:nth-child(n + 3) {
    margin-left: 68px;
    width: 460px;
  }
  #sec1 .photos p:last-child {
    margin: 262px 37px 0 auto;
  }
  #sec1 .photos .simpleParallax {
    overflow: visible !important;
    scale: 0.8;
  }
  #sec1 .buttons {
    margin-top: 63px;
    justify-content: center;
    gap: 110px;
    margin-left: -26px;
  }
  #sec1 .buttons a:after {
    height: 41px;
  }
}
@media (max-width: 1200px) and (min-width: 768px) {
  #sec1 .photos p:nth-child(1) {
    width: calc(50% - 80px);
  }
  #sec1 .photos p:nth-child(2) {
    margin-right: calc(50% - 520px);
  }
  #sec1 .photos p:nth-child(3) {
    margin-left: 20px;
  }
  #sec1 .photos p:last-child {
    margin-right: 20px;
  }
}

/*--------------------------------------
    sec2
--------------------------------------*/
#sec2 {
  position: relative;
  z-index: 1;
  padding-bottom: 14vw;
}
#sec2 .s2-js {
  position: absolute;
  top: 0;
  z-index: -1;
}
#sec2 h2 {
  height: 90px;
  margin-bottom: 26px;
}
#sec2 h2 img {
  width: auto;
  height: 100%;
  object-fit: cover;
}
#sec2 .row1 {
  margin: 12vw 0;
}
#sec2 .row1 .photo {
  margin: 0 6%;
  position: relative;
  z-index: 2;
}
#sec2 .row1 .txt {
  position: relative;
  z-index: 1;
  padding: 8vw 6% 15vw;
}
#sec2 .row1 .txt:before {
  content: '';
  position: absolute;
  top: -25vw;
  left: 0;
  width: 100%;
  bottom: 0;
  background: var(--bg3);
  z-index: -1;
}
#sec2 .row2 .img {
  margin: -10vw 18% 0;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  #sec2 {
    padding-bottom: 110px;
  }
  #sec2 .wrap {
    max-width: 1200px;
  }
  #sec2 h2 {
    padding-top: 9px;
    height: auto;
    margin-bottom: 20px;
  }
  #sec2 .bg {
    margin: 0 80px;
    position: relative;
    z-index: 2;
  }
  #sec2 .bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  #sec2 .row {
    margin: 0 auto;
    width: 100%;
    max-width: 1000px;
  }
  #sec2 .row1 {
    margin: 0 auto -27px;
    flex-direction: row-reverse;
    justify-content: space-between;
    gap: 30px;
  }
  #sec2 .row1 .photo {
    margin: -76px -200px 0 auto;
  }
  #sec2 .row1 .txt {
    padding: 62px 0 80px;
    width: 510px;
  }
  #sec2 .row1 .txt::before {
    top: -83px;
    left: -179px;
    width: auto;
    right: -342px;
  }
  #sec2 .row2 {
    position: relative;
    z-index: 2;
  }
  #sec2 .row2 .photo {
    margin-left: 9px;
  }
  #sec2 .row2 .img {
    margin: -77px -59px 0 auto;
  }
}

/*--------------------------------------
    sec3
--------------------------------------*/
#sec3 {
  position: relative;
  z-index: 1;
}
#sec3:before {
  content: '';
  position: absolute;
  top: -11vw;
  left: -20%;
  width: 116%;
  height: 170vw;
  background: url('../img/menu/s3_smoke.png') no-repeat center top;
  background-size: contain;
  z-index: -1;
}
#sec3 .img {
  margin: -22vw 0 3vw -12%;
  position: relative;
}
#sec3 .img:before {
  content: '';
  position: absolute;
  bottom: -8vw;
  left: 11%;
  width: 25vw;
  height: 25vw;
  background: url('../img/menu/s3_deco.png') no-repeat center top;
  background-size: contain;
  z-index: 2;
}
#sec3 h2 {
  position: relative;
  padding: 12vw 10% 6vw 10%;
}
#sec3 .s3-js {
  margin-top: 10vw;
}
#sec3 .s3-js .slick-dots {
  margin-top: 4vw;
}
#sec3 .s3-js .photo {
  margin: 0 6% -10vw;
  position: relative;
  z-index: 2;
}
#sec3 .s3-js .content {
  background: var(--bg6);
  color: #000;
  padding-bottom: 7vw;
  min-height: 97vw;
}
#sec3 .s3-js .content h3 {
  padding: 13vw 0 3vw;
  --gap: 1.5vw;
  text-align: center;
  background: #ececec;
}
#sec3 .s3-js .content h4,
#sec3 .s3-js .content .txt {
  margin: 0 4%;
}
#sec3 .s3-js .content h4 {
  margin-top: 5vw;
  margin-bottom: 6vw;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  #sec3:before {
    left: auto;
    width: 784px;
    height: 1117px;
    right: 0;
    top: -287px;
  }
  #sec3 .wrap {
    max-width: 1258px;
  }
  #sec3 .img {
    position: absolute;
    margin: 0;
    left: calc(50% - 780px);
    top: -73px;
  }
  #sec3 .img:before {
    width: 185px;
    height: 185px;
    left: calc(50% - 147px);
    bottom: -96px;
  }
  #sec3 h2 {
    text-align: right;
    padding: 0;
    margin: -125px 71px 0 auto;
  }
  #sec3 .txt {
    margin: 115px 0 0 calc(50% - 209px);
    width: 560px;
  }
  #sec3 .s3-js {
    margin-top: 101px;
  }
  #sec3 .s3-js .slick-dots {
    width: calc(50% + 33px);
    margin-top: -33px;
  }
  #sec3 .s3-js .item {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex !important;
    align-items: center;
  }
  #sec3 .s3-js .item .photo {
    margin: 0;
    height: 474px;
    margin-top: -2px;
  }
  #sec3 .s3-js .item .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  #sec3 .s3-js .item .content {
    min-height: 570px;
    width: 650px;
    min-width: 540px;
    margin-left: -55px;
    padding-bottom: 30px;
    box-sizing: border-box;
  }
  #sec3 .s3-js .item .content h3 {
    padding: 13px 7px 17px 0;
    letter-spacing: -0.01em;
  }
  #sec3 .s3-js .item .content h4,
  #sec3 .s3-js .item .content .txt {
    margin: 0 auto;
    width: 441px;
    transform: translateX(31px);
  }
  #sec3 .s3-js .item .content h4 {
    line-height: 85px;
    margin-top: 23px;
    margin-bottom: 23px;
    letter-spacing: -0.03em;
  }
  #sec3 .s3-js .item1 .content h4 {
    margin-top: 92px;
  }
}
@media (max-width: 1100px) and (min-width: 768px) {
  #sec3 h2 {
    margin-right: 0;
  }
}

/*--------------------------------------
    sec4
--------------------------------------*/
#sec4 {
  padding: 13vw 0;
}
#sec4 h2 {
  text-align: center;
  position: relative;
  z-index: 1;
}
#sec4 h2:before {
  content: '';
  position: absolute;
  top: -4vw;
  left: -3%;
  width: 117vw;
  height: 62vw;
  background: url('../img/menu/s4_deco.png') no-repeat center top;
  background-size: contain;
  z-index: -1;
}
#sec4 .s4-js {
  margin-top: 6vw;
  text-align: center;
}
#sec4 .s4-js .photo {
  width: 100%;
}
#sec4 .s4-js .photo img {
  width: 100%;
  height: auto;
}
#sec4 .s4-js .item {
  width: 68vw;
  margin: 0 20px;
}
@media screen and (min-width: 768px) {
  #sec4 {
    padding: 120px 0 105px;
  }
  #sec4 h2 {
    line-height: 66px;
  }
  #sec4 h2:before {
    left: 50%;
    top: -15px;
    transform: translateX(-50%);
    width: 865px;
    height: 227px;
  }
  #sec4 .s4-js {
    margin-top: 77px;
  }
  #sec4 .s4-js .item {
    width: 580px;
    margin: 0 45px;
  }
}
@media (max-width: 1400px) and (min-width: 768px) {
  #sec4 .s4-js .slick-list {
    padding-left: 0 !important;
  }
}

/*--------------------------------------
    sec5
--------------------------------------*/
#sec5 {
  background: var(--bg3);
  padding: 10vw 0;
  position: relative;
  z-index: 1;
}
#sec5:before {
  content: '';
  position: absolute;
  bottom: 4vw;
  right: -10%;
  width: 92%;
  height: 60vw;
  background: url('../img/menu/s5_bg.png') no-repeat center top;
  background-size: contain;
  z-index: -1;
}
#sec5 h2 {
  margin: 0 10% 10vw;
  position: relative;
  z-index: 1;
}
#sec5 h2:before {
  content: '';
  position: absolute;
  left: 0;
  top: -10vw;
  width: 100%;
  height: 65vw;
  background: url('../img/menu/s5_deco.png') no-repeat center center;
  background-size: contain;
  z-index: -1;
}
#sec5 .row {
  gap: 10vw;
  margin-bottom: 10vw;
}
#sec5 .s5-js .slick-dots {
  margin-top: 4vw;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex !important;
  gap: 10px;
}
#sec5 .s5-js .slick-dots li {
  width: 20%;
  margin: 0;
  height: 13vw;
  border-radius: 0;
}
#sec5 .s5-js .slick-dots li button {
  background: url('../img/menu/s5_js1.jpg') no-repeat center top;
  background-size: cover;
}
#sec5 .s5-js .slick-dots li button:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
}
#sec5 .s5-js .slick-dots li:nth-child(2) button {
  background: url('../img/menu/s5_js2.jpg') no-repeat center top;
  background-size: cover;
}
#sec5 .s5-js .slick-dots li:nth-child(3) button {
  background: url('../img/menu/s5_js3.jpg') no-repeat center top;
  background-size: cover;
}
#sec5 .s5-js .slick-dots li:nth-child(4) button {
  background: url('../img/menu/s5_js4.jpg') no-repeat center top;
  background-size: cover;
}
#sec5 .s5-js .slick-dots li:nth-child(5) button {
  background: url('../img/menu/s5_js5.jpg') no-repeat center top;
  background-size: cover;
}
#sec5 .s5-js .slick-dots li.slick-active button::before {
  opacity: 1;
}
#sec5 .s5-js .item {
  text-align: left;
}
@media screen and (min-width: 768px) {
  #sec5 {
    padding: 58px 0 130px;
  }
  #sec5:before {
    width: 1108px;
    height: 746px;
    bottom: 141px;
    right: calc(50% - 803px);
  }
  #sec5 .wrap {
    max-width: 1068px;
  }
  #sec5 h2 {
    width: 876px;
    max-width: 100%;
    margin: 0 auto 94px;
  }
  #sec5 h2:before {
    margin-left: -2px;
    top: -58px;
    height: 573px;
  }
  #sec5 .row {
    gap: 60px;
    margin-bottom: 140px;
  }
  #sec5 .row .item {
    width: 50%;
  }
  #sec5 .row .item .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  #sec5 .row .item h3 {
    margin: 36px 0 -3px 4px;
  }
  #sec5 .row .item:nth-child(2) h3 {
    margin-left: -10px;
  }
  #sec5 .s5-js .slick-dots {
    margin-top: 73px;
    justify-content: center;
    gap: 30px;
  }
  #sec5 .s5-js .slick-dots li {
    width: 16.8%;
    height: auto;
    aspect-ratio: 180/130;
  }
  #sec5 .s5-js .item {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex !important;
    align-items: end;
    gap: 52px;
  }
  #sec5 .s5-js .item .content {
    min-width: 375px;
  }
  #sec5 .s5-js .item .content h3 {
    line-height: 55px;
    margin-bottom: 6px;
  }
  #sec5 .s5-js .item .content .price {
    margin-bottom: 62px;
    margin-left: 8px;
  }
}

/*--------------------------------------
    sec6
--------------------------------------*/
#sec6 {
  padding: 13vw 0;
  position: relative;
}
#sec6 .row1 {
  gap: 8vw;
}
#sec6 .row1 h2 {
  position: relative;
  z-index: 1;
  margin-bottom: 7vw;
}
#sec6 .row1 h2::before {
  content: '';
  position: absolute;
  top: 8vw;
  left: -10%;
  width: 117vw;
  height: 62vw;
  background: url(../img/menu/s4_deco.png) no-repeat center top;
  background-size: contain;
  z-index: -1;
}
#sec6 .row2 {
  flex-direction: row;
  flex-wrap: wrap;
  margin: 8vw 0;
  justify-content: space-between;
}
#sec6 .row2 .fz35 {
  --gap: 1.5vw;
}
@media screen and (min-width: 768px) {
  #sec6 {
    padding: 136px 0 130px;
  }
  #sec6 .wrap {
    max-width: 1090px;
  }
  #sec6 .row1 {
    flex-direction: row-reverse;
    justify-content: space-between;
    gap: 30px;
  }
  #sec6 .row1 .photo {
    margin: 0 -106px 0 -105px;
  }
  #sec6 .row1 .content {
    min-width: 540px;
  }
  #sec6 .row1 .content h2 {
    line-height: 85px;
    margin-top: 56px;
    margin-bottom: 40px;
  }
  #sec6 .row1 .content h2:before {
    width: 865px;
    height: 227px;
    top: 54px;
    left: -115px;
  }
  #sec6 .row1 .content .txt {
    margin-left: 5px;
    position: relative;
    z-index: 2;
    width: 510px;
  }
  #sec6 .row2 {
    margin: 36px auto 104px;
    align-items: center;
    width: 100%;
    max-width: 880px;
    letter-spacing: 0.04em;
  }
  #sec6 .row2 h3 {
    margin-left: 28px;
    margin-right: 8px;
  }
}

/*--------------------------------------
    sec7
--------------------------------------*/
#sec7 {
  padding: 10vw 0 12vw;
  position: relative;
  z-index: 1;
}
#sec7:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 80%;
  bottom: 20vw;
  background: var(--bg3);
  z-index: -1;
}
#sec7 h2 {
  margin: 4vw 0 8vw;
}
#sec7 .row {
  margin-bottom: 7vw;
  gap: 7vw;
}
#sec7 .banner{
  margin: 7vw auto 0;
  text-align: center;
}
@media screen and (min-width: 768px) {
  #sec7 {
    padding: 104px 0 148px;
  }
  #sec7:before {
    width: calc(50% + 150px);
    bottom: 210px;
  }
  #sec7 .wrap {
    max-width: 1420px;
  }
  #sec7 .photo1 {
    position: absolute;
    left: calc(50% - 50vw);
    right: 250px;
    height: 678px;
  }
  #sec7 .photo1 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: right;
  }
  #sec7 h2 {
    display: table;
    margin: 60px 0 299px auto;
    line-height: 84px;
  }
  #sec7 .row {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto 95px;
    justify-content: space-between;
    gap: 30px;
    align-items: center;
  }
  #sec7 .row .img {
    margin-left: -196px;
  }
  #sec7 .row .txt {
    width: 440px;
    margin-top: 120px;
  }
  #sec7 .banner{
  margin: 50px auto 0;
  text-align: center;
}
}

/*# sourceMappingURL=menu.css.map */
