/**
 * Keyframes
 */
@keyframes slideToLeft {
  to {
    translate: -100%;
  }
}
.pg_purpose main {
  color: #257272;
}
.pg_purpose main .ly_cont {
  margin-inline: auto;
  padding-inline: 60px;
  max-width: 1720px;
  box-sizing: content-box;
}
@media (max-width: 767px) {
  .pg_purpose main .ly_cont {
    padding-inline: 0;
    width: 89.333vw;
  }
}
.pg_purpose main .sectHdg {
  display: grid;
  gap: 30px;
  grid-template-columns: auto 1fr;
  align-items: center;
  margin-bottom: 35px;
}
@media (max-width: 767px) {
  .pg_purpose main .sectHdg {
    gap: 15px;
    margin-bottom: 28px;
  }
}
.pg_purpose main .sectHdg_square {
  width: 73px;
  aspect-ratio: 73/51;
  background: url(../images/img_gikenSquare.svg) no-repeat;
  background-size: contain;
}
@media (max-width: 767px) {
  .pg_purpose main .sectHdg_square {
    width: 43px;
  }
}
.pg_purpose main .sectHdg_hdg {
  display: grid;
  gap: 10px;
}
@media (max-width: 767px) {
  .pg_purpose main .sectHdg_hdg {
    gap: 3px;
  }
}
.pg_purpose main .sectHdg_hdg [lang=en] {
  font-size: 3.2rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .pg_purpose main .sectHdg_hdg [lang=en] {
    font-size: 2.4rem;
    line-height: 1.15;
  }
}
.pg_purpose main .sectHdg_hdg [lang=ja] {
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.12em;
}
@media (max-width: 767px) {
  .pg_purpose main .sectHdg_hdg [lang=ja] {
    font-size: 1.1rem;
    letter-spacing: 0.03em;
    line-height: 1.4;
  }
}
.pg_purpose main .fvSect {
  position: relative;
  -webkit-clip-path: inset(0);
  clip-path: inset(0);
}
.pg_purpose main .fvSect_container {
  display: grid;
  gap: 5.8139534884%;
  padding-block: 150px 260px;
}
@media not all and (max-width: 767px) {
  .pg_purpose main .fvSect_container {
    grid-template-columns: 53.488372093% 1fr;
    align-items: center;
  }
}
@media (max-width: 767px) {
  .pg_purpose main .fvSect_container {
    gap: 50px;
    padding-block: 50px 100px;
  }
}
@media (max-width: 767px) {
  .pg_purpose main .fvSect_img {
    order: 1;
    margin-inline: -5.3333333333vw;
  }
}
.pg_purpose main .fvSect_img img {
  width: 100%;
  mix-blend-mode: multiply;
}
.pg_purpose main .fvSect_hdg {
  margin: 0 -0.5em 40px 0;
  font-size: 4.8rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.7916666667;
}
@media (max-width: 767px) {
  .pg_purpose main .fvSect_hdg {
    margin-bottom: 30px;
    font-size: 2.7rem;
    line-height: 1.5555555556;
  }
}
.pg_purpose main .fvSect_desc {
  font-size: 2rem;
  letter-spacing: 0.05em;
  line-height: 2.2;
}
@media (max-width: 767px) {
  .pg_purpose main .fvSect_desc {
    font-size: 1.5rem;
    line-height: 2.2666666667;
  }
}
.pg_purpose main .fvSect_bgOverlay {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(69, 176, 53, 0) 60%, rgba(69, 176, 53, 0.09) 85.1%, rgba(69, 176, 53, 0.2) 100%);
}
@media (max-width: 767px) {
  .pg_purpose main .fvSect_bgOverlay {
    background: linear-gradient(180deg, rgba(69, 176, 53, 0) 85%, rgba(69, 176, 53, 0.3) 100%);
  }
}
.pg_purpose main .fvSect_bg {
  position: fixed;
  inset: 0;
  z-index: -2;
}
.pg_purpose main .fvSect_bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
.pg_purpose main .mainSect {
  padding-block: 150px 50px;
}
@media (max-width: 767px) {
  .pg_purpose main .mainSect {
    padding-block: 70px;
  }
}
.pg_purpose main .mainSect_container {
  container-type: inline-size;
}
.pg_purpose main .mainSect_inner {
  display: grid;
}
@media not all and (max-width: 767px) {
  .pg_purpose main .mainSect_inner {
    gap: 2.3255813953%;
    grid-template-columns: 1fr 46.511627907%;
    align-items: center;
  }
}
@media (max-width: 767px) {
  .pg_purpose main .mainSect_inner {
    gap: 40px;
  }
}
@media not all and (max-width: 767px) {
  .pg_purpose main .mainSect_body {
    padding-block: 40px;
  }
}
.pg_purpose main .mainSect_copy {
  border-top: 2px solid;
  border-bottom: 2px solid;
  padding-block: 39px;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 4.7674418605cqw;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.4634146341;
}
@media (max-width: 767px) {
  .pg_purpose main .mainSect_copy {
    padding-block: 30px;
    width: auto;
    font-size: 3.6rem;
  }
}
.pg_purpose main .mainSect_copy > span {
  display: inline-block;
}
.pg_purpose main .mainSect_desc {
  margin-top: 40px;
  font-size: 2.4rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 2;
}
@media (max-width: 767px) {
  .pg_purpose main .mainSect_desc {
    margin-top: 30px;
    font-size: 1.6rem;
  }
}
.pg_purpose main .mainSect_img img {
  width: 100%;
}
.pg_purpose main .mainSect_enTxt {
  background-image: linear-gradient(180deg, #E3F3E3 18.51%, rgba(227, 243, 227, 0) 81.14%);
  color: transparent;
  font-size: 13.9534883721cqw;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 0.75;
  -webkit-background-clip: text;
  background-clip: text;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .pg_purpose main .mainSect_enTxt {
    display: none;
  }
}
@media (max-width: 767px) {
  .pg_purpose main .purposeSect .mainSect_img {
    margin: 0 0.8vw -24px;
  }
}
.pg_purpose main .visionSect {
  background-color: #E3F3E3;
}
@media (max-width: 767px) {
  .pg_purpose main .visionSect .mainSect_img {
    margin-inline: 4.5333333333vw;
  }
}
.pg_purpose main .visionSect .mainSect_enTxt {
  background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.7) 18.86%, rgba(255, 255, 255, 0) 85.24%);
}
.pg_purpose main .coreValueSect .mainSect_enTxt {
  margin-top: 60px;
}
.pg_purpose main .coreValueList {
  display: grid;
}
@media not all and (max-width: 767px) {
  .pg_purpose main .coreValueList {
    gap: 10px;
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 767px) {
  .pg_purpose main .coreValueList {
    gap: 20px;
  }
}
.pg_purpose main .coreValueListItem {
  padding: 30px 30px 40px;
  background-color: #E3F3E3;
}
@media (max-width: 767px) {
  .pg_purpose main .coreValueListItem {
    padding: 20px;
  }
}
.pg_purpose main .coreValueListItem_img {
  margin-bottom: 20px;
  text-align: center;
}
@media (max-width: 767px) {
  .pg_purpose main .coreValueListItem_img {
    margin: 0 2.6666666667vw 8px;
  }
}
.pg_purpose main .coreValueListItem_title {
  display: grid;
  justify-content: center;
  font-size: 2.0930232558cqw;
  font-weight: 800;
  letter-spacing: 0.05em;
  line-height: 1.5277777778;
}
@media (max-width: 767px) {
  .pg_purpose main .coreValueListItem_title {
    font-size: 2rem;
    letter-spacing: 0.12em;
  }
}
.pg_purpose main .coreValueListItem_desc {
  margin-top: 15px;
  font-size: max(1.1627906977cqw, 15px);
  letter-spacing: 0.05em;
  line-height: 1.8;
}
@media (max-width: 767px) {
  .pg_purpose main .coreValueListItem_desc {
    margin-top: 7px;
    font-size: 1.6rem;
    line-height: 2;
  }
}
.pg_purpose main .interSect {
  position: relative;
  color: #fff;
}
.pg_purpose main .interSect::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(63.39% 122.72% at 30.13% 45.78%, rgba(37, 114, 114, 0.5) 6.24%, rgba(37, 114, 114, 0.95) 52.34%);
}
@media (max-width: 767px) {
  .pg_purpose main .interSect::before {
    background: linear-gradient(171.88deg, rgba(37, 114, 114, 0.9) 12.03%, rgba(37, 114, 114, 0.7) 58.89%);
  }
}
.pg_purpose main .interSect_container {
  display: grid;
  align-items: center;
  justify-content: end;
  position: relative;
  z-index: 1;
  min-height: 862px;
}
@media (max-width: 767px) {
  .pg_purpose main .interSect_container {
    min-height: 658px;
  }
}
.pg_purpose main .interSect_body {
  padding-block: 50px;
  max-width: 760px;
}
.pg_purpose main .interSect_hdg {
  font-size: 4.8rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1.7916666667;
}
@media (max-width: 767px) {
  .pg_purpose main .interSect_hdg {
    font-size: 2.7rem;
    line-height: 1.5555555556;
  }
}
.pg_purpose main .interSect_desc {
  margin-top: 50px;
  font-size: 2.4rem;
  letter-spacing: 0.05em;
  line-height: 2.5;
}
@media (max-width: 767px) {
  .pg_purpose main .interSect_desc {
    margin-top: 30px;
    font-size: 1.5rem;
    line-height: 2.2666666667;
  }
}
.pg_purpose main .interSect_slide {
  --_slidePxPerSec: 150;
  position: absolute;
  inset: 0;
  z-index: -1;
}
@media (max-width: 767px) {
  .pg_purpose main .interSect_slide {
    --_slidePxPerSec: 100;
  }
}
.pg_purpose main .interSect_slide_row {
  height: 50%;
  font-size: 0;
  white-space: nowrap;
}
.pg_purpose main .interSect_slide_row_group {
  display: inline-flex;
  height: 100%;
  vertical-align: top;
  animation: slideToLeft calc(var(--_groupW) / var(--_slidePxPerSec) * 1s) linear infinite;
  will-change: translate;
}
.pg_purpose main .interSect_slide_row_group img {
  max-width: none;
  height: 100%;
}
.pg_purpose main .interSect_slide_row:nth-child(2) .interSect_slide_row_group {
  animation-direction: reverse;
}
.pg_purpose main .descSect {
  padding-top: 200px;
}
@media (max-width: 767px) {
  .pg_purpose main .descSect {
    padding-top: 70px;
  }
}
.pg_purpose main .descListItem {
  display: grid;
  border-bottom: 2px solid;
}
@media not all and (max-width: 767px) {
  .pg_purpose main .descListItem {
    gap: 5.8139534884%;
    grid-template-columns: 1fr 52.3255813953%;
    align-items: center;
    padding-block: 136px;
  }
}
@media (max-width: 767px) {
  .pg_purpose main .descListItem {
    gap: 58px;
    padding-block: 45px 76px;
  }
}
.pg_purpose main .descListItem:first-child {
  border-top: 2px solid;
}
.pg_purpose main .descListItem_hdg {
  font-size: 3.2rem;
  font-weight: 700;
  letter-spacing: 0.12em;
}
@media (max-width: 767px) {
  .pg_purpose main .descListItem_hdg {
    font-size: 2rem;
  }
}
.pg_purpose main .descListItem_desc {
  margin-top: 22px;
  font-size: 2rem;
  line-height: 2.3;
}
@media (max-width: 767px) {
  .pg_purpose main .descListItem_desc {
    margin-top: 25px;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
    line-height: 2;
  }
}
.pg_purpose main .descListItem_desc > span {
  display: inline-block;
}
.pg_purpose main .descListItem_img {
  text-align: center;
}
.pg_purpose main .descListItem_img img {
  width: var(--_imgW);
}
@media (max-width: 767px) {
  .pg_purpose main .descListItem_img[style*="--_imgW_sp"] img {
    width: var(--_imgW_sp);
  }
}