@charset 'UTF-8'; /* PC */
.lower-mv {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  min-height: 600px;
  padding: 240px 3% 0;
  position: relative;
}

.lower-mv::before {
  content: " ";
  display: block;
  width: 100%;
  height: 100%;
  background: #0000006b;
  position: absolute;
  top: 0;
  left: 0;
  margin: 0 auto;
}

.lower-mv .container {
}

.lower-mv h1 {
  color: #FFF;
  font-size: 18px;
  margin: 0 0 70px;
}

.lower-mv h1 span {
  display: block;
  font-size: 60px;
  font-weight: bold;
  text-transform: uppercase;
}

.mv-navi {
  max-width: 340px;
  width: 100%;
}

.mv-navi li {
  border-bottom: 3px solid #FFF;
}

.mv-navi li a {
  font-size: 20px;
  color: #FFF;
  padding: 20px 0px 20px 30px;
  display: block;
  position: relative;
}

.mv-navi li a::after {
  content: " ";
  display: block;
  width: 17px;
  height: 18px;
  background: url(../img/common/v_01_white.svg) no-repeat top left;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 30px;
  margin: auto;
}

.breadcrumbs {
  padding: 40px 0 40px;
}

.breadcrumbs ul {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  gap: 10px;
}

.breadcrumbs ul li {
  color: #FFF;
  font-size: 18px;
}

.breadcrumbs ul li span {
}

.breadcrumbs ul li a {
  color: #FFF;
  text-decoration: underline;
}

.section.text-white {
  color: #FFF;
}

.section.text-white h2.lower-title {
  color: #FFF;
  border-color: #FFF;
}

.section.text-white p {
  color: #FFF;
}

.section.bg-blue {
  background: #5a73b7;
}

.section-message {
  padding: 80px 0;
}

.section-header {
  padding: 0 3%;
}

.section-header .container {
}

.section-header h2 {
  font-size: 22px;
  border-bottom: 1px solid #000;
  margin: 0 0 50px;
  padding: 0 0 20px;
  line-height: 1.4;
}

.section-mv {
  margin: 0 0 40px;
}

.section-mv .container {
  display: flex;
  width: 100%;
  max-width: 100%;
}

.section-mv .container .left-space {
  flex-grow: 1;
  /* 残りのスペースを全て占有 */
  width: 100%;
  max-width: calc(50% - 500px);
  /* 画面幅が1000px以上の時のみ幅を持つように制限 */
  min-width: 0;
}

.section-mv img {
  width: 100%;
}

.section-main {
  padding: 0 3%;
}

.section-main .container {
}

.company-message {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
}

.company-message.direction-column {
  flex-direction: column;
  gap: 30px;
}

.company-message__lead {
  width: 500px;
  width: 100%;
  margin: 0 0 40px;
}

.direction-column .company-message__lead {
  width: 100%;
}

.company-message__lead h3 {
  font-size: 50px;
}

.direction-column .company-message__lead h3 {
}

.company-message__des {
  width: calc(100% - 540px);
  width: 100%;
}

.direction-column .company-message__des {
  width: 100%;
}

.company-message__des p {
  font-size: 18px;
  font-weight: bold;
}

h2.lower-title {
  font-size: 24px;
  padding: 0 0 10px;
  border-bottom: 1px solid #000;
  margin: 0 0 40px;
}

.company-feature {
}

.company-feature ul {
}

.company-feature li {
  margin: 0 0 40px;
}

.company-feature li:last-child {
  margin-bottom: 0;
}

.company-feature h3 {
  font-size: 24px;
  margin: 0 0 10px;
}

.company-feature p {
  padding: 0 0 0 50px;
  font-size: 16px;
}

