@charset "UTF-8";
/* ---------------

   トップページ

   --------------- */


/* #header
-------------------------------------------------- */



/* .content-container
-------------------------------------------------- */
.p-page-head {
  margin-top: 80px;
}
.-recruit.p-page-lead  {
  position: relative;
  z-index: 0;
}
.-recruit.p-page-lead::after {
  content: "RECRUIT";
  position: absolute;
  bottom: -30px;
  right: 0;
  font: 600 12rem 'Montserrat', cursive;
  color: #fefefe;
  z-index: -1;
  /*text-shadow: 1px 1px 0 #f7f7f7, -1px -1px 0 #f7f7f7,
               -1px 1px 0 #f7f7f7, 1px -1px 0 #f7f7f7,
               0px 1px 0 #f7f7f7,  0-1px 0 #f7f7f7,
               -1px 0 0 #f7f7f7, 1px 0 0 #f7f7f7;*/
}
.-bg.-recruit.p-page-lead {
  position: relative;
  z-index: 0;
  background: url(../../images/recruit_lead_bg.jpg) no-repeat 50% 100% / cover;
}
.p-page-lead {
  padding: clamp(56px, 2.591rem + 4.55vw, 96px) clamp(24px, 0.591rem + 4.55vw, 64px) clamp(96px, 4.545rem + 7.27vw, 160px);
}
.p-page-lead__title {
  position: relative;
  padding-top: 32px;
  margin-top: 64px;
}
.p-page-lead__title::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 80px;
  height: 2px;
  content: '';
  background: #1363df;
}
.p-page-lead__title span {
  display: inline-block;
}
.p-page-lead__text {
  margin-top: clamp(24px, 1.136rem + 1.82vw, 40px);
}
.p-recruit {
  padding-top: clamp(56px, 2.591rem + 4.55vw, 96px);
  margin: 0 clamp(24px, 0.591rem + 4.55vw, 64px);
}
.p-recruit__block {
  margin-bottom: clamp(64px, 2.636rem + 6.82vw, 124px);
}
.p-recruit__title {
  position: relative;
  padding-left: 24px;
}
.p-recruit__title::before {
  position: absolute;
  top: calc(50% - 6px);
  left: 0px;
  width: 12px;
  height: 12px;
  content: '';
  border-radius: 50%;
  background: #1363df;
}
.p-recruit-feature  {
   margin-top: clamp(32px, 1.455rem + 2.73vw, 56px);
}
.p-recruit__text,
.p-recruit-feature__text {
  margin-top: clamp(16px, 0.818rem + 0.91vw, 24px);
}
.p-recruit__text p + p {
  margin-top: .8em;
}
.p-recruit-feature__block:not(:first-of-type) {
  margin-top: clamp(32px, 1.636rem + 1.82vw, 48px);
}
.-requirements.c-table  {
   margin-top: clamp(24px, 1.318rem + 0.91vw, 32px);
}
.-requirements.c-table th {
  background-color: #f7f7f7;
  padding: 16px;
}
.-requirements.c-table td {
  padding: 24px 0 32px;
}
.p-recruit-feature__title::before,
.-requirements.c-table dt::before {
  width: 16px;
  height: 1px;
  content: '';
  background: #333;
  display: inline-block;
  vertical-align: 20%;
  margin-right: 8px;
}
.-requirements.c-table dd {
  margin-top: 8px;
}
.p-recruit-feature__text strong {
  display: block;
  margin-bottom: 16px;
  color: #1363df;
}
.-requirements.c-table dd + dt {
  margin-top: 24px;
}
.-requirements.c-table p + dl,
.-requirements.c-table ul + dl {
  margin-top: 16px;
}
.-requirements.c-table p + ul {
  margin-top: 8px;
}
@media screen and (min-width: 600px) {
.c-table th,.c-table td {
  padding: 32px;
  border-top: 1px solid #ccc;
}
.c-table th {
  border-top: 1px solid #333;
  width: 24%;
}
.-requirements.c-table th {
  background: none;
}
.-requirements.c-table th,
.-requirements.c-table td {
  padding: 24px 16px;
}
}
@media screen and (min-width: 960px) {
.-flex.p-page-lead {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-page-lead__title {
  margin-top: 0;
}
.p-page-lead__figure {
  flex-basis: 44%;
}
.p-page-lead__block {
  flex-basis: 50%;
}
.p-recruit {
  padding-top: clamp(80px, 3.545rem + 7.27vw, 144px);
}
.-requirements.c-table th,
.-requirements.c-table td {
  padding: 40px 16px;
}
}
@media screen and (max-width: 1199px) {
.l-sub {
  display: none;
}
}
@media screen and (min-width: 1200px) {
.p-page-lead {
  padding: clamp(56px, 2.591rem + 4.55vw, 96px) 10%;
}
.-flex.p-recruit-container {
  display: flex;
}
.p-recruit {
  order: 2;
  margin: 0 10% 0 0;
}
.p-recruit__title {
  padding-left: 32px;
}
.l-sub {
  order: 1;
  width: 240px;
  min-width: 240px;
  margin: 0 80px 0 10%;
}
.l-sub__inner {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  padding-top: clamp(80px, 3.545rem + 7.27vw, 144px);
  margin-bottom: clamp(80px, 3.545rem + 7.27vw, 144px);
}
.l-sub-nav__head {
  color: #1363df;
  font-weight: 700;
  margin-bottom: 40px;
}
.l-sub-nav__item {
  font-weight: 700;
  position: relative;
  padding-left: 24px;
}
.l-sub-nav__item:not(:first-of-type) {
  margin-top: 24px;
}
.l-sub-nav__item::before {
  position: absolute;
  top: 10px;
  left: 0;
  width: 8px;
  height: 8px;
  content: '';
  border-radius: 50%;
  background: #1363df;
}
.-child.l-sub-nav__list {
  margin-top: 4px;
}
.-child .l-sub-nav__item {
  font-size: 1.6rem;
  font-weight: 500;
  position: relative;
  padding: 8px 0;
}
.-child .l-sub-nav__item::before {
  position: absolute;
  top: 0;
  left: -21px;
  width: 1px;
  height: 100%;
  content: '';
  border-radius: none;
  background: #ccc none;
}
}