section .btn-cus {
  margin-left: 2%;
  max-width: 96%;
}

footer .set2:before {
  display: none;
}

/*=============================================
******************* sec1  **********************
*=============================================*/
#sec1 {
  position: relative;
}
#sec1:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 61%;
  height: 90vw;
  background: url(../img/index/sec1_p1.jpg) no-repeat center top;
  background-size: cover;
  z-index: -1;
}
#sec1:after {
  content: '';
  position: absolute;
  bottom: -30vw;
  left: 50%;
  background: url(../img/menu/sec5_deco.png) no-repeat center top;
  width: 90%;
  height: 53vw;
  mix-blend-mode: screen;
  transform: translateX(-50%);
  background-size: contain;
}
#sec1 .ttl {
  background: #eedcb3;
  font-size: 5vw;
  margin-left: 61%;
  padding: 25vw 12.2% 2vw 2%;
  box-sizing: border-box;
  letter-spacing: 4px;
  transform: translateX(calc(-100% + 1px));
  position: relative;
}

#sec1 .ttl:before {
  content: '';
  position: absolute;
  top: 0;
  left: calc(100% - 1px);
  width: 200%;
  height: 100%;
  background: url(../img/shared/bd_bg.jpg) repeat center top;
}

#sec1 .ttl span {
  position: relative;
  display: inline-block;
  max-width: 27px;
}
#sec1 .ttl span:before {
  content: '';
  position: absolute;
  top: 39%;
  transform: translateY(-50%);
  right: -10px;
  width: 5px;
  height: 5px;
  border: 1px solid var(--main);
  border-radius: 50%;
}
#sec1 h2 {
  font-size: 8vw;
  color: #fff;
  margin-left: 26%;
  margin-top: -21vw;
  letter-spacing: 6px;
  position: relative;
  z-index: 2;
  position: relative;
}
#sec1 h2:before {
  content: '';
  position: absolute;
  bottom: -25vw;
  right: 11%;
  width: 73%;
  height: 55vw;
  background: url(../img/index/sec1_ttl.png) no-repeat center top;
  background-size: contain;
}
#sec1 h2:after {
  content: '';
  position: absolute;
  bottom: -9px;
  right: 32%;
  width: 200%;
  height: 1px;
  background: #fff;
}
#sec1 h2 span {
  display: block;
}
#sec1 .photo1 {
  margin: -15vw -76% 0;
  position: relative;
  z-index: -2;
}
#sec1 .photo1:before {
  content: '';
  position: absolute;
  bottom: 100%;
  left: 0;
  width: 100%;
  height: 22vw;
  background: url(../img/shared/wood_bg.jpg) repeat center top;
}
#sec1 .row .photo2 {
  margin: 0 -11% 7vw 10%;
}
#sec1 .row .txt {
  margin: 2vw 6%;
}

/*=============================================
******************* sec2  **********************
*=============================================*/
#sec2 {
  padding-bottom: 0;
  margin-top: 6vw;
  padding-top: 3.5vw;
  position: relative;
  z-index: 2;
}

#sec2 h2 {
  text-align: left;
  width: 48%;
  margin: 0 auto;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  align-items: start;
  position: relative;
  z-index: 2;
}
#sec2 h2 span {
  width: 28%;
  background: url(../img/shared/blue_bg.jpg) repeat center top;
  color: #fff;
  font-size: 6vw;
  line-height: 2;
  padding-top: 3vw;
  letter-spacing: 5px;
  padding-bottom: 2vw;
}

#sec2 .bg {
  clip-path: polygon(0 21vw, 100% 0, 100% 200vw, 0% 100%);
  background: url(../img/shared/white_bg.jpg) repeat center top;
  padding-bottom: 32vw;
  position: relative;
}
#sec2 .bg:before {
  content: '';
  position: absolute;
  bottom: 8vw;
  right: 0;
  width: 95%;
  height: 88vw;
  background: url(../img/index/sec2_deco2.png) no-repeat center top;
  background-size: contain;
}
#sec2 .bg:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 80%;
  height: 28vw;
  background: url(../img/shared/bd_bg.jpg) repeat center top;
  clip-path: polygon(0 0, 100% 62%, 100% 100%, 0% 100%);
}
#sec2 .photo {
  margin-top: -85vw;
  height: 137vw;
  position: relative;
  z-index: 2;
}
#sec2 .photo:before,
#sec2 .photo:after {
  content: '';
  position: absolute;
  top: 0;
  left: 7%;
  width: 1px;
  height: 100%;
  background: #fff;
  z-index: 2;
}
#sec2 .photo:after {
  left: auto;
  right: 7%;
}
#sec2 .photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#sec2 .txt {
  margin: 7vw 0 5vw;
}

