@charset "UTF-8";
/*=========================
# colors
=========================*/
/* top-search
-----------------------*/
.top-search {
  background: #fff;
  border: 1px solid #E0E0E0;
  border-radius: 50px 0 0 50px;
  padding: 50px 0 60px;
  margin-bottom: 260px;
}
@media (min-width: 768px) {
  .top-search {
    width: 70%;
    margin-left: auto;
  }
}
@media (max-width: 1500px) {
  .top-search {
    width: 80%;
  }
}
@media (max-width: 1300px) {
  .top-search {
    width: 95%;
  }
}
@media (min-width:768px) and (max-width: 1024px) {
  .top-search {
    width: calc(100% - 30px);
    margin-bottom: 100px;
  }
}
@media (max-width: 767px) {
  .top-search {
    width: 100%;
    margin-left: 0;
    padding: 23.3644859813vw 0;
    margin-bottom: 79.2056074766vw;
  }
}
.top-search .inner {
  max-width: 897px;
}
@media (min-width: 768px) {
  .top-search .inner {
    margin: 0;
    padding: 0 82px 0 102px;
  }
}
@media (min-width:768px) and (max-width: 1024px) {
  .top-search .inner {
    padding: 0 30px;
  }
}
.top-search-txt {
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .top-search-txt {
    margin-bottom: 4.6728971963vw;
  }
}
@media (min-width: 768px) {
  .top-search-area {
    display: flex;
    justify-content: space-between;
  }
}
@media (min-width: 768px) {
  .top-search-area-nav {
    width: 31.8124207858%;
  }
}
@media (max-width: 1024px) {
  .top-search-area-nav {
    width: 70%;
  }
}
@media (max-width: 767px) {
  .top-search-area-nav {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .top-search-area-nav-list {
    display: flex;
    flex-wrap: wrap;
  }
}
.top-search-area-nav-list li {
  border-bottom: 1px solid #5CB185;
}
@media (max-width: 767px) {
  .top-search-area-nav-list li {
    width: calc(50% - 4.5px);
    margin-right: 9px;
  }
}
@media (max-width: 767px) {
  .top-search-area-nav-list li:nth-child(2n) {
    margin-right: 0;
  }
}
.top-search-area-nav-list li a {
  display: block;
  font-size: 18px;
  padding: 8px 40px;
  position: relative;
}
@media (max-width: 767px) {
  .top-search-area-nav-list li a {
    font-size: 4.2056074766vw;
    padding: 3.5046728972vw 4.6728971963vw 3.5046728972vw 3.2710280374vw;
  }
}
.top-search-area-nav-list li a:hover {
  background: #F2FDFB;
}
.top-search-area-nav-list li a:after {
  position: absolute;
  content: "";
  background: transparent url(../img/arrow_right_green02.svg) no-repeat center center/contain;
  width: 7px;
  height: 11px;
  top: 50%;
  transform: translateY(-50%);
  right: 10px;
}
@media (max-width: 767px) {
  .top-search-area-nav-list li a:after {
    width: 1.4018691589vw;
    height: 2.3364485981vw;
    right: 3.2710280374vw;
  }
}
.top-search-area-map {
  margin-top: 15px;
}
@media (min-width: 768px) {
  .top-search-area-map {
    width: 62.1039290241%;
  }
}
@media (max-width: 1024px) {
  .top-search-area-map {
    display: none;
  }
}
.search-title {
  margin-bottom: 15px;
}
.search-title .step {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: bold;
  letter-spacing: 0.01em;
  color: #3BC3A1;
  display: block;
}
.search-title-inner {
  position: relative;
  padding-left: 30px;
}
.search-title-inner::before {
  position: absolute;
  content: "";
  background: transparent url(../img/search_icon.svg) no-repeat center center/contain;
  width: 18px;
  height: 18.5px;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

/* top 物件種別
---------------------*/
.filter-type-top .tab-labels {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media (min-width: 768px) {
  .filter-type-top .tab-labels {
    gap: 0 8px;
  }
}
@media (max-width: 767px) {
  .filter-type-top .tab-labels {
    justify-content: flex-start;
    margin-bottom: 11.6822429907vw;
  }
}
.filter-type-top .tab-label {
  background-color: #CCCCCC;
  color: #fff;
  font-weight: bold;
  text-align: center;
  cursor: pointer;
}
@media (min-width: 768px) {
  .filter-type-top .tab-label {
    font-size: 18px;
    flex: 1 1;
    order: -1;
    max-width: 155px;
    padding: 5px 15px;
    border-radius: 10px 10px 0 0;
  }
}
@media (max-width: 1024px) {
  .filter-type-top .tab-label {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .filter-type-top .tab-label {
    border-radius: 0;
    font-size: 4.2056074766vw;
    letter-spacing: 0.01em;
    width: calc(33.3333% - 0.6666666667px);
    margin-right: 1px;
    margin-bottom: 1px;
    padding: 1.1682242991vw;
  }
}
.filter-type-top .tab-label:hover {
  background: #078D54;
}
.filter-type-top .tab-label.active {
  background: #078D54;
}
@media (max-width: 767px) {
  .filter-type-top .tab-label:nth-child(3n) {
    margin-right: 0;
  }
}
.filter-type-top input {
  display: none;
}
.filter-type-top .tab-content {
  display: none;
}
.filter-type-top .tab-content.active {
  display: block;
}
@media (min-width: 768px) {
  .filter-type-top .top-search-bg {
    width: 100%;
    padding: 30px 63px 40px 45px;
    background-color: #fff;
    border: 1px solid #5CB185;
    border-radius: 10px;
  }
}

/* 物件検索ページ
----------------------*/
.search {
  margin: 0 50px 100px;
}
@media (max-width: 1024px) {
  .search {
    margin: 0 0 100px;
  }
}
.search .inner {
  max-width: 100%;
}
.search-btn {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.search button {
  background: #3BC3A1;
  color: #fff;
  border-radius: 5px;
  font-weight: 500;
  font-size: 22px;
  letter-spacing: 0.01em;
  padding: 9.5px 115px;
  cursor: pointer;
}
@media (max-width: 767px) {
  .search button {
    font-size: 4.6728971963vw;
    padding: 1.1682242991vw 16.3551401869vw;
  }
}

/* 物件検索ページ エリア
----------------------*/
.filter-area {
  margin-bottom: 100px;
}
@media (max-width: 1024px) {
  .filter-area {
    margin-bottom: 50px;
  }
}
.filter-area .tab-labels {
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 1024px) {
  .filter-area .tab-labels {
    justify-content: flex-start;
  }
}
.filter-area .tab-label {
  background-color: #EBF3F5;
  font-weight: 500;
  text-align: center;
  cursor: pointer;
  line-height: 1.4;
}
@media (min-width: 768px) {
  .filter-area .tab-label {
    font-size: 18px;
    padding: 20.5px 15px;
    width: calc(16.66667% - 0.8333333333px);
    margin-right: 1px;
    margin-bottom: 1px;
  }
}
@media (max-width: 1024px) {
  .filter-area .tab-label {
    max-width: none;
    font-size: 16px;
    width: calc(33.3333% - 0.6666666667px);
    margin-right: 1px;
    margin-bottom: 1px;
  }
}
@media (max-width: 767px) {
  .filter-area .tab-label {
    border-radius: 0;
    font-size: 4.2056074766vw;
    letter-spacing: 0.01em;
    padding: 1.1682242991vw;
    width: calc(50% - 0.5px);
  }
}
.filter-area .tab-label:hover {
  background: #078D54;
  color: #fff;
}
.filter-area .tab-label.active {
  background: #078D54;
  color: #fff;
}
@media (max-width: 767px) {
  .filter-area .tab-label:nth-child(2n) {
    margin-right: 0;
  }
}
@media (max-width: 1024px) {
  .filter-area .tab-label:nth-child(3n) {
    margin-right: 0;
  }
}
.filter-area .tab-label:nth-child(6n) {
  margin-right: 0;
}
.filter-area .tab-radio {
  display: none;
}
.filter-area .tab-content {
  display: none;
}
.filter-area .tab-content.active {
  display: block;
}
.filter-area .search-bg {
  background: #EBFFFA;
  padding: 30px 30px 20px;
}
@media (min-width: 768px) {
  .filter-area .search-area {
    width: 80%;
    margin: 0 auto;
  }
}
@media (max-width: 1024px) {
  .filter-area .search-area {
    width: 100%;
  }
}
.filter-area .search-area-nav {
  display: flex;
}
@media (min-width: 768px) {
  .filter-area .search-area-nav {
    padding-left: 46px;
    flex-wrap: wrap;
  }
}
@media (max-width: 767px) {
  .filter-area .search-area-nav {
    padding-left: 7.0093457944vw;
    flex-direction: column;
  }
}
@media (min-width: 768px) {
  .filter-area .search-area-nav label {
    width: calc(25% - 22.5px);
    margin-right: 30px;
  }
}
@media (min-width: 768px) {
  .filter-area .search-area-nav label:nth-child(4n) {
    margin-right: 0;
  }
}
.filter-area .search-area label {
  display: inline-flex;
  align-items: center;
  -moz-column-gap: 10.5px;
       column-gap: 10.5px;
  line-height: 1;
  cursor: pointer;
  margin-bottom: 18px;
  white-space: nowrap;
}
.filter-area .search-area input[type=checkbox] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: relative;
  width: 17px;
  height: 17px;
  background: #FFFFFF;
  border: solid 1px #B9B9B9;
  border-radius: 2px;
  box-shadow: none;
  outline: none;
  cursor: pointer;
}
.filter-area .search-area input[type=checkbox]:checked {
  background-color: #3BC3A1;
  border-color: #3BC3A1;
}
.filter-area .search-area input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  background: transparent url(../img/check_icon.svg) no-repeat center center/contain;
  width: 13px;
  height: 9.5px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -40%);
}

/* 物件検索ページ 物件種別
----------------------*/
.filter-type-page {
  margin-bottom: 100px;
}
@media (max-width: 1024px) {
  .filter-type-page {
    margin-bottom: 50px;
  }
}
.filter-type-page .tab-labels {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media (min-width: 768px) {
  .filter-type-page .tab-labels {
    gap: 0 2px;
  }
}
@media (max-width: 767px) {
  .filter-type-page .tab-labels {
    justify-content: flex-start;
    margin-bottom: 11.6822429907vw;
  }
}
.filter-type-page .tab-label {
  background-color: #EBF3F5;
  font-weight: 500;
  text-align: center;
  cursor: pointer;
}
@media (min-width: 768px) {
  .filter-type-page .tab-label {
    font-size: 18px;
    flex: 1 1;
    order: -1;
    max-width: 194px;
    padding: 13px 15px;
  }
}
@media (max-width: 1024px) {
  .filter-type-page .tab-label {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .filter-type-page .tab-label {
    border-radius: 0;
    font-size: 4.2056074766vw;
    letter-spacing: 0.01em;
    width: calc(33.3333% - 0.6666666667px);
    margin-right: 1px;
    margin-bottom: 1px;
    padding: 1.1682242991vw;
  }
}
.filter-type-page .tab-label:hover {
  background: #078D54;
  color: #fff;
}
.filter-type-page .tab-label.active {
  background: #078D54;
  color: #fff;
}
@media (max-width: 767px) {
  .filter-type-page .tab-label:nth-child(3n) {
    margin-right: 0;
  }
}
.filter-type-page input {
  display: none;
}

/* 物件一覧
---------------------*/
.property {
  background: #EBF3F5;
  padding: 104px 50px 180px;
}
@media (max-width: 1024px) {
  .property {
    padding: 100px 30px;
  }
}
@media (max-width: 767px) {
  .property {
    padding: 11.6822429907vw 0;
  }
}
.property .inner {
  max-width: 100%;
}
.property-list {
  margin-bottom: 50px;
}
.property-list li {
  margin-bottom: 70px;
  background: #fff;
  border-radius: 20px;
  padding: 60px 40px;
  position: relative;
}
@media (max-width: 767px) {
  .property-list li {
    padding: 11.6822429907vw 4.6728971963vw;
    margin-bottom: 10.5140186916vw;
  }
}
.property-list li:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .property-wrapper {
    display: flex;
    justify-content: space-between;
  }
}
@media (max-width: 1024px) {
  .property-wrapper {
    display: block;
  }
}
.property-type {
  font-weight: 500;
  color: #fff;
  background: #078D54;
  border-radius: 0 0 10px 10px;
  position: absolute;
  top: 0;
  left: 40px;
  padding: 0 30px;
}
@media (max-width: 767px) {
  .property-type {
    left: 4.6728971963vw;
    padding: 0 4.6728971963vw;
  }
}
@media (min-width: 768px) {
  .property-img {
    width: 46.6046511628%;
  }
}
@media (max-width: 1024px) {
  .property-img {
    width: 100%;
    margin-bottom: 15px;
  }
}
.property-img img {
  height: auto;
}
.property-img img.noimg {
  height: 36.6764275256vw;
  max-height: 501px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (max-width: 767px) {
  .property-img img.noimg {
    height: 53.738317757vw;
  }
}
@media (min-width: 768px) {
  .property-inner {
    width: 49.9534883721%;
  }
}
@media (max-width: 1024px) {
  .property-inner {
    width: 100%;
  }
}
.property-head {
  border-bottom: dashed 1px #5CB185;
  margin-bottom: 20px;
}
.property-name {
  font-size: 26px;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.4;
  margin-bottom: 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
@media (max-width: 767px) {
  .property-name {
    font-size: 5.1401869159vw;
  }
}
.property-price {
  font-size: 25px;
  color: #D90000;
  font-weight: bold;
  margin-bottom: 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
@media (max-width: 767px) {
  .property-price {
    font-size: 4.6728971963vw;
  }
}
.property-price span {
  font-size: 40px;
}
@media (max-width: 767px) {
  .property-price span {
    font-size: 6.5420560748vw;
  }
}
.property-table table {
  width: 100%;
}
.property-table table tr td {
  line-height: 1.4;
  padding-bottom: 15px;
}
.property-table table tr td:nth-child(1) {
  font-weight: bold;
  letter-spacing: 0.01em;
  color: #078D54;
  padding-right: 15px;
  white-space: nowrap;
  width: 15%;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.property-table table tr td:nth-child(2) {
  width: 85%;
}
.property-btn {
  padding: 6px 43px;
  background: #3BC3A1;
  border-radius: 24px;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 30px auto 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
@media (max-width: 767px) {
  .property-btn {
    padding: 1.1682242991vw 9.3457943925vw;
    border-radius: 32px;
    margin-top: 7.0093457944vw;
  }
}
.property-btn-wrapper .property-btn:first-child {
  margin-top: 60px;
}
.property-btn span {
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.05em;
  padding-right: 29px;
  position: relative;
}
@media (max-width: 767px) {
  .property-btn span {
    padding-right: 6.7757009346vw;
  }
}
.property-btn span::after {
  position: absolute;
  content: "";
  background: transparent url(../img/download.svg) no-repeat center center/contain;
  width: 19px;
  height: 15px;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
}
@media (max-width: 767px) {
  .property-btn span::after {
    width: 4.4392523364vw;
    height: 3.5046728972vw;
  }
}