.image_txt {
  background-color: rgba(0, 0, 0, 0.8);
  padding: 0.2em 1em 0.3em;
  font-size: 12px;
  line-height: 1.2em;
  color: #fff;
  display: inline-block;
  position: absolute;
  left: 0;
  bottom: 0;
}
@media screen and (max-width: 1080px) {
  .image_txt {
    font-size: 1.1vw;
  }
}
@media screen and (max-width: 768px) {
  .image_txt {
    font-size: 1.6vw;
  }
}

main h2 {
  font-size: 22px;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.05em;
  margin-bottom: 1.4em;
}
@media screen and (max-width: 1080px) {
  main h2 {
    font-size: 2vw;
  }
}
@media screen and (max-width: 768px) {
  main h2 {
    font-size: 2.9vw;
    margin-bottom: 1em;
  }
}

.main_txt01 {
  font-size: 28px;
  font-weight: 500;
  line-height: 1.4em;
  text-align: center;
  letter-spacing: 0.15em;
}
@media screen and (max-width: 1080px) {
  .main_txt01 {
    font-size: 2.6vw;
  }
}
@media screen and (max-width: 768px) {
  .main_txt01 {
    font-size: 3.7vw;
  }
}
.main_txt01 + .main_txt02 {
  margin-top: 1.3em;
}

.main_txt02 {
  font-size: 20px;
  line-height: 2.3em;
  margin-top: 20px;
  text-align: center;
}
@media screen and (max-width: 1080px) {
  .main_txt02 {
    font-size: 1.9vw;
    margin-top: 1.8vw;
  }
}
@media screen and (max-width: 768px) {
  .main_txt02 {
    font-size: 2.7vw;
  }
}
.main_txt02 + .main_txt02 {
  margin-top: 1em;
}
@media screen and (max-width: 768px) {
  .main_txt02 + .main_txt02 {
    margin-top: 1.3em;
  }
}

.bg01 {
  background-image: url(../images/location/bg01_pc.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: center top;
  background-color: #F7C8DB;
  position: relative;
  padding-bottom: 60px;
}
@media screen and (max-width: 1500px) {
  .bg01 {
    padding-bottom: 5.6vw;
  }
}
@media screen and (max-width: 768px) {
  .bg01 {
    background-image: url(../images/location/bg01_sp.png);
  }
}

.bg02 {
  background-image: url(../images/location/bg02_pc.png);
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: center top;
  background-color: #EAE9E1;
}
@media screen and (max-width: 768px) {
  .bg02 {
    background-image: url(../images/location/bg02_sp.png);
  }
}

#mv {
  position: relative;
}
#mv .image_txt_img {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 135px;
}
@media screen and (max-width: 1080px) {
  #mv .image_txt_img {
    width: 12.5vw;
  }
}
@media screen and (max-width: 768px) {
  #mv .image_txt_img {
    width: 18vw;
  }
}

.page_title_box .wrap01 {
  padding-top: 60px;
  padding-bottom: 60px;
}
@media screen and (max-width: 1080px) {
  .page_title_box .wrap01 {
    padding-top: 5.6vw;
    padding-bottom: 5.6vw;
  }
}
@media screen and (max-width: 768px) {
  .page_title_box .wrap01 {
    width: 100%;
    padding-top: 8vw;
    padding-bottom: 7.3vw;
  }
}
.page_title_box .wrap01 .catch {
  width: 98.8%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px;
}
@media screen and (max-width: 1080px) {
  .page_title_box .wrap01 .catch {
    margin-bottom: 3.7vw;
  }
}
@media screen and (max-width: 768px) {
  .page_title_box .wrap01 .catch {
    width: 89.1vw;
    margin-bottom: 4vw;
  }
}

