/*----------------------------------------
	p-estate-title
----------------------------------------*/
.p-estate-title {
  position: relative;
  height: 100%;
}
.p-estate-title__container {
  height: 100%;
  padding: 24rem 8rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-title__container {
    display: flex;
    padding: 3.2rem 4rem;
  }
}
.p-estate-title__heading {
  display: flex;
  align-items: baseline;
  flex-direction: column-reverse;
}
.p-estate-title__heading h2 {
  position: relative;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.6;
  padding: 0 0.8rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-title__heading h2 {
    font-size: 1.4rem;
    padding: 0 0.4rem;
  }
}
.p-estate-title__heading h2:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 40%;
  background: #FCFCFA;
  border-radius: 0.2rem;
  z-index: -1;
}
.p-estate-title__heading span {
  font-size: 5rem;
  font-weight: 500;
  font-family: var(--Jost);
  line-height: 1.6;
}
@media screen and (max-width: 699.98px) {
  .p-estate-title__heading span {
    font-size: 4rem;
  }
}
.p-estate-title__bg {
  position: relative;
  height: 100%;
}
.p-estate-title__gradient {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #6ec3f4;
  z-index: -2;
}
.p-estate-title__gradient canvas {
  width: 100%;
  height: 100%;
  --gradient-color-1: #c3e4ff;
  --gradient-color-2: #6ec3f4;
  --gradient-color-3: #eae2ff;
  --gradient-color-4: #b9beff;
}
.p-estate-title__bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../img/estate/bg-title01.png) center/cover;
  mix-blend-mode: lighten;
  z-index: -2;
}
@media screen and (max-width: 699.98px) {
  .p-estate-title__bg {
    background: url(../img/estate/bg-title01.png) center bottom 20%/150%;
  }
}

/*----------------------------------------
	p-estate-archive
----------------------------------------*/
.p-estate-archive {
  padding: 16rem 5.6rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-archive {
    padding: 8rem 2.4rem;
  }
}
.p-estate-archive__message {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.6;
  margin: 0 0 4rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-archive__message {
    font-size: 1.6rem;
    margin: 0 0 2.4rem;
  }
}
.p-estate-archive__list {
  display: flex;
  flex-direction: column;
  gap: 5.6rem;
  margin: 0 0 8rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-archive__list {
    gap: 2.4rem;
    margin: 0 0 4rem;
  }
}
.p-estate-archive__item {
  border: 2px solid #7C7C7C;
  border-radius: 1rem;
}
.p-estate-archive__head {
  display: flex;
  align-items: center;
  gap: 4rem;
  background: #7C7C7C;
  padding: 1.6rem 3.2rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-archive__head {
    gap: 1.6rem;
    padding: 1.6rem;
  }
}
.p-estate-archive__number {
  font-size: 1.6rem;
  font-weight: 500;
  font-family: var(--Jost);
  line-height: 1.6;
  color: #fff;
}
.p-estate-archive__heading {
  flex: 1;
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.6;
  color: #fff;
}
.p-estate-archive__main {
  padding: 3.2rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-archive__main {
    padding: 1.6rem;
  }
}
.p-estate-archive__feature {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.6;
  margin: 0 0 2.4rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-archive__feature {
    font-size: 1.6rem;
  }
}
.p-estate-archive__content {
  display: flex;
  gap: 1.6rem;
  margin: 0 0 4rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-archive__content {
    flex-direction: column;
    margin: 0 0 2.4rem;
  }
}
.p-estate-archive__img {
  flex: 1;
}
.p-estate-archive__img img {
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-estate-archive__info {
  display: flex;
  flex-direction: column;
  flex: 1;
  gap: 1.6rem;
}
.p-estate-archive__info div {
  display: flex;
  align-items: baseline;
}
.p-estate-archive__info div dt, .p-estate-archive__info div dd {
  font-size: 1.5rem;
  line-height: 1.4;
}
@media screen and (max-width: 699.98px) {
  .p-estate-archive__info div dt, .p-estate-archive__info div dd {
    font-size: 1.4rem;
  }
}
.p-estate-archive__info div dt {
  font-weight: 500;
  color: #9B9B9B;
  padding: 0 0.8rem 0 0;
  margin: 0 0.8rem 0 0;
  border-right: 2px solid #9B9B9B;
}
.p-estate-archive__info div dd {
  flex: 1;
  font-weight: 500;
}
.p-estate-archive__btn {
  display: flex;
  justify-content: center;
  gap: 5.6rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-archive__btn {
    gap: 1.6rem;
  }
}
@media screen and (max-width: 699.98px) {
  .p-estate-archive__btn p {
    flex: 1;
  }
}
.p-estate-archive__btn p a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20rem;
  height: 4.2rem;
  font-size: 1.6rem;
  font-weight: 500;
  color: #fff;
  background: #7C7C7C;
  border-radius: 1rem;
  transition: 0.4s;
}
@media screen and (max-width: 699.98px) {
  .p-estate-archive__btn p a {
    width: 100%;
    border-radius: 0.4rem;
  }
}
.p-estate-archive__btn p a:hover {
  background: #0F2192;
}

