
html {
  font-size: 16px;
}

body {
  font-family: var(--font-jp);
  color: var(--color-text);
  line-height: 1.75;
}

.c-button {
  color: #fff;
}

.c-button p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  letter-spacing: 1.12px;
  color: #ffffff;
}

.p-lowerFv__breadcrumb p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #8e9ea8;
}

.p-lowerFv__breadcrumb a p {
  color: #8e9ea8;
}

@media (hover: hover) and (pointer: fine) {
  .p-lowerFv__breadcrumb a:hover p {
    color: var(--color-primary);
  }
  .l-top a[href^="tel:"]:hover,
  .l-top a[href^="mailto:"]:hover,
  .l-lowerPage a[href^="tel:"]:hover,
  .l-lowerPage a[href^="mailto:"]:hover {
    color: var(--color-primary);
  }
  .p-contactForm .privacy-policy__text a:hover {
    color: var(--color-primary);
  }
}
.p-lowerFv__heading h1 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 62px;
  font-weight: 500;
  line-height: 1.12;
  letter-spacing: 0.4px;
  color: transparent;
}

.p-lowerFv__sub p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #454545;
}

.p-contactForm .formTh > .requiredText,
.p-contactForm .formTh > .anyText {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.1666666667;
  letter-spacing: 0px;
  color: #ffffff;
}

.p-contactForm .labelText01 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 1.1px;
  color: #454545;
}

.p-contactForm .labelText02,
.p-contactForm .privacyLabel {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.8px;
  color: #454545;
}

.p-contactForm .formInput,
.p-contactForm .formTextArea,
.p-contactForm .formSelect,
.p-contactForm .zipInput,
.p-contactForm .fileInput {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.28px;
  color: #454545;
}

.p-contactForm .formInput::placeholder,
.p-contactForm .formTextArea::placeholder,
.p-contactForm .formSelect::placeholder {
  color: #a3a7ad;
}

.p-contactForm .formTd__note p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.24px;
  color: #8c9099;
}

.p-contactForm .privacy-policy__text p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.9;
  letter-spacing: 0.26px;
  color: #4a4e57;
}

.p-contactForm .privacy-policy__title p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.28px;
  color: #454545;
}

.p-contactForm .formSend {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 1.5px;
  color: #ffffff;
}

.p-contactComplete__heading h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 40px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0;
  color: #404040;
}

.p-contactComplete__text p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0;
  color: #454545;
}

@media (max-width: 768px) {
  .c-button {
    font-size: 13px;
  }
  .p-contactComplete__heading h2 {
    font-size: clamp(28px, 7vw, 40px);
    line-height: 1.4;
  }
  .p-contactComplete__text p {
    font-size: 14px;
    line-height: 1.9;
  }
}
@media (max-width: 500px) {
  .p-contactComplete__text p {
    font-size: clamp(12px, 3.73vw, 14px);
  }
}
.c-lowerSectionHeading h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0;
  color: #404040;
}

@media screen and (max-width: 1366px) {
  .c-lowerSectionHeading h2 {
    font-size: clamp(23px, 2.0497803807vw, 28px);
  }
}
.c-lowerFaqList .c-lowerSectionHeading h2 {
  letter-spacing: 2.3px;
}

.c-lowerSectionHeading--light h2 {
  color: #ffffff;
}

.c-lowerIntroSection__body p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2.36;
  letter-spacing: 0;
  color: #404040;
}

@media (max-width: 1100px) {
  .c-lowerSectionHeading h2 {
    line-height: 1.4;
  }
}
@media (min-width: 901px) and (max-width: 1100px) {
  .p-lowerFv__heading h1 {
    font-size: clamp(40px, 4.5388vw, 62px);
  }
}
@media (max-width: 900px) {
  .p-lowerFv__heading h1 {
    font-size: clamp(40px, 9vw, 60px);
    line-height: 1.14;
  }
}
@media (max-width: 520px) {
  .c-lowerIntroSection__body p {
    font-size: 13px;
    line-height: 2.05;
  }
}
@media (min-width: 1367px) {
  .p-lowerFv__heading h1 {
    font-size: clamp(62px, 4.5388vw, 72px);
  }
  .p-lowerFv__sub p {
    font-size: clamp(14px, 1.0249vw, 18px);
  }
}
.c-lowerMediaSection__label p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 1.1px;
  color: #ffffff;
}

