@charset "UTF-8";
.credit dt,
.credit dd {
  display: inline;
}
.credit dt:after {
  content: "：";
}
.overview_head,
.overview_title {
  font-family: var(--en_sans);
  font-weight: 700;
}
.overview_title span {
  margin-block: calc((1em - 1lh) / 2);
}
.overview_content_body a {
  display: inline;
  text-decoration: underline;
}
.overview_content_body a[target="_blank"]:after {
  display: inline-block;
  font-family: var(--ja_sans);
  content: "↗";
  margin-left: 0.25em;
  font-weight: 300;
  text-decoration: none;
}
.overview_content_body p +p,
.overview_content_body table +p,
.overview_content_body p +table,
.overview_content_body table +table {
  margin-top: 1lh;
}
.overview_content_body th {
  padding-right: 1em;
}
@media (min-width: 769px) {
  .overview_block {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: flex-start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-box-align: start;
    -moz-box-align: start;
    -o-box-align: start;
    -ms-flex-align: start;
  }
  .overview_keyvisual {
    width: clamp(0rem, 50vw, 45rem);
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
    margin-left: clamp(-5.3125rem, -5.902777777777778vw, 0rem);
  }
  .overview_title {
    font-size: clamp(0.625rem, 2.222222222222222vw, 2rem);
    line-height: 1.25;
  }
  .overview_content {
    position: sticky;
    top: var(--hh);
    width: 100%;
    padding: clamp(0rem, 2.916666666666667vw, 2.625rem) 0 clamp(0rem, 2.916666666666667vw, 2.625rem) clamp(0rem, 4.444444444444445vw, 4rem);
  }
  .overview_content_body {
    font-size: clamp(0.625rem, 1.041666666666667vw, 0.9375rem);
    line-height: 1.866666666666667;
    margin-top: clamp(0rem, 3.125vw, 2.8125rem);
  }
  .overview_content_body p +p,
  .overview_content_body table +p,
  .overview_content_body p +table,
  .overview_content_body table +table {
    margin-top: 1lh;
  }
}
@media (max-width: 768px) {
  .overview_keyvisual {
    margin: clamp(0rem, 10.666666666666668vw, 2.5rem) clamp(-1.5rem, -6.4vw, 0rem) 0;
  }
  .overview_title {
    font-size: clamp(0.625rem, 5.333333333333334vw, 1.25rem);
    line-height: 1.6;
  }
  .overview_content {
    margin-top: clamp(0rem, 21.333333333333336vw, 5rem);
  }
  .overview_content_body {
    font-size: clamp(0.625rem, 3.733333333333334vw, 0.875rem);
    line-height: 1.571428571428571;
    margin-top: clamp(0rem, 9.6vw, 2.25rem);
  }
}
@media (min-width: 769px) {
  .project_image_cntnr {
    margin-top: clamp(0rem, 6.944444444444445vw, 6.25rem);
  }
  .project_image_cntnr_block {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -o-box-lines: multiple;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
  }
  .project_image +.project_image {
    margin-top: clamp(0rem, 1.666666666666667vw, 1.5rem);
  }
  .project_image.half {
    width: calc((623 / 1270) * 100%);
  }
}
@media (max-width: 768px) {
  .project_image_cntnr {
    margin-top: clamp(0rem, 21.333333333333336vw, 5rem);
  }
  .project_image +.project_image {
    margin-top: clamp(0rem, 3.2vw, 0.75rem);
  }
}
@media (min-width: 769px) {
  .credit {
    font-size: clamp(0.625rem, 1.041666666666667vw, 0.9375rem);
    line-height: 1.866666666666667;
    margin-top: clamp(0rem, 6.944444444444445vw, 6.25rem);
  }
}
@media (max-width: 768px) {
  .credit {
    font-size: clamp(0.625rem, 4vw, 0.9375rem);
    line-height: 1.866666666666667;
    margin-top: clamp(0rem, 21.333333333333336vw, 5rem);
  }
}
