@charset "utf-8";

/** ***************************************************************************
 * ビジュアル
 * ************************************************************************* */
 
body.layout-lower
#visual {
  position: relative;
  background: url("../../shinkoiwa2/_image/location/visual-lower.jpg") no-repeat;
  background-size: cover;
  background-position: center;
}
body.layout-lower
#visual .body {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 216px;
}
body.layout-lower
#visual div.body .visual-title {
  font-size: 40px;
  color: #fff;
}

@media screen and (min-width:768px) {
body.layout-lower
#visual {
  position: relative;
  background: url("../../shinkoiwa2/_image/location/visual-lower.jpg") no-repeat;
  background-size: cover;
  background-position: bottom;
}

body.layout-lower
#visual .body {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 432px;
}

body.layout-lower
#visual div.body .visual-title {
  font-size: 80px;
  color: #fff;
}

}

/** ***************************************************************************
 * LOCATION
 * ************************************************************************* */
 
@media screen and (max-width: 767px){
.br-sp {
  display: block;
}
}


#location {}
#location.location {}

#location.location ~ #living.location {
  margin-top: 0;
  padding-top: 0;
}

#location.location div.body {
  margin: 0 auto;
}

.location {
  padding: 40px 0;
  overflow: hidden;
}

.location__inner {
  width: 100%;
}

.location__heading {
  text-align: center;
  margin-bottom: 32px;
}

.location__heading-title {
  /*display: inline-block;*/
  text-align: center;
  font-size: /*1.786em*/1.5em;
  letter-spacing: .15em;
  font-weight: 700;
  color: #000000;
  margin: 0;
  padding-bottom: 8px;
  position: relative;
}
.location__heading p.text {
  font-size: 1em;
  text-align: left;
}
.location .detail {
  margin-top: 35px;
}
.location .image {
  text-align: center;
}

#living.location .detail .image {
  text-align: center;
  max-width: 920px;
  margin: 0 auto;
}
#living.location .image p.caption {
  text-align: right;
  margin-top: 0.5em;
}
#living.location .image p.caption small {
  font-size: 0.786em;
}


@media screen and (min-width:768px) {

.location {
  padding: 80px 0;
  overflow: hidden;
}
.location .detail {
  margin-top: 55px;
}

.location .detail .inner {
  max-width: 920px;
  margin: 20px auto 0;
}

.location__heading p.text {
  font-size: 1.143em;
  text-align: center;
}
}

/** ***************************************************************************
 * 画像ギャラリー
 * ************************************************************************* */
 
.location .gallery {}
.location .gallery .inner {
  margin-top: 5px;
}

.location .gallery .inner .item {}
.location .gallery .inner .item img {
  width: 100%;
}

.location .gallery .photo {
  margin-top: 5px;
}
.location .gallery .photo img {
 width: 100%;
}

@media screen and (min-width:768px) {

.location .gallery {}
.location .gallery .inner {
  margin-top: 10px;
}

.location .gallery .inner .item {}
.location .gallery .inner .item img {
  width: 100%;
}

.location .gallery .photo {
  margin-top: 10px;
}
.location .gallery .photo img {
 width: 100%;
}

}

/** ***************************************************************************
 * SHOPPING
 * ************************************************************************* */

#living.location div.area-1 {
  max-width: 920px;
  margin: 40px auto 0;
}
#living.location div.area-1 .area-title {
  background: #0097af;
  font-size: 1.429em;
  color: #fff;
  text-align: center;
  padding: 0 0.5em;
  line-height: 1.4;
}
#living.location div.area-1 p.text {
  margin-top: 0.5em;
}

#living.location div.area-1 .image {}
#living.location div.area-1 .image .caption {
  text-align: right;
  margin-top: 0.5em;
}

@media screen and (min-width:768px) {
#living.location div.area-1 {
  max-width: 920px;
  margin: 40px auto 0;
}
#living.location div.area-1 .area-title {
  background: #0097af;
  font-size: 2.643em;
  color: #fff;
  text-align: center;
  padding: 0 0.5em;
  line-height: 1.4;
}
#living.location div.area-1 p.text {
  margin-top: 0;
}
}

/**
 * 詳細（エリア画像）
 */

#living.location div.area-1 ul.list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-top: 20px;
}

#living.location div.area-1 ul.list li {
  width: calc(100% / 2 - 5px);
  min-height: auto;
  margin: 5px 0;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
}
#living.location div.area-1 ul.list li p.caption {
  text-align: right;
  margin-top: 0.5em;
}
#living.location div.area-1 ul.list li p.caption small {
  font-size: 0.786em;
}

@media screen and (min-width:768px) {

  #living.location div.area-1 ul.list {
    max-width: none;
  }
  #living.location div.area-1 ul.list li {
    width: calc(100% / 3 - 15px);
    margin: 5px 0;
    /*
    min-width: 292px;
    min-height: 234px;
    */
  }
}


