*,
h1,
h2,
h3,
h4,
h5,
h6,
p {
  margin: 0;
  padding: 0;
}

a {
  color: inherit;
  text-decoration: none;
  outline: none;
  -moz-outline-style: none;
}

html,
body {
  margin: 0;
  padding: 0;
  min-width: 300px;
  font-size: 62.5%;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
  color: #222224;
  font-family: "PingFang SC", "微软雅黑", "robot";
  font-weight: 300;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body {
  /* padding: 35px 48px 52px 48px; */
  display: flex;
  flex-direction: column;
  background-color: #fafafc;
}

.hidden {
  display: none;
}

.logo {
  font-size: 0;
}

.daohang {
  padding: 30px 60px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.daohang .right a {
  display: inline-block;
  padding: 0 20px;
  margin-right: 10px;
  font-size: 14px;
  color: #222224;
  text-decoration: none;
}

.daohang .right a:last-of-type {
  margin-right: 0;
}

.daohang .right a:hover {
  text-decoration: underline;
}

.daohang .right a.active {
  font-weight: 600;
  font-size: 16px;
}

.daohang .logo {
  width: 72px;
}

.daohang .logo img {
  width: 100%;
}

.container {
  margin: 50px 4vw;
}

.footer {
  padding: 0 60px 50px 60px;
  font-size: 12px;
  text-align: center;
  line-height: 18px;
  word-break: keep-all;
}

.footer span {
  /* display: block; */
}

.footer a {
  text-decoration: none;
  color: inherit;
}

.footer a:first-of-type {
  text-decoration: underline;
}

@media screen and (max-width: 630px) {
  .daohang .right a {
    padding: 0 8px;
    margin-right: 0;
  }
}

@media screen and (max-width: 500px) {
  .daohang .logo {
    display: none;
  }
  .daohang {
    justify-content: center;
  }

  .daohang .right {
    display: flex;
    width: 100%;
    justify-content: space-between;
  }
  .daohang .right a {
    padding: 0;
  }
}

/* 首页 */
#home-body {
  height: calc(100%);
  background-color: #ffea62;
}

#home-body .box {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  margin: 50px auto;
  /* min-height: ; */
  flex: 1;
}

#home-body .iphone-wrapper {
  /* margin-right: 36px; */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 237px;
  height: 480px;
  position: relative;
}

#home-body .iphone-wrapper .border {
  position: absolute;
  background: url("https://jihuanshe-frontend.jihuanshe.com/homepage/iphone-border.png")
    no-repeat center;
  background-size: contain;
  z-index: 3;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

#home-body .iphone-wrapper .iphone-con {
  width: 89%;
  border-radius: 24px;
  overflow: hidden;
  font-size: 0;
  position: relative;
}

#home-body .iphone-wrapper .iphone-con::before {
  /* content: '';
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: url('https://jihuanshe-frontend.jihuanshe.com/homepage/iphone.png') no-repeat;
  background-size: contain;
  z-index: 1; */
}

#home-body .iphone-wrapper .iphone-bg {
  width: 100%;
  position: relative;
  /* position: absolute;
  left: 0;
  right: 0; */
  z-index: 1;
}

#home-body .iphone-wrapper .cover {
  width: 100%;
  opacity: 1;
}

#home-body .iphone-wrapper video {
  width: 100%;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 2;
}

#home-body .description {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  margin-top: 105px;
  margin-left: 36px;
}

#home-body .description .logo img {
  width: 156px;
}

#home-body .description .tit {
  margin-top: 12px;
  font-weight: 300;
  font-size: 18px;
  letter-spacing: 0.8px;
  text-indent: 0;
}

/* #home-body .ios, #home-body  .android{
    position: relative;
    z-index: 1;
} */
#home-body .btn-box{
  margin-top: 30px;
}

#home-body .btn-box .btn-tit{
  color: #222224;
  font-size: 14px;
  font-weight: 600;
  line-height: 22px;
  letter-spacing: 0.28px;
  margin-bottom: 6px;
}

#home-body .qrcodes {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  font-size: 0.8rem;
}

#home-body .qrcodes .button {
  font-size: 0;
  margin-right: 18px;
}

#home-body .qrcodes .button:last-of-type {
  margin-right: 0;
}

#home-body .qrcodes a {
  display: inline-block;
  font-size: 0;
}

#home-body .qrcodes .button-img {
  width: 116px;
}

#home-body .imgBox {
  display: inline-block;
  position: relative;
  background-color: #222224;
  border-radius: 9px;
  transition: 0.1s 0.1s ease-in-out;
}

