@charset "UTF-8";
/*===============
  求人TOP（No.14）… Figma 4531:2016
  templates/pages/recruit/page-recruit.php とセット
===============*/
.recruit-column__list, .recruit-guide__body, .recruit-recommend__body, .recruit-jobtype__list, .recruit-area__list {
  margin-top: 1.75rem;
}

.recruit-hero {
  position: relative;
  display: flex;
  align-items: flex-end;
  min-height: 32.5rem;
  overflow: hidden;
}
.recruit-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, rgba(33, 26, 23, 0.78) 0%, rgba(33, 26, 23, 0.45) 45%, rgba(33, 26, 23, 0) 75%);
}
.recruit-hero__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  margin: 0;
  object-fit: cover;
}
.recruit-hero__inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.375rem;
  padding: 3rem 0 3.5rem 2.375rem;
}
.recruit-hero__eyebrow {
  font-size: 0.75rem;
  line-height: 1.34;
  font-weight: 600;
  letter-spacing: 0.1875rem;
  color: rgba(255, 255, 255, 0.8);
}
.recruit-hero__title {
  font-size: 2.75rem;
  line-height: 1.34;
  font-weight: 700;
  letter-spacing: 0;
  color: #ffffff;
}
.recruit-hero__lead {
  font-size: 0.9375rem;
  line-height: 1.34;
  color: rgba(255, 255, 255, 0.9);
}
.recruit-hero__btns {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  padding-top: 0.375rem;
}
.recruit-hero__btn {
  display: inline-flex;
  align-items: center;
  padding: 1rem 1.875rem;
  font-size: 0.875rem;
  line-height: 1.34;
  font-weight: 700;
  text-decoration: none;
  transition: opacity 0.25s ease;
}
.recruit-hero__btn:hover {
  opacity: 0.85;
}
.recruit-hero__btn--white {
  color: #333;
  background: #ffffff;
}
.recruit-hero__btn--sage {
  color: #ffffff;
  background: #75836B;
}
.recruit-hero__note {
  font-size: 0.8125rem;
  line-height: 1.3;
  color: rgba(255, 255, 255, 0.8);
}
@media screen and (max-width: 767px) {
  .recruit-hero {
    min-height: 30rem;
  }
  .recruit-hero::before {
    background: linear-gradient(90deg, rgba(33, 26, 23, 0.78) 0%, rgba(33, 26, 23, 0.5) 100%);
  }
  .recruit-hero__inner {
    gap: 1rem;
    padding: 3rem 0 2.5rem;
  }
  .recruit-hero__title {
    font-size: 1.875rem;
  }
  .recruit-hero__lead, .recruit-hero__note {
    font-size: 1rem;
    line-height: 1.6;
  }
  .recruit-hero__btns {
    flex-direction: column;
    width: 100%;
  }
  .recruit-hero__btn {
    justify-content: center;
    font-size: 1rem;
  }
}

