*,
::before,
::after {
  box-sizing: border-box;
}

.kv {
  background-repeat: no-repeat;
  background-position: 50% 0;
}
@media screen and (min-width: 769px) {
  .kv {
    display: flex;
    align-items: center;
    height: min(350px, 23.334vw);
    margin-top: 10rem;
    background-image: url(../img/mv.jpg);
    background-size: cover;
  }
}
@media screen and (max-width: 768px) {
  .kv {
    margin-top: 12rem;
    padding-top: 75rem;
    background-image: url(../img/sp/mv.jpg);
    background-size: contain;
  }
}

@media screen and (min-width: 769px) {
  .kv_content {
    width: min(1500px, 100vw);
    margin: 0 auto;
    padding-left: min(160px, 10.667vw);
  }
}
@media screen and (max-width: 768px) {
  .kv_content {
    display: flex;
    flex-direction: column;
    padding: 0 6rem;
  }
}

.kv_ttl {
  position: relative;
  display: flex;
  flex-direction: column;
  font-weight: 700;
  line-height: 1;
}
@media screen and (min-width: 769px) {
  .kv_ttl {
    font-size: min(51px, 3.4vw);
    padding-bottom: min(5px, 0.334vw);
  }
}
@media screen and (max-width: 768px) {
  .kv_ttl {
    font-size: 7rem;
    margin-left: 11.5rem;
    padding-bottom: 0.4rem;
  }
}
.kv_ttl::before {
  content: "";
  position: absolute;
  top: 0;
  height: 100%;
  background-color: #d90b18;
}
@media screen and (min-width: 769px) {
  .kv_ttl::before {
    left: min(-30px, -2vw);
    width: min(11px, 0.734vw);
  }
}
@media screen and (max-width: 768px) {
  .kv_ttl::before {
    left: -4.2rem;
    width: 1.5rem;
  }
}
.kv_ttl .en {
  fill: #d90b18;
}
@media screen and (min-width: 769px) {
  .kv_ttl .en {
    width: min(257px, 17.134vw);
    height: min(22px, 1.467vw);
    margin-top: min(15px, 1vw);
  }
}
@media screen and (max-width: 768px) {
  .kv_ttl .en {
    width: 41.6rem;
    height: 3.5rem;
    margin-top: 1.5rem;
  }
}

@media screen and (min-width: 769px) {
  .kv_txt {
    margin-top: min(25px, 1.667vw);
    letter-spacing: 0.1em;
    line-height: 1.778em;
    font-size: 1.8rem;
  }
  .kv_txt > p {
    line-height: inherit;
    font: inherit;
  }
  .kv_txt > p:first-of-type {
    margin-top: -0.388em;
  }
  .kv_txt > p:last-of-type {
    margin-bottom: -0.388em;
  }
}
@media screen and (max-width: 768px) {
  .kv_txt {
    margin-top: 5rem;
    line-height: 1.834em;
    font-size: 2.4rem;
  }
  .kv_txt > p {
    line-height: inherit;
    font: inherit;
  }
  .kv_txt > p:first-of-type {
    margin-top: -0.416em;
  }
  .kv_txt > p:last-of-type {
    margin-bottom: -0.416em;
  }
}

.sec_head {
  text-align: center;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .sec_head {
    margin-bottom: min(60px, 4vw);
    line-height: 1.5em;
    font-size: 3.2rem;
  }
  .sec_head > h2 {
    line-height: inherit;
    font: inherit;
  }
  .sec_head > h2:first-of-type {
    margin-top: -0.25em;
  }
  .sec_head > h2:last-of-type {
    margin-bottom: -0.25em;
  }
}
@media screen and (max-width: 768px) {
  .sec_head {
    margin-bottom: 5rem;
    line-height: 1.334em;
    font-size: 3.6rem;
  }
  .sec_head > h2 {
    line-height: inherit;
    font: inherit;
  }
  .sec_head > h2:first-of-type {
    margin-top: -0.166em;
  }
  .sec_head > h2:last-of-type {
    margin-bottom: -0.166em;
  }
}
.sec_head span {
  position: relative;
  display: inline-block;
}
@media screen and (min-width: 769px) {
  .sec_head span {
    padding: 0 min(5px, 0.334vw) min(18px, 1.2vw);
  }
}
@media screen and (max-width: 768px) {
  .sec_head span {
    padding: 0 1.2rem 1.8rem;
  }
}
.sec_head span::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  background: linear-gradient(135deg, rgb(0, 0, 0) 0%, rgb(0, 0, 0) 50%, rgb(230, 0, 18) 50%, rgb(230, 0, 18) 100%);
}
@media screen and (min-width: 769px) {
  .sec_head span::before {
    height: min(3px, 0.2vw);
  }
}
@media screen and (max-width: 768px) {
  .sec_head span::before {
    height: 0.3rem;
  }
}

