.p-project-header {
  background-repeat: no-repeat;
  background-position: top calc(min(0.694vw, 11px) * -1) center;
  margin-bottom: 0;
}
@media screen and (min-width: 835px) {
  .p-project-header {
    background-image: url("/assets2/img/project/header_bg.svg");
    padding-bottom: min(8.333vw, 132px);
    background-size: cover;
  }
}
@media screen and (max-width: 834px) {
  .p-project-header {
    background-image: url("/assets2/img/project/header_bg_sp.svg");
    padding-bottom: min(22.667vw, 93.5px);
    background-size: 100%;
  }
}
@media screen and (max-width: 540px) {
  .p-project-header {
    background-position: bottom center;
  }
}
.p-project-header-title {
  padding-top: min(5.417vw, 85.8px);
}
@media screen and (max-width: 834px) {
  .p-project-breadcrumbs {
    margin-bottom: min(22.4vw, 92.4px);
  }
}
.p-project-main-visual__image {
  text-align: center;
  margin-bottom: min(5.556vw, 88px);
}
.p-project-main-visual__subtitle {
  font-size: clamp(17px, 1.389vw, 22px);
  font-weight: 500;
}
.p-project-main-visual__logo {
  display: flex;
  gap: min(0.694vw, 11px);
}
@media screen and (min-width: 835px) {
  .p-project-main-visual__logo {
    margin-bottom: min(5vw, 79.2px);
  }
}
@media screen and (max-width: 834px) {
  .p-project-main-visual__logo {
    margin-bottom: min(10.667vw, 44px);
  }
}
.p-project-brand {
  border-bottom: 0.5px solid #878787;
  padding: 0 0 min(8.333vw, 132px) 0;
}
@media screen and (max-width: 834px) {
  .p-project-brand {
    padding: 0 0 min(21.333vw, 88px) 0;
  }
}
.p-project-brand__wrapper {
  display: flex;
  align-items: center;
  gap: 0;
}
@media screen and (max-width: 834px) {
  .p-project-brand__wrapper {
    flex-direction: column;
    gap: min(12.8vw, 52.8px);
  }
}
.p-project-brand__content {
  flex: 0 0 min(36.111vw, 572px);
  display: flex;
  flex-direction: column;
  gap: 0;
}
@media screen and (max-width: 834px) {
  .p-project-brand__content {
    flex: 1 1 auto;
    width: 100%;
  }
}
.p-project-brand__header {
  display: flex;
  flex-direction: column;
  gap: min(1.389vw, 22px);
  padding-bottom: min(4.167vw, 66px);
}
@media screen and (max-width: 834px) {
  .p-project-brand__header {
    padding-bottom: min(10.667vw, 44px);
    gap: min(4.267vw, 17.6px);
  }
}
.p-project-brand__category {
  font-size: clamp(13.6px, 1.111vw, 17.6px);
  font-weight: 500;
  line-height: 1.5;
  color: #2a2a2a;
  margin: 0;
}
@media screen and (max-width: 834px) {
  .p-project-brand__category {
    font-size: clamp(11.9px, 3.733vw, 15.4px);
  }
}
.p-project-brand__title {
  font-family: "Oswald", sans-serif;
  font-size: clamp(51px, 4.167vw, 66px);
  font-weight: 400;
  line-height: 1;
  color: #2a2a2a;
  margin: 0;
}
@media screen and (max-width: 834px) {
  .p-project-brand__title {
    font-size: clamp(40.8px, 12.8vw, 52.8px);
  }
}
.p-project-brand__text {
  display: flex;
  flex-direction: column;
  gap: min(2.778vw, 44px);
}
@media screen and (max-width: 834px) {
  .p-project-brand__text {
    gap: min(8.533vw, 35.2px);
  }
}
.p-project-brand__lead {
  font-size: clamp(20.4px, 1.667vw, 26.4px);
  font-weight: 500;
  line-height: 2;
  color: #2a2a2a;
  margin: 0;
}
@media screen and (max-width: 834px) {
  .p-project-brand__lead {
    font-size: clamp(17px, 5.333vw, 22px);
  }
  .p-project-brand__lead br {
    display: none;
  }
}
.p-project-brand__description {
  max-width: min(36.111vw, 572px);
}
@media screen and (max-width: 834px) {
  .p-project-brand__description {
    max-width: none;
  }
}
.p-project-brand__description p {
  font-size: clamp(13.6px, 1.111vw, 17.6px);
  line-height: 2;
  color: #2a2a2a;
  margin: 0;
}
@media screen and (max-width: 834px) {
  .p-project-brand__description p {
    font-size: clamp(11.9px, 3.733vw, 15.4px);
  }
}
.p-project-brand__description p + p {
  margin-top: min(2.222vw, 35.2px);
}
@media screen and (max-width: 834px) {
  .p-project-brand__description p + p {
    margin-top: min(6.4vw, 26.4px);
  }
}
.p-project-brand__gallery {
  flex: 0 0 min(50vw, 792px);
  position: relative;
  display: flex;
  gap: min(0.347vw, 5.5px);
  width: min(50vw, 792px);
  height: auto;
  margin-left: min(9.028vw, 143px);
}
@media screen and (max-width: 834px) {
  .p-project-brand__gallery {
    flex: 1 1 auto;
    max-width: none;
    width: 100vw;
    margin-inline: calc(min(5.333vw, 22px) * -1);
    gap: min(1.067vw, 4.4px);
  }
}
.p-project-brand__gallery-column {
  display: flex;
  flex-direction: column;
  gap: min(0.347vw, 5.5px);
}
@media screen and (max-width: 834px) {
  .p-project-brand__gallery-column {
    gap: min(1.067vw, 4.4px);
  }
}
.p-project-brand__gallery-column:first-child {
  flex: 0 0 min(24.653vw, 390.5px);
  width: min(24.653vw, 390.5px);
}
@media screen and (max-width: 834px) {
  .p-project-brand__gallery-column:first-child {
    flex: 1;
    width: auto;
  }
}
.p-project-brand__gallery-column:last-child {
  flex: 0 0 min(25vw, 396px);
  width: min(25vw, 396px);
}
@media screen and (max-width: 834px) {
  .p-project-brand__gallery-column:last-child {
    flex: 1;
    width: auto;
  }
}
.p-project-brand__gallery-item {
  position: relative;
  overflow: hidden;
}
.p-project-brand__gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.p-project-brand__gallery-item--1 {
  flex: 0 0 min(31.25vw, 495px);
  height: min(31.25vw, 495px);
  aspect-ratio: 355/450;
}
@media screen and (max-width: 834px) {
  .p-project-brand__gallery-item--1 {
    flex: 0 0 auto;
    height: auto;
  }
}
.p-project-brand__gallery-item--2 {
  flex: 0 0 min(18.75vw, 297px);
  height: min(18.75vw, 297px);
  aspect-ratio: 360/270;
}
@media screen and (max-width: 834px) {
  .p-project-brand__gallery-item--2 {
    flex: 0 0 auto;
    height: auto;
  }
}
.p-project-brand__gallery-item--3 {
  flex: 0 0 min(30.903vw, 489.5px);
  height: min(30.903vw, 489.5px);
  aspect-ratio: 360/445;
}
@media screen and (max-width: 834px) {
  .p-project-brand__gallery-item--3 {
    flex: 0 0 auto;
    height: auto;
  }
}
.p-project-brand__gallery-item--4 {
  flex: 0 0 min(18.403vw, 291.5px);
  height: min(18.403vw, 291.5px);
  aspect-ratio: 355/265;
}
@media screen and (max-width: 834px) {
  .p-project-brand__gallery-item--4 {
    flex: 0 0 auto;
    height: auto;
  }
}
.p-project-values {
  padding: min(8.333vw, 132px) 0;
}
@media screen and (max-width: 834px) {
  .p-project-values {
    padding: min(21.333vw, 88px) 0;
  }
}
.p-project-values__header {
  display: flex;
  flex-direction: column;
  gap: min(1.389vw, 22px);
  padding-bottom: min(4.167vw, 66px);
  margin: 0 auto;
}
@media screen and (max-width: 834px) {
  .p-project-values__header {
    padding-left: min(5.333vw, 22px);
    padding-right: min(5.333vw, 22px);
    padding-bottom: min(10.667vw, 44px);
    gap: min(4.267vw, 17.6px);
  }
}
.p-project-values__category {
  font-size: clamp(13.6px, 1.111vw, 17.6px);
  font-weight: 500;
  line-height: 1.5;
  color: #2a2a2a;
  margin: 0;
}
@media screen and (max-width: 834px) {
  .p-project-values__category {
    font-size: clamp(11.9px, 3.733vw, 15.4px);
  }
}
.p-project-values__title {
  font-family: "Oswald", sans-serif;
  font-size: clamp(51px, 4.167vw, 66px);
  font-weight: 400;
  line-height: 1;
  color: #2a2a2a;
  margin: 0;
}
@media screen and (max-width: 834px) {
  .p-project-values__title {
    font-size: clamp(40.8px, 12.8vw, 52.8px);
  }
}
.p-project-values__list {
  display: flex;
  flex-direction: column;
}
.p-project-values__item {
  display: flex;
  background: #fff;
  gap: min(4.861vw, 77px);
  margin: 0 auto;
}
.p-project-values__item + .p-project-values__item {
  margin-top: min(4.167vw, 66px);
}
@media screen and (max-width: 834px) {
  .p-project-values__item {
    flex-direction: column;
    min-height: auto;
    margin-inline: calc(min(5.333vw, 22px) * -1);
  }
}
.p-project-values__item--right {
  padding-left: min(9.028vw, 143px);
}
@media screen and (max-width: 834px) {
  .p-project-values__item--right {
    padding-inline: min(5.333vw, 22px);
  }
}
@media screen and (max-width: 834px) {
  .p-project-values__item--right .p-project-values__content {
    order: 1;
  }
}
@media screen and (max-width: 834px) {
  .p-project-values__item--right .p-project-values__image {
    order: 0;
  }
}
.p-project-values__item--left {
  padding-right: min(9.028vw, 143px);
}
@media screen and (max-width: 834px) {
  .p-project-values__item--left {
    padding-inline: min(5.333vw, 22px);
  }
}
@media screen and (max-width: 834px) {
  .p-project-values__item--left .p-project-values__content {
    order: 1;
  }
}
@media screen and (max-width: 834px) {
  .p-project-values__item--left .p-project-values__image {
    order: 0;
  }
}
.p-project-values__content {
  flex: 0 0 min(36.111vw, 572px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media screen and (max-width: 834px) {
  .p-project-values__content {
    flex: 1 1 auto;
    width: 100%;
    padding-inline: min(5.333vw, 22px);
  }
}
.p-project-values__item-header {
  display: flex;
  align-items: center;
  padding-bottom: min(4.167vw, 66px);
  width: fit-content;
}
@media screen and (max-width: 834px) {
  .p-project-values__item-header {
    gap: min(8.533vw, 35.2px);
    padding-bottom: min(10.667vw, 44px);
    padding-right: min(8.533vw, 35.2px);
  }
}
.p-project-values__number {
  font-family: "Oswald", sans-serif;
  font-size: clamp(68px, 5.556vw, 88px);
  font-weight: 400;
  line-height: 1;
  color: #2a2a2a;
}
@media screen and (max-width: 834px) {
  .p-project-values__number {
    font-size: clamp(54.4px, 17.067vw, 70.4px);
  }
}
.p-project-values__item-title {
  font-size: clamp(20.4px, 1.667vw, 26.4px);
  font-weight: 500;
  line-height: 1.5;
  color: #2a2a2a;
  padding-left: min(2.778vw, 44px);
  margin-left: min(2.778vw, 44px);
  border-left: 1px solid #878787;
}
@media screen and (max-width: 834px) {
  .p-project-values__item-title {
    font-size: clamp(17px, 5.333vw, 22px);
  }
  .p-project-values__item-title br {
    display: none;
  }
}
.p-project-values__description {
  max-width: min(36.111vw, 572px);
}
@media screen and (max-width: 834px) {
  .p-project-values__description {
    max-width: none;
  }
}
.p-project-values__description p {
  font-size: clamp(13.6px, 1.111vw, 17.6px);
  line-height: 2;
  color: #2a2a2a;
  margin: 0;
}
@media screen and (max-width: 834px) {
  .p-project-values__description p {
    font-size: clamp(11.9px, 3.733vw, 15.4px);
  }
}
.p-project-values__description p + p {
  margin-top: min(2.222vw, 35.2px);
}
@media screen and (max-width: 834px) {
  .p-project-values__description p + p {
    margin-top: min(6.4vw, 26.4px);
  }
}
.p-project-values__image {
  position: relative;
  width: min(50vw, 792px);
  aspect-ratio: 720/600;
  display: flex;
  flex-flow: column;
  justify-content: center;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  overflow: hidden;
  padding: min(5.208vw, 82.5px) min(6.25vw, 99px);
}
@media screen and (max-width: 834px) {
  .p-project-values__image {
    flex: 1 1 auto;
    width: 100%;
    max-width: 100%;
    align-items: flex-start;
    justify-content: flex-start;
    flex-flow: column;
    padding: min(5.333vw, 22px);
    aspect-ratio: unset;
  }
}
.p-project-values__image::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: inherit;
  background-size: cover;
  background-position: center;
  filter: blur(20px);
  transform: scale(2);
  z-index: 1;
}
.p-project-values__image > img {
  width: 100%;
  max-width: min(37.5vw, 594px);
  z-index: 2;
  display: block;
}
@media screen and (max-width: 834px) {
  .p-project-values__image > img {
    max-width: unset;
  }
}
.p-project-values__image-caption {
  display: block;
  max-width: min(37.5vw, 594px);
  z-index: 2;
  color: #FFF;
  position: static;
  left: min(6.281vw, 99.495px);
  bottom: min(3.472vw, 55px);
  font-size: clamp(10.2px, 0.833vw, 13.2px);
  line-height: 1.5;
  margin-top: min(0.694vw, 11px);
}
@media screen and (max-width: 834px) {
  .p-project-values__image-caption {
    font-size: clamp(10.2px, 3.2vw, 13.2px);
    margin-top: min(2.667vw, 11px);
    max-width: 100%;
  }
}
.p-project-achievements {
  border-bottom: 0.5px solid #878787;
  padding: min(8.333vw, 132px) 0;
}
@media screen and (max-width: 834px) {
  .p-project-achievements {
    padding: min(21.333vw, 88px) 0;
  }
}
.p-project-achievements__title {
  font-size: clamp(27.2px, 2.222vw, 35.2px);
  font-weight: 500;
  line-height: 1;
  color: #2a2a2a;
  padding-bottom: min(4.167vw, 66px);
}
@media screen and (max-width: 834px) {
  .p-project-achievements__title {
    font-size: clamp(17px, 5.333vw, 22px);
    padding-bottom: min(7.467vw, 30.8px);
  }
}
.p-project-achievements__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(3.125vw, 49.5px) min(1.389vw, 22px);
  padding-inline: min(2.778vw, 44px);
  max-width: 1440px;
  margin: 0 auto;
}
@media screen and (min-width: 835px) {
  .p-project-achievements__grid.--center {
    display: flex;
    justify-content: center;
    margin: 0 auto;
  }
}
@media screen and (max-width: 834px) {
  .p-project-achievements__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: min(9.6vw, 39.6px) min(5.333vw, 22px);
    padding-inline: min(5.333vw, 22px);
  }
}
@media screen and (max-width: 540px) {
  .p-project-achievements__grid {
    grid-template-columns: repeat(1, 1fr);
    gap: min(9.6vw, 39.6px);
  }
}
.p-project-achievements__card {
  display: flex;
  flex-direction: column;
  gap: min(1.389vw, 22px);
}
@media screen and (min-width: 835px) {
  .p-project-achievements__card {
    max-width: min(30.556vw, 484px);
  }
}
@media screen and (max-width: 834px) {
  .p-project-achievements__card {
    width: 100%;
    gap: min(4.267vw, 17.6px);
  }
}
.p-project-achievements__card-image {
  width: 100%;
  border-radius: 0;
  display: block;
}
.p-project-achievements__card-image img {
  width: 100%;
}
.p-project-achievements__card-content {
  display: flex;
  flex-direction: column;
  gap: min(1.389vw, 22px);
}
@media screen and (max-width: 834px) {
  .p-project-achievements__card-content {
    gap: min(4.267vw, 17.6px);
  }
}
.p-project-achievements__card-title {
  font-size: clamp(17px, 1.389vw, 22px);
  font-weight: 500;
  line-height: 1.5;
  color: #2a2a2a;
  margin: 0;
}
@media screen and (max-width: 834px) {
  .p-project-achievements__card-title {
    font-size: clamp(15.3px, 4.8vw, 19.8px);
  }
}
.p-project-achievements__card-location {
  font-size: clamp(11.9px, 0.972vw, 15.4px);
  line-height: 1.5;
  color: #2a2a2a;
  margin: 0;
}
@media screen and (max-width: 834px) {
  .p-project-achievements__card-location {
    font-size: clamp(11.05px, 3.467vw, 14.3px);
  }
}
.p-project-about__content {
  width: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  display: block;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 835px) {
  .p-project-about__content {
    background-image: url("/assets2/img/project/next-good_bg_pc.webp");
    padding: min(9.444vw, 149.6px) min(5.556vw, 88px) min(7.222vw, 114.4px);
  }
}
@media screen and (max-width: 834px) {
  .p-project-about__content {
    background-image: url("/assets2/img/project/next-good_bg_sp.webp");
    padding: min(25.6vw, 105.6px) min(2.667vw, 11px);
  }
}
.p-project-about__content::before, .p-project-about__content::after {
  position: absolute;
}
.p-project-about__content::before {
  font-family: var(--font-awesome);
  font-weight: var(--fw-300);
  content: "\f105";
  line-height: var(--lh-100);
  aspect-ratio: 1/1;
  background-color: var(--base);
  border: var(--border) solid 1px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  transition: all var(--duration);
  z-index: 1;
}
@media screen and (min-width: 835px) {
  .p-project-about__content::before {
    width: clamp(42.5px, 3.472vw, 55px);
    font-size: clamp(16.15px, 1.319vw, 20.9px);
    padding-top: 1px;
    top: 50%;
    right: min(5.556vw, 88px);
    translate: 0 -50%;
  }
}
@media screen and (max-width: 834px) {
  .p-project-about__content::before {
    width: clamp(27.2px, 8.533vw, 35.2px);
    font-size: clamp(10.2px, 3.2vw, 13.2px);
    bottom: min(2.667vw, 11px);
    right: min(2.667vw, 11px);
  }
}
.p-project-about__content::after {
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.05);
  top: 0;
  left: 0;
  opacity: 0;
  z-index: 0;
  transition: opacity var(--duration);
}
@media (hover: hover) {
  .p-project-about__content:hover::after {
    opacity: 1;
  }
}
.p-project-about__text {
  position: relative;
  z-index: 1;
}
.p-project-about__logo {
  margin-inline: auto;
}
@media screen and (min-width: 835px) {
  .p-project-about__logo {
    width: clamp(558.45px, 45.625vw, 722.7px);
  }
}
@media screen and (max-width: 834px) {
  .p-project-about__logo {
    width: clamp(267.75px, 84vw, 346.5px);
    margin-inline: auto;
  }
}
.p-project-about__logo img {
  width: 100%;
}