.interior-section {
  position: relative;
  height: 1915.2px;
  overflow: hidden;
  background: #fff;
}

.interior-copy {
  position: absolute;
  top: 118.2px;
  left: 243px;
  width: 880px;
  height: 325.1px;
  color: #000;
  text-align: center;
}

.interior-copy h2,
.technology-copy h2,
.culture-title-block h2 {
  margin: 0;
  font-family: "Times New Roman", Times, serif;
  font-size: 62px;
  font-weight: 400;
  line-height: 71px;
}

.interior-rule {
  position: absolute;
  top: 72.8px;
  left: 54.5px;
  width: 772px;
  height: 1px;
  background: #000;
}

.interior-heading,
.technology-heading,
.culture-heading {
  margin: 0;
  font-family: var(--mincho);
  font-size: 35px;
  font-weight: 500;
  line-height: 55px;
  letter-spacing: 1.05px;
}

.interior-heading {
  position: absolute;
  top: 111.8px;
  left: 0;
  width: 100%;
  white-space: nowrap;
}

.interior-description,
.technology-description,
.culture-description {
  font-family: var(--gothic);
  font-size: 18px;
  font-weight: 500;
  line-height: 32.4px;
  letter-spacing: .54px;
}

.interior-description {
  position: absolute;
  top: 195.1px;
  left: 55px;
  width: 770px;
  margin: 0;
}

.interior-main-image,
.interior-living-image,
.interior-kids-image,
.culture-light-image,
.culture-night-image,
.technology-window,
.technology-wall,
.technology-seismic,
.technology-load {
  position: absolute;
  overflow: hidden;
}

.interior-main-image {
  top: 499px;
  left: 15px;
  width: 1336px;
  height: 810px;
}

.interior-main-image img {
  position: absolute;
  top: -27px;
  left: 0;
  display: block;
  width: 1336px;
  height: 890px;
  max-width: none;
}

.interior-living-image {
  top: 1324px;
  left: 15px;
  width: 660px;
  height: 470px;
}

.interior-living-image img {
  position: absolute;
  top: 0;
  left: -22px;
  display: block;
  width: 705px;
  height: 470px;
  max-width: none;
}

.interior-kids-image {
  top: 1324px;
  left: 691px;
  width: 660px;
  height: 470px;
}

.interior-kids-image img {
  position: absolute;
  top: -3px;
  left: -8px;
  display: block;
  width: 711px;
  height: 473px;
  max-width: none;
}

.technology-section {
  position: relative;
  height: 1023px;
  overflow: hidden;
  background: #fff;
}

.technology-copy {
  position: absolute;
  top: 0;
  left: 100px;
  width: 1166px;
  height: 430px;
  color: #000;
  text-align: center;
}

.technology-rule {
  position: absolute;
  top: 69.8px;
  left: 160px;
  width: 850px;
  height: 1px;
  background: #000;
}

.technology-heading {
  position: absolute;
  top: 108.8px;
  left: 0;
  width: 100%;
  white-space: nowrap;
}

.technology-description {
  position: absolute;
  top: 192.1px;
  left: 0;
  width: 100%;
  margin: 0;
}

.technology-diagrams {
  position: absolute;
  right: 95px;
  bottom: 128.2px;
  left: 108px;
  height: 416px;
}

.technology-tab {
  position: absolute;
  top: -44px;
  height: 32.4px;
  border-radius: 18px;
  color: #fff;
  background: #85986e;
  font-family: var(--gothic);
  font-size: 18px;
  font-weight: 500;
  line-height: 32.4px;
  letter-spacing: .54px;
  text-align: center;
  white-space: nowrap;
}

.technology-tab-insulation { left: -8px; width: 496px; }
.technology-tab-seismic { left: 503px; width: 320px; }
.technology-tab-load { left: 838px; width: 320px; }

.technology-window {
  top: 3px;
  left: 0;
  width: 244px;
  height: 315px;
}

.technology-window img {
  position: absolute;
  top: 0;
  left: 7px;
  display: block;
  width: 228px;
  height: 310px;
  max-width: none;
}

.technology-wall {
  top: 0;
  left: 230px;
  width: 237px;
  height: 305px;
}

.technology-wall img {
  position: absolute;
  top: 0;
  left: -48px;
  display: block;
  width: 263px;
  height: 303px;
  max-width: none;
}

.technology-seismic {
  top: 69px;
  left: 489px;
  width: 333px;
  height: 329px;
}

.technology-seismic img {
  position: absolute;
  top: 0;
  left: 21px;
  display: block;
  width: 301px;
  height: 169px;
  max-width: none;
}

.technology-load {
  top: 69px;
  right: 0;
  width: 329px;
  height: 194px;
}

.technology-load img {
  display: block;
  width: 329px;
  height: 194px;
}

.technology-link {
  position: absolute;
  right: 404px;
  bottom: 0;
  width: 370px;
  height: 41px;
  border-bottom: 1px solid #000;
  font-family: var(--gothic);
  font-size: 18px;
  font-weight: 700;
  line-height: 29px;
  letter-spacing: .72px;
  text-align: left;
  color: inherit;
  text-decoration: none;
  white-space: nowrap;
}