.bigimg01 {
  max-width: 1500px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

#area .wrap01 {
  position: relative;
  padding-top: 60px;
}
@media screen and (max-width: 1080px) {
  #area .wrap01 {
    padding-top: 5.6vw;
  }
}
@media screen and (max-width: 768px) {
  #area .wrap01 {
    width: 100%;
    padding-top: 7.2vw;
  }
}
#area .pho_box01 {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  position: relative;
}
@media screen and (max-width: 1080px) {
  #area .pho_box01 {
    margin-top: 2.8vw;
  }
}
@media screen and (max-width: 768px) {
  #area .pho_box01 {
    width: 65.3%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3.7vw;
  }
}
#area .pho_box01 .pho01 {
  width: 50.5%;
}
@media screen and (max-width: 768px) {
  #area .pho_box01 .pho01 {
    width: 100%;
    order: 2;
    margin-top: 4vw;
  }
}
#area .pho_box01 .main_txt02 {
  width: 45.9%;
  text-align: left;
}
@media screen and (max-width: 768px) {
  #area .pho_box01 .main_txt02 {
    width: 100%;
    order: 1;
  }
}
#area .pho02 {
  width: 100%;
  margin-top: 60px;
}
@media screen and (max-width: 1080px) {
  #area .pho02 {
    margin-top: 5.6vw;
  }
}
@media screen and (max-width: 768px) {
  #area .pho02 {
    width: 65.3%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 8vw;
  }
}
#area .icon01 {
  width: 101px;
  position: absolute;
  right: 0;
  top: 30px;
}
@media screen and (max-width: 1080px) {
  #area .icon01 {
    width: 9.4vw;
    top: 2.8vw;
  }
}
@media screen and (max-width: 768px) {
  #area .icon01 {
    width: 12.8vw;
    right: 13.3vw;
    top: 2vw;
  }
}
#area .icon02 {
  width: 67px;
  position: absolute;
  left: 0;
  top: 135px;
}
@media screen and (max-width: 1080px) {
  #area .icon02 {
    width: 6.2vw;
    top: 12.5vw;
  }
}
@media screen and (max-width: 768px) {
  #area .icon02 {
    width: 8.9vw;
    left: 4.7vw;
    top: 110vw;
  }
}
#area .icon03 {
  width: 138px;
  position: absolute;
  right: 60px;
  top: 120px;
}
@media screen and (max-width: 1080px) {
  #area .icon03 {
    width: 12.8vw;
    right: 5.6vw;
    top: 11.1vw;
  }
}
@media screen and (max-width: 768px) {
  #area .icon03 {
    width: 12.8vw;
    right: auto;
    left: 4.7vw;
    top: 22vw;
  }
}
#area .icon04 {
  width: 65px;
  position: absolute;
  right: 0;
  bottom: -15px;
}
@media screen and (max-width: 1080px) {
  #area .icon04 {
    width: 6vw;
    bottom: -1.4vw;
  }
}
@media screen and (max-width: 768px) {
  #area .icon04 {
    width: 8vw;
    right: 8vw;
    bottom: auto;
    top: 23.3vw;
  }
}