.recruit-search {
  padding: 1.75rem 0 1.625rem;
  background: #F1F2EC;
}
.recruit-search__form {
  display: flex;
  gap: 0.625rem;
}
.recruit-search__field {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
}
.recruit-search__field select,
.recruit-search__field input {
  width: 100%;
  height: 2.875rem;
  padding: 0 1rem;
  font-size: 0.8125rem;
  line-height: 1.2;
  color: #333;
  background: #FCFAF9;
  border: 0.0625rem solid #E5DEDB;
  border-radius: 0;
  appearance: none;
}
.recruit-search__field select::placeholder,
.recruit-search__field input::placeholder {
  color: #6b6b6b;
}
.recruit-search__field select:focus,
.recruit-search__field input:focus {
  outline: 0.125rem solid #75836B;
  outline-offset: -0.125rem;
}
.recruit-search__field select {
  padding-right: 2.5rem;
  color: #6b6b6b;
  cursor: pointer;
}
.recruit-search__field--select::after {
  content: "▼";
  position: absolute;
  top: 50%;
  right: 1rem;
  font-size: 0.5625rem;
  line-height: 1;
  color: #808080;
  transform: translateY(-50%);
  pointer-events: none;
}
.recruit-search__submit {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.4375rem;
  width: 8.3125rem;
  height: 2.9375rem;
  font-size: 0.875rem;
  line-height: 1.2;
  font-weight: 700;
  color: #ffffff;
  background: #75836B;
  border: 0;
  cursor: pointer;
  transition: opacity 0.25s ease;
}
.recruit-search__submit:hover {
  opacity: 0.85;
}
.recruit-search__submit img {
  width: 0.875rem;
  height: 0.875rem;
  margin: 0;
}
.recruit-search__keywords {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1rem;
}
.recruit-search__keywords-label {
  font-size: 0.75rem;
  line-height: 1.2;
  font-weight: 500;
  color: #999;
}
.recruit-search__keywords-list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.recruit-search__keywords-list li {
  margin: 0;
  letter-spacing: 0;
  line-height: 1;
}
.recruit-search__keywords-list a {
  display: block;
  padding: 0.375rem 0.75rem;
  font-size: 0.6875rem;
  line-height: 1.2;
  color: #777;
  text-decoration: none;
  background: #ffffff;
  border: 0.0625rem solid #E5DEDB;
  transition: border-color 0.25s ease, color 0.25s ease;
}
.recruit-search__keywords-list a:hover {
  color: #75836B;
  border-color: #75836B;
}
@media screen and (max-width: 767px) {
  .recruit-search__form {
    flex-wrap: wrap;
  }
  .recruit-search__field {
    flex: 1 1 100%;
  }
  .recruit-search__field select,
  .recruit-search__field input {
    font-size: 1rem;
  }
  .recruit-search__submit {
    width: 100%;
    font-size: 1rem;
  }
  .recruit-search__keywords-list a {
    font-size: 0.8125rem;
  }
}

