@charset "UTF-8";

main {
  margin-top: 92px;
}

/*==============================================*/
.sec_ttl {
  max-width: 1024px;
  margin: 0 auto;
  padding: 0 2.5rem;
}

.recruit_wrp {
  max-width: 1024px;
  margin: 0 auto;
}

.sec_headline_copy {
  margin: 24px 0;
  font-size: 28px;
  font-weight: bold;
  color: #0d5191;
}

.sec_sub_copy {
  margin: 24px 0;
  font-size: 24px;
  font-weight: bold;
  color: #0d5191;
  line-height: 1.8;
}

h2 {
  position: relative;
  border-bottom: 1px #ccc solid;
  margin-bottom: 24px;
  padding: 0 0 6px 24px;
  font-size: 32px;
  letter-spacing: 2px;
}

h2::before {
  position: absolute;
  top: 8px;
  left: 0;
  content: '';
  width: 8px;
  height: 32px;
  background-image: linear-gradient(102deg, #3999ce, #0d5191);
  letter-spacing: 2px;
}

.item {
  margin-bottom: 80px;
}

.item_header {
  display: flex;
  justify-content: space-between;
}

h3 {
  display: inline-block;
  font-size: 22px;
  letter-spacing: 1px;
  color: #fff;
  background-color: #0d5191;
  padding: 0px 10px;
}

h4 {
  font-size: 28px;
  font-weight: bold;
  color: #0d5191;
  margin: 16px 0;
}

h5 {
  font-size: 24px;
  font-weight: bold;
}

.item_header_image {
  width: 220px;
  margin-left: 16px;
}

.wp-block-table table,
table {
  width: 100%;
  margin-bottom: 40px;
  table-layout: inherit !important;
}
.wp-block-table th,
th {
  width: 20%;
  font-weight: bold;
  letter-spacing: 2px;
}
.wp-block-table th,
th,
.wp-block-table td,
td {
  border: 0 !important;
  border-bottom: 1px solid #ccc !important;
  padding: 24px 0px !important;
  vertical-align: top;
  line-height: 1.8;
}

.wp-block-table tr td:first-child {
  font-weight: bold;
  min-width: 188px;
  letter-spacing: 2px;
}

/*step*/
.step-box {
  display: flex;
  gap: 5px;
}

.step {
  position: relative;
  background: #0057a8; /* 青色 */
  color: #fff;
  font-size: 25px;
  font-weight: bold;
  padding: 1vw;
  width: 100%;
  clip-path: polygon(
    0 0,
    calc(100% - 20px) 0,
    100% 50%,
    calc(100% - 20px) 100%,
    0 100%
  );
}

.step span {
  font-size: 15px;
  font-weight: normal;
  display: block;
}

.step_message {
  font-size: 25px;
  margin: 70px 0 80px 0;
  line-height: 2;
}

/*=========================*/

@media screen and (max-width: 540px) {
  .sec_ttl {
    padding: 0 16px;
  }
  .sec_headline_copy {
    font-size: 24px;
  }
  .sec_sub_copy,
  .step_message,
  h5 {
    font-size: 18px;
  }
  h2,
  h4 {
    font-size: 24px;
  }
  h2::before {
    top: 4px;
  }
  h3 {
    font-size: 20px;
  }
  .step-box {
    flex-direction: column;
    gap: 12px;
  }
  .step {
    text-align: center;
    clip-path: polygon(
      0 0,
      100% 0,
      100% calc(100% - 20px),
      50% 100%,
      0 calc(100% - 20px)
    );
    padding: 3vw;
  }
  .wp-block-table th,
  th,
  .wp-block-table td,
  td {
    display: block;
    width: 100%;
  }

  .wp-block-table td,
  td {
    padding: 0 12px 24px 12px !important;
  }
  .wp-block-table tr td:first-child {
    padding: 24px 0 0 0 !important;
    border-bottom: 0 !important;
    display: block;
    width: 100%;
  }
}
