/* expo2025-Footer
-------------------------------------------------- */
.expo2025-Footer {
  background-color: #fff;
  position: relative;
  z-index: 100;
}

.expo2025-Footer__inner {
  display: flex;
  align-items: center;
  flex-direction: column;
  padding: 10.66667vw 4vw;
}
@media screen and (min-width: 769px) {
  .expo2025-Footer__inner {
    padding: 2.08334vw 1.5625vw 2.34375vw;
  }
}

.expo2025-Footer__logo {
  margin: 0 auto;
  height: auto;
  width: 58.66667vw;
}
@media screen and (min-width: 769px) {
  .expo2025-Footer__logo {
    height: 4.6875vw;
    width: 12.39584vw;
  }
}

.expo2025-Footer__txt {
  font-size: 3.73334vw;
  line-height: 1.71429;
  text-align: center;
  margin-top: 2.66667vw;
}
@media screen and (min-width: 769px) {
  .expo2025-Footer__txt {
    font-size: 0.72917vw;
    line-height: 1.7143;
    margin-top: 0.52084vw;
  }
}

.expo2025-Footer__copyright {
  font-size: 3.2vw;
  line-height: 1.66667;
  text-align: center;
  margin-top: initial;
}
@media screen and (min-width: 769px) {
  .expo2025-Footer__copyright {
    font-size: 0.72917vw;
    margin-top: 0.15625vw;
  }
}

/* footer
-------------------------------------------------- */
.footer {
  background-color: #fff;
  border-top: 0.05209vw solid #999;
  position: relative;
  z-index: 100;
}

@media screen and (max-width: 768px) {
  .footer {
    border-top: 0.26667vw solid #999;
  }
}
.footer__inner {
  padding: 1.61459vw 3.85417vw 1.66667vw;
  position: relative;
}

@media screen and (max-width: 768px) {
  .footer__inner {
    margin: 0 auto;
    padding: 8vw 0 14.4vw;
    width: 92vw;
  }
}
.footer__top {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
}

@media screen and (max-width: 768px) {
  .footer__top {
    position: relative;
    transform: initial;
    top: initial;
    left: initial;
  }
}
.footer__langList {
  display: none;
}

@media screen and (max-width: 768px) {
  .footer__langList {
    display: block;
  }
}
.footer__langList ul {
  display: flex;
  align-items: baseline;
  justify-content: center;
}

.footer__langList ul::before {
  content: "/";
  order: 2;
  font-size: 0.78125vw;
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0.36459vw;
}

@media screen and (max-width: 768px) {
  .footer__langList ul::before {
    font-size: 4vw;
    margin: 0 1.86667vw;
  }
}
.footer__langList a {
  color: #000;
  font-size: 0.78125vw;
  font-weight: 700;
  line-height: 1.4;
}

@media screen and (max-width: 768px) {
  .footer__langList a {
    font-size: 4vw;
  }
}
.footer__langList .en {
  order: 3;
}

.footer__langList .en a {
  color: #BEBEBE;
}

.footer__langList .jp {
  order: 1;
}

@media screen and (max-width: 768px) {
  .footer__nav {
    margin-top: 4.8vw;
  }
}
.footer__nav a {
  color: #00A8A9;
  font-size: 0.72917vw;
  font-weight: 500;
  line-height: 1.4286;
}

@media screen and (max-width: 768px) {
  .footer__nav a {
    font-size: 3.73334vw;
    line-height: 1.4286;
  }
}
.footer__nav ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 1.5625vw;
}

@media screen and (max-width: 768px) {
  .footer__nav ul {
    flex-direction: column;
    gap: 2.13334vw 0;
  }
}
.footer__bottom {
  width: fit-content;
  margin-left: auto;
}

@media screen and (max-width: 768px) {
  .footer__bottom {
    margin: 6.66667vw auto 0;
  }
}
.footer__logo {
  margin-left: auto;
  width: 7.96875vw;
}

@media screen and (max-width: 768px) {
  .footer__logo {
    margin: 0 auto 0;
    width: 37.86667vw;
  }
}
.footer__copyright {
  color: #999999;
  font-size: 0.72917vw;
  font-weight: 500;
  line-height: 1.75;
  text-align: right;
  margin-top: 0.52084vw;
}

@media screen and (max-width: 768px) {
  .footer__copyright {
    font-size: 2.66667vw;
    line-height: 1.5;
    margin-top: 4.26667vw;
  }
}