#around {
  background-color: #B9E1E1;
  padding-top: 60px;
  padding-bottom: 35px;
  position: relative;
}
@media screen and (max-width: 1080px) {
  #around {
    padding-top: 5.6vw;
    padding-bottom: 3.2vw;
  }
}
@media screen and (max-width: 768px) {
  #around {
    width: 65.3%;
    margin-left: auto;
    margin-right: auto;
    padding-top: 8vw;
    padding-bottom: 4.7vw;
  }
}
@media screen and (max-width: 768px) {
  #around .main_txt01 {
    letter-spacing: 0;
  }
}
@media screen and (max-width: 768px) {
  #around .main_txt02 {
    width: 89.8%;
    margin-left: auto;
    margin-right: auto;
    text-align: justify;
  }
}
#around .icon05 {
  width: 97px;
  position: absolute;
  right: 60px;
  top: 35px;
}
@media screen and (max-width: 1080px) {
  #around .icon05 {
    width: 9vw;
    right: 5.6vw;
    top: 3.2vw;
  }
}
@media screen and (max-width: 768px) {
  #around .icon05 {
    width: 12.9vw;
    right: -14.7vw;
    top: -9.2vw;
  }
}
#around .icon06 {
  width: 132px;
  position: absolute;
  left: 30px;
  top: 205px;
}
@media screen and (max-width: 1080px) {
  #around .icon06 {
    width: 12.2vw;
    left: 2.8vw;
    top: 19vw;
  }
}
@media screen and (max-width: 768px) {
  #around .icon06 {
    width: 12.7vw;
    left: 2vw;
    top: 1.3vw;
  }
}
#around .icon07 {
  width: 54px;
  position: absolute;
  right: 35px;
  top: 290px;
}
@media screen and (max-width: 1080px) {
  #around .icon07 {
    width: 5vw;
    right: 3.2vw;
    top: 26.9vw;
  }
}
@media screen and (max-width: 768px) {
  #around .icon07 {
    width: 7.2vw;
    right: 2vw;
    top: 15.3vw;
  }
}
#around #event {
  position: relative;
  width: 92.8%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 60px;
  background-color: #96D2D2;
  padding-top: 25px;
  padding-bottom: 15px;
}
@media screen and (max-width: 1080px) {
  #around #event {
    margin-top: 5.6vw;
    padding-top: 2.3vw;
    padding-bottom: 1.4vw;
  }
}
@media screen and (max-width: 768px) {
  #around #event {
    width: 85.7%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 8vw;
    padding-top: 3.3vw;
    padding-bottom: 2.7vw;
  }
}
#around #event h4, #around #event .txt_box01 {
  width: 92.3%;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 768px) {
  #around #event h4, #around #event .txt_box01 {
    width: 88.1%;
  }
}
#around #event h4 {
  font-size: 20px;
  font-weight: normal;
  color: #fff;
  text-align: center;
  letter-spacing: 0.2em;
  background-color: #9D8447;
  line-height: 1.2em;
  padding-top: 0.3em;
  padding-bottom: 0.4em;
  margin-bottom: 25px;
}
@media screen and (max-width: 1080px) {
  #around #event h4 {
    font-size: 1.9vw;
    margin-bottom: 2.3vw;
  }
}
@media screen and (max-width: 768px) {
  #around #event h4 {
    font-size: 2.7vw;
    margin-bottom: 3.3vw;
  }
}
#around #event .txt_box01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#around #event .txt_box01 .txt_block {
  width: 49.4%;
}
@media screen and (max-width: 768px) {
  #around #event .txt_box01 .txt_block {
    width: 100%;
    order: 2;
    margin-top: 2.4vw;
  }
}
#around #event .txt_box01 .txt_block .txt01 {
  font-size: 26px;
  font-weight: 500;
  line-height: 1.4em;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1080px) {
  #around #event .txt_box01 .txt_block .txt01 {
    font-size: 2.4vw;
  }
}
@media screen and (max-width: 768px) {
  #around #event .txt_box01 .txt_block .txt01 {
    font-size: 3.2vw;
    letter-spacing: 0;
    text-align: center;
  }
}
#around #event .txt_box01 .txt_block .txt02 {
  width: 95%;
  font-size: 20px;
  line-height: 1.7em;
  margin-top: 1em;
}
@media screen and (max-width: 1080px) {
  #around #event .txt_box01 .txt_block .txt02 {
    font-size: 1.9vw;
  }
}
@media screen and (max-width: 768px) {
  #around #event .txt_box01 .txt_block .txt02 {
    font-size: 2.7vw;
    text-align: justify;
  }
}
#around #event .txt_box01 .pho01 {
  width: 50.6%;
}
@media screen and (max-width: 768px) {
  #around #event .txt_box01 .pho01 {
    width: 100%;
    order: 1;
  }
}
#around #event .icon08 {
  width: 89px;
  position: absolute;
  right: -25px;
  top: -140px;
}
@media screen and (max-width: 1080px) {
  #around #event .icon08 {
    width: 8.2vw;
    right: -2.3vw;
    top: -13.2vw;
  }
}
@media screen and (max-width: 768px) {
  #around #event .icon08 {
    width: 11.9vw;
    right: auto;
    top: auto;
    left: -18vw;
    bottom: -1vw;
  }
}

