/* display */
.none {
  display: none;
}
.dn {
  display: none !important;
}
.di {
  display: inline;
}
.dib {
  display: inline-block;
}
.db {
  display: block !important;
}
.dt {
  display: table;
}
.dtc {
  display: table-cell;
}
/* float */
.fl {
  float: left;
  _display: inline; /* IE6 */
}
.fr {
  float: right;
  _display: inline; /* IE6 */
}
.cb {
  clear:both;
}
/* position */
.pr { 
  position: relative;
}
.pa { 
  position: absolute;
}
/* cursor */
.cp {
  cursor: pointer;
}
.cd {
  cursor: default;
}
/* overflow */
.ovh {
  overflow: hidden;
}
.ova {
  overflow: auto;
}
/* visibility */
.vv {
  visibility: visible;
}
.vh{
  visibility: hidden;
}
/* text-align */
.tl {
  text-align:left;
}
.tc {
  text-align:center;
}
.tr {
  text-align:right;
}
.tj {
  text-align: justify;
}
/* letter-spacing */
.lp0 {
  letter-spacing: 0;
}
.lp-1 {
  letter-spacing: -1px;
}
.lp1 {
  letter-spacing: 1px;
}
/* white-space */
.nowrap {
  white-space: nowrap; 
}
/* word-wrap */
.bk {
  word-wrap: break-word; 
}
/* vertical-align */
.vam {
  vertical-align: middle; 
}
.vab {
  vertical-align: bottom; 
}
.vat {
  vertical-align: top; 
}