/*----------------------------------------
	p-estate-single
----------------------------------------*/
.p-estate-single {
  padding: 16rem 5.6rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single {
    padding: 8rem 2.4rem;
  }
}

/*----------------------------------------
	p-estate-single-title
----------------------------------------*/
.p-estate-single-title {
  display: flex;
  align-items: baseline;
  gap: 4rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-title {
    gap: 2.4rem;
  }
}
.p-estate-single-title__number {
  font-size: 1.6rem;
  font-weight: 500;
  font-family: var(--Jost);
  line-height: 1.6;
}
.p-estate-single-title__txt {
  font-size: 2rem;
  font-weight: 500;
  line-height: 1.6;
}

/*----------------------------------------
	p-estate-single-feature
----------------------------------------*/
.p-estate-single-feature {
  font-size: 1.8rem;
  line-height: 1.6;
  margin: 5.6rem 0 0;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-feature {
    font-size: 1.6rem;
    margin: 2.4rem 0 0;
  }
}

/*----------------------------------------
	p-estate-single-gallery
----------------------------------------*/
.p-estate-single-gallery {
  margin: 2.4rem 0 12rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-gallery {
    margin: 2.4rem 0 8rem;
  }
}
.p-estate-single-gallery__slide {
  margin: 0 0 4rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-gallery__slide {
    margin: 0 0 3.2rem;
  }
}
.p-estate-single-gallery__slide .swiper-slide figure {
  display: flex;
  flex-direction: column;
  gap: 4rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-gallery__slide .swiper-slide figure {
    gap: 2.4rem;
  }
}
.p-estate-single-gallery__slide .swiper-slide figure img {
  width: 100%;
  height: 100%;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-estate-single-gallery__slide .swiper-slide figure figcaption {
  max-width: 40rem;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.8;
  margin: auto;
}
.p-estate-single-gallery__slide .swiper-ctrl {
  position: static;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.6rem;
  width: 100%;
  margin: 2.4rem 0 0;
}
.p-estate-single-gallery__slide .swiper-pagination-fraction {
  position: static;
  width: auto;
  font-size: 1.6rem;
  font-weight: 500;
}
.p-estate-single-gallery__slide .swiper-pagination-bullets {
  position: static;
  display: flex;
  flex: 1;
  gap: 0.8rem;
  width: auto;
}
.p-estate-single-gallery__slide .swiper-pagination-bullet {
  flex: 1;
  max-width: 7rem;
  height: 0.4rem;
  margin: 0 !important;
  border-radius: 0;
}
.p-estate-single-gallery__slide .swiper-pagination-bullet-active {
  background: #0F2192;
}
.p-estate-single-gallery__btn {
  display: flex;
  justify-content: center;
}

/*----------------------------------------
	p-estate-single-map
----------------------------------------*/
.p-estate-single-map {
  margin: 12rem -5.6rem 0;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-map {
    margin: 8rem -2.4rem;
  }
}
.p-estate-single-map .acf-map {
  width: 100%;
  height: 100%;
  aspect-ratio: 16/9;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-map .acf-map {
    aspect-ratio: 1;
  }
}
.p-estate-single-map .acf-map img {
  max-width: inherit !important;
}

/*----------------------------------------
	p-estate-single-land
----------------------------------------*/
.p-estate-single-land {
  margin: 5.6rem 0 0;
}
.p-estate-single-land__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.8rem;
  margin: 0 0 1.6rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-land__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
.p-estate-single-land__list li {
  border: 2px solid #7C7C7C;
  border-radius: 0.4rem;
}
.p-estate-single-land__list li h2 {
  font-size: 2rem;
  font-weight: 500;
  font-family: var(--Jost);
  line-height: 1.6;
  color: #fff;
  background: #7C7C7C;
  padding: 0.8rem 1.6rem;
}
.p-estate-single-land__list li img {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: bottom;
}
.p-estate-single-land__list li p {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.6;
  color: #fff;
  background: #7C7C7C;
  padding: 0.8rem 1.6rem;
}
.p-estate-single-land__img {
  border: 2px solid #7C7C7C;
}
.p-estate-single-land__img img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

/*----------------------------------------
	p-estate-single-facility
----------------------------------------*/
.p-estate-single-facility {
  background: #C0D7EB;
  padding: 4rem;
  margin: 2.4rem 0 0;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-facility {
    padding: 4rem 2.4rem;
  }
}
.p-estate-single-facility__heading {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  margin: 0 0 4rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-facility__heading {
    margin: 0 0 2.4rem;
  }
}
.p-estate-single-facility__list {
  display: flex;
  flex-direction: column;
  gap: 2.4rem;
  counter-reset: alpha;
}
.p-estate-single-facility__item {
  display: flex;
  gap: 2.4rem;
  counter-increment: alpha;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-facility__item {
    flex-direction: column;
    gap: 1.6rem;
  }
}
.p-estate-single-facility__img {
  flex: 1;
}
.p-estate-single-facility__img img {
  width: 100%;
  height: auto;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-estate-single-facility__main {
  display: flex;
  flex: 1;
  gap: 1.6rem;
}
.p-estate-single-facility__main:before {
  content: counter(alpha, upper-alpha);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.4rem;
  height: 2.4rem;
  font-size: 1.5rem;
  font-weight: 500;
  background: #fff;
}
.p-estate-single-facility__content {
  flex: 1;
}
.p-estate-single-facility__name {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.6;
}
.p-estate-single-facility__txt {
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.6;
  margin: 0.8rem 0 0;
}

/*----------------------------------------
	p-estate-single-info
----------------------------------------*/
.p-estate-single-info {
  margin: 5.6rem 0 0;
}
.p-estate-single-info__list {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  margin: 0 0 5.6rem;
  border: 2px solid #C0D7EB;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-info__list {
    margin: 0 0 4rem;
  }
}
.p-estate-single-info__list:before {
  content: "";
  position: absolute;
  top: 0;
  left: -2px;
  width: 2px;
  height: 100%;
  background: #C0D7EB;
  z-index: 1;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-info__list:before {
    top: -2px;
    width: calc(100% + 4px);
    height: 2px;
  }
}
.p-estate-single-info__list div {
  position: relative;
  width: 100%;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-info__list div {
    display: flex;
  }
}
.p-estate-single-info__list div:before {
  content: "";
  position: absolute;
  top: 0;
  left: -2px;
  width: 2px;
  height: 100%;
  background: #C0D7EB;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-info__list div:before {
    top: -2px;
    width: calc(100% + 4px);
    height: 2px;
  }
}
.p-estate-single-info__list div:after {
  content: "";
  position: absolute;
  top: 0;
  left: -2px;
  width: 2px;
  height: 50%;
  background: #fff;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-info__list div:after {
    top: -2px;
    width: calc(10rem + 2px);
    height: 2px;
  }
}
.p-estate-single-info__list div.col {
  width: 50%;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-info__list div.col {
    width: 100%;
  }
}
.p-estate-single-info__list div dt, .p-estate-single-info__list div dd {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.6;
  text-align: center;
  padding: 1.6rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-info__list div dt, .p-estate-single-info__list div dd {
    font-size: 1.2rem;
    text-align: left;
    padding: 0.8rem;
  }
}
.p-estate-single-info__list div dt {
  background: #C0D7EB;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-info__list div dt {
    width: 10rem;
  }
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-info__list div dd {
    flex: 1;
  }
}
.p-estate-single-info__btn {
  display: flex;
  justify-content: center;
}

/*----------------------------------------
	p-estate-single-contact
----------------------------------------*/
.p-estate-single-contact {
  padding: 16rem 0 0;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-contact {
    padding: 12rem 0 0;
  }
}
.p-estate-single-contact:first-child {
  padding: 0;
}
.p-estate-single-contact__heading {
  font-size: 3rem;
  font-weight: 500;
  text-align: center;
  margin: 0 0 5.6rem;
}
@media screen and (max-width: 699.98px) {
  .p-estate-single-contact__heading {
    font-size: 2.4rem;
    margin: 0 0 4rem;
  }
}/*# sourceMappingURL=estate.css.map */