.sec_info01 {
  background-repeat: no-repeat;
  background-position: 50% 100%;
}
@media screen and (min-width: 769px) {
  .sec_info01 {
    padding: min(130px, 8.667vw) 0 min(120px, 8vw);
    background-image: url(../img/info_sec01_bg.jpg);
    background-size: contain;
  }
}
@media screen and (max-width: 768px) {
  .sec_info01 {
    padding: 7.5rem 0 4.2rem;
    background-image: url(../img/sp/info_sec01_bg.jpg);
    background-size: cover;
  }
}

@media screen and (min-width: 769px) {
  .info01_lead {
    padding: min(80px, 5.334vw) 0 min(180px, 12vw);
    text-align: center;
    line-height: 2.046em;
    font-size: 2.2rem;
  }
  .info01_lead > p {
    line-height: inherit;
    font: inherit;
  }
  .info01_lead > p:first-of-type {
    margin-top: -0.522em;
  }
  .info01_lead > p:last-of-type {
    margin-bottom: -0.522em;
  }
}
@media screen and (max-width: 768px) {
  .info01_lead {
    width: 63rem;
    margin: 0 auto;
    padding: 0.8rem 0 11rem;
    line-height: 1.75em;
    font-size: 2.4rem;
  }
  .info01_lead > p {
    line-height: inherit;
    font: inherit;
  }
  .info01_lead > p:first-of-type {
    margin-top: -0.375em;
  }
  .info01_lead > p:last-of-type {
    margin-bottom: -0.375em;
  }
}
.info01_lead .txt_l {
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  .info01_lead .txt_l {
    line-height: 1;
    font-size: 2.9rem;
  }
}
@media screen and (max-width: 768px) {
  .info01_lead .txt_l {
    line-height: 1;
    font-size: 2.8rem;
  }
}

.info01_list {
  display: grid;
}
@media screen and (min-width: 769px) {
  .info01_list {
    grid-template-columns: repeat(3, 1fr);
    column-gap: min(80px, 5.334vw);
    width: min(1100px, 73.334vw);
    margin: min(120px, 8vw) auto min(90px, 6vw);
  }
}
@media screen and (max-width: 768px) {
  .info01_list {
    row-gap: 9rem;
    width: 63rem;
    margin: 9.8rem auto 6.5rem;
  }
}

.info01_list_item {
  position: relative;
}
.info01_list_item::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #d90b18;
}
@media screen and (min-width: 769px) {
  .info01_list_item::before {
    right: min(-20px, -1.333vw);
    bottom: min(-20px, -1.333vw);
  }
}
@media screen and (max-width: 768px) {
  .info01_list_item::before {
    right: -1rem;
    bottom: -1rem;
  }
}

.info01_list_item_inr {
  position: relative;
  height: 100%;
  background-color: #fff;
}
@media screen and (min-width: 769px) {
  .info01_list_item_inr {
    padding-bottom: min(30px, 2vw);
  }
}
@media screen and (max-width: 768px) {
  .info01_list_item_inr {
    height: auto;
    padding: 3rem 0;
  }
}
.info01_list_item_inr .num {
  position: relative;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .info01_list_item_inr .num {
    top: min(-32px, -2.133vw);
    height: min(58px, 3.867vw);
    margin-bottom: min(-32px, -2.133vw);
  }
}
@media screen and (max-width: 768px) {
  .info01_list_item_inr .num {
    top: -2.5rem;
    height: 5.4rem;
    margin-bottom: -2.5rem;
  }
}

.info01_list_head {
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .info01_list_head {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: min(50px, 3.334vw);
    line-height: 1.534em;
    font-size: 3rem;
  }
  .info01_list_head > h3 {
    line-height: inherit;
    font: inherit;
  }
  .info01_list_head > h3:first-of-type {
    margin-top: -0.266em;
  }
  .info01_list_head > h3:last-of-type {
    margin-bottom: -0.266em;
  }
}
@media screen and (max-width: 768px) {
  .info01_list_head {
    margin-top: 2.8rem;
    line-height: 1.452em;
    font-size: 3.1rem;
  }
  .info01_list_head > h3 {
    line-height: inherit;
    font: inherit;
  }
  .info01_list_head > h3:first-of-type {
    margin-top: -0.225em;
  }
  .info01_list_head > h3:last-of-type {
    margin-bottom: -0.225em;
  }
}
.info01_list_head h3 {
  font-size: 2.6rem;
}

