nav .nav_list01 li a.exterior::after, nav .nav_list01 li span.exterior::after {
  content: "";
  display: block;
  width: 110%;
  height: 2px;
  background-color: #f5f3d6;
  position: absolute;
  bottom: -30%;
  left: -5%;
}

header #sp_menu nav .nav_list01 li a.exterior::after, header #sp_menu nav .nav_list01 li span.exterior::after {
  content: "";
  display: block;
  width: 80%;
  height: 2px;
  background-color: #f5f3d6;
  position: absolute;
  bottom: 14%;
  left: 10%;
}

@media screen and (max-width: 768px) {
  .bottom nav .nav_list01 li a.exterior::after, .bottom nav .nav_list01 li span.exterior::after {
    width: 80%;
    height: 2px;
    bottom: 14%;
    left: 10%;
  }
}

.kakko {
  display: inline-block;
  margin-left: -0.6em;
}
@media screen and (max-width: 768px) {
  .kakko {
    margin-left: 0;
  }
}

.sub_txt {
  font-size: 10px;
  line-height: 1.5em;
  color: #fff;
  position: absolute;
  right: 0.7em;
  bottom: 0.5em;
  text-shadow: 0 0 8px rgba(0, 0, 0, 0.8);
}
@media screen and (max-width: 1180px) {
  .sub_txt {
    font-size: 0.8vw;
  }
}
@media screen and (max-width: 768px) {
  .sub_txt {
    font-size: 2.4vw;
  }
}

.bg01 {
  background-color: #000;
}

.place_img {
  position: relative;
}

.wrap02 {
  max-width: 1024px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1180px) {
  .wrap02 {
    max-width: none;
    width: 86.8%;
  }
}
@media screen and (max-width: 768px) {
  .wrap02 {
    width: 86.7%;
  }
}

#mv {
  position: relative;
}

.head_contents .wrap02 {
  padding: 110px 0 140px;
}
@media screen and (max-width: 1180px) {
  .head_contents .wrap02 {
    padding: 9.3vw 0 11.9vw;
  }
}
@media screen and (max-width: 768px) {
  .head_contents .wrap02 {
    padding: 14vw 0 16.7vw;
  }
}
.head_contents .txt01 {
  font-size: 17px;
  line-height: 2.5em;
  text-align: center;
  margin-top: 40px;
  color: #fff;
}
@media screen and (max-width: 1180px) {
  .head_contents .txt01 {
    font-size: 1.4vw;
    margin-top: 3.4vw;
  }
}
@media screen and (max-width: 768px) {
  .head_contents .txt01 {
    font-size: 3.3vw;
    line-height: 2.4em;
    text-align: left;
    margin-top: 5vw;
  }
}
.head_contents .approach_box h2 {
  text-align: center;
}
.head_contents .approach_box h2 img {
  display: inline-block;
  width: auto;
  height: 21px;
}
@media screen and (max-width: 1180px) {
  .head_contents .approach_box h2 img {
    height: 1.8vw;
  }
}
@media screen and (max-width: 768px) {
  .head_contents .approach_box h2 img {
    height: 12.3vw;
  }
}
.head_contents .lounge_box {
  margin-top: 140px;
}
@media screen and (max-width: 1180px) {
  .head_contents .lounge_box {
    margin-top: 11.9vw;
  }
}
@media screen and (max-width: 768px) {
  .head_contents .lounge_box {
    margin-top: 12.7vw;
  }
}
.head_contents .lounge_box .img_box01 {
  position: relative;
  margin-bottom: 80px;
}
@media screen and (max-width: 1180px) {
  .head_contents .lounge_box .img_box01 {
    margin-bottom: 6.8vw;
  }
}
@media screen and (max-width: 768px) {
  .head_contents .lounge_box .img_box01 {
    margin-bottom: 8vw;
  }
}
.head_contents .lounge_box h2 {
  text-align: center;
}
.head_contents .lounge_box h2 img {
  display: inline-block;
  width: auto;
  height: 21px;
}
@media screen and (max-width: 1180px) {
  .head_contents .lounge_box h2 img {
    height: 1.8vw;
  }
}
@media screen and (max-width: 768px) {
  .head_contents .lounge_box h2 img {
    height: 4vw;
  }
}