/*=============================================
******************* sec3  **********************
*=============================================*/
#sec3 {
  margin-top: -22vw;
  padding-bottom: 17vw;
}
#sec3 .set1 {
  background: url(../img/index/sec3_bg_sp.jpg) no-repeat center top;
  color: #fff;
  padding-top: 101vw;
  background-size: cover;
  padding-bottom: 13vw;
}
#sec3 .set1 h2 {
  font-size: 7vw;
  margin-left: 1%;
  line-height: 2;
  letter-spacing: 3px;
}
#sec3 .set1 .txt {
  margin: 3vw 0px 6vw;
}
#sec3 .set1 .btn-cus a:before {
  background: url(../img/shared/btn_arrow2.png) no-repeat center top;
  background-size: contain;
}
#sec3 .set2 {
  position: relative;
}
#sec3 .set2:before {
  content: '';
  position: absolute;
  top: -4vw;
  right: -3%;
  width: 34%;
  height: 54vw;
  background: url(../img/index/sec3_deco.png) no-repeat center top;
  background-size: contain;
  z-index: 2;
}
#sec3 .set2 h3 {
  font-size: 6vw;
  color: #fff;
  margin-left: 18%;
  padding: 9vw 0 3vw 12%;
  position: relative;
  letter-spacing: 6px;
}
#sec3 .set2 h3:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 300%;
  height: 100%;
  background: url(../img/shared/blue_bg.jpg) repeat center top;
  z-index: -1;
}
#sec3 .set2 h3:after {
  content: '';
  position: absolute;
  top: 12vw;
  left: -7%;
  width: 80%;
  height: 10vw;
  background: url(../img/index/sec3_line.png) no-repeat center top;
  background-size: contain;
}
#sec3 .set2 h3 span {
  position: relative;
}
#sec3 .set2 h3 span:before {
  content: '';
  position: absolute;
  bottom: calc(100% + 8px);
  left: 42%;
  width: 5px;
  height: 5px;
  transform: translateX(-50%);
  border: 1px solid #fff;
  border-radius: 50%;
}
#sec3 .set2 .photo {
  margin: 9vw 9% 0 -7%;
  height: 63vw;
}
#sec3 .set2 .photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#sec3 .set2 .txt {
  margin: 6vw 0;
}

/*=============================================
******************* sec4  **********************
*=============================================*/
#sec4 {
  background: url(../img/shared/white_bg.jpg) repeat center top;
  position: relative;
  padding-top: 4vw;
  padding-bottom: 7vw;
}
#sec4:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 4vw;
  background: url(../img/shared/wood_bg.jpg) repeat center top;
}
#sec4 h2 {
  font-size: 7vw;
  margin: 11vw 0 7vw 20%;
  letter-spacing: 3px;
}
#sec4 h2 span {
  position: relative;
}
#sec4 h2 span:before {
  content: '';
  position: absolute;
  bottom: calc(100% + 8px);
  left: 42%;
  width: 5px;
  height: 5px;
  transform: translateX(-50%);
  border: 1px solid #000;
  border-radius: 50%;
}
#sec4 .photo {
  margin: 0 -15%;
  position: relative;
}
#sec4 .photo:before {
  content: '';
  position: absolute;
  top: -9vw;
  left: 46%;
  width: 10%;
  height: 15vw;
  background: url(../img/index/sec4_line.png) no-repeat center top;
  background-size: contain;
  z-index: 2;
}

