img {
  height: auto;
  display: block;
}

.lg-sec {
  padding: 7rem 0;
}
.lg-sec-hero {
  padding: 0 0 7rem;
}

.lb-cnt {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}

.col-cnt > * + * {
  margin-top: 2.4rem;
}

.elm-cnt > * + * {
  margin-top: 1.6rem;
}

.al__hero-img img {
  max-width: 540px;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.al__hero-ttl {
  font-size: clamp(21px, 13.889px + 2.222vw, 25px);
  text-align: center;
  margin: 0.8rem 0 3.5rem;
}
.al__hero-cnt {
  position: relative;
}
.al__txt :where(h2,h3,h4,p) {
  text-align: center;
}
.al__txt:not(:nth-of-type(1)) {
  margin-top: 7rem;
}
.al__txt > * + * {
  margin-top: 2.4rem;
}

.col-footer-1col.__btn-1 {
  margin-top: 0;
}

@media screen and (min-width: 769px) {
  .lg-sec {
    padding: 10rem 0;
  }
  .lg-sec-hero {
    padding: 0 0 10rem;
  }
  .col-cnt > * + * {
    margin-top: 3.5rem;
  }
  .al__hero-ttl {
    margin: 0 0 1.6rem;
  }
  .al__txt:not(:nth-of-type(1)) {
    margin-top: 10rem;
  }
  .al__txt > * + * {
    margin-top: 3.5rem;
  }
}

@media screen and (min-width: 640px) {
  .elm-cnt > * + * {
    margin-top: 2.4rem;
  }
}

@media screen and (max-width: 540px) {
  .lg-sec-hero {
    padding-top: 0;
  }
  .lg-sec-hero .sec-cnt {
    padding: 0 4vw;
  }
}