.info01_list_txt {
  text-align: center;
}
@media screen and (min-width: 769px) {
  .info01_list_txt {
    margin-top: min(35px, 2.334vw);
    line-height: 1.685em;
    font-size: 1.9rem;
  }
  .info01_list_txt > p {
    line-height: inherit;
    font: inherit;
  }
  .info01_list_txt > p:first-of-type {
    margin-top: -0.342em;
  }
  .info01_list_txt > p:last-of-type {
    margin-bottom: -0.342em;
  }
}
@media screen and (max-width: 768px) {
  .info01_list_txt {
    margin-top: 3rem;
    line-height: 1.75em;
    font-size: 2.4rem;
  }
  .info01_list_txt > p {
    line-height: inherit;
    font: inherit;
  }
  .info01_list_txt > p:first-of-type {
    margin-top: -0.375em;
  }
  .info01_list_txt > p:last-of-type {
    margin-bottom: -0.375em;
  }
}

.required_txt {
  text-align: center;
}
@media screen and (min-width: 769px) {
  .required_txt {
    line-height: 1.334em;
    font-size: 2.4rem;
  }
  .required_txt > p {
    line-height: inherit;
    font: inherit;
  }
  .required_txt > p:first-of-type {
    margin-top: -0.166em;
  }
  .required_txt > p:last-of-type {
    margin-bottom: -0.166em;
  }
}
@media screen and (max-width: 768px) {
  .required_txt {
    width: 62.5rem;
    margin: 0 auto;
    line-height: 1.75em;
    font-size: 2.4rem;
  }
  .required_txt > p {
    line-height: inherit;
    font: inherit;
  }
  .required_txt > p:first-of-type {
    margin-top: -0.375em;
  }
  .required_txt > p:last-of-type {
    margin-bottom: -0.375em;
  }
}
.required_txt .txt_l {
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .required_txt .txt_l {
    line-height: 1.104em;
    font-size: 2.9rem;
  }
  .required_txt .txt_l > p {
    line-height: inherit;
    font: inherit;
  }
  .required_txt .txt_l > p:first-of-type {
    margin-top: -0.051em;
  }
  .required_txt .txt_l > p:last-of-type {
    margin-bottom: -0.051em;
  }
}

@media screen and (min-width: 769px) {
  .sec_info02 {
    padding-top: min(165px, 11vw);
    padding-bottom: min(205px, 13.667vw);
  }
}
@media screen and (max-width: 768px) {
  .sec_info02 {
    padding-top: 9rem;
    padding-bottom: 11.5rem;
  }
}

.recruit {
  border-collapse: collapse;
  border-spacing: 0;
}
@media screen and (min-width: 769px) {
  .recruit {
    width: min(1100px, 73.334vw);
    margin: min(65px, 4.334vw) auto 0;
    border: solid 1px #c9caca;
  }
}
@media screen and (max-width: 768px) {
  .recruit {
    width: 70rem;
    margin: -2rem auto 0;
  }
}

.recruit_head,
.recruit_desc {
  text-align: left;
}
@media screen and (min-width: 769px) {
  .recruit_head,
  .recruit_desc {
    padding: min(20px, 1.334vw);
    line-height: 1.751;
    font-size: 1.6rem;
  }
  .recruit_head > em,
  .recruit_desc > em {
    line-height: inherit;
    font: inherit;
  }
  .recruit_head > em:first-of-type,
  .recruit_desc > em:first-of-type {
    margin-top: 0.492em;
  }
  .recruit_head > em:last-of-type,
  .recruit_desc > em:last-of-type {
    margin-bottom: 0.492em;
  }
}
@media screen and (max-width: 768px) {
  .recruit_head,
  .recruit_desc {
    display: block;
    padding: 2rem 1.5rem;
    line-height: 1.424;
    font-size: 2.6rem;
  }
  .recruit_head > em,
  .recruit_desc > em {
    line-height: inherit;
    font: inherit;
  }
  .recruit_head > em:first-of-type,
  .recruit_desc > em:first-of-type {
    margin-top: 0.493em;
  }
  .recruit_head > em:last-of-type,
  .recruit_desc > em:last-of-type {
    margin-bottom: 0.493em;
  }
}

.recruit_head {
  background-color: #dcdddd;
  vertical-align: top;
}
@media screen and (min-width: 769px) {
  .recruit_head {
    border-bottom: solid 1px #c9caca;
  }
}
@media screen and (max-width: 768px) {
  .recruit_head {
    border: solid 1px #b1b1b1;
  }
}
@media screen and (max-width: 768px) {
  .recruit_head.empty {
    display: none;
  }
}

