section p {
  padding-bottom: 0;
}

.slick-dots {
  display: flex;
  justify-content: flex-end;
  margin: 10px 4px 0 0;
}

.slick-dots li {
  width: 11px;
  height: 11px;
  line-height: 0;
  position: relative;
  background-color: transparent;
  border: none;
}

.slick-dots li:before {
  content: "";
  width: 19px;
  height: 19px;
  border: 1px solid #c5a575;
  border-radius: 50%;
  position: absolute;
  left: -5px;
  top: -5px;
  opacity: 0;
}

.slick-dots li button {
  opacity: 1;
  position: static;
  width: 100%;
  height: 100%;
  border: none;
  border-radius: 50%;
  font-size: 0;
  cursor: pointer;
  background: #c5a575;
}

.slick-dots li+li {
  margin-left: 22px;
}

.slick-dots li.slick-active {
  background: transparent;
  border: none;
}

.slick-dots li.slick-active:before {
  opacity: 1;
}

#sec1 {
  background-image: url("../../../shared/img/dinner/s1-bg.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50%;
  color: #fff;
  padding: 15vw 0;
}

#sec1 h2 {
  width: 70%;
  margin: 0 auto;
}

#sec1 .s1-js {
  margin: 8vw 0 7vw;
}

#sec1 .txt {
  margin-top: 7vw;
}

#sec2 {
  background-image: url("../img/shared/bg01.jpg");
  color: #fff;
  padding: 15vw 0;
}

#sec2 h2 {
  width: 95%;
  margin: 0 auto;
}

#sec2 .note {
  text-align: center;
  margin: 4vw 0 10vw;
}

#sec2 .note2 {
  text-align: center;
  margin: 4vw 0 5vw;
}

#sec2 .row1 h3 {
  text-align: center;
  font-size: 5vw;
  line-height: 8vw;
  letter-spacing: 0.15em;
  color: #f1e8d6;
}

#sec2 .row1 h3 small {
  display: block;
  font-size: 3vw;
  line-height: 4vw;
  letter-spacing: 0.38em;
  padding-right: 19%;
}

#sec2 .row1 h3 span {
  font-size: 9vw;
  margin-right: 1%;
}

#sec2 .row1 .price {
  text-align: center;
  font-weight: bold;
  font-size: 6vw;
  line-height: 8vw;
  letter-spacing: 0.05em;
  margin: 3vw 0 15vw;
}

#sec2 .row1 .price small {
  font-size: 4vw;
}

#sec2 .row1 .txt {
  position: relative;
}

#sec2 .row1 .txt:before {
  content: "";
  width: 1px;
  height: 12vw;
  background: #e4d8c6;
  position: absolute;
  top: -13vw;
  left: 49%;
  transform: rotate(46deg);
}

#sec2 .row1 ul {
  border: 1px solid #886845;
  padding: 5vw 3% 5vw;
  text-align: center;
  margin-top: 8vw;
}

#sec2 .row1 li {
  line-height: 1.8;
  margin-bottom: 3vw;
}

#sec2 .row2 .ttl {
  color: #c5a575;
  font-size: 5vw;
  line-height: 7vw;
  letter-spacing: 0.18em;
  padding-left: 15vw;
  position: relative;
  margin: 10vw 0 6vw;
}

#sec2 .row2 .ttl:before {
  content: "";
  width: 13vw;
  height: 1px;
  background: #c5a575;
  position: absolute;
  left: 0;
  top: 3.5vw;
}

#sec2 .row2 .ttl small {
  font-size: 3vw;
}

#sec2 .row2 .img-grp .df {
  display: flex;
  justify-content: space-between;
}

#sec2 .row2 .img-grp .row1 .img1 {
  width: 37.35%;
}

#sec2 .row2 .img-grp .row1 .img2 {
  width: 61.446%;
}

#sec2 .row2 .img-grp .row2 {
  margin: 9px 0 10px;
}

#sec2 .row2 .img-grp .row2 .img3 {
  width: 66.266%;
}

#sec2 .row2 .img-grp .row2 .img4 {
  width: 32.531%;
}

#sec2 .row2 .img-grp .row3 .img5 {
  width: 55.09%;
}

#sec2 .row2 .img-grp .row3 .col {
  width: 43.713%;
}

#sec2 .row2 .img-grp .row3 .col .img7 {
  margin-top: 0.8vw;
}

