@charset "UTF-8";
@keyframes loop_slide_right {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
/*========= link ===============*/
.el_link_type01,
.el_link_type02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.3rem;
  font-weight: 400;
}
@media screen and (max-width: 744px) {
  .el_link_type01,
  .el_link_type02 {
    font-size: 13px;
    font-size: 3.4666666667vw;
  }
}
.el_link_type01.__arrRight:after,
.el_link_type02.__arrRight:after {
  display: block;
  margin-left: 10px;
}
.el_link_type01.__arrLeft:before,
.el_link_type02.__arrLeft:before {
  display: block;
  margin-right: 10px;
  transform: scale(-1, 1);
}
.el_link_type01.__arrTop:before,
.el_link_type02.__arrTop:before {
  display: block;
  margin-right: 10px;
  transform: rotate(-90deg);
}
.el_link_type01.__arrTop_right:before,
.el_link_type02.__arrTop_right:before {
  display: none;
}
.el_link_type01.__arrTop_right:after,
.el_link_type02.__arrTop_right:after {
  display: block;
  margin-right: 10px;
  transform: rotate(-90deg);
}
.el_link_type01.__arrUnder:after,
.el_link_type02.__arrUnder:after {
  display: block;
  margin-left: 10px;
  transform: rotate(90deg);
}

.el_link_type01.__arrRight:after {
  content: url(../../img/common/icon_arrRight.svg);
}
.el_link_type01.__arrLeft:before {
  content: url(../../img/common/icon_arrRight.svg);
}
.el_link_type01.__arrTop:before {
  content: url(../../img/common/icon_arrRight.svg);
}
.el_link_type01.__arrTop_right:after {
  content: url(../../img/common/icon_arrRight.svg);
}
.el_link_type01.__arrUnder:after {
  content: url(../../img/common/icon_arrRight.svg);
}

.el_link_type02 {
  color: #75787a;
}
.el_link_type02.__arrRight:after {
  content: url(../../img/common/icon_arrRight_gray.svg);
}
.el_link_type02.__arrLeft:before {
  content: url(../../img/common/icon_arrRight_gray.svg);
}
.el_link_type02.__arrTop:before {
  content: url(../../img/common/icon_arrRight_gray.svg);
}
.el_link_type02.__arrTop_right:after {
  content: url(../../img/common/icon_arrRight_gray.svg);
}
.el_link_type02.__arrUnder:after {
  content: url(../../img/common/icon_arrRight_gray.svg);
}

.el_link_map {
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.el_link_map:after {
  display: block;
  content: url(../../img/common/icon_pin.svg);
  margin: 1px 0 0 5px;
  line-height: 1;
}

.el_link_listItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: 400;
}
.el_link_listItem::before {
  display: block;
  content: "";
  width: 4px;
  height: 4px;
  border: 1px solid #b6b7b4;
  border-top: none;
  border-left: none;
  transform: rotate(-45deg);
  margin: 8px 8px 0 0;
}

