/*
Theme Name: Twenty Twenty-one Child
Version: 1.6
Template: twentytwentyone
*/
:root {
  --viewport-width: min(100vw, 2000px);
  --b: calc(var(--viewport-width) / 160);
}

#exterior #design {
  background: #fff;
}
#exterior #design .design__wrapper {
  padding-top: max(12.5rem, 80px);
}
#exterior #design .design__wrapper .design__content {
  display: flex;
  align-items: center;
  gap: max(11rem, 20px);
  margin-bottom: max(6rem, 40px);
}
@media screen and (max-width: 1000px) {
  #exterior #design .design__wrapper .design__content {
    flex-direction: column;
  }
}
#exterior #design .design__wrapper .design__content h2 {
  font-size: max(2.8rem, 21px);
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.15em;
  margin-bottom: max(2rem, 10px);
}
#exterior #design .design__wrapper .design__content .textBox {
  flex: 1;
}
#exterior #design .design__wrapper .design__content .imageBox {
  flex-shrink: 0;
  align-self: stretch;
  width: max(68.5rem, 300px);
}
@media screen and (max-width: 1000px) {
  #exterior #design .design__wrapper .design__content .imageBox {
    width: 100%;
    aspect-ratio: 137/91;
  }
}
#exterior #design .design__wrapper .design__content .imageBox img {
  height: 100%;
}
#exterior #design .design__wrapper .design__inner {
  display: flex;
  align-items: center;
  gap: max(4rem, 20px);
}
#exterior #design .design__wrapper .design__inner:not(:first-of-type) {
  margin-top: max(3rem, 20px);
}
@media screen and (max-width: 768px) {
  #exterior #design .design__wrapper .design__inner {
    flex-direction: column-reverse;
  }
  #exterior #design .design__wrapper .design__inner:not(:first-of-type) {
    margin-top: 40px;
  }
}
#exterior #design .design__wrapper .design__inner .textBox {
  flex: 1;
}
#exterior #design .design__wrapper .design__inner .textBox h3 {
  font-weight: 500;
}
#exterior #design .design__wrapper .design__inner .imageBox {
  align-self: stretch;
  flex-shrink: 0;
  width: max(30rem, 200px);
}
@media screen and (max-width: 768px) {
  #exterior #design .design__wrapper .design__inner .imageBox {
    width: 100%;
    aspect-ratio: 153/94;
  }
}
#exterior #design .design__wrapper .design__inner .imageBox img {
  height: 100%;
}
#exterior #works {
  background: #fff;
}
#exterior #works .works__wrapper {
  padding-top: max(11.5rem, 70px);
  padding-bottom: max(10rem, 70px);
  border-bottom: 1px solid #c2c0bd;
}
#exterior #works .works__wrapper .works__content .works__list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: max(6rem, 60px) max(6rem, 30px);
}
@media screen and (max-width: 1000px) {
  #exterior #works .works__wrapper .works__content .works__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 768px) {
  #exterior #works .works__wrapper .works__content .works__list {
    row-gap: max(10rem, 30px);
    grid-template-columns: 1fr;
  }
}
#exterior #works .works__wrapper .works__content .works__list .works__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: max(3rem, 30px);
}
#exterior #works .works__wrapper .works__content .works__list .works__item:nth-of-type(2) a figure .imageBox img {
  animation-delay: 0.3s;
}
#exterior #works .works__wrapper .works__content .works__list .works__item:nth-of-type(3) a figure .imageBox img {
  animation-delay: 0.6s;
}
#exterior #works .works__wrapper .works__content .works__list .works__item:nth-of-type(4) {
  display: none;
}
@media screen and (max-width: 1000px) {
  #exterior #works .works__wrapper .works__content .works__list .works__item:nth-of-type(4) {
    display: grid;
  }
  #exterior #works .works__wrapper .works__content .works__list .works__item a figure .imageBox img {
    animation-delay: 0s !important;
  }
}
@media screen and (max-width: 768px) {
  #exterior #works .works__wrapper .works__content .works__list .works__item:not(:nth-of-type(1)) {
    border-top: 1px solid rgba(255, 255, 255, 0.4);
    padding-top: max(10rem, 30px);
  }
  #exterior #works .works__wrapper .works__content .works__list .works__item:nth-of-type(4) {
    display: none;
  }
}
#exterior #works .works__wrapper .works__content .works__list .works__item--more figure .imageBox {
  width: 100%;
  height: auto;
  aspect-ratio: 347/248;
  margin-bottom: max(2.5rem, 20px);
}
#exterior #works .works__wrapper .works__content .works__list .works__item--more figure .imageBox img {
  width: 100%;
  height: 100%;
}
#exterior #works .works__wrapper .works__content .works__list .works__item--more figure figcaption .works__item-meta {
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: max(1rem, 10px);
       column-gap: max(1rem, 10px);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
#exterior #works .works__wrapper .works__content .works__list .works__item--more figure figcaption .works__item-meta--num {
  font-family: YakuHanJP, "Jost", "Noto Sans JP", sans-serif;
  font-size: max(1.5rem, 13px);
}
#exterior #works .works__wrapper .works__content .works__list .works__item--more figure figcaption .works__item-meta--place {
  font-size: max(1.4rem, 12px);
}
#exterior #works .works__wrapper .works__content .works__list .works__item--more figure figcaption h3.works__item-title {
  font-size: max(1.6rem, 14px);
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.1em;
  margin-top: max(1rem, 10px);
}
#exterior #works .works__wrapper .works__content .works__list .works__item--category {
  display: flex;
  flex-wrap: wrap;
  gap: max(1rem, 10px);
}
#exterior #works .works__wrapper .works__content .works__list .works__item--category li {
  line-height: 1;
}
#exterior #works .works__wrapper .works__content .works__list .works__item--category li a {
  display: inline-block;
  color: rgba(59, 49, 40, 0.4);
  font-size: max(1.3rem, 11px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
}
#exterior #works .works__wrapper .btn {
  text-align: center;
  margin-top: max(5.5rem, 50px);
}/*# sourceMappingURL=exterior-design.css.map */