.company-info {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.company-table {
  /* width: calc(100% - 520px); */
  width: 100%;
}

.company-table table {
  width: 100%;
}

.company-table tbody {
}

.company-table tr {
}

.company-table th,.company-table td {
  font-size: 16px;
  font-weight: normal;
  border-bottom: 1px solid #000;
  padding: 20px 30px;
  text-align: left;
  vertical-align: middle;
}

.company-table th {
  font-weight: bold;
}

.company-table td {
}

.company-info__image {
  width: 470px;
}

.company-info__image img {
}

.service-section {
}

.service-item {
  padding: 0 0 0 0px;
  margin: 0 0 40px;
}

.bd-top {
  border-top: 1px solid #000;
}

.bd-tb {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
}

.bg-lightblue {
  background: #e5e9f4;
}

.lower-title__bd {
  font-size: 24px;
  margin: 0 0 40px;
  position: relative;
  padding: 0 0 0 30px;
}

.lower-title__mini {
  font-size: 18px;
  border-bottom: 1px solid #000;
  padding: 0 0 10px;
  margin: 0 0 10px;
}

.lower-title__bd::before {
  content: " ";
  display: block;
  width: 8px;
  height: 40px;
  background: #012890;
  position: absolute;
  top: 0;
  margin: 0 auto;
  left: 0px;
}

.service-item h3 {
  margin: 0 0 10px;
  padding: 0 0 0 30px;
  font-size: 18px;
  font-weight: bold;
}

.service-item p {
  padding: 0 0 0 30px;
}

.service-item__imgs {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  gap: 30px;
  padding: 0 0 0 30px;
}

.service-item__imgs li {
}

.service-item__imgs img {
}

.service-flow {
}

.service-flow ul {
}

.service-flow li {
  margin: 0 0 0px;
  position: relative;
}

.service-flow li::after {
  content: " ";
  display: block;
  width: 20px;
  height: 28px;
  background: #000;
  background: url(../img/common/v_02_blue.svg) no-repeat top left;
  background-size: contain;
  position: relative;
  top: 0;
  margin: 30px auto;
  left: 0;
  right: 0;
}

.service-flow li:last-child::after {
  display: none;
}

.service-flow h3 {
  background: #01288f;
  color: #FFF;
  padding: 20px 20px;
  text-align: center;
}

.service-flow p {
  padding: 0;
  text-align: center;
}

.schedule-blocks {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  margin: 60px 0 0;
}

.schedule-list {
  width: calc(100% - 460px);
}

.schedule-list ul {
}

.schedule-list li {
  position: relative;
  padding: 3px 0 10px 40px;
}

.schedule-list li::before {
  content: " ";
  display: block;
  width: 11px;
  height: 11px;
  background: #000;
  position: absolute;
  top: 7px;
  margin: 0 auto;
  left: -6px;
  border-radius: 11px;
}

.schedule-list li::after {
  content: " ";
  display: block;
  width: 2px;
  height: 100%;
  background: #000;
  position: absolute;
  top: 7px;
  margin: 0 auto;
  left: -2px;
}

.schedule-list h4 {
  line-height: 1.6;
  margin: 0 0 10px;
}

.schedule-list h4 span {
  display: block;
  margin: 0 0 0px;
}

.schedule-list p {
  margin: 0;
  padding: 0 0 10px;
}

.schedule-imgs {
  width: 420px;
}

.schedule-imgs ul {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.schedule-imgs li {
}

.schedule-imgs img {
}

.bg-trapezoid {
  position: relative;
}

.bg-trapezoid::before {
  content: " ";
  display: block;
  width: 100%;
  /* height: 700px; */
  padding-top: 57.3%;
  background: url(../img/recruit/bg.svg) no-repeat center bottom;
  position: absolute;
  background-size: contain;
  bottom: 0;
  left: 0;
  margin: 0 auto;
}

.recruit-voices {
  display: flex;
  flex-direction: column;
  gap: 60px;
}

.recruit-voice {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  /* margin: 0 0 60px; */
}

.recruit-voice__top {
  width: 500px;
}

.recruit-voice:nth-child(2n) .recruit-voice__bottom {
  order: -1;
}

.recruit-voice__top img {
  margin: 0 0 20px;
  width: 100%;
}

.recruit-voice__top h3 {
  margin: 0 0 10px;
  font-size: 25px;
  line-height: 1.6;
}

.recruit-voice__top .recruit-year {
  color: #012890;
  font-size: 18px;
  font-weight: bold;
}

.recruit-voice__bottom {
  width: calc(100% - 540px);
}

.recruit-voice__bottom ul {
}

.recruit-voice__bottom li {
  margin: 0 0 40px;
}

.recruit-voice__bottom h4 {
  position: relative;
  font-size: 20px;
  line-height: 1.6;
  margin: 0 0 10px;
  padding: 0 0 0 30px;
}

.recruit-voice__bottom h4::before {
  content: " ";
  display: block;
  width: 14px;
  height: 14px;
  background: #012178;
  position: absolute;
  top: 9px;
  left: 0;
  transform: rotate(45deg);
  margin: 0 auto;
}

.recruit-voice__bottom p {
  padding: 0 0 0 30px;
}

.recruit-details {
  display: flex;
  flex-direction: column;
  gap: 50px;
}

.recruit-detail {
}

.recruit-detail__inner {
  padding: 0 0 0 30px;
}

@media screen and (max-width: 1000px) {
  .recruit-voice {
    flex-direction: column;
  }

  .recruit-voice__top {
    width: 100%;
  }

  .recruit-voice__bottom {
    width: 100%;
  }
}
