.footer {
  margin-top: 30px;
  background-image: url(/assets/img/lp/common/SP-bg-footer.png);
  background-repeat: no-repeat;
  background-size: cover;
}
.footer .sp-decor {
  display: block;
  position: relative;
  top: -28px;
  left: 7px;
  width: 97%;
}
.footer .pc-decor {
  display: none;
}
@media (min-width: 992px) {
  .footer {
    margin-top: 175px;
  }
  .footer .sp-decor {
    display: none;
  }
  .footer .pc-decor {
    display: block;
  }
  .footer .decor-image {
    position: relative;
    top: -23px;
  }
}
.footer .logo-link img {
  width: 230px;
  margin: -19px auto 0;
}
@media (min-width: 992px) {
  .footer .logo-link {
    margin: 0 auto 42px;
  }
  .footer .logo-link img {
    width: auto;
  }
}
.footer ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin: 0 30px;
}
.footer .nav-item {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 12px 20px;
}
@media (min-width: 992px) {
  .footer .nav-item {
    margin: 0;
  }
}
@media (min-width: 992px) {
  .footer .nav-item:not(:first-child) {
    margin-top: 0;
    margin-left: 32px;
  }
}
@media (min-width: 992px) {
  .footer ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.footer .line {
  margin: 0 auto 10px;
  width: 92%;
}
@media (min-width: 992px) {
  .footer .line {
    margin: 30px auto;
    width: auto;
  }
}

.footer-nav-above li {
  font-weight: 700;
}
@media (min-width: 992px) {
  .footer-nav-above li {
    font-size: 20px;
    line-height: 23px;
    letter-spacing: -0.02em;
  }
}

.footer-nav-below .nav-item {
  font-size: 14px;
  line-height: 17px;
  color: #3d3c3c;
  margin: 12px;
}
@media (min-width: 992px) {
  .footer-nav-below .nav-item {
    font-size: 16px;
    line-height: 22px;
    margin-top: 0;
  }
}
