.wrap {
  padding: 0 4%;
}
#header #key .sl .key-ttl {
  position: absolute;
  left: 0;
  bottom: 9.9vw;
  width: 29.2%;
}
#sec1 {
  padding: 23.5vw 0 0;
  background: url(../img/index/sec1_deco_sp.png) no-repeat center top/100% auto;
}
#sec1 h2 {
  width: 41%;
  margin-left: auto;
}
#sec1 h3 {
  width: 58%;
  margin: 1vw auto 3vw;
}
#sec1 .btn-link {
  width: 87%;
  margin: 8vw auto 0;
  position: relative;
}
#sec1 .photo {
  margin: -15.2vw -4vw -10.5vw;
}
#party1 .set1 {
  background:
    url(../img/index/party1_bg1.png) no-repeat center top/100% auto,
    url(../img/index/party1_bg.jpg) no-repeat center top/cover;
  padding: 41.7vw 0 40vw;
}
#party1 .set2 {
  padding: 1px 0 0;
  color: #fff;
  position: relative;
  background: url(../img/index/party1_deco.jpg) no-repeat center top/100% auto;
}
#party1 .set2::before {
  content: "";
  background: url(../img/shared/bg2.jpg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -2;
}
#party1 .set2 .note {
  text-align: center;
  margin: -22vw 0 3vw;
}
#party1 .set2 .box {
  position: relative;
  background: #1e2332;
  padding: 11vw 8% 6vw;
  margin: 0 0 11.5vw -2.5vw;
}
#party1 .set2 .box::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 10px;
  right: -10px;
  bottom: -10px;
  background:
    url(../img/shared/vertical_line.jpg) repeat-y left top,
    url(../img/shared/vertical_line.jpg) repeat-y right top,
    url(../img/shared/hor_line.png) repeat-x top left,
    url(../img/shared/hor_line.png) repeat-x bottom left;
}
#party1 .set2 .gr-bnr li:not(:last-child) {
  margin-bottom: 3vw;
}
#tsuri {
  padding: 12vw 0 0;
  position: relative;
  color: #fff;
}
#tsuri::before {
  content: "";
  background: url(../img/index/tsuri_bg1.png) no-repeat center top/100% auto;
  position: absolute;
  top: 18vw;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -2;
}
#tsuri::after {
  content: "";
  background: url(../img/shared/bg4.jpg);
  position: absolute;
  top: 35vw;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -2;
}
#tsuri .set1 {
  padding-bottom: 8vw;
}
#tsuri .set1::before {
  content: "";
  background: url(../img/index/tsuri_deco3.png) no-repeat center top/100% auto;
  position: absolute;
  top: -20.9vw;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -3;
}
#tsuri .set1 .item1 .photo {
  margin: 0 -4vw 0 7vw;
  position: relative;
  z-index: -1;
}
#tsuri .set1 .item1 h2 {
  position: absolute;
  top: 6vw;
  right: 0;
  width: 49%;
  z-index: 2;
}
#tsuri .set1 .item1 .price {
  font-size: 5.3vw;
  color: #fff;
  display: block;
  position: relative;
  padding: 0 16px 2vw;
  margin: -8vw 0 0 -4vw;
  font-weight: 700;
  letter-spacing: 0.06em;
  width: -moz-fit-content;
  width: fit-content;
}
#tsuri .set1 .item1 .price span {
  letter-spacing: 0.06em;
}
#tsuri .set1 .item1 .price .fs108 {
  font-size: 14.5vw;
}
#tsuri .set1 .item1 .price .fs74 {
  font-size: 9.9vw;
}
#tsuri .set1 .item1 .price::before {
  content: "";
  background: #b10505;
  position: absolute;
  top: 11px;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#tsuri .set1 .item2 {
  padding: 21vw 0 0;
  position: relative;
}
#tsuri .set1 .item2::before {
  content: "";
  background: url(../img/index/tsuri_deco1.png) no-repeat center top/100% auto;
  position: absolute;
  top: 1.5vw;
  right: -4vw;
  bottom: 0;
  left: -4vw;
  z-index: -1;
}
#tsuri .set1 .item2::after {
  content: "";
  background: url(../img/index/tsuri_deco2.png) no-repeat 0 0/100% auto;
  position: absolute;
  top: 67vw;
  right: -4vw;
  width: 31%;
  height: 37vw;
}
#tsuri .set1 .item2 .photo {
  margin: 0 0 0 -4vw;
  width: 84.1%;
}
#tsuri .set1 .item2 .photo::before {
  background: url(../img/shared/bg2.jpg);
  top: 0;
  bottom: -8px;
  right: 8px;
  left: 0;
}
#tsuri .set1 .item2 .catch {
  margin: -16.4vw 0 0 -4vw;
  width: 65%;
  position: relative;
  z-index: 1;
}
#tsuri .set1 .item2 .box {
  width: 67.1vw;
  background: url(../img/index/tsuri_box.png) no-repeat 0 0/100% auto;
  color: #fff;
  height: 46vw;
  margin: -6.8vw 0 1vw 20.9vw;
  padding: 9vw 7% 11vw;
  text-align: center;
  font-size: 4.5vw;
  line-height: 1.3;
  font-weight: 700;
  letter-spacing: 0.05em;
}
#tsuri .set1 .item2 .box dt {
  margin-bottom: 3vw;
}
#tsuri .set2 {
  position: relative;
  padding-bottom: 6.5vw;
}
#tsuri .set2::before {
  content: "";
  background: url(../img/shared/bg2.jpg);
  position: absolute;
  top: 11vw;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#tsuri .set2 h2 {
  margin: 0 -4vw;
}
#tsuri .set2 .note {
  margin: 0 6vw 3vw;
  background: #432d1c;
  font-size: 13px;
  font-weight: 700;
  line-height: 19px;
  letter-spacing: 0.05em;
  padding: 7px 18px 11px;
}
#tsuri .set2 .note li {
  position: relative;
  padding-left: 17px;
}
#tsuri .set2 .note li::before {
  content: "※";
  position: absolute;
  top: 0;
  left: 0;
}
#tsuri .set2 .list {
  background: #1e2332;
  padding: 3vw 4% 3vw;
  display: flex;
}
#tsuri .set2 .list ul li {
  display: flex;
  align-items: center;
}
#tsuri .set2 .list ul li:not(:last-child) {
  margin-bottom: 5px;
}
#tsuri .set2 .list ul li .num {
  width: 7.1vw;
}
#tsuri .set2 .list ul li .txt {
  flex: 1;
  margin-left: 7px;
  font-size: 3.4vw;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: left;
}
#tsuri .set2 .list .col1 {
  width: 51%;
  margin-right: 5px;
}
#tsuri .set2 .list .col2 {
  flex: 1;
}
#tsuri .set2 .info {
  font-weight: 700;
  position: relative;
}
#tsuri .set2 .info::before {
  content: "";
  background: url(../img/index/tsuri_deco4.png) no-repeat left top/100% auto;
  position: absolute;
  top: -22.8vw;
  left: -4vw;
  right: 0;
  bottom: 0;
  z-index: -1;
}
#tsuri .set2 .info .left {
  padding: 11vw 0 0 22vw;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
}
#tsuri .set2 .info .left .price-box {
  color: #b10505;
  position: relative;
  z-index: 1;
}
#tsuri .set2 .info .left .price-box dt {
  margin: 0 -2px 2vw auto;
  width: 19.5vw;
}
#tsuri .set2 .info .left .price-box dd {
  font-size: 14.5vw;
  letter-spacing: 0.06em;
  text-shadow:
    0 0 2px #fff,
    0 0 4px #fff,
    0 0 6px #fff,
    0 0 8px #fff,
    0 0 12px rgba(255, 255, 255, 0.5);
}
#tsuri .set2 .info .left .price-box dd span {
  font-size: 9.8vw;
  letter-spacing: 0.06em;
}
#tsuri .set2 .info .left .sub {
  font-size: 6.7vw;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-align: center;
  color: #3e321c;
  background: url(../img/index/tsuri_sub.png) no-repeat no-repeat 0 0/100% auto;
  width: 29.7vw;
  height: 21vw;
  padding: 5vw 3% 11vw;
  position: absolute;
  top: 3vw;
  left: 5vw;
}
#tsuri .set2 .info .left .sub span {
  font-size: 8.9vw;
  letter-spacing: 0.06em;
  display: inline-block;
  margin-right: 6px;
  position: relative;
  top: 2px;
  left: 4px;
}
#tsuri .set2 .info .right {
  font-weight: 700;
  background: rgba(133, 103, 30, 0.5);
  border-radius: 10px;
  padding: 2vw 3% 1vw 6%;
  margin: 5vw 9vw 0 18vw;
}
#tsuri .set2 .info .right dt {
  font-size: 4.3vw;
  letter-spacing: 0.06em;
}
#tsuri .set2 .info .right dd {
  font-size: 3.2vw;
  letter-spacing: 0.06em;
  margin-left: 1vw;
}
#tsuri .set2 .info .right dd span {
  letter-spacing: 0.06em;
}
#tsuri .set2 .info .right dd .fs51 {
  font-size: 8.6vw;
}
#tsuri .set2 .info .right dd .fs35 {
  font-size: 5.9vw;
}
#tsuri .set3 {
  padding: 6vw 0 0;
}
#tsuri .set3 .row1 {
  position: relative;
  padding: 8vw 0 4vw;
}
#tsuri .set3 .row1::before {
  content: "";
  background: #1e2332;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#tsuri .set3 .row1::after {
  content: "";
  background: url(../img/index/tsuri_deco5.png) no-repeat left top/100% auto;
  position: absolute;
  top: -6vw;
  left: 0;
  width: 59.6%;
  bottom: 0;
  z-index: -1;
}
#tsuri .set3 .row1 .txt {
  margin: 7vw 0;
}
#tsuri .set3 .row1 .price-table {
  background:
    url(../img/shared/vertical_line.jpg) repeat-y left top,
    url(../img/shared/vertical_line.jpg) repeat-y right top,
    url(../img/shared/hor_line.png) repeat-x left top;
  width: 100%;
  text-align: center;
}
#tsuri .set3 .row1 .price-table td {
  background: url(../img/shared/vertical_line.jpg) repeat-y left top;
}
#tsuri .set3 .row1 .price-table tr {
  background: url(../img/shared/hor_line.png) repeat-x left bottom;
}
#tsuri .set3 .row1 .price-table th,
#tsuri .set3 .row1 .price-table td {
  font-weight: 700;
  vertical-align: middle;
  letter-spacing: 0.06em;
}
#tsuri .set3 .row1 .price-table th span,
#tsuri .set3 .row1 .price-table td span {
  letter-spacing: 0.06em;
}
#tsuri .set3 .row1 .price-table th {
  width: 36%;
}
#tsuri .set3 .row1 .price-table thead th {
  font-size: 14px;
}
#tsuri .set3 .row1 .price-table thead td {
  line-height: 13px;
  font-size: 12px;
  position: relative;
  padding: 5px;
}
#tsuri .set3 .row1 .price-table thead td::before {
  content: "";
  background: #b10505;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#tsuri .set3 .row1 .price-table tbody th {
  position: relative;
  line-height: 14px;
}
#tsuri .set3 .row1 .price-table tbody th::before {
  content: "";
  background: #313b57;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
}
#tsuri .set3 .row1 .price-table tbody th span {
  font-size: 11px;
}
#tsuri .set3 .row1 .price-table tbody td {
  line-height: 19px;
}
#tsuri .set3 .row1 .price-table tbody th,
#tsuri .set3 .row1 .price-table tbody td {
  font-size: 14px;
  padding: 5px 4px;
  height: 52px;
}
#tsuri .set3 .row1 .note {
  font-size: 14px;
  margin-top: 18px;
  line-height: 23px;
}
#tsuri .set3 .row2 {
  padding: 8vw 0 14vw;
  background: url(../img/index/tsuri_deco6.png) no-repeat center bottom/100%
    auto;
}
#tsuri .set3 .row2 .tel {
  background: #b10505;
  text-align: center;
  padding: 4.5vw 4% 2vw;
}
#tsuri .set3 .row2 .tel dd {
  font-size: 2.8vw;
  letter-spacing: 0.06em;
  margin-top: -0.5vw;
}
#menu {
  padding: 9vw 0 18.8vw;
  background: url(../img/index/menu_deco.png) no-repeat center bottom/100% auto;
}
#menu h2 {
  margin: 0 1%;
  position: relative;
}
#menu .photo {
  margin: -20.5vw -4vw -4vw;
}
#menu .btn-link {
  margin: 9vw 7% 7vw;
}
#rss {
  background:
    url(../img/index/rss_linex.png) repeat-x left top,
    url(../img/index/rss_linex.png) repeat-x left bottom rgba(192, 159, 81, 0.3);
  padding: 10vw 0 9vw;
}
#rss h2 {
  margin-left: -4vw;
  width: 58%;
}
#rss .feed {
  margin: 6vw 6% 0;
}
#rss .feed .row {
  display: flex;
}
#rss .feed .row .rss-img {
  width: 45%;
}
#rss .feed .row .rss-img span {
  width: 100% !important;
  height: 26vw !important;
}
#rss .feed .row .rss-detail {
  flex: 1;
  font-weight: 400;
  color: #270900;
  margin: 1vw 0 0 8.5vw;
  line-height: 17px;
}
#rss .feed .row .rss-detail dt {
  font-size: 12px;
  margin-bottom: 10px;
}
#rss .feed .row .rss-detail dd a {
  font-size: 13px;
  letter-spacing: 0.1em;
}
#rss .btn-blog {
  margin: -6.5vw 3.5vw 0 auto;
  width: 27.5%;
}
