:root {
  --dvw: calc(100dvw / 1300);
  --fvw: calc(100dvw / 1300);
}
@media (min-width: 1300px) {
  :root {
    --dvw: 1px;
    --fvw: calc(100dvw / 1300);
  }
}
@media (max-width: 1024px) {
  :root {
    --dvw: calc(100dvw / 768);
    --fvw: calc(100dvw / 768);
  }
}
@media (max-width: 575px) {
  :root {
    --dvw: calc(100dvw / 375);
    --fvw: calc(100dvw / 375);
  }
}

.main-inner {
  padding-top: calc(var(--dvw) * 132);
  padding-bottom: calc(var(--dvw) * 90);
  position: relative;
}
@media (max-width: 1024px) {
  .main-inner {
    padding-top: calc(var(--dvw) * 78);
    padding-bottom: calc(var(--dvw) * 53);
  }
}
@media (max-width: 575px) {
  .main-inner {
    padding-top: calc(var(--dvw) * 78);
    padding-bottom: calc(var(--dvw) * 26);
  }
}

.main-inner .back-pattern {
  position: absolute;
  width: 100vw;
  height: 100%;
  display: block;
  overflow-x: hidden;
  background-image: url("/assets/images/specialist/back-pattern-1.webp");
  background-repeat: no-repeat;
  background-size: 130% auto;
  background-position: left -20vw top -1vw;
}

@media (min-width: 1600px) {
  .main-inner .back-pattern {
    background-size: cover;
    background-position: center top;
  }
}
@media (max-width: 575px) {
  .main-inner .back-pattern {
    background-size: 180% auto;
    background-position: center top 20%;
    background-repeat: repeat-y;
  }
}
/* Page Header Styles */
.c-main-heading__title-inner.--page-heading {
  padding: 0 0.7em 0.5em;
}
@media (max-width: 575px) {
  .c-main-heading__title-inner.--page-heading {
    padding: 0 1.5em 0.5em;
  }
}

.qualification {
  margin-top: calc(var(--dvw) * 34);
}
@media (max-width: 1024px) {
  .qualification {
    margin-top: calc(var(--dvw) * 20);
  }
}
@media (max-width: 575px) {
  .qualification {
    margin-top: calc(var(--dvw) * 20);
  }
}

.qualification__title {
  font-size: clamp(1.125rem, 1.0236rem + 0.4324vw, 1.375rem);
  font-weight: 400;
  text-align: center;
  letter-spacing: 0.034em;
  position: relative;
  z-index: 2;
}

.qualification__text {
  font-size: clamp(0.875rem, 0.8243rem + 0.2162vw, 1rem);
  line-height: 1.74;
  letter-spacing: 0.04em;
  margin-top: 0.4em;
  text-align: center;
  position: relative;
  z-index: 2;
}

.qualification__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: calc(var(--dvw) * 57);
  gap: 35px;
  position: relative;
  z-index: 2;
}
@media (max-width: 1024px) {
  .qualification__wrapper {
    margin-top: calc(var(--dvw) * 34);
    gap: 20px;
  }
}
@media (max-width: 575px) {
  .qualification__wrapper {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: calc(var(--dvw) * 20);
    gap: 30px;
  }
}