.c-lowerMediaSection__lead p,
.c-lowerMediaSection__text p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2.29;
  letter-spacing: 1.7px;
  color: #404040;
}

@media (max-width: 520px) {
  .c-lowerMediaSection__label p {
    font-size: 9px;
  }
  .c-lowerMediaSection__lead p,
  .c-lowerMediaSection__text p {
    font-size: 13px;
    line-height: 2;
  }
}
.c-lowerFeaturePanel__label p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  color: #ffffff;
}

.c-lowerFeaturePanel__number p {
  font-family: var(--font-en);
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: #ffffff;
}

.c-lowerFeaturePanel__titleText h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.6px;
  color: #ffffff;
}

.c-lowerFeaturePanel__desc p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2.29;
  letter-spacing: 0;
  color: rgba(255, 255, 255, 0.92);
}

@media (max-width: 1366px) {
  .c-lowerFeaturePanel__titleText h3 {
    font-size: clamp(18px, 1.6105417277vw, 22px);
  }
}
@media (max-width: 520px) {
  .c-lowerFeaturePanel__label p {
    font-size: 9px;
  }
  .c-lowerFeaturePanel__number p {
    font-size: 16px;
  }
  .c-lowerFeaturePanel__titleText h3 {
    font-size: 18px;
    line-height: 1.45;
  }
  .c-lowerFeaturePanel__desc p {
    font-size: 13px;
    line-height: 2;
  }
}
.c-lowerSplitSection__label p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  color: #ffffff;
}

.c-lowerSplitSection__text p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2.1;
  letter-spacing: 0;
  color: #404040;
}

@media (max-width: 520px) {
  .c-lowerSplitSection__label p {
    font-size: 9px;
  }
  .c-lowerSplitSection__text p {
    font-size: 13px;
    line-height: 2.2;
  }
}
.c-lowerNarrativeSection__lead p,
.c-lowerNarrativeSection__wide p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2.3;
  letter-spacing: 0;
  color: #404040;
}

.c-accentLabel {
  color: #fff;
}

@media (max-width: 520px) {
  .c-lowerNarrativeSection__lead p,
  .c-lowerNarrativeSection__wide p {
    font-size: 13px;
    line-height: 2.15;
  }
}
.c-lowerClassCards__label p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 10px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  color: #ffffff;
}

.c-lowerClassCards__intro p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2.1;
  letter-spacing: 0;
  color: #404040;
}

.c-lowerClassCards__title h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.64;
  letter-spacing: 0;
  color: #4077cc;
}

.c-lowerClassCards__text p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2.3;
  letter-spacing: 2.1px;
  color: #404040;
}

@media (max-width: 520px) {
  .c-lowerClassCards__label p {
    font-size: 9px;
  }
  .c-lowerClassCards__intro p,
  .c-lowerClassCards__text p {
    font-size: 13px;
    line-height: 2.1;
  }
  .c-lowerClassCards__title h3 {
    font-size: 20px;
    line-height: 1.55;
  }
}
.c-lowerFlowSection__tag p {
  font-family: "Lato", "Noto Sans JP", sans-serif;
  font-size: 10px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  color: #ffffff;
}

.p-recruitment__lowerFlowSection-tag p {
  font-size: 14px;
}

.c-lowerFlowSection__number p {
  font-family: var(--font-en);
  font-size: 14px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: #ffffff;
}

.c-lowerFlowSection__stepText p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.85;
  letter-spacing: 1.6px;
  color: #404040;
}

.c-lowerFlowSection__note p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2.1428571429;
  letter-spacing: 0.7px;
  color: #404040;
}

@media (max-width: 520px) {
  .c-lowerFlowSection__tag p {
    font-size: 9px;
  }
  .c-lowerFlowSection__stepText p {
    font-size: 13px;
  }
  .c-lowerFlowSection__note p {
    font-size: 13px;
    line-height: 2.05;
  }
}
.c-lowerFaqList__label p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
  color: #ffffff;
}

