.p-index-main__visual {
  width: 100%;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 835px) {
  .p-index-main__visual {
    max-height: calc(100svh - clamp(76.5px, 6.25vw, 99px));
    aspect-ratio: 16/9;
  }
}
@media screen and (max-width: 834px) {
  .p-index-main__visual {
    max-height: calc(100svh - clamp(59.5px, 18.667vw, 77px));
    aspect-ratio: 9/16;
  }
}
.p-index-main__visual__bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  z-index: 0;
}
.p-index-main__visual__bg img,
.p-index-main__visual__bg video {
  width: 100%;
  min-height: 100%;
  outline: none;
  border: none;
  filter: drop-shadow(0px 0px rgba(0, 0, 0, 0));
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.p-index-main__visual__bg::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #000;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.4;
  z-index: 1;
}
.p-index-main__visual__content {
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  z-index: 1;
}
.p-index-main__visual__logo {
  margin-inline: auto;
}
@media screen and (min-width: 835px) {
  .p-index-main__visual__logo {
    width: min(54.792vw, 867.9px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-main__visual__logo {
    width: min(89.333vw, 368.5px);
  }
}
.p-index-main__visual__logo img {
  width: 100%;
}
.p-index-news {
  position: relative;
  background-color: var(--bg-blue);
}
@media screen and (min-width: 835px) {
  .p-index-news {
    padding-top: min(8.333vw, 132px);
    padding-bottom: min(8.333vw, 132px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-news {
    padding-top: min(21.333vw, 88px);
    padding-bottom: min(21.333vw, 88px);
  }
}
.p-index-news__top > *:first-child {
  margin-top: 0 !important;
}
.p-index-news__top > *:last-child {
  margin-bottom: 0 !important;
}
@media screen and (min-width: 835px) {
  .p-index-news__top {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
}
@media screen and (max-width: 834px) {
  .p-index-news__top {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
  }
}
@media screen and (min-width: 835px) {
  .p-index-news__title {
    margin-bottom: 0;
  }
}
@media screen and (max-width: 834px) {
  .p-index-news__title {
    margin-bottom: 0;
  }
}
.p-index-news__bottom {
  position: relative;
}
@media screen and (min-width: 835px) {
  .p-index-news__bottom {
    margin-right: calc((100dvw - 100%) / 2 * -1);
    margin-top: min(4.167vw, 66px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-news__bottom {
    margin-top: min(10.667vw, 44px);
  }
}
.p-index-news__slider__card {
  background-color: var(--bg-blue);
}
@media screen and (min-width: 835px) {
  .p-index-news__slider__card {
    padding-right: min(3.889vw, 61.6px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-news__slider__card {
    padding-right: min(5.333vw, 22px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-news__slider__next, .p-index-news__slider__prev {
    top: min(7.083vw, 112.2px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-news__slider__next, .p-index-news__slider__prev {
    top: unset;
    bottom: -20px;
    transform: translateY(100%);
  }
}
@media screen and (min-width: 835px) {
  .p-index-news__slider__next {
    right: 8.5%;
  }
}
@media screen and (max-width: 834px) {
  .p-index-news__slider__next {
    right: calc(50% - min(9.6vw, 39.6px));
  }
}
@media screen and (min-width: 835px) {
  .p-index-news__slider__prev {
    left: calc(clamp(27.2px, 2.222vw, 35.2px) * -1 - (min(3.889vw, 61.6px) - clamp(27.2px, 2.222vw, 35.2px)) * 0.5);
  }
}
@media screen and (max-width: 834px) {
  .p-index-news__slider__prev {
    left: calc(50% - min(9.6vw, 39.6px));
  }
}
@media screen and (min-width: 835px) {
  .p-index-news__slider__scrollbar {
    margin-top: clamp(102px, 8.333vw, 132px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-news__slider__scrollbar {
    margin-top: min(19.2vw, 79.2px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-service {
    padding-top: min(8.333vw, 132px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service {
    padding-top: min(21.333vw, 88px);
  }
}
.p-index-service__list {
  position: relative;
}
@media screen and (min-width: 835px) {
  .p-index-service__list {
    display: flex;
    margin-top: min(4.167vw, 66px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__list {
    margin-top: min(10.667vw, 44px);
  }
}
.p-index-service__list:has(.p-index-service__card:hover) .p-index-service__card:not(:hover) {
  flex: 0.8;
}
.p-index-service__card {
  display: block;
  overflow: hidden;
  position: relative;
  transition: flex var(--duration);
}
@media screen and (min-width: 835px) {
  .p-index-service__card {
    flex: 1;
    height: min(45.833vw, 726px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__card {
    aspect-ratio: 75/64;
  }
}
@media (hover: hover) {
  .p-index-service__card:hover {
    flex: 1.6;
  }
  .p-index-service__card:hover .p-index-service__card__image::before {
    opacity: 0.35;
  }
}
.p-index-service__card__image {
  width: 101%;
  height: 101%;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
}
.p-index-service__card__image::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  position: absolute;
  top: 0;
  left: 0;
  transition: opacity var(--duration);
  z-index: 1;
}
.p-index-service__card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  z-index: 0;
}
.p-index-service__card__title {
  color: var(--text-white);
  font-weight: var(--fw-500);
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  z-index: 1;
}
@media screen and (min-width: 835px) {
  .p-index-service__card__title {
    font-size: clamp(27.2px, 2.222vw, 35.2px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__card__title {
    font-size: clamp(20.4px, 6.4vw, 26.4px);
  }
}
.p-index-service__card__icon {
  position: absolute !important;
  z-index: 1;
}
@media screen and (min-width: 835px) {
  .p-index-service__card__icon {
    right: min(1.389vw, 22px);
    bottom: min(1.667vw, 26.4px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__card__icon {
    right: min(5.333vw, 22px);
    bottom: min(5.333vw, 22px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-service__bottom {
    margin-top: min(4.167vw, 66px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__bottom {
    margin-top: min(10.667vw, 44px);
  }
}
.p-index-service__brand {
  background-color: var(--bg-blue);
  position: relative;
}
@media screen and (min-width: 835px) {
  .p-index-service__brand {
    padding-block: min(5.556vw, 88px);
    margin-top: min(8.333vw, 132px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__brand {
    padding-block: min(21.333vw, 88px);
    margin-top: min(21.333vw, 88px);
  }
}
.p-index-service__brand__inner {
  z-index: 0;
}
.p-index-service__brand__title {
  display: flex;
  align-items: flex-end;
}
.p-index-service__brand__head {
  font-family: var(--font-en);
  font-weight: var(--fw-400);
  line-height: var(--lh-100);
}
@media screen and (min-width: 835px) {
  .p-index-service__brand__head {
    font-size: clamp(34px, 2.778vw, 44px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__brand__head {
    font-size: clamp(42.5px, 13.333vw, 55px);
  }
}
.p-index-service__brand__subtitle {
  font-weight: var(--fw-400);
  line-height: var(--lh-150);
}
@media screen and (min-width: 835px) {
  .p-index-service__brand__subtitle {
    font-size: clamp(11.9px, 0.972vw, 15.4px);
    margin-left: min(1.389vw, 22px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__brand__subtitle {
    font-size: clamp(11.9px, 3.733vw, 15.4px);
    margin-left: min(3.2vw, 13.2px);
  }
}
.p-index-service__brand__link {
  display: block;
}
@media screen and (min-width: 835px) {
  .p-index-service__brand__link {
    padding-right: min(1.389vw, 22px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__brand__link {
    padding-inline: min(2.667vw, 11px);
  }
}
@media (hover: hover) {
  .p-index-service__brand__link:hover .p-index-service__brand__name {
    color: var(--text-link);
  }
}
.p-index-service__brand__logo {
  width: 100%;
  background-color: var(--base);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 835px) {
  .p-index-service__brand__logo {
    height: min(4.861vw, 77px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__brand__logo {
    height: min(18.667vw, 77px);
  }
}
.--blank .p-index-service__brand__logo::before {
  font-family: var(--font-awesome);
  content: "\f08e";
  font-weight: var(--fw-400);
  position: absolute;
}
@media screen and (min-width: 835px) {
  .--blank .p-index-service__brand__logo::before {
    font-size: clamp(8.5px, 0.694vw, 11px);
    top: min(0.417vw, 6.6px);
    right: min(0.417vw, 6.6px);
  }
}
@media screen and (max-width: 834px) {
  .--blank .p-index-service__brand__logo::before {
    font-size: clamp(8.5px, 2.667vw, 11px);
    top: min(1.6vw, 6.6px);
    right: min(1.6vw, 6.6px);
  }
}
.p-index-service__brand__logo img {
  width: 100%;
  object-fit: cover;
  object-position: center;
}
.p-index-service__brand__name {
  font-weight: var(--fw-500);
  line-height: var(--lh-150);
  text-align: center;
  transition: color var(--duration);
}
@media screen and (min-width: 835px) {
  .p-index-service__brand__name {
    font-size: clamp(10.2px, 0.833vw, 13.2px);
    margin-top: min(0.556vw, 8.8px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__brand__name {
    font-size: clamp(10.2px, 3.2vw, 13.2px);
    margin-top: min(2.133vw, 8.8px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-service__brand__slider__wrapper {
    padding-left: min(1.389vw, 22px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-service__brand__slider__container {
    margin-top: min(2.778vw, 44px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__brand__slider__container {
    margin-top: min(10.667vw, 44px);
  }
}
.p-index-service__brand__slider__navigation {
  width: 100%;
  display: flex;
}
@media screen and (min-width: 835px) {
  .p-index-service__brand__slider__navigation {
    position: absolute;
    max-width: min(81.944vw, 1298px);
    column-gap: min(0.556vw, 8.8px);
    justify-content: flex-end;
    top: min(6.25vw, 99px);
    left: 50%;
    translate: -50% 0;
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__brand__slider__navigation {
    position: relative;
    column-gap: min(2.133vw, 8.8px);
    justify-content: center;
    margin-top: min(10.667vw, 44px);
  }
}
.p-index-service__brand__slider__navigation > * {
  position: relative;
}
.p-index-service__brand__slider__prev::before, .p-index-service__brand__slider__next::before {
  font-weight: var(--fw-400);
  border-color: var(--border-gray);
}
.p-index-service__brand__slider__control {
  z-index: 1;
  aspect-ratio: 1/1;
  top: 0;
  bottom: 0;
  display: block;
  place-content: center;
  cursor: pointer;
  transition: all var(--duration);
  position: relative;
}
@media screen and (min-width: 835px) {
  .p-index-service__brand__slider__control {
    width: clamp(27.2px, 2.222vw, 35.2px);
    height: clamp(27.2px, 2.222vw, 35.2px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__brand__slider__control {
    width: clamp(27.2px, 8.533vw, 35.2px);
    height: clamp(27.2px, 8.533vw, 35.2px);
  }
}
@media (hover: hover) {
  .p-index-service__brand__slider__control:hover::before {
    color: var(--text-link);
    border-color: var(--text-link);
  }
}
.p-index-service__brand__slider__control::before {
  width: 100%;
  height: 100%;
  color: var(--text);
  font-family: var(--font-awesome);
  font-weight: var(--fw-700);
  content: "\f04c";
  line-height: var(--lh-100);
  aspect-ratio: 1/1;
  background-color: var(--base);
  border: var(--border-gray) solid 1px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: color var(--duration), border-color var(--duration);
}
@media screen and (min-width: 835px) {
  .p-index-service__brand__slider__control::before {
    font-size: clamp(10.2px, 0.833vw, 13.2px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__brand__slider__control::before {
    font-size: clamp(10.2px, 3.2vw, 13.2px);
  }
}
.p-index-service__brand__slider__control.is-paused::before {
  content: "\f04b";
  padding-left: 1px;
}
@media screen and (min-width: 835px) {
  .p-index-service__brand__slider__control.is-paused::before {
    font-size: clamp(8.5px, 0.694vw, 11px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-service__brand__slider__control.is-paused::before {
    font-size: clamp(8.5px, 2.667vw, 11px);
  }
}
.p-index-project {
  border-bottom: var(--border-gray) solid 1px;
}
@media screen and (min-width: 835px) {
  .p-index-project {
    padding-block: min(8.333vw, 132px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-project {
    padding-block: min(21.333vw, 88px);
  }
}
.p-index-project__title {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.p-index-project__title > * {
  margin: 0;
}
.p-index-project__content {
  position: relative;
}
@media screen and (min-width: 835px) {
  .p-index-project__content {
    margin-top: min(4.167vw, 66px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-project__content {
    margin-top: min(10.667vw, 44px);
  }
}
.p-index-project__card {
  background-color: var(--base);
}
@media screen and (min-width: 835px) {
  .p-index-project__card {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 834px) {
  .p-index-project__card {
    min-height: clamp(454.75px, 142.667vw, 588.5px);
    display: block;
  }
}
@media (hover: hover) {
  .p-index-project__card:hover .p-index-project__head {
    color: var(--text-link);
  }
  .p-index-project__card:hover .p-index-project__image img {
    transform: scale(1.2);
  }
}
.p-index-project__image__wrapper {
  aspect-ratio: 1/1;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .p-index-project__image__wrapper {
    width: min(40.972vw, 649px);
    padding-inline: min(3.472vw, 55px);
    border-radius: min(0.556vw, 8.8px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-project__image__wrapper {
    width: 100%;
    padding-inline: min(10.667vw, 44px);
    border-radius: min(2.133vw, 8.8px);
  }
}
.p-index-project__image__wrapper::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: inherit;
  background-size: cover;
  background-position: center;
  filter: blur(20px);
  transform: scale(1.3);
  z-index: 1;
}
.p-index-project__image {
  width: 100%;
  height: auto;
  display: block;
  position: relative;
  overflow: hidden;
  z-index: 2;
}
@media screen and (min-width: 835px) {
  .p-index-project__image {
    border-radius: min(0.556vw, 8.8px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-project__image {
    border-radius: min(2.133vw, 8.8px);
  }
}
.p-index-project__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: all 0.45s ease;
}
.p-index-project__awards {
  background-color: var(--base);
  position: absolute;
  z-index: 2;
}
@media screen and (min-width: 835px) {
  .p-index-project__awards {
    width: min(6.944vw, 110px);
    border-radius: min(0.278vw, 4.4px);
    padding: min(0.694vw, 11px) min(1.389vw, 22px);
    top: min(1.389vw, 22px);
    left: min(1.389vw, 22px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-project__awards {
    width: min(14.933vw, 61.6px);
    border-radius: min(1.067vw, 4.4px);
    padding: min(1.6vw, 6.6px) min(3.2vw, 13.2px);
    top: min(2.667vw, 11px);
    left: min(2.667vw, 11px);
  }
}
.p-index-project__text {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 835px) {
  .p-index-project__text {
    padding-left: clamp(34px, 2.778vw, 44px);
    padding-top: clamp(97.75px, 7.986vw, 126.5px);
    padding-bottom: clamp(176.8px, 14.444vw, 228.8px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-project__text {
    margin-top: min(10.667vw, 44px);
  }
}
.p-index-project__head {
  font-weight: var(--fw-500);
  line-height: var(--lh-150);
  transition: color var(--duration);
}
@media screen and (min-width: 835px) {
  .p-index-project__head {
    font-size: clamp(27.2px, 2.222vw, 35.2px);
    text-align: center;
  }
}
@media screen and (max-width: 834px) {
  .p-index-project__head {
    font-size: clamp(17px, 5.333vw, 22px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-project__quote {
    font-size: clamp(11.9px, 0.972vw, 15.4px);
    line-height: var(--lh-200);
    text-align: center;
    margin-top: min(4.167vw, 66px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-project__quote {
    font-size: clamp(11.9px, 3.733vw, 15.4px);
    line-height: var(--lh-150);
    margin-top: min(4.267vw, 17.6px);
  }
}
.p-index-project__pagination {
  margin: 0;
  top: auto !important;
}
@media screen and (min-width: 835px) {
  .p-index-project__pagination {
    width: fit-content !important;
    display: inline-flex;
    position: absolute;
    left: auto !important;
    right: clamp(178.5px, 14.583vw, 231px);
    bottom: clamp(97.75px, 7.986vw, 126.5px) !important;
    gap: min(0.278vw, 4.4px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-project__pagination {
    position: relative;
    gap: min(1.067vw, 4.4px);
    margin-top: min(10.667vw, 44px);
  }
}
.p-index-project__pagination__circle {
  background-color: var(--base);
  border-radius: 50%;
  color: var(--text);
  font-family: var(--font-en);
  text-align: center;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 !important;
  overflow: hidden;
  opacity: 1;
  z-index: 1;
}
@media screen and (min-width: 835px) {
  .p-index-project__pagination__circle {
    width: clamp(27.2px, 2.222vw, 35.2px);
    height: clamp(27.2px, 2.222vw, 35.2px);
    font-size: clamp(10.2px, 0.833vw, 13.2px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-project__pagination__circle {
    width: clamp(27.2px, 8.533vw, 35.2px);
    height: clamp(27.2px, 8.533vw, 35.2px);
    font-size: clamp(10.2px, 0.833vw, 13.2px);
  }
}
.p-index-project__pagination__circle svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.p-index-project__pagination__circle svg .js-progress.is-active {
  transition: stroke-dashoffset 5.5s ease-out;
}
.p-index-project .swiper-fade .swiper-slide {
  height: auto;
  background: #fff;
}
@media screen and (min-width: 835px) {
  .p-index-about {
    padding-block: min(8.333vw, 132px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-about {
    padding-block: min(21.333vw, 88px);
  }
}
.p-index-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-index-about__content {
    background-image: url("/assets2/img/index/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-index-about__content {
    background-image: url("/assets2/img/index/next-good_bg_sp.webp");
    padding: min(25.6vw, 105.6px) min(2.667vw, 11px);
  }
}
.p-index-about__content::before, .p-index-about__content::after {
  position: absolute;
}
.p-index-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-index-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-index-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-index-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-index-about__content:hover::after {
    opacity: 1;
  }
}
.p-index-about__text {
  position: relative;
  z-index: 1;
}
.p-index-about__logo {
  margin-inline: auto;
}
@media screen and (min-width: 835px) {
  .p-index-about__logo {
    width: clamp(558.45px, 45.625vw, 722.7px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-about__logo {
    width: clamp(267.75px, 84vw, 346.5px);
    margin-inline: auto;
  }
}
.p-index-about__logo img {
  width: 100%;
}
.p-index-about__card__row {
  display: grid;
}
@media screen and (min-width: 835px) {
  .p-index-about__card__row {
    grid-template-columns: repeat(2, 1fr);
    gap: min(3.472vw, 55px) min(6.944vw, 110px);
    margin-top: min(4.167vw, 66px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-about__card__row {
    grid-template-columns: repeat(1, 1fr);
    row-gap: min(10.667vw, 44px);
    margin-top: min(10.667vw, 44px);
  }
}
.p-index-about__card__link {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
}
@media screen and (min-width: 835px) {
  .p-index-about__card__link {
    column-gap: min(1.389vw, 22px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-about__card__link {
    column-gap: min(5.333vw, 22px);
  }
}
@media (hover: hover) {
  .p-index-about__card__link:hover .p-index-about__card__title {
    color: var(--text-link);
  }
  .p-index-about__card__link:hover .p-index-about__card__title::before {
    color: var(--text-link);
    border-color: var(--text-link);
  }
}
@media screen and (min-width: 835px) {
  .p-index-about__card__icon {
    width: clamp(110.5px, 9.028vw, 143px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-about__card__icon {
    width: clamp(71.4px, 22.4vw, 92.4px);
  }
}
.p-index-about__card__title {
  flex: 1;
  font-family: var(--font-en);
  font-weight: var(--fw-500);
  line-height: var(--lh-100);
  border-bottom: var(--border) solid 1px;
  position: relative;
  transition: color var(--duration);
}
@media screen and (min-width: 835px) {
  .p-index-about__card__title {
    font-size: clamp(11.9px, 0.972vw, 15.4px);
    padding-bottom: clamp(27.2px, 2.222vw, 35.2px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-about__card__title {
    font-size: clamp(10.2px, 3.2vw, 13.2px);
    padding-bottom: clamp(15.3px, 4.8vw, 19.8px);
  }
}
.p-index-about__card__title > span {
  display: block;
  font-weight: var(--fw-400);
  margin-bottom: 0.25em;
}
@media screen and (min-width: 835px) {
  .p-index-about__card__title > span {
    font-size: clamp(34px, 2.778vw, 44px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-about__card__title > span {
    font-size: clamp(27.2px, 8.533vw, 35.2px);
  }
}
.p-index-about__card__title.--uppercase {
  text-transform: uppercase;
}
.p-index-about__card__title::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;
  right: 0;
  transition: all var(--duration);
}
@media screen and (min-width: 835px) {
  .p-index-about__card__title::before {
    width: clamp(42.5px, 3.472vw, 55px);
    font-size: clamp(16.15px, 1.319vw, 20.9px);
    padding-top: 1px;
    top: 0;
  }
}
@media screen and (max-width: 834px) {
  .p-index-about__card__title::before {
    width: clamp(27.2px, 8.533vw, 35.2px);
    font-size: clamp(10.2px, 3.2vw, 13.2px);
    top: clamp(10.2px, 3.2vw, 13.2px);
  }
}
.p-index-recruit {
  background-color: var(--bg-blue);
}
@media screen and (min-width: 835px) {
  .p-index-recruit {
    min-height: min(45.833vw, 726px);
    padding-bottom: min(4.167vw, 66px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-recruit {
    padding-block: min(16vw, 66px);
  }
}
.p-index-recruit__content {
  display: flex;
}
@media screen and (min-width: 835px) {
  .p-index-recruit__content {
    justify-content: space-between;
  }
}
@media screen and (max-width: 834px) {
  .p-index-recruit__content {
    flex-direction: column-reverse;
    flex-wrap: wrap;
  }
}
.p-index-recruit__text > *:first-child {
  margin-top: 0 !important;
}
.p-index-recruit__text > *:last-child {
  margin-bottom: 0 !important;
}
@media screen and (min-width: 835px) {
  .p-index-recruit__text {
    padding-top: clamp(102px, 8.333vw, 132px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-recruit__text {
    margin-top: min(5.333vw, 22px);
  }
}
.p-index-recruit__message__title {
  font-weight: var(--fw-700);
  line-height: var(--lh-150);
  word-break: keep-all;
  overflow-wrap: anywhere;
}
@media screen and (min-width: 835px) {
  .p-index-recruit__message__title {
    width: clamp(255px, 20.833vw, 330px);
    font-size: clamp(27.2px, 2.222vw, 35.2px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-recruit__message__title {
    font-size: clamp(27.2px, 8.533vw, 35.2px);
  }
}
.p-index-recruit__message__text {
  line-height: var(--lh-200);
}
@media screen and (min-width: 835px) {
  .p-index-recruit__message__text {
    font-size: clamp(13.6px, 1.111vw, 17.6px);
    margin-top: min(4.167vw, 66px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-recruit__message__text {
    font-size: clamp(11.9px, 3.733vw, 15.4px);
    margin-top: min(4.267vw, 17.6px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-recruit__button {
    margin-top: min(4.167vw, 66px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-recruit__button {
    margin-top: min(5.333vw, 22px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-recruit__image {
    width: min(42.361vw, 671px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-recruit__image {
    width: min(81.333vw, 335.5px);
  }
}
@media screen and (max-width: 834px) and (min-width: 541px) {
  .p-index-recruit__image {
    margin-inline: auto;
  }
}
.p-index-cosmostyle {
  position: relative;
}
@media screen and (min-width: 835px) {
  .p-index-cosmostyle {
    padding-block: min(8.333vw, 132px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-cosmostyle {
    padding-block: min(21.333vw, 88px);
  }
}
.p-index-cosmostyle__head {
  display: flex;
  justify-content: space-between;
}
@media screen and (min-width: 835px) {
  .p-index-cosmostyle__head {
    align-items: center;
  }
}
@media screen and (max-width: 834px) {
  .p-index-cosmostyle__head {
    align-items: flex-start;
  }
}
@media screen and (min-width: 835px) {
  .p-index-cosmostyle__title {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
}
@media screen and (min-width: 835px) {
  .p-index-cosmostyle__logo {
    width: clamp(141.1px, 11.528vw, 182.6px);
    margin-right: min(5.556vw, 88px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-cosmostyle__logo {
    width: clamp(141.1px, 44.267vw, 182.6px);
  }
}
.p-index-cosmostyle__subtitle {
  font-weight: var(--fw-500);
  line-height: var(--lh-150);
}
@media screen and (min-width: 835px) {
  .p-index-cosmostyle__subtitle {
    font-size: clamp(13.6px, 1.111vw, 17.6px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-cosmostyle__subtitle {
    font-size: clamp(11.9px, 3.733vw, 15.4px);
    margin-top: min(10.667vw, 44px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-cosmostyle__button {
    margin-top: clamp(13.6px, 4.267vw, 17.6px);
  }
}
.p-index-cosmostyle__slider__container {
  position: relative;
}
@media screen and (min-width: 835px) {
  .p-index-cosmostyle__slider__container {
    margin-top: min(4.167vw, 66px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-cosmostyle__slider__container {
    margin-top: min(10.667vw, 44px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-cosmostyle__slider__card {
    padding-right: min(1.389vw, 22px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-cosmostyle__slider__card {
    padding-right: min(5.333vw, 22px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-cosmostyle__slider__next, .p-index-cosmostyle__slider__prev {
    top: 100%;
    transform: translateY(calc(-100% - 40px));
  }
}
@media screen and (max-width: 834px) {
  .p-index-cosmostyle__slider__next, .p-index-cosmostyle__slider__prev {
    top: unset;
    bottom: min(5.333vw, 22px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-cosmostyle__slider__next {
    right: 0;
  }
}
@media screen and (max-width: 834px) {
  .p-index-cosmostyle__slider__next {
    right: calc(50% - 32px - 4px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-cosmostyle__slider__prev {
    left: unset;
    right: min(2.778vw, 44px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-cosmostyle__slider__prev {
    left: calc(50% - 32px - 4px);
  }
}
@media screen and (min-width: 835px) {
  .p-index-cosmostyle__slider__scrollbar {
    margin-top: clamp(102px, 8.333vw, 132px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-cosmostyle__slider__scrollbar {
    margin-top: min(19.2vw, 79.2px);
  }
}
.p-index-pickup {
  position: relative;
}
@media screen and (min-width: 835px) {
  .p-index-pickup {
    padding-bottom: min(8.333vw, 132px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-pickup {
    padding-bottom: min(21.333vw, 88px);
  }
}
.p-index-pickup__title {
  font-family: var(--font-en);
  font-weight: var(--fw-400);
  line-height: var(--lh-100);
}
@media screen and (min-width: 835px) {
  .p-index-pickup__title {
    font-size: clamp(34px, 2.778vw, 44px);
    margin-top: min(8.333vw, 132px);
    margin-bottom: min(4.167vw, 66px);
  }
}
@media screen and (max-width: 834px) {
  .p-index-pickup__title {
    font-size: clamp(42.5px, 13.333vw, 55px);
    margin-top: min(21.333vw, 88px);
    margin-bottom: min(13.333vw, 55px);
  }
}
.p-index-pickup .c-card__thumb {
  aspect-ratio: 280/173;
}
.p-index-pickup .c-card__thumb img {
  width: 102%;
  height: 102%;
}