/*
** .header
*/

.header::after {
  content: '';
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--z-index-low);
  display: block;
  width: 100%;
  height: 100vh;
  height: 100svh;
  background-color: #000;
  opacity: 0;
  transition: var(--transition);
}

.header.open::after {
  visibility: visible;
  opacity: 0.6;
}

.header__inner {
  grid-template-columns: max-content 6.25em;
  padding: 3.125em 2.53125em;
}


/*
** .header__site-owner
*/

.header__site-owner {
  z-index: var(--z-index-low);
}

.body__inner[data-status="after"] .header__site-owner {
  width: 17.425em;
}

.body__inner[data-status="before"] .header__site-owner {
  width: 13.5em;
}

.header.open .header__site-owner .desvg .st1 {
  fill: var(--red);
}

.header.open .header__site-owner .desvg .st2 {
  fill: #fff;
}


/*
** .header__drawer
*/

.header__drawer {
  width: fit-content;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  min-width: 33.75em;
  border-top-left-radius: 3.125em;
}

.header__nav {
  grid-template-rows: auto max-content;
  grid-row-gap: 2.25em;
  padding-top: 3.8125em;
}

.header__nav-head {
  grid-row-gap: 2.25em;
  padding-left: 5em;
  padding-right: 5em;
}

.header__primary-menu {
  grid-row-gap: 1.6875em;
}

.header__primary-menu .menu-item.current-menu-item::before {
  left: -3.4375em;
  width: 1.875em;
}

.header__primary-menu .menu-item a {
  font-size: calc( 36 / 16 * 1em );
}

.header__secondary-menu {
  grid-row-gap: 1.5625em;
}

.header__secondary-menu .menu-item a {
  font-size: 1em;
}

.header__nav-foot {
  padding: 2.125em 3.125em;
}

.header__recruit-nav {
  grid-row-gap: 1.25em;
  margin-left: 0;
  margin-right: 0;
}

.header__recruit-title {
  font-size: 1.25em;
}

.header__recruit-menu .menu-item:not(:last-child) {
  margin-right: 4.125em;
}

.header__recruit-menu .menu-item a {
  font-size: 1em;
}

.header__link-list {
  margin-left: 0;
  margin-right: 0;
}

.header__link-button a::after {
  right: 0.8em;
}

.header__support-center {
  margin-left: 0;
  margin-right: 0;
}

.header__support-center a {
  grid-row-gap: 0.565em;
  border-radius: 1.875em;
  padding-top: 0.3125em;
  padding-bottom: 0.965em;
}

.header__support-center-label {
  font-size: 1.125em;
}

.header__support-center-tel {
  font-size: 2.8125em;
}