/* //////////////////////////////////////////////////

Title : recruit-archive.scss
For   : bell-c/

Created       : 2025-12-10
Last Modified : 2025-12-10

==========================================

Content

////////////////////////////////////////////////// */
/**
 * layout
 */
.l-posts__section {
  padding-inline: 2rem;
}
.l-posts__shell {
  max-width: var(--post-shell-width, var(--container-wide));
  width: 100%;
  margin-inline: auto;
}

/* --- for small viewport --- */
@media (max-width: 767px) {
  .l-posts__section {
    padding-block: var(--post-section-spacer, 0 4rem);
  }
  .l-posts__section:last-of-type {
    --post-section-spacer: 4rem 8rem;
  }
}
/* --- for large viewport --- */
@media (min-width: 768px) {
  .l-posts__section {
    padding-block: var(--post-section-spacer, 0 8rem);
  }
  .l-posts__section:last-of-type {
    --post-section-spacer: 8rem 16rem;
  }
}
/**
 * interview
 */
:not(.swiper-initialized) > .p-post-interview__list {
  display: grid;
}

.p-post-interview .swiper {
  overflow: var(--overflow, initial);
}
.p-post-interview .swiper.swiper-initialized {
  --overflow: hidden;
}
.p-post-interview__item {
  position: relative;
}
.p-post-interview__item:nth-of-type(6n + 1) {
  --thumbnail-behind-color: var(--color-primary);
}
.p-post-interview__item:nth-of-type(6n + 2) {
  --thumbnail-behind-color: #0470bb;
}
.p-post-interview__item:nth-of-type(6n + 3) {
  --thumbnail-behind-color: #00aae7;
}
.p-post-interview__item:nth-of-type(6n + 4) {
  --thumbnail-behind-color: #14a76b;
}
.p-post-interview__item:nth-of-type(6n + 5) {
  --thumbnail-behind-color: #f7941c;
}
.p-post-interview__item:nth-of-type(6n + 6) {
  --thumbnail-behind-color: #ec5921;
}
.p-post-interview__thumbnail {
  position: relative;
  -webkit-padding-end: var(--thumbnail-behind-offset);
          padding-inline-end: var(--thumbnail-behind-offset);
  -webkit-padding-after: var(--thumbnail-behind-offset);
          padding-block-end: var(--thumbnail-behind-offset);
}
.p-post-interview__thumbnail::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: calc(100% - var(--thumbnail-behind-offset));
  height: calc(100% - var(--thumbnail-behind-offset));
  background-color: var(--thumbnail-behind-color);
  -webkit-clip-path: polygon(var(--angle-calulation) 0, 100% 0%, calc(100% - var(--angle-calulation)) 100%, 0% 100%);
          clip-path: polygon(var(--angle-calulation) 0, 100% 0%, calc(100% - var(--angle-calulation)) 100%, 0% 100%);
  z-index: var(--zindex-base);
}
.p-post-interview__image {
  position: relative;
  -webkit-clip-path: polygon(var(--angle-calulation) 0, 100% 0%, calc(100% - var(--angle-calulation)) 100%, 0% 100%);
          clip-path: polygon(var(--angle-calulation) 0, 100% 0%, calc(100% - var(--angle-calulation)) 100%, 0% 100%);
}
.p-post-interview__image::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(to bottom, transparent 0%, rgba(6, 52, 136, 0.3) 100%);
}
.p-post-interview__information {
  position: absolute;
  color: var(--color-white);
  z-index: var(--zindex-overlay);
}
.p-post-interview__department {
  font-weight: 700;
}
.p-post-interview__year {
  font-weight: 500;
  line-height: 1.5;
}
.p-post-interview__name {
  font-family: var(--font-combine);
  font-weight: 600;
}
.p-post-interview__headline {
  display: flex;
  justify-content: space-between;
  align-items: center;
  -webkit-padding-end: var(--thumbnail-behind-offset);
          padding-inline-end: var(--thumbnail-behind-offset);
}
.p-post-interview__headline::after {
  content: "";
  flex-shrink: 0;
  width: var(--headline-icon-size);
  height: var(--headline-icon-size);
  border-radius: 0.4rem;
  background-color: var(--color-base);
  background-image: var(--icon-recruit-link-arrow-white-path);
  background-repeat: no-repeat;
  background-position: center center;
}
.p-post-interview__headline span {
  --headline-rows: 2;
  --headline-line-height: 1.8;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: var(--headline-rows);
  max-height: calc(var(--headline-line-height) * var(--headline-rows) * 1em);
  line-height: var(--headline-line-height);
}