#facade {
  background-image: url(../images/bigpho02_pc.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center bottom;
  position: relative;
}
@media screen and (max-width: 768px) {
  #facade {
    background-image: url(../images/bigpho02_sp.jpg);
  }
}
#facade .wrap02 {
  padding-top: 120px;
  padding-bottom: 88.9vw;
}
@media screen and (max-width: 1180px) {
  #facade .wrap02 {
    padding-top: 10.2vw;
  }
}
@media screen and (max-width: 768px) {
  #facade .wrap02 {
    padding-top: 8vw;
    padding-bottom: 114.7vw;
  }
}
#facade .txt_box01 {
  width: 580px;
  margin-left: auto;
  margin-right: 0;
}
@media screen and (max-width: 1180px) {
  #facade .txt_box01 {
    width: 49.2vw;
  }
}
@media screen and (max-width: 768px) {
  #facade .txt_box01 {
    width: 100%;
  }
}
#facade .txt_box01 .txt01 {
  font-size: 23px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1180px) {
  #facade .txt_box01 .txt01 {
    font-size: 1.9vw;
  }
}
@media screen and (max-width: 768px) {
  #facade .txt_box01 .txt01 {
    font-size: 4.4vw;
    line-height: 1.8em;
    text-shadow: 0px 0px 0.9vw rgba(0, 0, 0, 0.8);
  }
}
#facade .txt_box01 .txt02 {
  font-size: 18px;
  color: #fff;
  letter-spacing: 0.05em;
  margin-top: 40px;
}
@media screen and (max-width: 1180px) {
  #facade .txt_box01 .txt02 {
    font-size: 1.5vw;
    margin-top: 3.4vw;
  }
}
@media screen and (max-width: 768px) {
  #facade .txt_box01 .txt02 {
    margin-top: 3vw;
    font-size: 3.3vw;
    text-shadow: 0px 0px 0.9vw rgba(0, 0, 0, 0.8);
  }
}
#facade .txt_box01 .txt03 {
  font-size: 16px;
  line-height: 2.75em;
  color: #fff;
  letter-spacing: 0.05em;
  text-shadow: 0px 0px 4px rgba(0, 0, 0, 0.6);
  margin-top: 0.5em;
}
@media screen and (max-width: 1180px) {
  #facade .txt_box01 .txt03 {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 768px) {
  #facade .txt_box01 .txt03 {
    font-size: 3.3vw;
    line-height: 1.9em;
    text-shadow: 0px 0px 0.9vw rgba(0, 0, 0, 0.8);
  }
}

#fortec {
  padding-top: 80px;
  padding-bottom: 110px;
}
@media screen and (max-width: 1180px) {
  #fortec {
    padding-top: 6.8vw;
    padding-bottom: 9.3vw;
  }
}
@media screen and (max-width: 768px) {
  #fortec {
    padding-top: 11.7vw;
    padding-bottom: 16vw;
  }
}
#fortec .wrap02 {
  background-color: #2a2103;
  padding-top: 40px;
  padding-bottom: 30px;
}
@media screen and (max-width: 1180px) {
  #fortec .wrap02 {
    padding-top: 3.4vw;
    padding-bottom: 2.5vw;
  }
}
@media screen and (max-width: 768px) {
  #fortec .wrap02 {
    padding-top: 7.3vw;
    padding-bottom: 9.3vw;
  }
}
#fortec h2 {
  width: 93.8%;
  border-bottom: 1px solid #fff;
  font-size: 22px;
  font-weight: 500;
  color: #fff;
  padding-bottom: 0.3em;
  padding-left: 40px;
}
@media screen and (max-width: 1180px) {
  #fortec h2 {
    font-size: 1.9vw;
    padding-left: 3.4vw;
  }
}
@media screen and (max-width: 768px) {
  #fortec h2 {
    font-size: 4.1vw;
    width: 93.1%;
    padding-left: 5.3vw;
  }
}
#fortec .f_content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  #fortec .f_content {
    display: block;
  }
}
#fortec .f_content .txt_box01 {
  width: 66.4%;
  padding-left: 40px;
  padding-top: 60px;
}
@media screen and (max-width: 1180px) {
  #fortec .f_content .txt_box01 {
    padding-left: 3.4vw;
    padding-top: 5.1vw;
  }
}
@media screen and (max-width: 768px) {
  #fortec .f_content .txt_box01 {
    width: 100%;
    padding-left: 5.3vw;
    padding-right: 5.3vw;
    padding-top: 5.3vw;
  }
}
#fortec .f_content .txt_box01 .txt01 {
  font-size: 18px;
  color: #fff;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1180px) {
  #fortec .f_content .txt_box01 .txt01 {
    font-size: 1.5vw;
  }
}
@media screen and (max-width: 768px) {
  #fortec .f_content .txt_box01 .txt01 {
    font-size: 3.9vw;
  }
}
#fortec .f_content .txt_box01 .txt02 {
  font-size: 14px;
  line-height: 2.35em;
  color: #fff;
  margin-top: 25px;
}
@media screen and (max-width: 1180px) {
  #fortec .f_content .txt_box01 .txt02 {
    font-size: 1.2vw;
    margin-top: 2.1vw;
  }
}
@media screen and (max-width: 768px) {
  #fortec .f_content .txt_box01 .txt02 {
    font-size: 3.2vw;
    margin-top: 3vw;
  }
}
#fortec .f_content .img_box01 {
  width: 27.3%;
  margin-right: 6.2%;
  padding-top: 25px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 1180px) {
  #fortec .f_content .img_box01 {
    padding-top: 2.1vw;
  }
}
@media screen and (max-width: 768px) {
  #fortec .f_content .img_box01 {
    width: 100%;
    padding-top: 6vw;
    padding-left: 5.3vw;
    padding-right: 5.3vw;
  }
}
#fortec .f_content .img_box01 .logo {
  width: 63.3%;
  margin-bottom: 20px;
  margin-right: auto;
  margin-left: auto;
}
@media screen and (max-width: 1180px) {
  #fortec .f_content .img_box01 .logo {
    margin-bottom: 1.7vw;
  }
}
@media screen and (max-width: 768px) {
  #fortec .f_content .img_box01 .logo {
    width: 42.1vw;
    margin-bottom: 5.7vw;
  }
}
#fortec .f_content .img_box01 .img_block {
  width: 47.1%;
}
#fortec .f_content .img_box01 .img_block .i_txt01 {
  font-size: 16px;
  color: #fff;
  margin-top: 0.3em;
}
@media screen and (max-width: 1180px) {
  #fortec .f_content .img_box01 .img_block .i_txt01 {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 768px) {
  #fortec .f_content .img_box01 .img_block .i_txt01 {
    font-size: 3.6vw;
  }
}
#fortec .f_content .img_box01 .img_block .i_txt02 {
  font-size: 11px;
  color: #fff;
  margin-top: 0.2em;
}
@media screen and (max-width: 1180px) {
  #fortec .f_content .img_box01 .img_block .i_txt02 {
    font-size: 0.9vw;
  }
}
@media screen and (max-width: 768px) {
  #fortec .f_content .img_box01 .img_block .i_txt02 {
    font-size: 2.4vw;
  }
}