.c-lowerFaqList__mark--q p {
  font-family: var(--font-en);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  color: #ff8a1d;
}

.c-lowerFaqList__mark--a p {
  font-family: var(--font-en);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  color: #0a88cf;
}

.c-lowerFaqList__questionText p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0.9px;
  color: #404040;
}

.c-lowerFaqList__answerText p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2.29;
  letter-spacing: 1.1px;
  color: #404040;
}

@media (max-width: 520px) {
  .c-lowerFaqList__label p {
    font-size: 9px;
  }
  .c-lowerFaqList__mark--q p,
  .c-lowerFaqList__mark--a p {
    font-size: 16px;
  }
  .c-lowerFaqList__questionText p,
  .c-lowerFaqList__answerText p {
    font-size: 13px;
  }
  .c-lowerFaqList__answerText p {
    line-height: 2.1;
  }
}
.p-header__navItem p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  color: #404040;
  letter-spacing: 0;
  line-height: 1.4;
}

@media (hover: hover) and (pointer: fine) {
  .p-header__navItem:hover p {
    color: var(--color-primary);
  }
}
.p-header__cta {
  color: #fff;
}

.p-header__cta p {
  font-size: 14px;
  font-weight: 500;
  color: #fff;
}

@media (max-width: 1420px) {
  .p-header__drawerLink {
    color: var(--color-text-sub);
  }
  .p-header__drawerLink p {
    font-size: 18px;
    font-weight: 500;
  }
  .p-header__drawerBody .p-header__cta p {
    font-size: 15px;
    font-weight: 500;
    color: #fff;
  }
}
@media (max-width: 1420px) and (hover: hover) and (pointer: fine) {
  .p-header__drawerLink:hover {
    color: var(--color-primary);
  }
}
.p-footer {
  color: #fff;
}

.p-footer__navItem p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0;
  color: #404040;
}

.p-footer__address {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0;
  color: #ffffff;
}

.p-footer__contact {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0;
  color: #ffffff;
}

.p-footer__contact p {
  font: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}

.p-footer__copy {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 11px;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0;
  color: #ffffff;
}

.p-contact__box {
  color: #fff;
}

.p-contact__icon p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 44px;
  font-weight: 500;
  line-height: 1.1;
  letter-spacing: 0;
  color: #ebecee;
}

.p-contact__title p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0;
  color: #ebecee;
}

.p-contact__text p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 26px;
  letter-spacing: 1.2px;
  color: #ffffff;
}

.p-contact__telNumber p {
  font-family: "Lato", sans-serif;
  font-size: 32px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: 0;
  color: #ffffff;
}

@media (hover: hover) and (pointer: fine) {
  .l-lowerPage .p-contact__telNumber a:hover {
    color: #ffffff;
  }
}
.p-contact__hours p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0;
  color: #ebecee;
}

.p-contact__mailButton p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: 0;
  color: #4077cc;
}

@media (max-width: 900px) {
  .p-contact__icon {
    font-size: 36px;
  }
  .p-contact__tel {
    font-size: 26px;
  }
}
.p-topFv__inner {
  color: #fff;
}

.p-topFv__sub p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: #fff;
}

.p-topFv__heading h1 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 38px;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: 0;
  color: #fff;
}

.p-topFv__lead p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 32px;
  letter-spacing: 0;
  color: #ffffff;
}

.p-topFv__news {
  color: #fff;
}

.p-topFv__newsDate p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #ffffff;
}

.p-topFv__newsTag p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: #ffffff;
}

.p-topFv__newsTitle p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #ffffff;
}

.c-topSectionTitle__sub p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 10px;
  letter-spacing: 0;
  color: #ffffff;
}

.c-topSectionTitle__heading h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 28px;
  font-weight: 500;
  line-height: 46px;
  letter-spacing: 0.5px;
}

.c-topSectionTitle__heading--light h2 {
  color: #ffffff;
}

.p-topStats__text p {
  letter-spacing: 0.8px;
  line-height: 2.4;
}

