﻿.btn-menu span, .index-banner .slick-arrow, .works-item__img img, .news-item__img img, .page-cate a, .wsd-pager, .share-box, .share-right, .share-left, .social a, .detail-gotop, .page-works .works-item__img::after, .works-item__txt, .wdphoto-item::after, .slick-ab .slick-arrow, .phonor-item > a, .phonor-sub > a, .slick-at .slick-arrow, .at-item__img img, .at-item__intro, .slick-partner .slick-arrow, .partner-item img, .cf-follow a, .footer-design a, .footer-wechat img, .tiktok img {
  -moz-transition: all .3s ease;
  -o-transition: all .3s ease;
  -webkit-transition: all .3s ease;
  transition: all .3s ease
}
.show-all::before, .show-all::after {
  -moz-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}
 
 
 
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, p, pre, q, ruby, s, samp, section, small, span, strike, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
  border: 0;
  font-size: 100%;
  font: inherit;
  margin: 0;
  padding: 0;
  vertical-align: baseline
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block
}
body {
  line-height: 1;
  text-size-adjust: none
}
ol, ul {
  list-style: none
}
blockquote, q {
  quotes: none
}
blockquote::after, blockquote::before, q::after, q::before {
  content: "";
  content: none
}
table {
  border-collapse: collapse;
  border-spacing: 0
}
input, select, textarea {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0
}
* {
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box
}
a {
  outline: 0;
  text-decoration: none
}
a:hover {
  text-decoration: none
}
body, input, textarea {
  font-family: "Source Han Sans CN", "PingFang SC", "Microsoft YaHei", "STSong", "SimSun", Arial, sans-serif
}
input[type='text']:-webkit-autofill {
  box-shadow: 0 0 0 1000px #fff inset
}
[class*=' icon-'], [class^=icon-] {
  font-family: "iconfont";
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  speak: none;
  text-transform: none
}
input[type=text]::-ms-clear, input[type=tel]::-ms-clear, input[type=number]::-ms-clear {
  display: none
}
body {
  background-color: #fff
}
.wow {
  visibility: hidden
}
.no-cssanimations .wow {
  visibility: visible
}
.mt-10 {
  margin-top: 10px
}
.mt-20 {
  margin-top: 20px
}
.mt-30 {
  margin-top: 30px
}
.mt-40 {
  margin-top: 40px
}
.mt-50 {
  margin-top: 50px
}
.mt-60 {
  margin-top: 60px
}
.mt-70 {
  margin-top: 70px
}
.mt-80 {
  margin-top: 80px
}
.mt-90 {
  margin-top: 90px
}
.mt-100 {
  margin-top: 100px
}
.mt-110 {
  margin-top: 110px
}
.mt-120 {
  margin-top: 120px
}
.mt-130 {
  margin-top: 130px
}
.mt-140 {
  margin-top: 140px
}
.mt-160 {
  margin-top: 160px
}
.mt-180 {
  margin-top: 180px
}
.mt-190 {
  margin-top: 190px
}
.mt-200 {
  margin-top: 200px
}
.mt-230 {
  margin-top: 230px
}
.mt-240 {
  margin-top: 240px
}
.mt-250 {
  margin-top: 250px
}
.mt-260 {
  margin-top: 260px
}
.mt-270 {
  margin-top: 270px
}
.mt-280 {
  margin-top: 280px
}
@media (max-width: 1920px) {
  .mt-140 {
    margin-top: 7.29167vw
  }
  .mt-160 {
    margin-top: 8.33333vw
  }
  .mt-180 {
    margin-top: 9.375vw
  }
  .mt-190 {
    margin-top: 9.89583vw
  }
  .mt-200 {
    margin-top: 10.41667vw
  }
  .mt-190 {
    margin-top: 9.89583vw
  }
  .mt-230 {
    margin-top: 11.97917vw
  }
  .mt-240 {
    margin-top: 12.5vw
  }
  .mt-250 {
    margin-top: 13.02083vw
  }
  .mt-260 {
    margin-top: 13.54167vw
  }
  .mt-270 {
    margin-top: 14.0625vw
  }
  .mt-280 {
    margin-top: 14.58333vw
  }
}
@media (max-width: 750px) {
  .mt-280 {
    margin-top: 37.33333vw
  }
  .mt-200 {
    margin-top: 37.33333vw
  }
  .mt-100 {
    margin-top: 13.33333vw
  }
}
.text-right {
  text-align: right
}
.text-left {
  text-align: left
}
.text-center {
  text-align: center
}
.d-inline-block {
  display: inline-block
}
.d-none {
  display: none !important
}
.d-block {
  display: block
}
.v-rl {
  writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl
}
.v-lr {
  writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr
}
.contact-map .BMapLabel {
  border: 0
}
.contact-map .anchorBL {
  display: none
}
.list {
  position: relative;
  font-size: 0
}
.list > li {
  display: inline-block;
  vertical-align: top
}
.list-1 > li {
  width: 100%
}
.list-2 > li {
  width: 50%
}
.list-3 > li {
  width: 33.3333%
}
.list-4 > li {
  width: 25%
}
.list-5 > li {
  width: 20%
}
.list-6 > li {
  width: 16.6666%
}
.img-box {
  position: relative;
  overflow: hidden
}
.img-box::before {
  content: "";
  display: block
}
.img-box img {
  left: 0;
  position: absolute;
  top: 0;
  width: 100%
}
.bg-cover {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover
}
.wx-share {
  margin-top: -130px;
  margin-left: -120px;
  border-radius: 3px;
  position: fixed;
  z-index: 1000;
  top: 50%;
  left: 50%;
  padding: 20px 10px;
  width: 240px;
  height: 280px;
  background-color: #fff;
  cursor: pointer;
  box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.1)
}
.wx-share img {
  display: block;
  width: 100%
}
.wx-share p {
  font-size: 12px;
  line-height: 20px;
  text-align: center;
  font-weight: 500;
  color: #000
}
.wx-share i {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 12px;
  width: 2.5em;
  height: 2.5em;
  line-height: 2.5;
  text-align: center;
  color: #000
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0
  }
  to {
    opacity: 1
  }
}
@keyframes fadeIn {
  from {
    opacity: 0
  }
  to {
    opacity: 1
  }
}
.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn
}
@-webkit-keyframes wShow {
  from {
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
  }
  to {
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
  }
}
@keyframes wShow {
  from {
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
  }
  to {
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
  }
}
.wShow {
  -webkit-animation-name: wShow;
  animation-name: wShow
}
@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp
}
@-webkit-keyframes fadeInUpSmall {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 80px, 0);
    transform: translate3d(0, 80px, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
@keyframes fadeInUpSmall {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 80px, 0);
    transform: translate3d(0, 80px, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
.fadeInUpSmall {
  -webkit-animation-name: fadeInUpSmall;
  animation-name: fadeInUpSmall
}
@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown
}
@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft
}
@-webkit-keyframes fadeInLeftSmall {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-40px, 0, 0);
    transform: translate3d(-40px, 0, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
@keyframes fadeInLeftSmall {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-40px, 0, 0);
    transform: translate3d(-40px, 0, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
.fadeInLeftSmall {
  -webkit-animation-name: fadeInLeftSmall;
  animation-name: fadeInLeftSmall
}
@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight
}
@-webkit-keyframes fadeInRightSmall {
  from {
    opacity: 0;
    -webkit-transform: translate3d(40px, 0, 0);
    transform: translate3d(40px, 0, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
@keyframes fadeInRightSmall {
  from {
    opacity: 0;
    -webkit-transform: translate3d(40px, 0, 0);
    transform: translate3d(40px, 0, 0)
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
}
.fadeInRightSmall {
  -webkit-animation-name: fadeInRightSmall;
  animation-name: fadeInRightSmall
}
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both
}
.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite
}
.animated.delay-1s {
  -webkit-animation-delay: 1s;
  animation-delay: 1s
}
.animated.delay-2s {
  -webkit-animation-delay: 2s;
  animation-delay: 2s
}
.animated.delay-3s {
  -webkit-animation-delay: 3s;
  animation-delay: 3s
}
.animated.delay-4s {
  -webkit-animation-delay: 4s;
  animation-delay: 4s
}
.animated.delay-5s {
  -webkit-animation-delay: 5s;
  animation-delay: 5s
}
.animated.fast {
  -webkit-animation-duration: 800ms;
  animation-duration: 800ms
}
.animated.faster {
  -webkit-animation-duration: 500ms;
  animation-duration: 500ms
}
.animated.slow {
  -webkit-animation-duration: 2s;
  animation-duration: 2s
}
.animated.slower {
  -webkit-animation-duration: 3s;
  animation-duration: 3s
}
@media (prefers-reduced-motion) {
  .animated {
    -webkit-animation: unset !important;
    animation: unset !important;
    -webkit-transition: none !important;
    transition: none !important
  }
}
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent
}
.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0
}
.slick-list:focus {
  outline: 0
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand
}
.slick-slider .slick-list, .slick-slider .slick-track {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0)
}
.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-left: auto;
  margin-right: auto
}
.slick-track::after, .slick-track::before {
  display: table;
  content: ""
}
.slick-track::after {
  clear: both
}
.slick-loading .slick-track {
  visibility: hidden
}
.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
  outline: 0
}
.slick-slide a {
  outline: 0
}
[dir=rtl] .slick-slide {
  float: right
}
.slick-slide img {
  display: block
}
.slick-slide.slick-loading img {
  display: none
}
.slick-slide.dragging img {
  pointer-events: none
}
.slick-initialized .slick-slide {
  display: block
}
.slick-loading .slick-slide {
  visibility: hidden
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent
}
.slick-arrow.slick-hidden {
  display: none
}
.banner-dots {
  position: absolute;
  bottom: 20px;
  right: 0;
  left: 0;
  font-size: 0;
  text-align: center
}
.banner-dots li {
  margin: 0 8px;
  display: inline-block;
  vertical-align: top
}
.banner-dots li button {
  position: relative;
  display: inline-block;
  padding: 0;
  border: 0;
  font-size: 0;
  background-color: transparent;
  outline: 0;
  cursor: pointer
}
.banner-dots li button::before {
  -moz-transition: all .3s ease-out;
  -o-transition: all .3s ease-out;
  -webkit-transition: all .3s ease-out;
  transition: all .3s ease-out;
  content: "";
  display: block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #bababa
}
.banner-dots li.slick-active button::before {
  background-color: #0075c2
}
.slick-ab .banner-dots {
  text-align: right;
  right: 20px
}
.slick-ab .banner-dots li {
  vertical-align: bottom
}
.slick-ab .banner-dots li button::before {
  width: 8px;
  height: 14px;
  border-radius: 0;
  background-color: #fff;
  opacity: 0.5
}
.slick-ab .banner-dots li.slick-active button::before {
  opacity: 1;
  height: 20px
}
.container {
  max-width: 1920px;
  overflow: hidden
}
.wrap {
  max-width: 1540px;
  margin-right: auto;
  margin-left: auto
}
.header {
  padding-top: 30px;
  padding-bottom: 30px;
  position: fixed;
  z-index: 100;
  top: 0;
  right: 0;
  left: 0;
  background-color: #fff;
  -moz-transition: all .3s ease;
  -o-transition: all .3s ease;
  -webkit-transition: all .3s ease;
  transition: all .3s ease
}
.header.fixed {
  padding-top: 30px
}
.header-inner {
  position: relative;
  height: 46px
}
.header-logo {
  position: absolute;
  z-index: 50;
  top: 0;
  left: 0
}
.header-logo img {
  height: 46px
}
.header-menu {
  padding-top: 14px;
  font-size: 0;
  text-align: right
}
.header-menu > li {
  position: relative;
  margin: 0 18px
}
.header-menu > li::after {
  content: "";
  position: absolute;
  top: 2px;
  right: -18px;
  width: 1px;
  height: 16px;
  background-color: #000
}
.header-menu > li:last-of-type {
  margin-right: 0
}
.header-menu > li:last-of-type::after {
  display: none
}
body.offscreen .header {
  margin-top: -120px
}
body.drop .header {
  margin-top: 0
}
.menu-link {
  position: relative;
  font-size: 18px;
  line-height: 1;
  color: #333
}
@media (min-width: 1025px) {
  .menu-link {
    display: inline-block;
    vertical-align: top;
    overflow: hidden
  }
  .menu-link span {
    display: inline-block;
    -webkit-transition: all .3s;
    transition: all .3s
  }
  .menu-link span:last-of-type {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
  }
  .menu-link:hover {
    color: #666
  }
  .menu-link:hover span:first-of-type {
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%)
  }
  .menu-link:hover span:last-of-type {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}