#location {
  padding-top: 60px;
  padding-bottom: 60px;
}
@media screen and (max-width: 1080px) {
  #location {
    padding-top: 5.6vw;
    padding-bottom: 5.6vw;
  }
}
@media screen and (max-width: 768px) {
  #location {
    padding-top: 7.3vw;
    padding-bottom: 7.3vw;
  }
}
#location h1 {
  font-size: 36px;
  font-weight: 500;
  text-align: center;
  letter-spacing: 0.15em;
  margin-bottom: 80px;
}
@media screen and (max-width: 1080px) {
  #location h1 {
    font-size: 3.3vw;
    margin-bottom: 7.4vw;
  }
}
@media screen and (max-width: 768px) {
  #location h1 {
    font-size: 4.8vw;
    margin-bottom: 10.3vw;
  }
}
#location #life_info .main_txt01 {
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1080px) {
  #location #life_info .main_txt01 {
    letter-spacing: 0;
  }
}
#location #life_info .pho01 {
  max-width: 1200px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 60px;
}
@media screen and (max-width: 1380px) {
  #location #life_info .pho01 {
    max-width: none;
    width: 87vw;
    margin-top: 4.3vw;
  }
}
@media screen and (max-width: 768px) {
  #location #life_info .pho01 {
    width: 80vw;
    margin-top: 8vw;
  }
}
#location #map {
  max-width: 1200px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 90px;
}
@media screen and (max-width: 1380px) {
  #location #map {
    max-width: none;
    width: 87vw;
    margin-top: 6.5vw;
  }
}
@media screen and (max-width: 768px) {
  #location #map {
    width: 100%;
    margin-top: 12vw;
  }
}
#location #map .map_img {
  max-width: 980px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #999;
}
@media screen and (max-width: 1380px) {
  #location #map .map_img {
    max-width: none;
    width: 71vw;
  }
}
@media screen and (max-width: 768px) {
  #location #map .map_img {
    width: 97.3%;
  }
}
#location #map .map_txt {
  margin-top: 60px;
}
@media screen and (max-width: 1380px) {
  #location #map .map_txt {
    margin-top: 4.3vw;
  }
}
@media screen and (max-width: 768px) {
  #location #map .map_txt {
    width: 65.3%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 8vw;
  }
}
#location #neighborhood {
  max-width: 1200px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
  border-top: 1px solid #333;
  padding-top: 35px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 1380px) {
  #location #neighborhood {
    max-width: none;
    width: 87vw;
    margin-top: 2.2vw;
    padding-top: 2.5vw;
  }
}
@media screen and (max-width: 768px) {
  #location #neighborhood {
    width: 86.7%;
    margin-top: 4vw;
    padding-top: 0;
    border-top: none;
    display: block;
  }
}
#location #neighborhood .txt_box {
  width: 42.9%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding-bottom: 30px;
}
@media screen and (max-width: 1380px) {
  #location #neighborhood .txt_box {
    padding-bottom: 2.2vw;
  }
}
@media screen and (max-width: 768px) {
  #location #neighborhood .txt_box {
    width: 65.3vw;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 0;
    padding-top: 4vw;
    border-top: 1px solid #333;
  }
}
#location #neighborhood .txt_box .txt01 {
  font-size: 28px;
  font-weight: 500;
  line-height: 1.5em;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1380px) {
  #location #neighborhood .txt_box .txt01 {
    font-size: 2vw;
  }
}
@media screen and (max-width: 768px) {
  #location #neighborhood .txt_box .txt01 {
    font-size: 3.7vw;
    text-align: center;
  }
}
#location #neighborhood .txt_box .txt02 {
  font-size: 20px;
  line-height: 2.3em;
  margin-top: 1em;
}
@media screen and (max-width: 1380px) {
  #location #neighborhood .txt_box .txt02 {
    font-size: 1.4vw;
  }
}
@media screen and (max-width: 768px) {
  #location #neighborhood .txt_box .txt02 {
    font-size: 2.7vw;
    text-align: justify;
  }
}
#location #neighborhood .map {
  width: 54.2%;
}
@media screen and (max-width: 768px) {
  #location #neighborhood .map {
    width: 100%;
    margin-top: 4.7vw;
  }
}/*# sourceMappingURL=style_location.css.map */