.c-topSectionTitle__heading--dark h2 {
  color: var(--color-text-sub);
}

.p-topAbout__heading {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 62px;
  font-weight: 500;
  line-height: 1.4;
  letter-spacing: 0;
}

.p-topAbout__sub {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 10px;
  letter-spacing: 0;
  color: #454545;
}

.p-topAbout__subHeading {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 32px;
  font-weight: 500;
  line-height: 56px;
  letter-spacing: 0;
  color: #454545;
}

.p-topAbout__text {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 32px;
  letter-spacing: 0;
  color: #454545;
}

.p-topSchool__tag p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 10px;
  letter-spacing: 0;
  color: #ffffff;
}

.p-topSchool__sub p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 10px;
  letter-spacing: 0;
  color: #ffffff;
}

.p-topSchool__heading h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 28px;
  font-weight: 500;
  line-height: 46px;
  letter-spacing: 0;
  color: #454545;
}

.p-topSchool__text p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 32px;
  letter-spacing: 0;
  color: #454545;
}

.p-topStats {
  color: #fff;
}

.p-topStats__text {
  font-size: 14px;
  line-height: 2.71;
  color: rgba(255, 255, 255, 0.92);
}

.p-topStats__card {
  color: var(--color-text-sub);
}

.p-topStats__label {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: #454545;
  line-height: 20px;
  letter-spacing: 1.3px;
}

.p-topStats__number {
  color: var(--color-primary);
  font-family: var(--font-en);
}

.p-topStats__numberValue p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 80px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: var(--color-primary);
}

.p-topStats__numberValue .p-topStats__numberDecimal {
  font-size: 30px;
  font-weight: 500;
  line-height: 46px;
}

.p-topStats__numberUnit p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 30px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
  color: var(--color-primary);
}

.p-topStats__desc {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 32px;
  letter-spacing: 0;
  color: #454545;
}

.p-topService {
  color: var(--color-text-sub);
}

.p-topService__text {
  font-size: 14px;
  font-weight: 500;
  line-height: 2.29;
  color: #454545;
}

.p-topService__item {
  color: var(--color-text-sub);
}

.p-topService__itemTitleJa {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-weight: 500;
  color: #454545;
  line-height: 20px;
  letter-spacing: 0;
}

.p-topService__itemEn {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 10px;
  letter-spacing: 0;
}

.p-topService__itemEn--blue {
  color: var(--color-primary);
}

.p-topService__itemEn--navy {
  color: var(--color-primary-dark);
}

.p-topService__itemEn--deep {
  color: var(--color-primary-deep);
}

.p-topService__itemDesc {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 28px;
  letter-spacing: 0;
  color: #454545;
}

.p-topWorks {
  color: #fff;
}

.p-topWorks__item {
  color: #ffffff;
}

.p-topWorks__itemTag {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0;
}

.p-topWorks__itemDate {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0;
  color: #ffffff;
}

.p-topWorks__itemText {
  font-size: 14px;
  line-height: 2;
  color: #ffffff;
}

.p-topWorks__itemMore {
  font-size: 14px;
  color: #ffffff;
  line-height: 1.7;
  letter-spacing: 1.4px;
}

.p-topCompany__label p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0;
  color: #0a88cf;
  line-height: 1;
}

.p-topCompany__value p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0;
  color: #454545;
  line-height: 1;
}

.p-topNews__itemDate p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0;
  color: #676767;
}

.p-topNews__itemTag p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: 0;
  color: #ffffff;
}

.p-topNews__itemTitle p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 26px;
  letter-spacing: 0;
  color: #454545;
}

.p-topInstagram__itemText p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.75;
  letter-spacing: 0;
  color: #3c3c3c;
}

.p-topInstagram__item {
  color: #3c3c3c;
}