/*=============================================
******************* sec5  **********************
*=============================================*/
#sec5 {
  background: url(../img/index/sec5_bg_sp.jpg) no-repeat center top;
  background-size: cover;
  padding-top: 44vw;
  padding-bottom: 8vw;
  color: #fff;
}
#sec5 .ttl {
  text-align: center;
  font-size: 5vw;
}
#sec5 h2 {
  text-align: center;
  font-size: 6vw;
  letter-spacing: 4px;
  margin-bottom: 7vw;
}
#sec5 .floormap {
  margin: 6vw 12% 0;
}

/*=============================================
******************* sec6  **********************
*=============================================*/
#sec6 {
  padding: 7vw 0;
}
#sec6 h2 {
  position: relative;
  color: #fff;
  font-size: 7vw;
  padding: 8vw 0 8vw 4%;
  line-height: 1.8;
  letter-spacing: 3px;
}
#sec6 h2:before {
  content: '';
  position: absolute;
  top: 0;
  right: 43%;
  width: 200%;
  height: 100%;
  background: url(../img/shared/blue_bg.jpg) repeat center top;
  z-index: -1;
}
#sec6 h2:after {
  content: '';
  position: absolute;
  top: 0;
  right: 28%;
  width: 39%;
  height: 35vw;
  background: url(../img/index/sec6_ttl.png) no-repeat center top;
  background-size: contain;
}
#sec6 .buttons {
  margin-top: 8vw;
}
#sec6 .buttons .btn-cus:nth-child(1) {
  margin-left: 7%;
}
#sec6 .buttons .btn-cus:nth-child(2) {
  margin-left: -2%;
  margin-top: 6vw;
}
#sec6 #rss {
  background: url(../img/shared/blue_bg.jpg) repeat center top;
  color: #fff;
  margin-top: 12vw;
  padding: 15vw 0 12vw;
}
#sec6 #rss h3 {
  text-align: center;
  font-size: 7vw;
  letter-spacing: 4px;
  margin-bottom: 5vw;
}
#sec6 #rss #feed dl {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  border-bottom: 1px solid;
  padding-bottom: 3vw;
  margin-bottom: 3vw;
}
#sec6 #rss #feed dl dt {
  width: 49%;
}
#sec6 #rss .button {
  width: 100%;
  margin-top: 7vw;
}
#sec6 #rss .button a {
  display: block;
  border: 1px solid;
  text-align: center;
  padding: 2vw 0;
  text-decoration: none;
}
#sec6 #rss .button a:hover {
  opacity: 0.8;
}

