.sustainable_2025-gNav {
  position: fixed;
  z-index: 800;
  background-color: #fff;
  bottom: 0;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 0 20px 10px;
  border-top: 1px solid #40B620;
  transition: all 0.3s ease 0s;
}
.sustainable_2025-gNav:hover {
  text-decoration: none;
}
.sustainable_2025-gNav.hide {
  translate: 0 105%;
}
@media all and (max-width: 640px) {
  .sustainable_2025-gNav {
    padding: 0 7.008vw 2.336vw;
  }
}
.sustainable_2025-gNav__list {
  display: flex;
  justify-content: center;
  gap: 40px;
}
@media all and (max-width: 1280px) {
  .sustainable_2025-gNav__list {
    gap: 20px;
  }
}
@media all and (max-width: 1024px) {
  .sustainable_2025-gNav__list {
    display: grid;
    grid-template-rows: repeat(2, 1fr);
    grid-template-columns: repeat(3, 1fr);
    grid-auto-flow: column;
    gap: 0 20px;
    padding: 10px 0;
  }
}
@media all and (max-width: 1024px) and (max-width: 640px) {
  .sustainable_2025-gNav__list {
    width: 100%;
    grid-template-rows: repeat(3, 1fr);
    grid-template-columns: 1.2fr 1fr;
  }
}
.sustainable_2025-gNav__list a {
  display: flex;
  transition: all 0.3s ease 0s;
  font-weight: bold;
  font-size: 14px;
  line-height: 1.4;
  padding: 1.5em 0;
  align-items: center;
  gap: 10px;
}
.sustainable_2025-gNav__list a:hover {
  text-decoration: none;
}
@media all and (max-width: 1024px) {
  .sustainable_2025-gNav__list a {
    padding: 0.5em 0;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-gNav__list a {
    padding: 0.3em 0;
    font-size: 3.2704vw;
  }
}
.sustainable_2025-gNav__list a:hover .icon {
  scale: 1.425;
}
.sustainable_2025-gNav__list a:hover .icon:after {
  scale: 1;
}
.sustainable_2025-gNav__list .icon {
  width: 9px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  position: relative;
  transition: all 0.3s ease 0s;
  border: 1px solid #40B620;
}
.sustainable_2025-gNav__list .icon:hover {
  text-decoration: none;
}
.sustainable_2025-gNav__list .icon:after {
  content: "";
  transition: all 0.3s ease 0s;
  width: 3px;
  aspect-ratio: 1/1;
  background-color: #40B620;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  border-radius: 50%;
  scale: 0;
}
.sustainable_2025-gNav__list .icon:after:hover {
  text-decoration: none;
}

.sustainable_2025-fv {
  padding: 40px 40px 110px;
  background-color: #fff;
  position: relative;
  overflow: hidden;
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv {
    padding: 28.032vw 7.008vw 16.352vw;
  }
}
.sustainable_2025-fv.loaded .sustainable_2025-fv__logo {
  opacity: 1;
}
.sustainable_2025-fv.loaded .sustainable_2025-fv__think-logo {
  opacity: 1;
}
.sustainable_2025-fv.loaded .sustainable_2025-fv__heading {
  opacity: 1;
}
.sustainable_2025-fv.loaded .sustainable_2025-fv__date {
  opacity: 1;
}
.sustainable_2025-fv.loaded .sustainable_2025-fv__header {
  opacity: 1;
}
.sustainable_2025-fv.loaded .sustainable_2025-fv__videoWrap {
  opacity: 1;
}
.sustainable_2025-fv.loaded .sustainable_2025-fv__imgWrap {
  opacity: 1;
}
.sustainable_2025-fv.loaded .sustainable_2025-fv__img3 {
  opacity: 1;
}
.sustainable_2025-fv__logo {
  width: 128px;
  position: absolute;
  z-index: 5;
  top: 42px;
  left: 48px;
  transition: opacity 0.8s 2s;
  opacity: 0;
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__logo {
    width: 128px;
    width: min(128px,29.9008vw);
    top: 30px;
    left: 30px;
  }
}
@media all and (max-width: 428px) {
  .sustainable_2025-fv__logo {
    top: 7.008vw;
    left: 7.008vw;
  }
}
.sustainable_2025-fv__content {
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
}
.sustainable_2025-fv__think-logo {
  width: 96px;
  margin-bottom: 30px;
  transition: opacity 0.8s 0.2s;
  opacity: 0;
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__think-logo {
    width: 22.4256vw;
    margin-bottom: 4.672vw;
  }
}
.sustainable_2025-fv__heading {
  max-width: 546px;
  margin: 0 auto 27px;
  transition: opacity 0.8s 0.4s;
  opacity: 0;
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__heading {
    width: 76.6208vw;
    margin-bottom: 4.672vw;
  }
}
.sustainable_2025-fv__date {
  max-width: 268px;
  margin: 0 auto 40px;
  background-color: #40B620;
  font-weight: bold;
  color: #fff;
  font-size: 13px;
  border-radius: 4em;
  text-align: center;
  width: 100%;
  padding: 0.2em;
  transition: opacity 0.8s 0.5s;
  opacity: 0;
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__date {
    max-width: 67.2768vw;
    margin-bottom: 4.672vw;
    font-size: 3.0368vw;
  }
}
.sustainable_2025-fv__date strong {
  font-size: 17px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__date strong {
    font-size: 3.9712vw;
  }
}
.sustainable_2025-fv__header {
  max-width: 564px;
  width: 100%;
  margin: 0 auto 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  transition: opacity 0.8s 0.7s;
  opacity: 0;
}
@media (max-width: 920px) {
  .sustainable_2025-fv__header {
    margin-bottom: 20px;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__header {
    margin-bottom: 0;
  }
}
.sustainable_2025-fv__header .img1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 50px;
  translate: -100% -70%;
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__header .img1 {
    width: 7.4752vw;
    translate: -40% -30%;
  }
}
.sustainable_2025-fv__header .img2 {
  position: absolute;
  top: 0;
  right: 0;
  width: 172px;
  translate: 120% -30%;
}
@media (max-width: 920px) {
  .sustainable_2025-fv__header .img2 {
    width: 20%;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__header .img2 {
    width: 17.2864vw;
    top: auto;
    bottom: 0;
    translate: 5% 100%;
  }
}
.sustainable_2025-fv__heading2 {
  color: #40B620;
  font-weight: bold;
  font-size: 38px;
  position: relative;
  padding-bottom: 0.3em;
  margin-bottom: 0.65em;
  width: 100%;
  line-height: 1.4;
  letter-spacing: 0.05em;
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__heading2 {
    font-size: 5.1392vw;
    padding-bottom: 1em;
  }
}
.sustainable_2025-fv__heading2:after {
  content: "";
  height: 1px;
  width: 100%;
  background-color: #40B620;
  position: absolute;
  bottom: 0;
  left: 0;
}
.sustainable_2025-fv__heading2 em {
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
}
.sustainable_2025-fv__lead {
  font-size: 24px;
  font-weight: bold;
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__lead {
    font-size: 4vw;
  }
}
.sustainable_2025-fv__videoWrap {
  border-radius: 10px;
  overflow: hidden;
  position: relative;
  aspect-ratio: 16/9;
  width: 428px;
  transition: opacity 0.8s 1s;
  opacity: 0;
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__videoWrap {
    border-radius: 2.336vw;
    width: 100%;
  }
}
.sustainable_2025-fv__videoWrap iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.sustainable_2025-fv__imgWrap {
  transition: opacity 0.8s 1.8s;
  opacity: 0;
}
@media (max-width: 920px) {
  .sustainable_2025-fv__imgWrap {
    display: flex;
    justify-content: center;
    align-items: flex-end;
    margin-bottom: 30px;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__imgWrap {
    width: 114vw;
    position: relative;
    left: 0;
    margin-bottom: 11.68vw;
  }
}
.sustainable_2025-fv__img1 {
  position: absolute;
  width: 295px;
  left: 50%;
  bottom: 0;
  translate: -50% 0;
  margin-left: -480px;
}
@media all and (max-width: 1280px) {
  .sustainable_2025-fv__img1 {
    width: 27%;
    margin-left: 0;
    left: 0;
    translate: -20% 0;
  }
}
@media (max-width: 920px) {
  .sustainable_2025-fv__img1 {
    position: relative;
    translate: 0;
    bottom: 0;
    width: 30%;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__img1 {
    width: 40%;
  }
}
.sustainable_2025-fv__img2 {
  position: absolute;
  width: 362px;
  right: 50%;
  bottom: 30px;
  translate: 50% 0;
  margin-right: -450px;
}
@media all and (max-width: 1280px) {
  .sustainable_2025-fv__img2 {
    width: 30%;
    margin-right: 0;
    right: 0;
    translate: 20% 0;
  }
}
@media (max-width: 920px) {
  .sustainable_2025-fv__img2 {
    position: relative;
    translate: 0 -30%;
    bottom: 35%;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__img2 {
    width: 52%;
    translate: 0 -15%;
    margin-left: -2.336vw;
    bottom: 0;
  }
}
.sustainable_2025-fv__img3 {
  position: absolute;
  width: 84px;
  right: 50%;
  top: 50px;
  translate: 50% 0;
  margin-right: -500px;
  transition: opacity 0.8s 1.4s;
  opacity: 0;
}
@media all and (max-width: 1280px) {
  .sustainable_2025-fv__img3 {
    margin-right: 0;
    right: 80px;
  }
}
@media (max-width: 920px) {
  .sustainable_2025-fv__img3 {
    right: 30px;
    width: 10%;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-fv__img3 {
    right: 3.504vw;
    top: -4.672vw;
    width: 11.68vw;
  }
}

.sustainable_2025-rankSection {
  padding: 100px 0;
  background-color: #40B620;
}
@media all and (max-width: 640px) {
  .sustainable_2025-rankSection {
    padding: 14.016vw 0 7.008vw;
  }
}
.sustainable_2025-rankSection__box {
  background-color: #fff;
  padding-top: 50px;
  border-radius: 20px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-rankSection__box {
    border-radius: 4.672vw;
  }
}
.sustainable_2025-rankSection__box.hide {
  display: none;
}
.sustainable_2025-rankSection__main {
  padding: 30px 50px 50px;
  border-top: 1px solid #40B620;
}
@media all and (max-width: 640px) {
  .sustainable_2025-rankSection__main {
    padding: 7.008vw 4.672vw 8.176vw;
  }
}
.sustainable_2025-rankSection__header__finalHeading {
  padding: 0 1rem;
  margin-bottom: 30px;
  display: flex;
  flex-direction: column;
  text-align: center;
  align-items: center;
  justify-content: center;
}
.sustainable_2025-rankSection__header__finalHeading:before {
  content: "";
  width: 30px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  background-image: url(../images/ic_crown.svg);
  margin-bottom: 1em;
}
@media all and (max-width: 640px) {
  .sustainable_2025-rankSection__header__finalHeading:before {
    width: 6.3072vw;
    height: 3.504vw;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-rankSection__header__finalHeading {
    margin-bottom: 7.4752vw;
  }
}
.sustainable_2025-rankSection__header__finalHeading .finalHeading {
  display: flex;
  flex-direction: column;
  text-align: center;
  align-items: center;
  justify-content: center;
  font-weight: bold;
}
.sustainable_2025-rankSection__header__finalHeading .finalHeading .name {
  font-size: 21px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-rankSection__header__finalHeading .finalHeading .name {
    font-size: 4.9056vw;
  }
}
.sustainable_2025-rankSection__header__finalHeading .finalHeading .date {
  font-size: 10px;
  position: relative;
  z-index: 5;
  font-family: "Montserrat", sans-serif;
}
@media all and (max-width: 640px) {
  .sustainable_2025-rankSection__header__finalHeading .finalHeading .date {
    font-size: 2.336vw;
  }
}

.sustainable_2025_rankingPeriods {
  padding: 0 30px;
  margin-bottom: 30px;
  position: relative;
  z-index: 15;
  display: block;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingPeriods {
    padding: 0 4.672vw;
    gap: 0;
  }
  .sustainable_2025_rankingPeriods:before {
    content: "";
    pointer-events: none;
    z-index: 10;
    width: 4.672vw;
    aspect-ratio: 1/1;
    border: 1px solid #fff;
    border-radius: 50%;
    position: absolute;
    right: 9.344vw;
    top: 50%;
    translate: 0 -50%;
    background-image: url(../images/ic_arrow2.svg);
    background-position: center top 55%;
    background-size: 40%;
    background-repeat: no-repeat;
  }
  .sustainable_2025_rankingPeriods:not(.active):after {
    content: "";
    width: 2.5696vw;
    height: 2.5696vw;
    position: absolute;
    bottom: 0;
    left: 50%;
    translate: -50% 50%;
    rotate: 45deg;
    background-color: #40B620;
    border-radius: 0.4672vw;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingPeriods.active .sustainable_2025_rankingPeriods__inner {
    overflow: visible;
  }
  .sustainable_2025_rankingPeriods.active .sustainable_2025_rankingPeriods__inner .current {
    border-radius: 7.592vw 7.592vw 0 0;
  }
}
.sustainable_2025_rankingPeriods__inner {
  position: relative;
  display: flex;
  justify-content: center;
  gap: 12px;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingPeriods__inner {
    flex-direction: column;
    justify-content: normal;
    border-radius: 7.592vw;
    gap: 0;
    height: 15.184vw;
    overflow: hidden;
    box-sizing: border-box;
  }
}
.sustainable_2025_rankingPeriods .tab {
  width: 168px;
  display: flex;
  align-items: center;
  flex-direction: column;
  text-align: center;
  justify-content: center;
  border: 1px solid #40B620;
  border-radius: 5em;
  background-color: #fff;
  font-size: 12px;
  line-height: 1.4;
  font-weight: bold;
  padding: 0.8em;
  position: relative;
  margin: 0;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingPeriods .tab {
    width: 100%;
    height: 15.184vw;
    border-radius: 0;
    font-size: 3.2704vw;
    border-top: 0;
    box-sizing: border-box;
    padding: 0;
    flex-shrink: 0;
  }
}
.sustainable_2025_rankingPeriods .tab.current {
  background-color: #40B620;
  color: #fff;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingPeriods .tab.current {
    order: -1;
  }
}
.sustainable_2025_rankingPeriods .tab.current:after {
  content: "";
  width: 11px;
  height: 11px;
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% 50%;
  rotate: 45deg;
  background-color: #40B620;
  border-radius: 2px;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingPeriods .tab.current:after {
    display: none;
  }
}
.sustainable_2025_rankingPeriods .tab .date {
  font-size: 10px;
  position: relative;
  z-index: 5;
  font-family: "Montserrat", sans-serif;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingPeriods .tab .date {
    font-size: 2.8032vw;
  }
}

.sustainable_2025_rankingTabs {
  padding: 0 30px;
  display: flex;
  justify-content: center;
  gap: 10px;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingTabs {
    padding: 0 4.672vw;
    gap: 1.4016vw;
  }
}
.sustainable_2025_rankingTabs .group_tab {
  flex: 1;
  background-color: #f5f5f5;
  max-width: 282px;
  line-height: 1.4;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: 25px 25px 0 0;
  font-weight: bold;
  font-size: 14px;
  padding: 1em;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingTabs .group_tab {
    font-size: 2.336vw;
    border-radius: 2.336vw 2.336vw 0 0;
  }
}
.sustainable_2025_rankingTabs .group_tab.current {
  background-color: #40B620;
  color: #fff;
}

.sustainable_2025_rankingWrap .content {
  display: none;
  position: relative;
}
.sustainable_2025_rankingWrap .content.current {
  display: block;
  animation: fadeIn 0.5s ease 0s 1 alternate forwards;
}
.sustainable_2025_rankingWrap .comingsoon {
  font-family: "Montserrat", sans-serif;
  text-align: center;
  font-size: 1.25em;
  font-weight: bold;
  padding: 4em 0;
  color: #999;
}
.sustainable_2025_rankingWrap .table {
  overflow: hidden;
  border-radius: 0.5125rem 0.5125rem 0 0;
  width: 100%;
}
.sustainable_2025_rankingWrap .table .rank {
  width: 76px;
  flex-shrink: 0;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .rank {
    width: 10.512vw;
  }
}
.sustainable_2025_rankingWrap .table .club {
  flex: 1;
}
.sustainable_2025_rankingWrap .table .participants {
  width: 34%;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .participants {
    width: 100%;
  }
}
.sustainable_2025_rankingWrap .table .act {
  width: 33%;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .act {
    width: 100%;
  }
}
.sustainable_2025_rankingWrap .table .point {
  width: 33%;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .point {
    width: 100%;
    border-left: 0 !important;
  }
}
.sustainable_2025_rankingWrap .table .left {
  width: 40%;
  display: flex;
}
@media all and (max-width: 1024px) {
  .sustainable_2025_rankingWrap .table .left {
    width: 60%;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .left {
    width: 70%;
  }
}
.sustainable_2025_rankingWrap .table .right {
  width: 60%;
  display: flex;
  border-left: 1px solid #fff;
}
@media all and (max-width: 1024px) {
  .sustainable_2025_rankingWrap .table .right {
    width: 40%;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .right {
    width: 30%;
    flex-direction: column;
    border-left: 1px solid #fff;
  }
  .sustainable_2025_rankingWrap .table .right .item {
    flex: 1;
  }
}
.sustainable_2025_rankingWrap .table .head {
  display: flex;
  background-color: #40B620;
  color: #fff;
  font-size: 12px;
  line-height: 1.2;
}
.sustainable_2025_rankingWrap .table .head .item {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-left: 1px solid #fff;
  padding: 0.7em;
}
.sustainable_2025_rankingWrap .table .head .item:first-child {
  border-left: 0;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .head .item {
    font-size: 2.8032vw;
    padding: 0.75em 0.4em;
    font-feature-settings: "palt";
    border-left: 0;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .head .right {
    padding: 0.2em 0;
  }
  .sustainable_2025_rankingWrap .table .head .right .item {
    padding: 0.4em 0.4em;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .head .club {
    border-left: 1px solid #fff;
  }
}
.sustainable_2025_rankingWrap .table .body {
  background-color: #fff;
  font-size: 16px;
  line-height: 1.2;
  overflow: hidden;
  max-height: 564px;
}
.sustainable_2025_rankingWrap .table .body.active {
  max-height: 2335.7664vw;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body {
    max-height: 154.176vw;
    color: #40B620;
    border: 1px solid #40B620;
    border-top: 0;
  }
}
.sustainable_2025_rankingWrap .table .body .row {
  display: flex;
}
@media all and (min-width: 641px) {
  .sustainable_2025_rankingWrap .table .body .row:nth-child(2n) {
    background-color: #f5f5f5;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .row {
    border-top: 1px solid #F2F2F2;
  }
  .sustainable_2025_rankingWrap .table .body .row:first-child {
    border-top: 0;
  }
}
.sustainable_2025_rankingWrap .table .body .right {
  border-left: 1px solid #EBEBEB;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .right {
    border-left-color: #40B620;
  }
}
.sustainable_2025_rankingWrap .table .body .right .item {
  position: relative;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .right .item {
    border-left: 0;
  }
  .sustainable_2025_rankingWrap .table .body .right .item:before {
    content: "";
    width: 90%;
    background-color: #f2f2f2;
    height: 1px;
    position: absolute;
    top: 0;
    left: 5%;
  }
  .sustainable_2025_rankingWrap .table .body .right .item:first-child:before {
    display: none;
  }
}
.sustainable_2025_rankingWrap .table .body .item {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-left: 1px solid #EBEBEB;
}
.sustainable_2025_rankingWrap .table .body .item:first-child {
  border-left: 0;
}
.sustainable_2025_rankingWrap .table .body .rank {
  padding: 0.4em 0.4rem;
  font-family: "Montserrat", sans-serif;
  font-size: 12px;
  font-weight: 500;
  text-align: center;
}
.sustainable_2025_rankingWrap .table .body .rank span {
  border: 1px solid #242424;
  width: 1.75em;
  height: 1.75em;
  border-radius: 50%;
  line-height: 1.75em;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .rank span {
    border: 0;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .rank {
    font-size: 4.2048vw;
    color: #40B620;
  }
}
.sustainable_2025_rankingWrap .table .body .rank.rank1 {
  font-size: 18px;
  color: #fff;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .rank.rank1 {
    font-size: 3.9712vw;
  }
}
.sustainable_2025_rankingWrap .table .body .rank.rank1 span {
  background-color: #D9BA72;
  width: 1.75em;
  height: 1.75em;
  border-radius: 50%;
  line-height: 1.75em;
  border: 0;
}
.sustainable_2025_rankingWrap .table .body .rank.rank2 {
  font-size: 18px;
  color: #fff;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .rank.rank2 {
    font-size: 3.9712vw;
  }
}
.sustainable_2025_rankingWrap .table .body .rank.rank2 span {
  background-color: #C1C1C1;
  width: 1.75em;
  height: 1.75em;
  border-radius: 50%;
  line-height: 1.75em;
  border: 0;
}
.sustainable_2025_rankingWrap .table .body .rank.rank3 {
  font-size: 18px;
  color: #fff;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .rank.rank3 {
    font-size: 3.9712vw;
  }
}
.sustainable_2025_rankingWrap .table .body .rank.rank3 span {
  background-color: #886829;
  width: 1.75em;
  height: 1.75em;
  border-radius: 50%;
  line-height: 1.75em;
  border: 0;
}
.sustainable_2025_rankingWrap .table .body .club {
  justify-content: flex-start;
  padding: 0.5rem 0.75rem;
  font-size: 16px;
  text-align: left;
  font-weight: 500;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .club {
    padding: 0.4rem 1rem;
    font-size: 3.2704vw;
    border-left-color: #40B620;
  }
}
.sustainable_2025_rankingWrap .table .body .club__icon {
  width: 28px;
  aspect-ratio: 1/1;
  flex-shrink: 0;
  margin-right: 1.5rem;
}
.sustainable_2025_rankingWrap .table .body .club__icon img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .club__icon {
    width: 6.5408vw;
    margin-right: 0.75rem;
  }
}
.sustainable_2025_rankingWrap .table .body .participants {
  font-family: "Montserrat", sans-serif;
  font-size: 20px;
  padding: 0.3rem;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .participants {
    font-size: 3.2704vw;
  }
}
.sustainable_2025_rankingWrap .table .body .act {
  font-family: "Montserrat", sans-serif;
  font-size: 20px;
  padding: 0.3rem;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .act {
    font-size: 3.2704vw;
  }
}
.sustainable_2025_rankingWrap .table .body .point {
  font-family: "Montserrat", sans-serif;
  font-size: 20px;
  padding: 0.3rem;
}
@media all and (max-width: 640px) {
  .sustainable_2025_rankingWrap .table .body .point {
    font-size: 3.2704vw;
  }
}
.sustainable_2025_rankingWrap .table .body .row.rank-higher .club {
  font-weight: bold;
}
.sustainable_2025_rankingWrap .table .body .row.rank-higher .participants,
.sustainable_2025_rankingWrap .table .body .row.rank-higher .act,
.sustainable_2025_rankingWrap .table .body .row.rank-higher .point {
  font-weight: bold;
}
.sustainable_2025_rankingWrap .moreWrap {
  position: absolute;
  z-index: 30;
  width: 110%;
  bottom: -0.2rem;
  left: -5%;
  display: flex;
  justify-content: center;
  align-items: center;
  background: linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.83) 50%, #fff 100%);
  padding-top: 5rem;
  padding-bottom: 1rem;
}
.sustainable_2025_rankingWrap .moreWrap__bt {
  display: flex;
  text-align: center;
  color: #fff;
  transition: all 0.3s ease 0s;
  font-weight: 700;
  background-color: #40B620;
  padding: 0.3em 1em;
  border-radius: 4em;
  font-size: 16px;
  cursor: pointer;
}
.sustainable_2025_rankingWrap .moreWrap__bt:hover {
  text-decoration: none;
}

.sustainable_2025-section {
  padding: 100px 0 50px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-section {
    padding: 23.36vw 0 7.008vw;
  }
}

.sustainable_2025-about {
  font-weight: bold;
}
.sustainable_2025-about__box {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 45px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-about__box {
    grid-template-columns: 1fr;
    gap: 7.008vw;
  }
}
.sustainable_2025-about__table {
  border-radius: 20px;
  line-height: 1.6;
  overflow: hidden;
  width: 100%;
}
.sustainable_2025-about__table th {
  text-align: left;
  color: #fff;
  background-color: #40B620;
  padding: 1em;
  border-bottom: 1px solid #fff;
}
.sustainable_2025-about__table td {
  background-color: #fff;
  border-bottom: 1px solid #40B620;
  padding: 1em;
  color: #40B620;
}
.sustainable_2025-about__table tr:last-child th,
.sustainable_2025-about__table tr:last-child td {
  border-bottom: 0;
}

.sustainable_2025-join {
  padding-top: 60px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-join {
    padding-top: 14.016vw;
  }
}
.sustainable_2025-join__box {
  position: relative;
  padding: 40px;
  border-radius: 50px;
  background-color: #fff;
  border: 1px solid #40B620;
}
@media all and (max-width: 640px) {
  .sustainable_2025-join__box {
    padding: 9.344vw 4.2048vw 14.016vw;
    border-radius: 11.68vw;
  }
}
.sustainable_2025-join__box .arrow {
  display: block;
  translate: -50% -50%;
  position: absolute;
  width: 24px;
  height: 24px;
  top: 0;
  left: 50%;
  scale: 0.5 1;
}
@media all and (max-width: 640px) {
  .sustainable_2025-join__box .arrow {
    width: 5.6064vw;
    height: 5.6064vw;
  }
}
.sustainable_2025-join__box .arrow:before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #40B620;
  position: absolute;
  top: 0;
  left: 50%;
  rotate: 45deg;
  translate: -50% 0;
  z-index: 2;
  border-radius: 3px;
}
.sustainable_2025-join__box .arrow:after {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: absolute;
  top: 2px;
  left: 50%;
  rotate: 45deg;
  translate: -50% 0;
  z-index: 2;
  border-radius: 3px;
}
.sustainable_2025-join__heading {
  font-weight: bold;
  text-align: center;
  font-size: 28px;
  margin-bottom: 1em;
}
@media all and (max-width: 640px) {
  .sustainable_2025-join__heading {
    font-size: 6.5408vw;
  }
}
.sustainable_2025-join__main {
  max-width: 868px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  gap: 20px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-join__main {
    flex-direction: column;
    gap: 4.672vw;
  }
}
.sustainable_2025-join__main__item {
  flex: 1;
  max-width: 380px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-join__main__item {
    max-width: 100%;
  }
}
.sustainable_2025-join__main__arrowWrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-shrink: 0;
}
.sustainable_2025-join__main__arrowWrap span {
  width: 16px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-join__main__arrowWrap span {
    width: 3.7376vw;
    rotate: 90deg;
  }
}
.sustainable_2025-join__main__arrowWrap svg {
  display: block;
  width: 100%;
}
.sustainable_2025-join__main__heading {
  text-align: center;
  padding: 0.55em 0.3em;
  border: 1px solid #40B620;
  font-weight: bold;
  color: #40B620;
  border-radius: 4em;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 18px;
  margin-bottom: 25px;
  width: 100%;
  line-height: 1.4;
}
@media (max-width: 800px) {
  .sustainable_2025-join__main__heading {
    font-size: 16px;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-join__main__heading {
    font-size: 4.2048vw;
    padding: 0.3em;
  }
}
.sustainable_2025-join__main__images {
  display: flex;
  justify-content: center;
  gap: 28px;
  align-items: center;
  margin-bottom: 25px;
}
.sustainable_2025-join__main__images .img1 {
  width: 134px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-join__main__images .img1 {
    width: 31.3024vw;
  }
}
.sustainable_2025-join__main__images .img2 {
  width: 80px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-join__main__images .img2 {
    width: 18.688vw;
  }
}
.sustainable_2025-join__main__app {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  max-width: 342px;
  margin: 0 auto;
}
.sustainable_2025-join__main__app a {
  transition: opacity 0.3s ease 0s;
}
@media (hover: hover) {
  .sustainable_2025-join__main__app a:hover {
    opacity: 0.8;
    text-decoration: none;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-join__main .videoWrap {
    max-width: 67.2768vw;
    margin: 0 auto;
  }
}

.sustainable_2025-archive__main__heading {
  color: #fff;
  font-weight: bold;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1em;
  line-height: 1.4;
  background-color: #40B620;
  border-radius: 1.25em;
  transition: all 0.3s ease 0s;
  font-size: 20px;
  padding: 1.5em 1.75em;
  cursor: pointer;
}
.sustainable_2025-archive__main__heading:hover {
  text-decoration: none;
}
.sustainable_2025-archive__main__heading.active {
  border-radius: 1.25em 1.25em 0 0;
}
.sustainable_2025-archive__main__heading.active .icon:after {
  rotate: 0deg;
}
@media all and (max-width: 640px) {
  .sustainable_2025-archive__main__heading {
    font-size: 4.2048vw;
    padding: 0.75em 4.672vw;
    border-radius: 5.84vw 5.84vw 0 0;
  }
}
.sustainable_2025-archive__main__heading .icon {
  flex-shrink: 0;
  width: 1.15em;
  height: 1.15em;
  border: 2px solid #fff;
  position: relative;
  border-radius: 50%;
}
.sustainable_2025-archive__main__heading .icon:before, .sustainable_2025-archive__main__heading .icon:after {
  content: "";
  transition: all 0.3s ease 0s;
  width: 50%;
  height: 2px;
  background-color: #fff;
  border-radius: 1em;
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}
.sustainable_2025-archive__main__heading .icon:before:hover, .sustainable_2025-archive__main__heading .icon:after:hover {
  text-decoration: none;
}
.sustainable_2025-archive__main__heading .icon:after {
  rotate: 90deg;
}
.sustainable_2025-archive__main__content {
  padding: 40px 50px 50px;
  border-radius: 0 0 25px 25px;
  border: 1px solid #40B620;
  border-top: 0;
  overflow: hidden;
  background-color: #fff;
  font-weight: bold;
}
@media all and (max-width: 640px) {
  .sustainable_2025-archive__main__content {
    padding: 9.344vw 4.672vw 7.008vw;
    border-radius: 0 0 5.84vw 5.84vw;
  }
}
.sustainable_2025-archive__main__upper {
  margin-bottom: 70px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-archive__main__upper {
    margin-bottom: 14.016vw;
  }
}
.sustainable_2025-archive__main__upper__heading {
  font-size: 21px;
  margin-bottom: 30px;
  line-height: 1.4;
  font-weight: bold;
  color: #40B620;
}
@media all and (max-width: 640px) {
  .sustainable_2025-archive__main__upper__heading {
    font-size: 4.2048vw;
    margin-bottom: 7.008vw;
  }
}
.sustainable_2025-archive__main__upper__main {
  display: flex;
  gap: 35px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-archive__main__upper__main {
    flex-direction: column-reverse;
    gap: 9.344vw;
  }
}
.sustainable_2025-archive__main__upper__text {
  line-height: 2;
}
.sustainable_2025-archive__main__upper__imgWrap {
  width: 41%;
}
@media all and (max-width: 640px) {
  .sustainable_2025-archive__main__upper__imgWrap {
    width: 100%;
  }
}
.sustainable_2025-archive__main__upper__imgWrap .caption {
  line-height: 1.6;
  font-size: 12px;
  margin-top: -1.5em;
}
@media all and (max-width: 640px) {
  .sustainable_2025-archive__main__upper__imgWrap .caption {
    font-size: 2.8032vw;
  }
}
.sustainable_2025-archive__main__upper__slider .swiper-slide {
  overflow: hidden;
  border-radius: 10px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-archive__main__upper__slider .swiper-slide {
    border-radius: 2.336vw;
  }
}
.sustainable_2025-archive__main__upper__slider__pagination {
  margin-top: 20px;
  display: flex;
  justify-content: flex-end;
  gap: 15px;
  position: relative;
  z-index: 3;
}
.sustainable_2025-archive__main__upper__slider__pagination .swiper-pagination-bullet {
  width: 10px;
  height: auto;
  aspect-ratio: 1/1;
  margin: 0 !important;
  border: 1px solid #40B620;
  background-color: transparent !important;
  opacity: 1;
}
.sustainable_2025-archive__main__upper__slider__pagination .swiper-pagination-bullet-active {
  background-color: #40B620 !important;
}
.sustainable_2025-archive__main__lower__slider {
  overflow: visible !important;
}
.sustainable_2025-archive__main__lower__slider .swiper-wrapper {
  overflow: visible;
}
.sustainable_2025-archive__main__lower__slider .swiper-slide {
  font-size: 12px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-archive__main__lower__slider .swiper-slide {
    font-size: 2.8032vw;
  }
}
.sustainable_2025-archive__main__lower__slider .swiper-slide .img-box {
  margin-bottom: 20px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-archive__main__lower__slider .swiper-slide .img-box {
    margin-bottom: 4.672vw;
  }
}
.sustainable_2025-archive__main__lower__slider__prev {
  width: 26px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #40B620;
  position: absolute;
  z-index: 5;
  left: 0;
  top: 40%;
  translate: -120% -50%;
  background-image: url(../images/ic_arrow.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 50%;
  scale: -100% 1;
}
@media all and (max-width: 640px) {
  .sustainable_2025-archive__main__lower__slider__prev {
    width: 6.0736vw;
    translate: -40% -50%;
  }
}
.sustainable_2025-archive__main__lower__slider__next {
  width: 26px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #40B620;
  position: absolute;
  z-index: 5;
  right: 0;
  top: 40%;
  translate: 120% -50%;
  background-image: url(../images/ic_arrow.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 50%;
}
@media all and (max-width: 640px) {
  .sustainable_2025-archive__main__lower__slider__next {
    width: 6.0736vw;
    translate: 40% -50%;
  }
}

.sustainable_2025-partner__lead {
  text-align: center;
  font-weight: bold;
}
.sustainable_2025-partner__list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px 25px;
}
@media (max-width: 800px) {
  .sustainable_2025-partner__list {
    grid-template-columns: 1fr;
    max-width: 480px;
    margin: 0 auto;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-partner__list {
    gap: 2.336vw;
    max-width: 100%;
  }
}
.sustainable_2025-partner__list__item {
  border-radius: 20px;
  border: 1px solid #40B620;
  background-color: #fff;
  padding: 30px 20px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-partner__list__item {
    border-radius: 2.336vw;
    padding: 7.008vw 4.672vw;
  }
}
.sustainable_2025-partner__list .logo {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #40B620;
}
@media all and (max-width: 640px) {
  .sustainable_2025-partner__list .logo {
    padding-bottom: 4.672vw;
    margin-bottom: 4.672vw;
  }
}
.sustainable_2025-partner__list .logo span {
  height: 40px;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media all and (max-width: 640px) {
  .sustainable_2025-partner__list .logo span {
    height: 9.344vw;
  }
}
.sustainable_2025-partner__list .logo span img {
  height: 100%;
  width: auto;
}
.sustainable_2025-partner__list .info {
  display: flex;
  flex-direction: column;
  letter-spacing: 0;
  align-items: flex-start;
}
.sustainable_2025-partner__list .info__dt {
  background-color: #40B620;
  color: #fff;
  font-weight: bold;
  padding: 0.1em 0.75em;
  border-radius: 3em;
  line-height: 1.4;
  margin-bottom: 0.4em;
  min-width: 6em;
  text-align: center;
}
.sustainable_2025-partner__list .info__dd {
  margin-bottom: 20px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-partner__list .info__dd {
    margin-bottom: 4.672vw;
  }
}
.sustainable_2025-partner__list .info__dd:last-child {
  margin-bottom: 0;
}
.sustainable_2025-partner__list .child .row {
  display: flex;
}
.sustainable_2025-partner__list .child .row dt {
  flex-shrink: 0;
}

.sustainable_2025-contact {
  overflow: hidden;
  padding-top: 100px;
  max-width: calc(100% - 20px);
  margin-left: auto;
  margin-right: auto;
}
@media all and (max-width: 640px) {
  .sustainable_2025-contact {
    padding-top: 23.36vw;
    max-width: calc(100% - 4.672vw);
  }
}
.sustainable_2025-contact__header {
  border-radius: 100px 100px 0 0;
  background-color: #40B620;
  color: #fff;
  display: flex;
  justify-content: center;
  font-weight: bold;
  position: relative;
  z-index: 4;
}
@media all and (max-width: 640px) {
  .sustainable_2025-contact__header {
    border-radius: 5.84vw 5.84vw 0 0;
  }
}
.sustainable_2025-contact__header .heading {
  display: flex;
  flex-direction: column;
  align-items: center;
  font-size: 35px;
  line-height: 1.25;
  gap: 0.3em;
  margin-bottom: 1.25em;
}
@media all and (max-width: 640px) {
  .sustainable_2025-contact__header .heading {
    font-size: 4.9056vw;
    margin-bottom: 1.5em;
  }
}
.sustainable_2025-contact__header .heading span {
  background: linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 75%, #83E863 75.0001%, #83E863 100%);
}
.sustainable_2025-contact__header__content {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 70px 0;
  position: relative;
}
@media all and (max-width: 640px) {
  .sustainable_2025-contact__header__content {
    padding: 16.352vw 0;
  }
}
.sustainable_2025-contact__header__content .img1 {
  position: absolute;
  width: 306px;
  top: 50%;
  left: 0;
  translate: -120% -50%;
}
@media all and (max-width: 1024px) {
  .sustainable_2025-contact__header__content .img1 {
    width: 24vw;
    translate: -110% -50%;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-contact__header__content .img1 {
    top: 0;
    width: 28vw;
    translate: -90% 5%;
  }
}
.sustainable_2025-contact__header__content .img2 {
  position: absolute;
  width: 275px;
  top: 50%;
  right: 0;
  translate: 120% -50%;
}
@media all and (max-width: 1024px) {
  .sustainable_2025-contact__header__content .img2 {
    width: 24vw;
    translate: 90% -50%;
  }
}
@media all and (max-width: 640px) {
  .sustainable_2025-contact__header__content .img2 {
    top: 0;
    width: 35vw;
    translate: 70% -24%;
  }
}
.sustainable_2025-contact__main {
  background-color: #40B620;
  position: relative;
}
.sustainable_2025-contact__main:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% + 1rem);
  background-color: #40B620;
}
.sustainable_2025-contact__main__box {
  padding: 130px 0 160px;
  background-color: #fff;
  border-radius: 100px 100px 0 0;
  position: relative;
}
@media all and (max-width: 640px) {
  .sustainable_2025-contact__main__box {
    border-radius: 5.84vw 5.84vw 0 0;
    padding: 16.352vw 0 30.368vw;
  }
}
.sustainable_2025-contact__main__lead {
  text-align: center;
  font-weight: bold;
  margin-bottom: 80px;
}
@media all and (max-width: 640px) {
  .sustainable_2025-contact__main__lead {
    margin-bottom: 16.352vw;
  }
}

.sub-heading {
  color: #40B620;
  display: flex;
  align-items: center;
  line-height: 1.4;
  font-size: 18px;
  font-weight: bold;
  padding: 0.5em 0.8em;
  gap: 0.85em;
  border-radius: 4em;
  background-color: rgba(65, 182, 32, 0.1);
}
@media all and (max-width: 640px) {
  .sub-heading {
    font-size: 4.2048vw;
  }
}
.sub-heading:before {
  content: "";
  background-color: currentColor;
  width: 0.666em;
  aspect-ratio: 1/1;
  border-radius: 50%;
}

.videoWrap {
  border-radius: 10px;
  overflow: hidden;
  position: relative;
  aspect-ratio: 16/9;
  width: 100%;
}
.videoWrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media all and (max-width: 640px) {
  .videoWrap {
    border-radius: 2.336vw;
  }
}

.img-box {
  border-radius: 10px;
  overflow: hidden;
}
@media all and (max-width: 640px) {
  .img-box {
    border-radius: 2.336vw;
  }
}

.mb-md {
  margin-bottom: 50px;
}
@media all and (max-width: 640px) {
  .mb-md {
    margin-bottom: 8.176vw;
  }
}

.mb-sml {
  margin-bottom: 30px;
}
@media all and (max-width: 640px) {
  .mb-sml {
    margin-bottom: 4.672vw;
  }
}

.mb-sml2 {
  margin-bottom: 30px;
}
@media all and (max-width: 640px) {
  .mb-sml2 {
    margin-bottom: 7.008vw;
  }
}

.mb-min {
  margin-bottom: 20px;
}
@media all and (max-width: 640px) {
  .mb-min {
    margin-bottom: 4.672vw;
  }
}

@media all and (max-width: 640px) {
  .mb40spvw {
    margin-bottom: 9.344vw;
  }
}


.sustainable_2025-rankSection__main .loader {
  width: 50px;
  padding: 8px;
  aspect-ratio: 1;
  border-radius: 50%;
  margin: 0 auto;
  background: #40B620;
  --_m: 
    conic-gradient(#0000 10%,#000),
    linear-gradient(#000 0 0) content-box;
  -webkit-mask: var(--_m);
          mask: var(--_m);
  -webkit-mask-composite: source-out;
          mask-composite: subtract;
  animation: l3 1s infinite linear;
}
@keyframes l3 {to{transform: rotate(1turn)}}