@media (max-width: 1660px) {
  .wrap {
    max-width: auto;
    margin-right: 60px;
    margin-left: 60px
  }
}
@media (max-width: 1024px) {
  .menu-link span:last-of-type {
    display: none
  }
}
.header-lang .menu-link {
  color: #ccc
}
.header-lang .menu-link.current {
  color: #000
}
.btn-menu {
  position: absolute;
  z-index: 50;
  top: 50%;
  right: 0;
  margin-top: -15px;
  width: 30px;
  height: 30px;
  display: none
}
.btn-menu span {
  position: absolute;
  top: 50%;
  right: 4px;
  background-color: #000
}
.btn-menu span:nth-of-type(1), .btn-menu span:nth-of-type(3) {
  width: 20px;
  height: 1px
}
.btn-menu span:nth-of-type(1) {
  margin-top: -7px
}
.btn-menu span:nth-of-type(3) {
  margin-top: 6px
}
.btn-menu span:nth-of-type(2) {
  width: 28px;
  height: 2px;
  margin-top: -1px
}
.menu-open .btn-menu span:nth-of-type(1) {
  margin-top: 0;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg)
}
.menu-open .btn-menu span:nth-of-type(3) {
  margin-top: 0;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}
.menu-open .btn-menu span:nth-of-type(2) {
  width: 0;
  visibility: hidden;
  opacity: 0
}
@media (max-width: 1024px) {
  .wrap {
    width: auto;
    margin-right: 40px;
    margin-left: 40px
  }
  .header {
    padding-top: 20px;
    padding-bottom: 20px
  }
  .header::before {
    content: "";
    position: absolute;
    z-index: 10;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #fff
  }
  .header.fixed {
    padding-top: 20px
  }
  .header-inner {
    height: 28px
  }
  .header-logo img {
    height: 28px
  }
  .btn-menu {
    display: block
  }
  .menu-wrap {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: #fff;
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    -webkit-transition: all .3s ease;
    transition: all .3s ease
  }
  .menu-open .menu-wrap {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
  }
  .header-menu {
    border-top: 8px solid #000;
    padding-top: 0;
    margin-top: 130px;
    margin-right: 20px;
    margin-left: 20px
  }
  .header-menu > li {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    text-align: center;
    border-bottom: 1px solid #000
  }
  .header-menu > li::after {
    display: none
  }
  .menu-link {
    line-height: 3.5
  }
}
@media (max-width: 750px) {
  .wrap {
    margin-right: 6.66667vw;
    margin-left: 6.66667vw
  }
  .header-menu {
    border-top-width: 1.06667vw
  }
  .menu-link {
    font-size: 5.86667vw
  }
}
.page-top {
  height: 116px
}
.index-line {
  position: relative;
  margin-top: 320px;
  overflow: hidden;
  height: 35px
}
.index-line img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%
}
.index-line span {

  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  background-color: #fff;
  -webkit-transform-origin: 100% 100%;
  transform-origin: 100% 100%;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards
}
.index-slogan {
  margin-top: 5em;
  font-size: 36px;
  line-height: 1.5;
  font-family: 'STSong', 'SimSun', '宋体';
  font-weight: 700;
  color: #333;
  letter-spacing: .02em
}
.index-slogan.show {
  -webkit-animation: fadeInUpSmall 1.5s ease-out;
  animation: fadeInUpSmall 1.5s ease-out;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both
}
.index-slogan {
  visibility: hidden
}
.index-slogan.show {
  visibility: visible
}
.ib-box {
  overflow: hidden
}
.ib-box::before {
  padding-top: 46.1039%
}
.ib-box__bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 10;
  background-color: #fff;
  -webkit-transform-origin: bottom left;
  transform-origin: bottom left;
  -webkit-transition: transform 3s;
  transition: transform 3s
}
.ib-box__bg.show {
  -webkit-transform: scaleY(0);
  transform: scaleY(0)
}
.index-banner {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  overflow: hidden
}
.index-banner .slick-arrow {
  font-size: 0;
  position: absolute;
  z-index: 10;
  top: 50%;
  margin-top: -30px;
  border: 0;
  padding: 0;
  outline: 0;
  background-color: transparent;
  visibility: hidden;
  opacity: 0;
  cursor: pointer
}
.index-banner .slick-arrow::before {
  font-family: 'iconfont';
  display: inline-block;
  vertical-align: top;
  line-height: 2;
  font-size: 40px;
  width: 2em;
  line-height: 1.5;
  text-align: center;
  color: #fff
}
.index-banner .slick-prev {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  left: 0
}
.index-banner .slick-prev::before {
  content: "\e605"
}
.index-banner .slick-next {
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
  right: 0
}
.index-banner .slick-next::before {
  content: "\e606"
}
.ib-item::before {
  padding-top: 46.1039%
}
@media (min-width: 1025px) {
  .index-banner.show-ar:hover .slick-next {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%)
  }
  .index-banner.show-al:hover .slick-prev {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%)
  }
}
@media (max-width: 1660px) {
  .index-line {
    margin-top: 19.27711vw;
    height: 2.10843vw
  }
  .index-slogan {
    font-size: 3.37349vw
  }
}
@media (max-width: 1024px) {
  .page-top {
    height: 88px
  }
}
@media (max-width: 750px) {
  .page-top {
    height: 68px
  }
  .ib-item::before, .ib-box::before {
    padding-top: 115.38462%
  }
  .index-line {
    margin-top: 16vw;
    height: 18, 750
  }
  .index-slogan {
    font-size: 4vw;
    line-height: 1.75;
    margin-top: 18.66667vw
  }
  .ib-box {
    margin-top: 6.66667vw
  }
}
.list-works {
  margin-right: -20px;
  margin-left: -20px
}
.works-item {
  position: relative;
  display: block;
  margin-right: 20px;
  margin-left: 20px;
  color: #333
}
.works-item__info, .news-item__info {
  height: 160px
}
.news-item__info {
  position: relative
}
.list-line {
  height: 8px;
  background-color: #000
}
.works-item__title {
  margin-top: .6875em;
  font-size: 24px;
  line-height: 1;
  letter-spacing: .02em
}
.works-item__type {
  margin-top: .5em;
  font-size: 16px;
  line-height: 1;
  letter-spacing: .02em
}
.works-item__intro {
  margin-top: .5em;
  font-size: 14px;
  line-height: 1;
  letter-spacing: .02em
}
.works-item__img::before, .news-item__img::before {
  padding-top: 61.0687%
}
.news-item {
  display: block;
  margin-right: 20px;
  margin-left: 20px
}
.news-item__title {
  margin-top: .9em;
  font-size: 18px;
  line-height: 1.5;
  color: #333;
  margin-right: 6em;
  letter-spacing: .02em
}
.news-item__date {
  position: absolute;
  top: 0;
  right: 0;
  font-family: "Nunito Sans";
  text-align: right;
  color: #333
}
.news-item__date span {
  display: block
}
.news-item__date .day {
  margin-top: .4em;
  font-size: 52px
}
.news-item__date .month, .news-item__date .year {
  font-size: 14px;
  line-height: 1.5
}
@media (min-width: 1025px) {
  .works-item__img img, .news-item__img img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0)
  }
  .works-item:hover .works-item__img img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0)
  }
  .news-item:hover .news-item__img img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0)
  }
  .list-index > li .works-item__img, .list-index > li .news-item__img {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
    -webkit-transition: all .3s;
    transition: all .3s
  }
  .list-index > li.active .works-item__img, .list-index > li.active .news-item__img {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}
