@charset "UTF-8";
.grid-stack {
  position: relative;
}
.grid-stack-rtl {
  direction: ltr;
}
.grid-stack-rtl > .grid-stack-item {
  direction: rtl;
}
.grid-stack-placeholder > .placeholder-content {
  background-color: rgba(0, 0, 0, 0.1);
  margin: 0;
  position: absolute;
  width: auto;
  z-index: 0 !important;
}
.grid-stack > .grid-stack-item {
  position: absolute;
  padding: 0;
  top: 0;
  left: 0;
  width: var(--gs-column-width);
  height: var(--gs-cell-height);
}
.grid-stack > .grid-stack-item > .grid-stack-item-content {
  margin: 0;
  position: absolute;
  width: auto;
  overflow-x: hidden;
  overflow-y: auto;
}
.grid-stack
  > .grid-stack-item.size-to-content:not(.size-to-content-max)
  > .grid-stack-item-content {
  overflow-y: hidden;
}
.grid-stack > .grid-stack-item > .grid-stack-item-content,
.grid-stack > .grid-stack-placeholder > .placeholder-content {
  top: var(--gs-item-margin-top);
  right: var(--gs-item-margin-right);
  bottom: var(--gs-item-margin-bottom);
  left: var(--gs-item-margin-left);
}
.grid-stack-item > .ui-resizable-handle {
  position: absolute;
  font-size: 0.1px;
  display: block;
  touch-action: none;
}
.grid-stack-item.ui-resizable-autohide > .ui-resizable-handle,
.grid-stack-item.ui-resizable-disabled > .ui-resizable-handle {
  display: none;
}
.grid-stack-item > .ui-resizable-ne,
.grid-stack-item > .ui-resizable-nw,
.grid-stack-item > .ui-resizable-se,
.grid-stack-item > .ui-resizable-sw {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" stroke="%23666" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" viewBox="0 0 20 20"><path d="m10 3 2 2H8l2-2v14l-2-2h4l-2 2"/></svg>');
  background-repeat: no-repeat;
  background-position: center;
}
.grid-stack-item > .ui-resizable-ne {
  transform: rotate(45deg);
}
.grid-stack-item > .ui-resizable-sw {
  transform: rotate(45deg);
}
.grid-stack-item > .ui-resizable-nw {
  transform: rotate(-45deg);
}
.grid-stack-item > .ui-resizable-se {
  transform: rotate(-45deg);
}
.grid-stack-item > .ui-resizable-nw {
  cursor: nw-resize;
  width: 20px;
  height: 20px;
  top: var(--gs-item-margin-top);
  left: var(--gs-item-margin-left);
}
.grid-stack-item > .ui-resizable-n {
  cursor: n-resize;
  height: 10px;
  top: var(--gs-item-margin-top);
  left: 25px;
  right: 25px;
}
.grid-stack-item > .ui-resizable-ne {
  cursor: ne-resize;
  width: 20px;
  height: 20px;
  top: var(--gs-item-margin-top);
  right: var(--gs-item-margin-right);
}
.grid-stack-item > .ui-resizable-e {
  cursor: e-resize;
  width: 10px;
  top: 15px;
  bottom: 15px;
  right: var(--gs-item-margin-right);
}
.grid-stack-item > .ui-resizable-se {
  cursor: se-resize;
  width: 20px;
  height: 20px;
  bottom: var(--gs-item-margin-bottom);
  right: var(--gs-item-margin-right);
}
.grid-stack-item > .ui-resizable-s {
  cursor: s-resize;
  height: 10px;
  left: 25px;
  bottom: var(--gs-item-margin-bottom);
  right: 25px;
}
.grid-stack-item > .ui-resizable-sw {
  cursor: sw-resize;
  width: 20px;
  height: 20px;
  bottom: var(--gs-item-margin-bottom);
  left: var(--gs-item-margin-left);
}
.grid-stack-item > .ui-resizable-w {
  cursor: w-resize;
  width: 10px;
  top: 15px;
  bottom: 15px;
  left: var(--gs-item-margin-left);
}
.grid-stack-item.ui-draggable-dragging > .ui-resizable-handle {
  display: none !important;
}
.grid-stack-item.ui-draggable-dragging {
  will-change: left, top;
}
.grid-stack-item.ui-resizable-resizing {
  will-change: width, height;
}
.ui-draggable-dragging,
.ui-resizable-resizing {
  z-index: 10000;
}
.ui-draggable-dragging > .grid-stack-item-content,
.ui-resizable-resizing > .grid-stack-item-content {
  box-shadow: 1px 4px 6px rgba(0, 0, 0, 0.2);
  opacity: 0.8;
}
.grid-stack-animate,
.grid-stack-animate .grid-stack-item {
  transition:
    left 0.3s,
    top 0.3s,
    height 0.3s,
    width 0.3s;
}
.grid-stack-animate .grid-stack-item.grid-stack-placeholder,
.grid-stack-animate .grid-stack-item.ui-draggable-dragging,
.grid-stack-animate .grid-stack-item.ui-resizable-resizing {
  transition:
    left 0s,
    top 0s,
    height 0s,
    width 0s;
}
.grid-stack > .grid-stack-item[gs-y='0'] {
  top: 0;
}
.grid-stack > .grid-stack-item[gs-x='0'] {
  left: 0;
}
.breadcrumb {
  position: absolute;
  top: 78px;
  left: 0;
  z-index: var(--z-base);
  width: 100%;
  padding: 0 calc(12 * var(--px)) 10px;
  overflow-x: auto;
}
.breadcrumb-list {
  display: flex;
  gap: calc(8 * var(--px));
  width: -moz-fit-content;
  width: fit-content;
  color: var(--color-blue);
}
.breadcrumb-list-item {
  display: flex;
  flex-shrink: 0;
  gap: calc(8 * var(--px));
  align-items: center;
  font-size: calc(0.625 * var(--rem));
  font-weight: 500;
  line-height: 1.3;
  pointer-events: auto;
}
.breadcrumb-list-item:not(:first-child)::before {
  content: '／';
}
.breadcrumb-list-item:last-child {
  padding-right: calc(12 * var(--px));
}
.breadcrumb-list-link-text {
  display: inline-block;
}
.breadcrumb-list-arrow {
  width: calc(9 * var(--px));
  height: calc(12 * var(--px));
}

