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

#concept #intro {
  background: #fff;
}
#concept #intro .intro__wrapper {
  padding-top: max(14.5rem, 100px);
  padding-bottom: max(10rem, 80px);
}
#concept #intro .intro__wrapper h2 {
  font-size: max(2.8rem, 23px);
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.15em;
  margin-bottom: max(2rem, 20px);
}
#concept #intro .intro__wrapper .btn {
  text-align: center;
}
#concept #intro .intro__wrapper .intro__content {
  display: flex;
  align-items: center;
  gap: max(6.5rem, 30px);
}
#concept #intro .intro__wrapper .intro__content .intro__text {
  flex: 1;
}
@media screen and (max-width: 1000px) {
  #concept #intro .intro__wrapper .intro__content .intro__text {
    align-self: start;
  }
}
#concept #intro .intro__wrapper .intro__content .intro__image {
  flex-shrink: 0;
}
@media screen and (max-width: 1000px) {
  #concept #intro .intro__wrapper .intro__content.content1 {
    flex-direction: column;
  }
}
#concept #intro .intro__wrapper .intro__content.content1 .intro__image {
  position: relative;
  text-align: right;
  width: max(72.5rem, 450px);
}
@media screen and (max-width: 550px) {
  #concept #intro .intro__wrapper .intro__content.content1 .intro__image {
    width: 100%;
  }
}
#concept #intro .intro__wrapper .intro__content.content1 .intro__image img:nth-of-type(1) {
  width: max(53rem, 425px);
  aspect-ratio: 1/1;
  margin-bottom: max(15rem, 100px);
}
@media screen and (max-width: 550px) {
  #concept #intro .intro__wrapper .intro__content.content1 .intro__image img:nth-of-type(1) {
    width: 90%;
    margin-left: auto;
  }
}
#concept #intro .intro__wrapper .intro__content.content1 .intro__image img:nth-of-type(2) {
  position: absolute;
  left: 0;
  bottom: 0;
  width: max(34rem, 150px);
  aspect-ratio: 34/47;
  animation-delay: 0.5s;
}
#concept #intro .intro__wrapper .intro__content.content2 {
  padding-top: max(20rem, 100px);
}
@media screen and (max-width: 1000px) {
  #concept #intro .intro__wrapper .intro__content.content2 {
    flex-direction: column-reverse;
  }
}
#concept #intro .intro__wrapper .intro__content.content2 .intro__image {
  width: max(67.5rem, 425px);
  align-self: stretch;
}
@media screen and (max-width: 1000px) {
  #concept #intro .intro__wrapper .intro__content.content2 .intro__image {
    width: 80%;
    margin-left: auto;
  }
}
#concept #intro .intro__wrapper .intro__content.content2 .intro__image img {
  height: 100%;
}
#concept #intro .intro__wrapper .intro__content.content3 {
  padding-top: max(15rem, 70px);
  padding-bottom: max(10rem, 50px);
}
@media screen and (max-width: 1000px) {
  #concept #intro .intro__wrapper .intro__content.content3 {
    flex-direction: column-reverse;
  }
}
#concept #intro .intro__wrapper .intro__content.content3 .intro__image {
  width: max(67.5rem, 425px);
  align-self: stretch;
}
@media screen and (max-width: 550px) {
  #concept #intro .intro__wrapper .intro__content.content3 .intro__image {
    width: 90%;
    margin-left: -5vw;
    margin-right: auto;
  }
}
#concept #intro .intro__wrapper .intro__content.content3 .intro__image img {
  height: 100%;
}
#concept #works {
  background: #fff;
}
#concept #works .works__wrapper {
  padding-top: max(10rem, 70px);
  padding-bottom: max(10rem, 70px);
  border-top: max(0.1rem, 1px) solid rgba(59, 49, 40, 0.15);
}
#concept #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) {
  #concept #works .works__wrapper .works__content .works__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 768px) {
  #concept #works .works__wrapper .works__content .works__list {
    row-gap: max(10rem, 30px);
    grid-template-columns: 1fr;
  }
}
#concept #works .works__wrapper .works__content .works__list .works__item {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 2;
  gap: max(3rem, 30px);
}
#concept #works .works__wrapper .works__content .works__list .works__item:nth-of-type(2) a figure .imageBox img {
  animation-delay: 0.3s;
}
#concept #works .works__wrapper .works__content .works__list .works__item:nth-of-type(3) a figure .imageBox img {
  animation-delay: 0.6s;
}
#concept #works .works__wrapper .works__content .works__list .works__item:nth-of-type(4) {
  display: none;
}
@media screen and (max-width: 1000px) {
  #concept #works .works__wrapper .works__content .works__list .works__item:nth-of-type(4) {
    display: grid;
  }
  #concept #works .works__wrapper .works__content .works__list .works__item a figure .imageBox img {
    animation-delay: 0s !important;
  }
}
@media screen and (max-width: 768px) {
  #concept #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);
  }
  #concept #works .works__wrapper .works__content .works__list .works__item:nth-of-type(4) {
    display: none;
  }
}
#concept #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);
}
#concept #works .works__wrapper .works__content .works__list .works__item--more figure .imageBox img {
  width: 100%;
  height: 100%;
}
#concept #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;
}
#concept #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);
}
#concept #works .works__wrapper .works__content .works__list .works__item--more figure figcaption .works__item-meta--place {
  font-size: max(1.4rem, 12px);
}
#concept #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);
}
#concept #works .works__wrapper .works__content .works__list .works__item--category {
  display: flex;
  flex-wrap: wrap;
  gap: max(1rem, 10px);
}
#concept #works .works__wrapper .works__content .works__list .works__item--category li {
  line-height: 1;
}
#concept #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;
}
#concept #works .works__wrapper .btn {
  text-align: center;
  margin-top: max(5.5rem, 50px);
}/*# sourceMappingURL=concept.css.map */