@charset "UTF-8";

.sp {
  display: none;
}
.pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
}

.breadcrumb {
  padding: 20px 2%;
  border-top: 1px solid #f1e9dc;
  border-bottom: 1px solid #f1e9dc;
  background: #fff;
  color: #000;
}

.breadcrumb ul {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.4rem;
  font-weight: 300;
  letter-spacing: 0.02em;
  color: #888;
}

.breadcrumb ul li a {
  color: #000;
}

.breadcrumb ul li:not(:last-child) a::after,
.breadcrumb ul li:not(:last-child) p::after {
  content: " ＞ ";
  display: inline-block;
}

.top-mv {
  background: #fff;
  position: relative;
}

.top-mv figure figcaption {
  color: #fff;
  font-size: 12px;
  position: absolute;
  right: 5px;
  bottom: -15px;
}

.top-mv figure figcaption.annotation {
  color: #fff;
  font-size: 12px;
  position: absolute;
  right: 15px;
  bottom: 15px;
}

@media screen and (max-width: 768px) {
  .conceptContainer {
    width: 90%;
    margin-inline: auto;
  }
}

section.fourSeasons {
  background-image: url(../images/concept/four-seasons-bg.webp);
  background-size: cover;
  background-position: top;
  padding-top: 80px;
  padding-bottom: 80px;
}
@media screen and (max-width: 768px) {
  section.fourSeasons {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

section.fourSeasons figure {
  padding-block: 80px;
}
@media screen and (max-width: 768px) {
  section.fourSeasons figure {
    padding-block: 30px;
  }
}

section.fourSeasons figure.left {
  text-align: left;
  padding-right: 13%;
}

section.fourSeasons figure.right {
  text-align: right;
  padding-left: 13%;
}

section.residence {
  background-image: url(../images/concept/bg01.webp);
  background-size: cover;
  background-position: top;
  padding-top: 80px;
  padding-bottom: 80px;
}
@media screen and (max-width: 768px) {
  section.residence {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}

section.residence p {
  font-family: 'RyuminPro';
  font-size: clamp(20px, 1.5625vw, 40px);
  text-align: center;
  color: #fff;
  line-height: 3em;
  letter-spacing: 0.3em;
}
@media screen and (max-width: 768px) {
  section.residence p {
    font-size: clamp(16px, 3vw, 18px);
    line-height: 2em;
    letter-spacing: 0.1em;
  }
}

section.residence p.residenceTitle {
  font-size: clamp(38px, 2.625vw, 66px);
  line-height: 5em;
}
@media screen and (max-width: 768px) {
  section.residence p.residenceTitle {
    font-size: clamp(19px, 4vw, 24px);
    line-height: 2em;
    margin-top: 2em;
  }
}

section.poem {
  background-image: url(../images/concept/bg02.webp);
  background-size: cover;
  background-position: top;
  padding-block: 140px;
}
@media screen and (max-width: 768px) {
  section.poem {
    padding-block: 60px;
  }
}

section.poem .poemFlex {
  display: flex;
  gap: 90px;
  align-items: center;
}
@media screen and (max-width: 768px) {
  section.poem .poemFlex {
    flex-direction: column-reverse;
    gap: 30px;
  }
}

section.poem .poemFlex .poemBox {
  width: 33%;
  margin-left: 10%;
}
@media screen and (max-width: 768px) {
  section.poem .poemFlex .poemBox {
    width: 60%;
    margin-left: 0;
  }
}

section.poem .landscapeImage {
  padding-block: 140px;
  padding-inline: 20px;
}
@media screen and (max-width: 768px) {
  section.poem .landscapeImage {
    display: flex;
    flex-direction: column;
    gap: 10px;
  padding-block: 60px;
    padding-inline: 0;
  }

  section.poem .landscapeImage.pc {
    display: none;
  }
}

section.poem figure figcaption {
  font-family: 'RyuminPro';
  text-align: right;
  margin-top: 15px;
}