#sec3 {
  background-image: url("../img/shared/bg01.jpg");
  color: #fff;
  position: relative;
  z-index: 0;
}

#sec3:before {
  content: "";
  background: rgba(0, 0, 0, 0.5);
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: -1;
}

#sec3 .blk {
  padding: 10vw 4%;
}

#sec3 .blk h2 {
  color: #f1e8d6;
  font-size: 9vw;
  line-height: 10vw;
  letter-spacing: 0.18em;
  text-align: center;
}

#sec3 .blk h2 small {
  font-size: 5vw;
}

#sec3 .blk .price {
  text-align: center;
  font-weight: bold;
  font-size: 6vw;
  line-height: 8vw;
  letter-spacing: 0.05em;
  margin: 3vw 0 15vw;
}

#sec3 .blk .price small {
  font-size: 4vw;
}

#sec3 .blk .txt {
  position: relative;
}

#sec3 .blk .txt:before {
  content: "";
  width: 1px;
  height: 12vw;
  background: #fff;
  position: absolute;
  top: -13vw;
  left: 49%;
  transform: rotate(46deg);
}

#sec3 .blk .box {
  border: 1px solid #c5a575;
  border-top: none;
  margin-top: 10vw;
  position: relative;
}

#sec3 .blk .box:before {
  content: "";
  width: 10vw;
  height: 1px;
  background: #c5a575;
  position: absolute;
  left: 0;
  top: 0;
}

#sec3 .blk .box:after {
  content: "";
  width: 10vw;
  height: 1px;
  background: #c5a575;
  position: absolute;
  right: 0;
  top: 0;
}

#sec3 .blk .box .ttl {
  text-align: center;
  color: #c5a575;
  font-size: 5vw;
  line-height: 7vw;
  letter-spacing: 0.18em;
  position: relative;
  top: -3vw;
}

#sec3 .blk .box ul {
  padding: 5vw 3%;
  text-align: center;
}

#sec3 .blk .box ul li {
  line-height: 1.8;
  margin-bottom: 3vw;
}

#sec4 {
  padding: 15vw 0 18vw;
  position: relative;
  z-index: 0;
}

#sec4:before {
  content: "";
  background-image: url("../img/index/sec4_bg.jpg");
  position: absolute;
  left: 0;
  right: 0;
  bottom: 10vw;
  top: 50vw;
  z-index: -2;
}

#sec4 .wrap:before {
  content: "";
  background: url("../img/dinner/sec4_bg.png") no-repeat;
  background-size: 100%;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 10vw;
  top: -15vw;
  z-index: -2;
}

#sec4:after {
  content: "";
  width: 20%;
  background-image: url("../../../shared/img/dinner/s4-pat.jpg");
  background-size: 43vw;
  position: absolute;
  right: 0;
  top: 50vw;
  bottom: 10vw;
  z-index: -1;
}

#sec4 .img {
  margin: -3vw 0 7vw;
}

#sec4 .col h3 {
  text-align: center;
  color: #52310a;
  font-size: 6vw;
  line-height: 10vw;
  letter-spacing: 0.1em;
  margin-bottom: 5vw;
}

#sec5 {
  background-image: url("../../../shared/img/dinner/s5-bg.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  color: #fff;
  padding: 15vw 0;
}

#sec5 .img {
  position: relative;
}

#sec5 .img span {
  width: 90%;
  display: block;
  position: absolute;
  left: -2%;
  top: -6vw;
  z-index: 1;
}

#sec5 .coll {
  margin-top: 8vw;
}

#sec5 .coll h2 {
  text-align: center;
  font-size: 8.5vw;
  line-height: 10vw;
  color: #f1e8d6;
  letter-spacing: 0.07em;
}

#sec5 .coll h2 small {
  font-size: 5vw;
}

#sec5 .coll .price {
  text-align: center;
  font-weight: bold;
  font-size: 6vw;
  line-height: 8vw;
  letter-spacing: 0.05em;
  margin: 3vw 0 8vw;
}

#sec5 .coll .price small {
  font-size: 4vw;
}

#sec5 .coll .price small.db {
  display: block;
}

#sec5 .coll .note {
  margin-top: 20px;
}

#sec5 .tel {
  margin-top: 10vw;
}

#dinner-course #cancel {
  margin: 15vw 0 0;
}

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