/* --- for small viewport --- */
@media (max-width: 767px) {
  :not(.swiper-initialized) > .p-post-interview__list {
    grid-template-columns: 100%;
    row-gap: 3.2rem;
  }
  .p-post-interview {
    --thumbnail-behind-offset: 2rem;
  }
  .p-post-interview__list {
    -webkit-margin-before: 4rem;
            margin-block-start: 4rem;
  }
  .p-post-interview__thumbnail {
    --angle-calulation: calc(27 / 315 * 100%);
  }
  .p-post-interview__information {
    bottom: calc(2.4rem + var(--thumbnail-behind-offset));
    left: 2.4rem;
  }
  .p-post-interview__department {
    font-size: 2rem;
  }
  .p-post-interview__year {
    -webkit-margin-before: 0.5rem;
            margin-block-start: 0.5rem;
    font-size: 1.3rem;
  }
  .p-post-interview__name {
    -webkit-margin-before: 1rem;
            margin-block-start: 1rem;
    font-size: 2.3rem;
  }
  .p-post-interview__headline {
    -webkit-margin-before: 3.6rem;
            margin-block-start: 3.6rem;
    font-size: 1.8rem;
    gap: 1.2rem;
  }
  .p-post-interview__headline::after {
    --headline-icon-size: 4rem;
    background-size: 1.6rem;
  }
}
/* --- for large viewport --- */
@media (min-width: 768px) {
  :not(.swiper-initialized) > .p-post-interview__list {
    grid-template-columns: repeat(var(--interview-list-column, 3), 1fr);
    row-gap: 7.2rem;
  }
  [data-interview=officer] {
    --interview-list-column: 4;
  }
  .p-post-interview {
    --thumbnail-behind-offset: 2.5rem;
  }
  .p-post-interview__list {
    -webkit-margin-before: 5rem;
            margin-block-start: 5rem;
  }
  .p-post-interview__thumbnail {
    --angle-calulation: calc(35 / 446 * 100%);
  }
  .p-post-interview__information {
    bottom: calc(4rem + var(--thumbnail-behind-offset));
    left: 4rem;
  }
  .p-post-interview__department {
    font-size: 2.4rem;
  }
  .p-post-interview__year {
    -webkit-margin-before: 0.8rem;
            margin-block-start: 0.8rem;
    font-size: 1.8rem;
  }
  .p-post-interview__name {
    -webkit-margin-before: 1.2rem;
            margin-block-start: 1.2rem;
    font-size: 2.8rem;
  }
  .p-post-interview__headline {
    gap: 4rem;
    -webkit-margin-before: 5.6rem;
            margin-block-start: 5.6rem;
    font-size: 1.8rem;
  }
  .p-post-interview__headline::after {
    --headline-icon-size: calc(54 / 24 * 1em);
    background-size: 1.8rem;
  }
}
/**
 * career
 */
.p-post-career {
  background-color: rgba(235, 247, 252, 0.9);
}
.p-post-career__lead {
  line-height: 1.8;
}

/* --- for small viewport --- */
@media (max-width: 767px) {
  .p-post-career {
    padding-block: 8rem;
  }
  .p-post-career__lead {
    -webkit-margin-before: 4rem;
            margin-block-start: 4rem;
    font-size: 1.6rem;
  }
  .p-post-career__figure {
    -webkit-margin-before: 4rem;
            margin-block-start: 4rem;
  }
}
/* --- for large viewport --- */
@media (min-width: 768px) {
  .p-post-career {
    padding-block: 16rem;
  }
  .p-post-career__lead {
    -webkit-margin-before: 5.6rem;
            margin-block-start: 5.6rem;
    font-size: 1.8rem;
  }
  .p-post-career__figure {
    -webkit-margin-before: 5.6rem;
            margin-block-start: 5.6rem;
  }
}
/**
 * evaluation
 */
.p-post-evaluation__container {
  display: grid;
}
.p-post-evaluation__lead {
  line-height: 1.8;
}
.p-post-evaluation__item {
  border-bottom: var(--recruit-border-style);
}
.p-post-evaluation__caption dt {
  font-weight: 700;
}
.p-post-evaluation__caption dd {
  line-height: 1.8;
}

