body {
  letter-spacing: 0.12em;
  line-height: 30px;
}

.txt {
  font-weight: 500;
}

.tc {
  text-align: center;
}

.tl {
  text-align: left;
}

.tr {
  text-align: right;
}

.db {
  display: block;
}

.disf {
  display: flex;
}

.disf-between {
  justify-content: space-between;
}

.disf-j-center {
  justify-content: center;
}

.disf-a-center {
  align-items: center;
}

.slick-slider .slick-arrow {
  font-size: 0;
  line-height: 0;
  position: absolute;
  border: none;
  outline: none;
  border-radius: 50%;
  cursor: pointer;
  background: url("../img/event/prev.png");
  width: 49px;
  height: 49px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 2;
}

.slick-slider .slick-arrow:hover {
  opacity: 0.8;
}

.slick-slider .slick-arrow.slick-prev {
  left: 0;
}

.slick-slider .slick-arrow.slick-next {
  right: 0;
  transform: rotate(180deg);
}

#key {
  background: url("../img/event/key.jpg") no-repeat center/cover;
}

#sec1 .wrap {
  padding-top: 106px;
}

#sec1 .wrap:before {
  content: "";
  position: absolute;
  top: 0px;
  left: 368px;
  background-image: url(../img/event/s1_deco.png);
  width: 422px;
  height: 258px;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: -1;
}

#sec1 .col-l {
  position: relative;
}

#sec1 .col-l:before {
  content: "";
  position: absolute;
  left: -92px;
  bottom: -183px;
  background-image: url(../img/event/s1_deco2.png);
  width: 353px;
  height: 255px;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: -1;
}

#sec1 .col-r {
  width: 484px;
}

#sec1 .s1-img1 {
  margin-left: -250px;
}

#sec1 .s1-img2 {
  margin-right: -250px;
}

#sec1 .txt {
  margin: 39px 0px 0px 5px;
  line-height: 30px;
}

#sec2 {
  margin-top: 102px;
}

#sec2 .inner {
  margin-top: -285px;
  padding: 331px 0px 85px;
  background-image: url(../img/event/s2_bg.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

#sec2 .col-l {
  width: 600px;
  margin-left: -10px;
}

#sec2 .txt {
  color: #fff;
  margin-top: 31px;
}

#sec2 .s2-tel {
  margin: 89px -43px 0px 0px;
}

#sec2 .s2-btn {
  margin-top: 53px;
}

#sec3 {
  position: relative;
  margin-top: 208px;
  padding: 91px 0px 144px;
  background: url(../img/event/s3_deco1.png), url(../img/shared/bg-1.jpg);
  background-position: center top;
  background-repeat: no-repeat, repeat;
}

#sec3:before {
  content: "";
  position: absolute;
  top: -120px;
  left: 0px;
  right: 0px;
  background-image: url(../img/event/s3_bg.png);
  height: 120px;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
}

#sec3 .wrap:before {
  content: "";
  position: absolute;
  right: 45px;
  bottom: -191px;
  background-image: url(../img/event/s3_deco3.png);
  width: 333px;
  height: 302px;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}

#sec3 .note {
  margin: 9px 0px 0px 150px;
}

#sec3 .s3-img {
  position: absolute;
  z-index: 0;
}

#sec3 .s3-img:before {
  content: "";
  position: absolute;
  top: 10px;
  left: 10px;
  background-image: url(../img/shared/body.jpg);
  background-position: center top;
  background-repeat: repeat;
  z-index: -1;
  width: 100%;
  height: 100%;
}

#sec3 [class^=inner] {
  position: relative;
}

#sec3 .col-txt {
  width: 424px;
  position: relative;
  z-index: 1;
}

#sec3 .box {
  background-image: url(../img/event/bgbox.png);
  background-position: center top;
  background-repeat: repeat;
  color: #fff;
  box-sizing: border-box;
}

#sec3 h3 {
  font-size: 18px;
  letter-spacing: 0.14em;
  line-height: 1.94;
  font-weight: 600;
}

#sec3 .inner-box {
  margin-top: 15px;
}

#sec3 .list {
  font-size: 16px;
  letter-spacing: 0.14em;
  font-weight: 600;
  width: 185px;
}

#sec3 .list li {
  border-bottom: 1px dotted #fff;
  padding: 5px 0px;
  line-height: 1.375;
}

