@charset "UTF-8";
:root {
  --theme-color: #032696; /*主题色*/
}
/* 自定义常用 */
.flex {
  display: flex;
}
.flex-col {
  flex-direction: column;
}
.justify-between {
  justify-content: space-between;
}
.justify-around {
  justify-content: space-around;
}
.justify-evenly {
  justify-content: space-evenly;
}
.justify-center {
  justify-content: center;
}
.justify-end {
  justify-content: flex-end;
}
.flex-wrap {
  flex-wrap: wrap;
}
.items-center {
  align-items: center;
}
.flex-grow {
  flex-grow: 1;
}

.flex-shrink {
  flex-shrink: 0;
}

/* 解决flex布局文本超出 */
.m0 {
  min-width: 0;
}

.bgf {
  background-color: #fff;
}

.bg-cover {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.bg-contain {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}

.relative {
  position: relative;
}
.absolute {
  position: absolute;
}

.container {
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 768px) {
  .container {
    width: 750px;
  }
}

@media (min-width: 992px) {
  .container {
    width: 970px;
  }
}

@media (min-width: 1200px) {
  .container {
    width: 1180px;
  }
}
@media (min-width: 1400px) {
  .container {
    width: 1380px;
  }
}
@media (min-width: 1600px) {
  .container {
    width: 1580px;
  }
}

.visible-xs,
.visible-sm,
.visible-md,
.visible-lg {
  display: none !important;
}
@media (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }
  .visible-xs {
    display: block !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .hidden-sm {
    display: none !important;
  }
  .visible-sm {
    display: block !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .hidden-md {
    display: none !important;
  }
  .visible-md {
    display: block !important;
  }
}

@media (min-width: 1200px) {
  .hidden-lg {
    display: none !important;
  }
  .visible-lg {
    display: block !important;
  }
}

.line-1 {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.line-2 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

.line-3 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}

.line-5 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
}

.img-responsive {
  display: block;
  max-width: 100%;
  height: auto;
  margin: auto;
}

::-webkit-scrollbar {
  width: 6px;
  /*滚动条宽度*/
  height: 6px;
  /*滚动条高度*/
}

/*滚动条里面小方块*/
::-webkit-scrollbar-thumb {
  /* 滚动条 拖动条 */
  background-color: var(--theme-color);
  border-radius: 6px;
}

/*滚动条轨道*/
::-webkit-scrollbar-track {
  /* 滚动条背景槽 */
  background-color: #eee;
  border-radius: 6px;
}

a:hover {
  color: var(--theme-color);
  text-decoration: none; /*禁止边框*/
}

/* 自定义常用样式 */
button:hover {
  opacity: 0.8;
}

.responsive-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  transition: all 0.3s;
}

.required::after {
  content: "*";
  color: red;
}

main,
footer {
  overflow-x: hidden;
}
