@charset "UTF-8";

/* ===========================================
 * 
	----------------------------------
  Structure
  ----------------------------------
  01_head エリア
  02_採用一覧
 * ======================================== */

/* ===========================================
 * 01_head エリア
 * ======================================== */
.recruit {
  container-type: inline-size;
}
.recruit__inner {
  max-width: 1400px;
  padding-block: var(--spc-160-80);
}

.recruit__head {
  padding-bottom: var(--spc-100-50);
}


/* ===========================================
 * 02_採用一覧
 * ======================================== */
.recruit__wrap {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--spc-40-20);
  padding-bottom: var(--spc-40-20);
}
@container (width <= 768px) {
  .recruit__wrap {
    grid-template-columns: 1fr;
  }
}

/*  tab切り替え */
/* ======================================== */
.recruit__tabs {
  display: flex;
  flex-direction: column;
  gap: var(--spc-20-10);
}
@container (width <= 768px) {
  .recruit__tabs {
    flex-direction: row;
    flex-wrap: wrap;
    gap: var(--spc-40-20) var(--spc-20-10);
  }
}
.recruit__tab {
  --clamp-min: 16;
  --clamp-max: 20;
  border: 0;
  background: transparent;
  -webkit-tap-highlight-color: transparent;
  outline: transparent;
}
.recruit__tab[aria-selected="true"] {
  color: var(--color-primary);
  font-weight: bold;
}
@container (width <= 768px) {
  .recruit__tab {
    border: 1px solid var(--color-border);
    border-radius: 20px;
    padding: var(--spc-8-4) var(--spc-20-10);
  }
  .recruit__tab[aria-selected="true"] {
    color: var(--color-primary);
    border: 1px solid var(--color-primary);
    font-weight: bold;
  }
}

/* tab内 */
/* ======================================== */
.recruit__contents-wrap {
  border-top: 1px solid var(--color-border);
}
.recruit__contents {
  opacity: 0;
  visibility: hidden;
  height: 0;
  translate: 0 20px;
  transition: opacity 1s ease, translate 0.5s ease;
  display: grid;/* 親要素をGridにし、全体の列の幅を定義する（左: コンテンツ幅, 右: 残り） */
  grid-template-columns: auto 1fr;
}
.recruit__contents.js-show {
  opacity: 1;
  visibility: visible;
  height: fit-content;
  translate: 0;
}
.recruit__item-link {
  display: grid;
  align-items: center;
  grid-column: span 2;
  grid-template-columns: subgrid; 
  gap: var(--spc-20-10);
  padding: var(--spc-20-10);
  border-bottom: 1px solid var(--color-border);
  transition: border-color .3s ease;
}
@container (width <= 768px) {
  .recruit__contents {
    grid-template-columns: 1fr; 
  }
  .recruit__item-link {
    grid-column: 1 / -1;
    grid-template-columns: 1fr; 
  }
}
@media(any-hover: hover) {
  .recruit__item-link:hover {
    border-bottom: 1px solid var(--color-primary);
  }
}

.recruit__headline {
  --clamp-min: 16;
  --clamp-max: 20;
  transition: color .3s ease;
}
.recruit__no-article {
  --clamp-min: 16;
  --clamp-max: 20;
  padding: var(--spc-20-10);
}

@media(any-hover: hover) {
  .recruit__item-link:hover .recruit__headline {
    color: var(--color-primary);
  }
}

.recruit__meta {
  display: flex;
  align-items: center;
  gap: var(--spc-10-5);
}
@container (width <= 768px) {
  .recruit__meta {
    gap: var(--spc-20-10);
  }
}
.recruit__date {
  --clamp-min: 16;
  --clamp-max: 18;
}

.recruit__category {
  background: var(--color-bg-gr);
  width:fit-content;
  padding: var(--spc-4-2) var(--spc-10-5);
}