#sec3 .price dd {
  font-size: 30px;
  letter-spacing: 0.04em;
  margin-top: 18px;
}

#sec3 .price dd small {
  font-size: 24px;
}

#sec3 .inner1 {
  margin-top: 149px;
}

#sec3 .inner1 .s3-img {
  top: -80px;
  right: -53px;
}

#sec3 .inner1 .col-txt {
  margin-left: -14px;
}

#sec3 .inner1 .price dd {
  margin-top: 18px;
}

#sec3 .inner1 .box {
  margin-top: 29px;
  padding: 41px 18px 53px;
}

#sec3 .inner2 {
  margin-top: 172px;
}

#sec3 .inner2:before {
  content: "";
  position: absolute;
  top: -265px;
  right: -96px;
  background-image: url(../img/event/s3_deco2.png);
  width: 506px;
  height: 315px;
  background-position: center center;
  background-repeat: no-repeat;
}

#sec3 .inner2 .s3-img {
  top: -81px;
  left: -14px;
}

#sec3 .inner2 .col-txt {
  margin: 0px -50px 0px auto;
}

#sec3 .inner2 .box {
  margin-top: 29px;
  padding: 41px 18px 53px;
}

#sec3 .inner3 {
  margin: 93px 29px 0px;
}

#sec3 .inner3 .price {
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
  padding-bottom: 26px;
}

#sec3 .inner3 .price dd {
  font-size: 25.5px;
  margin-top: 11px;
}

#sec3 .inner3 .price dd small {
  font-size: 20.4px;
}

#sec3 .inner3 h3 {
  margin-top: 27px;
}

#sec3 .inner3 .inner-box {
  margin-top: 12px;
}

#sec3 .inner3 .box {
  width: 451px;
  padding: 46px 35px 54px;
}

#sec3 .inner3 .txt-box {
  margin-top: 62px;
}

#sec4 {
  margin-top: 113px;
}

#sec4 .wrap:before {
  content: "";
  position: absolute;
  right: -48px;
  bottom: -87px;
  background-image: url(../img/event/s4_deco.png);
  width: 414px;
  height: 250px;
  background-position: center center;
  background-repeat: no-repeat;
}

#sec4 .txt {
  margin-top: 35px;
}

#sec4 .txt li+li {
  margin-top: 30px;
}

#sec4 .box {
  background-image: url(../img/event/s4_bgbox.png);
  background-position: center top;
  background-repeat: no-repeat;
  box-sizing: border-box;
  padding: 32px 31px 26px 0px;
  margin: 75px -2px 0px 0px;
  width: 460px;
  position: relative;
  z-index: 2;
}

#sec4 .txt2 {
  margin-top: 16px;
}

#sec4 .inner2 {
  position: relative;
  margin-top: -7px;
}

#sec4 .s4-img1 {
  position: absolute;
  top: -58px;
  right: -54px;
  z-index: 1;
}

#sec4 .s4-img1:before {
  content: "";
  position: absolute;
  left: -86px;
  bottom: 93px;
  background-image: url(../img/event/s4_line.png);
  width: 154px;
  height: 65px;
  background-position: center center;
  background-repeat: no-repeat;
  z-index: 1;
}

#sec4 .price {
  margin: -74px 0px 0px 0px;
}

#sec4 .price dd {
  font-size: 25.5px;
  letter-spacing: 0.04em;
  margin: 9px 0px 0px 9px;
}

#sec4 .price dd small {
  font-size: 20.4px;
}

#sec4 .s4-img-slide {
  width: 391px;
  margin-left: 12px;
}

#sec4 .s4-slider {
  position: relative;
}

#sec4 .slick-arrow {
  bottom: -35px;
}

#sec4 .slick-prev {
  left: 242px;
}

#sec4 .slick-next {
  right: 238px;
}

#sec4 .slider-nav {
  width: 444px;
  margin: -37px auto 0px;
  position: relative;
  z-index: 1;
}

#sec4 .slider-nav .slick-track {
  transform: translate3d(0px, 0px, 0px) !important;
}

#sec4 .slider-nav .slick-slide.slick-current.slick-active:before {
  opacity: 0;
}

#sec4 .slider-nav .slick-slide {
  width: 105px !important;
  position: relative;
  cursor: pointer;
}

#sec4 .slider-nav .slick-slide:hover {
  opacity: 0.8;
}