#home-body .imgBox:hover {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

#home-body .mobile-btn .imgBox {
  background-color: transparent;
  border-radius: unset;
}

#home-body .xcxqr {
  position: absolute;
  bottom: 0;
  opacity: 0;
  transition: 0.18s 0.1s ease-in-out;
  border: 3px solid #222224;
  overflow: hidden;
  border-top-left-radius: 9px;
  border-top-right-radius: 9px;
  width: calc(116px - 6px);
  z-index: -1;
}

#home-body .imgBox:hover .xcxqr {
  bottom: 36px;
  opacity: 1;
  z-index: 1;
}

#home-body .xcxqr img {
  width: 100%;
}

@media screen and (max-height: 700px) {
  #home-body {
    height: auto;
  }
}

@media screen and (max-width: 720px) {
  #home-body .qrcodes {
    width: 200px;
    flex-wrap: wrap;
  }

  #home-body .qrcodes .button {
    margin-right: 0;
    margin-bottom: 18px;
  }
}

@media screen and (max-width: 560px) {
  #home-body {
    /* height: calc(100% - 35px - 48px); */
  }

  #home-body .qrcodes {
    width: min-content;
  }

  #home-body .qrcodes .button {
    margin-bottom: 9px;
  }

  #home-body .iphone-wrapper {
    width: 50%;
    min-width: 165px;
  }

  #home-body .description {
    margin-left: 24px;
  }

  #home-body .description .logo,
  #home-body .description .tit {
    display: none;
  }
}

@media screen and (max-width: 480px) {
  #home-body .qrcodes .button-img {
    width: 106px;
  }

  #home-body .qrcodes .button {
    margin-right: 0;
    margin-bottom: 14px;
  }

  #home-body .xcxqr {
    width: calc(106px - 6px);
  }

  #home-body .imgBox:hover .xcxqr {
    bottom: 33px;
  }
}

/* 文章 */
.art-content {
  max-width: 960px;
  margin: 0 auto;
  /* width: calc(960px - 110px - 110px); */
  flex: 1;
  padding: 90px 110px;
  background-color: #fff;
  font-size: 14px;
  color: #555557;
}

#about-con .box-tit {
  font-size: 24px;
  letter-spacing: 0.48px;
  font-weight: 500;
  color: #222224;
}

#about-con .box-tit:first-of-type {
  margin-bottom: 30px;
}

#about-con #desc div {
  margin-bottom: 18px;
  line-height: 24px;
}

#about-con .box {
  margin-bottom: 90px;
}

#about-con #qrcode-con {
  display: flex;
  align-items: center;
}

#about-con .qrcode {
  display: inline-block;
  text-align: center;
}

#about-con .qrcode img {
  width: 110px;
}

#about-con .qrcode-img {
  font-size: 0;
  display: inline-block;
}

#about-con .qrcode div {
  font-size: 14px;
  color: #555557;
  margin-top: 12px;
}

#about-con .line {
  width: 1px;
  height: 42px;
  display: inline-block;
  background-color: #222224;
  margin: 0 45px;
}

#contact-box div {
  margin-bottom: 18px;
}

#contact-box img {
  width: 110px;
}

#contact-box .contact-qr {
  display: flex;
  align-items: flex-start;
}

@media screen and (max-width: 1300px) {
  .art-content {
    padding: 80px;
    /* width: calc(100% - 80px - 80px); */
  }
}

@media screen and (max-width: 860px) {
  .art-content {
    padding: 50px;
    /* width: calc(100% - 50px - 50px); */
  }
}

@media screen and (max-width: 560px) {
  .art-content {
    padding: 30px;
    /* width: calc(100% - 30px - 30px); */
  }

  #about-con .line {
    display: none;
  }

  #about-con #qrcode-con {
    justify-content: space-around;
  }
}

/* 招聘 */
#join-body .container {
  margin-left: 0;
  margin-right: 0;
}
#join-body #job-box-content {
  margin: 0 30px;
}
#join-body .join-container {
  margin: 60px 0 120px 0;
}
#join-body .join-container .banner {
  margin: 48px;
}

#join-body .banner-img {
  text-align: center;
}

#join-body .banner-img img {
  width: 100%;
  max-width: 704px;
}

#join-body .hiring {
  color: #000;
  text-align: center;
  font-size: 24px;
  font-weight: 400;
  line-height: 24px;
}

.labels {
  margin: 36px 0 60px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 9px;
}

.label {
  flex: 0 0 auto;
  cursor: pointer;
  font-size: 14px;
  line-height: 18px;
  letter-spacing: 0.4px;
  padding: 6px 18px;
  border-radius: 16px;
}

