:root {
  --vw: 1vw;
}

#advancement .bg--01 {
  margin-top: 5rem;
  background: rgba(104, 201, 255, 0.1) url(../img/bg_01.webp) top 9rem center/140.5rem auto no-repeat;
}
@media only screen and (max-width: 767px) {
  #advancement .bg--01 {
    margin-top: 3rem;
    background: rgba(104, 201, 255, 0.1) url(../img/bg_01_sp.webp) top 14dvw center/90.7% auto no-repeat;
  }
}
#advancement .sec-ttl {
  margin-bottom: 5rem;
}
@media only screen and (max-width: 767px) {
  #advancement .sec-ttl {
    width: 100dvw;
    margin: 0 0 3rem -4rem;
  }
}
#advancement .sec-ttl small {
  font-size: 4.2rem;
}
@media only screen and (max-width: 767px) {
  #advancement .sec-ttl small {
    font-size: 2.6rem;
  }
}
#advancement .txt {
  margin: 1.5rem 0 0;
  line-height: 2;
  letter-spacing: 0.1em;
  text-align: center;
  font-size: 1.9rem;
  transform: rotate(0.03deg);
}
@media only screen and (max-width: 767px) {
  #advancement .txt {
    letter-spacing: 0;
    text-align: left;
    font-size: 1.5rem;
  }
}
#advancement .txt.txt1 {
  margin: 5rem 0;
}
@media only screen and (max-width: 767px) {
  #advancement .txt.txt1 {
    margin: 3rem 0;
  }
}
#advancement .fig1 {
  width: 76.4rem;
  margin: 0 auto;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  #advancement .fig1 {
    width: 100dvw;
    margin: 0 -4rem 8rem;
  }
}
#advancement .fig1 picture {
  display: block;
  margin-bottom: 2.5rem;
}
@media only screen and (max-width: 767px) {
  #advancement .fig1 picture {
    margin-bottom: 1rem;
  }
}
#advancement .fig1 > img {
  width: 46.4rem;
}
@media only screen and (max-width: 767px) {
  #advancement .fig1 > img {
    width: 60%;
  }
}
#advancement .fig2 {
  width: 72.4rem;
  margin: 5rem auto 10rem;
}
@media only screen and (max-width: 767px) {
  #advancement .fig2 {
    width: 100%;
    margin: 3rem 0;
  }
}
#advancement .fig3 {
  width: 48rem;
  margin: 5rem auto;
}
@media only screen and (max-width: 767px) {
  #advancement .fig3 {
    width: 100%;
    margin: 3rem 0;
  }
}
#advancement .fig4 {
  width: 53.2rem;
  margin: 5rem auto;
}
@media only screen and (max-width: 767px) {
  #advancement .fig4 {
    width: 100%;
    margin: 3rem 0;
  }
}
#advancement .fig5 {
  display: flex;
  justify-content: center;
  align-items: center;
  column-gap: 2.2rem;
  margin-top: 5rem;
}
@media only screen and (max-width: 767px) {
  #advancement .fig5 {
    flex-direction: column;
    row-gap: 2rem;
    width: 22rem;
    margin: 3rem auto;
  }
}
@media only screen and (min-width: 768px) {
  #advancement .fig5 img {
    width: 34.8rem;
  }
}
#advancement .ttl-fukidashi {
  text-align: center;
  font-weight: 600;
  color: #68c9ff;
}
@media only screen and (min-width: 768px) {
  #advancement .ttl-fukidashi {
    width: 40.7rem;
    margin: 15rem auto 5rem;
    padding: 1.8rem 1.3rem 3.5rem;
    border-image: url(../../../assets/img/bg_fukidashi.webp) 4 4 62/0.2rem 0.2rem 3.1rem repeat;
    line-height: 2.6rem;
    font-size: 2.2rem;
  }
}
@media only screen and (max-width: 767px) {
  #advancement .ttl-fukidashi {
    width: 26.6rem;
    margin: 10rem auto 2.5rem;
    padding: 1.3rem 1rem 2.2rem;
    border-image: url(../../../assets/img/bg_fukidashi_sp.webp) 4 4 24/0.2rem 0.2rem 1.2rem repeat;
    line-height: 1.3;
    letter-spacing: -0.2rem;
    font-size: 1.8rem;
  }
}
@media only screen and (max-width: 767px) {
  #advancement .ttl-fukidashi.expanded {
    width: 100%;
  }
}
#advancement .ttl-fukidashi.gray {
  width: 54.5rem;
  border-image-source: url(../img/bg_fukidashi.webp);
  color: #4c4948;
}
@media only screen and (max-width: 767px) {
  #advancement .ttl-fukidashi.gray {
    width: 26.6rem;
    margin-top: 0;
    border-image-source: url(../img/bg_fukidashi_sp.webp);
  }
}
#advancement .activity-intro {
  margin-bottom: 5rem;
}
#advancement .activity-intro h5 {
  width: 40.3rem;
  margin: 0 auto 2rem;
}
@media only screen and (max-width: 767px) {
  #advancement .activity-intro h5 {
    width: 25.2rem;
  }
}
#advancement .activity-intro figure {
  margin-bottom: 4.5rem;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  #advancement .activity-intro figure {
    margin-bottom: 3rem;
  }
}
#advancement .activity-intro figure img {
  width: 23.1rem;
}
@media only screen and (max-width: 767px) {
  #advancement .activity-intro figure img {
    width: 14.5rem;
  }
}
#advancement .activity-intro figure figcaption {
  margin-top: 1.5rem;
  line-height: 2.15;
  font-size: 1.4rem;
}
@media only screen and (max-width: 767px) {
  #advancement .activity-intro figure figcaption {
    margin-top: 1rem;
    line-height: 1.25;
    font-size: 1.2rem;
  }
}
#advancement .activity-intro .txt {
  font-size: 1.9rem;
}
@media only screen and (max-width: 767px) {
  #advancement .activity-intro .txt {
    font-size: 1.5rem;
  }
}
#advancement .activity-list {
  width: 72rem;
  margin: 0 auto;
}
@media only screen and (max-width: 767px) {
  #advancement .activity-list {
    width: 100%;
  }
}
#advancement .activity-list li {
  display: flex;
  flex-wrap: wrap;
  gap: 2rem 3rem;
  margin-bottom: 8rem;
}
@media only screen and (max-width: 767px) {
  #advancement .activity-list li {
    flex-direction: column;
    align-items: center;
    gap: 0;
    margin-bottom: 5rem;
  }
}
#advancement .activity-list li h5 {
  width: 100%;
  text-align: center;
}
#advancement .activity-list li figure {
  width: 29.7rem;
}
@media only screen and (max-width: 767px) {
  #advancement .activity-list li figure {
    width: 22rem;
    margin-bottom: 2rem;
  }
}
#advancement .activity-list li .txt {
  flex: 1;
  margin-top: 0;
  text-align: left;
  line-height: 3.1rem;
  letter-spacing: -0.05rem;
}
#advancement .activity-list li:nth-of-type(1) h5 img {
  width: 51.7rem;
}
@media only screen and (max-width: 767px) {
  #advancement .activity-list li:nth-of-type(1) h5 img {
    width: calc(100% + 3rem);
    max-width: none;
    margin: 0 -1.5rem;
  }
}
#advancement .activity-list li:nth-of-type(2) h5 img {
  width: 51.5rem;
}
@media only screen and (max-width: 767px) {
  #advancement .activity-list li:nth-of-type(2) h5 img {
    width: calc(100% + 3rem);
    max-width: none;
    margin: 0 -1.5rem;
  }
}
@media only screen and (max-width: 767px) {
  #advancement .activity-list li:nth-of-type(3) h5, #advancement .activity-list li:nth-of-type(4) h5 {
    margin-bottom: 2rem;
  }
}
#advancement .activity-list li:nth-of-type(3) h5 img, #advancement .activity-list li:nth-of-type(4) h5 img {
  width: 40.3rem;
}
@media only screen and (max-width: 767px) {
  #advancement .activity-list li:nth-of-type(3) h5 img, #advancement .activity-list li:nth-of-type(4) h5 img {
    width: 25.2rem;
  }
}
#advancement .certification-list {
  width: 72rem;
  margin: 5rem auto 8rem;
}
@media only screen and (max-width: 767px) {
  #advancement .certification-list {
    width: 100%;
    margin-bottom: 5rem;
  }
}
#advancement .certification-list li {
  display: flex;
  justify-content: center;
  column-gap: 2rem;
  margin-bottom: 5rem;
  padding-top: 5.4rem;
  background: transparent url(../img/bg_dotted.webp) center top/4rem auto repeat-x;
}
@media only screen and (max-width: 767px) {
  #advancement .certification-list li {
    flex-direction: column;
    row-gap: 2rem;
    background-size: 3rem auto;
  }
}
#advancement .certification-list li .txt {
  width: 50rem;
  margin-top: 0;
  text-align: left;
  letter-spacing: -0.05rem;
}
#advancement .certification-list li .txt .note {
  line-height: 2.3rem;
  font-size: 1.8rem;
}
@media only screen and (max-width: 767px) {
  #advancement .certification-list li .txt .note {
    line-height: 2;
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  #advancement .certification-list li:has(figure) {
    padding-right: 3rem;
  }
}
#advancement .certification-list li:has(figure) figure {
  width: 29rem;
  text-align: center;
}
#advancement .certification-list li:has(figure) .txt {
  flex: 1;
  width: auto;
}
#advancement .certification-list li:nth-of-type(2) img {
  width: 13.7rem;
}
#advancement .certification-list li:nth-of-type(3) img {
  width: 13.5rem;
}
@media only screen and (max-width: 767px) {
  #advancement .certification-list li:nth-of-type(4) img {
    width: 22.4rem;
  }
}
@media only screen and (min-width: 768px) {
  #advancement .btn-box {
    margin-bottom: 10rem;
  }
}
@media only screen and (max-width: 767px) {
  #advancement .btn-newtab {
    padding: 0.8rem 1.5rem;
    line-height: 1.2;
  }
}
#advancement .btn-newtab::after {
  right: 2.6rem;
  width: 3.4rem;
  height: 2.7rem;
  background: transparent url(../../../assets/img/bg_blank.webp) center/cover no-repeat;
  clip-path: none;
}/*# sourceMappingURL=style.css.map */