.design {
  position: relative;
}

.l-inner {
  max-width: min(85.591vw, 1425.6px);
}
@media screen and (max-width: 768px) {
  .l-inner {
    max-width: 100%;
  }
}

p + p {
  -webkit-margin-before: unset;
          margin-block-start: unset;
}

img {
  width: 100%;
}

[class*=s0] figure {
  position: relative;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  width: 100%;
}

.ttl {
  font-family: "trajan-pro-3", serif;
  font-weight: 400;
  font-size: clamp(32px, 2.882vw, 48px);
  color: #dfdbbb;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .ttl {
    font-size: clamp(16px, 5.333vw, 24px);
  }
}

.subttl {
  font-family: "trajan-pro-3", serif;
  font-weight: 400;
  font-size: clamp(16px, 1.441vw, 24px);
  color: #dfdbbb;
  line-height: 1;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 768px) {
  .subttl {
    font-size: clamp(10.4px, 3.467vw, 15.6px);
    letter-spacing: 0;
  }
}

.bgWrap01 {
  background: url(/asset/img/design/facade_bg01.svg) no-repeat left 0 top min(5.764vw, 96px), -webkit-gradient(linear, left top, left bottom, from(#3e3a39), to(#000));
  background: url(/asset/img/design/facade_bg01.svg) no-repeat left 0 top min(5.764vw, 96px), linear-gradient(#3e3a39 0%, #000 100%);
  background-size: 100% auto;
}
@media screen and (max-width: 768px) {
  .bgWrap01 {
    background: url(/asset/img/design/facade_bg01.svg) no-repeat left 0 top min(8vw, 36px), -webkit-gradient(linear, left top, left bottom, from(#3e3a39), to(#000));
    background: url(/asset/img/design/facade_bg01.svg) no-repeat left 0 top min(8vw, 36px), linear-gradient(#3e3a39 0%, #000 100%);
    background-size: 100% auto;
  }
}

.facade .l-inner {
  -webkit-margin-before: max(-5.764vw, -96px);
          margin-block-start: max(-5.764vw, -96px);
  max-width: min(100vw, 1665.6px);
  min-height: min(101.585vw, 1692px);
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 768px) {
  .facade .l-inner {
    -webkit-margin-before: max(-8vw, -36px);
            margin-block-start: max(-8vw, -36px);
    max-width: 100%;
    min-height: min(133.333vw, 600px);
  }
}
.facade .txts {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  margin-block: auto;
  margin-inline: auto;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  -webkit-padding-start: min(3.602vw, 60px);
          padding-inline-start: min(3.602vw, 60px);
  -webkit-padding-after: min(1.441vw, 24px);
          padding-block-end: min(1.441vw, 24px);
}
@media screen and (max-width: 768px) {
  .facade .txts {
    padding-inline: 0 min(10.667vw, 48px);
    -webkit-padding-after: min(12.267vw, 55.2px);
            padding-block-end: min(12.267vw, 55.2px);
    margin-inline: auto;
  }
}
.facade .main {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(24px, 2.161vw, 36px);
  color: #fff;
  line-height: 1.83;
  -webkit-margin-before: min(1.369vw, 22.8px);
          margin-block-start: min(1.369vw, 22.8px);
}
@media screen and (max-width: 768px) {
  .facade .main {
    font-size: clamp(8.8px, 2.933vw, 13.2px);
    line-height: 1.36;
    -webkit-margin-before: min(0.533vw, 2.4px);
            margin-block-start: min(0.533vw, 2.4px);
  }
}
.facade .hexagon-reveal-container {
  grid-column: 1/-1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
}
.facade .hexagon-reveal-container .caption {
  color: #a0a0a0;
  bottom: min(6.484vw, 108px);
  right: min(16.787vw, 279.6px);
}
@media screen and (max-width: 768px) {
  .facade .hexagon-reveal-container .caption {
    bottom: 0;
    right: calc(15% + min(5.333vw, 24px));
  }
}

.hexagon-reveal-container {
  position: relative;
  display: block;
  width: 72.8%;
  margin-left: auto;
  -webkit-transform: translateX(5.2%);
          transform: translateX(5.2%);
}

@media screen and (max-width: 768px) {
  .hexagon-reveal-container {
    width: 100%;
    -webkit-transform: translateX(18%);
            transform: translateX(18%);
  }
}
.hexagon-reveal-svg {
  display: block;
  width: 100%;
  height: auto;
}

.hexagon-reveal-image {
  width: 100%;
  height: 100%;
}

#hexagonMask .hexagon {
  fill: #000;
  stroke: #000;
  stroke-width: 1.5;
  stroke-linejoin: miter;
  stroke-miterlimit: 10;
  -webkit-transition: fill 0.2s ease-out, stroke 0.2s ease-out;
  transition: fill 0.2s ease-out, stroke 0.2s ease-out;
  shape-rendering: geometricPrecision;
}

#hexagonMask .hexagon.revealed {
  fill: #fff;
  stroke: #fff;
  -webkit-transition: fill 0.2s ease-out, stroke 0.2s ease-out;
  transition: fill 0.2s ease-out, stroke 0.2s ease-out;
}

.concept {
  background: rgba(61, 90, 71, 0.41);
  max-width: min(67.579vw, 1125.6px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .concept {
    max-width: 88%;
    -webkit-margin-before: min(9.333vw, 42px);
            margin-block-start: min(9.333vw, 42px);
  }
}
.concept .subttl {
  -webkit-border-after: 1px solid #dfdbbb;
          border-block-end: 1px solid #dfdbbb;
  padding-inline: min(0.72vw, 12px);
  -webkit-padding-before: min(2.954vw, 49.2px);
          padding-block-start: min(2.954vw, 49.2px);
}
@media screen and (max-width: 768px) {
  .concept .subttl {
    padding-inline: min(2.667vw, 12px);
    padding-block: min(4.267vw, 19.2px) min(0.533vw, 2.4px);
  }
}
.concept .box {
  padding-block: min(3.026vw, 50.4px) min(0.72vw, 12px);
  max-width: min(51.369vw, 855.6px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .concept .box {
    max-width: 100%;
    padding: min(4.8vw, 21.6px) min(4vw, 18px);
  }
}
.concept .main {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(25.6px, 2.305vw, 38.4px);
  color: #fff;
  line-height: 1.88;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto min(4.323vw, 72px) 1fr;
  grid-template-columns: auto 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(4.323vw, 72px);
}
@media screen and (max-width: 768px) {
  .concept .main {
    font-size: clamp(11.2px, 3.733vw, 16.8px);
    line-height: 1.43;
    text-align: center;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: min(3.2vw, 14.4px);
  }
}
.concept .main::before {
  content: "";
  display: block;
  width: min(9.726vw, 162px);
  height: min(11.167vw, 186px);
  background: url(/asset/img/design/concept_p01.svg) no-repeat center center;
  background-size: contain;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .concept .main::before {
    width: min(21.067vw, 94.8px);
    height: min(24.267vw, 109.2px);
  }
}
.concept .item01 {
  -webkit-margin-before: min(3.026vw, 50.4px);
          margin-block-start: min(3.026vw, 50.4px);
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr min(1.729vw, 28.8px) 0.59fr;
  grid-template-columns: 1fr 0.59fr;
  gap: min(1.729vw, 28.8px);
}
@media screen and (max-width: 768px) {
  .concept .item01 {
    -webkit-margin-before: min(5.333vw, 24px);
            margin-block-start: min(5.333vw, 24px);
    -ms-grid-columns: 1fr min(1.867vw, 8.4px) 0.8fr;
    grid-template-columns: 1fr 0.8fr;
    gap: min(1.867vw, 8.4px);
    width: calc(100% + min(3.733vw, 16.8px));
    -webkit-transform: translateX(max(-2.133vw, -9.6px));
            transform: translateX(max(-2.133vw, -9.6px));
  }
}
.concept .item01 p {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(14.4px, 1.297vw, 21.6px);
  color: #fff;
  line-height: 2.22;
  -webkit-margin-before: -0.25em;
          margin-block-start: -0.25em;
}
@media screen and (max-width: 768px) {
  .concept .item01 p {
    font-size: clamp(8.8px, 2.933vw, 13.2px);
    line-height: 1.64;
    -webkit-margin-before: 0;
            margin-block-start: 0;
  }
}
.concept .item01 figure {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.concept .item02 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 0.91fr 1fr;
  grid-template-columns: 0.91fr 1fr;
  -ms-grid-rows: auto 1fr;
  grid-template-rows: auto 1fr;
  -webkit-margin-before: max(-2.017vw, -33.6px);
          margin-block-start: max(-2.017vw, -33.6px);
}
.concept .item02 > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.concept .item02 > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}
.concept .item02 > *:nth-child(3) {
  -ms-grid-row: 2;
  -ms-grid-column: 1;
}
.concept .item02 > *:nth-child(4) {
  -ms-grid-row: 2;
  -ms-grid-column: 2;
}
@media screen and (max-width: 768px) {
  .concept .item02 {
    -ms-grid-columns: 1fr min(4vw, 18px) 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: min(7.2vw, 32.4px) min(4vw, 18px);
    -webkit-margin-before: max(-8vw, -36px);
            margin-block-start: max(-8vw, -36px);
  }
}
.concept .item02 li {
  display: -ms-grid;
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(1.009vw, 16.8px);
}
@media screen and (max-width: 768px) {
  .concept .item02 li {
    gap: min(4vw, 18px);
  }
}
.concept .item02 li:nth-of-type(1) {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  grid-row: 1/3;
  -ms-grid-columns: min(10.303vw, 171.6px) 1fr;
  grid-template-columns: min(10.303vw, 171.6px) 1fr;
}
@media screen and (max-width: 768px) {
  .concept .item02 li:nth-of-type(1) {
    grid-column: 1/-1;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    -ms-grid-columns: 1fr min(13.333vw, 60px) 1fr;
    grid-template-columns: repeat(2, 1fr);
    gap: min(13.333vw, 60px);
  }
}
.concept .item02 li:nth-of-type(1) p {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  position: relative;
  z-index: 1;
  font-size: clamp(13.6px, 1.225vw, 20.4px);
}
@media screen and (max-width: 768px) {
  .concept .item02 li:nth-of-type(1) p {
    font-size: clamp(11.2px, 3.733vw, 16.8px);
  }
}
.concept .item02 li:nth-of-type(1) figure {
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-column: 1/3;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  margin-inline: auto max(-2.738vw, -45.6px);
  margin-block: 0 auto;
  width: 88%;
}
@media screen and (max-width: 768px) {
  .concept .item02 li:nth-of-type(1) figure {
    margin-inline: auto -10%;
    width: 86%;
  }
}
.concept .item02 li:nth-of-type(1) figcaption {
  right: min(3.17vw, 52.8px);
  bottom: min(1.225vw, 20.4px);
}
@media screen and (max-width: 768px) {
  .concept .item02 li:nth-of-type(1) figcaption {
    right: calc(10% + min(2.667vw, 12px));
    bottom: min(3.733vw, 16.8px);
  }
}
.concept .item02 li:nth-of-type(2) {
  -ms-grid-columns: 1fr min(10.303vw, 171.6px);
  grid-template-columns: 1fr min(10.303vw, 171.6px);
  -webkit-margin-before: min(7.205vw, 120px);
          margin-block-start: min(7.205vw, 120px);
}
@media screen and (max-width: 768px) {
  .concept .item02 li:nth-of-type(2) {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    -ms-grid-rows: 1fr min(2.933vw, 13.2px) auto min(2.933vw, 13.2px) auto;
    grid-template-rows: 1fr auto auto;
    -webkit-margin-before: 0;
            margin-block-start: 0;
    gap: min(2.933vw, 13.2px);
  }
  .concept .item02 li:nth-of-type(2) > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .concept .item02 li:nth-of-type(2) > *:nth-child(2) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
  .concept .item02 li:nth-of-type(2) > *:nth-child(3) {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }
}
@media screen and (max-width: 768px) {
  .concept .item02 li:nth-of-type(2):not(:has(figcaption))::after {
    content: "";
    display: block;
    -webkit-margin-before: min(1.333vw, 6px);
            margin-block-start: min(1.333vw, 6px);
  }
}
.concept .item02 li:nth-of-type(2) p {
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-column: 2/3;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  font-size: clamp(10.4px, 0.937vw, 15.6px);
}
@media screen and (max-width: 768px) {
  .concept .item02 li:nth-of-type(2) p {
    grid-column: unset;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    font-size: clamp(11.2px, 3.733vw, 16.8px);
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-block: min(2.133vw, 9.6px);
  }
}
.concept .item02 li:nth-of-type(2) figure {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
}
@media screen and (max-width: 768px) {
  .concept .item02 li:nth-of-type(2) figure {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
  }
}
.concept .item02 li:nth-of-type(2) figcaption {
  top: 100%;
  left: 0;
}
@media screen and (max-width: 768px) {
  .concept .item02 li:nth-of-type(2) figcaption {
    position: static;
    text-align: right;
  }
}
.concept .item02 li:nth-of-type(3) {
  -ms-grid-columns: min(10.303vw, 171.6px) 1fr;
  grid-template-columns: min(10.303vw, 171.6px) 1fr;
}
@media screen and (max-width: 768px) {
  .concept .item02 li:nth-of-type(3) {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    -ms-grid-rows: 1fr min(2.933vw, 13.2px) auto;
    grid-template-rows: 1fr auto;
    gap: min(2.933vw, 13.2px);
  }
  .concept .item02 li:nth-of-type(3) > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .concept .item02 li:nth-of-type(3) > *:nth-child(2) {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }
}
.concept .item02 li:nth-of-type(3) p {
  font-size: clamp(10.4px, 0.937vw, 15.6px);
}
@media screen and (max-width: 768px) {
  .concept .item02 li:nth-of-type(3) p {
    font-size: clamp(11.2px, 3.733vw, 16.8px);
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-block: min(2.133vw, 9.6px);
  }
}
.concept .item02 li:nth-of-type(3) figcaption {
  top: 100%;
  right: 0;
}
@media screen and (max-width: 768px) {
  .concept .item02 li:nth-of-type(3) figcaption {
    position: static;
    text-align: right;
  }
}
.concept .item02 p {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  color: #8b987b;
  line-height: 1.53;
  text-align: center;
  padding-block: min(1.081vw, 18px);
  border-block: 1px solid #8b987b;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (max-width: 768px) {
  .concept .item02 p {
    font-size: clamp(11.2px, 3.733vw, 16.8px);
    line-height: 1.43;
    padding-block: min(2.667vw, 12px);
  }
}
.concept .item02 p span span {
  display: inline-block;
}
.concept .item02 figure {
  position: relative;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.concept .item02 figcaption {
  color: #fff;
  font-weight: 500;
  font-size: clamp(8px, 0.72vw, 12px);
  -webkit-margin-before: min(0.144vw, 2.4px);
          margin-block-start: min(0.144vw, 2.4px);
}
@media screen and (max-width: 768px) {
  .concept .item02 figcaption {
    font-size: clamp(8px, 2.667vw, 12px);
    -webkit-margin-before: min(1.333vw, 6px);
            margin-block-start: min(1.333vw, 6px);
  }
}

.material {
  max-width: min(67.579vw, 1125.6px);
  margin-inline: auto;
  -webkit-margin-before: min(5.548vw, 92.4px);
          margin-block-start: min(5.548vw, 92.4px);
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr;
  grid-template-columns: 1fr;
  gap: min(3.963vw, 66px);
}
@media screen and (max-width: 768px) {
  .material {
    max-width: 100%;
    -webkit-margin-before: min(8.533vw, 38.4px);
            margin-block-start: min(8.533vw, 38.4px);
    gap: min(5.333vw, 24px);
  }
}
.material .txts {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (max-width: 768px) {
  .material .txts {
    max-width: 89%;
    width: 100%;
    margin-inline: auto;
  }
}
.material .main {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(24px, 2.161vw, 36px);
  color: #fff;
  line-height: 1.83;
  -webkit-margin-before: min(1.081vw, 18px);
          margin-block-start: min(1.081vw, 18px);
}
@media screen and (max-width: 768px) {
  .material .main {
    font-size: clamp(8.8px, 2.933vw, 13.2px);
    line-height: 1.36;
    -webkit-margin-before: min(0.8vw, 3.6px);
            margin-block-start: min(0.8vw, 3.6px);
  }
}
.material .main span {
  display: inline-block;
}
.material .imgs {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr min(1.009vw, 16.8px) 0.842fr;
  grid-template-columns: 1fr 0.842fr;
  gap: min(1.009vw, 16.8px);
  padding-inline: min(0.36vw, 6px);
}
@media screen and (max-width: 768px) {
  .material .imgs {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: min(1.067vw, 4.8px);
    padding-inline: 0;
  }
}
.material .imgs figure {
  position: relative;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.material .imgs figure figcaption {
  font-family: "Zen Old Mincho", serif;
  font-weight: 700;
  font-size: clamp(10.4px, 0.937vw, 15.6px);
  color: #a0a0a0;
  line-height: 1.46;
  -webkit-margin-before: min(0.576vw, 9.6px);
          margin-block-start: min(0.576vw, 9.6px);
}
@media screen and (max-width: 768px) {
  .material .imgs figure figcaption {
    position: absolute;
    top: 100%;
    font-size: clamp(8px, 2.667vw, 12px);
    line-height: 1.5;
    -webkit-margin-before: min(0.8vw, 3.6px);
            margin-block-start: min(0.8vw, 3.6px);
    padding-inline: 1em;
  }
}
@media screen and (max-width: 768px) {
  .material .imgs figure:nth-of-type(1) {
    width: 72%;
    margin-inline: 0 auto;
  }
}
@media screen and (max-width: 768px) {
  .material .imgs figure:nth-of-type(2) {
    width: 59%;
    margin-inline: auto 0;
  }
}
@media screen and (max-width: 768px) {
  .material .imgs figure:nth-of-type(2) figcaption {
    right: 0;
  }
}

.s03 {
  -webkit-margin-before: min(9.366vw, 156px);
          margin-block-start: min(9.366vw, 156px);
}
@media screen and (max-width: 768px) {
  .s03 {
    -webkit-margin-before: min(13.067vw, 58.8px);
            margin-block-start: min(13.067vw, 58.8px);
  }
}

.entrance {
  -webkit-margin-before: min(2.882vw, 48px);
          margin-block-start: min(2.882vw, 48px);
}
@media screen and (max-width: 768px) {
  .entrance {
    -webkit-margin-before: min(4.8vw, 21.6px);
            margin-block-start: min(4.8vw, 21.6px);
  }
}
.entrance .ttl {
  text-align: center;
}
.entrance .main {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(24px, 2.161vw, 36px);
  color: #fff;
  line-height: 2;
  text-align: center;
  -webkit-margin-before: min(1.081vw, 18px);
          margin-block-start: min(1.081vw, 18px);
}
@media screen and (max-width: 768px) {
  .entrance .main {
    font-size: clamp(8.8px, 2.933vw, 13.2px);
    line-height: 1.36;
    text-shadow: 0px 0px 2px #000;
    -webkit-margin-before: min(2.133vw, 9.6px);
            margin-block-start: min(2.133vw, 9.6px);
  }
}
.entrance .item01 {
  max-width: 1425.6px;
  padding-inline: 0 min(3.026vw, 50.4px);
  margin-inline: auto;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr min(4.179vw, 69.6px) 0.53fr;
  grid-template-columns: 1fr 0.53fr;
  gap: min(4.179vw, 69.6px);
  -webkit-margin-before: min(3.53vw, 58.8px);
          margin-block-start: min(3.53vw, 58.8px);
}
@media screen and (max-width: 768px) {
  .entrance .item01 {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: min(4.267vw, 19.2px);
    -webkit-margin-before: min(10.667vw, 48px);
            margin-block-start: min(10.667vw, 48px);
    padding-inline: 0;
    width: 78%;
    margin-inline: auto;
  }
}
.entrance .item01 figure {
  margin-block: auto;
}
.entrance .item01 .txts {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  margin-block: auto;
  -webkit-padding-after: min(2.666vw, 44.4px);
          padding-block-end: min(2.666vw, 44.4px);
}
@media screen and (max-width: 768px) {
  .entrance .item01 .txts {
    padding-block: 0;
  }
}
.entrance .item01 .txt01 {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(20px, 1.801vw, 30px);
  color: #fff;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  .entrance .item01 .txt01 {
    font-size: clamp(12px, 4vw, 18px);
    line-height: 1.67;
    text-align: center;
  }
}
.entrance .item01 .txt01 span {
  display: inline-block;
}
.entrance .item01 .txt02 {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(14.4px, 1.297vw, 21.6px);
  color: #fff;
  line-height: 2.22;
  -webkit-margin-before: min(3.242vw, 54px);
          margin-block-start: min(3.242vw, 54px);
}
@media screen and (max-width: 768px) {
  .entrance .item01 .txt02 {
    font-size: clamp(8.8px, 2.933vw, 13.2px);
    line-height: 2.18;
    -webkit-margin-before: min(4.533vw, 20.4px);
            margin-block-start: min(4.533vw, 20.4px);
  }
}

.bgWrap02 {
  background: -webkit-gradient(linear, left top, left bottom, from(#3c392d), to(#0d0d0a));
  background: linear-gradient(#3c392d 0%, #0d0d0a 100%);
  -webkit-margin-before: min(8.429vw, 140.4px);
          margin-block-start: min(8.429vw, 140.4px);
  padding-block: min(3.098vw, 51.6px) min(13.184vw, 219.6px);
}
@media screen and (max-width: 768px) {
  .bgWrap02 {
    -webkit-margin-before: min(12.267vw, 55.2px);
            margin-block-start: min(12.267vw, 55.2px);
    padding-block: min(6.133vw, 27.6px) min(4.8vw, 21.6px);
  }
}

.story {
  max-width: min(67.579vw, 1125.6px);
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .story {
    max-width: 100%;
  }
}
.story .subttl {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto min(1.657vw, 27.6px) 1fr;
  grid-template-columns: auto 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(1.657vw, 27.6px);
}
@media screen and (max-width: 768px) {
  .story .subttl {
    -ms-grid-columns: 1fr min(1.867vw, 8.4px) auto min(1.867vw, 8.4px) 1fr;
    grid-template-columns: 1fr auto 1fr;
    gap: min(1.867vw, 8.4px);
  }
}
.story .subttl::before {
  display: none;
}
@media screen and (max-width: 768px) {
  .story .subttl::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #dfdbbb;
  }
}
.story .subttl::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #dfdbbb;
}
.story .items {
  -webkit-margin-start: min(1.801vw, 30px);
          margin-inline-start: min(1.801vw, 30px);
}
@media screen and (max-width: 768px) {
  .story .items {
    max-width: 77%;
    margin-inline: auto;
  }
}
.story .items li {
  display: -ms-grid;
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(2.666vw, 44.4px);
}
@media screen and (max-width: 768px) {
  .story .items li {
    gap: min(6.667vw, 30px);
  }
}
.story .items li:nth-of-type(1) {
  -ms-grid-columns: 1fr 0.77fr;
  grid-template-columns: 1fr 0.77fr;
  -webkit-margin-before: min(1.729vw, 28.8px);
          margin-block-start: min(1.729vw, 28.8px);
}
@media screen and (max-width: 768px) {
  .story .items li:nth-of-type(1) {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    -webkit-margin-before: min(9.067vw, 40.8px);
            margin-block-start: min(9.067vw, 40.8px);
  }
}
.story .items li:nth-of-type(2) {
  -ms-grid-columns: 0.64fr min(3.458vw, 57.6px) 1fr;
  grid-template-columns: 0.64fr 1fr;
  gap: min(3.458vw, 57.6px);
  -webkit-margin-before: min(3.746vw, 62.4px);
          margin-block-start: min(3.746vw, 62.4px);
}
@media screen and (max-width: 768px) {
  .story .items li:nth-of-type(2) {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: min(6.667vw, 30px);
    -webkit-margin-before: min(9.6vw, 43.2px);
            margin-block-start: min(9.6vw, 43.2px);
  }
}
.story .items li:nth-of-type(2) .txts {
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-column: 2/3;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
}
@media screen and (max-width: 768px) {
  .story .items li:nth-of-type(2) .txts {
    grid-column: unset;
    grid-row: unset;
  }
}
.story .items li:nth-of-type(3) {
  -ms-grid-columns: 1fr 0.6fr;
  grid-template-columns: 1fr 0.6fr;
  -webkit-margin-before: min(5.764vw, 96px);
          margin-block-start: min(5.764vw, 96px);
}
@media screen and (max-width: 768px) {
  .story .items li:nth-of-type(3) {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    -webkit-margin-before: min(5.067vw, 22.8px);
            margin-block-start: min(5.067vw, 22.8px);
  }
}
.story .items .txts {
  -webkit-border-start: 3px solid #dfdbbb;
          border-inline-start: 3px solid #dfdbbb;
  -webkit-padding-start: min(2.017vw, 33.6px);
          padding-inline-start: min(2.017vw, 33.6px);
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (max-width: 768px) {
  .story .items .txts {
    border: unset;
    padding-inline: 0;
  }
}
.story .items .txt01 {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(18.4px, 1.657vw, 27.6px);
  color: #dfdbbb;
  line-height: 1.61;
}
@media screen and (max-width: 768px) {
  .story .items .txt01 {
    font-size: clamp(12.8px, 4.267vw, 19.2px);
    line-height: 1.38;
    -webkit-border-start: 2px solid #dfdbbb;
            border-inline-start: 2px solid #dfdbbb;
    -webkit-padding-start: min(3.467vw, 15.6px);
            padding-inline-start: min(3.467vw, 15.6px);
  }
}
.story .items .txt01 span {
  display: inline-block;
}
.story .items .txt02 {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(9.6px, 0.865vw, 14.4px);
  color: #fff;
  line-height: 1.67;
  -webkit-margin-before: min(1.585vw, 26.4px);
          margin-block-start: min(1.585vw, 26.4px);
}
@media screen and (max-width: 768px) {
  .story .items .txt02 {
    font-size: clamp(11.2px, 3.733vw, 16.8px);
    line-height: 1.79;
    -webkit-margin-before: min(2.933vw, 13.2px);
            margin-block-start: min(2.933vw, 13.2px);
    width: 75%;
    margin-inline: auto;
  }
}
@media screen and (max-width: 768px) {
  .story .items figure {
    width: 77%;
    margin-inline: auto;
  }
}

.designer {
  max-width: min(67.579vw, 1125.6px);
  margin-inline: auto;
  -webkit-margin-before: min(2.305vw, 38.4px);
          margin-block-start: min(2.305vw, 38.4px);
}
@media screen and (max-width: 768px) {
  .designer {
    max-width: 100%;
    -webkit-margin-before: min(11.467vw, 51.6px);
            margin-block-start: min(11.467vw, 51.6px);
  }
}
.designer .subttl {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto min(1.657vw, 27.6px) 1fr;
  grid-template-columns: auto 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: min(1.657vw, 27.6px);
  -webkit-margin-after: min(1.513vw, 25.2px);
          margin-block-end: min(1.513vw, 25.2px);
}
@media screen and (max-width: 768px) {
  .designer .subttl {
    -webkit-margin-after: min(4.8vw, 21.6px);
            margin-block-end: min(4.8vw, 21.6px);
    -ms-grid-columns: 1fr min(1.867vw, 8.4px) auto min(1.867vw, 8.4px) 1fr;
    grid-template-columns: 1fr auto 1fr;
    gap: min(1.867vw, 8.4px);
  }
}
.designer .subttl::before {
  display: none;
}
@media screen and (max-width: 768px) {
  .designer .subttl::before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #dfdbbb;
  }
}
.designer .subttl::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #dfdbbb;
}
.designer .items {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 0.92fr min(2.594vw, 43.2px) 0.88fr min(2.594vw, 43.2px) 1fr;
  grid-template-columns: 0.92fr 0.88fr 1fr;
  width: 94%;
  margin-inline: auto 0;
  gap: min(2.594vw, 43.2px);
}
@media screen and (max-width: 768px) {
  .designer .items {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: min(4.267vw, 19.2px);
    width: 100%;
    margin-inline: auto;
  }
}
.designer .txts {
  -ms-grid-column: 2;
  -ms-grid-column-span: 1;
  grid-column: 2/3;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
}
@media screen and (max-width: 768px) {
  .designer .txts {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    width: 71%;
    margin-inline: auto;
  }
}
.designer .txt01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0 min(1.801vw, 30px);
}
@media screen and (max-width: 768px) {
  .designer .txt01 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-margin-before: min(1.067vw, 4.8px);
            margin-block-start: min(1.067vw, 4.8px);
  }
}
.designer .txt01 span:nth-of-type(1) {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(13.6px, 1.225vw, 20.4px);
  color: #fff;
  line-height: 1.47;
}
@media screen and (max-width: 768px) {
  .designer .txt01 span:nth-of-type(1) {
    font-size: clamp(12px, 4vw, 18px);
    line-height: 1.4;
    text-align: center;
  }
}
.designer .txt01 span:nth-of-type(2) {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(28px, 2.522vw, 42px);
  color: #fff;
  line-height: 1.46;
  -webkit-margin-before: min(0.288vw, 4.8px);
          margin-block-start: min(0.288vw, 4.8px);
}
@media screen and (max-width: 768px) {
  .designer .txt01 span:nth-of-type(2) {
    font-size: clamp(24px, 8vw, 36px);
    line-height: 1.17;
    text-align: center;
    -webkit-margin-before: min(2.667vw, 12px);
            margin-block-start: min(2.667vw, 12px);
  }
}
.designer .txt02 {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(9.6px, 0.865vw, 14.4px);
  color: #fff;
  line-height: 2;
  -webkit-margin-before: min(1.009vw, 16.8px);
          margin-block-start: min(1.009vw, 16.8px);
  max-width: clamp(176px, 15.85vw, 264px);
}
@media screen and (max-width: 768px) {
  .designer .txt02 {
    font-size: clamp(8.8px, 2.933vw, 13.2px);
    line-height: 2.18;
    -webkit-margin-before: min(4.533vw, 20.4px);
            margin-block-start: min(4.533vw, 20.4px);
    max-width: unset;
  }
}
.designer .img01 {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
}
@media screen and (max-width: 768px) {
  .designer .img01 {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    width: 59%;
    margin-inline: auto;
  }
}
.designer .img02 {
  -ms-grid-column: 3;
  -ms-grid-column-span: 1;
  grid-column: 3/4;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  -webkit-margin-before: min(0.865vw, 14.4px);
          margin-block-start: min(0.865vw, 14.4px);
}
@media screen and (max-width: 768px) {
  .designer .img02 {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 3;
    -ms-grid-row-span: 1;
    grid-row: 3/4;
    width: 57%;
    margin-inline: auto;
  }
}
.designer dd p {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  color: #fff;
  -webkit-margin-before: min(1.081vw, 18px);
          margin-block-start: min(1.081vw, 18px);
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .designer dd p {
    -webkit-margin-before: min(1.067vw, 4.8px);
            margin-block-start: min(1.067vw, 4.8px);
  }
}
.designer dd p span {
  display: block;
  text-align: center;
}
.designer dd p span:nth-of-type(1) {
  font-size: clamp(10.4px, 0.937vw, 15.6px);
  line-height: 1.23;
}
@media screen and (max-width: 768px) {
  .designer dd p span:nth-of-type(1) {
    font-size: clamp(9.6px, 3.2vw, 14.4px);
    line-height: 1.33;
  }
}
.designer dd p span:nth-of-type(2) {
  font-size: clamp(8.8px, 0.793vw, 13.2px);
  line-height: 1.45;
}
@media screen and (max-width: 768px) {
  .designer dd p span:nth-of-type(2) {
    font-size: clamp(8px, 2.667vw, 12px);
    line-height: 1.6;
  }
}
@media screen and (max-width: 768px) {
  .designer dd:nth-of-type(3) p {
    text-align: center;
  }
}
@media screen and (max-width: 768px) {
  .designer dd:nth-of-type(3) span {
    display: inline;
  }
}
@media screen and (max-width: 768px) {
  .designer dd:nth-of-type(3) span:nth-of-type(2) {
    -webkit-margin-start: 0.5em;
            margin-inline-start: 0.5em;
  }
}

.s04 {
  background-color: #d5ccbe;
}

.landplan {
  max-width: 1425.6px;
  margin-inline: auto;
  display: -ms-grid;
  display: grid;
}
@media screen and (max-width: 768px) {
  .landplan {
    max-width: 100%;
    -webkit-padding-before: min(7.467vw, 33.6px);
            padding-block-start: min(7.467vw, 33.6px);
  }
}
.landplan figure {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  margin-block: auto 0;
}
@media screen and (max-width: 768px) {
  .landplan figure {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2/3;
    margin-block: 0;
  }
}
.landplan .txts {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  -ms-grid-row: 1;
  -ms-grid-row-span: 1;
  grid-row: 1/2;
  width: 36%;
  margin-inline: auto 6%;
  margin-block: min(7.493vw, 124.8px) min(51.513vw, 858px);
}
@media screen and (max-width: 768px) {
  .landplan .txts {
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1/2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 1;
    grid-row: 1/2;
    width: 100%;
    margin-block: 0;
    padding-inline: min(2.4vw, 10.8px) min(5.6vw, 25.2px);
  }
}
.landplan .ttl {
  color: #3e3a39;
  opacity: 0.67;
}
.landplan .main {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(20px, 1.801vw, 30px);
  color: #3e3a39;
  line-height: 1.8;
  -webkit-margin-before: min(1.369vw, 22.8px);
          margin-block-start: min(1.369vw, 22.8px);
}
@media screen and (max-width: 768px) {
  .landplan .main {
    font-size: clamp(12px, 4vw, 18px);
    line-height: 1.67;
    -webkit-margin-before: min(2.4vw, 10.8px);
            margin-block-start: min(2.4vw, 10.8px);
  }
}
.landplan .main span {
  display: inline-block;
}
.landplan .sub {
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  font-size: clamp(14.4px, 1.297vw, 21.6px);
  color: #3e3a39;
  line-height: 2.22;
  -webkit-margin-before: min(1.225vw, 20.4px);
          margin-block-start: min(1.225vw, 20.4px);
}
@media screen and (max-width: 768px) {
  .landplan .sub {
    font-size: clamp(8.8px, 2.933vw, 13.2px);
    line-height: 1.82;
    -webkit-margin-before: min(2.4vw, 10.8px);
            margin-block-start: min(2.4vw, 10.8px);
  }
}
@media screen and (max-width: 768px) {
  .landplan .sub span {
    display: inline-block;
  }
}
/*# sourceMappingURL=design.css.map */