.recruit_head_sub {
  background-color: #efefef;
}
@media screen and (min-width: 769px) {
  .recruit_head_sub {
    width: min(160px, 10.667vw);
    padding: min(20px, 1.334vw) min(20px, 1.334vw);
    border-left: solid 1px #c9caca;
    border-bottom: solid 1px #c9caca;
    line-height: 1.75em;
    font-size: 1.6rem;
  }
  .recruit_head_sub > p {
    line-height: inherit;
    font: inherit;
  }
  .recruit_head_sub > p:first-of-type {
    margin-top: -0.375em;
  }
  .recruit_head_sub > p:last-of-type {
    margin-bottom: -0.375em;
  }
}
@media screen and (max-width: 768px) {
  .recruit_head_sub {
    display: block;
    padding: 2.5rem 1.5rem;
    border: solid 1px #c9caca;
    line-height: 1.424em;
    font-size: 2.6rem;
  }
  .recruit_head_sub > p {
    line-height: inherit;
    font: inherit;
  }
  .recruit_head_sub > p:first-of-type {
    margin-top: -0.211em;
  }
  .recruit_head_sub > p:last-of-type {
    margin-bottom: -0.211em;
  }
}

.recruit_desc {
  background-color: #fff;
}
@media screen and (min-width: 769px) {
  .recruit_desc {
    width: min(820px, 54.667vw);
    border-left: solid 1px #c9caca;
    border-bottom: solid 1px #c9caca;
  }
}
@media screen and (max-width: 768px) {
  .recruit_desc {
    padding: 3rem 1.5rem;
  }
}
.recruit_desc a {
  color: #d90b18;
}
.recruit_desc .txt_b {
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .recruit_desc.not_head {
    padding-top: 0;
  }
}

.recruit_list_num {
  counter-reset: number-counter;
}
.recruit_list_num > li {
  display: flex;
  align-items: baseline;
}
.recruit_list_num > li::before {
  counter-increment: number-counter;
  content: counter(number-counter) ". ";
  margin-right: 0.5em;
  flex-shrink: 0;
}

@media screen and (min-width: 769px) {
  .border_btm_none {
    border-bottom: none;
  }
}

@media screen and (min-width: 769px) {
  .border_top {
    border-top: solid 1px #c9caca;
  }
}

.sec_info03 {
  background-color: #f4f4f4;
}
@media screen and (min-width: 769px) {
  .sec_info03 {
    padding: min(120px, 8vw) 0 min(90px, 6vw);
  }
}
@media screen and (max-width: 768px) {
  .sec_info03 {
    padding: 8.2rem 0 8.4rem;
  }
}

.info03_lead {
  text-align: center;
  font-weight: 500;
}
@media screen and (min-width: 769px) {
  .info03_lead {
    margin-top: min(90px, 6vw);
    line-height: 1.572em;
    font-size: 2.8rem;
  }
  .info03_lead > p {
    line-height: inherit;
    font: inherit;
  }
  .info03_lead > p:first-of-type {
    margin-top: -0.285em;
  }
  .info03_lead > p:last-of-type {
    margin-bottom: -0.285em;
  }
}
@media screen and (max-width: 768px) {
  .info03_lead {
    line-height: 1.709em;
    font-size: 2.4rem;
  }
  .info03_lead > p {
    line-height: inherit;
    font: inherit;
  }
  .info03_lead > p:first-of-type {
    margin-top: -0.354em;
  }
  .info03_lead > p:last-of-type {
    margin-bottom: -0.354em;
  }
}

.edu03_job {
  display: grid;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .edu03_job {
    grid-template-columns: repeat(3, 1fr);
    column-gap: min(77px, 5.134vw);
    width: min(1100px, 73.334vw);
    padding-top: min(85px, 5.667vw);
  }
}
@media screen and (max-width: 768px) {
  .edu03_job {
    row-gap: 3.5rem;
    width: 63rem;
    padding-top: 4rem;
  }
}

.edu03_job_item {
  position: relative;
}
@media screen and (min-width: 769px) {
  .edu03_job_item {
    padding: min(2px, 0.134vw);
    clip-path: polygon(0 0, calc(100% - 4.8rem) 0, 100% 4.8rem, 100% 100%, 0 100%);
    background: linear-gradient(125.5deg, rgb(215, 18, 24) 0%, rgb(215, 18, 24) 46%, rgb(0, 0, 0) 46%, rgb(0, 0, 0) 100%);
  }
}
@media screen and (max-width: 768px) {
  .edu03_job_item {
    padding: 0.2rem;
    clip-path: polygon(0 0, calc(100% - 5rem) 0, 100% 5rem, 100% 100%, 0 100%);
    background: linear-gradient(146deg, rgb(215, 18, 24) 0%, rgb(215, 18, 24) 48%, rgb(0, 0, 0) 48%, rgb(0, 0, 0) 100%);
  }
}

.edu03_job_item_inr {
  height: 100%;
  background-color: #fff;
}
@media screen and (min-width: 769px) {
  .edu03_job_item_inr {
    height: min(372px, 24.8vw);
    padding: min(38px, 2.534vw) min(26px, 1.734vw) 0;
    clip-path: polygon(0 0, calc(100% - 4.7rem) 0, 100% 4.7rem, 100% 100%, 0 100%);
  }
}
@media screen and (max-width: 768px) {
  .edu03_job_item_inr {
    display: grid;
    place-content: center;
    height: 38.5rem;
    padding: 0 3rem;
    clip-path: polygon(0 0, calc(100% - 4.8rem) 0, 100% 4.8rem, 100% 100%, 0 100%);
  }
}

