.top {
  position: relative;
  width: 100%;
  background-color: #F8F9FA;
  background-size: 100% 100%;
  padding: 8.9583vw 8.3333vw 8.125vw;
  margin-bottom: 9.375vw;
}

.top .t1 {
  position: relative;
  z-index: 2;
  font-size: 3.125vw;
  color: #CD121C;
  font-weight: bold;
  margin-bottom: 2.8125vw;
  font-family: 'auto';
}

.top .bg {
  position: absolute;
  width: 100%;
  object-fit: cover;
  left: 0;
  top: 0;
  z-index: 0;
}
.top .t2 {
  position: relative;
  z-index: 2;
  font-size: 1.4583vw;
  line-height: 2.3958vw;
  letter-spacing: .2083vw;
}

.top .cards {
  position: relative;
  z-index: 2;
  margin-top: 9.7917vw;
}

.top .card {
  width: 100%;
  margin-right: 1.0417vw;
  box-shadow: .3646vw 1.0938vw 1.9792vw 0 rgba(0, 0, 0, 0.18);
  height: 26.9271vw;
  background-color: #fff;
  padding: 1.25vw 1.1458vw;
}

.top .card:nth-of-type(1) {
  background: url('../image/bg/card-bg-1.png') no-repeat center bottom;
  background-size: 100%;
}

.top .card:nth-of-type(2) {
  background: url('../image/bg/card-bg-2.png') no-repeat center bottom;
  background-size: 100%;
}

.top .card:nth-of-type(3) {
  background: url('../image/bg/card-bg-3.png') no-repeat center bottom;
  background-size: 100%;
}

.top .card:nth-of-type(4) {
  background: url('../image/bg/card-bg-4.png') no-repeat center bottom;
  background-size: 100%;
}

.top .card .title {
  position: relative;
  font-size: 1.4583vw;
  font-weight: bold;
  padding-bottom: .8854vw;
}

.top .card .title::after {
  position: absolute;
  content: '';
  width: 1.5625vw;
  height: .1042vw;
  background-color: #CD121C;
  left: 0;
  bottom: 0;
}

.top .content {
  padding-top: .8854vw;
  font-size: 1.0417vw;
  color: #666;
  line-height: 1.875vw;
  text-align: justify;
  font-family: 'Microsoft YaHei';
}

.top .card:last-child {
  margin-right: 0;
}

.main-title {
  text-align: center;
  margin: 5.2083vw auto 3.125vw;
}
.main-title div:first-child {
  font-size: 2.6042vw;
  font-family: 'Microsoft YaHei';
}

.main-title div:last-child {
  font-size: 1.3542vw;
}

.jobs {
  height: 40.3646vw;
  background-color:#F8F9FA;
  padding-top: 1.4063vw;
  box-sizing: border-box;
  background: url('../image/bg/table-bg.png') no-repeat center center;
  background-size: 100%;
}

.jobs .search {
  margin-top: 2.0833vw;
}

.jobs .search, .jobs .table {
  width: 64.0625vw;
}

.jobs .search input, .jobs .search select {
  margin-right: 3.8021vw;
  display: block;
  width: 100%;
  opacity: 0.9;
}

.jobs .search select:last-child {
  margin-right: 0;
}

.jobs .search input {
  height: 4.1667vw;
  border: 0;
  background-color: rgba(27, 27, 27, .48);
  padding: 0 1.25vw;
  box-sizing: border-box;
  font-size: 1.3542vw;
  color: #fff;
  border: 0;  
}

.jobs .search input::placeholder {
  color: rgba(255, 255, 255, .36);
}

.jobs .search input:focus {
  outline: none;
}

.jobs .search select {
  font-size: 1.3542vw;
  padding: 0 1.25vw;
  box-sizing: border-box;
  background-color: rgba(27, 27, 27, .48);
  color: #fff;
  height: 4.0625vw;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url('../image/bg/down.svg');
  background-repeat: no-repeat;
  background-position: right 0.5em center;
  background-size: 2.0833vw 2.0833vw;
}

.jobs .search select:focus {
  outline: none;
}

.jobs .search select::after {
  content: '\25bc'; /* Unicode 字符 */
  position: absolute;
  right: 0.5em;
  top: 50%;
  transform: translateY(-50%) rotate(180deg); /* 将箭头翻转180度 */
  color: #666;
  pointer-events: none; /* 禁止箭头获取点击事件 */
  z-index: 1;
}

.jobs .table {
  height: 28.125vw;
  background-color: rgba(234, 234, 234, 0.9);
  padding: 1.6667vw 1.875vw;
  margin-top: 2.0833vw;
  opacity: 0.9;
}

.jobs .tr {
  width: 100%;
  display: flex;
  justify-content: center;
  height: 4.0104vw;
  padding: 0 1.0417vw;
}

.jobs .tr .th {
  width: 100%;
  text-align: left;
  line-height: 4.0104vw;
  font-weight: bold;
  font-size: 1.5625vw;
  letter-spacing: .1563vw;
}