#map {
  background-image: url(../images/map_bg_pc.svg);
  background-repeat: repeat-x;
  background-size: auto 966px;
  background-position: center top;
}
@media screen and (max-width: 1180px) {
  #map {
    background-size: auto 81.9vw;
  }
}
@media screen and (max-width: 768px) {
  #map {
    background-image: url(../images/map_bg_sp.svg);
    background-size: 100% auto;
  }
}
#map .wrap02 {
  padding-top: 80px;
}
@media screen and (max-width: 1180px) {
  #map .wrap02 {
    padding-top: 6.8vw;
  }
}
@media screen and (max-width: 768px) {
  #map .wrap02 {
    width: 100%;
    padding-top: 6.7vw;
  }
}
#map h2 {
  width: 283px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1180px) {
  #map h2 {
    width: 24vw;
  }
}
@media screen and (max-width: 768px) {
  #map h2 {
    width: 49.1%;
  }
}
#map .map_img {
  margin-top: 50px;
}
@media screen and (max-width: 1180px) {
  #map .map_img {
    margin-top: 4.2vw;
  }
}
@media screen and (max-width: 768px) {
  #map .map_img {
    margin-top: 4vw;
  }
}
#map .txt_box01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 80px;
}
@media screen and (max-width: 1180px) {
  #map .txt_box01 {
    margin-top: 6.8vw;
  }
}
@media screen and (max-width: 768px) {
  #map .txt_box01 {
    display: block;
    width: 86.7%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 6.7vw;
  }
}
#map .txt_box01 .txt_block {
  width: 30.9%;
}
@media screen and (max-width: 768px) {
  #map .txt_box01 .txt_block {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #map .txt_box01 .txt_block:nth-child(n+2) {
    margin-top: 8vw;
  }
}
#map .txt_box01 .txt_block:nth-child(n+4) {
  margin-top: 40px;
}
@media screen and (max-width: 1180px) {
  #map .txt_box01 .txt_block:nth-child(n+4) {
    margin-top: 3.4vw;
  }
}
@media screen and (max-width: 768px) {
  #map .txt_box01 .txt_block:nth-child(n+4) {
    margin-top: 8vw;
  }
}
#map .txt_box01 .txt_block .txt01 {
  font-size: 18px;
  font-weight: normal;
  color: #be9b5d;
}
@media screen and (max-width: 1180px) {
  #map .txt_box01 .txt_block .txt01 {
    font-size: 1.5vw;
  }
}
@media screen and (max-width: 768px) {
  #map .txt_box01 .txt_block .txt01 {
    font-size: 4.1vw;
  }
}
#map .txt_box01 .txt_block .txt01 .no {
  display: inline-block;
  width: 18px;
  position: relative;
  top: -3px;
  margin-right: 3px;
}
@media screen and (max-width: 1180px) {
  #map .txt_box01 .txt_block .txt01 .no {
    width: 1.5vw;
    top: -0.3vw;
    margin-right: 0.3vw;
  }
}
@media screen and (max-width: 768px) {
  #map .txt_box01 .txt_block .txt01 .no {
    width: 4.1vw;
    top: -0.8vw;
    margin-right: 1vw;
  }
}
#map .txt_box01 .txt_block .txt01 .s-txt {
  display: block;
  font-size: 15px;
  color: #be9b5d;
  padding-left: 21px;
}
@media screen and (max-width: 1180px) {
  #map .txt_box01 .txt_block .txt01 .s-txt {
    font-size: 1.3vw;
    padding-left: 1.8vw;
  }
}
@media screen and (max-width: 768px) {
  #map .txt_box01 .txt_block .txt01 .s-txt {
    display: inline-block;
    font-size: 3.1vw;
    padding-left: 0vw;
    margin-left: -0.5em;
  }
}
#map .txt_box01 .txt_block .txt02 {
  font-size: 14px;
  line-height: 1.5em;
  color: #fff;
  margin-top: 0.3em;
}
@media screen and (max-width: 1180px) {
  #map .txt_box01 .txt_block .txt02 {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 768px) {
  #map .txt_box01 .txt_block .txt02 {
    font-size: 3.3vw;
    margin-top: 0.5em;
  }
}