/** ***************************************************************************
 * SPORTS & PARK
 * ************************************************************************* */

#living.location div.area-2 {
  max-width: 920px;
  margin: 30px auto 0;
}
#living.location div.area-2 .area-title {
  background: #d9874d;
  font-size: 1.429em;
  color: #fff;
  text-align: center;
  padding: 0 0.5em;
  line-height: 1.4;
}
#living.location div.area-2 p.text {
  margin-top: 0.5em;
}

@media screen and (min-width:768px) {
#living.location div.area-2 {
  max-width: 920px;
  margin: 70px auto 0;
}
#living.location div.area-2 .area-title {
  background: #d9874d;
  font-size: 2.643em;
  color: #fff;
  text-align: center;
  padding: 0 0.5em;
  line-height: 1.4;
}
#living.location div.area-2 p.text {
  margin-top: 0.5em;
}
}

/**
 * 詳細（エリア画像）
 */

#living.location div.area-2 .layout-2 {
  display: block;
  align-items: flex-start;
}
#living.location div.area-2 .layout-2 > .image {
  width: 100%;
  text-align: center;
}
#living.location div.area-2 .layout-2 > .image img {
  width: 100%;
}
#living.location div.area-2 .layout-2 .content {
  width: 100%;
  margin-top: 0;
  margin-left: 0;
}
#living.location div.area-2 .layout-2 .content .image {
  text-align: center;
  max-width: 292px;
  margin: 1em auto 0;
}

#living.location div.area-2 .layout-2 .content .text {
  margin-top: 20px;
}
@media screen and (min-width:768px) {

#living.location div.area-2 .layout-2 {
  display: flex;
  align-items: flex-start;
}
#living.location div.area-2 .layout-2 > .image {
  width: 90%;
}
#living.location div.area-2 .layout-2 .content {
  width: 43%;
  margin-left: 2%;
}
#living.location div.area-2 .layout-2 .content .image {
  text-align: left;
  max-width: 292px;
  margin-top: 0;
}
}


/**
 * 詳細（エリア画像）
 */

#living.location div.area-2 ul.list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
  margin-top: 20px;
}

#living.location div.area-2 ul.list li {
  width: calc(100% / 2 - 5px);
  min-height: auto;
  margin: 5px 0;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
}
#living.location div.area-2 ul.list li .photo {
  max-width: 449px;
}

#living.location div.area-2 ul.list li .photo img {}
#living.location div.area-2 ul.list li p.caption {
  text-align: right;
  margin-top: 0.5em;
}
#living.location div.area-2 ul.list li p.caption small {
  font-size: 0.786em;
}

@media screen and (min-width:768px) {

  #living.location div.area-2 ul.list {
    max-width: none;
  }
  #living.location div.area-2 ul.list li {
    width: calc(100% / 2 - 15px);
    margin: 0;
  }

}

/** ***************************************************************************
 * EDUCATION
 * ************************************************************************* */

#living.location div.area-3 {
  max-width: 920px;
  margin: 30px auto 0;
}
#living.location div.area-3 .area-title {
  background: #807aab;
  font-size: 1.429em;
  color: #fff;
  text-align: center;
  padding: 0 0.5em;
  line-height: 1.4;
}

@media screen and (min-width:768px) {
#living.location div.area-3 {
  max-width: 920px;
  margin: 70px auto 0;
}
#living.location div.area-3 .area-title {
  background: #807aab;
  font-size: 2.643em;
  color: #fff;
  text-align: center;
  padding: 0 0.5em;
  line-height: 1.4;
}
}


#living.location div.area-3 .layout-2 {
  display: block;
  align-items: flex-start;
}
#living.location div.area-3 .layout-2 > .image {
  width: 100%;
  text-align: center;
}
#living.location div.area-3 .layout-2 > .image img {
  width: 100%;
}
#living.location div.area-3 .layout-2 .content {
  width: 100%;
  margin-top: 0;
  margin-left: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: space-between;
}
#living.location div.area-3 .layout-2 .content .image {
  width: calc(100% / 2 - 5px);
  text-align: center;
  margin: 5px 0;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: center;
}
#living.location div.area-3 .layout-2 .content .image > div {
  max-width: 292px;
}

#living.location div.area-3 .layout-2 .content .text {
  margin-top: 20px;
}
@media screen and (min-width:768px) {

#living.location div.area-3 .layout-2 {
  display: flex;
  align-items: flex-start;
}
#living.location div.area-3 .layout-2 > .image {
  width: 90%;
}
#living.location div.area-3 .layout-2 .content {
  width: 43%;
  margin-left: 2%;
  display: block;
}
#living.location div.area-3 .layout-2 .content .image {
  text-align: left;
  max-width: 292px;
  margin-top: 0;
  width: 100%;
}
#living.location div.area-3 .layout-2 .content .image ~ .image {
  margin-top: 0.3em;
}
}