.jobs .tbody {
  height: 24.7917vw;
  overflow-y: scroll;
}

.jobs .tbody .tr {
  width: 100%;
  text-align: left;
  line-height: 4.0104vw;
  font-size: 1.5625vw;
  letter-spacing: .1563vw;
  padding-right: 0;
  background-color: rgba(255, 255, 255, 0.5);
  border-bottom: 1px solid rgba(0, 0, 0, 0.14);
}

.jobs .tbody .tr .td {
  width: 100%;
}

.tel-email {
  margin: 0 10.4167vw 5.9896vw;
}

.tel-email .card {
  display: flex;
  align-items: center;
  padding: 0 1.5625vw;
  width: 100%;
  height: 9.0104vw;
  border: 1px solid rgba(0, 0, 0, .34);
  border-radius: .8854vw;
}

.tel-email .card:first-child {
  margin-right: 5.2083vw;
}

.tel-email .card:last-child .icon {
  width: 5vw;
  height: 3.4375vw;
}

.tel-email .icon {
  width: 3.8021vw;
  height: 3.8021vw;
  margin-right: 3.6458vw;
}

.tel-email .content div:first-child {
  font-size: 1.875vw;
  margin-bottom: 1.1458vw;
}

.tel-email .content div:last-child {
  font-size: 1.25vw;
}

.map {
  height: 19.2708vw;
  margin: 0 8.3333vw 8.5938vw;
  background-color:#F8F9FA;
}

.map #container {
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 768px) {
  .top {
    padding: 9.0667vw 6.6667vw 0;
    background-size: cover;
    background-position-x: 0;
    margin-bottom: 0;
    background-color: transparent;
    overflow: hidden;
  }
  .top .bg {
    width: 200%;
    height: 145.6vw;
    object-fit: fill;
  }
  .top .t1 {
    font-size: 9.6vw;
    margin-bottom: 5.3333vw;
  }
  .top .t2 {
    font-size: 4.2667vw;
    line-height: 7.2vw;
  }
  .top .cards {
    margin-top: 21.3333vw;
    flex-wrap: wrap;
    
  }
  .top .card {
    margin: 0;
    padding: 4.2667vw 5.3333vw;
    margin-bottom: 4.5333vw;
    height: max-content;
    background-size: cover !important;
    box-shadow: .5333vw 1.6vw 4.8vw 0 rgba(0, 0, 0, .18);
  }
  .top .card .title {
    font-size: 4.8vw;
    padding-bottom: 2.6667vw;
  }
  .top .card .title::after {
    width: 5.6vw;
    height: .2667vw;
  }
  .top .content {
    padding-top: 3.7333vw;
    font-size: 3.2vw;
    line-height: 7.2vw;
    letter-spacing: 0;
    font-family:'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif;
  }

  .main-title {
    width: 100%;
    height: 20.8vw;
    margin: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-bottom: 2.6667vw;
  }
  .main-title div:first-child {
    font-size: 4.8vw;
  }
  .main-title div:last-child {
    font-size: 3.7333vw;
  }
  .jobs {
    height: 146.6667vw;
    background-size: cover;
    padding:2.6667vw 6.6667vw;
  }
  .jobs .search {
    flex-wrap: wrap;
    margin-top: 0;
    width: 100%;
  }
  .jobs .search input, .jobs .search select {
    width: 100%;
    margin-right: 0;
    height: 9.6vw;
    margin-bottom: 1.6vw;
    font-size: 3.7333vw;
  }
  .jobs .search input {
    border: 0;
  }
  .jobs .search select {
    background-size: 5.3333vw 5.3333vw;
  }
  .jobs .table {
    width: 100%;
    height: 106.6667vw;
  }
  .jobs .tr {
    height: 9.0667vw;
  }
  .jobs .tr .th {
    line-height: 9.0667vw;
    font-size: 4.2667vw;
  }
  .jobs .tbody .tr .td {
    font-size: 3.7333vw;
  }
  .jobs .tbody {
    height: 96vw;
  }
  .jobs .tbody .tr {
    line-height: 9.0667vw;
  }
  .tel-email {
    margin: 0 6.6667vw 3.2vw;
    flex-wrap: wrap;
  }
  .tel-email .card {
    width: 87.2vw;
    height: 21.3333vw;
    border: .5333vw solid rgba(0, 0, 0, 0.34);
    border-radius: 4.5333vw;
    padding: 0 6.4vw;
  }
  .tel-email .card:first-child {
    margin-right: 0;
    margin-bottom: 10px;
  }
  .tel-email .icon {
    width: 12vw;
    height: 12vw;
    margin-right: 6.6667vw;
  }
  .tel-email .card:last-child .icon {
    width: 14.1333vw;
    height: 9.6vw;
    margin-right: 4.8vw;
  }
  .tel-email .content div:first-child {
    font-size: 4.8vw;
    margin-bottom: 1.6vw;
  }
  .tel-email .content div:last-child {
    font-size: 4.2667vw;
  }
  .map {
    height: 114.9333vw;
    margin: 0;
  }
}