#plan {
  margin-top: 140px;
}
@media screen and (max-width: 1180px) {
  #plan {
    margin-top: 11.9vw;
  }
}
@media screen and (max-width: 768px) {
  #plan {
    margin-top: 22.7vw;
  }
}
#plan h2 {
  font-size: 21px;
  font-weight: 500;
  text-align: center;
  color: #fff;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1180px) {
  #plan h2 {
    font-size: 1.8vw;
  }
}
@media screen and (max-width: 768px) {
  #plan h2 {
    font-size: 4vw;
  }
}
#plan .txt01 {
  font-size: 16px;
  line-height: 2.75em;
  text-align: center;
  color: #fff;
  letter-spacing: 0.05em;
  margin-top: 40px;
}
@media screen and (max-width: 1180px) {
  #plan .txt01 {
    font-size: 1.4vw;
    margin-top: 3.4vw;
  }
}
@media screen and (max-width: 768px) {
  #plan .txt01 {
    font-size: 3.3vw;
    line-height: 2em;
    text-align: left;
    letter-spacing: 0;
    margin-top: 3.3vw;
  }
}
#plan .pho_box01 {
  width: 532px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 40px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 1180px) {
  #plan .pho_box01 {
    width: 45.1vw;
    margin-top: 3.4vw;
  }
}
@media screen and (max-width: 768px) {
  #plan .pho_box01 {
    width: 100%;
    margin-top: 8vw;
  }
}
#plan .pho_box01 .pho_block {
  width: 30.5%;
}
#plan .pho_box01 .pho_block .txt02 {
  font-size: 14px;
  color: #fff;
  margin-top: 0.3em;
}
@media screen and (max-width: 1180px) {
  #plan .pho_box01 .pho_block .txt02 {
    font-size: 1.2vw;
  }
}
@media screen and (max-width: 768px) {
  #plan .pho_box01 .pho_block .txt02 {
    font-size: 2.9vw;
    margin-top: 0.5em;
  }
}

#note {
  padding: 80px 0 90px;
}
@media screen and (max-width: 1180px) {
  #note {
    padding: 6.8vw 0 7.6vw;
  }
}
@media screen and (max-width: 768px) {
  #note {
    padding: 14.7vw 0 8vw;
  }
}
#note p {
  font-size: 10px;
  line-height: 1.5em;
  color: #fff;
  text-align: left;
}
@media screen and (max-width: 1180px) {
  #note p {
    font-size: 0.8vw;
  }
}
@media screen and (max-width: 768px) {
  #note p {
    font-size: 2.4vw;
  }
}/*# sourceMappingURL=style_design.css.map */