/*color*/
/*mediaquery*/
/* function */
/*mixin*/

.base-layout #areaWrapper1 {
  margin-top: 90px;
}

.page__header3rd {
  margin-bottom: min(4.2857142857vw, 6rem);
  padding-top: min(6.4285714286vw, 9rem);
  border-top: none;
}

.heading1,
.heading2,
.heading3,
.heading4,
.heading5 {
  color: #9B001B;
}

.heading-h3 {
  border-top-color: #9B001B;
  border-bottom-color: #9B001B;
  color: #9B001B;
}

.heading-h2 {
  background: #9B001B;
}

.heading-h4 {
  color: #9B001B;
}

.list--dot ul > li::before {
  background: #9B001B;
}

.breadcrumb {
  background: #9B001B;
}

.accordion__toggle::before, .accordion__toggle::after,
.accordion2__toggle::before,
.accordion2__toggle::after {
  background: #9B001B;
}

.btn--blue a {
  --btn-color: #9B001B;
  --btn-color-txt-hover: #9B001B;
}

.btn-small a,
.btn-view a,
.btn-return a,
.btn2 a,
.btn3 a,
.btn4 a {
  --btn-color-txt: #9B001B;
  --btn-color-hover: #9B001B;
}

.anchor-link a,
.anchor-link2 a {
  color: #9B001B;
}

.nav-search__input,
.nav-search__tag {
  color: #9B001B;
}

.archive-news__nav-title,
.archive-news__nav-list,
.archive-news__nav-dropdown {
  color: #9B001B;
}

.archive-news__nav-dropdown {
  border-color: #9B001B;
}

.post__header-title h1,
.post__header-title h2,
.post__header.news > div > div .post__header-title h1 {
  color: #9B001B;
}

.top__fv-title {
  background: rgba(155, 0, 27, 0.9);
}

.top__new {
  background: #9B001B;
}

#page,
.base-layout {
  --layer-color: #9B001B;
}

.page__header3rd-title,
.page__newsList-item-title,
.page__newsBox-pagenation,
.career__supports-title,
.program__support-title,
.program__support-flow-title,
.career__faq-list-item--label,
.neweducation__title,
.neweducation__wil-certification dl dd,
.g-menu__nav-list-item a,
.g-menu__nav-lang .active,
.g-menu__accordion,
.header__nav-list,
.g-menu2__nav-group-title,
.g-menu2__nav-list2,
.g-menu2__nav-lang .active {
  color: #9B001B;
}

.page__newsBox-pagenation .current,
.tab__btn.active,
.neweducation__wil-certification dl dt {
  background: #9B001B;
  color: #fff;
}

.tab__btn {
  color: #9B001B;
}

.g-menu__spTop {
  border-bottom-color: #9B001B;
}

.g-menu__accordion-toggle::before, .g-menu__accordion-toggle::after {
  background: #9B001B;
}

#g-search {
  background: rgba(155, 0, 27, 0.9);
}

.archive-news__nav-dropdown {
  border-color: #9B001B;
}

.footer2__contact,
.g-menu2__contact {
  --btn-color-hover: #9B001B;
}