#sec4 .slider-nav .slick-slide:before {
  content: "";
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  background: rgba(0, 0, 0, 0.55);
  z-index: 1;
}

#sec4 .slider-nav .slick-slide+.slick-slide {
  margin-left: 8px;
}

#sec4 .inner3 {
  margin: 109px -22px 0px -25px;
  padding: 56px 0px 46px;
  position: relative;
}

#sec4 .inner3:before {
  content: "";
  position: absolute;
  top: 0px;
  left: -48px;
  right: -48px;
  background-image: url(../img/shared/line.jpg);
  background-position: center top;
  background-repeat: repeat-x;
  height: 3px;
}

#sec4 .inner3:after {
  content: "";
  position: absolute;
  bottom: 0px;
  left: -48px;
  right: -48px;
  background-image: url(../img/shared/line.jpg);
  background-position: center top;
  background-repeat: repeat-x;
  height: 3px;
}

#sec4 .inner3 .col+.col {
  margin-left: 33px;
}

#sec4 .inner3 .col {
  width: 327px;
}

#sec4 .inner3 h4 {
  margin-top: -13px;
  position: relative;
  z-index: 1;
}

#sec4 .inner3 .col:nth-child(3) h4 {
  margin-top: -50px;
}

#sec4 .inner3 .list-price {
  font-size: 20px;
  letter-spacing: 0.04em;
  line-height: 1.79;
  margin-top: 13px;
}

#sec4 .inner3 .list-price span {
  font-size: 24.16px;
}

#sec4 .inner3 .list-price small {
  font-size: 19.32px;
}

#sec5 {
  margin-top: 134px;
  padding-bottom: 121px;
  background-image: url(../img/shared/bg-1.jpg);
  background-position: center top;
  background-repeat: repeat;
}

#sec5 .wrap {
  padding-top: 97px;
}

#sec5 .wrap:before {
  content: "";
  position: absolute;
  top: 0px;
  left: 120px;
  background-image: url(../img/event/s5_deco.png);
  width: 446px;
  height: 302px;
  background-position: center center;
  background-repeat: no-repeat;
}

#sec5 .wrap:after {
  content: "";
  position: absolute;
  right: -18px;
  bottom: 132px;
  background-image: url(../img/event/s5_deco2.png);
  width: 316px;
  height: 53px;
  background-position: center center;
  background-repeat: no-repeat;
}

#sec5 .img-border {
  position: relative;
  z-index: 0;
}

#sec5 .img-border:before {
  content: "";
  position: absolute;
  top: 10px;
  left: 10px;
  background-image: url(../img/shared/body.jpg);
  background-position: center top;
  background-repeat: repeat;
  z-index: -1;
  width: 100%;
  height: 100%;
}

#sec5 .price {
  font-size: 24px;
  letter-spacing: 0.04em;
  line-height: 1.66;
}

#sec5 .price span {
  font-size: 30px;
}

#sec5 .txt {
  border-top: 1px dotted #4b4c3e;
}

#sec5 .inner1 {
  margin-top: 86px;
}

#sec5 .inner1 .s5-img {
  width: 499px;
  margin-right: 5px;
}

#sec5 .inner1 .col-txt {
  margin: 85px 0px 0px 24px;
}

#sec5 .inner1 .price dd {
  margin: -5px 0px 0px 20px;
}

#sec5 .inner1 .note {
  margin: 15px 0px 0px 5px;
}

#sec5 .inner1 .txt {
  margin: 26px 0px 0px 5px;
  padding-top: 26px;
}

#sec5 .inner2 {
  margin-top: 82px;
}

#sec5 .inner2 .row {
  align-items: flex-start;
}

#sec5 .inner2 .s5-slider-for {
  width: 576px;
  margin: 0px 0px 0px -10px;
}

#sec5 .inner2 .box {
  background-image: url(../img/event/s5_bgbox.png);
  background-position: center top;
  background-repeat: no-repeat;
  width: 502px;
  height: 190px;
  box-sizing: border-box;
  margin: -77px 0px 0px 350px;
  padding: 62px 42px 26px 42px;
  position: relative;
  z-index: 1;
}

#sec5 .inner2 h3 {
  font-size: 16px;
  letter-spacing: 0.14em;
  line-height: 2.14;
  font-weight: 600;
  color: #fff;
}

#sec5 .inner2 .s5-slider-nav {
  font-size: 20px;
  letter-spacing: 0.14em;
  font-weight: 600;
  line-height: 1.75;
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  padding-top: 10px;
}