@media (max-width: 1660px) {
  .list-works {
    margin-right: -1.20482vw;
    margin-left: -1.20482vw
  }
  .works-item, .news-item {
    margin-right: 1.20482vw;
    margin-left: 1.20482vw
  }
  .works-item__info, .news-item__info {
    height: 9.63855vw
  }
  .list-line {
    height: .48193vw
  }
  .works-item__title {
    font-size: 1.44578vw
  }
  .works-item__type {
    font-size: .96386vw
  }
  .works-item__intro {
    font-size: .84337vw
  }
  .news-item__title {
    font-size: 1.08434vw
  }
  .news-item__date .day {
    font-size: 3.13253vw
  }
  .news-item__date .month, .news-item__date .year {
    font-size: .84337vw
  }
}
@media (max-width: 750px) {
  .index-works {
    margin-top: 26.66667vw
  }
  .list-index-works > li {
    width: 100%
  }
  .list-index-works > li:nth-of-type(n+2) {
    margin-top: 14.66667vw
  }
  .list-index-works .works-item__intro {
    display: none
  }
  .list-line {
    height: 1.06667vw
  }
  .index-banner .slick-arrow {
    display: none
  }
  .works-item__info, .news-item__info {
    height: auto
  }
  .works-item__title {
    font-size: 5.06667vw
  }
  .works-item__type {
    font-size: 3.2vw
  }
  .works-item__img {
    margin-top: 5.33333vw
  }
  .news-item__title {
    font-size: 4.26667vw;
    margin-right: 0
  }
  .news-item__date {
    margin-top: 3.2vw;
    position: relative;
    font-size: 0;
    text-align: left
  }
  .news-item__date span {
    display: inline-block;
    vertical-align: top
  }
  .news-item__date .day, .news-item__date .month, .news-item__date .year {
    margin-top: 0;
    font-size: 2.93333vw
  }
  .news-item__date .day {
    line-height: 1.5
  }
  .news-item__img {
    margin-top: 5.33333vw
  }
}
.page-cate {
  font-size: 0
}
.page-cate a {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin-right: 2em;
  font-size: 18px;
  line-height: 2.8;
  color: #b2b2b2;
  letter-spacing: .02em
}
.page-cate a::after {
  content: "";
  position: absolute;
  top: 1.05em;
  right: -1em;
  width: 1px;
  height: .7em;
  background-color: #b2b2b2
}
.page-cate a:first-of-type {
  margin-left: 0
}
.page-cate a:last-of-type {
  margin-right: 0
}
.page-cate a:last-of-type::after {
  display: none
}
.page-cate a.current {
  color: #333
}
@media (min-width: 1025px) {
  .page-cate a:hover {
    color: #333
  }
}
@media (max-width: 750px) {
  .page-cate {
    margin-top: 2.66667vw
  }
  .page-cate a {
    font-size: 4vw
  }
}
.list-pnews > li:nth-of-type(n+2) {
  margin-top: 120px
}
.pnews-item {
  position: relative;
  display: block;
  padding-top: 40px;
  padding-left: 450px;
  padding-right: 400px;
  border-top: 8px solid #000
}
.pnews-item__img {
  position: absolute;
  top: 40px;
  left: 0;
  width: 382px
}
.pnews-item__img::before {
  padding-top: 61.0687%
}
.pnews-item__info {
  min-height: 234px;
  color: #333
}
.pnews-item__title {
  font-size: 24px;
  line-height: 1.4;
  font-weight: 400;
  letter-spacing: .02em
}
.pnews-item__desc {
  margin-top: .86em;
  height: 5.625em;
  overflow: hidden;
  font-size: 14px;
  line-height: 1.875;
  letter-spacing: .02em
}
.view-more {
  position: relative;
  display: inline-block;
  vertical-align: top;
  padding-left: 40px;
  margin-top: 3.14em;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: .02em
}
.view-more::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -2px;
  width: 32px;
  height: 2px;
  background-color: #000
}
.pnews-item__date {
  position: absolute;
  top: 40px;
  right: 0
}
.pnews-item__date span {
  display: block;
  text-align: right;
  font-weight: 300;
  font-family: "黑体";
  color: #333
}
.pnews-item__date .day {
  font-size: 80px;
  line-height: .84
}
.pnews-item__date .month, .pnews-item__date .year {
  font-size: 24px;
  line-height: 1.5
}
.loading {
  font-size: 0;
  text-align: center
}
.loading i {
  margin: 0 9px;
  display: inline-block;
  vertical-align: top;
  width: 6px;
  height: 14px;
  background-color: #000
}
.loading i:nth-of-type(1) {
  -webkit-animation: loading1 1s linear infinite;
  animation: loading1 1s linear infinite
}
.loading i:nth-of-type(2) {
  opacity: .85;
  -webkit-animation: loading2 1s linear infinite;
  animation: loading2 1s linear infinite
}
.loading i:nth-of-type(3) {
  opacity: .7;
  -webkit-animation: loading3 1s linear infinite;
  animation: loading3 1s linear infinite
}
.loading i:nth-of-type(4) {
  opacity: .55;
  -webkit-animation: loading4 1s linear infinite;
  animation: loading4 1s linear infinite
}
.loading i:nth-of-type(5) {
  opacity: .4;
  -webkit-animation: loading5 1s linear infinite;
  animation: loading5 1s linear infinite
}
.loading i:nth-of-type(6) {
  -webkit-opacity: .25;
  animation: loading6 1s linear infinite;
  animation: loading6 1s linear infinite
}
@keyframes loading1 {
  0% {
    opacity: 1
  }
  50% {
    opacity: .25
  }
  100% {
    opacity: 1
  }
}
@keyframes loading2 {
  0% {
    opacity: .85
  }
  10% {
    opacity: 1
  }
  60% {
    opacity: .25
  }
  100% {
    opacity: .85
  }
}
@keyframes loading3 {
  0% {
    opacity: .7
  }
  20% {
    opacity: 1
  }
  70% {
    opacity: .25
  }
  100% {
    opacity: .7
  }
}
@keyframes loading4 {
  0% {
    opacity: .55
  }
  30% {
    opacity: 1
  }
  80% {
    opacity: .25
  }
  100% {
    opacity: .55
  }
}
@keyframes loading5 {
  0% {
    opacity: .4
  }
  40% {
    opacity: 1
  }
  90% {
    opacity: .25
  }
  100% {
    opacity: .4
  }
}
@keyframes loading6 {
  0% {
    opacity: .25
  }
  50% {
    opacity: 1
  }
  100% {
    opacity: .25
  }
}
@-webkit-keyframes loading1 {
  0% {
    opacity: 1
  }
  50% {
    opacity: .25
  }
  100% {
    opacity: 1
  }
}
@-webkit-keyframes loading2 {
  0% {
    opacity: .85
  }
  10% {
    opacity: 1
  }
  60% {
    opacity: .25
  }
  100% {
    opacity: .85
  }
}
@-webkit-keyframes loading3 {
  0% {
    opacity: .7
  }
  20% {
    opacity: 1
  }
  70% {
    opacity: .25
  }
  100% {
    opacity: .7
  }
}
@-webkit-keyframes loading4 {
  0% {
    opacity: .55
  }
  30% {
    opacity: 1
  }
  80% {
    opacity: .25
  }
  100% {
    opacity: .55
  }
}
@-webkit-keyframes loading5 {
  0% {
    opacity: .4
  }
  40% {
    opacity: 1
  }
  90% {
    opacity: .25
  }
  100% {
    opacity: .4
  }
}
@-webkit-keyframes loading6 {
  0% {
    opacity: .25
  }
  50% {
    opacity: 1
  }
  100% {
    opacity: .25
  }
}
@media (min-width: 1025px) {
  .view-more {
    -webkit-transition: all .3s;
    transition: all .3s
  }
  .view-more::before {
    -webkit-transition: all .3s;
    transition: all .3s
  }
  .view-more:hover {
    padding-left: 44px
  }
  .view-more:hover::before {
    width: 34px
  }
  .pnews-item__img img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    -moz-transition: all .3s;
    -o-transition: all .3s;
    -webkit-transition: all .3s;
    transition: all .3s
  }
  .pnews-item:hover .pnews-item__img img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    -moz-transform: scale(1.025);
    -ms-transform: scale(1.025);
    -webkit-transform: scale(1.025);
    transform: scale(1.025)
  }
}
@media (max-width: 1660px) {
  .pnews-item {
    border-top-width: .48193vw
  }
  .list-pnews > li:nth-of-type(n+2) {
    margin-top: 7.22892vw
  }
}
@media (max-width: 1600px) {
  .pnews-item {
    padding-right: 200px
  }
}
@media (max-width: 1024px) {
  .pnews-item__desc {
    display: none
  }
  .pnews-item__title {
    font-size: 24px
  }
  .pnews-item__info .view-more {
    display: none
  }
}
@media (max-width: 768px) {
  .pnews-item {
    padding-left: 0;
    padding-right: 0
  }
  .pnews-item__img {
    position: relative;
    width: auto;
    max-width: 524px
  }
  .pnews-item__date {
    position: relative;
    top: auto
  }
  .pnews-item__date span {
    display: inline-block;
    vertical-align: top;
    margin-right: .25em
  }
  .pnews-item__date .day, .pnews-item__date .month, .pnews-item__date .year {
    font-size: 22px;
    line-height: 1.5
  }
  .pnews-item__info {
    min-height: auto
  }
}
@media (max-width: 750px) {
  .loading {
    margin-top: 16vw
  }
  .list-pnews {
    margin-top: 2.66667vw
  }
  .list-pnews > li:nth-of-type(n+2) {
    margin-top: 8vw
  }
  .pnews-item {
    padding-top: 2.66667vw;
    border-top-width: 1.06667vw
  }
  .pnews-item__title {
    font-size: 4.26667vw
  }
  .pnews-item__date {
    margin-top: 5.06667vw
  }
  .pnews-item__date .day, .pnews-item__date .month, .pnews-item__date .year {
    font-size: 2.93333vw
  }
  .pnews-item__img {
    top: 0;
    margin-top: 3.2vw
  }
}
.detail-main {
  position: relative;
  font-size: 0
}
.detail-left, .detail-right {
  display: inline-block;
  vertical-align: top
}
.detail-left {
  width: 67.8%
}
.detail-right {
  width: 23.2%;
  margin-left: 9%;
  border-top: 8px solid #000
}
.wd-right {
  position: absolute;
  top: 0;
  right: 0;
  margin-left: 0
}
.detail-top {
  position: relative;
  padding-right: 300px;
  border-top: 8px solid #000
}
.detail-top .pnews-item__date {
  top: 32px
}
.detail-top-pub {
  padding-right: 0
}
.detail-title {
  margin-top: .8em;
  font-size: 24px;
  line-height: 1.4;
  font-weight: 400;
  color: #333;
  letter-spacing: .02em
}
.detail-desc {
  margin-top: 1.786em;
  font-size: 14px;
  line-height: 2;
  color: #333;
  letter-spacing: .02em
}
.detail-body {
  padding-right: 100px;
  font-size: 14px;
  line-height: 2;
  color: #333;
  text-align: justify;
  letter-spacing: .02em
}
.detail-body img {
  max-width: 100%;
  height: auto !important
}
.detail-body h3 {
  font-size: 20px;
  letter-spacing: .02em
}
.detail-body blockquote {
  padding-left: 1.5em;
  border-left: 5px solid #ccc;
  font-style: italic;
  margin-left: 0
}
.related-title {
  font-size: 32px;
  line-height: 1.2;
  font-weight: 400;
  color: #333;
  letter-spacing: .02em
}
.related-title span {
  position: relative;
  display: inline-block;
  vertical-align: top;
  padding-right: .5em;
  margin-right: .5em
}
.related-title span::after {
  content: "";
  position: absolute;
  width: 2px;
  height: .8em;
  top: .2em;
  right: 0;
  background-color: #000
}
.list-news {
  margin-right: -20px;
  margin-left: -20px
}
.list-news .news-item__info {
  height: 170px
}
.detail-side {
  position: absolute;
  top: 0;
  right: 0
}
.detail-pager {
  color: #333;
  margin-bottom: 40px;
  display: block
}
.detail-pager i, .detail-pager span {
  display: inline-block;
  vertical-align: top;
  line-height: 30px
}
.detail-pager i {
  margin-right: .45em;
  font-size: 22px;
  line-height: 30px
}
.detail-pager span {
  font-size: 14px;
  line-height: 30px;
  letter-spacing: .02em
}
.detail-share {
  cursor: pointer;
  overflow: hidden
}
.detail-share:hover .share-left {
  visibility: hidden;
  opacity: 0;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%)
}
.detail-share:hover .social {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  visibility: visible;
  opacity: 1
}
.share-box {
  position: relative;
  width: 80px
}
.share-left, .share-right {
  display: inline-block;
  vertical-align: top
}
.share-right {
  visibility: hidden;
  opacity: 0
}
.social {
  font-size: 0;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateX(100%);
  transform: translateX(100%)
}
.social a {
  display: inline-block;
  vertical-align: top;
  font-size: 22px;
  line-height: 30px;
  margin-right: .5em;
  color: #333
}
.social a:hover {
  color: #666
}
.detail-gotop {
  position: absolute;
  right: 0;
  bottom: 0;
  font-size: 40px;
  width: 1em;
  height: 1em;
  cursor: pointer
}
@media (max-width: 1660px) {
  .detail-top, .detail-right {
    border-top-width: .48193vw
  }
  .detail-body {
    padding-right: 6.0241vw
  }
}
@media (min-width: 1025px) {
  .wsd-pager:hover {
    color: #999;
    -webkit-transform: translateX(-3px);
    transform: translateX(-3px)
  }
  .detail-gotop:hover {
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px);
    color: #666
  }
}
@media (max-width: 1024px) {
  .wd-right {
    position: relative
  }
  .detail-left {
    width: 100%
  }
  .detail-body {
    padding-right: 0
  }
  .detail-right {
    width: 100%;
    margin-left: 0
  }
  .detail-gotop {
    display: none
  }
  .detail-pager {
    display: inline-block;
    vertical-align: top;
    margin-right: 60px
  }
  .works-share {
    margin-top: 40px
  }
  .detail-side {
    position: relative;
    margin-top: 80px
  }
}
@media (max-width: 750px) {
  .detail-main.mt-200 {
    margin-top: 21.33333vw
  }
  .detail-main.mt-120 {
    margin-top: 13.33333vw
  }
  .detail-left {
    width: 100%
  }
  .detail-top {
    padding-right: 0;
    border-top-width: 1.06667vw
  }
  .detail-top .pnews-item__date {
    top: auto;
    margin-top: 2.66667vw
  }
  .detail-title {
    font-size: 4vw
  }
  .detail-desc {
    font-size: 3.2vw;
    margin-top: 3em
  }
  .detail-body {
    margin-top: 8vw
  }
  .detail-side {
    margin-top: 10.66667vw
  }
  .detail-pager {
    width: 25%;
    margin-bottom: 0;
    margin-right: 0
  }
  .detail-pager span, .detail-pager i {
    display: inline-block;
    vertical-align: top;
    line-height: 6.4vw
  }
  .detail-pager span {
    font-size: 3.2vw
  }
  .detail-pager i {
    font-size: 4vw
  }
  .related-title {
    font-size: 6.13333vw
  }
  .detail-related {
    margin-top: 26.66667vw
  }
  .list-news {
    margin-right: 0;
    margin-left: 0;
    margin-top: 6.66667vw
  }
  .list-news > li {
    width: 100%
  }
  .list-news > li:nth-of-type(n+2) {
    margin-top: 14.66667vw
  }
  .list-news .news-item {
    margin-right: 0;
    margin-left: 0
  }
  .list-news .news-item__info {
    height: auto
  }
}
.list-pub {
  margin-right: -20px;
  margin-left: -20px
}
.list-pub > li:nth-of-type(n+4) {
  margin-top: 160px
}
.pub-item {
  position: relative;
  padding-left: 240px;
  padding-top: 30px;
  margin-right: 20px;
  margin-left: 20px;
  display: block;
  border-top: 8px solid #000
}
.pub-item__img {
  position: absolute;
  top: 30px;
  left: 0;
  width: 200px
}
.pub-item__img::before {
  padding-top: 136%
}
.pub-item__title {
  min-height: 10.5em;
  font-size: 24px;
  line-height: 1.3333;
  font-weight: 400;
  color: #333;
  letter-spacing: .02em
}
.pub-item__tip {
  font-size: 14px;
  line-height: 1.5;
  color: #808080;
  letter-spacing: .02em
}
@media (min-width: 1025px) {
  .pub-item__img img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0);
    -moz-transition: all .3s;
    -o-transition: all .3s;
    -webkit-transition: all .3s;
    transition: all .3s
  }
  .pub-item:hover .pub-item__img img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0)
  }
}
@media (max-width: 1660px) {
  .list-pub > li:nth-of-type(n+4) {
    margin-top: 9.63855vw
  }
  .pub-item {
    padding-left: 14.45783vw;
    border-top-width: .48193vw
  }
  .pub-item__img {
    width: 12.04819vw
  }
  .pub-item__title {
    font-size: 1.44578vw
  }
}
@media (max-width: 750px) {
  .list-pub {
    margin-top: 9.33333vw
  }
  .list-pub > li {
    width: 100%
  }
  .list-pub > li:nth-of-type(n+2) {
    margin-top: 14.66667vw
  }
  .pub-item {
    border-top-width: 1.06667vw;
    padding-left: 34.66667vw;
    padding-top: 3.33333vw
  }
  .pub-item__img {
    width: 26.66667vw;
    top: 3.33333vw
  }
  .pub-item__title {
    font-size: 4.26667vw;
    height: 7.5em;
    min-height: 7.5em
  }
  .pub-item__tip {
    font-size: 2.93333vw
  }
}
.page-works > li:nth-of-type(n+4) {
  margin-top: 140px
}
.page-works .works-item__img img {
  -webkit-filter: grayscale(0);
  filter: grayscale(0);
  -webkit-transition: all .5s;
  transition: all .5s
}
.page-works .works-item__img::after {
  content: "";
  position: absolute;
  z-index: 3;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.4);
  opacity: 0
}
.page-works .works-item__info {
  height: 100px
}
.works-item__txt {
  position: absolute;
  z-index: 10;
  right: 20px;
  bottom: 20px;
  left: 20px
}
.works-item__txt .works-item__intro, .works-item__txt .works-item__type {
  font-size: 14px;
  color: #fff
}
@media (min-width: 1025px) {
  .works-item__txt {
    visibility: hidden;
    opacity: 0
  }
  .page-works .works-item:hover .works-item__txt {
    visibility: visible;
    opacity: 1
  }
  .page-works .works-item:hover .works-item__img::after {
    opacity: 1
  }
  .page-works .works-item:hover .works-item__img img {
    -webkit-transform: scale(1.05);
    transform: scale(1.025)
  }
}
@media (max-width: 1660px) {
  .page-works > li:nth-of-type(n+4) {
    margin-top: 8.43373vw
  }
}
@media (max-width: 750px) {
  .page-works {
    margin-top: 6.66667vw
  }
  .page-works .works-item__info {
    height: auto
  }
  .page-works .works-item__type, .page-works .works-item__intro {
    color: #333
  }
  .page-works .works-item__intro {
    display: none
  }
  .page-works > li {
    width: 100%
  }
  .page-works > li:nth-of-type(n+2) {
    margin-top: 10.66667vw
  }
  .works-item__txt {
    position: relative;
    right: auto;
    bottom: auto;
    left: auto
  }
}
.work-detail .fancybox-thumbs {
  top: auto;
  left: 0;
  width: 100%
}
.wd-title {
  color: #333
}
.wd-title h1 {
  position: relative;
  margin-right: 1.6em;
  display: inline-block;
  vertical-align: top;
  font-size: 30px;
  line-height: 1.2;
  font-weight: 400;
  letter-spacing: .02em
}
.wd-title h1::after {
  content: "";
  position: absolute;
  top: .2em;
  right: -.9em;
  width: 1px;
  height: .8em;
  background-color: #000
}
.wd-title span {
  margin-top: .55em;
  display: inline-block;
  vertical-align: top;
  font-size: 20px;
  line-height: 1
}
.wd-banner img {
  display: block;
  width: 100%
}
.wd-banner-f {
  display: block;
  background-position: center center;
  background-size: cover;
  background-repeat: no-repeat
}
.wd-banner-f::before {
  padding-top: 44.15584%
}
.wd-banner-f img {
  display: none
}
.list-wdphoto {
  margin-right: -20px;
  margin-left: -20px
}
.list-wdphoto > li:nth-of-type(n+5) {
  margin-top: 40px
}
.list-wdphoto > li:nth-of-type(n+9) {
  display: none
}
.list-wdphoto.show > li:nth-of-type(n+9) {
  display: inline-block
}
.wdphoto-item {
  display: block;
  margin-right: 20px;
  margin-left: 20px
}
.wdphoto-item::before {
  position: relative;
  z-index: 2;
  padding-top: 55.98958%;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  -webkit-transition: all .3s ease-out;
  transition: all .3s ease-out
}
.wdphoto-item::after {
  content: '\e607';
  position: absolute;
  z-index: 3;
  right: .8em;
  bottom: .8em;
  font-family: 'iconfont';
  font-size: 20px;
  color: #fff;
  visibility: hidden;
  opacity: 0
}
.wdphoto-item img {
  z-index: 1;
  -webkit-transition: all .3s ease-out;
  transition: all .3s ease-out
}
.show-all {
  position: relative;
  padding-left: 1.5em;
  display: inline-block;
  vertical-align: top;
  cursor: pointer;
  font-size: 20px;
  line-height: 2;
  font-weight: 400;
  font-family: "Nunito Sans";
  letter-spacing: .02em
}
.show-all::before, .show-all::after {
  content: "";
  top: 50%;
  left: 0;
  position: absolute;
  background-color: #000
}
.show-all::before {
  width: .8em;
  height: .1em
}
.show-all::after {
  left: .35em;
  width: .1em;
  height: .8em
}
.show-close::after {
  display: none
}
.works-author {
  padding-top: 1.4em;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: .02em;
  /* color: #666 */
}
.works-author > p {
  margin-bottom: .5em;
  word-break: break-all
}
.works-author > p > span {
  /* font-weight: 600;
  font-family: "Nunito Sans" */
}
.works-author > p .num {
  font-weight: 300;
  font-size: 20px
}
.wd-show .show-close {
  display: none
}
.wd-show.show .show-open {
  display: none
}
.wd-show.show .show-close {
  display: inline-block
}
.wd-share-right {
  display: none
}
@media (min-width: 1025px) {
  .wdphoto-item::after {
    -webkit-transform: scale(0);
    transform: scale(0)
  }
  .wdphoto-item:hover::after {
    visibility: visible;
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1)
  }
  .wdphoto-item:hover::before {
    opacity: 1
  }
  .wdphoto-item:hover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
  }
  .wd-share-bottom {
    display: block;
    position: relative;
    margin-top: 80px
  }
  .wd-share-bottom .detail-pager {
    display: inline-block;
    vertical-align: top;
    margin-right: 80px
  }
}
@media (max-width: 1024px) {
  .wd-banner-f {
    background-image: none !important
  }
  .wd-banner-f::before {
    padding-top: 48.48485%
  }
  .wd-banner-f img {
    display: block
  }
}
@media (max-width: 750px) {
  .list-wdphoto {
    margin-right: -2.13333vw;
    margin-left: -2.13333vw;
    margin-top: 8vw
  }
  .list-wdphoto > li {
    width: 50%
  }
  .list-wdphoto > li:nth-of-type(n+3) {
    margin-top: 8vw
  }
  .wdphoto-item {
    margin-right: 2.13333vw;
    margin-left: 2.13333vw
  }
  .wd-show {
    margin-top: 8vw
  }
  .wd-title {
    margin-top: 13.33333vw
  }
  .wd-title h1 {
    font-size: 4.53333vw
  }
  .wd-title span {
    font-size: 3.2vw
  }
  .wd-banner {
    margin-top: 9.33333vw
  }
  .detail-right {
    display: block;
    margin-left: 0;
    width: auto;
    border-top-width: 1.06667vw
  }
  .works-author {
    font-size: 3.2vw
  }
  .show-all {
    font-size: 3.2vw
  }
}
.page-wd .fancybox-infobar {
  display: none
}
.page-wd .fancybox-button {
  background: transparent;
  opacity: .5
}
.page-wd .fancybox-button div {
  text-align: center
}
.page-wd .fancybox-button div::before {
  font-family: 'iconfont';
  font-size: 32px;
  line-height: 38px;
  color: #fff
}
.page-wd .fancybox-button div svg {
  display: none
}
.page-wd .fancybox-button:hover {
  opacity: 1
}
.page-wd .fancybox-button--arrow_left div::before {
  content: "\e605"
}
.page-wd .fancybox-button--arrow_right div::before {
  content: "\e606"
}
.page-wd .fancybox-button--close {
  padding: 0;
  text-align: center
}
.page-wd .fancybox-button--close::before {
  content: "\e60a";
  font-family: 'iconfont';
  font-size: 32px;
  line-height: 44px;
  color: #999
}
.page-wd .fancybox-button--close svg {
  display: none
}
@media all and (max-height: 576px) {
  .page-wd .fancybox-infobar {
    padding-right: 12px
  }
}
.about-top {
  font-size: 0
}
.about-tleft, .about-tright {
  display: inline-block;
  vertical-align: top
}
.about-tleft {
  width: 30%
}
.about-tright {
  width: 64%;
  margin-left: 6%
}
.about-title {
  position: relative;
  font-size: 32px;
  line-height: 1;
  font-weight: 400;
  letter-spacing: .02em
}
.about-title-img {
  width: 320px;
  overflow: hidden;
  margin-bottom: 60px
}
.about-title-img img {
  display: block;
  height: 10px
}
.about-intro {
  font-size: 14px;
  line-height: 2;
  letter-spacing: .02em;
  color: #666
}
.about-banner::before {
  padding-top: 59.18367%
}
.about-video {
  position: relative
}
.about-video::before {
  content: "";
  display: block;
  padding-top: 59.18367%
}
.about-video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  outline: 0
}
.slick-ab {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0
}
.slick-ab .slick-arrow {
  font-size: 0;
  position: absolute;
  z-index: 10;
  top: 50%;
  border: 0;
  padding: 0;
  outline: 0;
  background-color: transparent;
  visibility: hidden;
  opacity: 0;
  cursor: pointer
}
.slick-ab .slick-arrow::before {
  padding: 2em 0;
  font-family: 'iconfont';
  display: inline-block;
  vertical-align: top;
  line-height: 2;
  font-size: 32px;
  width: 1.5em;
  line-height: 1.5;
  text-align: center;
  color: #fff
}
.slick-ab .slick-prev {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  left: 0
}
.slick-ab .slick-prev::before {
  content: "\e605"
}
.slick-ab .slick-next {
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
  right: 0
}
.slick-ab .slick-next::before {
  content: "\e606"
}
.slick-ab .slick-disabled::before {
  visibility: hidden;
  opacity: 0
}
.slick-ab:hover .slick-arrow {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  visibility: visible;
  opacity: 1
}
.ab-img::before {
  padding-top: 59.18367%
}
.honor-item {
  margin-right: -20px;
  margin-left: -20px
}
.honor-year, .honor-desc {
  display: inline-block;
  vertical-align: top;
  color: #333
}
.honor-year {
  width: 25%
}
.honor-year h3,.honor-year h4 {
  padding-top: 24px;
  margin: 0 20px;
  border-top: 1px solid #d8d8d8;
   font-size: 26px;
  line-height: 1;
  font-weight: 400;
  letter-spacing: .02em
}
.honor-desc {
  width: 75%
}
.honor-desc-wrap {
  padding-top: 1.4375em;
  border-top: 1px solid #d8d8d8;
  margin-right: 20px;
  margin-left: 20px;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: .02em
}
.list-honor > li:first-of-type .honor-year h3 {
  border-top: 8px solid #000
}
.list-honor > li:first-of-type .honor-year h4 {
  border-top: 8px solid #000
}
.list-honor > li:first-of-type .honor-desc-wrap {
  border-top: 8px solid #000
}
.list-honor > li:nth-of-type(n+2) {
  margin-top: 60px
}
.phonor-item > a {
  color: #999;
  line-height: 2
}
.phonor-item:hover > a {
  color: #666
}
.phonor-item.active > a {
  color: #333
}
.phonor-sub > a {
  position: relative;
  padding-left: 1em;
  color: #666;
  display: block
}
.phonor-sub > a::before {
  content: "";
  position: absolute;
  top: .625em;
  left: 0;
  width: 4px;
  height: 4px;
  border-radius: 2px;
  background-color: #666
}
.phonor-sub > a:hover {
  color: #333
}
@media (max-width: 1660px) {
  .about-title-img {
    width: 19.27711vw
  }
  .honor-year h3 {
    font-size: 26px;
  }
}
@media (max-width: 1024px) {
  .about-tleft {
    width: 100%
  }
  .about-tright {
    margin-top: 40px;
    width: 100%;
    margin-left: 0
  }
  .about-title {
    padding-left: 280px
  }
  .about-title-img {
    position: absolute;
    left: 0;
    width: 240px;
    top: 15px;
    margin-bottom: 0
  }
  .about-intro {
    padding-left: 280px
  }
}
@media (max-width: 750px) {
  .about-top {
    margin-top: 0
  }
  .about-tright {
    margin-top: 0
  }
  .about-banner::before, .ab-img::before {
    padding-top: 95.38462%
  }
  .about-title {
    padding-left: 0;
    font-size: 6.13333vw;
    margin-top: 13.33333vw
  }
  .about-title-img {
    position: relative;
    top: auto;
    left: auto;
    margin-bottom: 10.66667vw;
    width: 50.66667vw
  }
  .about-intro {
    margin-top: 6.66667vw;
    padding-left: 0;
    font-size: 3.2vw
  }
  .about-banner {
    margin-top: 5.33333vw
  }
  .about-title-img img {
    height: 1.33333vw
  }
  .about-honor {
    margin-top: 13.33333vw
  }
  .list-honor {
    margin-top: 6.66667vw
  }
  .list-honor > li:first-of-type .honor-year h3 {
    border-top-width: 1.06667vw
  }
  .list-honor > li:first-of-type .honor-desc-wrap {
    border-top-width: 0
  }
  .list-honor > li:nth-of-type(n+2) {
    margin-top: 8vw
  }
  .honor-year h3 {
    padding-top: 1em;
    font-size: 4.26667vw
  }
  .honor-year, .honor-desc {
    width: 100%
  }
  .honor-desc-wrap {
    border-top-width: 0;
    padding-top: 1em;
    font-size: 3.2vw
  }
}
.slick-at {
  margin-right: -20px;
  margin-left: -20px
}
.slick-at .slick-arrow {
  font-size: 0;
  position: absolute;
  z-index: 10;
  top: 50%;
  border: 0;
  padding: 0;
  outline: 0;
  background-color: transparent;
  visibility: hidden;
  opacity: 0;
  cursor: pointer
}
.slick-at .slick-arrow::before {
  padding: 5.25em 0;
  font-family: 'iconfont';
  display: inline-block;
  vertical-align: top;
  font-size: 32px;
  width: 1.5em;
  line-height: 1.5;
  text-align: center;
  color: #999
}
.slick-at .slick-prev {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  right: 100%;
  margin-right: -20px
}
.slick-at .slick-prev::before {
  padding-left: 1em;
  content: "\e605"
}
.slick-at .slick-next {
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
  left: 100%;
  margin-left: -20px
}
.slick-at .slick-next::before {
  padding-right: 1em;
  content: "\e606"
}
.slick-at:hover .slick-arrow {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  visibility: visible;
  opacity: 1
}
.sat-item {
  margin-right: 20px;
  margin-left: 20px
}
.sat-item.first {
  border-top: 8px solid #000
}
.sat-item.first .at-item {
  margin-right: 0;
  margin-left: 0
}
.sat-item.first .at-item__title {
  font-size: 24px;
  letter-spacing: .02em
}
.sat-item.first .at-item__img::before {
  padding-top: 138.95782%
}
.at-item {
  display: block;
  position: relative;
  overflow: hidden;
  margin-right: 20px;
  margin-left: 20px;
  color: #333
}
.list-at {
  margin-right: -20px;
  margin-left: -20px
}
.list-at > li:nth-of-type(1) .at-item, .list-at > li:nth-of-type(2) .at-item {
  border-top: 8px solid #000
}
.list-at > li:nth-of-type(n+3) {
  margin-top: 47px
}
.at-item__title {
  font-size: 16px;
  height: 80px;
  line-height: 20px;
  padding-top: 30px;
  letter-spacing: .02em
}
.at-item__title span {
  font-size: 12px;
  margin-left: .25em
}
.at-item__img {
  -webkit-filter: grayscale(0);
  filter: grayscale(0)
}
.at-item__img::before {
  padding-top: 123.03665%
}
.at-item__intro {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: auto;
  padding: 10px 0;
  background-color: #000;
  font-size: 12px;
  line-height: 1.5;
  color: #fff;
  letter-spacing: .02em
}
.at-item__intro::before {
  content: "";
  display: none;
  position: absolute;
  top: 50%;
  left: 30px;
  width: 70px;
  height: 1px;
  background-color: #fff
}
.at-item__txt {
  position: relative;
  margin: 0 15px
}
@media (min-width: 1025px) {
  .at-item__intro {
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translateY(100%);
    transform: translateY(100%)
  }
  .at-item:hover .at-item__intro {
    visibility: visible;
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
  .at-item:hover .at-item__img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0)
  }
}
@media (max-width: 1660px) {
  .sat-item.first {
    border-top-width: .48193vw
  }
  .list-at > li:nth-of-type(1) .at-item, .list-at > li:nth-of-type(2) .at-item {
    border-top-width: .48193vw
  }
  .slick-at .slick-arrow::before {
    font-size: 1.92771vw
  }
  .at-item__title {
    height: 4.81928vw;
    line-height: 1.20482vw;
    padding-top: 1.80723vw;
    font-size: .96386vw
  }
  .at-item__title span {
    font-size: .72289vw
  }
  .sat-item.first .at-item__title {
    font-size: 1.44578vw
  }
  .list-at > li:nth-of-type(n+3) {
    margin-top: 2.83133vw
  }
  .slick-at, .list-at {
    margin-right: -1.20482vw;
    margin-left: -1.20482vw
  }
  .sat-item, .at-item {
    margin-right: 1.20482vw;
    margin-left: 1.20482vw
  }
  .at-item__intro::before {
    left: 1.80723vw;
    width: 4.21687vw
  }
}
@media (max-width: 1024px) {
  .at-item__title {
    font-size: 14px
  }
  .at-item__title span {
    font-size: 12px
  }
  .sat-item.first .at-item__title {
    font-size: 18px
  }
  .sat-item.first .at-item__img::before {
    padding-top: 133.04348%
  }
  .at-item__intro {
    visibility: hidden;
    opacity: 0
  }
}
@media (max-width: 750px) {
  .slick-at, .list-at {
    margin-right: -2.13333vw;
    margin-left: -2.13333vw
  }
  .slick-at > li .at-item, .list-at > li .at-item {
    border-top: 1.06667vw solid #000
  }
  .sat-item, .at-item {
    margin-right: 2.13333vw;
    margin-left: 2.13333vw
  }
  .slick-at {
    margin-top: 8vw
  }
  .slick-at .slick-slide {
    float: none;
    width: 100%
  }
  .about-team {
    margin-top: 13.33333vw
  }
  .at-item__title {
    height: 9.6vw;
    line-height: 1.5;
    font-size: 3.2vw;
    padding-top: .7em
  }
  .at-item__title span {
    font-size: 2.66667vw
  }
  .sat-item.first {
    border-top-width: 1.06667vw
  }
  .sat-item.first .at-item__title {
    font-size: 4.53333vw
  }
  .sat-item.first .at-item__txt {
    height: auto
  }
  .list-at {
    margin-right: -2.13333vw;
    margin-left: -2.13333vw;
    margin-top: 8vw
  }
  .list-at > li:nth-of-type(1) .at-item, .list-at > li:nth-of-type(2) .at-item {
    border-top-width: 1.06667vw
  }
  .list-at > li:nth-of-type(n+3) {
    margin-top: 8vw
  }
  .at-item {
    margin-right: 2.13333vw;
    margin-left: 2.13333vw
  }
  .at-item__intro {
    padding: 4vw;
    position: relative;
    height: auto;
    background-color: #f2f2f2;
    color: #333;
    visibility: visible;
    opacity: 1
  }
  .at-item__intro::before {
    display: block;
    position: relative;
    background-color: #000;
    top: auto;
    left: 0;
    width: 10.66667vw;
    height: 1px
  }
  .at-item__txt {
    position: relative;
    right: auto;
    left: auto;
    font-size: 2.93333vw;
    line-height: 1.36;
    padding-top: .9em;
    height: 6.8em;
    margin-right: 0;
    margin-left: 0;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}
.slick-partner {
  position: relative
}
.slick-partner .slick-arrow {
  font-size: 0;
  position: absolute;
  z-index: 100;
  top: 50%;
  border: 0;
  padding: 0;
  outline: 0;
  background-color: transparent;
  visibility: hidden;
  opacity: 0;
  cursor: pointer;
  overflow: visible
}
.slick-partner .slick-arrow::before {
  padding: 2.25em 0;
  font-family: 'iconfont';
  display: inline-block;
  vertical-align: top;
  font-size: 32px;
  width: 1.5em;
  line-height: 1.5;
  text-align: center;
  color: #666
}
.slick-partner .slick-disabled::before {
  color: #ccc
}
.slick-partner .slick-prev {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  right: 100%
}
.slick-partner .slick-prev::before {
  content: "\e605"
}
.slick-partner .slick-next {
  -webkit-transform: translate(50%, -50%);
  transform: translate(50%, -50%);
  left: 100%
}
.slick-partner .slick-next::before {
  content: "\e606"
}
.slick-partner:hover .slick-arrow {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  visibility: visible;
  opacity: 1
}
.slick-partner .slick-slide > div:nth-of-type(2) .partner-item {
  margin-top: 80px
}
.list-partners > li:nth-of-type(n+7) {
  margin-top: 120px
}
.partner-item {
  display: block;
  max-width: 200px;
  margin-right: auto;
  margin-left: auto
}
.partner-item::before {
  padding-top: 30%
}
.partner-item img {
  -webkit-filter: grayscale(0);
  filter: grayscale(0)
}
@media (min-width: 1025px) {
  .partner-item:hover img {
    -webkit-filter: grayscale(0);
    filter: grayscale(0)
  }
}
@media (max-width: 1660px) {
  .slick-partner .slick-slide > div:nth-of-type(2) .partner-item {
    margin-top: 4.81928vw
  }
}
@media (max-width: 1024px) {
  .slick-partner .slick-arrow {
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    visibility: visible;
    opacity: 1
  }
  .slick-partner .slick-arrow::before {
    font-size: 24px
  }
}
@media (max-width: 750px) {
  .slick-partner .slick-arrow::before {
    font-size: 4.26667vw
  }
  .about-partners {
    margin-top: 26.66667vw
  }
  .list-partners {
    margin-top: 10.66667vw
  }
  .list-partners > li {
    width: 50%
  }
  .list-partners > li:nth-of-type(n+3) {
    margin-top: 10.66667vw
  }
  .slick-partner .slick-slide > div:nth-of-type(2) .partner-item {
    margin-top: 10.66667vw
  }
  .partner-item {
    max-width: 80%;
    margin-right: auto;
    margin-left: auto
  }
}
.team-detail {
  font-size: 0
}
.team-photo {
  display: inline-block;
  vertical-align: top;
  width: 48%
}
.team-photo img {
  display: block;
  width: 100%
}
.team-side {
  display: inline-block;
  vertical-align: top;
  margin-left: 100px
}
.team-intro {
  width: 420px;
  border-top: 8px solid #000;
  color: #333
}
.team-intro p {
  font-size: 14px;
  line-height: 2;
  letter-spacing: .02em
}
.team-title {
  margin-top: 1em;
  margin-bottom: .75em;
  font-size: 24px;
  line-height: 1;
  font-weight: 400;
  letter-spacing: .02em
}
.team-honor {
  padding-top: 1px;
  color: #333
}
.team-honor p {
  font-size: 14px;
  line-height: 2;
  letter-spacing: .02em
}
.team-honor p span {
  font-size: 18px
}
@media (max-width: 1660px) {
  .team-intro {
    border-top-width: .48193vw
  }
  .team-side {
    margin-left: 6.0241vw
  }
}
@media (max-width: 1300px) {
  .team-photo {
    width: 38%
  }
}
@media (max-width: 1100px) {
  .team-side {
    margin-top: 30px;
    margin-left: 0;
    width: 100%
  }
}
@media (max-width: 750px) {
  .team-photo {
    width: 100%
  }
  .team-side {
    margin-left: 0;
    width: 100%;
    margin-top: 6.66667vw
  }
  .team-intro {
    width: 100%;
    border-top-width: 1.06667vw
  }
  .team-intro p {
    font-size: 3.2vw
  }
  .team-title {
    font-size: 6.66667vw
  }
  .team-honor p {
    font-size: 3.2vw
  }
  .team-honor p span {
    font-size: 1em;
    margin-right: .5em
  }
  .team-back {
    display: none
  }
}
.list-map > li:nth-of-type(n+2) {
  margin-top: 100px
}
.map-item {
  position: relative;
  font-size: 0;
  overflow: hidden
}
.map-item.left {
  text-align: right
}
.map-item.left .map-info {
  right: auto;
  left: 0
}
.map-item.left .map-box {
  right: 0;
  left: 380px
}
.map-info {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 380px;
  right: 0;
  text-align: left;
  background: url(../images/map_r.jpg);
}
.map-box {
  display: inline-block;
  vertical-align: top;
  width: 1160px
}
.map-box img {
  display: block;
  width: 100%
}
.map-intro-box {
  margin: 140px 50px 0;
  color: #fff
}
.map-intro-box img {
  display: block;
  width: 100%;
  margin-bottom: 60px
}
.map-intro-box h3 {
  margin-bottom: .4em;
  font-size: 30px;
  line-height: 1.2;
  font-weight: 400;
  letter-spacing: .02em
}
.map-intro-box p {
  position: relative;
  padding-left: 3em;
  font-size: 16px;
  line-height: 2;
  letter-spacing: .02em
}
.map-intro-box p span {
  position: absolute;
  top: 0;
  left: 0
}
@media (max-width: 1660px) {
  .map-intro-box {
    margin-top: 6.62651vw 3.01205vw 0
  }
  .map-intro-box img {
    margin-bottom: 3.61446vw
  }
  .list-map > li:nth-of-type(n+2) {
    margin-top: 6.0241vw
  }
}
@media (max-width: 1280px) {
  .map-box {
    max-width: 1000px;
    width: 100%
  }
  .map-intro-box {
    margin-top: 100px
  }
  .map-intro-box img {
    margin-bottom: 60px
  }
}
@media (max-width: 1200px) {
  .map-intro-box {
    margin-top: 80px
  }
  .map-intro-box img {
    margin-bottom: 40px
  }
}
@media (max-width: 768px) {
  .map-info, .map-box {
    position: relative;
    width: auto;
    right: auto
  }
  .map-intro-box {
    margin: 0
  }
  .map-intro-box img {
    width: 290px;
    margin-bottom: 80px
  }
  .map-item {
    height: auto
  }
  .map-item.left .map-box {
    left: auto
  }
  .map-info {
    padding: 70px 60px
  }
}
@media (max-width: 750px) {
  .list-map {
    margin-top: 6.66667vw
  }
  .list-map > li:nth-of-type(n+2) {
    margin-top: 14.66667vw
  }
  .map-intro-box {
    margin: 0
  }
  .map-intro-box img {
    width: 38.66667vw;
    margin-bottom: 10.66667vw
  }
  .map-info {
    padding: 9.33333vw 8vw
  }
  .map-info h3 {
    font-size: 4vw
  }
  .map-info p {
    font-size: 3.2vw
  }
  .map-box {
    height: 82.66667vw
  }
}
.contac-msg {
  position: relative
}
.contact-form {
  border-top: 8px solid #000;
  margin-right: 520px;
  font-size: 0
}
.contact-email {
  position: absolute;
  top: 0;
  right: 0;
  width: 380px;
  border-top: 8px solid #000
}
.cf-header {
  margin-top: 10px;
  font-size: 14px;
  line-height: 2;
  font-weight: 400;
  color: #333;
  letter-spacing: .02em
}
.cf-header span {
  font-size: 30px;
  margin-right: .5em
}
.cf-item {
  position: relative;
  margin-top: 30px;
  border-bottom: 1px solid #333
}
.cf-item label.error {
  position: absolute;
  top: 100%;
  left: 0;
  font-size: 14px;
  line-height: 2;
  color: #f00;
  letter-spacing: .02em
}
.cf-item.active .cf-label {
  display: none
}
.cf-input {
  display: block;
  width: 100%;
  border: 0;
  padding: 0;
  outline: 0;
  font-size: 16px;
  line-height: 4.375;
  color: #333;
  letter-spacing: .02em
}
.cf-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  font-size: 16px;
  line-height: 4.375;
  color: #333;
  letter-spacing: .02em
}
.cf-label span {
  color: #ccc
}
.cf-top {
  font-size: 0
}
.cf-top .cf-item {
  display: inline-block;
  vertical-align: top
}
.cf-name {
  width: 380px
}
.cf-email {
  margin-left: 40px;
  width: calc(100% - 420px)
}
.cf-textarea {
  resize: none;
  line-height: 2;
  padding: 1.1875em 0
}
.cf-submit {
  display: inline-block;
  vertical-align: top;
  border: 0;
  padding: 0;
  outline: 0;
  background-color: transparent;
  font-size: 16px;
  line-height: 30px;
  font-weight: 400;
  cursor: pointer;
  letter-spacing: .02em
}
.cf-submit span {
  font-size: 20px;
  margin-right: .5em
}
.contact-email {
  color: #000
}
.contact-email dt {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: .02em
}
.contact-email dd {
  margin-bottom: 1em;
  font-family: "Nunito Sans";
  font-size: 20px;
  font-weight: 300;
  line-height: 1.2;
  letter-spacing: .02em
}
.ce-header {
  margin-bottom: .5em;
  margin-top: 1em;
  font-size: 30px;
  letter-spacing: .02em
}
.cf-follow span {
  font-size: 20px;
  line-height: 1.2;
  font-weight: 400;
  letter-spacing: .02em;
  font-family: "Nunito Sans"
}
.cf-follow a {
  margin-left: 1em;
  font-size: 24px;
  color: #333;
  letter-spacing: .02em
}
.cf-follow a:first-of-type {
  margin-left: .5em
}
@media (min-width: 1025px) {
  .cf-follow a:hover {
    color: #666
  }
}
@media (max-width: 1660px) {
  .contact-form, .contact-email {
    border-top-width: .48193vw
  }
}
@media (max-width: 1280px) {
  .cf-name {
    width: 100%
  }
  .cf-email {
    width: 100%;
    margin-left: 0
  }
  .contact-form {
    margin-right: 400px
  }
  .contact-email {
    width: 320px
  }
}
@media (max-width: 750px) {
  .contac-msg {
    margin-top: 26.66667vw
  }
  .contact-form {
    margin-right: 0;
    border-top-width: 1.06667vw
  }
  .contact-email {
    position: relative;
    width: 100%;
    margin-top: 26.66667vw;
    border-top-width: 1.06667vw
  }
  .contact-email dt, .contact-email dd {
    font-size: 3.73333vw
  }
  .cf-header {
    font-size: 3.2vw
  }
  .cf-header span {
    display: block;
    font-size: 4.53333vw
  }
  .cf-label, .cf-input {
    font-size: 3.73333vw;
    line-height: 3
  }
  .cf-item {
    margin-top: 4.8vw
  }
  .cf-submit {
    font-size: 4.26667vw;
    line-height: 1.5;
    margin-top: 6.66667vw
  }
  .cf-submit span {
    display: inline-block;
    vertical-align: top;
    font-size: 5.33333vw;
    line-height: 1.2
  }
  .ce-header {
    font-size: 4.26667vw
  }
  .cf-follow {
    margin-top: 5.33333vw
  }
  .cf-follow span {
    font-size: 3.73333vw
  }
  .cf-follow a {
    font-size: 4.26667vw
  }
}
.join-banner img {
  display: block;
  width: 100%
}
.contact-part {
  display: none
}
.contact-part.active {
  display: block
}
.job-item {
  cursor: pointer;
  position: relative
}
.job-item::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 1px;
  background-color: #000
}
.job-item.active {
  cursor: default
}
.job-item.active::before {
  width: 0%;
  -moz-transition-delay: 0s;
  -o-transition-delay: 0s;
  -webkit-transition-delay: 0s;
  transition-delay: 0s
}
.job-item.active .job-title::before, .job-item.active .job-desc::before {
  width: 100%;
  -moz-transition: all .5s ease-out;
  -o-transition: all .5s ease-out;
  -webkit-transition: all .5s ease-out;
  transition: all .5s ease-out
}
.job-item.active .list-jobdesc {
  display: block
}
.job-item:last-of-type {
  border-bottom: 1px solid #333
}
.list-job {
  font-size: 0
}
.job-title, .job-desc {
  position: relative;
  padding-top: 8px;
  display: inline-block;
  vertical-align: top
}
.job-title::before, .job-desc::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 8px;
  background-color: #000
}
.job-desc {
  padding-top: 28px
}
.job-title {
  width: 380px;
  font-size: 24px;
  color: #333;
  line-height: 1;
  padding-top: 28px;
  letter-spacing: .02em
}
.job-desc {
  width: calc(100% - 420px);
  margin-left: 40px;
  padding-bottom: 90px
}
.list-jobdesc {
  display: none
}
@media (max-width: 751px) {
  .list-jobdesc > li:first-of-type {
    padding-right: 40px
  }
}
.jobdesc-item {
  color: #333
}
.jobdesc-item h3 {
  margin-bottom: .8em;
  font-size: 16px;
  line-height: 1.2;
  font-weight: 400;
  letter-spacing: .02em
}
.jobdesc-item p {
  font-size: 14px;
  line-height: 24px;
  letter-spacing: .02em
}
.join-way {
  font-size: 20px;
  line-height: 2;
  color: #333;
  letter-spacing: .02em
}
.join-way span {
  font-weight: 400
}
.join-way a {
  position: relative;
  display: inline-block;
  vertical-align: top;
  color: #333;
  font-weight: 400;
  font-family: "Nunito Sans"
}
.join-way a::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: .25em;
  left: 0;
  height: 2px;
  background-color: #000
}
@media (max-width: 1660px) {
  .job-title::before, .job-desc::before {
    height: .48193vw
  }
}
@media (max-width: 750px) {
  .join-banner {
    margin-top: 6.66667vw
  }
  .job-title {
    width: 100%
  }
  .job-desc {
    width: 100%;
    margin-left: 0;
    padding-top: 0;
    margin-top: 10.66667vw;
    display: none;
    padding-bottom: 18.66667vw
  }
  .job-desc::before {
    display: none
  }
  .list-jobdesc > li {
    width: 100%
  }
  .list-jobdesc > li:nth-of-type(n+2) {
    margin-top: 10.66667vw
  }
  .job-title {
    padding: 1em 0;
    font-size: 4.53333vw
  }
  .job-title::before {
    height: 1.06667vw
  }
  .jobdesc-item h3 {
    font-size: 4vw
  }
  .jobdesc-item p {
    font-size: 3.2vw;
    line-height: 1.8
  }
  .job-item.active .job-title {
    padding-top: 1.235em
  }
  .job-item.active .job-desc {
    display: block
  }
  .join-way {
    margin-top: 10.66667vw;
    font-size: 3.2vw
  }
  .join-way a:before {
    height: 1px
  }
}
.list-footer {
  margin-right: -20px;
  margin-left: -20px
}
.footer-item {
  margin-right: 20px;
  margin-left: 20px;
  border-top: 8px solid #000;
  font-size: 14px;
  line-height: 1.5;
  font-weight: 400
}
.footer-item span {
  font-weight: 700
}
.footer-adr {
  position: relative;
  padding-left: 3em
}
.footer-adr > span {
  position: absolute;
  top: 0;
  left: 0
}
.footer-item__city {
  font-weight: 700;
  margin-top: 1.5em;
  margin-bottom: .75em
}
.footer-share {
  margin-top: 1.5em;
  margin-bottom: .75em;
  font-weight: 700
}
.footer-share a {
  font-weight: 700;
  color: #333;
  margin-left: 1em
}
.footer-share a:first-of-type {
  margin-left: .5em
}
.footer-contact {
  position: relative;
  padding-left: 12px;
  display: inline-block;
  color: #333;
  font-size: 14px
}
.footer-contact::before {
  content: "";
  position: absolute;
  top: 50%;
  margin-top: -6px;
  left: 3px;
  width: 1px;
  height: 12px;
  background-color: #333
}
.footer-contact:hover {
  text-decoration: underline
}
.footer-design {
  color: #4d4d4d;
  font-size: 12px;
  display: inline-block;
  vertical-align: top;
  margin-left: 1em;
  display: none
}
.footer-design a {
  color: #4d4d4d
}
.footer-icp {
  color: #333;
  font-size: 14px;
  display: inline-block;
  vertical-align: top
}
.footer-wechat {
  position: relative
}
.footer-wechat img {
  position: absolute;
  bottom: 30px;
  left: 50%;
  margin-left: -80px;
  width: 160px;
  visibility: hidden;
  opacity: 0;
  -webkit-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: 50% 100%;
  transform-origin: 50% 100%
}
.footer-wechat:hover img {
  -webkit-transform: scale(1);
  transform: scale(1);
  visibility: visible;
  opacity: 1
}
.tiktok {
  position: relative
}
.tiktok img {
  position: absolute;
  bottom: 100%;
  left: 50%;
  margin-left: -80px;
  width: 160px;
  height: 160px;
  visibility: hidden;
  opacity: 0;
  -webkit-transform-origin: bottom center;
  transform-origin: bottom center;
  -webkit-transform: scale(0);
  transform: scale(0)
}
.tiktok:hover img {
  visibility: visible;
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1)
}
@media (min-width: 1025px) {
  .footer-design a:hover {
    text-decoration: underline;
    color: #333
  }
}
@media (max-width: 1660px) {
  .list-footer {
    margin-right: -1.20482vw;
    margin-left: -1.20482vw
  }
  .footer-item {
    margin-right: 1.20482vw;
    margin-left: 1.20482vw;
    border-top-width: .48193vw
  }
  .footer-design {
    margin-left: 0
  }
}
@media (max-width: 1280px) {
  .list-footer > li {
    width: 33.3333%
  }
}
@media (max-width: 1023px) {
  .list-footer > li {
    width: 50%
  }
  .list-footer > li:nth-of-type(n+3) {
    margin-top: 40px
  }
}
@media (max-width: 768px) {
  .list-footer > li {
    width: 100%
  }
  .list-footer > li:nth-of-type(n+2) {
    margin-top: 40px
  }
}
@media (max-width: 750px) {
  .list-footer > li .footer-item {
    border-top-width: 1px
  }
  .list-footer > li:first-of-type .footer-item {
    border-top-width: 1.06667vw
  }
  .list-footer > li:nth-of-type(n+2) {
    margin-top: 2.66667vw
  }
  .footer-item {
    padding-bottom: 2em
  }
  .footer-item__city {
    margin-top: 1em
  }
  .footer-mt {
    display: none
  }
}
/*# sourceMappingURL=main.css.map */