@charset "utf-8";
/* CSS Document */
.land02 {
  text-align: center;
}
.land02 h2 {
  font-size: var(--fs-28);
  line-height: 2.2em;
  margin-bottom: 10vh;
}
.land02_inner {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  grid-column-gap: 10%;
  justify-content: space-between;
  align-items: flex-end;
  text-align: start;
  margin-bottom: 10vh;
}
.land02_inner h3 {
  font-size: var(--fs-23);
  line-height: 1.8em;
  margin-bottom: 2.0em;
}
.land02_inner p {
  font-size: var(--fs-18);
}
.land02_inner3 h3 {
  font-family: var(--font-cin);
  text-transform: uppercase;
  font-size: var(--fs-16);
  padding-bottom: 0.5em;
  border-bottom: solid 0.5px #5f5f5f;
  margin-bottom: 1.2em;
  text-align: start;
}
.land02_inner3 p {
  font-size: var(--fs-16);
  margin-bottom: 2.0em;
  text-align: start;
}
.land02_inner3 li {
  margin-bottom: 0.4em;
}
.land02_plant {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  row-gap: 1.5em;
}
.land02_plant ul {
  font-size: var(--fs-cap);
  white-space: nowrap;
}
.land02_plant1 ul {
  flex-basis: 24.5%;
}
.land02_plant2 ul {
  flex-basis: 49%;
  flex-shrink: 1;
}
.land2_inner2 {
  display: grid;
  grid-template-columns: 2fr 0.8fr;
  column-gap: 3.0em;
  align-items: end;
}
/**/
.land03 {
  text-align: center;
}
.land03 h2 {
  font-size: var(--fs-28);
  line-height: 2.2em;
  margin-bottom: 8vh;
}
.land03 h2 span {
  display: inline-block;
  margin-bottom: 2.5em;
  font-family: var(--font-cin);
  text-transform: uppercase;
  font-size: var(--fs-28);
  color: #a5a200;
}
.naikan {
  margin-bottom: 5em;
}
.land03 h3 {
  font-family: var(--font-cin);
  text-transform: uppercase;
  font-size: var(--fs-35);
  border-bottom: solid 0.5px #5f5f5f;
  margin-bottom: 1.0em;
}
.land03 h3 span {
  font-size: var(--fs-56);
  vertical-align: middle;
}
.land03 .ldk {
  font-family: var(--font-cin);
  text-transform: uppercase;
  font-size: var(--fs-20);
}
.land03 .ldk span {
  font-size: var(--fs-40);
  vertical-align: middle;
}
.land03 .area {
  font-family: var(--font-cin);
  font-size: var(--fs-35);
}
.land03 .area span {
  display: inline-block;
  font-family: var(--font-mincho);
  font-size: 10px;
  color: #ffffff;
  padding: 0.1em 0.5em;
  background-color: #5f5f5f;
  vertical-align: middle;
}
.land03 .floor_plan {
  display: grid;
  grid-template-columns: 2.2fr 1fr 1fr;
  justify-content: start;
  padding: 0 1.5em;
}
.land03_inner {
  display: grid;
  grid-template-columns: 1fr 1fr; /* 2列（均等幅） */
  grid-template-rows: auto auto;
  gap: 8%;
}
.land03 .feature {
  display: flex;
  flex-wrap: wrap;
  gap: 0.3em;
  margin-bottom: 3.0em;
  white-space: nowrap;
}
.land03 .feature .ls_s {
  letter-spacing: -0.1em;
}
.land03 .feature li {
  display: inline-block;
  font-size: var(--fs-16);
  color: #ffffff;
  padding: 0.1em 0.5em;
  background-color: #5f5f5f;
  flex-basis: 49%;
}
.land03 h4 {
  font-size: var(--fs-23);
  position: relative;
  text-align: start;
  margin-bottom: 1.0em;
}
.land03 h4::before {
  content: "";
  width: 62%;
  height: 1px;
  background-color: #5f5f5f;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  z-index: -1;
}
.land03 .strage_box {
  display: flex;
  justify-content: space-between;
  padding-right: clamp(1.0em, 3.0vw, 5.5em);
}
.land03 .strage {
  font-size: var(--fs-14);
  text-align: start;
  white-space: nowrap;
}
.land03 .strage span {
  position: relative;
  text-transform: uppercase;
  color: #ffffff;
}
.land03 .strage span::before {
  content: "";
  width: 1.3em;
  height: 1.3em;
  background-color: #5f5f5f;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
.land03 .strage li {
  margin-bottom: 0.8em
}
.land03_last {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 5.0em;
  font-size: var(--fs-20);
  background-color: #333333;
  color: #ffffff;
  padding: 1.5em 0;
}
.land03_last .contact {
  display: inline-block;
  padding: 1.0em 2.2em;
  background-color: #ffffff;
  color: #333333;
  transition: color 0.3s ease, border 0.3s ease;
}
.land03_last .contact:hover {
  color: #888888;
  border-radius: 10px;
}
/*=========レスポンシブ=====================

=======SP対応・ブレイクポイント768px=========*/
@media (max-width: 1400px) {
  .land02_plant ul {
    font-size: 10px;
  }
}
@media (max-width: 1024px) {
  .land03 .feature li {
    font-size: var(--fs-cap);
  }
  .land03 h4 {
    font-size: var(--fs-18);
  }
  .land03 .feature {
    margin-bottom: 1.5em;
  }
  .land03 .strage {
    font-size: var(--fs-cap);
    letter-spacing: -0.05em;
  }
  .land03 .area {
    font-size: var(--fs-25);
  }
}
@media (max-width: 768px) {
  .sec_mb {
    margin-bottom: 10vh;
  }
  /**/
  .land02 h2, .land03 h2 {
    font-size: var(--fs-23);
  }
  .land02_inner h3 {
    font-size: var(--fs-18);
  }
  .land02_inner p {
    font-size: var(--fs-16);
  }
  .land02_inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 5%;
  }
  .land02_plant ul {
    font-size: var(--fs-14);
  }
  .land02_plant1 ul {
    flex-basis: 49%;
  }
  .land2_inner2 {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr 1fr;
    row-gap: 2.0em;
  }
  .land02_inner3 h3 {
    font-size: var(--fs-23);
    padding-bottom: 0.2em;
  }
  /**/
  .land03_inner {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
  .land03 .floor_plan {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: repeat(2, 0.5fr);
    justify-content: center;
  }
  .ldk {
    grid-area: 1 / 1 / 2 / 3;
  }
  .label {
    margin-bottom: 10vh;
  }
  .land03 .feature li {
    font-size: var(--fs-16);
  }
  .land03 h4 {
    font-size: var(--fs-23);
  }
  .land03 h4::before {
    width: 75%;
  }
  .land03 .strage {
    font-size: var(--fs-16);
    letter-spacing: 0;
  }
  .plan_box {
    border-bottom: dotted 0.5px #5f5f5f;
    padding-bottom: 10vh;
    margin-bottom: 5vh;
  }
  .land03_last {
    display: flex;
    flex-direction: column;
    font-size: var(--fs-16);
    row-gap: 1.2em;
  }
}
@media (max-width: 500px) {
  .land02_inner {
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 0.4fr 1fr;
    grid-column-gap: 5%;
    row-gap: 2.0em;
  }
  .land02_inner h3 {
    font-size: var(--fs-16);
  }
  .land02_inner p, .land02_inner3 p {
    font-size: var(--fs-14);
  }
  .land03 .area {
    font-size: var(--fs-14);
  }
  .land03 .ldk {
    font-size: var(--fs-16);
    line-height: 1.6em;
  }
  .label {
    margin-bottom: 6vh;
  }
  .land03 .feature li {
    font-size: 12px;
  }
  .land03 h4::before {
    width: 58%;
  }
  .land03 .strage_box {
    display: block;
    font-size: var(--fs-14);
  }
  .land03 .strage li {
    margin-bottom: 0.4em;
  }
}