/*========= button ===============*/
.el_button_type01,
.el_button_type02,
.el_button_type03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: 400;
  border: 1px solid;
  border-radius: 4px;
  width: 100%;
  max-width: 345px;
  padding: 12px;
  position: relative;
}
@media screen and (max-width: 744px) {
  .el_button_type01,
  .el_button_type02,
  .el_button_type03 {
    max-width: unset;
    padding: 12px;
    padding: 3.2vw;
  }
}
.el_button_type01:hover,
.el_button_type02:hover,
.el_button_type03:hover {
  opacity: 1 !important;
}
.el_button_type01.__blank::after,
.el_button_type02.__blank::after,
.el_button_type03.__blank::after {
  display: block;
  content: "";
  background-image: url(../../img/common/icon_blank.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 13px;
  height: 13px;
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}
.el_button_type01.__tel,
.el_button_type02.__tel,
.el_button_type03.__tel {
  padding: 10px;
}
@media screen and (max-width: 744px) {
  .el_button_type01.__tel,
  .el_button_type02.__tel,
  .el_button_type03.__tel {
    padding: 10px;
    padding: 2.6666666667vw;
  }
}
.el_button_type01.__tel::before,
.el_button_type02.__tel::before,
.el_button_type03.__tel::before {
  display: block;
  content: "";
  background-image: url(../../img/common/icon_phone.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 13px;
  height: 13px;
  margin-right: 5px;
}
.el_button_type01.__arrUnder::after,
.el_button_type02.__arrUnder::after,
.el_button_type03.__arrUnder::after {
  position: absolute;
  right: 16px;
  top: calc(50% - 4px);
  display: block;
  content: "";
  background-image: url(../../img/common/icon_arrRight.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 9px;
  height: 9px;
  transform: rotate(90deg);
}
.el_button_type01.__arrUnder:hover::after,
.el_button_type02.__arrUnder:hover::after,
.el_button_type03.__arrUnder:hover::after {
  filter: invert(100%);
}

.el_button_type01,
.el_button_type02 {
  border-color: #b6b7b4;
}
.el_button_type01:hover,
.el_button_type02:hover {
  border-color: #1e1c1c;
  background: #1e1c1c;
  color: #fff;
}

.el_button_type02 {
  background: #fff;
}

.el_button_type03 {
  background: #1e1c1c;
  border-color: #1e1c1c;
  color: #fff;
}
.el_button_type03:hover {
  background: #fff;
  color: #1e1c1c;
}

/*========= banner ===============*/
.el_banner_type01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-radius: 4px;
  background-color: #fff;
  height: 80px;
  padding-left: 25px;
  font-weight: 400;
  line-height: 1;
}
@media screen and (min-width: 881px) {
  .el_banner_type01 {
    width: 49%;
    max-width: 390px;
  }
}
@media screen and (max-width: 880px) {
  .el_banner_type01 {
    width: 43.75vw;
  }
}
@media screen and (max-width: 744px) {
  .el_banner_type01 {
    width: 100%;
  }
}
.el_banner_type01::before {
  display: block;
  content: url(../../img/common/icon_arrRight_02.svg);
  margin-right: 16px;
}

.el_banner_type02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  border: 1px solid #b6b7b4;
  border-radius: 4px;
  height: 75px;
  text-align: center;
  font-weight: 400;
  line-height: 1.57;
  width: 48.33333%;
  position: relative;
}
@media screen and (max-width: 744px) {
  .el_banner_type02 {
    width: 100%;
    height: 75px;
    height: 20vw;
  }
}
.el_banner_type02.__blank::after {
  display: block;
  content: "";
  background-image: url(../../img/common/icon_blank.svg);
  background-repeat: no-repeat;
  background-size: contain;
  width: 13px;
  height: 13px;
  position: absolute;
  top: 50%;
  right: 16px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

.el_banner_modelhouse,
.el_banner_modelhouse_l,
.el_banner_catalog {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border: 1px solid #b6b7b4;
  border-radius: 4px;
  background-color: #e7e7e6;
  background-repeat: no-repeat;
  height: 120px;
  font-weight: 400;
  font-size: 1.4rem;
}
.el_banner_modelhouse::before,
.el_banner_modelhouse_l::before,
.el_banner_catalog::before {
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.7) * 0.5em);
  content: "";
}
.el_banner_modelhouse::after,
.el_banner_modelhouse_l::after,
.el_banner_catalog::after {
  display: block;
  width: 0;
  height: 0;
  margin-bottom: calc((1 - 1.7) * 0.5em);
  content: "";
}
@media screen and (min-width: 881px) {
  .el_banner_modelhouse,
  .el_banner_modelhouse_l,
  .el_banner_catalog {
    width: 49%;
    max-width: 390px;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 880px) {
  .el_banner_modelhouse,
  .el_banner_modelhouse_l,
  .el_banner_catalog {
    width: 336px;
    width: 43.75vw;
    height: 90px;
    height: 11.71875vw;
  }
}
@media screen and (max-width: 744px) {
  .el_banner_modelhouse,
  .el_banner_modelhouse_l,
  .el_banner_catalog {
    width: 100%;
    height: 90px;
    height: 24vw;
  }
}
.el_banner_modelhouse.__bgW,
.el_banner_modelhouse_l.__bgW,
.el_banner_catalog.__bgW {
  background-color: #fff !important;
  border: none !important;
}
@media screen and (min-width: 745px) and (max-width: 880px) {
  .el_banner_modelhouse.__bgW,
  .el_banner_modelhouse_l.__bgW,
  .el_banner_catalog.__bgW {
    height: 120px;
    height: 15.625vw;
  }
}

.el_banner_modelhouse {
  background-image: url(../../img/common/common_btnModel.svg);
  background-position: top 12px left 30px;
  padding-left: 140px;
}
@media screen and (max-width: 880px) {
  .el_banner_modelhouse {
    background-size: 53px auto;
    background-position: top 8px left 40px;
    padding-left: 120px;
    padding-left: 15.625vw;
  }
}
@media screen and (max-width: 744px) {
  .el_banner_modelhouse {
    background-position: top 7px left 30px;
    background-size: 53px auto;
    padding-left: 120px;
    padding-left: 32vw;
  }
}
@media screen and (min-width: 745px) and (max-width: 880px) {
  .el_banner_modelhouse.__bgW {
    padding-left: 110px;
    padding-left: 14.3229166667vw;
    background-size: 65px auto;
    background-position: top 12px left 25px;
  }
}

.el_banner_modelhouse_l {
  background-image: url(../../img/common/common_btnModel.svg);
  background-position: top 12px left 217px;
  padding-left: 333px;
  width: 100%;
  max-width: 100%;
}
@media screen and (min-width: 745px) and (max-width: 880px) {
  .el_banner_modelhouse_l {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    padding: 0 27%;
    background-position: top 12px left 207px;
  }
}
@media screen and (max-width: 744px) {
  .el_banner_modelhouse_l {
    background-position: top 7px left 30px;
    background-size: 53px auto;
    padding-left: 100px;
  }
}

.el_banner_catalog {
  background-image: url(../../img/common/common_btnCatalog.svg);
  background-position: top 15px left 20px;
  background-size: 92px auto;
  padding-left: 140px;
}
@media screen and (max-width: 880px) {
  .el_banner_catalog {
    background-size: 73px auto;
    background-position: top 9px left 37px;
    padding-left: 130px;
    padding-left: 16.9270833333vw;
  }
}
@media screen and (max-width: 744px) {
  .el_banner_catalog {
    margin-top: 14px;
    margin-top: 3.7333333333vw;
    background-position: top 11px left 21px;
    background-size: 74px auto;
    padding-left: 120px;
    padding-left: 32vw;
  }
}
@media screen and (min-width: 745px) and (max-width: 880px) {
  .el_banner_catalog.__bgW {
    padding-left: 110px;
    padding-left: 14.3229166667vw;
    background-size: 92px auto;
    background-position: top 16px left 13px;
  }
}

/*========= slider ===============*/
.ly_slider_arrow .slide-arrow {
  border: 1px solid #b6b7b4;
  border-radius: 4px;
  background: url(../../img/common/icon_arrRight.svg) no-repeat;
  background-position: center center;
  background-size: 9px 8px;
  width: 57px;
  height: 24px;
  cursor: pointer;
  transition: 0.2s ease-in-out;
}
.ly_slider_arrow .slide-arrow:hover {
  opacity: 0.7;
}
.ly_slider_arrow .prev-arrow {
  transform: scale(-1, 1);
}
.ly_slider_arrow .next-arrow {
  margin-left: 24px;
}
@media screen and (max-width: 744px) {
  .ly_slider_arrow .next-arrow {
    margin-left: 24px;
    margin-left: 6.4vw;
  }
}

/*========= archive ===============*/
.el_tag_type01,
.el_tag_type02 {
  display: inline-block;
  font-size: 1.2rem;
  position: relative;
  line-height: 1.2;
  max-width: 20em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media screen and (max-width: 744px) {
  .el_tag_type01,
  .el_tag_type02 {
    font-size: 12px;
    font-size: 3.2vw;
  }
}

.el_tag_type01 {
  border: 1px solid #b6b7b4;
  border-radius: 4px;
  padding: 5px 8px 5px calc(8px + 0.6em);
}
.el_tag_type01::before {
  display: inline-block;
  content: "#";
  margin-left: -0.6em;
}

.el_tag_type02 {
  background: #e7e7e6;
  border-radius: 4px;
  padding: 8px;
}

.el_dashedUnderline {
  display: inline-block;
  padding-bottom: 8px;
  line-height: 1.6;
  background-image: repeating-linear-gradient(90deg, #b6b7b4, #b6b7b4 4px, transparent 4px, transparent 8px);
  background-position: left bottom;
  background-repeat: repeat-x;
  background-size: 100% 1px;
}

.el_new {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Noto Sans", "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", sans-serif;
  font-weight: 400;
  font-size: 1.2rem;
  color: #fff;
  line-height: 1;
  background: #1e1c1c;
  border-radius: 2px;
  padding: 0 10px;
  margin-right: 16px;
  text-transform: capitalize;
  height: 22px;
}

.el_area {
  display: inline-block;
  background: #e7e7e6;
  border-radius: 2px;
  font-size: 1.2rem;
  padding: 6px;
  position: relative;
}
.el_area::before {
  display: block;
  width: 0;
  height: 0;
  margin-top: calc((1 - 1.7) * 0.5em);
  content: "";
}
.el_area::after {
  display: block;
  width: 0;
  height: 0;
  margin-bottom: calc((1 - 1.7) * 0.5em);
  content: "";
}
@media screen and (max-width: 744px) {
  .el_area {
    font-size: 12px;
    font-size: 3.2vw;
  }
}

.el_archive_pager nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.el_archive_pager nav span,
.el_archive_pager nav a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: "Noto Sans", "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", sans-serif;
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1;
  margin: 0 4px;
  width: 34px;
  height: 34px;
  border-radius: 2px;
}
@media screen and (max-width: 744px) {
  .el_archive_pager nav span,
  .el_archive_pager nav a {
    font-size: 15px;
    font-size: 4vw;
    width: 30px;
    width: 8vw;
    height: 30px;
    height: 8vw;
  }
}
.el_archive_pager nav span.current {
  color: #fff;
  background: #1e1c1c;
}
.el_archive_pager nav a.arrPrev,
.el_archive_pager nav a.arrNext,
.el_archive_pager nav a.next,
.el_archive_pager nav a.prev {
  background-repeat: no-repeat;
  background-position: 50% calc(50% - 1px);
  background-image: url(../../img/common/icon_arrRight.svg);
}
.el_archive_pager nav a.arrPrev,
.el_archive_pager nav a.prev {
  transform: scale(-1, 1);
}

.fadeIn {
  opacity: 0;
  transition: 1s ease;
}
.fadeIn.is-visible {
  opacity: 1;
}

/*========= searchform ===============*/
.el_searchform {
  position: relative;
}
.el_searchform form input {
  width: 100%;
  border: 1px solid #b6b7b4;
  border-radius: 5px;
  padding: 8px 12px;
  font-size: 1.4rem;
}
@media screen and (max-width: 744px) {
  .el_searchform form input {
    font-size: 14px;
    font-size: 3.7333333333vw;
  }
}
.el_searchform form button {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  background: none;
  border: none;
  padding: 0 10px;
  line-height: 1;
  cursor: pointer;
  opacity: 0.5;
}

/*========= other ===============*/
.el_hr {
  display: block;
  width: 100%;
  height: 0;
  border-bottom: 1px solid #b6b7b4;
  padding: 0;
  margin: 160px 0;
}
@media screen and (min-width: 745px) and (max-width: 880px) {
  .el_hr {
    margin-top: 80px;
    margin-top: 10.4166666667vw;
    margin-bottom: 80px;
    margin-bottom: 10.4166666667vw;
  }
}
@media screen and (max-width: 744px) {
  .el_hr {
    margin-top: 80px;
    margin-top: 21.3333333333vw;
    margin-bottom: 80px;
    margin-bottom: 21.3333333333vw;
  }
}

.el_table {
  width: 100%;
  border-top: 1px solid #b6b7b4;
}
.el_table tr {
  border-bottom: 1px solid #b6b7b4;
}
@media screen and (max-width: 744px) {
  .el_table tr {
    display: block;
    padding-top: 40px;
    padding-top: 10.6666666667vw;
    padding-bottom: 40px;
    padding-bottom: 10.6666666667vw;
  }
}
.el_table th,
.el_table td {
  padding: 40px 0;
  vertical-align: top;
}
@media screen and (max-width: 744px) {
  .el_table th,
  .el_table td {
    display: block;
    padding: 0;
  }
}
.el_table th {
  font-weight: 300;
}
@media screen and (max-width: 744px) {
  .el_table th {
    margin-bottom: 20px;
    margin-bottom: 5.3333333333vw;
  }
}
.el_table td {
  font-weight: 400;
}

form[name=formlink] {
  position: relative;
}
form[name=formlink]::after {
  display: block;
  content: "";
  width: 5px;
  height: 5px;
  border: 1px solid #75787a;
  border-top: none;
  border-left: none;
  transform: rotate(45deg);
  position: absolute;
  right: 10px;
  top: calc(50% - 2px);
}