@charset "UTF-8";
/* --------------------------------------
　　案件ごとに編集　▼ ここから ▼
-------------------------------------- */
.columnTopMv {
  justify-content: space-between;
  align-items: flex-end;
}
@media screen and (max-width: 750px) {
  .columnTopMv {
    flex-direction: column-reverse;
    align-items: flex-start;
    gap: 2rem 0;
    width: 36rem;
    margin-left: 3rem;
  }
}

.columnTopMv__item {
  position: relative;
  z-index: 1;
}
.columnTopMv__item:nth-child(1) {
  padding-left: 6.5277777778vw;
  margin-right: -27.7777777778vw;
  padding-bottom: 7.2222222222vw;
  z-index: 10;
}
@media screen and (max-width: 750px) {
  .columnTopMv__item:nth-child(1) {
    padding: 0;
  }
}

.columnTopMv__title {
  color: #191919;
  font-family: "Zen Old Mincho", serif;
  font-size: 4.1666666667vw;
  font-style: normal;
  font-weight: 450;
  line-height: 1.3333333333; /* 133.333% */
}
@media screen and (max-width: 750px) {
  .columnTopMv__title {
    font-size: 2.4rem;
  }
}

.columnTopMv__text {
  margin-top: 1.6666666667vw;
  color: #191919;
  font-family: "Lato", sans-serif;
  font-size: 0.9722222222vw;
  font-style: normal;
  font-weight: 700;
  line-height: 3; /* 300% */
  letter-spacing: 0.04em;
}
@media screen and (max-width: 750px) {
  .columnTopMv__text {
    font-size: 1.4rem;
  }
}

.columnTopMv__slide {
  width: 80.9027777778vw;
  border-top-left-radius: 1.3888888889vw;
  overflow: hidden;
}
@media screen and (max-width: 750px) {
  .columnTopMv__slide {
    width: 36rem;
    border-top-left-radius: 2rem;
  }
}
.columnTopMv__slide .swiper__pagination {
  justify-content: flex-end;
  gap: 0 0.2777777778vw;
  display: flex;
  bottom: 1.5972222222vw;
  right: 1.5972222222vw;
}
@media screen and (max-width: 750px) {
  .columnTopMv__slide .swiper__pagination {
    gap: 0 0.4rem;
    bottom: 1.5rem;
    right: 1.5rem;
  }
}
.columnTopMv__slide .swiper-pagination-bullet {
  width: 3.125vw;
  height: 0.1388888889vw;
  border-radius: 0;
  background-color: #F2F2F2;
  opacity: 1;
}
@media screen and (max-width: 750px) {
  .columnTopMv__slide .swiper-pagination-bullet {
    width: 4.5rem;
    height: 0.2rem;
  }
}
.columnTopMv__slide .swiper-pagination-bullet-active {
  background-color: #191919;
}

.secTopConcept__inner {
  padding-top: 6.5rem;
  padding-bottom: 14.5rem;
}
@media screen and (max-width: 750px) {
  .secTopConcept__inner {
    padding-top: 6rem;
    padding-bottom: 7rem;
  }
}

.secTopConcept__img--01 {
  width: 36.3194444444vw;
  margin-right: calc(50% - 50vw);
  padding-right: 6.5972222222vw;
  margin-left: auto;
}
@media screen and (max-width: 750px) {
  .secTopConcept__img--01 {
    width: 28rem;
    padding-right: 0;
  }
}

.secTopConcept__column {
  margin-top: -10.9027777778vw;
  margin-left: calc(50% - 50vw);
}
@media screen and (max-width: 750px) {
  .secTopConcept__column {
    margin-top: 10rem;
    margin-left: 0;
  }
}

.columnTopConcept {
  gap: 0 7.5vw;
  align-items: center;
}
@media screen and (max-width: 750px) {
  .columnTopConcept {
    flex-direction: column;
    gap: 10rem 0;
  }
}

@media screen and (max-width: 750px) {
  .columnTopConcept__item:nth-child(1) {
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
  }
}
.columnTopConcept__item:nth-child(2) {
  padding-top: 3.5416666667vw;
}
@media screen and (max-width: 750px) {
  .columnTopConcept__item:nth-child(2) {
    padding-top: 0;
  }
}