.qualification__card {
  width: 370px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (max-width: 575px) {
  .qualification__card {
    width: 100%;
  }
}

.qualification__card-img {
  width: 90%;
  max-width: 250px;
  margin: 0 auto;
  margin-bottom: calc(var(--dvw) * -20);
  z-index: 3;
}
@media (max-width: 1024px) {
  .qualification__card-img {
    margin-bottom: calc(var(--dvw) * -12);
  }
}
@media (max-width: 575px) {
  .qualification__card-img {
    margin-bottom: calc(var(--dvw) * -6);
  }
}

.qualification__card-content {
  background-color: #ffffff;
  padding: calc(var(--dvw) * 16) calc(var(--dvw) * 50) calc(var(--dvw) * 30);
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media (max-width: 1024px) {
  .qualification__card-content {
    padding: calc(var(--dvw) * 16) calc(var(--dvw) * 30) calc(var(--dvw) * 18);
  }
}
@media (max-width: 575px) {
  .qualification__card-content {
    padding: calc(var(--dvw) * 12) calc(var(--dvw) * 16) calc(var(--dvw) * 18);
  }
}

.qualification__card-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  color: #085cb9;
  line-height: 1;
}

.qualification__card-title-name {
  font-size: clamp(1rem, 0.8986rem + 0.4324vw, 1.25rem);
  position: relative;
  line-height: 1.3;
}
@media (max-width: 1024px) {
  .qualification__card-title-name {
    font-size: clamp(0.875rem, 0.723rem + 0.6486vw, 1.25rem);
  }
}
@media (max-width: 575px) {
  .qualification__card-title-name {
    font-size: clamp(1.125rem, 1.0743rem + 0.2162vw, 1.25rem);
    line-height: 1.3;
  }
}

.qualification__card-title-number {
  font-size: clamp(3.125rem, 2.2382rem + 3.7838vw, 5.3125rem);
  font-family: "Jost", sans-serif;
  position: relative;
  bottom: -0.18em;
  left: 0.05em;
}
@media (max-width: 1024px) {
  .qualification__card-title-number {
    font-size: clamp(1.25rem, -0.397rem + 7.027vw, 5.3125rem);
  }
}
@media (max-width: 575px) {
  .qualification__card-title-number {
    bottom: -0.05em;
    left: 0;
    font-size: clamp(1.875rem, 0.4814rem + 5.9459vw, 5.3125rem);
  }
}

.qualification__card-title-unit {
  font-size: clamp(1.125rem, 0.8209rem + 1.2973vw, 1.875rem);
  font-weight: 700;
}
@media (max-width: 575px) {
  .qualification__card-title-unit {
    line-height: 1.3;
  }
}

.qualification__card-text {
  font-size: clamp(0.875rem, 0.8243rem + 0.2162vw, 1rem);
  line-height: 1.65;
  letter-spacing: 0.01em;
  margin-top: 1.3em;
  text-align: justify;
}

.qualification__button {
  margin-top: calc(var(--dvw) * 38);
  text-align: center;
  position: relative;
  z-index: 2;
}
@media (max-width: 1024px) {
  .qualification__button {
    margin-top: calc(var(--dvw) * 22);
  }
}
@media (max-width: 575px) {
  .qualification__button {
    margin-top: calc(var(--dvw) * 22);
  }
}

.qualification__button-link {
  display: inline-block;
  width: 248px;
}

.secondary-inner {
  padding-top: 0;
  padding-bottom: calc(var(--dvw) * 90);
  position: relative;
}

@media (max-width: 1024px) {
  .secondary-inner {
    padding-top: calc(var(--dvw) * 73);
    padding-bottom: calc(var(--dvw) * 53);
  }
}
@media (max-width: 575px) {
  .secondary-inner {
    padding-top: calc(var(--dvw) * 36);
    padding-bottom: calc(var(--dvw) * 26);
  }
}
.secondary-inner .c-section-inner {
  padding-top: calc(var(--dvw) * 88);
}

.secondary-inner .back-pattern {
  position: absolute;
  width: 100vw;
  height: 110%;
  display: block;
  overflow-x: hidden;
  background-image: url("/assets/images/specialist/back-pattern-2.webp");
  background-repeat: no-repeat;
  background-size: 130% auto;
  background-position: left -13vw top -10vw;
}

@media (max-width: 575px) {
  .secondary-inner .back-pattern {
    background-size: auto 90%;
    background-position: left 30% top -15vw;
  }
}
/* Section Title Styles */
.section__title {
  margin: 0 auto;
  margin-bottom: 0.8em;
  position: relative;
  z-index: 2;
  font-weight: 400;
  max-width: 564px;
  width: 100%;
  padding: 0.66em 0.66em;
  font-size: clamp(1.875rem, 1.6723rem + 0.8649vw, 2.375rem);
}
@media (max-width: 575px) {
  .section__title {
    max-width: 80%;
  }
}
.section__title::before, .section__title::after {
  content: "";
  position: absolute;
  width: clamp(1.125rem, 1.049rem + 0.3243vw, 1.3125rem);
  height: clamp(1.125rem, 1.049rem + 0.3243vw, 1.3125rem);
  border-color: #085cb9;
  border-style: solid;
  border-width: 3px;
}
.section__title::before {
  top: 0;
  left: 0;
  border-right-width: 0;
  border-bottom-width: 0;
}
.section__title::after {
  bottom: 0;
  right: 0;
  border-top-width: 0;
  border-left-width: 0;
}

.section__title-en {
  text-align: center;
  color: #085cb9;
  font-family: "Saira", sans-serif;
  letter-spacing: 0.02em;
  line-height: 1;
  margin-bottom: 0.2em;
  font-size: inherit;
}

.section__title-ja {
  font-size: clamp(1.125rem, 1.0236rem + 0.4324vw, 1.375rem);
  text-align: center;
  letter-spacing: 0.034em;
}

.section__description {
  font-size: clamp(0.875rem, 0.8243rem + 0.2162vw, 1rem);
  text-align: center;
  letter-spacing: 0.04em;
  max-width: 600px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

/* Certified Styles */
.certified__wrapper {
  margin-top: calc(var(--dvw) * 42);
  background-color: #fffce0;
  position: relative;
  z-index: 2;
  max-width: 1000px;
  margin: 0 auto;
  margin-top: calc(var(--dvw) * 42);
}
@media (max-width: 1024px) {
  .certified__wrapper {
    margin-top: calc(var(--dvw) * 25);
  }
}
@media (max-width: 575px) {
  .certified__wrapper {
    margin-top: calc(var(--dvw) * 25);
  }
}

.certified__content__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: calc(var(--dvw) * 37);
  padding: calc(var(--dvw) * 19) calc(var(--dvw) * 22);
}
@media (max-width: 1024px) {
  .certified__content__wrapper {
    gap: calc(var(--dvw) * 22);
    padding: calc(var(--dvw) * 11) calc(var(--dvw) * 13);
  }
}
@media (max-width: 575px) {
  .certified__content__wrapper {
    gap: calc(var(--dvw) * 11);
    padding: calc(var(--dvw) * 11) calc(var(--dvw) * 13);
  }
}

.certified__label {
  font-size: clamp(1rem, 0.848rem + 0.6486vw, 1.375rem);
  letter-spacing: 0.05em;
  text-align: center;
  background-color: #085cb9;
  color: #ffffff;
  padding: calc(var(--dvw) * 5) calc(var(--dvw) * 24);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (max-width: 1024px) {
  .certified__label {
    padding: calc(var(--dvw) * 3) calc(var(--dvw) * 14);
  }
}
@media (max-width: 575px) {
  .certified__label {
    padding: calc(var(--dvw) * 3) calc(var(--dvw) * 14);
  }
}

.certified__circle {
  background-color: #fff;
  color: #085cb9;
  width: 150px;
  height: 150px;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  border: 1px solid #085cb9;
}
@media (max-width: 1024px) {
  .certified__circle {
    display: none;
  }
}

.certified__circle__big {
  font-size: clamp(1rem, 0.9493rem + 0.2162vw, 1.125rem);
  line-height: 1.4;
  letter-spacing: 0.01em;
  margin-bottom: 0.3em;
  font-weight: 500;
}

.certified__circle__small {
  font-size: clamp(0.875rem, 0.8243rem + 0.2162vw, 1rem);
  line-height: 1.2;
  letter-spacing: 0.01em;
}

.certified__content {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}

.certified__content__title {
  font-size: clamp(1.125rem, 0.9983rem + 0.5405vw, 1.4375rem);
  line-height: 1.2;
  letter-spacing: 0.01em;
  color: #085cb9;
  font-weight: 500;
}

.certified__content__text {
  font-size: clamp(0.875rem, 0.8243rem + 0.2162vw, 1rem);
  line-height: 1.5;
  letter-spacing: 0.04em;
  margin-top: 0.8em;
}

.certified__content__flow {
  line-height: 1.65;
  letter-spacing: 0.01em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: calc(var(--dvw) * 10);
  margin-top: calc(var(--dvw) * 27);
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media (max-width: 1024px) {
  .certified__content__flow {
    gap: calc(var(--dvw) * 6);
    margin-top: calc(var(--dvw) * 16);
  }
}

.certified__content__flow__item__wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: calc(var(--dvw) * 6);
}
@media (max-width: 1024px) {
  .certified__content__flow__item__wrapper {
    gap: calc(var(--dvw) * 4);
  }
}

.certified__content__flow__item {
  line-height: 1.65;
  letter-spacing: 0.01em;
  font-size: clamp(0.875rem, 0.799rem + 0.3243vw, 1.0625rem);
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.certified__content__flow__item.--first {
  background-color: #085cb9;
  color: #fff;
  width: calc(var(--dvw) * 160);
  height: calc(var(--dvw) * 45);
}
@media (max-width: 575px) {
  .certified__content__flow__item.--first {
    width: calc(var(--dvw) * 132);
    height: calc(var(--dvw) * 27);
  }
}

.certified__content__flow__item.--other {
  width: calc(var(--dvw) * 140);
  height: calc(var(--dvw) * 45);
  color: #085cb9;
  background-image: url(../images/specialist/certified_allow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  padding-right: 5px;
}
@media (max-width: 575px) {
  .certified__content__flow__item.--other {
    width: calc(var(--dvw) * 83);
    height: calc(var(--dvw) * 27);
  }
}
/*# sourceMappingURL=specialist.css.map */