.edu03_job_item_head {
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .edu03_job_item_head {
    line-height: 1;
    font-size: 2.8rem;
  }
  .edu03_job_item_head > h3 {
    line-height: inherit;
    font: inherit;
  }
  .edu03_job_item_head > h3:first-of-type {
    margin-top: 0em;
  }
  .edu03_job_item_head > h3:last-of-type {
    margin-bottom: 0em;
  }
}
@media screen and (max-width: 768px) {
  .edu03_job_item_head {
    line-height: 1;
    font-size: 3.6rem;
  }
  .edu03_job_item_head > h3 {
    line-height: inherit;
    font: inherit;
  }
  .edu03_job_item_head > h3:first-of-type {
    margin-top: 0em;
  }
  .edu03_job_item_head > h3:last-of-type {
    margin-bottom: 0em;
  }
}
.edu03_job_item_head h3 {
  position: relative;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .edu03_job_item_head h3 {
    padding-bottom: min(12px, 0.8vw);
  }
}
@media screen and (max-width: 768px) {
  .edu03_job_item_head h3 {
    padding-bottom: 1.5rem;
  }
}
.edu03_job_item_head h3::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background-color: #000;
}

.edu03_job_item_lead {
  font-weight: 500;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .edu03_job_item_lead {
    margin-top: min(40px, 2.667vw);
    line-height: 1.474em;
    font-size: 1.9rem;
  }
  .edu03_job_item_lead > p {
    line-height: inherit;
    font: inherit;
  }
  .edu03_job_item_lead > p:first-of-type {
    margin-top: -0.236em;
  }
  .edu03_job_item_lead > p:last-of-type {
    margin-bottom: -0.236em;
  }
}
@media screen and (max-width: 768px) {
  .edu03_job_item_lead {
    margin-top: 4rem;
    line-height: 1.234em;
    font-size: 3rem;
  }
  .edu03_job_item_lead > p {
    line-height: inherit;
    font: inherit;
  }
  .edu03_job_item_lead > p:first-of-type {
    margin-top: -0.116em;
  }
  .edu03_job_item_lead > p:last-of-type {
    margin-bottom: -0.116em;
  }
}
.edu03_job_item_lead .u_line {
  text-decoration: underline;
}
.edu03_job_item_lead .small {
  display: block;
}
@media screen and (min-width: 769px) {
  .edu03_job_item_lead .small {
    margin-top: min(15px, 1vw);
    line-height: 1;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 768px) {
  .edu03_job_item_lead .small {
    margin-top: 2rem;
    line-height: 1;
    font-size: 2.5rem;
  }
}

@media screen and (min-width: 769px) {
  .edu03_job_item_txt {
    margin-top: min(30px, 2vw);
    line-height: 1.75em;
    font-size: 1.6rem;
  }
  .edu03_job_item_txt > p {
    line-height: inherit;
    font: inherit;
  }
  .edu03_job_item_txt > p:first-of-type {
    margin-top: -0.375em;
  }
  .edu03_job_item_txt > p:last-of-type {
    margin-bottom: -0.375em;
  }
}
@media screen and (max-width: 768px) {
  .edu03_job_item_txt {
    margin-top: 2.5rem;
    line-height: 1.834em;
    font-size: 2.4rem;
  }
  .edu03_job_item_txt > p {
    line-height: inherit;
    font: inherit;
  }
  .edu03_job_item_txt > p:first-of-type {
    margin-top: -0.416em;
  }
  .edu03_job_item_txt > p:last-of-type {
    margin-bottom: -0.416em;
  }
}

@media screen and (min-width: 769px) {
  .sec_info04 {
    padding: min(175px, 11.667vw) 0;
  }
}
@media screen and (max-width: 768px) {
  .sec_info04 {
    padding: 8.5rem 0;
  }
}

.flow_lead {
  font-weight: 500;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .flow_lead {
    margin-top: min(85px, 1.334vw);
    line-height: 1.572em;
    font-size: 2.8rem;
  }
  .flow_lead > p {
    line-height: inherit;
    font: inherit;
  }
  .flow_lead > p:first-of-type {
    margin-top: -0.285em;
  }
  .flow_lead > p:last-of-type {
    margin-bottom: -0.285em;
  }
}
@media screen and (max-width: 768px) {
  .flow_lead {
    margin-top: -0.5rem;
    line-height: 1.709em;
    font-size: 2.4rem;
  }
  .flow_lead > p {
    line-height: inherit;
    font: inherit;
  }
  .flow_lead > p:first-of-type {
    margin-top: -0.354em;
  }
  .flow_lead > p:last-of-type {
    margin-bottom: -0.354em;
  }
}

.flow_list {
  display: grid;
}
@media screen and (min-width: 769px) {
  .flow_list {
    grid-template-columns: auto auto auto auto auto max-content;
    column-gap: min(50px, 3.334vw);
    width: min(1100px, 73.334vw);
    margin: min(70px, 4.667vw) auto 0;
  }
}
@media screen and (max-width: 768px) {
  .flow_list {
    row-gap: 1.5rem;
    width: 63rem;
    margin: 5.2rem auto 0;
  }
}

.flow_list_item {
  display: grid;
  place-content: center;
  background-color: #ed4a57;
  color: #fff;
  font-weight: 600;
}
@media screen and (min-width: 769px) {
  .flow_list_item {
    writing-mode: vertical-rl;
    text-orientation: upright;
    height: min(324px, 21.6vw);
    line-height: 1.579em;
    font-size: 1.9rem;
  }
  .flow_list_item > p {
    line-height: inherit;
    font: inherit;
  }
  .flow_list_item > p:first-of-type {
    margin-top: -0.289em;
  }
  .flow_list_item > p:last-of-type {
    margin-bottom: -0.289em;
  }
}
@media screen and (max-width: 768px) {
  .flow_list_item {
    height: 14rem;
    text-align: center;
    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 3.7rem), 50% 100%, 0 calc(100% - 3.7rem));
    line-height: 1.188em;
    font-size: 3.2rem;
  }
  .flow_list_item > p {
    line-height: inherit;
    font: inherit;
  }
  .flow_list_item > p:first-of-type {
    margin-top: -0.093em;
  }
  .flow_list_item > p:last-of-type {
    margin-bottom: -0.093em;
  }
}
.flow_list_item:not(:last-child) {
  position: relative;
}
@media screen and (min-width: 769px) {
  .flow_list_item:not(:last-child)::before {
    content: "";
    position: absolute;
    border: solid #ed4a57;
    background-color: #ed4a57;
    top: 0;
    right: 0;
    translate: 98% 0;
    width: min(36px, 2.4vw);
    height: 100%;
    border-width: min(3px, 0.2vw);
    clip-path: polygon(0 0, 0.2rem 0, 100% 50%, 0.2rem 100%, 0 100%);
  }
}
.flow_list_item:last-child {
  background-color: #fff;
  color: #ed4a57;
  border: solid #ed4a57;
}
@media screen and (min-width: 769px) {
  .flow_list_item:last-child {
    width: min(190px, 12.667vw);
    line-height: 1;
    font-size: 2.8rem;
    border-width: min(3px, 0.2vw);
  }
}
@media screen and (max-width: 768px) {
  .flow_list_item:last-child {
    height: 14rem;
    line-height: 1;
    font-size: 3.2rem;
    border-width: 0.3rem;
    clip-path: none;
  }
}
@media screen and (min-width: 769px) {
  .flow_list_item .txt_s {
    line-height: 1;
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 768px) {
  .flow_list_item .txt_s {
    text-align: center;
    line-height: 1;
    font-size: 1.9rem;
  }
}

.sec_info05 {
  background-color: #f4f4f4;
}
@media screen and (min-width: 769px) {
  .sec_info05 {
    padding: min(95px, 6.334vw) 0;
  }
}
@media screen and (max-width: 768px) {
  .sec_info05 {
    padding: 7.8rem 0 9rem;
  }
}

@media screen and (min-width: 769px) {
  .faq_cont {
    width: min(1100px, 73.334vw);
    margin: min(80px, 5.334vw) auto 0;
  }
}
@media screen and (max-width: 768px) {
  .faq_cont {
    width: 63rem;
    margin: 7rem auto 0;
  }
}

.faq_cont_head {
  font-weight: 700;
  border-bottom: #212121 solid 1px;
}
@media screen and (min-width: 769px) {
  .faq_cont_head {
    padding-bottom: min(25px, 1.667vw);
    line-height: 1;
    font-size: 2.8rem;
  }
  .faq_cont_head > h3 {
    line-height: inherit;
    font: inherit;
  }
  .faq_cont_head > h3:first-of-type {
    margin-top: 0em;
  }
  .faq_cont_head > h3:last-of-type {
    margin-bottom: 0em;
  }
}
@media screen and (max-width: 768px) {
  .faq_cont_head {
    padding-bottom: 2.5rem;
    line-height: 1;
    font-size: 2.8rem;
  }
  .faq_cont_head > h3 {
    line-height: inherit;
    font: inherit;
  }
  .faq_cont_head > h3:first-of-type {
    margin-top: 0em;
  }
  .faq_cont_head > h3:last-of-type {
    margin-bottom: 0em;
  }
}

.faq_item {
  background-color: #fff;
  border-bottom: #212121 solid 1px;
}

.faq_q {
  display: flex;
  position: relative;
}
@media screen and (min-width: 769px) {
  .faq_q {
    padding: min(30px, 2vw) min(85px, 5.667vw) min(24px, 1.6vw) min(20px, 1.334vw);
    cursor: pointer;
  }
}
@media screen and (max-width: 768px) {
  .faq_q {
    padding: 3rem 5rem 3rem 2rem;
  }
}
.faq_q::before, .faq_q::after {
  content: "";
  position: absolute;
  top: 50%;
  translate: -50% 0;
  background-color: #212121;
  transform-origin: 50% 50%;
  transition: 0.5s;
}
@media screen and (min-width: 769px) {
  .faq_q::before, .faq_q::after {
    right: min(28px, 1.867vw);
    width: min(30px, 2vw);
    height: min(3px, 0.2vw);
  }
}
@media screen and (max-width: 768px) {
  .faq_q::before, .faq_q::after {
    right: 0.8rem;
    width: 3.5rem;
    height: 0.2rem;
  }
}
.faq_q::after {
  rotate: -90deg;
}
.open .faq_q::after {
  rotate: 0deg;
}

.faq_q_icon {
  flex-shrink: 0;
}
@media screen and (min-width: 769px) {
  .faq_q_icon {
    width: min(41px, 2.734vw);
    margin-right: min(24px, 1.6vw);
  }
}
@media screen and (max-width: 768px) {
  .faq_q_icon {
    width: 4rem;
    margin-right: 4.5rem;
  }
}

@media screen and (min-width: 769px) {
  .faq_q_cont {
    padding-top: min(15px, 1vw);
    line-height: 1.737em;
    font-size: 1.9rem;
  }
  .faq_q_cont > p {
    line-height: inherit;
    font: inherit;
  }
  .faq_q_cont > p:first-of-type {
    margin-top: -0.368em;
  }
  .faq_q_cont > p:last-of-type {
    margin-bottom: -0.368em;
  }
}
@media screen and (max-width: 768px) {
  .faq_q_cont {
    display: grid;
    place-content: center;
    line-height: 1.667em;
    font-size: 2.4rem;
  }
  .faq_q_cont > p {
    line-height: inherit;
    font: inherit;
  }
  .faq_q_cont > p:first-of-type {
    margin-top: -0.333em;
  }
  .faq_q_cont > p:last-of-type {
    margin-bottom: -0.333em;
  }
}

.faq_a {
  height: 0;
  overflow: hidden;
  transition: all 0.5s;
}

.faq_a_inr {
  display: flex;
}
@media screen and (min-width: 769px) {
  .faq_a_inr {
    padding: min(17px, 1.134vw) min(28px, 1.867vw) min(45px, 3vw) min(20px, 1.334vw);
  }
}
@media screen and (max-width: 768px) {
  .faq_a_inr {
    padding: 1.2rem 7.2rem 6rem 2rem;
  }
}

.faq_a_icon {
  flex-shrink: 0;
}
@media screen and (min-width: 769px) {
  .faq_a_icon {
    width: min(38px, 2.534vw);
    margin-right: min(26px, 1.734vw);
  }
}
@media screen and (max-width: 768px) {
  .faq_a_icon {
    width: 3.8rem;
    margin-right: 4.8rem;
  }
}

@media screen and (min-width: 769px) {
  .faq_a_cont {
    line-height: 1.737em;
    font-size: 1.9rem;
  }
  .faq_a_cont > p {
    line-height: inherit;
    font: inherit;
  }
  .faq_a_cont > p:first-of-type {
    margin-top: -0.368em;
  }
  .faq_a_cont > p:last-of-type {
    margin-bottom: -0.368em;
  }
}
@media screen and (max-width: 768px) {
  .faq_a_cont {
    line-height: 1.667em;
    font-size: 2.4rem;
  }
  .faq_a_cont > p {
    line-height: inherit;
    font: inherit;
  }
  .faq_a_cont > p:first-of-type {
    margin-top: -0.333em;
  }
  .faq_a_cont > p:last-of-type {
    margin-bottom: -0.333em;
  }
}
.faq_a_cont a {
  color: #0066cc;
}

@media screen and (min-width: 769px) {
  .sec_info06 {
    padding-top: min(150px, 10vw);
  }
}
@media screen and (max-width: 768px) {
  .sec_info06 {
    padding-top: 5rem;
  }
}

.info06_lead {
  font-weight: 700;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .info06_lead {
    line-height: 1;
    font-size: 2.8rem;
  }
  .info06_lead > p {
    line-height: inherit;
    font: inherit;
  }
  .info06_lead > p:first-of-type {
    margin-top: 0em;
  }
  .info06_lead > p:last-of-type {
    margin-bottom: 0em;
  }
}
@media screen and (max-width: 768px) {
  .info06_lead {
    line-height: 1.572em;
    font-size: 2.8rem;
  }
  .info06_lead > p {
    line-height: inherit;
    font: inherit;
  }
  .info06_lead > p:first-of-type {
    margin-top: -0.285em;
  }
  .info06_lead > p:last-of-type {
    margin-bottom: -0.285em;
  }
}

@media screen and (min-width: 769px) {
  .info06_cont {
    width: min(826px, 55.067vw);
    margin: min(25px, 1.667vw) auto 0;
    padding: min(3px, 0.2vw);
    background: linear-gradient(160.5deg, rgb(215, 18, 24) 0%, rgb(215, 18, 24) 50%, rgb(0, 0, 0) 50%, rgb(0, 0, 0) 100%);
  }
}
@media screen and (max-width: 768px) {
  .info06_cont {
    width: 63.4rem;
    margin: 2.5rem auto 0;
    padding: 0.3rem;
    background: linear-gradient(155.8deg, rgb(215, 18, 24) 0%, rgb(215, 18, 24) 50%, rgb(0, 0, 0) 50%, rgb(0, 0, 0) 100%);
  }
}

.info06_cont_inr {
  background-color: #fff;
}
@media screen and (min-width: 769px) {
  .info06_cont_inr {
    padding: min(65px, 4.334vw) 0 min(60px, 4vw);
  }
}
@media screen and (max-width: 768px) {
  .info06_cont_inr {
    padding: 5.2rem 0 4.2rem;
  }
}

.info06_txt {
  text-align: center;
  font-weight: 600;
}
@media screen and (min-width: 769px) {
  .info06_txt {
    line-height: 1.91em;
    font-size: 2.2rem;
  }
  .info06_txt > p {
    line-height: inherit;
    font: inherit;
  }
  .info06_txt > p:first-of-type {
    margin-top: -0.454em;
  }
  .info06_txt > p:last-of-type {
    margin-bottom: -0.454em;
  }
}
@media screen and (max-width: 768px) {
  .info06_txt {
    line-height: 1.546em;
    font-size: 2.2rem;
  }
  .info06_txt > p {
    line-height: inherit;
    font: inherit;
  }
  .info06_txt > p:first-of-type {
    margin-top: -0.272em;
  }
  .info06_txt > p:last-of-type {
    margin-bottom: -0.272em;
  }
}

@media screen and (min-width: 769px) {
  .info06_info {
    margin-top: min(20px, 1.334vw);
  }
}
@media screen and (max-width: 768px) {
  .info06_info {
    margin-top: 2.5rem;
  }
}

.info_item {
  display: flex;
  justify-content: center;
  align-items: end;
}
@media screen and (min-width: 769px) {
  .info_item + .info_item {
    margin-top: min(15px, 1vw);
  }
}
@media screen and (max-width: 768px) {
  .info_item + .info_item {
    margin-top: 1.5rem;
  }
}

.info_item_head {
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .info_item_head {
    line-height: 1;
    font-size: 2rem;
  }
  .info_item_head > p {
    line-height: inherit;
    font: inherit;
  }
  .info_item_head > p:first-of-type {
    margin-top: 0em;
  }
  .info_item_head > p:last-of-type {
    margin-bottom: 0em;
  }
}
@media screen and (max-width: 768px) {
  .info_item_head {
    line-height: 1;
    font-size: 2rem;
  }
  .info_item_head > p {
    line-height: inherit;
    font: inherit;
  }
  .info_item_head > p:first-of-type {
    margin-top: 0em;
  }
  .info_item_head > p:last-of-type {
    margin-bottom: 0em;
  }
}

.info_item_cont {
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  .info_item_cont {
    line-height: 1;
    font-size: 3rem;
  }
  .info_item_cont > p {
    line-height: inherit;
    font: inherit;
  }
  .info_item_cont > p:first-of-type {
    margin-top: 0em;
  }
  .info_item_cont > p:last-of-type {
    margin-bottom: 0em;
  }
}
@media screen and (max-width: 768px) {
  .info_item_cont {
    line-height: 1;
    font-size: 3rem;
  }
  .info_item_cont > p {
    line-height: inherit;
    font: inherit;
  }
  .info_item_cont > p:first-of-type {
    margin-top: 0em;
  }
  .info_item_cont > p:last-of-type {
    margin-bottom: 0em;
  }
}

@media screen and (min-width: 769px) {
  a[href^="tel:"] {
    pointer-events: none;
    cursor: normal;
  }
}
.recruit_desc > p span.ls08 {
  letter-spacing: -0.08rem;
}

.noBottom {
  border-bottom: none;
}