@font-face {
  font-family: "SourceHanSansCN";
  src: url("HanSans.otf"); }
* {
  font-family: "SourceHanSansCN";
  margin: 0;
  padding: 0; }

img {
  border: 0; }

ul {
  list-style: none; }

.title {
  display: block;
  margin: 0 auto;
  max-width: 80%; }

.block {
  width: calc(100% - 400px);
  max-width: 1520px;
  margin: 0 auto; }

.clear {
  clear: both; }

.header {
  background: #1e2e3b;
  width: 100%;
  padding: 31px 0 37px;
  position: fixed;
  top: 0;
  z-index: 3; }
  .header .link {
    float: right;
    white-space: nowrap; }
  .header .link a {
    color: #ffffff;
    text-decoration: none;
    display: inline-block;
    margin: 20px 0 0 65px;
    font-size: 16px; }
  .header .link a:hover,
  .header .link a:active {
    border-bottom: 2px solid #ffffff;
    padding-bottom: 5px; }
  .header .link .sp a {
    background: #46b9be;
    color: #001f23;
    font-weight: bold;
    padding: 5px 15px;
    border-radius: 20px;
    border-bottom: 0; }

.banner {
  margin-top: 123px;
  width: 100%;
  position: relative;
  height: calc(100vh - 123px);
  overflow: hidden;
  display: block; }
  .banner .bg {
    width: 100%;
    display: block;
    margin-top: -11vh; }

.banner2 {
  height: auto; }

.contact {
  width: 100%;
  padding: 10% 0 7% 0;
  background: #1e2e3b;
  color: #ffffff;
  overflow: hidden; }
  .contact .block {
    padding-left: 17%; }
  .contact .code {
    display: inline-block;
    margin: 8% 8% 5% 0;
    width: 20%;
    max-width: 160px; }
    .contact .code img {
      display: block;
      padding-bottom: 20px;
      width: 100%; }
    .contact .code div {
      background: #47b9c3;
      height: 3px;
      width: 30%;
      margin: 10px 0; }
  .contact .tel {
    line-height: 40px;
    font-size: 19px; }
  .contact .right {
    float: right;
    padding: 20px 250px 20px 50px;
    background: #ffffff;
    border-radius: 50px 0 0 50px;
    margin-top: -10%; }

@media screen and (min-width: 1270px) and (max-width: 1560px) {
  .block {
    width: calc(100% - 200px); } }
@media screen and (min-width: 800px) and (max-width: 1270px) {
  .block {
    width: calc(100% - 20px); }

  .link {
    width: 100%;
    overflow-y: auto; }

  .contact .right {
    float: right;
    padding: 20px 100px 20px 50px;
    background: #ffffff;
    border-radius: 50px 0 0 50px;
    margin-top: -20%; } }
@media screen and (min-width: 0px) and (max-width: 800px) {
  .block {
    width: calc(100% - 20px); }

  .contact .code {
    font-size: 14px; }

  .contact .right {
    display: none; } }
@media screen and (min-width: 1420px) and (max-width: 1550px) {
  .banner .bg {
    margin-top: -5vh; } }
@media screen and (min-width: 1330px) and (max-width: 1420px) {
  .banner .bg {
    margin-top: 0; } }
@media screen and (min-width: 0) and (max-width: 1330px) {
  .banner {
    height: auto; }

  .banner .bg {
    margin-top: 0; } }
.active {
  border-bottom: 2px solid #ffffff;
  padding-bottom: 5px; }

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
  .header .link a {
    margin: 0 0 0 46px; }

  .header .link .sp a {
    background: #46b9be;
    color: #001f23;
    font-weight: bold;
    padding: 2px 15px;
    border-radius: 20px;
    border-bottom: 0; } }
@media only screen and (min-device-width: 1024px) and (max-device-width: 1366px) {
  .header .link a {
    margin: 0 0 0 53px;
    font-size: 22px; }

  .header .link .sp a {
    background: #46b9be;
    color: #001f23;
    font-weight: bold;
    border-radius: 20px;
    border-bottom: 0 !important;
    padding: 2px 15px; } }

/*# sourceMappingURL=common.css.map */