/* 清除浮动*/
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  overflow: hidden;
}
.clearfix {
  display: block;
  *zoom: 1;
}
*html .clearfix {
  height: 1%;
}
/* 单行文字溢出虚点显示 */
.ell {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
/* 块状元素水平居中 */
.auto {
  margin-left: auto;
  margin-right: auto;
}
/* 大小不定元素垂直居中 */
.middle {
  display: inline-block;
  width: 0;
  height: 100%;
  vertical-align: middle;
}
/* transition过渡 */
.trans {
  -webkit-transition: all 250ms;
  transition: all 250ms;
}
/* 文字无法选中 */
.unselect {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

/* size */
.f12 {
  font-size: 12px;
}
.f13 {
  font-size: 13px;
}
.f14 {
  font-size: 14px;
}
.f16 {
  font-size: 16px;
}
.f18 {
  font-size: 18px;
}
.f20 {
  font-size: 20px;
}
.f24 {
  font-size: 24px;
}
.f28 {
  font-size: 28px;
}
.f30 {
  font-size: 30px;
}
/* line-height */
.lh12 {
  line-height: 12px;
}
.lh14 {
  line-height: 14px;
}
.lh16 {
  line-height: 16px;
}
.lh18 {
  line-height: 18px;
}
.lh20 {
  line-height: 20px;
}
.lh22 {
  line-height: 22px;
}
.lh24 {
  line-height: 24px;
}
.lh26 {
  line-height: 26px;
}
.lh28 {
  line-height: 28px;
}
.lh30 {
  line-height: 30px;
}
/* font-family */
.ff_a {
  font-family: -apple-system;
}
.ff_b {
  font-family: BlinkMacSystemFont;
}
.ff_s {
  font-family: "Segoe UI";
}
.ff_r {
  font-family: Roboto;
}
.ff_h {
  font-family: "Helvetica Neue";
}
.ff_h {
  font-family: Helvetica;
}
.ff_m {
  font-family: "Microsoft YaHei";
}
.ff_s {
  font-family: "SimHei";
}
.ff_a {
  font-family: Arial;
}
.ff_s {
  font-family: sans-serif;
}
/* font-style */
.n {
  font-weight: normal;
  font-style: normal; 
}
.b {
  font-weight: bold; 
}
.i {
  font-style: italic; 
}

/* blank */
.blank0 {
  clear: both;
  height: 0;
  overflow: hidden;
  display: block;
  line-height: 0;
}
.blank1 {
  clear: both;
  height: 1px;
  overflow: hidden;
  display: block;
  line-height: 1px;
}
.blank5 {
  clear: both;
  height: 5px;
  overflow: hidden;
  display: block;
  line-height: 5px;
}
.blank10 {
  clear: both;
  height: 10px;
  overflow: hidden;
  display: block;
  line-height: 10px;
}
.blank15 {
  clear: both;
  height: 15px;
  overflow: hidden;
  display: block;
  line-height: 15px;
}
/* width */
.col-1 {
  width: 1%;
}
.col-7 {
  width: 7%;
}
.col-8 {
  width: 8%;
}
.col-9 {
  width: 9%;
}
.col-10 {
  width: 10%;
}
.col-16 {
  width: 16.66667%;
}
.col-20 {
  width: 20%;
}
.col-30 {
  width: 30%;
}
.col-33 {
  width: 33.33333%;
}
.col-40 {
  width: 40%;
}
.col-50 {
  width: 50%;
}
.col-60 {
  width: 60%;
}
.col-70 {
  width: 70%;
}
.col-80 {
  width: 80%;
}
.col-90 {
  width: 90%;
}
.col-95 {
  width: 95%;
}
.col-96 {
  width: 96%;
}
.col-97 {
  width: 97%;
}
.col-98 {
  width: 98%;
}
.col-99 {
  width: 99%;
}

/* padding */
.p0 {
  padding: 0;
}
.p1 {
  padding: 1px;
}
.pt1 {
  padding-top: 1px;
}
.pr1 {
  padding-right: 1px;
}
.pb1 {
  padding-bottom: 1px;
}
.pl1 {
  padding-left: 1px;
}
.p5 {
  padding: 5px;
}
.pt5 {
  padding-top: 5px;
}
.pr5 {
  padding-right: 5px;
}
.pb5 {
  padding-bottom: 5px;
}
.pl5 {
  padding-left: 5px;
}
.p10 {
  padding: 10px;
}
.pt10 {
  padding-top: 10px;
}
.pr10 {
  padding-right: 10px;
}
.pb10 {
  padding-bottom: 10px;
}
.pl10 {
  padding-left: 10px;
}
.p15 {
  padding: 15px;
}
.pt15 {
  padding-top: 15px;
}
.pr15 {
  padding-right: 15px;
}
.pb15 {
  padding-bottom: 15px;
}
.pl15 {
  padding-left: 15px;
}
.p20 {
  padding: 20px;
}
.pt20 {
  padding-top: 20px;
}
.pr20 {
  padding-right: 20px;
}
.pb20 {
  padding-bottom: 20px;
}
.pl20 {
  padding-left: 20px;
}
.p30 {
  padding: 30px;
}
.pt30 {
  padding-top: 30px;
}
.pr30 {
  padding-right: 30px;
}
.pb30 {
  padding-bottom: 30px;
}
.pl30 {
  padding-left: 30px;
}
/* margin */
.m0 {
  margin: 0;
}
.m1 {
  margin: 1px;
}
.mt1 {
  margin-top: 1px;
}
.mr1 {
  margin-right: 1px;
}
.mb1 {
  margin-bottom: 1px;
}
.ml1 {
  margin-left: 1px;
}
.m5 {
  margin: 5px;
}
.mt5 {
  margin-top: 5px;
}
.mr5 {
  margin-right: 5px;
}
.mb5 {
  margin-bottom: 5px;
}
.ml5 {
  margin-left: 5px;
}
.m10 {
  margin: 10px;
}
.mt10 {
  margin-top: 10px;
}
.mr10 {
  margin-right: 10px;
}
.mb10 {
  margin-bottom: 10px;
}
.ml10 {
  margin-left: 10px;
}
.m15 {
  margin: 15px;
}
.mt15 {
  margin-top: 15px;
}
.mr15 {
  margin-right: 15px;
}
.mb15 {
  margin-bottom: 15px;
}
.ml15 {
  margin-left: 15px;
}
.m20 {
  margin: 20px;
}
.mt20 {
  margin-top: 20px;
}
.mr20 {
  margin-right: 20px;
}
.mb20 {
  margin-bottom: 20px;
}
.ml20 {
  margin-left: 20px;
}
.m30 {
  margin: 30px;
}
.mt30 {
  margin-top: 30px;
}
.mr30 {
  margin-right: 30px;
}
.mb30 {
  margin-bottom: 30px;
}
.ml30 {
  margin-left: 30px;
}