.columnTopConcept__img {
  width: 35.9027777778vw;
}
@media screen and (max-width: 750px) {
  .columnTopConcept__img {
    width: 100%;
  }
}

.columnTopConcept__title {
  display: flex;
  flex-direction: column;
}

.columnTopConcept__title--en {
  color: #000;
  font-family: "Playfair", serif;
  font-size: 3.6rem;
  font-style: normal;
  font-weight: 600;
  line-height: 1.1666666667; /* 116.667% */
  letter-spacing: 0.1em;
}
@media screen and (max-width: 750px) {
  .columnTopConcept__title--en {
    font-size: 2rem;
  }
}

.columnTopConcept__title--jp {
  margin-top: 0.3rem;
  color: #000;
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 500;
  line-height: 2.1875; /* 218.75% */
}
@media screen and (max-width: 750px) {
  .columnTopConcept__title--jp {
    font-size: 1.4rem;
  }
}

.columnTopConcept__text {
  margin-top: 4.4rem;
  color: #000;
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: 2.625; /* 262.5% */
}
@media screen and (max-width: 750px) {
  .columnTopConcept__text {
    margin-top: 1.1rem;
    font-size: 1.4rem;
  }
}

.columnTopConcept__arrow {
  margin-top: 3.4rem;
}

.secTopConcept__img--02 {
  width: 32.5vw;
  margin-right: calc(50% - 50vw);
  padding-right: 7.5694444444vw;
  margin-left: auto;
}
@media screen and (max-width: 750px) {
  .secTopConcept__img--02 {
    margin-top: 6rem;
    padding-right: 0;
    width: 22rem;
  }
}

.secTopConcept__img--03 {
  margin-top: 1.5972222222vw;
  width: 23.3333333333vw;
  width: 68.75vw;
  margin-right: calc(50% - 50vw);
  padding-right: 45.4166666667vw;
  margin-left: auto;
}
@media screen and (max-width: 750px) {
  .secTopConcept__img--03 {
    margin-top: 4rem;
    width: 22rem;
    padding-right: 0;
    padding-left: 3rem;
    margin-left: calc(50% - 50vw);
  }
}

.secTopHouse {
  background-image: url(../images/common/main_bg_01.png);
  background-repeat: repeat;
  background-size: 67.5rem auto;
}
@media screen and (max-width: 750px) {
  .secTopHouse {
    background-size: 25rem auto;
  }
}

.secTopHouse__inner {
  padding-top: 7rem;
}
@media screen and (max-width: 750px) {
  .secTopHouse__inner {
    padding-top: 6rem;
  }
}

.secTopHouse__title {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.secTopHouse__title--large {
  color: #191919;
  font-family: "Playfair", serif;
  font-size: 3.6rem;
  font-style: normal;
  font-weight: 600;
  line-height: normal;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 750px) {
  .secTopHouse__title--large {
    font-size: 2.4rem;
  }
}

.secTopHouse__title--small {
  margin-top: 0.3rem;
  color: #191919;
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 500;
  line-height: 2.125; /* 212.5% */
}
@media screen and (max-width: 750px) {
  .secTopHouse__title--small {
    font-size: 1.4rem;
  }
}

.secTopHouse__lead {
  margin-top: 3.7rem;
  color: #191919;
  text-align: center;
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 400;
  line-height: 1; /* 100% */
}
@media screen and (max-width: 750px) {
  .secTopHouse__lead {
    margin-top: 2rem;
    font-size: 1.4rem;
    line-height: 1.5;
  }
}

.secTopHouse__cards {
  margin-top: 7rem;
  margin-right: calc(50% - 50vw);
  margin-left: calc(50% - 50vw);
}
@media screen and (max-width: 750px) {
  .secTopHouse__cards {
    margin-top: 2rem;
  }
}

.secTopTextLoop__inner {
  padding-top: 5rem;
  padding-bottom: 7rem;
}
@media screen and (max-width: 750px) {
  .secTopTextLoop__inner {
    padding-top: 2rem;
    padding-bottom: 3rem;
  }
}

/* 外枠：見切り */