/* --- for small viewport --- */
@media (max-width: 767px) {
  .p-post-evaluation {
    padding-block: 8rem;
  }
  .p-post-evaluation__container {
    grid-template-columns: 100%;
    row-gap: 4rem;
  }
  .p-post-evaluation__lead {
    font-size: 1.6rem;
  }
  .p-post-evaluation__list {
    border-top: var(--recruit-border-style);
  }
  .p-post-evaluation__item {
    padding-block: 2.4rem;
  }
  .p-post-evaluation__thumbnail {
    padding-inline: 2rem;
  }
  .p-post-evaluation__caption {
    -webkit-margin-before: 1.2rem;
            margin-block-start: 1.2rem;
  }
  .p-post-evaluation__caption dt {
    font-size: 1.8em;
  }
  .p-post-evaluation__caption dd {
    -webkit-margin-before: 1.6rem;
            margin-block-start: 1.6rem;
    font-size: 1.4rem;
  }
}
/* --- for large viewport --- */
@media (min-width: 768px) {
  .p-post-evaluation {
    -webkit-padding-before: 16rem;
            padding-block-start: 16rem;
    -webkit-padding-after: 19rem;
            padding-block-end: 19rem;
  }
  .p-post-evaluation__container {
    grid-template-columns: auto 1fr;
    row-gap: 1.6rem;
  }
  .p-post-evaluation__heading {
    grid-column: 1;
    grid-row: 1/span 2;
    align-self: start;
  }
  .p-post-evaluation__lead {
    font-size: 1.8rem;
  }
  .p-post-evaluation__item {
    display: grid;
    grid-template-columns: 34rem 1fr;
    align-items: center;
    -moz-column-gap: 2.4rem;
         column-gap: 2.4rem;
    padding-block: 4rem;
  }
  .p-post-evaluation__caption dt {
    font-size: 2.4em;
  }
  .p-post-evaluation__caption dd {
    -webkit-margin-before: 2.4rem;
            margin-block-start: 2.4rem;
    font-size: 1.6rem;
  }
}
/**
 * schedule
 */
.p-post-schedule__container {
  display: grid;
}
.p-post-schedule__lead {
  line-height: 1.8;
}
.p-post-schedule__list {
  display: grid;
  grid-template-columns: 100%;
  row-gap: 1em;
  align-self: start;
}
.p-post-schedule__item {
  display: grid;
  align-items: center;
  border: var(--recruit-border-style);
  padding-block: 1em;
  padding-inline: 1em;
}
.p-post-schedule__item::after {
  content: "";
  width: var(--post-schedule-icon-width);
  border-left: var(--recruit-border-style);
  background-image: var(--icon-recruit-link-arrow-path);
  background-repeat: no-repeat;
  background-position: center right;
}

/* --- for small viewport --- */
@media (max-width: 767px) {
  .p-post-schedule__container {
    grid-template-columns: 100%;
    row-gap: 2rem;
  }
  .p-post-schedule__item {
    --post-schedule-icon-width: 3rem;
    grid-template-columns: 30% 1fr var(--post-schedule-icon-width);
    -moz-column-gap: 1em;
         column-gap: 1em;
    row-gap: 0.5em;
    font-size: 1.4rem;
  }
  .p-post-schedule__item::after {
    height: 3rem;
    background-size: 2rem;
  }
  .p-post-schedule__thumbnail {
    aspect-ratio: 4/3;
    overflow: hidden;
  }
  .p-post-schedule__thumbnail img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .p-post-schedule__summaries {
    display: flex;
    flex-wrap: wrap;
    row-gap: 0.5em;
    -moz-column-gap: 0.5em;
         column-gap: 0.5em;
  }
}
/* --- for large viewport --- */
@media (min-width: 768px) {
  .p-post-schedule__container {
    grid-template-columns: 1fr 90rem;
    -moz-column-gap: 5rem;
         column-gap: 5rem;
  }
  .p-post-schedule__item {
    --post-schedule-icon-width: 8rem;
    grid-template-columns: 25% 1fr var(--post-schedule-icon-width);
    -moz-column-gap: 1.5em;
         column-gap: 1.5em;
    font-size: 1.8rem;
  }
  .p-post-schedule__item::after {
    height: 8rem;
    background-size: 4rem;
  }
  .p-post-schedule__summaries {
    display: grid;
    grid-template-columns: auto auto 1fr;
    row-gap: 1rem;
    -moz-column-gap: 1.5em;
         column-gap: 1.5em;
  }
  .p-post-schedule__category {
    grid-column: 1/-1;
    grid-row: 1;
  }
  .p-post-schedule__occupation-en {
    grid-column: 1/-1;
    grid-row: 2;
  }
  .p-post-schedule__occupation {
    grid-column: 1/-1;
    grid-row: 3;
  }
  .p-post-schedule__department {
    grid-column: 1;
    grid-row: 4;
  }
  .p-post-schedule__year {
    grid-column: 2;
    grid-row: 4;
  }
  .p-post-schedule__name {
    grid-column: 3;
    grid-row: 4;
  }
}
/**
 * job listings
 */