@media (max-width: 1365px) {
  .p-topFv__heading h1 {
    font-size: clamp(30px, 4vw, 38px);
  }
}
@media (max-width: 768px) {
  .p-topFv__heading {
    font-size: 26px;
  }
  .p-topFv__sub {
    font-size: 13px;
  }
  .p-topFv__lead {
    font-size: 13px;
  }
}
@media (max-width: 900px) {
  .p-topAbout__heading {
    font-size: 44px;
  }
  .p-topAbout__subHeading {
    font-size: 24px;
  }
  .p-topSchool__heading h3 {
    font-size: clamp(24px, 5.6vw, 28px);
    line-height: 1.65;
  }
  .p-topStats__text {
    line-height: 2;
  }
  .p-topStats__numberValue {
    font-size: 52px;
    line-height: 1;
  }
}
.p-worksArchive__filterButton p,
.p-worksDetailArchive__filterButton p,
.p-newsArchive__filterButton p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #1a9ef1;
}

.p-worksArchive__filterButton.is-current p,
.p-worksDetailArchive__filterButton.is-current p,
.p-newsArchive__filterButton.is-current p {
  color: #ffffff;
}

@media (hover: hover) and (pointer: fine) {
  .p-worksArchive__filterButton:not(.is-current):hover p,
  .p-worksDetailArchive__filterButton:not(.is-current):hover p,
  .p-newsArchive__filterButton:not(.is-current):hover p {
    color: #ffffff;
  }
  .p-worksArchive__item:hover .p-worksArchive__itemTag p,
  .p-worksDetailArchive__item:hover .p-worksDetailArchive__itemTag p,
  .p-newsArchive__item:hover .p-newsArchive__itemTag p {
    color: #ffffff;
  }
}
.p-worksArchive__itemDate p,
.p-worksDetailArchive__itemDate p,
.p-newsArchive__itemDate p {
  font-family: "Lato", "Noto Sans JP", sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #676767;
}

.p-worksArchive__itemTag p,
.p-worksDetailArchive__itemTag p,
.p-newsArchive__itemTag p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #3ba0d9;
}

.p-worksArchive__itemText p,
.p-worksDetailArchive__itemText p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.93;
  letter-spacing: 0;
  color: #454545;
}

.p-newsArchive__itemText p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #454545;
}

.p-worksArchive__itemMore p,
.p-worksDetailArchive__itemMore p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #2c2c2c;
}

.p-worksArchive__paginationText p,
.p-worksArchive__paginationNumber p,
.p-worksArchive__paginationArrow p,
.p-worksDetailArchive__paginationText p,
.p-worksDetailArchive__paginationNumber p,
.p-worksDetailArchive__paginationArrow p,
.p-newsArchive__paginationText p,
.p-newsArchive__paginationNumber p,
.p-newsArchive__paginationArrow p,
.p-worksArchive .webgene-pagination .text,
.p-worksArchive .webgene-pagination .number a,
.p-worksArchive .webgene-pagination .prev a,
.p-worksArchive .webgene-pagination .next a,
.p-worksDetailArchive .webgene-pagination .text,
.p-worksDetailArchive .webgene-pagination .number a,
.p-worksDetailArchive .webgene-pagination .prev a,
.p-worksDetailArchive .webgene-pagination .next a,
.p-newsArchive .webgene-pagination .text,
.p-newsArchive .webgene-pagination .number a,
.p-newsArchive .webgene-pagination .prev a,
.p-newsArchive .webgene-pagination .next a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0;
}

.p-worksArchive__paginationText p,
.p-worksArchive__paginationNumber p,
.p-worksDetailArchive__paginationText p,
.p-worksDetailArchive__paginationNumber p,
.p-newsArchive__paginationText p,
.p-newsArchive__paginationNumber p,
.p-worksArchive .webgene-pagination .text,
.p-worksArchive .webgene-pagination .number a,
.p-worksDetailArchive .webgene-pagination .text,
.p-worksDetailArchive .webgene-pagination .number a,
.p-newsArchive .webgene-pagination .text,
.p-newsArchive .webgene-pagination .number a {
  color: #6f7b87;
}