.technology-link img {
  position: absolute;
  top: 3px;
  right: 2px;
  width: 26px;
  height: 22px;
}

.technology-link:focus-visible {
  outline: 3px solid #173a69;
  outline-offset: 4px;
}

.culture-section {
  position: relative;
  height: 1064px;
  overflow: hidden;
  background: #fff;
}

.culture-title-block {
  position: absolute;
  top: 0;
  left: 100px;
  width: 363px;
  height: 214px;
  color: #000;
}

.culture-rule {
  position: absolute;
  top: 73px;
  left: 0;
  width: 363px;
  height: 1px;
  background: #000;
}

.culture-heading {
  position: absolute;
  top: 104px;
  left: 0;
}

.culture-content {
  position: absolute;
  top: 112.8px;
  left: 100px;
  width: 1216px;
  height: 817px;
}

.culture-copy {
  position: absolute;
  top: 207px;
  left: 0;
  width: 368px;
  height: auto;
}

.culture-accordion {
  width: 368px;
}

.culture-link {
  position: relative;
  display: flex;
  align-items: center;
  left: 0;
  width: 368px;
  min-height: 40.98px;
  border-bottom: 1px solid #000;
  font-family: var(--gothic);
  font-size: 18px;
  font-weight: 700;
  line-height: 29px;
  letter-spacing: .72px;
  white-space: nowrap;
  padding: 6px 10px;
  border-top: 0;
  border-right: 0;
  border-left: 0;
  color: #000;
  background: transparent;
  text-align: left;
  cursor: pointer;
}

.culture-link::after {
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  height: 1px;
  background: #000;
  content: "";
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left;
}

.culture-link:hover::after {
  animation: underline-return .28s ease forwards;
}

.culture-link:hover {
  border-bottom-color: transparent;
}

@keyframes underline-return {
  to { opacity: 1; transform: scaleX(1); }
}

@media (min-width: 768px) {
  .technology-link::after,
  .lower-text-link::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 1px;
    background: #000;
    content: "";
    opacity: 0;
    transform: scaleX(0);
    transform-origin: left;
  }

  .technology-link:hover::after,
  .lower-text-link:hover::after {
    animation: underline-return .28s ease forwards;
  }

  .technology-link:hover,
  .lower-text-link:hover {
    border-bottom-color: transparent;
  }
}

.culture-link img {
  position: absolute;
  top: 50%;
  right: 12px;
  width: 26px;
  height: 22px;
  transform: translateY(-50%);
}

.culture-link[aria-expanded="true"] img {
  transform: translateY(-50%) rotate(90deg);
}

.culture-link:focus-visible {
  outline: 3px solid #173a69;
  outline-offset: 3px;
}

.culture-description {
  position: static;
  width: 361px;
  padding: 16px 0 24px;
}

.culture-description p {
  margin: 0;
}

.culture-description.is-entering {
  animation: culture-description-in .28s ease-out both;
}

@keyframes culture-description-in {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.culture-visuals,
.culture-visual {
  position: absolute;
  inset: 0;
}

.culture-visuals {
  pointer-events: none;
}

.culture-visual {
  opacity: 0;
  pointer-events: none;
}

.culture-visual.is-active {
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  .culture-description.is-entering {
    animation: none;
  }
}

@media (min-width: 768px) {
  .culture-link {
    align-items: center;
    height: 40.98px;
    min-height: 40.98px;
    padding: 0 10px;
  }

  #culture-tab-sharing,
  #culture-tab-timeless {
    margin-top: 39.02px;
  }

  .culture-link img {
    top: 50%;
    right: 12px;
    transform: translateY(-50%);
  }

  .culture-link[aria-expanded="true"] img {
    transform: translateY(-50%) rotate(90deg);
  }
}

.culture-light-image {
  top: 0;
  left: 441px;
  width: 495px;
  height: 673px;
}

.culture-light-image img {
  position: absolute;
  top: 0;
  left: -481px;
  display: block;
  width: 1010px;
  height: 673px;
  max-width: none;
}

.culture-night-image {
  right: 0;
  bottom: 0;
  width: 368px;
  height: 500px;
}

.culture-night-image img {
  position: absolute;
  top: -6px;
  left: -207px;
  display: block;
  width: 783px;
  height: 522px;
  max-width: none;
}

.culture-sharing-table,
.culture-sharing-tea,
.culture-timeless-main,
.culture-timeless-piano {
  position: absolute;
  overflow: hidden;
}

.culture-sharing-table {
  top: 0;
  left: 441px;
  width: 495px;
  height: 673px;
}

.culture-sharing-table img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.culture-sharing-tea {
  right: 0;
  bottom: 0;
  width: 368px;
  height: 500px;
}

.culture-sharing-tea img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.culture-timeless-main {
  top: 0;
  left: 441px;
  width: 495px;
  height: 673px;
}

.culture-timeless-main img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.culture-timeless-piano {
  right: 0;
  bottom: 0;
  width: 368px;
  height: 500px;
}

.culture-timeless-piano img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