.p-post-job-listings {
  --post-shell-width: 120rem;
}
.p-post-job-listings__filter {
  display: flex;
  flex-direction: column;
  font-weight: 600;
}
.p-post-job-listings__filter-button {
  color: var(--filter-color-active, var(--color-recruit-common-gray));
}
.p-post-job-listings__filter-button.is-active {
  --filter-color-active: var(--color-primary);
}
.p-post-job-listings__list {
  display: grid;
}
.p-post-job-listings__link {
  display: grid;
  grid-template-columns: 1fr var(--job-listings-icon-width);
  align-items: center;
  border: var(--recruit-border-style);
  border-radius: 0.8rem;
  background-color: var(--color-white);
}
.p-post-job-listings__link::after {
  content: "";
  width: var(--job-listings-icon-width);
  border-left: var(--recruit-border-style);
  background-image: var(--icon-recruit-link-arrow-path);
  background-repeat: no-repeat;
  background-position: center right;
}
.p-post-job-listings__thumbnail {
  border-radius: 0.4rem;
  overflow: hidden;
}
.p-post-job-listings__description {
  font-weight: 600;
}
.p-post-job-listings__categories {
  color: var(--color-primary);
}
.p-post-job-listings__sub-title {
  color: var(--color-recruit-common-gray);
}

/* --- for small viewport --- */
@media (max-width: 767px) {
  .p-post-job-listings {
    -webkit-padding-after: 8rem;
            padding-block-end: 8rem;
  }
  .p-post-job-listings__container {
    row-gap: 4rem;
  }
  .p-post-job-listings__list {
    grid-template-columns: 100%;
    row-gap: 1.2rem;
  }
  .p-post-job-listings__link {
    --job-listings-icon-width: 4.4rem;
    -moz-column-gap: 1.2rem;
         column-gap: 1.2rem;
    padding-block: 1.4rem;
    padding-inline: 2rem;
  }
  .p-post-job-listings__link::after {
    height: 5rem;
    background-size: 2.4rem;
  }
  .p-post-job-listings__categories {
    font-size: 1.2rem;
  }
  .p-post-job-listings__sub-title {
    -webkit-margin-before: 0.8rem;
            margin-block-start: 0.8rem;
    font-size: 1.2rem;
  }
  .p-post-job-listings__headline {
    -webkit-margin-before: 0.4rem;
            margin-block-start: 0.4rem;
    font-size: 1.8rem;
  }
}
/* --- for large viewport --- */
@media (min-width: 768px) {
  .p-post-job-listings {
    -webkit-padding-after: 15rem;
            padding-block-end: 15rem;
  }
  .p-post-job-listings__list {
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 2rem;
         column-gap: 2rem;
    row-gap: 4rem;
  }
  .p-post-job-listings__link {
    --job-listings-icon-width: 8rem;
    -moz-column-gap: 4rem;
         column-gap: 4rem;
    padding-block: 2.8rem;
    padding-inline: 4rem;
  }
  .p-post-job-listings__link::after {
    height: 8.4rem;
    background-size: 4rem;
  }
  .p-post-job-listings__categories {
    font-size: 1.6rem;
  }
  .p-post-job-listings__sub-title {
    -webkit-margin-before: 2.4rem;
            margin-block-start: 2.4rem;
    font-size: 1.6rem;
  }
  .p-post-job-listings__headline {
    -webkit-margin-before: 1.2rem;
            margin-block-start: 1.2rem;
    font-size: 2.8rem;
  }
}
/**
 * faq
 */
.p-recruit-faq {
  background-color: var(--color-background-recruit);
}
/*# sourceMappingURL=recruit-archive.css.map */