@charset "UTF-8";
/*color*/
/* ブランシエラカラー */
/*font-family*/
/*filler color*/
/*text-shadow*/
/*box-shadow*/
/*media query break point*/
/*mainBP*/
/*gHeader用*/
/*innerの片側はみ出し用*/
/*cubic*/
/* media query */
.p-resi .c-lead em {
  font-size: 1.5em;
  font-style: italic;
}
.p-resi__lead {
  position: relative;
}
.p-resi__lead__img {
  position: absolute;
  top: 0%;
  left: 50%;
  transform: translate(-50%, -60%);
  width: 100%;
  max-width: 600px;
  height: 14rem;
}
@media only screen and (max-width: 767px) {
  .p-resi__lead__img {
    height: 9rem;
  }
}
.p-resi__lead__img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-resi__ttl {
  width: 100%;
  text-align: center;
  font-family: "EB Garamond", "Noto Serif", serif;
  letter-spacing: 0.1em;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: min(5cqi, 20rem);
  opacity: 0.8;
}
@media only screen and (max-width: 767px) {
  .p-resi__ttl {
    font-size: 9cqi;
  }
}
.p-resi__natu {
  color: #fff;
}
.p-resi__natu__cgimg {
  position: relative;
  width: 100%;
  height: auto;
  background: #fff;
  z-index: 1;
}
.p-resi__natu__cgimg__bg {
  width: calc(100% + 6rem);
  height: 70%;
  background: #e9e3d7;
  position: absolute;
  top: 30%;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__cgimg__bg {
    width: calc(100% + 3rem);
  }
}
.p-resi__natu__cgimg::before {
  content: "";
  position: absolute;
  transform: translate(0%, 0%);
  display: block;
  background: #001d50;
  bottom: 0rem;
  left: 30%;
  width: 2px;
  height: 19rem;
  z-index: 1;
  border-radius: 1rem;
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__cgimg::before {
    height: 10rem;
    bottom: 0%;
    left: 15%;
  }
}
.p-resi__natu__cgimg::after {
  content: "";
  position: absolute;
  transform: translate(0%, 0%);
  display: block;
  background: #001d50;
  bottom: 19rem;
  left: calc(30% - 3px);
  width: 8px;
  height: 8px;
  z-index: 1;
  border-radius: 1rem;
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__cgimg::after {
    bottom: 10rem;
    left: 15%;
    left: calc(15% - 3px);
  }
}
.p-resi__natu__cgimg__img {
  display: block;
  width: 60%;
  top: 50%;
  left: 50%;
  margin-inline: auto;
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__cgimg__img {
    width: 100%;
    height: auto;
  }
}
.p-resi__natu__cgimg__cap {
  font-size: 13px;
  font-size: 1.3rem;
  width: -moz-fit-content;
  width: fit-content;
  position: absolute;
  right: 20%;
  top: 70%;
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__cgimg__cap {
    font-size: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__cgimg__cap {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__cgimg__cap {
    right: 3%;
    top: 70%;
  }
}
.p-resi__natu__spes {
  border: #001d50 solid 2px;
  background: #fff;
  width: 90%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.p-resi__natu__spes__ttl {
  font-size: 20px;
  font-size: 2rem;
  background: #001d50;
  color: #fff;
  text-align: center;
  padding: 0.5em 0 0.25em;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__spes__ttl {
    font-size: 18px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__spes__ttl {
    font-size: 1.8rem;
  }
}
.p-resi__natu__spes__ttl em {
  font-size: 1.5em;
  line-height: 1;
  font-style: italic;
}
.p-resi__natu__spes__txt {
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 2rem;
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__spes__txt {
    font-size: 14px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__spes__txt {
    font-size: 1.4rem;
  }
}
.p-resi__natu__spes__img {
  width: 90%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.p-resi__natu__spes__img img {
  display: block;
  margin-inline: auto;
}
.p-resi__natu__grn {
  border: #3e7050 solid 2px;
  background-image: url("../../images/residence/grn_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  width: 90%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.p-resi__natu__grn__ttl {
  font-size: 20px;
  font-size: 2rem;
  background: #3e7050;
  color: #fff;
  text-align: center;
  padding: 0.5em 0 0.25em;
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__grn__ttl {
    font-size: 18px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__grn__ttl {
    font-size: 1.8rem;
  }
}
.p-resi__natu__grn__ttl em {
  font-size: 1.5em;
  line-height: 1;
  font-style: italic;
}
.p-resi__natu__grn__txt {
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 2rem;
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__grn__txt {
    font-size: 14px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__natu__grn__txt {
    font-size: 1.4rem;
  }
}
.p-resi__natu__grn__img {
  width: 90%;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.p-resi__natu__grn__img img {
  display: block;
  margin-inline: auto;
}
.p-resi__natuCG {
  width: 85%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 767px) {
  .p-resi__natuCG {
    width: 100%;
  }
}
.p-resi__natuCG__img {
  aspect-ratio: 2000/1296;
  height: 100%;
  width: auto;
  position: relative;
  container-type: inline-size;
}
.p-resi__natuCG__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-resi__natuCG__img__cap {
  font-size: 13px;
  font-size: 1.3rem;
  position: absolute;
  bottom: 15cqi;
  right: 1em;
  background: rgba(0, 0, 0, 0.6);
  line-height: 1;
  padding: 2px 3px;
}
@media only screen and (max-width: 767px) {
  .p-resi__natuCG__img__cap {
    font-size: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__natuCG__img__cap {
    font-size: 1rem;
  }
}
.p-resi__natuCG__img__line {
  position: relative;
  bottom: 0;
  left: 25%;
  transform: translate(-50%, -200%);
  width: 1rem;
  height: 40%;
  border: red solid 1px;
  z-index: 1;
}
.p-resi__natuCG__img__line::after {
  content: "";
  width: 1px;
  height: 50%;
  background: #fff;
  position: absolute;
  top: 0;
  right: 0;
}
.p-resi__natuTxt {
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  margin-top: 2rem;
  margin-bottom: 3rem;
}
@media only screen and (max-width: 767px) {
  .p-resi__natuTxt {
    font-size: 13px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__natuTxt {
    font-size: 1.3rem;
  }
}
.p-resi__natuTxt em {
  font-size: 1.5em;
  margin-bottom: 1em;
}
.p-resi__natuTxt em b {
  font-size: 1.5em;
}
.p-resi__list {
  max-width: 800px;
  margin-inline: auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 3px;
}
@media only screen and (max-width: 767px) {
  .p-resi__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
.p-resi__list-wrap {
  width: -moz-fit-content;
  width: fit-content;
  padding-bottom: 2rem;
  margin-bottom: 12rem;
  margin-inline: auto;
}
@media only screen and (max-width: 767px) {
  .p-resi__list-wrap {
    margin-bottom: 6rem;
  }
}
.p-resi__list-img {
  position: relative;
}
.p-resi__list-txt {
  color: #fff;
  position: absolute;
  bottom: 0.5rem;
  left: 50%;
  transform: translate(-50%, 0%);
  text-shadow: 0 0 3px #333, 0 0 3px #333, 0 0 3px #333;
  line-height: 1.2;
  text-align: center;
  font-size: 18px;
  font-size: 1.8rem;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  .p-resi__list-txt {
    font-size: 13px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__list-txt {
    font-size: 1.3rem;
  }
}
.p-resi__list-cap {
  font-size: 13px;
  font-size: 1.3rem;
  text-align: right;
  max-width: 800px;
  margin-inline: auto;
  color: #fff;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .p-resi__list-cap {
    font-size: 10px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__list-cap {
    font-size: 1rem;
  }
}
.p-resi__list-cap.md-wh {
  color: #fff;
}
.p-resi__green {
  background-size: cover;
  background-repeat: no-repeat;
}
.p-resi__green__ttlwrap {
  position: relative;
}
.p-resi__green__ttlwrap__bg {
  width: 100%;
  height: 100%;
  position: relative;
}
.p-resi__green__ttlwrap__bg__img {
  width: 100%;
  height: 100%;
  max-height: 400px;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-resi__green__ttlwrap__ttl {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-resi__green__ttlwrap__ttl__sm {
  display: block;
  font-size: 0.7em;
}
.p-resi__greenTxtbox {
  text-align: center;
  color: #fff;
  text-shadow: 0 0 3px #333, 0 0 3px #333, 0 0 3px #333;
  font-size: 16px;
  font-size: 1.6rem;
}
@media only screen and (max-width: 767px) {
  .p-resi__greenTxtbox {
    font-size: 13px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__greenTxtbox {
    font-size: 1.3rem;
  }
}
.p-resi__greenTxtbox h3 {
  font-size: 2em;
  display: block;
  line-height: 1.5;
}
.p-resi__greenTxtbox h3 small {
  font-size: 0.5em;
}
.p-resi__cmnTxt {
  color: #fff;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 2rem;
}
@media only screen and (max-width: 767px) {
  .p-resi__cmnTxt {
    font-size: 13px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__cmnTxt {
    font-size: 1.3rem;
  }
}
.p-resi__cmn__ttlwrap {
  position: relative;
}
.p-resi__cmn__ttlwrap__bg {
  width: 100%;
  height: 100%;
  position: relative;
}
.p-resi__cmn__ttlwrap__bg__img {
  width: 100%;
  height: 100%;
  max-height: 400px;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-resi__cmn__ttlwrap__ttl {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.p-resi__cmn__ttlwrap__ttl__sm {
  display: block;
  font-size: 0.7em;
}
.p-resi__cmn__bg {
  background: linear-gradient(0deg, rgb(225, 218, 202) 0%, rgb(255, 255, 255) 50%, rgb(255, 255, 255) 100%);
}
.p-resi__cmn__list {
  width: 85%;
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  font-size: 14px;
  font-size: 1.4rem;
  gap: 0.5em;
}
@media only screen and (max-width: 767px) {
  .p-resi__cmn__list {
    font-size: 12px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__cmn__list {
    font-size: 1.2rem;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__cmn__list {
    width: 95%;
    grid-template-columns: repeat(2, 1fr);
  }
}
.p-resi__cmn__list__item {
  background: #f4f1eb;
  text-align: center;
  border-radius: 1rem;
  padding: 0.5em;
  line-height: 1.2;
  display: grid;
  place-content: center;
}
.p-resi__cmn__list__item__eg {
  font-family: "EB Garamond", "Noto Serif", serif;
  display: block;
}
.p-resi__cmn__com {
  font-size: 30px;
  font-size: 3rem;
  text-align: center;
  line-height: 1.2;
  color: #fff;
  padding-bottom: 5rem;
}
@media only screen and (max-width: 767px) {
  .p-resi__cmn__com {
    font-size: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .p-resi__cmn__com {
    font-size: 2rem;
  }
}
/*# sourceMappingURL=../../map/residence/style.css.map */