.recruit-area {
  padding-top: 4rem;
}
.recruit-area__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
  margin-bottom: 0;
  padding: 0;
  list-style: none;
}
.recruit-area__item {
  margin: 0;
  letter-spacing: 0;
  line-height: 1.3;
}
.recruit-area__item a {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  color: #333;
  text-decoration: none;
}
.recruit-area__image {
  display: block;
  height: 11.875rem;
  overflow: hidden;
}
.recruit-area__image img {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.recruit-area__name {
  font-size: 1.0625rem;
  line-height: 1.3;
  font-weight: 700;
}
.recruit-area__count {
  font-size: 0.75rem;
  line-height: 1.3;
  color: #8A7F7B;
}
@media screen and (max-width: 1100px) {
  .recruit-area__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .recruit-area {
    padding-top: 3rem;
  }
  .recruit-area__list {
    gap: 1.25rem 0.75rem;
  }
  .recruit-area__image {
    height: auto;
    aspect-ratio: 338/190;
  }
  .recruit-area__count {
    font-size: 0.8125rem;
  }
}

.recruit-jobtype {
  padding: 4rem 0;
}
.recruit-jobtype__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-bottom: 0;
  padding: 0;
  list-style: none;
}
.recruit-jobtype__item {
  margin: 0;
  letter-spacing: 0;
  line-height: 1.3;
  background: #ffffff;
  border-right: 0.0625rem solid #E5DEDB;
  border-bottom: 0.0625rem solid #E5DEDB;
}
.recruit-jobtype__item:nth-child(4n) {
  border-right: 0;
}
.recruit-jobtype__item:nth-child(n+5) {
  border-bottom: 0;
}
.recruit-jobtype__item a {
  display: block;
  color: #333;
  text-decoration: none;
}
.recruit-jobtype__image {
  display: block;
  height: 15rem;
  overflow: hidden;
}
.recruit-jobtype__image img {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.recruit-jobtype__body {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 1.25rem 1.25rem 1.375rem;
}
.recruit-jobtype__name {
  padding-bottom: 0.75rem;
  font-size: 1.25rem;
  line-height: 1.2;
  font-weight: 700;
  border-bottom: 0.0625rem solid #E5DEDB;
}
.recruit-jobtype__count {
  font-size: 0.8125rem;
  line-height: 1.2;
}
@media screen and (max-width: 1100px) {
  .recruit-jobtype__list {
    grid-template-columns: repeat(2, 1fr);
  }
  .recruit-jobtype__item:nth-child(n) {
    border-right: 0.0625rem solid #E5DEDB;
    border-bottom: 0.0625rem solid #E5DEDB;
  }
  .recruit-jobtype__item:nth-child(2n) {
    border-right: 0;
  }
  .recruit-jobtype__item:nth-child(n+7) {
    border-bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  .recruit-jobtype {
    padding: 3rem 0;
  }
  .recruit-jobtype__image {
    height: auto;
    aspect-ratio: 4/3;
  }
  .recruit-jobtype__body {
    gap: 0.5rem;
    padding: 0.875rem 0.875rem 1rem;
  }
  .recruit-jobtype__name {
    padding-bottom: 0.5rem;
    font-size: 1rem;
  }
  .recruit-jobtype__count {
    font-size: 0.8125rem;
  }
}

.recruit-recommend {
  padding: 4rem 0;
  background: #F1F2EC;
}
.recruit-recommend__body {
  display: flex;
  gap: 1rem;
}
.recruit-recommend__grid {
  flex: 1 1 0;
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media screen and (max-width: 1100px) {
  .recruit-recommend__body {
    flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  .recruit-recommend {
    padding: 3rem 0;
  }
  .recruit-recommend__grid {
    grid-template-columns: 1fr;
  }
}

.recruit-job {
  position: relative;
  background: #ffffff;
}
.recruit-job--pickup {
  flex: 0 0 42.857%;
}
.recruit-job__link {
  display: flex;
  flex-direction: column;
  height: 100%;
  color: #333;
  text-decoration: none;
}
.recruit-job__image {
  display: block;
  height: 9.375rem;
  overflow: hidden;
}
.recruit-job__image img {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.recruit-job--pickup .recruit-job__image {
  height: 18.75rem;
}
.recruit-job__body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.3125rem;
  padding: 0.75rem 0.875rem 0.875rem;
}
.recruit-job--pickup .recruit-job__body {
  gap: 0.625rem;
  padding: 1.25rem 1.375rem 1.5rem;
}
.recruit-job__badge {
  padding: 0.25rem 0.5rem;
  font-size: 0.625rem;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: 0.0625rem;
  color: #ffffff;
  background: #75836B;
}
.recruit-job__title {
  font-size: 0.9375rem;
  line-height: 1.4;
  font-weight: 700;
}
.recruit-job--pickup .recruit-job__title {
  font-size: 1.25rem;
}
.recruit-job__place {
  font-size: 0.75rem;
  line-height: 1.4;
  font-weight: 500;
  color: #8A7F7B;
}
.recruit-job--pickup .recruit-job__place {
  font-size: 0.8125rem;
  color: #333;
}
.recruit-job__meta {
  font-size: 0.6875rem;
  line-height: 1.4;
  color: #8A7F7B;
}
.recruit-job--pickup .recruit-job__meta {
  font-size: 0.8125rem;
  color: #333;
}
.recruit-job__save {
  position: absolute;
  top: 0.625rem;
  right: 0.625rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.25rem;
  height: 2.25rem;
  padding: 0;
  font-size: 1.125rem;
  line-height: 1;
  color: #75836B;
  background: rgba(255, 255, 255, 0.92);
  border: 0;
  border-radius: 50%;
  transition: opacity 0.25s ease;
}
.recruit-job__save:hover {
  opacity: 0.85;
}
.recruit-job__save span {
  font-size: inherit;
  line-height: 1;
}
.recruit-job__save.is-saved {
  color: #B0574A;
}
@media screen and (max-width: 767px) {
  .recruit-job--pickup .recruit-job__image {
    height: auto;
    aspect-ratio: 2/1;
  }
  .recruit-job__image {
    height: auto;
    aspect-ratio: 384/150;
  }
  .recruit-job--pickup .recruit-job__body {
    padding: 1rem 1rem 1.25rem;
  }
  .recruit-job__body {
    padding: 0.75rem 1rem 1rem;
  }
  .recruit-job__title, .recruit-job--pickup .recruit-job__title {
    font-size: 1.0625rem;
  }
  .recruit-job__place, .recruit-job__meta, .recruit-job--pickup .recruit-job__place, .recruit-job--pickup .recruit-job__meta {
    font-size: 0.8125rem;
  }
}

.recruit-scout {
  padding: 3rem 0 3.0625rem;
}
.recruit-scout__box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  padding: 4.5rem 5rem 5rem;
  text-align: center;
  border: 0.125rem solid #d2d2d2;
}
.recruit-scout__lead {
  font-size: 0.9375rem;
  line-height: 2;
}
.recruit-scout__title {
  font-size: 1.75rem;
  line-height: 1.45;
  font-weight: 700;
  color: #75836B;
}
.recruit-scout__steps {
  display: flex;
  justify-content: center;
  gap: 5.5rem;
  margin: 0;
  padding: 2rem 0 0;
  list-style: none;
}
.recruit-scout__step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  margin: 0;
  letter-spacing: 0;
  line-height: 1.3;
}
.recruit-scout__illust {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 12.5rem;
  height: 11.25rem;
}
.recruit-scout__illust img {
  max-height: 100%;
  width: auto;
  margin: 0;
}
.recruit-scout__illust img[src*=illust-phone] {
  height: 10.3125rem;
}
.recruit-scout__illust img[src*=illust-mail] {
  height: 8.9375rem;
}
.recruit-scout__illust img[src*=illust-salon] {
  height: 8.6625rem;
}
.recruit-scout__step-no {
  font-size: 0.75rem;
  line-height: 1.2;
  font-weight: 600;
  letter-spacing: 0.09rem;
  color: #75836B;
}
.recruit-scout__step-title {
  font-size: 1.125rem;
  line-height: 1.3;
  font-weight: 700;
}
.recruit-scout__step-text {
  font-size: 0.875rem;
  line-height: 1.8;
}
.recruit-scout__cta {
  padding-top: 1.25rem;
}
@media screen and (max-width: 1100px) {
  .recruit-scout__box {
    padding: 3rem 1.25rem;
  }
  .recruit-scout__steps {
    gap: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .recruit-scout__box {
    gap: 1rem;
  }
  .recruit-scout__lead {
    font-size: 1rem;
    line-height: 1.8;
  }
  .recruit-scout__title {
    font-size: 1.375rem;
  }
  .recruit-scout__steps {
    flex-direction: column;
    gap: 2rem;
    padding-top: 1rem;
  }
  .recruit-scout__illust {
    height: 9rem;
  }
  .recruit-scout__illust img[src*=illust-phone] {
    height: 8.5rem;
  }
  .recruit-scout__illust img[src*=illust-mail] {
    height: 7.5rem;
  }
  .recruit-scout__illust img[src*=illust-salon] {
    height: 7.25rem;
  }
  .recruit-scout__step-text {
    font-size: 1rem;
  }
  .recruit-scout__cta {
    width: 100%;
    padding-top: 0.5rem;
  }
  .recruit-scout__cta .rl-btn {
    width: 100%;
  }
}

.recruit-guide {
  padding: 4rem 0;
}
.recruit-guide__body {
  display: flex;
  align-items: flex-start;
  gap: 1.75rem;
}
.recruit-guide__main {
  flex: 0 0 38.571%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.875rem;
  color: #333;
  text-decoration: none;
}
.recruit-guide__main-image {
  display: block;
  width: 100%;
  height: 18.75rem;
  overflow: hidden;
}
.recruit-guide__main-image img {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.recruit-guide__badge {
  padding: 0.25rem 0.5rem;
  font-size: 0.625rem;
  line-height: 1.48;
  font-weight: 700;
  letter-spacing: 0.0625rem;
  color: #ffffff;
  background: #75836B;
}
.recruit-guide__main-title {
  font-size: 1.25rem;
  line-height: 1.48;
  font-weight: 700;
}
.recruit-guide__main-text {
  font-size: 0.8125rem;
  line-height: 1.48;
}
.recruit-guide__list {
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 0.0625rem solid #E5DEDB;
}
.recruit-guide__list li {
  margin: 0;
  letter-spacing: 0;
  line-height: 1.3;
  border-bottom: 0.0625rem solid #E5DEDB;
}
.recruit-guide__item {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.125rem 0;
  color: #333;
  text-decoration: none;
}
.recruit-guide__item:hover .recruit-guide__item-title {
  color: #75836B;
}
.recruit-guide__item:hover .recruit-guide__arrow {
  transform: translateX(0.1875rem);
}
.recruit-guide__item-image {
  flex-shrink: 0;
  width: 7rem;
  height: 4.625rem;
  overflow: hidden;
}
.recruit-guide__item-image img {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
}
.recruit-guide__item-body {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.3125rem;
}
.recruit-guide__item-title {
  font-size: 1rem;
  line-height: 1.3;
  font-weight: 700;
  transition: color 0.25s ease;
}
.recruit-guide__item-text {
  font-size: 0.75rem;
  line-height: 1.4;
  color: #8A7F7B;
}
.recruit-guide__arrow {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background: #75836B url("../../../images/common/icon/chevron-white.svg") no-repeat center/0.75rem;
  transition: transform 0.25s ease;
}
@media screen and (max-width: 1100px) {
  .recruit-guide__body {
    flex-direction: column;
  }
  .recruit-guide__main {
    flex-basis: auto;
    width: 100%;
  }
  .recruit-guide__list {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .recruit-guide {
    padding: 3rem 0;
  }
  .recruit-guide__main-image {
    height: auto;
    aspect-ratio: 540/300;
  }
  .recruit-guide__main-text, .recruit-guide__item-text {
    font-size: 0.8125rem;
  }
  .recruit-guide__item {
    gap: 0.75rem;
    padding: 0.875rem 0;
  }
  .recruit-guide__item-image {
    width: 5.5rem;
    height: 3.625rem;
  }
  .recruit-guide__item-title {
    font-size: 1rem;
  }
}

.recruit-column {
  padding-bottom: 4rem;
}
.recruit-column__list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.75rem 1.125rem;
  margin-bottom: 0;
  padding: 0;
  list-style: none;
}
.recruit-column__item {
  margin: 0;
  letter-spacing: 0;
  line-height: 1.48;
}
.recruit-column__item a {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.625rem;
  color: #333;
  text-decoration: none;
}
.recruit-column__image {
  display: block;
  width: 100%;
  height: 9.375rem;
  overflow: hidden;
}
.recruit-column__image img {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.recruit-column__cat, .recruit-column__date {
  font-size: 0.6875rem;
  line-height: 1.48;
  color: #8A7F7B;
}
.recruit-column__cat {
  font-weight: 500;
}
.recruit-column__title {
  font-size: 0.875rem;
  line-height: 1.48;
  font-weight: 500;
}
@media screen and (max-width: 1100px) {
  .recruit-column__list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 767px) {
  .recruit-column {
    padding-bottom: 3rem;
  }
  .recruit-column__list {
    gap: 1.5rem 0.75rem;
  }
  .recruit-column__image {
    height: auto;
    aspect-ratio: 336/150;
  }
  .recruit-column__cat, .recruit-column__date {
    font-size: 0.8125rem;
  }
  .recruit-column__title {
    font-size: 1rem;
  }
}
