/* メインビジュアル直下の採用案内。コピーの位置には影響させない。 */
/* PCでは告知帯の実際の高さを引いた残りをメイン画像に割り当てる。 */
@media (min-width: 1025px) {
  .home-first-view {
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    height: 100vh;
  }

  .home-first-view .hero {
    height: auto;
    min-height: 0;
  }

  .home-first-view .recruit-notice-band__inner {
    padding: 1.6rem 0;
  }
}

.recruit-notice-band {
  background: var(--blue-dark);
  color: #fff;
}

.recruit-notice-band__inner {
  display: flex;
  align-items: center;
  gap: 2.4rem;
  width: min(calc(100% - 84px), 1440px);
  margin: 0 auto;
  padding: 2.4rem 0;
  color: inherit;
  text-decoration: none;
}

.recruit-notice-band__label {
  flex-shrink: 0;
  padding: .4rem 1.2rem;
  border: 1px solid #ddc273;
  border-radius: .3rem;
  color: #ddc273;
  font-size: 1.4rem;
  font-weight: 700;
}

.recruit-notice-band__title {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.8;
}

.recruit-notice-band__link {
  display: flex;
  align-items: center;
  gap: 2rem;
  flex-shrink: 0;
  margin-left: auto;
  font-size: 1.4rem;
}

.recruit-notice-band__inner:hover {
  color: #fff;
}

.recruit-notice-band__inner:hover .recruit-notice-band__title {
  text-decoration: underline;
  text-underline-offset: .3em;
}

.recruit-notice-band__inner:focus-visible {
  outline: 3px solid #ddc273;
  outline-offset: -3px;
}

@media (max-width: 767px) {
  .recruit-notice-band__inner {
    flex-wrap: wrap;
    gap: 1.2rem;
    width: calc(100% - 48px);
    padding: 2rem 0;
  }

  .recruit-notice-band__label {
    font-size: 1.2rem;
  }

  .recruit-notice-band__title {
    flex-basis: 100%;
    font-size: 1.6rem;
  }
}