.btn a {
  background: var(--btn-color, #9b001b);
  color: var(--btn-color-txt, #fff);
  border: 1px solid var(--btn-color-txt, #9b001b);
}
.btn a:hover {
  background: var(--btn-color-hover, #fff);
  color: var(--btn-color-txt-hover, #9b001b);
  opacity: 1;
}
.btn a:hover:has(.btn__icon) .icon-pdf,
.btn a:hover:has(.btn__icon) .icon-window {
  --icon-color: currentColor;
}

.page__nav {
  --side-padding: min(1.6260162602vw, 2rem);
}
.page__nav-topLevel .btn {
  width: 100%;
  padding: 0.7em var(--side-padding);
  padding-right: calc(var(--side-padding) + 2.3rem);
  font-size: clamp(1.4rem, 1.4641288433vw, 2rem);
  text-align: left;
  font-weight: 500;
  -webkit-justify-content: flex-start;
          justify-content: flex-start;
}
.page__nav-topLevel .btn:has(.btn__icon) .btn__icon {
  right: var(--side-padding);
}
.page__nav-child {
  margin-top: 1px;
  display: grid;
  grid-template-columns: 100%;
  row-gap: 1px;
}
.page__nav-child a {
  transition-property: opacity;
}
.page__nav-child .current {
  color: #898d93;
}
.page__nav-child > li a {
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: baseline;
          align-items: baseline;
  color: inherit;
  text-decoration: none;
}
.page__nav-child > li .icon-arrow {
  --icon-color: #f7f7f4;
  --icon-size: 0.9rem;
  margin-left: 1.2rem;
}
.page__nav-child > li:not(:has(.page__nav-accordion)) {
  padding: 1.0625em var(--side-padding);
  background: #f7f7f4;
  color: #9b001b;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: clamp(1.4rem, 1.1713030747vw, 1.6rem);
  letter-spacing: 0;
  line-height: 1.2;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
          align-items: flex-start;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  position: relative;
}
.page__nav-childSub {
  display: grid;
  grid-template-columns: 100%;
  row-gap: 1px;
}
.page__nav-childSub > li {
  background: none;
}
.page__nav-childSub > li:not(:first-child) {
  border-top: 1px solid #9b001b;
}
.page__nav-childSub > li:not(:has(.page__nav-accordionSub)) {
  padding: 1.2142857143em var(--side-padding);
  color: #9b001b;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-size: clamp(1.4rem, 1.0248901903vw, 1.4rem);
  letter-spacing: 0;
  line-height: 1.5714285714;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
          align-items: flex-start;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  position: relative;
}
.page__nav-childSub > li .current {
  color: #898d93;
}
.page__nav-childBottom {
  display: grid;
  grid-template-columns: 100%;
  row-gap: 0.9285714286em;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-size: clamp(1.4rem, 1.0248901903vw, 1.4rem);
  line-height: 1.5714285714;
}
.page__nav-childBottom a {
  display: inline-block;
  padding-left: 0.9285714286em;
  position: relative;
}
.page__nav-childBottom a::before {
  content: "";
  width: var(--arrow-size, 0.4285714286em);
  aspect-ratio: 10/11;
  background: #898d93;
  -webkit-mask-image: url(../img/common/nav-arrow.svg);
          mask-image: url(../img/common/nav-arrow.svg);
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  position: absolute;
  left: 0;
  top: var(--line-height, 0.5lh);
  translate: 0 -50%;
}
.page__nav-accordion {
  color: #9b001b;
}
.page__nav-accordion > summary {
  padding: 1.7rem var(--side-padding);
  background: #f7f7f4;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-size: clamp(1.4rem, 1.1713030747vw, 1.6rem);
  letter-spacing: 0;
  line-height: 1.2;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
          align-items: flex-start;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  position: relative;
}
.page__nav-accordion-toggle {
  -webkit-flex-shrink: 0;
          flex-shrink: 0;
  width: 1.1rem;
  height: 1.2em;
  height: 1lh;
  margin-left: 1em;
  position: relative;
}
.page__nav-accordion-toggle::before, .page__nav-accordion-toggle::after {
  content: "";
  width: 100%;
  height: 1px;
  background: #f7f7f4;
  position: absolute;
  top: 50%;
  left: 0;
}
.page__nav-accordion-toggle::after {
  rotate: 90deg;
}
.page__nav-accordion[open] > summary > .page__nav-accordion-toggle::after {
  rotate: 0deg;
}
.page__nav-accordionSub {
  color: #9b001b;
}
.page__nav-accordionSub > summary {
  padding: 1.2142857143em var(--side-padding);
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-size: clamp(1.4rem, 1.0248901903vw, 1.4rem);
  letter-spacing: 0;
  line-height: 1.5714285714;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: flex-start;
          align-items: flex-start;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  position: relative;
}
.page__nav-accordionSub-toggle {
  -webkit-flex-shrink: 0;
          flex-shrink: 0;
  width: 1.1rem;
  height: 1.5714285714em;
  height: 1lh;
  margin-left: 1em;
  position: relative;
}
.page__nav-accordionSub-toggle::before, .page__nav-accordionSub-toggle::after {
  content: "";
  width: 100%;
  height: 1px;
  background: #f7f7f4;
  position: absolute;
  top: 50%;
  left: 0;
}
.page__nav-accordionSub-toggle::after {
  rotate: 90deg;
}
.page__nav-accordionSub-body {
  padding: 0 var(--side-padding) 1.2142857143em;
}
.page__nav-accordionSub[open] > summary {
  color: #898d93;
}
.page__nav-accordionSub[open] > summary > .page__nav-accordionSub-toggle::after {
  rotate: 0deg;
}
@media (min-width: 752px) {
  #page {
    margin-right: 0;
  }
}
@media (max-width: 751px) {
  .base-layout #areaWrapper1 {
    margin-top: 0;
  }
  .page__header3rd {
    margin-bottom: 10.6666666667vw;
    padding-top: 17.3333333333vw;
    border-top: none;
  }
  .page__nav {
    --side-padding: 5vw;
    position: relative;
    z-index: 100;
  }
  .page__nav-topLevel {
    background: #9b001b;
    position: relative;
  }
  .page__nav-topLevel::before {
    content: "";
    width: 3.2vw;
    aspect-ratio: 24/13;
    background: #fff;
    -webkit-mask-image: url(../img/common/nav-arrow-down.svg);
            mask-image: url(../img/common/nav-arrow-down.svg);
    -webkit-mask-size: contain;
            mask-size: contain;
    -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
    -webkit-mask-position: center;
            mask-position: center;
    position: absolute;
    top: 50%;
    right: var(--side-padding);
    translate: 0 -50%;
    rotate: 0deg;
  }
  .page__nav-topLevel .btn {
    --btn-color-hover: #9b001b;
    --btn-color-txt-hover: #fff;
    width: auto;
    font-size: 4.5333333333vw;
  }
  .page__nav-topLevel .btn:has(.btn__icon) .btn__icon {
    display: none;
  }
  .page__nav[open]::after, .page__nav.is-open::after {
    content: "";
    width: 100%;
    height: var(--body-height);
    background: rgba(0, 0, 0, 0.4);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }
  .page__nav[open] .page__nav-topLevel::before, .page__nav.is-open .page__nav-topLevel::before {
    rotate: 180deg;
  }
  .page__nav[open] .page__nav-child, .page__nav.is-open .page__nav-child {
    width: 100%;
    background: #fff;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 200;
  }
  .page__nav-child {
    margin-top: 0;
  }
  .page__nav-child > li .icon-arrow {
    --icon-size: 2.4vw;
    margin-left: 2.6666666667vw;
  }
  .page__nav-child > li:not(:has(.page__nav-accordion)) {
    padding: 4.5333333333vw var(--side-padding);
    font-size: 4vw;
  }
  .page__nav-childSub > li:not(:has(.page__nav-accordionSub)) {
    font-size: 3.4666666667vw;
  }
  .page__nav-childBottom {
    font-size: 3.4666666667vw;
  }
  .page__nav-accordion > summary {
    padding: 4.5333333333vw var(--side-padding);
    font-size: 4vw;
  }
  .page__nav-accordion-toggle {
    width: 3.3333333333vw;
  }
  .page__nav-accordionSub > summary {
    font-size: 3.4666666667vw;
  }
  .page__nav-accordionSub-toggle {
    width: 3.3333333333vw;
  }
}
/*# sourceMappingURL=maps/style_co.css.map */