#sec5 .inner2 .s5-slider-nav .slick-track {
  transform: translate3d(0px, 0px, 0px) !important;
}

#sec5 .inner2 .s5-slider-nav .slick-slide {
  color: rgba(255, 255, 255, 0.5);
  width: auto !important;
  cursor: pointer;
  position: relative;
  padding-bottom: 10px;
}

#sec5 .inner2 .s5-slider-nav .slick-slide:hover {
  opacity: 0.8;
}

#sec5 .inner2 .s5-slider-nav .slick-slide+.slick-slide {
  margin-left: 39px;
}

#sec5 .inner2 .s5-slider-nav .slick-slide:last-of-type {
  margin-left: 22px;
}

#sec5 .inner2 .s5-slider-nav .slick-slide.slick-current.slick-active {
  color: rgb(255, 255, 255);
}

#sec5 .inner2 .s5-slider-nav .slick-slide.slick-current.slick-active:before {
  content: "";
  position: absolute;
  left: 0px;
  right: 0px;
  bottom: 0px;
  background-image: url(../img/event/arrow_up.png);
  width: 9px;
  height: 6px;
  background-position: center center;
  background-repeat: no-repeat;
  margin: 0px auto;
}

#sec5 .inner2 .col-txt {
  width: 410px;
  margin: 60px 10px 0px 0px;
}

#sec5 .inner2 .price {
  margin-left: 47px;
}

#sec5 .inner2 .price dd {
  margin: 2px 0px 0px 5px;
}

#sec5 .inner2 .note {
  margin: 13px 0px 0px 54px;
}

#sec5 .inner2 .txt {
  margin: 26px 0px 0px 0px;
  padding: 26px 0px 0px 54px;
}

#sec5 .inner3 {
  margin: 114px 6px 0px -10px;
}

#sec5 .inner3 [class^=col] {
  width: 470px;
  position: relative;
}

#sec5 .inner3 .s5-sub-img {
  position: absolute;
  top: 206px;
  right: -53px;
}

#sec5 .inner3 h4 {
  position: absolute;
  top: 362px;
  right: 7px;
}

#sec5 .inner3 h4 span {
  display: inline-block;
  background-image: url(../img/event/bg_green.jpg);
  background-position: center top;
  background-repeat: repeat;
  box-sizing: border-box;
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.14em;
  font-weight: 600;
  line-height: 1.5;
  padding: 7px 3.5px;
}

#sec5 .inner3 h4 span~span {
  margin-right: 4px;
}

#sec5 .inner3 .price {
  margin-top: 45px;
}

#sec5 .inner3 .price dd {
  margin-top: 15px;
}

#sec5 .inner3 .txt {
  margin: 14px 30px 0px;
  padding-top: 25px;
}

#sec5 .s5-btn {
  margin-top: 35px;
}

#sec6 {
  margin-top: 94px;
  margin-bottom: 82px;
  padding: 59px 0px 59px;
  box-sizing: border-box;
  border: 4px solid #2a3c32;
  background: rgba(255, 255, 255, 0.5);
  width: 760px;
}

#sec6 .txt {
  margin-top: 22px;
  line-height: 2.35;
}

#sec6 .txt li+li {
  margin-top: 34px;
}

#sec6 .s6-tel {
  margin-top: 23px;
}

.remodal-faq {
  padding: 64px 60px 75px;
  background-image: url(../img/shared/bg-1.jpg);
  background-position: center top;
  background-repeat: repeat;
  max-width: 1113px;
}

.remodal-faq .inner {
  margin-top: 37px;
  padding: 25px 40px 45px;
  background: url(../img/shared/line.jpg), url(../img/shared/line.jpg);
  background-position: center top, center bottom;
  background-repeat: repeat-x;
}

.remodal-faq dl {
  border-bottom: 1px dotted #38372d;
  text-align: left;
  padding: 27px 0px 27px;
  font-weight: 500;
}

.remodal-faq dl dt {
  font-size: 18px;
  line-height: 1.66;
  align-items: flex-end;
}

.remodal-faq dl dt span {
  margin-right: 8px;
}

.remodal-faq dl dd {
  line-height: 2.14;
  margin: 12px 0px 0px 56px;
}

.remodal-faq .remodal-cancel {
  margin-top: 60px;
}