@charset "utf-8";
/* --------------------------------------------------
header
-------------------------------------------------- */
#gnav .gnav_list li.gnav_landplan a::before {
  background-color: #ffffff;
  height: 2px;
}
#gnav .gnav_list li.gnav_landplan a span::after {
  transform: scale(1, 1);
  height: 2px;
}

/* --------------------------------------------------
contents
-------------------------------------------------- */
/* s_landplan
------------------------------ */
.s_landplan {
  padding-top: 50px;
}
.s_landplan_img {
  position: relative;
  max-width: 1280px;
  margin: 0 auto;
}
.s_landplan_img figcaption {
  position: absolute;
  right: 6%;
  top: 53.5%;
}
.ico_spot {
  position: absolute;
}
.ico_spot {
  width: 36px;
  height: 36px;
  transform: translate(-50%, -50%)
}
.ico_spot_1 {
  top: 12.5%;
  left: 36%;
}
.ico_spot_2 {
  top: 8%;
  left: 64%;
}
.ico_spot_2_b {
  top: 35%;
  left: 36%;
}
.ico_spot_3 {
  top: 22%;
  left: 57.5%;
}
.ico_spot_4 {
  top: 31%;
  left: 67%;
}
.ico_spot_5 {
  top: 26.5%;
  left: 62%;
}
.ico_spot_6 {
  top: 7.6%;
  left: 85.5%;
}
/* jquery.inview */
.iv_fall {
  transform: scale(0, 1);
  transition: all .8s;
}
.iv_fall.mv {
  transform: scale(1, 1);
}
.iv_delay01 {
  transition-delay: 0.1s;
}
.iv_delay02 {
  transition-delay: 0.2s;
}
.iv_delay03 {
  transition-delay: 0.3s;
}
.iv_delay04 {
  transition-delay: 0.4s;
}
.iv_delay05 {
  transition-delay: 0.5s;
}
.iv_delay06 {
  transition-delay: 0.6s;
}

.spot_wrap {
  display: none;
}
.spot_name {
  color: #08316d;
  font-size: 137.5%;
  line-height: 1.4;
  margin-bottom: 10px;
}
.spot_cont_in .img {
  max-width: 170px;
}
.spot_cont_in .copy {
  margin-bottom: 20px;
}
.spot_cont_in_takuhai .img_sub {
  margin-top: 10px;
  max-width: 440px;
}
.spot_cont_in_takuhai .img figcaption {
  text-align: right;
}

#cboxLoadedContent {
  padding: 0 30px 60px;
  overflow: visible;
}
#cboxLoadedContent li {
  list-style: none;
}
#cboxPrevious {
  width: 40px !important;
  height: 40px !important;
  background: url(../images/common/ico_next.svg) no-repeat center center !important;
  background-size: 10px !important;
  transform: rotate(180deg);
}
#cboxNext {
  width: 40px !important;
  height: 40px !important;
  background: url(../images/common/ico_next.svg) no-repeat center center !important;
  background-size: 10px !important;
}
#cboxClose {
  font-family:YakuHanMP_Noto, "Noto Serif JP", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "HG明朝E", serif;
  color: #000;
  padding: 10px 40px 10px 40px !important;
  background-color: rgba(0,0,0,.1);
  font-size: 93.75%;
}
@media screen and (min-width: 768px){
  .s_landplan {
    padding-top: 100px;
  }
  .s_landplan_img figcaption {
    top: 100%;
    right: 10px;
  }
  .ico_spot_1 {
    top: 28%;
    left: 29%;
  }
  .ico_spot_2 {
    top: 20%;
    left: 45%;
  }
  .ico_spot_2_b {
    top: 73%;
    left: 29%;
  }
  .ico_spot_3 {
    top: 46.5%;
    left: 42%;
  }
  .ico_spot_4 {
    top: 65%;
    left: 47.2%;
  }
  .ico_spot_5 {
    top: 57%;
    left: 43.8%;
  }
  .ico_spot_6 {
    top: 19%;
    left: 56%;
  }
  .spot_name {
    margin-bottom: 15px;
  }
  .spot_cont_in {
    display: flex;
    justify-content: space-between;
  }
  .spot_cont_in .copy {
    width: calc(95% - 170px);
    margin-bottom: 10px;
  }
  .spot_cont_in .img {
    width: 170px;
  }
  .spot_cont_in_takuhai .img_sub {
    margin-top: 20px;
  }
  #cboxLoadedContent {
    padding: 20px 50px 80px;
  }
  #cboxClose {
    bottom: 15px;
  }
}
@media screen and (min-width: 900px){
  #cboxLoadedContent {
    width: 670px;
  }
}
@media screen and (min-width: 1000px){
  .ico_spot {
    width: 42px;
    height: 42px;
  }
}

/* s_service
------------------------------ */
.s_service {
  margin-top: 60px;
}
.s_service .c-headingset-m {
  margin-bottom: 20px;
}
.s_service_cont {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.s_service_box {
  width: 47.5%;
  margin-bottom: 30px;
}
.s_service_box .name {
  color: #08316d;
  font-size: 125%;
  line-height: 1.4;
  margin: 13px 0 8px;
}
@media screen and (min-width: 768px){
  .s_service {
    margin-top: 120px;
  }
  .s_service .c-headingset-m {
    margin-bottom: 35px;
  }
  .s_service_box {
    width: 29.16666667%;
  }
  .s_service_box .name {
    margin: 17px 0 12px;
  }
}