@media screen and (min-width: 960px) {
  .breadcrumb {
    top: calc(108 * var(--px));
    width: 58.57vw;
    padding: 0 0 0 calc(52 * var(--px));
  }
  .breadcrumb-list {
    flex-wrap: wrap;
    background-color: transparent;
  }
  .breadcrumb-list-item {
    font-size: calc(0.8125 * var(--rem));
  }
  .breadcrumb-list-link-text {
    padding-bottom: 1px;
  }
}
.common-arrow {
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: var(--color-blue);
  border-radius: 9999px;
}
.common-arrow-inner {
  display: flex;
  justify-content: flex-end;
  width: 100%;
  height: 100%;
}
.common-arrow-item {
  position: relative;
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.common-arrow-img {
  width: calc(12 * var(--px));
  height: calc(7 * var(--px));
}
.common-arrow.is-blank .common-arrow-inner {
  display: grid;
  grid-template-rows: 1fr;
  grid-template-columns: 1fr;
}
.common-arrow.is-blank .common-arrow-item {
  grid-row: 1;
  grid-column: 1;
}
.common-arrow.is-blank .common-arrow-item:nth-child(2) {
  transform: translate(-50%, 100%);
}
.common-arrow.is-blank .common-arrow-item img {
  transform: rotate(-45deg);
}

.head {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: calc(1.75 * var(--rem));
  gap: calc(1.75 * var(--rem));
  padding: calc(120 * var(--px)) 0 0;
}
.head-title {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: calc(0.8125 * var(--rem));
  gap: calc(0.8125 * var(--rem));
  padding: 0 calc(16 * var(--px));
  color: var(--color-blue);
}
.head-title-sub {
  margin-left: calc(-11 * var(--px));
  font-family: var(--font-oswald);
  font-size: calc(1 * var(--rem));
  font-weight: 400;
  line-height: 1.24;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  opacity: var(--init-opacity);
}
.head-title-main {
  display: flex;
  flex-direction: column;
  font-size: calc(2.25 * var(--rem));
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: 0.09em;
  opacity: var(--init-opacity);
}
.head-content {
  padding: 0 0 calc(72 * var(--px)) calc(16 * var(--px));
  margin-top: 28.75vw;
  background:
    linear-gradient(239deg, #00968d 40.24%, #22b1a8 63.87%, #79dcd6 100.17%),
    #0c2c84;
}
.head-mv {
  width: 100%;
  height: 105vw;
  margin-top: -28.75vw;
  overflow: hidden;
  opacity: var(--init-opacity);
  clip-path: inset(10px 0 10px 10px round 80px 0 0 80px);
}
@media (scripting: none) {
  .head-mv {
    clip-path: inset(0 0 0 0 round 80px 0 0 80px);
  }
}
.head-mv-image {
  transform: scale(1.1);
}
@media (scripting: none) {
  .head-mv-image {
    transform: scale(1);
  }
}
.head-text {
  padding-right: calc(14 * var(--px));
  margin-top: calc(6.25 * var(--rem));
  font-size: calc(1.125 * var(--rem));
  font-weight: 500;
  line-height: 2;
  color: var(--color-white);
  letter-spacing: 0.08em;
}
.head-note {
  margin-top: calc(1 * var(--rem));
  font-size: calc(0.75 * var(--rem));
  font-weight: 400;
  line-height: 1.7;
  color: var(--color-white);
  letter-spacing: 0.04em;
}
.head-job {
  margin-top: calc(6.25 * var(--rem));
}
.head-job-guide {
  font-size: calc(0.875 * var(--rem));
  font-weight: 400;
  line-height: 1.6;
  color: var(--color-white);
  letter-spacing: 0.04em;
}
.head-job-scroll {
  width: 100%;
  margin-top: calc(0.75 * var(--rem));
  overflow-x: scroll;
}
.head-job-scroll-inner {
  width: -moz-max-content;
  width: max-content;
  padding-right: calc(16 * var(--px));
}
.head-job-table {
  overflow: hidden;
  border-radius: 0 0 calc(16 * var(--px)) calc(16 * var(--px));
}
.head-job-table-row {
  display: grid;
  grid-template-columns: repeat(6, calc(205 * var(--px)));
}
.head-job-table-category {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: calc(1.0625 * var(--rem)) calc(20 * var(--px));
  font-size: calc(1 * var(--rem));
  font-weight: 600;
  line-height: 1.1;
  color: var(--color-white);
  letter-spacing: 0.08em;
  background: linear-gradient(90deg, #005a96 0%, #0079ca 100%);
}
.head-job-table-category::before {
  position: absolute;
  top: 0;
  right: calc(-12 * var(--px));
  z-index: 1;
  width: calc(12 * var(--px));
  height: 100%;
  content: '';
  background-color: #0079ca;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.head-job-table-data {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(1 * var(--rem));
  min-height: calc(130 * var(--px));
  padding: calc(1.125 * var(--rem)) calc(24 * var(--px))
    calc(1.3125 * var(--rem));
  background-color: var(--color-white);
}
.head-job-table-data::before {
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  content: '';
  background-image: linear-gradient(to bottom, #0079ca 4px, transparent 1.5px);
  background-repeat: repeat-y;
  background-position: left top;
  background-size: 1px 5.5px;
  opacity: 0.3;
}
.head-job-table-data-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 calc(6 * var(--px)) calc(0.125 * var(--rem)) calc(8 * var(--px));
  border-bottom: solid 1px #d0d0d0;
}
.head-job-table-data-link-text {
  font-size: calc(0.9375 * var(--rem));
  font-weight: 500;
  line-height: 1.5;
}
.head-job-table-data-link-arrow {
  width: calc(11 * var(--px));
  height: calc(10 * var(--px));
}
.head-job-corporate {
  padding-right: calc(16 * var(--px));
  margin-top: calc(24 * var(--px));
}
.head-job-corporate-title {
  padding: calc(1.625 * var(--rem)) calc(24 * var(--px));
  font-size: calc(1 * var(--rem));
  font-weight: 600;
  line-height: 1.1;
  color: var(--color-white);
  letter-spacing: 0.08em;
  background:
    linear-gradient(180deg, #005a96 0%, #0079ca 100%),
    linear-gradient(90deg, #005a96 0%, #0079ca 100%);
}
.head-job-corporate-body {
  padding: calc(1 * var(--rem)) calc(24 * var(--px));
  background-color: var(--color-white);
  border-radius: 0 0 calc(16 * var(--px)) calc(16 * var(--px));
}
.head-job-corporate-description {
  font-size: calc(1 * var(--rem));
  font-weight: 600;
  line-height: 1.6;
}
.head-job-corporate-detail {
  display: flex;
  flex-direction: column;
  gap: calc(0.375 * var(--rem));
  margin-top: calc(0.5 * var(--rem));
}
.head-job-corporate-detail-link {
  --underline-width: 1px;
  display: flex;
  gap: calc(16 * var(--px));
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
  color: var(--color-blue);
}
.head-job-corporate-detail-link-text {
  font-size: calc(1 * var(--rem));
  font-weight: 700;
  line-height: 1.5;
}
.head-job-corporate-detail-link-arrow {
  width: calc(63 * var(--px));
  height: calc(23 * var(--px));
}

.job {
  margin-top: calc(4.5 * var(--rem));
}
.job-inner {
  padding: 0 calc(16 * var(--px)) calc(64 * var(--px));
}
.job-select-inner {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: calc(1.25 * var(--rem));
  gap: calc(1.25 * var(--rem));
}
.job-select-headline {
  margin-left: calc(-6 * var(--px));
  font-size: calc(1 * var(--rem));
  font-weight: 600;
  line-height: 1.7;
  color: var(--color-blue);
  letter-spacing: 0.04em;
}
.job-select-list {
  display: flex;
  flex-wrap: wrap;
  row-gap: calc(18 * var(--px));
  -moz-column-gap: calc(8 * var(--px));
  column-gap: calc(8 * var(--px));
}
.job-select-list-button {
  position: relative;
  padding: calc(0.0625 * var(--rem)) calc(10 * var(--px))
    calc(0.1875 * var(--rem));
  overflow: hidden;
  background-color: var(--color-white);
  border-radius: 9999px;
}
.job-select-list-button::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  background: var(--_active-color);
  opacity: 0;
}
.job-select-list-button[data-course='security'] {
  --_active-color: linear-gradient(217deg, #0049dc 43.36%, #6381ed 100%);
  --_hover-color: #0049dc;
}
.job-select-list-button[data-course='corporate'] {
  --_active-color: linear-gradient(217deg, #0167ff 42.98%, #418bf9 100.64%);
  --_hover-color: #0167ff;
}
.job-select-list-button[data-course='development'] {
  --_active-color: linear-gradient(217deg, #006eb7 43.36%, #3d93e3 100%);
  --_hover-color: #006eb7;
}
.job-select-list-button[data-course='facility'] {
  --_active-color: linear-gradient(217deg, #139dc7 42.98%, #43bcd5 100.64%);
  --_hover-color: #139dc7;
}
.job-select-list-button[aria-pressed='true'] {
  color: var(--color-white);
}
.job-select-list-button[aria-pressed='true']::before {
  opacity: 1;
}
.job-select-list-button-text {
  position: relative;
  z-index: 1;
  font-size: calc(0.875 * var(--rem));
  font-weight: 600;
  line-height: 1.5;
}
.job-select-comment {
  margin-top: calc(1.125 * var(--rem));
  font-size: calc(0.875 * var(--rem));
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.04em;
}
.job-select-comment-link {
  display: inline;
}
.job-list {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: calc(24 * var(--px));
  gap: calc(24 * var(--px));
}
.job-list-item[data-course='security'] {
  --_course-color: linear-gradient(217deg, #0049dc 43.36%, #6381ed 100%);
}
.job-list-item[data-course='corporate'] {
  --_course-color: linear-gradient(217deg, #0167ff 42.98%, #418bf9 100.64%);
}
.job-list-item[data-course='development'] {
  --_course-color: linear-gradient(217deg, #006eb7 43.36%, #3d93e3 100%);
}
.job-list-item[data-course='facility'] {
  --_course-color: linear-gradient(217deg, #139dc7 42.98%, #43bcd5 100.64%);
}
.job-list-item.is-hidden {
  display: none;
}
.job-list-item-inner {
  position: relative;
  padding: calc(3.5 * var(--rem)) calc(16 * var(--px)) calc(1.5 * var(--rem));
  overflow: hidden;
  background-color: var(--color-white);
  border-radius: calc(8 * var(--px));
}
.job-list-item-course {
  position: absolute;
  top: 0;
  left: 0;
  padding: calc(0.5 * var(--rem)) calc(14 * var(--px)) calc(0.625 * var(--rem));
  font-size: calc(0.875 * var(--rem));
  font-weight: 600;
  line-height: 1.5;
  color: var(--color-white);
  background: var(--_course-color);
  border-radius: 0 0 calc(12 * var(--px));
}
.job-list-item-name {
  display: flex;
  align-items: baseline;
  font-family: var(--font-shippori-antique);
  font-size: calc(1.5 * var(--rem));
  font-weight: 400;
  line-height: 1.7;
  color: var(--color-blue);
  letter-spacing: 0.04em;
}
.job-list-item-name-sub {
  font-size: calc(1.125 * var(--rem));
}
.job-list-item-type-text {
  display: inline-block;
  font-size: calc(1 * var(--rem));
  font-weight: 600;
  line-height: 1.7;
  color: var(--color-blue);
  letter-spacing: 0.04em;
}
.job-list-item-type-text::before {
  content: '［';
}
.job-list-item-type-text::after {
  content: '］';
}
.job-list-item-type-text:not(:first-child) {
  margin-left: calc(-13 * var(--px));
}
.job-list-item-description {
  margin-top: calc(1 * var(--rem));
  font-size: calc(1 * var(--rem));
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.04em;
}
.job-list-item-schedule {
  margin-top: calc(1.5 * var(--rem));
}
.job-list-item-schedule-head {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: calc(0.625 * var(--rem)) calc(16 * var(--px));
  color: var(--color-white);
  background: linear-gradient(
    90deg,
    rgba(0, 90, 150, 0.9) 0%,
    rgba(0, 121, 202, 0.9) 100%
  );
}
.job-list-item-schedule-head::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #1b86ce;
  opacity: 0;
}
.job-list-item-schedule-head-inner {
  position: relative;
  z-index: 1;
  display: flex;
  gap: calc(8 * var(--px));
  align-items: center;
}
.job-list-item-schedule-head-clock {
  flex-shrink: 0;
  width: calc(16 * var(--px));
  height: calc(16 * var(--px));
}
.job-list-item-schedule-head-text {
  font-size: calc(0.9375 * var(--rem));
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.job-list-item-schedule-head-icon {
  position: relative;
  z-index: 1;
  width: calc(11 * var(--px));
  height: calc(10 * var(--px));
}
.job-list-item-schedule-head-icon::before,
.job-list-item-schedule-head-icon::after {
  position: absolute;
  top: calc(50% - 0.5px);
  left: calc(50% - 9 * var(--px) / 2);
  width: calc(9 * var(--px));
  height: 1px;
  content: '';
  background-color: currentcolor;
  transition: transform 0.4s var(--ease-out-quart);
}
.job-list-item-schedule-head-icon::after {
  transform: rotate(90deg);
}
.job-list-item-schedule-body {
  overflow: hidden;
}
.job-list-item-schedule-content {
  display: flex;
  flex-direction: column;
  gap: calc(1.125 * var(--rem));
  padding: calc(1.625 * var(--rem)) calc(41 * var(--px))
    calc(2.125 * var(--rem));
}
.job-list-item-schedule-block {
  display: flex;
  flex-direction: column;
  gap: calc(0.625 * var(--rem));
}
.job-list-item-schedule-block:not(:first-child) {
  position: relative;
  padding-top: calc(1 * var(--rem));
}
.job-list-item-schedule-block:not(:first-child)::before {
  position: absolute;
  top: 0;
  left: calc(-17 * var(--px));
  width: calc(100% + 34 * var(--px));
  height: 1px;
  content: '';
  background-color: #d0d0d0;
}
.job-list-item-schedule-type {
  margin-left: calc(-17 * var(--px));
  font-size: calc(0.9375 * var(--rem));
  font-weight: 600;
  letter-spacing: 0.04em;
}
.job-list-item-schedule-list {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: calc(1 * var(--rem));
}
.job-list-item-schedule-list::before {
  position: absolute;
  top: calc(14 * var(--px));
  left: calc(-14.5 * var(--px));
  width: 1px;
  height: calc(100% - 26 * var(--px));
  content: '';
  background-color: var(--color-blue);
}
.job-list-item-schedule-list-item {
  position: relative;
}
.job-list-item-schedule-list-item::before {
  position: absolute;
  top: calc(0.5 * var(--rem));
  left: calc(-17 * var(--px));
  width: calc(6 * var(--px));
  height: calc(6 * var(--px));
  content: '';
  background-color: var(--color-blue);
  border-radius: 50%;
}
.job-list-item-schedule-list-item-inner {
  display: grid;
  grid-template-columns: calc(2.625 * var(--rem)) 1fr;
  grid-gap: calc(15 * var(--px));
  gap: calc(15 * var(--px));
}
.job-list-item-schedule-list-item-time {
  margin-top: calc(0.1875 * var(--rem));
  font-size: calc(0.875 * var(--rem));
  font-weight: 600;
  line-height: 1;
  color: var(--color-blue);
  letter-spacing: 0.04em;
}
.job-list-item-schedule-list-item-task {
  font-size: calc(0.875 * var(--rem));
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
.job-list-item-schedule.is-open .job-list-item-schedule-head-icon {
  transform: rotate(90deg);
}
.job-list-item-schedule.is-open .job-list-item-schedule-head-icon::before {
  transform: rotate(90deg);
}
.job-list-item-interview {
  margin-top: calc(1.875 * var(--rem));
}
.job-list-item-interview-headline {
  display: flex;
  gap: calc(8 * var(--px));
  align-items: center;
}
.job-list-item-interview-headline-icon {
  flex-shrink: 0;
  width: calc(16 * var(--px));
  height: calc(16 * var(--px));
}
.job-list-item-interview-headline-text {
  font-size: calc(0.9375 * var(--rem));
  font-weight: 700;
  line-height: 1.5;
  color: var(--color-blue);
  letter-spacing: 0.04em;
}
.job-list-item-interview-body {
  display: flex;
  flex-direction: column;
  gap: calc(20 * var(--px));
  margin-top: calc(1.25 * var(--rem));
}
.job-list-item-interview-link {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-gap: calc(12 * var(--px));
  gap: calc(12 * var(--px));
  align-items: center;
}
.job-list-item-interview-link-image {
  width: calc(96 * var(--px));
  height: calc(69 * var(--px));
  overflow: hidden;
  border-radius: 9999px;
}
.job-list-item-interview-link-copy {
  font-size: calc(0.875 * var(--rem));
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.05em;
}
.job-list-item-recruitment {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  padding-right: calc(21 * var(--px));
  margin-top: calc(1.5 * var(--rem));
}
.job-list-item-recruitment-link {
  --underline-width: 1px;
  display: flex;
  gap: calc(16 * var(--px));
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
}
.job-list-item-recruitment-link-text {
  font-size: calc(1 * var(--rem));
  font-weight: 700;
  line-height: 1.5;
  color: var(--color-blue);
}
.job-list-item-recruitment-link-arrow {
  width: calc(63 * var(--px));
  height: calc(23 * var(--px));
}

@media screen and (min-width: 960px) {
  .head {
    display: grid;
    grid-template-rows: min-content;
    grid-template-columns: repeat(var(--grid-columns), 1fr);
    grid-gap: 0;
    gap: 0;
    grid-row-gap: calc(3.5625 * var(--rem));
    row-gap: calc(3.5625 * var(--rem));
    padding: calc(185 * var(--px)) 0 0;
  }
  .head-title {
    grid-column: 3/39;
    gap: calc(0.1875 * var(--rem));
    padding: 0;
  }
  .head-title-sub {
    margin-left: 0;
    font-weight: 500;
  }
  .head-title-main {
    padding-left: calc(14 * var(--px));
    font-size: calc(3 * var(--rem));
    line-height: 1.3;
    letter-spacing: 0.04em;
  }
  .head-content {
    display: grid;
    grid-template-rows: min-content;
    grid-template-columns: repeat(40, 1fr);
    grid-column: 1/41;
    padding: 0 0 calc(80 * var(--px));
    margin-top: 11.42vw;
  }
  .head-mv {
    grid-column: 2/40;
    height: 33.75vw;
    margin-top: -11.42vw;
    clip-path: inset(10px 10px round 80px);
  }
}
@media screen and (min-width: 960px) and (scripting: none) {
  .head-mv {
    clip-path: inset(0 0 round 80px);
  }
}
@media screen and (min-width: 960px) {
  .head-text {
    grid-column: 2/40;
    padding-right: 0;
    margin-top: calc(6.875 * var(--rem));
    font-size: calc(1.3125 * var(--rem));
    line-height: 1.8;
    text-align: center;
  }
  .head-note {
    grid-column: 2/40;
    margin-top: calc(1.5 * var(--rem));
    font-size: calc(0.875 * var(--rem));
    text-align: center;
  }
  .head-job {
    grid-column: 3/39;
    margin-top: calc(6.875 * var(--rem));
  }
  .head-job-scroll {
    margin-top: 0;
    overflow-x: auto;
  }
  .head-job-scroll-inner {
    width: 100%;
    padding-right: 0;
  }
  .head-job-table {
    width: 100%;
  }
  .head-job-table-row {
    grid-template-columns: repeat(6, 1fr);
  }
  .head-job-table-category {
    padding: calc(0.625 * var(--rem)) 1.46vw;
    font-size: calc(1.125 * var(--rem));
    line-height: 1.4;
    letter-spacing: 0.04em;
  }
  .head-job-table-data {
    padding: calc(1 * var(--rem)) 1.76vw calc(1.25 * var(--rem));
  }
  .head-job-table-data-link {
    padding: 0 calc(6 * var(--px)) calc(0.25 * var(--rem)) calc(8 * var(--px));
  }
  .head-job-corporate {
    padding-right: 0;
    margin-top: calc(40 * var(--px));
  }
  .head-job-corporate-title {
    padding: calc(1.375 * var(--rem)) calc(40 * var(--px));
    font-size: calc(1.125 * var(--rem));
    line-height: 1.4;
    letter-spacing: 0.04em;
  }
  .head-job-corporate-body {
    display: flex;
    gap: calc(24 * var(--px));
    justify-content: space-between;
    padding: calc(2 * var(--rem)) calc(34 * var(--px));
  }
  .head-job-corporate-description {
    font-size: calc(1.125 * var(--rem));
    line-height: 1.48;
    letter-spacing: 0.08em;
  }
  .head-job-corporate-detail {
    flex-direction: row;
    flex-wrap: wrap;
    row-gap: calc(0.375 * var(--rem));
    -moz-column-gap: calc(24 * var(--px));
    column-gap: calc(24 * var(--px));
    margin-top: 0;
  }
  .job {
    display: grid;
    grid-template-rows: min-content;
    grid-template-columns: repeat(var(--grid-columns), 1fr);
    margin-top: calc(6 * var(--rem));
  }
  .job-inner {
    grid-column: 3/39;
    padding: 0 0 calc(96 * var(--px));
  }
  .job-select-inner {
    grid-template-columns: calc(17.0625 * var(--rem)) 1fr;
    gap: calc(16 * var(--px));
  }
  .job-select-headline {
    margin-left: 0;
  }
  .job-select-list-button {
    padding: calc(0.0625 * var(--rem)) calc(16 * var(--px))
      calc(0.1875 * var(--rem));
  }
  .job-select-comment {
    margin-top: calc(0.75 * var(--rem));
  }
  .job-list {
    grid-template-columns: repeat(3, 28.62vw);
    row-gap: calc(64 * var(--px));
    -moz-column-gap: 1.46vw;
    column-gap: 1.46vw;
    justify-content: space-between;
  }
  .job-list-item {
    width: 100%;
    height: 100%;
  }
  .job-list-item-inner {
    height: 100%;
    padding: calc(4.5 * var(--rem)) 2.49vw calc(1.875 * var(--rem));
    border-radius: calc(16 * var(--px));
  }
  .job-list-item-course {
    padding: calc(0.5 * var(--rem)) calc(16 * var(--px))
      calc(0.625 * var(--rem));
    font-size: calc(1 * var(--rem));
    border-radius: 0 0 calc(16 * var(--px));
  }
  .job-list-item-about {
    min-height: calc(17.9375 * var(--rem));
  }
  .job-list-item-name {
    font-size: calc(1.75 * var(--rem));
    line-height: 1.5;
  }
  .job-list-item-name-sub {
    font-size: calc(1.25 * var(--rem));
  }
  .job-list-item-type {
    margin-top: calc(0.5 * var(--rem));
  }
  .job-list-item-type-text {
    line-height: 1.5;
    letter-spacing: 0;
  }
  .job-list-item-description {
    margin-top: calc(1.5 * var(--rem));
  }
  .job-list-item-schedule {
    margin-top: calc(1.3125 * var(--rem));
  }
  .job-list-item-interview-link {
    gap: calc(14 * var(--px));
  }
  .job-list-item-interview-link-image {
    width: calc(100 * var(--px));
    height: calc(70 * var(--px));
  }
  .job-list-item-recruitment {
    padding-right: 0;
    margin-top: calc(1.875 * var(--rem));
  }
}
@media (any-hover: hover) {
  .job-select-list-button:hover {
    outline: solid 2px var(--_hover-color);
  }
  .job-list-item-schedule-head::before {
    transition: opacity 0.4s var(--ease-out-quart);
  }
  .job-list-item-schedule-head-icon {
    transition: transform 0.4s var(--ease-out-quart);
  }
  .job-list-item-schedule-head:hover::before {
    opacity: 1;
  }
  .job-list-item-schedule-head:hover .job-list-item-schedule-head-icon {
    transform: rotate(90deg);
  }
  .job-list-item-interview-link .job-list-item-interview-link-image-inner {
    transition: transform 0.48s var(--ease-out-quart);
  }
  .job-list-item-interview-link:hover
    .job-list-item-interview-link-image-inner {
    transform: scale(1.08);
    transition-duration: 0.4s;
  }
}
