@charset "UTF-8";
@media (min-width: 769px) {
  .page_lead {
    margin-bottom: clamp(0px, 5.856515373352855vw, 80px);
  }
}
@media (max-width: 768px) {
  .page_lead {
    margin-bottom: clamp(0px, 20.51282051282051vw, 80px);
  }
}
@media (min-width: 769px) {
  .page_firstview_section {
    margin-bottom: clamp(0px, 7.320644216691069vw, 100px);
  }
}
@media (max-width: 768px) {
  .page_firstview_section {
    margin-bottom: clamp(0px, 20.51282051282051vw, 80px);
  }
}
@media (min-width: 769px) {
  .sar {
    margin-bottom: clamp(0px, 3.660322108345535vw, 50px);
  }
  .sar_lead {
    font-size: clamp(0rem, 1.171303074670571vw, 1rem);
    line-height: clamp(0rem, 1.903367496339678vw, 1.625rem);
    margin-bottom: clamp(0px, 4.685212298682284vw, 64px);
  }
}
@media (max-width: 768px) {
  .sar {
    margin-bottom: clamp(0px, 20.51282051282051vw, 80px);
  }
  .sar_lead {
    font-size: clamp(0rem, 3.846153846153846vw, 0.9375rem);
    line-height: clamp(0rem, 6.666666666666667vw, 1.625rem);
    margin-bottom: clamp(0px, 8.974358974358974vw, 35px);
  }
}
@media (min-width: 769px) {
  .job_type {
    margin-bottom: clamp(0px, 3.660322108345535vw, 50px);
  }
  .job_type_lead {
    font-size: clamp(0rem, 1.171303074670571vw, 1rem);
    line-height: clamp(0rem, 1.903367496339678vw, 1.625rem);
    margin-bottom: clamp(0px, 4.685212298682284vw, 64px);
  }
}
@media (max-width: 768px) {
  .job_type {
    margin-bottom: clamp(0px, 20.51282051282051vw, 80px);
  }
  .job_type_lead {
    font-size: clamp(0rem, 3.846153846153846vw, 0.9375rem);
    line-height: clamp(0rem, 6.666666666666667vw, 1.625rem);
    margin-bottom: clamp(0px, 8.974358974358974vw, 35px);
  }
}
.jobType {
  border: 1px solid var(--thmClr);
  background-color: #fff;
  --tdu: 0.3s;
}
.jobType_tsukuru {
  --thmClr: #c91212;
  --bgClr: #fdf4f5;
}
.jobType_sasaeru {
  --thmClr: var(--green);
  --bgClr: #f7f7f7;
}
.jobType_todokeru {
  --thmClr: var(--yellow);
  --bgClr: #fdfdf9;
}
.jobType_title {
  color: var(--thmClr);
  display: -webkit-box;
  display: -moz-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: box;
  display: flex;
}
.jobType_title_main {
  font-family: var(--serif);
  font-weight: 700;
  border-right: 1px solid;
}
.jobType_title_sub {
  font-family: var(--ja_b);
  font-weight: 700;
}
.jobType_lead {
  cursor: pointer;
}
.jobType_lead:hover .jobType_button {
  rotate: 90deg;
}
.jobType_button {
  display: block;
  position: relative;
  background-color: var(--thmClr);
  color: #fff;
  border-radius: 50%;
  aspect-ratio: 1/1;
  -webkit-transition-duration: var(--tdu);
  -moz-transition-duration: var(--tdu);
  -o-transition-duration: var(--tdu);
  -ms-transition-duration: var(--tdu);
  transition-duration: var(--tdu);
  -webkit-transition-property: rotate;
  -moz-transition-property: rotate;
  -o-transition-property: rotate;
  -ms-transition-property: rotate;
  transition-property: rotate;
  pointer-events: none;
}
.jobType_button:before,
.jobType_button:after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  width: 44.44444444444444%;
  height: 1px;
  border-top: 1px solid;
  -webkit-transition-duration: var(--tdu);
  -moz-transition-duration: var(--tdu);
  -o-transition-duration: var(--tdu);
  -ms-transition-duration: var(--tdu);
  transition-duration: var(--tdu);
  -webkit-transition-property: rotate, color;
  -moz-transition-property: rotate, color;
  -o-transition-property: rotate, color;
  -ms-transition-property: rotate, color;
  transition-property: rotate, color;
}
.jobType_button:after {
  rotate: 90deg;
}
.jobType_detail {
  display: grid;
  grid-template-rows: 0fr;
  visibility: hidden;
  -webkit-transition-property: grid-template-rows, visibility;
  -moz-transition-property: grid-template-rows, visibility;
  -o-transition-property: grid-template-rows, visibility;
  -ms-transition-property: grid-template-rows, visibility;
  transition-property: grid-template-rows, visibility;
  -webkit-transition-duration: var(--tdu);
  -moz-transition-duration: var(--tdu);
  -o-transition-duration: var(--tdu);
  -ms-transition-duration: var(--tdu);
  transition-duration: var(--tdu);
}
.jobType_detail_hider {
  overflow: hidden;
}
.jobType_detail_content {
  position: relative;
}
.jobType_detail_content:before {
  content: "";
  display: block;
  position: absolute;
  height: 0;
  inset: 0 0 auto;
  margin: auto;
  border-top: 1px solid #d0d0d0;
}
.jobType_detail_list_title {
  position: relative;
  padding-left: 1.5em;
  font-family: var(--ja_b);
  font-weight: 700;
}
.jobType_detail_list_title:before {
  content: "";
  display: block;
  width: 0.25em;
  height: 0.25em;
  position: absolute;
  border-radius: 50%;
  inset: 0 auto 0 0.25em;
  margin: auto;
  background-color: var(--useored);
}
.jobType_detail_list_item {
  background-color: var(--bgClr);
}
.jobType_detail_list_item_title {
  font-family: var(--ja_b);
  font-weight: 700;
}
.jobType_detail_list_item_icon img {
  margin-inline: auto;
}
.jobType:has(.jobType_button.opened) .jobType_button,
.jobType:has(.jobType_button.opened) .jobType_button:after {
  rotate: 0deg;
}
.jobType:has(.jobType_button.opened) .jobType_detail {
  grid-template-rows: 1fr;
  visibility: visible;
}
@media (min-width: 769px) {
  .jobType {
    border-radius: clamp(0px, 1.171303074670571vw, 16px);
  }
  .jobType +.jobType {
    margin-top: clamp(0px, 1.464128843338214vw, 20px);
  }
  .jobType_lead {
    padding: clamp(0px, 2.196193265007321vw, 30px) clamp(0px, 2.928257686676428vw, 40px);
  }
  .jobType_lead_inner {
    position: relative;
    padding-bottom: clamp(0px, 0.732064421669107vw, 10px);
  }
  .jobType_lead_text {
    font-size: clamp(0rem, 1.171303074670571vw, 1rem);
    line-height: clamp(0rem, 1.903367496339678vw, 1.625rem);
  }
  .jobType_title {
    -webkit-box-align: end;
    -moz-box-align: end;
    -o-box-align: end;
    -ms-flex-align: end;
    -webkit-align-items: flex-end;
    align-items: flex-end;
    margin-bottom: clamp(0px, 1.09809663250366vw, 15px);
  }
  .jobType_title_main {
    font-size: clamp(0rem, 2.196193265007321vw, 1.875rem);
    padding-right: 0.75em;
    margin-right: 0.75em;
  }
  .jobType_title_sub {
    font-size: clamp(0rem, 1.171303074670571vw, 1rem);
  }
  .jobType_button {
    width: clamp(0px, 2.928257686676428vw, 40px);
    position: absolute;
    inset: 50% 0 auto auto;
    translate: 0 -50%;
    margin: auto;
  }
  .jobType_detail_inner {
    padding: clamp(0px, 2.196193265007321vw, 30px) clamp(0px, 2.928257686676428vw, 40px) clamp(0px, 2.928257686676428vw, 40px);
  }
  .jobType_detail_content:before {
    margin-top: clamp(-30px, -2.196193265007321vw, 0px);
  }
  .jobType_detail_list {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -o-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
  }
  .jobType_detail_list:before,
  .jobType_detail_list:after {
    content: "";
    width: calc((294 / 1206) * 100%);
    -webkit-box-ordinal-group: 1;
    -moz-box-ordinal-group: 1;
    -o-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
  }
  .jobType_detail_list_container +.jobType_detail_list_container {
    margin-top: clamp(0px, 2.196193265007321vw, 30px);
  }
  .jobType_detail_list_title {
    margin-bottom: clamp(0px, 1.464128843338214vw, 20px);
  }
  .jobType_detail_list_item {
    width: calc((294 / 1206) * 100%);
    border-radius: clamp(0px, 1.171303074670571vw, 16px);
    padding: clamp(0px, 1.464128843338214vw, 20px) clamp(0px, 1.464128843338214vw, 20px) clamp(0px, 2.196193265007321vw, 30px);
  }
  .jobType_detail_list_item:nth-of-type(n+5) {
    margin-top: clamp(0px, 0.732064421669107vw, 10px);
  }
  .jobType_detail_list_item_title,
  .jobType_detail_list_item_icon {
    margin-bottom: clamp(0px, 1.171303074670571vw, 16px);
  }
  .jobType_detail_list_item_title {
    font-size: clamp(0rem, 1.171303074670571vw, 1rem);
  }
  .jobType_detail_list_item_icon img {
    height: clamp(0px, 5.27086383601757vw, 72px);
  }
  .jobType_detail_list_item_text {
    font-size: clamp(0rem, 1.171303074670571vw, 1rem);
    line-height: clamp(0rem, 1.756954612005857vw, 1.5rem);
  }
}
@media (max-width: 768px) {
  .jobType {
    border-radius: clamp(0px, 4.102564102564102vw, 16px);
  }
  .jobType +.jobType {
    margin-top: clamp(0px, 5.128205128205128vw, 20px);
  }
  .jobType_lead {
    padding: clamp(0px, 8.974358974358974vw, 35px) clamp(0px, 7.692307692307693vw, 30px) clamp(0px, 6.41025641025641vw, 25px);
  }
  .jobType_lead_inner {
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: box;
    display: flex;
    -webkit-box-align: center;
    -moz-box-align: center;
    -o-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -o-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-box-lines: multiple;
    -moz-box-lines: multiple;
    -o-box-lines: multiple;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .jobType_lead_text {
    font-size: clamp(0rem, 4.102564102564102vw, 1rem);
    line-height: clamp(0rem, 6.666666666666667vw, 1.625rem);
    margin-top: clamp(0px, 6.41025641025641vw, 25px);
    width: 100%;
    -webkit-box-ordinal-group: 3;
    -moz-box-ordinal-group: 3;
    -o-box-ordinal-group: 3;
    -ms-flex-order: 3;
    -webkit-order: 3;
    order: 3;
  }
  .jobType_title {
    -webkit-box-align: center;
    -moz-box-align: center;
    -o-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -webkit-box-ordinal-group: 1;
    -moz-box-ordinal-group: 1;
    -o-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    --ls: 0;
  }
  .jobType_title_main {
    font-size: clamp(0rem, 5.641025641025641vw, 1.375rem);
    line-height: clamp(0rem, 7.179487179487179vw, 1.75rem);
    padding-right: 0.5em;
    margin-right: 0.5em;
  }
  .jobType_title_sub {
    font-size: clamp(0rem, 3.076923076923077vw, 0.75rem);
    line-height: clamp(0rem, 4.102564102564102vw, 1rem);
  }
  .jobType_button {
    width: clamp(0px, 5.128205128205128vw, 20px);
    -webkit-box-ordinal-group: 2;
    -moz-box-ordinal-group: 2;
    -o-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
  }
  .jobType_detail_inner {
    padding: clamp(0px, 7.692307692307693vw, 30px) clamp(0px, 7.692307692307693vw, 30px) clamp(0px, 10.256410256410255vw, 40px);
  }
  .jobType_detail_content:before {
    margin-top: clamp(-30px, -7.692307692307693vw, 0px);
  }
  .jobType_detail_list_container +.jobType_detail_list_container {
    margin-top: clamp(0px, 7.692307692307693vw, 30px);
  }
  .jobType_detail_list_title {
    margin-bottom: clamp(0px, 5.128205128205128vw, 20px);
  }
  .jobType_detail_list_item {
    border-radius: clamp(0px, 4.102564102564102vw, 16px);
    padding: clamp(0px, 5.128205128205128vw, 20px) clamp(0px, 5.128205128205128vw, 20px) clamp(0px, 7.692307692307693vw, 30px);
  }
  .jobType_detail_list_item +.jobType_detail_list_item {
    margin-top: clamp(0px, 2.564102564102564vw, 10px);
  }
  .jobType_detail_list_item_title,
  .jobType_detail_list_item_icon {
    margin-bottom: clamp(0px, 5.128205128205128vw, 20px);
  }
  .jobType_detail_list_item_title {
    font-size: clamp(0rem, 4.102564102564102vw, 1rem);
  }
  .jobType_detail_list_item_icon img {
    height: clamp(0px, 18.461538461538463vw, 72px);
  }
  .jobType_detail_list_item_text {
    font-size: clamp(0rem, 3.846153846153846vw, 0.9375rem);
    line-height: clamp(0rem, 6.153846153846154vw, 1.5rem);
  }
}