.label:hover,
.label.active {
  background: #ffea62;
  font-weight: 600;
}

.body-section {
  max-width: 662px;
  margin: auto;
}

.jobs {
  display: grid;
  flex-wrap: wrap;
  gap: 15px;
  grid-template-columns: repeat(2, 1fr);
}

.jobs .box {
}

.jobs .job {
  width: 100%;
}

.job-content {
  position: relative;
  cursor: pointer;
  display: flex;
  height: 108px;
  flex-direction: column;
  justify-content: space-between;
  border-radius: 18px;
  border: 1px solid #000;
  padding: 15px 24px;
  transition: background 0.1s ease-in-out;
}

.job-content:hover {
  background-color: #ffea62;
}

.job-content:after {
  position: absolute;
  right: 24px;
  content: "";
  top: 0;
  bottom: 0;
  display: flex;
  align-items: center;
  width: 5px;
  background: url("../jhsweb/arrow.svg") right center no-repeat;
  background-size: 5px 8px;
}

.job-header {
  color: #222224;
  font-size: 21px;
  font-weight: 400;
  line-height: 24px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
  white-space: normal;
  max-height: 56px;
}

.job-en {
  color: #99999b;
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
  margin-top: 6px;
}

.job-footer {
  color: #222224;
  font-weight: 300;
  font-size: 16px;
  line-height: 24px;
}

#join-body .footer {
  padding-top: 57px;
  padding-bottom: 57px;
  background-color: #ffea62;
}

@media screen and (max-width: 630px) {
  #join-body .join-container {
    margin: 0 0 68px 0;
  }

  #join-body .join-container .banner {
    margin: 36px;
  }

  .jobs {
    grid-template-columns: 1fr;
  }

  .labels {
    gap: 5px;
  }

  .label {
    padding-left: 14px;
    padding-right: 14px;
  }

  #join-body .footer {
    padding-top: 39px;
    padding-bottom: 39px;
  }
}

#join-body .join-detail-container {
  margin: 72px 0;
}

#join-body .section-article {
  margin: 48px 0;
  padding: 63px 36px;
  background: #f9f9fb;
}

#join-body .section-article .article-wrap {
  max-width: 740px;
  width: 100%;
  margin: 0 auto;
  display: none;
}

#join-body .section-article .article-header {
  font-size: 24px;
  line-height: 28px;
  letter-spacing: 0.48px;
  margin-bottom: 30px;
}

#join-body .section-article .article-content {
  color: #555557;
  font-size: 14px;
  line-height: 34px;
}

#join-body .readable ol,
#join-body .readable ul {
  list-style-type: decimal;
  padding-left: 2em;
}

#join-body .button-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 644px;
  width: 100%;
}

#join-body .button .button-content {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}

#join-body .button .button-content span {
  text-decoration: underline;
}

#join-body .section-operations {
  margin: 24px 48px;
}

#join-body .section-operations .button {
  display: inline-block;
  cursor: pointer;
  padding: 15px 21px;
  font-size: 16px;
  border-radius: 12px;
  line-height: 24px;
  border: 1px solid #000;
  transition: 0.1s all;
}

#join-body .button-primary {
  background: #ffe411;
}

#join-body .button-primary:hover {
  background: #fff393;
}

.job-content:active,
#join-body .button-primary:active,
#join-body .button-normal:active {
  box-shadow: 0 1px 0 rgba(0, 0, 0, 1) inset;
  transform: translateY(1px);
}

#join-body .button-normal {
  border: 1px solid #9b9b9b;
  color: #353c41;
}

#join-body .button-normal:hover {
  background: #f4f4f6;
}

@media screen and (max-width: 560px) {
  #join-body .join-detail-container {
    margin: 0;
  }
  #join-body .join-detail-container .banner {
    margin-top: 48px;
  }
  #join-body .section-article {
    padding-top: 48px;
    padding-bottom: 48px;
  }
  #join-body .button-box {
    flex-direction: column;
    gap: 18px;
  }
  #join-body .section-operations {
    margin-top: 48px;
    margin-bottom: 48px;
  }
  #join-body .section-operations .button {
    width: 278px;
    text-align: center;
    margin-bottom: 18px;
  }
}

.back-join {
  font-size: 14px;
  line-height: 18px;
  letter-spacing: 0.4px;
  padding: 18px 36px;
}

.back-join .icon {
  width: 5px;
  height: 8px;
  margin-right: 5px;
  display: inline-block;
  background: url('./arrow-left.svg') right center no-repeat;
  background-size: 5px 8px;
}