.p-worksArchive__paginationArrow p,
.p-worksArchive__paginationNumber.is-current p,
.p-worksDetailArchive__paginationArrow p,
.p-worksDetailArchive__paginationNumber.is-current p,
.p-newsArchive__paginationArrow p,
.p-newsArchive__paginationNumber.is-current p,
.p-worksArchive .webgene-pagination .selected a,
.p-worksArchive .webgene-pagination .prev a,
.p-worksArchive .webgene-pagination .next a,
.p-worksDetailArchive .webgene-pagination .selected a,
.p-worksDetailArchive .webgene-pagination .prev a,
.p-worksDetailArchive .webgene-pagination .next a,
.p-newsArchive .webgene-pagination .selected a,
.p-newsArchive .webgene-pagination .prev a,
.p-newsArchive .webgene-pagination .next a {
  color: #ffffff;
}

.p-worksDetailArticle__date p {
  font-family: "Lato", "Noto Sans JP", sans-serif;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #676767;
}

.p-worksDetailArticle__tag p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #3ba0d9;
}

.p-worksDetailArticle__title h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.4583333333;
  letter-spacing: 0;
  color: #00132b;
}

.p-worksDetailArticle__body,
.p-worksDetailArticle__body p,
.p-worksDetailArticle__body li,
.p-worksDetailArticle__body td,
.p-worksDetailArticle__body th,
.p-worksDetailArticle__body blockquote {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0;
  color: #333333;
}

.p-worksDetailArticle__body > p:first-child {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0;
  color: #454545;
}

.p-worksDetailArticle__body h3 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0;
  color: #00132b;
}

.p-worksDetailArticle__body h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  color: #454545;
}

.p-worksDetailArticle__body h4 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0;
  color: #454545;
}

.p-worksDetailArticle__body h5,
.p-worksDetailArticle__body h6 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0;
  color: #454545;
}

.p-worksDetailArticle__body a {
  color: #1a6ee8;
}

.p-worksDetailArticle__back p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  color: #ffffff;
}

.p-companyGreeting__label p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  color: #ffffff;
}

.p-companyGreeting__heading h2 {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 1.8px;
  color: #454545;
}

.p-companyGreeting__text p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2.2857142857;
  letter-spacing: 1.1px;
  color: #454545;
}

.l-lowerPage.p-companyPage .p-topCompany__label p {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
  color: #0a88cf;
}

.l-lowerPage.p-companyPage .p-topCompany__value p,
.l-lowerPage.p-companyPage .p-topCompany__value a {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-weight: 500;
  line-height: 2;
  letter-spacing: 0;
  color: #454545;
  text-decoration: none;
}

@media (hover: hover) and (pointer: fine) {
  .l-lowerPage.p-companyPage .p-topCompany__value a:hover {
    color: var(--color-primary);
  }
}
.p-companyAccess__tag p {
  font-family: "Lato", "Noto Sans JP", sans-serif;
  font-size: 11px;
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: 0;
  color: #ffffff;
}

@media (max-width: 900px) {
  .p-worksDetailArticle__title h2 {
    font-size: clamp(20px, 2.8vw, 22px);
  }
  .p-worksDetailArticle__body,
  .p-worksDetailArticle__body p,
  .p-worksDetailArticle__body li,
  .p-worksDetailArticle__body td,
  .p-worksDetailArticle__body th,
  .p-worksDetailArticle__body blockquote {
    font-size: 14px;
    line-height: 1.9;
  }
  .p-worksDetailArticle__body h2,
  .p-worksDetailArticle__body h3 {
    font-size: clamp(22px, 4.4vw, 28px);
  }
  .p-worksDetailArticle__body h4 {
    font-size: clamp(18px, 4vw, 22px);
  }
  .l-lowerPage.p-companyPage .p-topCompany__heading h2 {
    font-size: 18px;
  }
  .p-companyGreeting__heading h2 {
    font-size: clamp(20px, 4.8vw, 28px);
    line-height: 1.48;
  }
  .p-companyGreeting__text p {
    line-height: 2.1;
  }
}
@media (max-width: 520px) {
  .p-newsArchive__filterButton p {
    font-size: clamp(12px, 1.379vw + 6.83px, 14px);
  }
}
:root {
  --font-jp: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;
  --font-en: "Noto Sans JP", "Hiragino Sans", "Yu Gothic", sans-serif;
}