/*=============================================
******************* PC  **********************
*=============================================*/
@media screen and (min-width: 768px) {
  section .btn-cus {
    margin-left: 14px;
  }

  /*=============================================
  ******************* sec1  **********************
  *=============================================*/
  #sec1 {
    padding-bottom: 0;
    position: relative;
  }
  #sec1:before {
    width: calc(32% - 9px);
    height: 653px;
    min-height: 653px;
  }
  #sec1::after {
    width: 520px;
    height: 411px;
    bottom: -208px;
    z-index: 2;
  }
  #sec1 .wrap {
    position: static;
    max-width: 100%;
  }
  #sec1 h2 {
    font-size: 55px;
    margin: -144px 0 0 calc(32% - 240px);
    letter-spacing: 8px;
    display: inline-block;
  }
  #sec1 h2 small {
    font-size: 40px;
  }
  #sec1 h2 span {
    margin-left: 9px;
    letter-spacing: 11px;
    width: 42px;
    height: 315px;
  }
  #sec1 h2:after {
    bottom: -32px;
    right: 24px;
  }
  #sec1 h2:before {
    width: 332px;
    height: 376px;
    bottom: -183px;
    right: -94px;
  }
  #sec1 .ttl {
    font-size: 35px;
    padding: 201px 82px 15px 20px;
    letter-spacing: 8px;
    position: relative;
    margin-left: 0;
    left: calc(32% - 9px);
    transform: translateX(-100%);
  }
  #sec1 .ttl::before {
    display: none;
  }
  #sec1 .ttl span:before {
    width: 12px;
    height: 12px;
    box-sizing: border-box;
    right: -13px;
  }
  #sec1 .photo1 {
    right: 0;
    top: 140px;
    position: absolute;
    margin: 0;
    width: calc(68% + 9px);
    height: 513px;
    min-height: 513px;
  }
  #sec1 .photo1 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  #sec1 .photo1:before {
    display: none;
  }
  #sec1 .row {
    margin-top: 77px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
  }
  #sec1 .row .photo2 {
    margin: 0;
    width: 50%;
    height: 532px;
    min-height: 532px;
    position: relative;
  }
  #sec1 .row .photo2:before {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 500px;
    background: url(../img/shared/wood_bg.jpg) repeat center top;
  }
  #sec1 .row .photo2 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  #sec1 .row .txt {
    margin: 56px 0 0 70px;
    min-width: 436px;
  }

  /*=============================================
  ******************* sec2  **********************
  *=============================================*/
  #sec2 {
    margin-top: 48px;
    padding-top: 50px;
    position: relative;
  }

  #sec2 .wrap {
    max-width: 1030px;
  }
  #sec2 h2 {
    width: 293px;
  }
  #sec2 h2 span {
    font-size: 47px;
    width: 85px;
    line-height: 83px;
    padding: 20px 0 18px;
  }
  #sec2 h2 span small {
    font-size: 35px;
  }
  #sec2 .bg {
    position: relative;
    clip-path: polygon(0 250px, 100% 0, 100% 1177px, 0% 100%);
    margin-top: -626px;
    padding-bottom: 236px;
  }
  #sec2 .bg:before {
    width: 1057px;
    bottom: 118px;
    height: 982px;
  }
  #sec2 .bg:after {
    width: 50%;
    height: 200px;
    clip-path: polygon(0 0, 100% 46%, 100% 100%, 0% 100%);
  }
  #sec2 .photo {
    height: 962px;
    margin-top: 0;
  }
  #sec2 .photo:before,
  #sec2 .photo:after {
    display: none;
  }
  #sec2 .txt {
    text-align: center;
    margin: 43px 0 35px;
  }
  #sec2 .btn-cus {
    text-align: center;
  }
  #sec2 .btn-cus a {
    width: 343px;
    padding: 0;
  }

  /*=============================================
  ******************* sec3  **********************
  *=============================================*/
  #sec3 {
    padding-bottom: 114px;
    margin-top: -303px;
  }
  #sec3 .set1 {
    background: url(../img/index/sec3_bg.jpg) no-repeat center bottom -34px;
    background-size: cover;
    padding-top: 343px;
    padding-bottom: 103px;
  }
  #sec3 .set1 .wrap {
    max-width: 1080px;
  }
  #sec3 .set1 h2 {
    font-size: 47px;
    line-height: 83px;
    letter-spacing: 6px;
  }
  #sec3 .set1 h2 small {
    font-size: 35px;
  }
  #sec3 .set1 .txt {
    margin: 29px 0 32px 12px;
  }
  #sec3 .set2:before {
    width: 254px;
    height: 410px;
    top: -147px;
    right: calc(50% - 625px);
  }
  #sec3 .set2 h3 {
    font-size: 47px;
    padding: 66px 0px 20px 72px;
    margin-left: auto;
    width: 360px;
  }
  #sec3 .set2 h3 span:before {
    width: 9px;
    height: 9px;
  }
  #sec3 .set2 h3 small {
    font-size: 35px;
  }
  #sec3 .set2 h3:after {
    width: 439px;
    height: 71px;
    top: 78px;
    left: -32px;
  }
  #sec3 .set2 .row {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
  }
  #sec3 .set2 .row .photo {
    margin: -58px 70px 0 -50px;
    height: 466px;
  }
  #sec3 .set2 .row .txt {
    margin: 51px 0 28px;
  }
  #sec3 .set2 .row .btn-cus {
    margin-left: 2px;
  }

  /*=============================================
  ******************* sec4  **********************
  *=============================================*/
  #sec4 {
    padding-top: 22px;
    padding-bottom: 0;
  }
  #sec4:before {
    height: 22px;
  }
  #sec4 .wrap {
    max-width: 100%;
  }
  #sec4 .row {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: row-reverse;
  }
  #sec4 .row .photo {
    margin: 0;
    width: calc(58% - 5px);
    height: 489px;
    min-height: 489px;
  }
  #sec4 .row .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  #sec4 .row .photo:before {
    width: 102px;
    height: 89px;
    left: 67px;
    top: -67px;
  }
  #sec4 .row .content {
    width: 442px;
    min-width: 442px;
  }
  #sec4 .row .content h2 {
    font-size: 47px;
    margin: 118px 0 50px;
    letter-spacing: 6px;
  }
  #sec4 .row .content h2 span:before {
    width: 12px;
    box-sizing: border-box;
    height: 12px;
    left: 48%;
    bottom: 105%;
  }
  #sec4 .row .content .txt {
    margin-left: 3px;
  }

  /*=============================================
  ******************* sec5  **********************
  *=============================================*/
  #sec5 {
    background: url(../img/index/sec5_bg.jpg) no-repeat center center;
    background-size: cover;
    padding: 205px 0 96px;
  }
  #sec5 .wrap {
    max-width: 1072px;
  }
  #sec5 .content {
    margin-left: auto;
    width: 500px;
  }
  #sec5 .ttl {
    font-size: 33px;
    text-align: left;
    letter-spacing: 4px;
  }
  #sec5 h2 {
    font-size: 47px;
    text-align: left;
    margin: 14px 0 40px -4px;
    letter-spacing: 6px;
  }
  #sec5 .floormap {
    margin: -201px 0 0 12px;
  }

  /*=============================================
  ******************* sec6  **********************
  *=============================================*/
  #sec6 {
    padding: 70px 0;
  }
  #sec6 .row {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: start;
  }
  #sec6 .row h2 {
    font-size: 47px;
    padding: 57px 58px 60px 50px;
    display: inline-block;
    letter-spacing: 6px;
  }
  #sec6 .row h2:before {
    right: 0;
    width: 2000px;
  }
  #sec6 .row h2:after {
    width: 190px;
    height: 243px;
    right: -68px;
    top: 3px;
  }
  #sec6 .row .buttons {
    margin: 76px 0 0 77px;
  }
  #sec6 .row .buttons .btn-cus a {
    padding: 0;
    width: 292px;
  }
  #sec6 .row .buttons .btn-cus:nth-child(1) {
    margin-left: 0;
  }
  #sec6 .row .buttons .btn-cus:nth-child(2) {
    margin-top: 33px;
    margin-left: 223px;
  }
  #sec6 #rss {
    background: none;
    position: relative;
    max-width: 1000px;
    margin: 50px auto 0;
    padding: 82px 0 81px 203px;
    box-sizing: border-box;
  }
  #sec6 #rss:before {
    content: '';
    position: absolute;
    top: 0;
    left: 73px;
    width: 2000px;
    height: 100%;
    background: url(../img/shared/blue_bg.jpg) repeat center top;
  }
  #sec6 #rss .wrap {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
  }
  #sec6 #rss h3 {
    font-size: 36px;
    margin: 16px 50px 0 0;
    letter-spacing: 7px;
  }
  #sec6 #rss .button {
    position: absolute;
    width: 98px;
    top: 73px;
    margin-top: 0;
  }
  #sec6 #rss .button a {
    padding: 0;
    line-height: 30px;
  }
  #sec6 #rss #feed dl {
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: none;
    position: relative;
  }
  #sec6 #rss #feed dl:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: -13px;
    width: 2000px;
    height: 1px;
    background: #fff;
  }
  #sec6 #rss #feed dl dt {
    width: 112px;
  }
}
/*=============================================
******************* fis respon  ***************
*=============================================*/
@media (min-width: 999px) and (max-width: 1100px) {
  #sec4 .row .content {
    margin-left: 20px;
  }

  #sec5 .floormap {
    width: 458px;
  }

  #sec6 #rss {
    padding-left: 180px;
  }

  #sec6 .row .buttons .btn-cus:nth-child(2) {
    margin-left: 180px;
  }
}
@media (min-width: 999px) and (max-width: 1300px) {
  #sec2 .bg:before {
    bottom: 50px;
  }
}
@media screen and (min-width: 1500px) {
  #sec2 .bg:before {
    bottom: 50px;
  }
}

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