@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Poppins:wght@400;900&display=swap');
:root {
  --fontfamily: 微軟正黑體, -apple-system, "Noto Sans", "Helvetica Neue",
    Helvetica, "Nimbus Sans L", Arial, "Liberation Sans", "PingFang SC",
    "Hiragino Sans GB", "Noto Sans CJK SC", "Source Han Sans SC",
    "Source Han Sans CN", "Microsoft JhengHei", "Wenquanyi Micro Hei",
    "WenQuanYi Zen Hei", "ST Heiti", SimHei, "WenQuanYi Zen Hei Sharp",
    sans-serif;
  --fontblod: "Poppins", -apple-system, "Helvetica Neue", Helvetica,
    "Nimbus Sans L", Arial, "Liberation Sans", "PingFang SC", "Hiragino Sans GB",
    "Source Han Sans CN", "Source Han Sans SC", "Microsoft YaHei",
    "Wenquanyi Micro Hei", "WenQuanYi Zen Hei", "ST Heiti", SimHei,
    "WenQuanYi Zen Hei Sharp", sans-serif;
  --maincolor: #c30d23;
  --maincolor_light: #af1325;
  --maindark: #47535d;
  --lightbg: #f6f8fa;
  --maingreen: #666464;
  --maingreen_light: #a19f9f;
  --maingrey: #666464;
}

::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 6px;
}

::-webkit-scrollbar:vertical {
  width: 6px;
}

::-webkit-scrollbar:horizontal {
  height: 6px;
}

::-webkit-scrollbar-thumb {
  background-color: rgb(0, 0, 0, 0.2);
  border-radius: 10px;
  border: 2px solid transparent;
}

::-webkit-scrollbar-track {
  background-color: rgb(0, 0, 0, 0.05);
}

* {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0) !important;
  /* make transparent link selection, adjust last value opacity 0 to 1.0 */
}

html,
body {
  -webkit-touch-callout: none;
  /* prevent callout to copy image, etc when tap to hold */
  -webkit-text-size-adjust: none;
  /* prevent webkit from resizing text to fit */
  /*-webkit-user-select: none;    */
  /* prevent copy paste, to allow, change 'none' to 'text' */
}
img {
  max-width: 100%;
}
.breadcrumb-item + .breadcrumb-item::before {
  content: ">";
}

.breadcrumb {
  padding-left: 8px;
  padding-right: 8px;
  font-size: 15.4px;
}

.body {
  position: relative;
  z-index: 3;
}

.body.index {
  background-color: #ffffff !important;
}
.main{
  position: relative;
  overflow: hidden;
}
.main::before{
  content: '';
  background: url('../img/index/bg_dott.svg') repeat left top / 22px 11px;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  opacity: 1;
  z-index: -1;
}
h1, h2, h3, h4, h5, h6{
  margin-bottom: 10px;
}
a:hover {
  text-decoration: none;
}

a.text-dark:hover {
  color: var(--maincolor) !important;
}
.text-decoration-underline {
  text-decoration: underline;
}
section.section_publish {
  padding: 0;
}
.fs-15 {
  font-size: 15px;
}
.border-radius-8 {
  border-radius: 8px;
}
.bg-light-green {
  background-color: var(--maingrey) !important;
}
.deco-texture {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-image: url(../img/bg/bgwhite.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0.5;
  z-index: -1;
  pointer-events: none;
}
.btn-circle {
  display: inline-block;
  width: 32px;
  height: 32px;
  line-height: 32px;
  text-align: center;
  border-radius: 50%;
  border: 1px solid;
  background-color: #fff;
}
.badge {
  padding: 0.25em 0.6em;
  font-size: 95%;
  font-weight: 500;
}
#footer .pinfooter {
  color: #828282;
}
/* .vhsign{height: calc(100vh - 105px)} */
.vh60 {
  min-height: 60vh;
}

.vh80 {
  min-height: 80vh;
}

.vh100 {
  min-height: 100vh;
}
.cover.outline {
  border: 0;
  background-color: #eeeeee;
}
.pageHeader {
  padding: 180px 0 50px;
  position: relative;
}
.bg-title{
  display: inline-block;
  position: absolute;
  right: -2%;
  top: 30%;
  width: 25vw;
  z-index: 0;
  opacity: 0.4;
}
/*.index #header .header-logo img{top:5px;}*/
.bg-main2 {
  background-color: var(--maingreen) !important;
}
.bg-light-gray {
  background-color: #f3f5f6 !important;
}
.index_publish_img:before {
  content: "";
  width: calc(100% + 200px);
  height: calc(100% + 79px);
  background-position: center;
  background-size: cover;
  position: absolute;
  top: -20px;
  left: -120px;
  z-index: 0;
  background-image: linear-gradient(
      to bottom,
      rgb(77 77 77 / 70%),
      rgb(50 43 40 / 70%)
    ),
    url("../img/index_banner.jpg");
}

.index_publish_img {
  padding: 120px 50px 105px;
}

.index_publish_img .ml-lg-5 {
  z-index: 1;
  position: relative;
}

.index_publish {
  z-index: 0;
  padding: 120px 50px 105px;
}

.index_publish:before {
  content: "";
  width: calc(100% + 200px);
  height: calc(100% + 80px);
  background: var(--maingreen);
  box-shadow: 7px 0 30px rgba(0, 0, 0, 0.5);
  position: absolute;
  top: -20px;
  left: -200px;
  -webkit-transform: skewX(-27deg);
  transform: skewX(-27deg);
  z-index: -1;
}

.index_company_bg {
  position: relative;
}

.index_company_bg:before {
  content: "";
  width: 50%;
  height: 50%;
  background-position: center;
  background-size: cover;
  position: absolute;
  bottom: 0;
  left: 0;
  background-image: url(../img/company_bg.svg);
}

.index_publish h3,
.index_publish p {
  color: #fff;
}

.index_company {
  min-height: 250px;
}

.index_company .thumb-info-wrapper {
  opacity: 0;
  transition: all 0.3s;
}

.index_company .thumb-info-wrapper:before {
  content: "";
  background: rgba(33, 37, 41, 0.9);
  transition: all 0.3s;
  border-radius: 0;
  bottom: 16px;
  bottom: 1rem;
  color: #fff;
  left: 16px;
  left: 1rem;
  position: absolute;
  right: 16px;
  right: 1rem;
  top: 16px;
  top: 1rem;
  display: block;
  opacity: 0;
  z-index: 2;
}

.index_company:hover .thumb-info-wrapper,
.index_company:hover .thumb-info-wrapper:before {
  opacity: 1;
}

.index_news_bg:before {
  content: "";
  position: absolute;
  top: -60px;
  left: 0;
  width: 40%;
  height: 106%;
  display: block;
  background: url(../img/aboutbg.jpg) 0 50% / contain;
  -moz-transform: scaleX(-1);
  -webkit-transform: scaleX(-1);
  -o-transform: scaleX(-1);
  transform: scaleX(-1);
  /*IE*/
  filter: FlipH;
  mask-image: linear-gradient(to left, rgba(0, 0, 0, 1), transparent);
  -webkit-mask-image: linear-gradient(to left, rgba(0, 0, 0, 1), transparent);
}

#header .header-nav-top .dropdown-menu li .dropdown-item.active {
  background-color: #fff;
  color: var(--maincolor);
}

.thumb-info-title {
  position: absolute;
  z-index: 3;
  display: block;
  width: 100%;
  height: 100%;
  left: 0;
  bottom: 0;
}

.thumb-info-title .btn-modern {
  position: absolute;
  width: 200px;
  top: calc((100% - 52px) / 2);
  left: calc((100% - 200px) / 2);
  transition: all 0.3s;
}


.font-family-franklin{
  font-family: 'Franklin Gothic Book', 'Arial Narrow', Arial, sans-serif;
}

.min12max18 {
  --min-size: 12;
  --max-size: 18;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min12max24 {
  --min-size: 12;
  --max-size: 24;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max26 {
  --min-size: 12;
  --max-size: 26;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max28 {
  --min-size: 12;
  --max-size: 28;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max32 {
  --min-size: 12;
  --max-size: 32;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max36 {
  --min-size: 12;
  --max-size: 36;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max40 {
  --min-size: 12;
  --max-size: 40;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max44 {
  --min-size: 12;
  --max-size: 44;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max48 {
  --min-size: 12;
  --max-size: 48;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max52 {
  --min-size: 12;
  --max-size: 52;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max56 {
  --min-size: 12;
  --max-size: 56;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max60 {
  --min-size: 12;
  --max-size: 60;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max64 {
  --min-size: 12;
  --max-size: 64;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max68 {
  --min-size: 12;
  --max-size: 68;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max72 {
  --min-size: 12;
  --max-size: 72;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max76 {
  --min-size: 12;
  --max-size: 76;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max80 {
  --min-size: 12;
  --max-size: 80;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max84 {
  --min-size: 12;
  --max-size: 84;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max88 {
  --min-size: 12;
  --max-size: 88;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max92 {
  --min-size: 12;
  --max-size: 92;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max96 {
  --min-size: 12;
  --max-size: 96;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min12max100 {
  --min-size: 12;
  --max-size: 100;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min14max18 {
  --min-size: 14;
  --max-size: 18;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min14max24 {
  --min-size: 14;
  --max-size: 24;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max26 {
  --min-size: 14;
  --max-size: 26;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max28 {
  --min-size: 14;
  --max-size: 28;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max32 {
  --min-size: 14;
  --max-size: 32;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max36 {
  --min-size: 14;
  --max-size: 36;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max40 {
  --min-size: 14;
  --max-size: 40;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max44 {
  --min-size: 14;
  --max-size: 44;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max48 {
  --min-size: 14;
  --max-size: 48;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max52 {
  --min-size: 14;
  --max-size: 52;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max56 {
  --min-size: 14;
  --max-size: 56;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max60 {
  --min-size: 14;
  --max-size: 60;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max64 {
  --min-size: 14;
  --max-size: 64;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max68 {
  --min-size: 14;
  --max-size: 68;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max72 {
  --min-size: 14;
  --max-size: 72;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max76 {
  --min-size: 14;
  --max-size: 76;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max80 {
  --min-size: 14;
  --max-size: 80;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max84 {
  --min-size: 14;
  --max-size: 84;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max88 {
  --min-size: 14;
  --max-size: 88;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max92 {
  --min-size: 14;
  --max-size: 92;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max96 {
  --min-size: 14;
  --max-size: 96;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min14max100 {
  --min-size: 14;
  --max-size: 100;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min16max18 {
  --min-size: 16;
  --max-size: 18;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max20 {
  --min-size: 16;
  --max-size: 20;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max24 {
  --min-size: 16;
  --max-size: 24;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max26 {
  --min-size: 16;
  --max-size: 26;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max28 {
  --min-size: 16;
  --max-size: 28;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max32 {
  --min-size: 16;
  --max-size: 32;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max36 {
  --min-size: 16;
  --max-size: 36;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max40 {
  --min-size: 16;
  --max-size: 40;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max44 {
  --min-size: 16;
  --max-size: 44;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max48 {
  --min-size: 16;
  --max-size: 48;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max52 {
  --min-size: 16;
  --max-size: 52;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max56 {
  --min-size: 16;
  --max-size: 56;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max60 {
  --min-size: 16;
  --max-size: 60;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max64 {
  --min-size: 16;
  --max-size: 64;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max68 {
  --min-size: 16;
  --max-size: 68;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max72 {
  --min-size: 16;
  --max-size: 72;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max76 {
  --min-size: 16;
  --max-size: 76;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max80 {
  --min-size: 16;
  --max-size: 80;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max84 {
  --min-size: 16;
  --max-size: 84;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max88 {
  --min-size: 16;
  --max-size: 88;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max92 {
  --min-size: 16;
  --max-size: 92;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max96 {
  --min-size: 16;
  --max-size: 96;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min16max100 {
  --min-size: 16;
  --max-size: 100;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min18max24 {
  --min-size: 18;
  --max-size: 24;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max26 {
  --min-size: 18;
  --max-size: 26;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max28 {
  --min-size: 18;
  --max-size: 28;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max32 {
  --min-size: 18;
  --max-size: 32;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max36 {
  --min-size: 18;
  --max-size: 36;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max40 {
  --min-size: 18;
  --max-size: 40;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max44 {
  --min-size: 18;
  --max-size: 44;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max48 {
  --min-size: 18;
  --max-size: 48;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max52 {
  --min-size: 18;
  --max-size: 52;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max56 {
  --min-size: 18;
  --max-size: 56;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max60 {
  --min-size: 18;
  --max-size: 60;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max64 {
  --min-size: 18;
  --max-size: 64;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max68 {
  --min-size: 18;
  --max-size: 68;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max72 {
  --min-size: 18;
  --max-size: 72;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max76 {
  --min-size: 18;
  --max-size: 76;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max80 {
  --min-size: 18;
  --max-size: 80;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max84 {
  --min-size: 18;
  --max-size: 84;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max88 {
  --min-size: 18;
  --max-size: 88;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max92 {
  --min-size: 18;
  --max-size: 92;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max96 {
  --min-size: 18;
  --max-size: 96;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min18max100 {
  --min-size: 18;
  --max-size: 100;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min20max24 {
  --min-size: 20;
  --max-size: 24;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max26 {
  --min-size: 20;
  --max-size: 26;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max28 {
  --min-size: 20;
  --max-size: 28;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max32 {
  --min-size: 20;
  --max-size: 32;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max36 {
  --min-size: 20;
  --max-size: 36;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max40 {
  --min-size: 20;
  --max-size: 40;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max44 {
  --min-size: 20;
  --max-size: 44;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max48 {
  --min-size: 20;
  --max-size: 48;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max52 {
  --min-size: 20;
  --max-size: 52;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max56 {
  --min-size: 20;
  --max-size: 56;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max60 {
  --min-size: 20;
  --max-size: 60;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max64 {
  --min-size: 20;
  --max-size: 64;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max68 {
  --min-size: 20;
  --max-size: 68;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max72 {
  --min-size: 20;
  --max-size: 72;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max76 {
  --min-size: 20;
  --max-size: 76;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max80 {
  --min-size: 20;
  --max-size: 80;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max84 {
  --min-size: 20;
  --max-size: 84;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max88 {
  --min-size: 20;
  --max-size: 88;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max92 {
  --min-size: 20;
  --max-size: 92;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max96 {
  --min-size: 20;
  --max-size: 96;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min20max100 {
  --min-size: 20;
  --max-size: 100;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min24max26 {
  --min-size: 24;
  --max-size: 26;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max28 {
  --min-size: 24;
  --max-size: 28;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max32 {
  --min-size: 24;
  --max-size: 32;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max36 {
  --min-size: 24;
  --max-size: 36;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max40 {
  --min-size: 24;
  --max-size: 40;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max44 {
  --min-size: 24;
  --max-size: 44;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max48 {
  --min-size: 24;
  --max-size: 48;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max52 {
  --min-size: 24;
  --max-size: 52;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max56 {
  --min-size: 24;
  --max-size: 56;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max60 {
  --min-size: 24;
  --max-size: 60;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max64 {
  --min-size: 24;
  --max-size: 64;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max68 {
  --min-size: 24;
  --max-size: 68;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max72 {
  --min-size: 24;
  --max-size: 72;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max76 {
  --min-size: 24;
  --max-size: 76;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max80 {
  --min-size: 24;
  --max-size: 80;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max84 {
  --min-size: 24;
  --max-size: 84;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max88 {
  --min-size: 24;
  --max-size: 88;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max92 {
  --min-size: 24;
  --max-size: 92;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max96 {
  --min-size: 24;
  --max-size: 96;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min24max100 {
  --min-size: 24;
  --max-size: 100;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min28max32 {
  --min-size: 28;
  --max-size: 32;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max36 {
  --min-size: 28;
  --max-size: 36;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max40 {
  --min-size: 28;
  --max-size: 40;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max44 {
  --min-size: 28;
  --max-size: 44;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max48 {
  --min-size: 28;
  --max-size: 48;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max52 {
  --min-size: 28;
  --max-size: 52;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max56 {
  --min-size: 28;
  --max-size: 56;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max60 {
  --min-size: 28;
  --max-size: 60;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max64 {
  --min-size: 28;
  --max-size: 64;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max68 {
  --min-size: 28;
  --max-size: 68;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max72 {
  --min-size: 28;
  --max-size: 72;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max76 {
  --min-size: 28;
  --max-size: 76;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max80 {
  --min-size: 28;
  --max-size: 80;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max84 {
  --min-size: 28;
  --max-size: 84;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max88 {
  --min-size: 28;
  --max-size: 88;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max92 {
  --min-size: 28;
  --max-size: 92;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max96 {
  --min-size: 28;
  --max-size: 96;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min28max100 {
  --min-size: 28;
  --max-size: 100;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min32max36 {
  --min-size: 32;
  --max-size: 36;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max40 {
  --min-size: 32;
  --max-size: 40;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max44 {
  --min-size: 32;
  --max-size: 44;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max48 {
  --min-size: 32;
  --max-size: 48;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max52 {
  --min-size: 32;
  --max-size: 52;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max56 {
  --min-size: 32;
  --max-size: 56;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max60 {
  --min-size: 32;
  --max-size: 60;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max64 {
  --min-size: 32;
  --max-size: 64;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max68 {
  --min-size: 32;
  --max-size: 68;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max72 {
  --min-size: 32;
  --max-size: 72;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max76 {
  --min-size: 32;
  --max-size: 76;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max80 {
  --min-size: 32;
  --max-size: 80;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max84 {
  --min-size: 32;
  --max-size: 84;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max88 {
  --min-size: 32;
  --max-size: 88;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max92 {
  --min-size: 32;
  --max-size: 92;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max96 {
  --min-size: 32;
  --max-size: 96;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min32max100 {
  --min-size: 32;
  --max-size: 100;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min36max40 {
  --min-size: 36;
  --max-size: 40;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max44 {
  --min-size: 36;
  --max-size: 44;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max48 {
  --min-size: 36;
  --max-size: 48;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max52 {
  --min-size: 36;
  --max-size: 52;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max56 {
  --min-size: 36;
  --max-size: 56;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max60 {
  --min-size: 36;
  --max-size: 60;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max64 {
  --min-size: 36;
  --max-size: 64;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max68 {
  --min-size: 36;
  --max-size: 68;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max72 {
  --min-size: 36;
  --max-size: 72;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max76 {
  --min-size: 36;
  --max-size: 76;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max80 {
  --min-size: 36;
  --max-size: 80;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max84 {
  --min-size: 36;
  --max-size: 84;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max88 {
  --min-size: 36;
  --max-size: 88;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max92 {
  --min-size: 36;
  --max-size: 92;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max96 {
  --min-size: 36;
  --max-size: 96;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min36max100 {
  --min-size: 36;
  --max-size: 100;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min40max44 {
  --min-size: 40;
  --max-size: 44;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max48 {
  --min-size: 40;
  --max-size: 48;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max52 {
  --min-size: 40;
  --max-size: 52;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max56 {
  --min-size: 40;
  --max-size: 56;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max60 {
  --min-size: 40;
  --max-size: 60;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max64 {
  --min-size: 40;
  --max-size: 64;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max68 {
  --min-size: 40;
  --max-size: 68;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max72 {
  --min-size: 40;
  --max-size: 72;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max76 {
  --min-size: 40;
  --max-size: 76;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max80 {
  --min-size: 40;
  --max-size: 80;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max84 {
  --min-size: 40;
  --max-size: 84;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max88 {
  --min-size: 40;
  --max-size: 88;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max92 {
  --min-size: 40;
  --max-size: 92;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max96 {
  --min-size: 40;
  --max-size: 96;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min40max100 {
  --min-size: 40;
  --max-size: 100;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min44max48 {
  --min-size: 44;
  --max-size: 48;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max52 {
  --min-size: 44;
  --max-size: 52;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max56 {
  --min-size: 44;
  --max-size: 56;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max60 {
  --min-size: 44;
  --max-size: 60;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max64 {
  --min-size: 44;
  --max-size: 64;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max68 {
  --min-size: 44;
  --max-size: 68;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max72 {
  --min-size: 44;
  --max-size: 72;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max76 {
  --min-size: 44;
  --max-size: 76;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max80 {
  --min-size: 44;
  --max-size: 80;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max84 {
  --min-size: 44;
  --max-size: 84;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max88 {
  --min-size: 44;
  --max-size: 88;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max92 {
  --min-size: 44;
  --max-size: 92;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max96 {
  --min-size: 44;
  --max-size: 96;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min44max100 {
  --min-size: 44;
  --max-size: 100;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min48max52 {
  --min-size: 48;
  --max-size: 52;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.min48max56 {
  --min-size: 48;
  --max-size: 56;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min48max60 {
  --min-size: 48;
  --max-size: 60;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min48max64 {
  --min-size: 48;
  --max-size: 64;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min48max68 {
  --min-size: 48;
  --max-size: 68;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min48max72 {
  --min-size: 48;
  --max-size: 72;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min48max76 {
  --min-size: 48;
  --max-size: 76;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min48max80 {
  --min-size: 48;
  --max-size: 80;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min48max84 {
  --min-size: 48;
  --max-size: 84;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min48max88 {
  --min-size: 48;
  --max-size: 88;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min48max92 {
  --min-size: 48;
  --max-size: 92;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min48max96 {
  --min-size: 48;
  --max-size: 96;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}
.min48max100 {
  --min-size: 48;
  --max-size: 100;
  --font-size: calc(
    (var(--min-size) * 1px) + 
    (var(--max-size) - var(--min-size)) * 
    ((100vw - 320px) / (1920 - 320))
  );
  font-size: clamp(var(--min-size) * 1px, var(--font-size), var(--max-size) * 1px);
}

.letter-spacing-20{
  letter-spacing: 0.02em;
}
/* Line Height */
.line-height-initial {
	line-height: initial !important;
}

.line-height-1 {
	line-height: 1 !important;
}

.line-height-1-1 {
	line-height: 1.1 !important;
}

.line-height-2 {
	line-height: 1.2 !important;
}

.line-height-3 {
	line-height: 1.3 !important;
}

.line-height-4 {
	line-height: 1.4 !important;
}

.line-height-5 {
	line-height: 1.5 !important;
}

.line-height-6 {
	line-height: 1.6 !important;
}

.line-height-7 {
	line-height: 1.7 !important;
}

.line-height-8 {
	line-height: 1.8 !important;
}

.line-height-9 {
	line-height: 1.9 !important;
}
/* Font Size */
.text-0 {
  font-size: 0.7em !important;
}

.text-1 {
  font-size: 0.8em !important;
}

.text-2 {
  font-size: 0.9em !important;
}

.text-2-3,
.text-2-5 {
  font-size: 0.95em !important;
}

.text-3 {
  font-size: 1em !important;
}

.text-3-4,
.text-3-5 {
  font-size: 1.1em !important;
}

.text-4 {
  font-size: 1.2em !important;
}

.text-4-5 {
  font-size: 1.35em !important;
}

.text-5 {
  font-size: 1.5em !important;
}

.text-5-6,
.text-5-5 {
  font-size: 1.65em !important;
}

.text-6 {
  font-size: 1.8em !important;
}

.text-6-7,
.text-6-5 {
  font-size: 1.9em !important;
}

.text-7 {
  font-size: 2em !important;
}

.text-8 {
  font-size: 2.3em !important;
}

.text-9 {
  font-size: 2.5em !important;
}

.text-10 {
  font-size: 2.75em !important;
}

.text-11 {
  font-size: 3em !important;
}

.text-12 {
  font-size: 3.5em !important;
}

.text-12-13,
.text-12-5 {
  font-size: 3.75em !important;
}

.text-13 {
  font-size: 4em !important;
}

.text-14 {
  font-size: 4.5em !important;
}

.text-15 {
  font-size: 5em !important;
}

.text-16 {
  font-size: 5.33em !important;
}

.text-17 {
  font-size: 5.66em !important;
}

.text-18 {
  font-size: 6em !important;
}

.text-19 {
  font-size: 6.33em !important;
}

.text-20 {
  font-size: 6.66em !important;
}
.b-search-box .s-name {
  color: var(--maincolor);
  font-weight: 500;
}
.b-search-box .form-control{
  border-color: rgb(188 193 205 / 35%);
}
.b-search-box button{
  letter-spacing: 0.3rem;
  text-indent: 0.3rem;
}
.rounded-1{
  border-radius: 1rem;
}
.dotted{
  border-bottom: 1px dotted;
}
.contact .container .bg-primary::before{
  content: url(../img/logo_w.svg);
  display: inline-block;
  position: absolute;
  right: 10%;
  bottom: -10%;
  width: 280px;
  max-width: 50%;
}
.news_section .swiper-button-box{
  width: 110px;
  max-width: 100%;
  background: #626466;
  position: relative;
}
.news_section .swiper-button-next{
  position: relative;
  margin-top: 0;
  right: auto;
  top: auto;
}
.news_section .swiper-button-prev{
  position: relative;
  margin-top: 0;
  left: auto;
  top: auto;
}
.swiper-button-prev:after, .swiper-button-next:after{
  font-size: 20px;
  color: #fff;
}
.news_swiper a{
  color: #000;
}
.about .pic{
  background-position: center;
}
.consultant .info-box{
  position: absolute;
  bottom: 18px;
  right: 18px;
  background: #fff;
  border-top-left-radius: 15px;
  border-bottom-right-radius: 15px;
}
.consultant .swiper-slide a{
  color: #000;
  padding: 18px;
}
.consultant .swiper-slide:nth-child(even){
  margin-top: 40px;
}
.consultant .swiper-slide img{
  box-shadow: 0px 6px 18px 0 rgba(83, 86, 90, 0.07);
  transition: all 0.3s ease-in-out;
}
.consultant .swiper-slide a{
  transition: all 0.3s ease-in-out;
}
.consultant .swiper-slide a:hover img{
  box-shadow: 0px 6px 18px 0 rgba(83, 86, 90, 0.5);
}
.consultant .swiper-pagination{
  position: relative;
  display: flex;
}
.consultant .swiper-pagination-bullet{
  width: 15 px;
  border-radius: 0;
  height: 4px;
  transition: all 0.4s ease-in-out;
}
.consultant .swiper-pagination-bullet-active{
  width: 60px;
  background: var(--maincolor);
}
.consultant .swiper-button-next,
.consultant .swiper-button-prev{
  background: var(--maincolor);
}
.case .container > .row::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(100% - 5rem);
  background-color: #F0F0EF;
  transform: perspective(500px) scaleX(0.85) scaleY(-0.895) rotateX(183deg) translate(5%, 0);
  transform-origin: 0 100%;
  pointer-events: none;
  border-radius: 2rem;
}
.case img:not(.arrow-pic){
  box-shadow: 0px 6px 18px 0 rgba(83, 86, 90, 0.3)
}
.case p {
  color: #000;
  font-weight: 600;
}
.btn_line{
  color: #53565A;
  font-weight: 600;
}
.btn_line:hover{
  color: #000;
}
.btn_line::before{
  content: '';
  width: 100%;
  height: 2px;
  background: #53565A;
  position: absolute;
  left: 0;
  bottom: 0;
}
.btn_line:hover::before{
  animation: readMore 0.6s cubic-bezier(0.33, 1, 0.68, 1);
}
.case .pic img{
  transform: scale(1);
  transition: all 0.3s ease-in-out;
}
.case a:hover .pic img{
  transform: scale(1.1);
}
.case a .pic::before{
  opacity: 0;
  content: '';
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.3);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  transition: opacity 0.3s ease-in-out;
}
.case a:hover .pic::before{
  opacity: 1;
}
.process .step-box{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: 2px solid;
  border-radius: 100%;
}
.process .box{
  background: #f7f7f7;
  border-radius: 1rem;
  padding-top: 3rem;
  padding-bottom: 3rem;
  box-shadow: 0px 6px 18px 0 rgba(83, 86, 90, 0.2);
  z-index: 1;
}
.process .box::before{
  content: attr(data-step);
  display: inline-block;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: rgba(190, 30, 46, 0.25);
  color: transparent;
  font-size: 90px;
  font-weight: 600;
  font-style: italic;
  line-height: 1;
  position: absolute;
  left: -6%;
  top: 50%;
  transform: translate(0, -50%);
}
.process .box-out > div:not(:last-child)::before{
  content: '';
  width: calc(100% - 30px);
  height: 100%;
  border: 2px solid var(--maincolor);
  position: absolute;
  left: 12%;
  top: 5%;
  border-radius: 1rem;
}
.process .box-out > div:not(:last-child):after{
  content: '';
  position: absolute;
  right: -15px;
  top: 50%;
  transform: translate(0, -50%);
  width: 30px;
  height: 30px;
  clip-path: polygon(100% 50%, 0 0, 0 100%);
  background: var(--maincolor);
}
.process .step-outbox > div:nth-child(even) .box::before{
  right: 0;
  left: auto;
  transform: translate(0, -50%);
}
.process .out::after{
  content: '';
  width: 40%;
  height: 40%;
  background: var(--maincolor);
  position: absolute;
  z-index: 0;
}
.process .step-outbox > div:nth-child(1) .out::after{
  top: -5px;
  left: -5px;
  border-top-left-radius: 1.4rem;
}
.process .step-outbox > div:nth-child(2) .out::after{
  top: -5px;
  right: -5px;
  border-top-right-radius: 1.4rem;
}
.process .step-outbox > div:nth-child(3) .out::after{
  bottom: -5px;
  left: -5px;
  border-bottom-left-radius: 1.4rem;
}
.process .step-outbox > div:nth-child(4) .out::after{
  bottom: -5px;
  right: -5px;
  border-bottom-right-radius: 1.4rem;
}
.process .item-title{
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  transform: translate(-50%, -50%);
  background: var(--maincolor);
  color: #fff;
  width: 130px;
  height: 130px;
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2rem;
  font-weight: 600;
  letter-spacing: 1rem;
  text-indent: 1rem;
  border: 4px solid #fff;
  box-shadow: 0px 1px 10px 3px rgba(0, 0, 0, 0.3);
}
#footerNav{
  margin: 0 -10px;
}
#footerNav li{
  padding: 0 10px;
}
#footer .container{
  width: 1530px;
  max-width: 96%;
}
.left_icon, .right_icon,
.left_icon_b, .right_icon_b{
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: -1;
  opacity: 0.4;
  transition: 0.3s opacity ease-in-out;
}
.left_icon::before,
.left_icon::after,
.right_icon::before,
.right_icon::after{
  transition: 0.6s background-color ease-in-out;
}
.left_icon::before{
  content: '';
  width: 20%;
  height: 20%;
  background-color: var(--maingrey);
  position: absolute;
  top: -5px;
  left: -5px;
  border-top-left-radius: 19px;
  z-index: 0;
}
.left_icon::after{
  content: '';
  width: 20%;
  height: 20%;
  background-color: var(--maingrey);
  position: absolute;
  bottom: -5px;
  left: -5px;
  border-bottom-left-radius: 19px;
  z-index: 0;
}
.right_icon::before{
  content: '';
  width: 20%;
  height: 20%;
  background-color: var(--maingrey);
  position: absolute;
  top: -5px;
  right: -5px;
  border-top-right-radius: 19px;
  z-index: 0;
}
.right_icon::after{
  content: '';
  width: 20%;
  height: 20%;
  background-color: var(--maingrey);
  position: absolute;
  bottom: -5px;
  right: -5px;
  border-bottom-right-radius: 19px;
  z-index: 0;
}
.m-content-block{
  position: relative;
  border-radius: 14px;
  box-shadow: 0 0 50px -18px rgb(0 34 87 / 10%);
}
.left_icon_b::before{
  content: '';
  width: 8rem;
  height: 6rem;
  background-color: var(--maingrey);
  position: absolute;
  top: -5px;
  left: -5px;
  border-top-left-radius: 19px;
  z-index: 0;
}
.right_icon_b::after{
  content: '';
  width: 8rem;
  height: 6rem;
  background-color: var(--maingrey);
  position: absolute;
  bottom: -5px;
  right: -5px;
  border-bottom-right-radius: 19px;
  z-index: 0;
}
#footer a::before{
  content: '';
  position: absolute;
  bottom: -5px;
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  width: 10px;
  height: 2px;
  opacity: 0;
  transition: 0.3s all ease-in-out;
}
#footer a:hover::before{
  opacity: 1;
  bottom: -3px;
  width: 100%;
}
#footer .footer-nav nav > ul > li > a:hover::before{
  opacity: 1;
  bottom: 0px;
  width: calc(100% - 28px);
}
.cover-img img{
  object-fit: cover;
  object-position: center;
  width: 100%;
  height: 100% !important;
}
.product_list .title_{
  color: #7c7c7c;
  font-weight: 600;
}
.product_list a h2 {
  color: #000;
}
.product_list a{
  color: #000;
  box-shadow: 0px 0px 0 rgba(35, 24, 21, 0.4);
  transition: all 0.2s ease-in-out;
}
.product_list a.p-item:hover{
  color: #000;
  box-shadow: 8px 8px 0 #231815;
  background: var(--maingrey) !important;
}
.product_list a:hover h2,.product_list a:hover i:not(.fa-check-circle, .level2, .level3){
  color: #fff;
}
.product_list a i.fas.fa-heart{
  color: var(--maincolor);
}
.product_list .item{
  background: #f3f3f3;
  border-radius: 0.5rem;
}
.product_list .title_ + div{
  border-bottom: 1px dotted;
}
.btn-outline-danger{
  color: var(--maincolor);
  border-color: var(--maincolor);
}
.btn-outline-danger:hover {
  border-color: var(--maincolor);
  background: var(--maincolor);
}
.index_contact p{
  color: #fff;
}
.bg-box{
  background: var(--maingrey);
}
.search_cover{
  visibility: hidden;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  z-index: -1;
  backdrop-filter: blur(4px);
  opacity: 0;
  transition: opacity 0.3s ease-in-out, z-index 0s ease-in-out;
}
.search_cover.show{
  visibility: visible;
  opacity: 1;
  z-index: 11;
}
.search_cover .b-search-box{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#search_close{
  position: absolute;
  top: 5%;
  right: 5%;
  transition: all 0.6s ease-in-out;
}
#search_close:hover{
  cursor: pointer;
  transform: scale(1.2);
}
.type-not{
  color: #999;
}
.type-yes{
  color: #999;
}
.type-complete svg{
  fill: #0d8dc1;
}
.product_list a:hover .type-complete svg{
  fill: #00b5ff;
}
.product_list a:hover .type-yes svg{
  fill: #cdcdcd;
}
.tooltip-inner{
  background: #b53a3a;
}
.bs-tooltip-auto[x-placement^=top] .arrow::before, .bs-tooltip-top .arrow::before {
  border-top-color: #b53a3a;
}
.imageContainer{
  background: #ddd;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.imageContainer .pic-box{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.uploadedImage-box{
  margin: 0 auto;
  border: 2px dashed;
  margin-bottom: 20px;
  border-radius: 0.5rem;
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}
.uploadedImage-box::before {
  display: block;
  content: "";
  padding-top: 56.25%;
}
.uploadedImage{
  display: none;
  max-height: 100%;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.fileInput{
  position: absolute;
  opacity: 0;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}
.fileInput:hover{
  cursor: pointer;
}
.imageContainer .operate{
  background: #fff;
}
.deleteButton{
  z-index: 1;
}
.bg-grey_d{ 
  background: #ddd;
}
.contrast-btn{
  position: absolute;
  bottom: 10px;
  left: 10px;
}
.require-item .contrast-btn{
  position: relative;
  bottom: auto;
  left: auto;
}
.product_list a.contrast_active,
.require-item.contrast_active{
  outline: var(--maincolor) solid 2px !important;
}
.contrast-btn input{
  display: none;
}
.contrast-btn input + label{
  color: var(--maincolor_light);
  box-shadow: 0px 4px 6px rgba(35, 24, 21, 0.4);
  background: #fff;
  line-height: normal;
  cursor: pointer;
  border-radius: 0.3em;
  border-radius: 12px;
  font-weight: 600;
}
.contrast-btn input:checked + label{
  background: var(--maincolor_light);
  color: #fff;
}
.contrast-btn input + label .txt::before {
  content: '加入';
}
.contrast-btn input:checked + label .txt::before {
  content: '移除';
}
#contrast_modal th.title{
  background: #ddd;
}
.text-grey{
  color: #6e6e6e;
}
.my_notification .item{
  background: #fff;
  box-shadow: 0 0 50px -18px rgb(0 34 87 / 10%);
  border-radius: 14px;
}
.my_notification .item:hover {
  box-shadow: 0 0 24px -10px rgb(0 34 87 / 20%);
}
.my_notification .item.unread{
  background: #fbe9e9;
}
.my_notification .unread:after {
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  background: var(--maincolor);
}
.custom-file-input_ {
  padding: 5px;
  vertical-align: middle;
  border: 1px solid rgb(188 193 205 / 60%);
  width: 100%;
  border-radius: 8px;
}
.custom-file-input_::-webkit-file-upload-button {
  color: #fff;
  background: var(--maincolor);
  border-radius: 0.5rem;
  padding: 0.4rem 1em;
  outline: none;
  border: 0;
  cursor: pointer;
  margin-right: 15px;
}
.custom-file-input_:hover{
  cursor: pointer;
}
.level2{
  color: #ddc400;
}
.level3{
  color: #12ab2b;
}
@media (min-width: 576px) {
  .text-sm-0 {
    font-size: 0.7em !important;
  }

  .text-sm-1 {
    font-size: 0.8em !important;
  }

  .text-sm-2 {
    font-size: 0.9em !important;
  }

  .text-sm-2-3,
  .text-sm-2-5 {
    font-size: 0.95em !important;
  }

  .text-sm-3 {
    font-size: 1em !important;
  }

  .text-sm-3-4,
  .text-sm-3-5 {
    font-size: 1.1em !important;
  }

  .text-sm-4 {
    font-size: 1.2em !important;
  }

  .text-sm-4-5 {
    font-size: 1.35em !important;
  }

  .text-sm-5 {
    font-size: 1.5em !important;
  }

  .text-sm-5-6,
  .text-sm-5-5 {
    font-size: 1.65em !important;
  }

  .text-sm-6 {
    font-size: 1.8em !important;
  }

  .text-sm-6-7,
  .text-sm-6-5 {
    font-size: 1.9em !important;
  }

  .text-sm-7 {
    font-size: 2em !important;
  }

  .text-sm-8 {
    font-size: 2.3em !important;
  }

  .text-sm-9 {
    font-size: 2.5em !important;
  }

  .text-sm-10 {
    font-size: 2.75em !important;
  }

  .text-sm-11 {
    font-size: 3em !important;
  }

  .text-sm-12 {
    font-size: 3.5em !important;
  }

  .text-sm-12-13,
  .text-sm-12-5 {
    font-size: 3.75em !important;
  }

  .text-sm-13 {
    font-size: 4em !important;
  }

  .text-sm-14 {
    font-size: 4.5em !important;
  }

  .text-sm-15 {
    font-size: 5em !important;
  }

  .text-sm-16 {
    font-size: 5.33em !important;
  }

  .text-sm-17 {
    font-size: 5.66em !important;
  }

  .text-sm-18 {
    font-size: 6em !important;
  }

  .text-sm-19 {
    font-size: 6.33em !important;
  }

  .text-sm-20 {
    font-size: 6.66em !important;
  }
}

@media (min-width: 768px) {
  .text-md-0 {
    font-size: 0.7em !important;
  }

  .text-md-1 {
    font-size: 0.8em !important;
  }

  .text-md-2 {
    font-size: 0.9em !important;
  }

  .text-md-2-3,
  .text-md-2-5 {
    font-size: 0.95em !important;
  }

  .text-md-3 {
    font-size: 1em !important;
  }

  .text-md-3-4,
  .text-md-3-5 {
    font-size: 1.1em !important;
  }

  .text-md-4 {
    font-size: 1.2em !important;
  }

  .text-md-4-5 {
    font-size: 1.35em !important;
  }

  .text-md-5 {
    font-size: 1.5em !important;
  }

  .text-md-5-6,
  .text-md-5-5 {
    font-size: 1.65em !important;
  }

  .text-md-6 {
    font-size: 1.8em !important;
  }

  .text-md-6-7,
  .text-md-6-5 {
    font-size: 1.9em !important;
  }

  .text-md-7 {
    font-size: 2em !important;
  }

  .text-md-8 {
    font-size: 2.3em !important;
  }

  .text-md-9 {
    font-size: 2.5em !important;
  }

  .text-md-10 {
    font-size: 2.75em !important;
  }

  .text-md-11 {
    font-size: 3em !important;
  }

  .text-md-12 {
    font-size: 3.5em !important;
  }

  .text-md-12-13,
  .text-md-12-5 {
    font-size: 3.75em !important;
  }

  .text-md-13 {
    font-size: 4em !important;
  }

  .text-md-14 {
    font-size: 4.5em !important;
  }

  .text-md-15 {
    font-size: 5em !important;
  }

  .text-md-16 {
    font-size: 5.33em !important;
  }

  .text-md-17 {
    font-size: 5.66em !important;
  }

  .text-md-18 {
    font-size: 6em !important;
  }

  .text-md-19 {
    font-size: 6.33em !important;
  }

  .text-md-20 {
    font-size: 6.66em !important;
  }
  .news_section:not(.product_section) .right_box{
    width: calc(100% - 320px);
  }
}

@media (min-width: 992px) {
  .text-lg-0 {
    font-size: 0.7em !important;
  }

  .text-lg-1 {
    font-size: 0.8em !important;
  }

  .text-lg-2 {
    font-size: 0.9em !important;
  }

  .text-lg-2-3,
  .text-lg-2-5 {
    font-size: 0.95em !important;
  }

  .text-lg-3 {
    font-size: 1em !important;
  }

  .text-lg-3-4,
  .text-lg-3-5 {
    font-size: 1.1em !important;
  }

  .text-lg-4 {
    font-size: 1.2em !important;
  }

  .text-lg-4-5 {
    font-size: 1.35em !important;
  }

  .text-lg-5 {
    font-size: 1.5em !important;
  }

  .text-lg-5-6,
  .text-lg-5-5 {
    font-size: 1.65em !important;
  }

  .text-lg-6 {
    font-size: 1.8em !important;
  }

  .text-lg-6-7,
  .text-lg-6-5 {
    font-size: 1.9em !important;
  }

  .text-lg-7 {
    font-size: 2em !important;
  }

  .text-lg-8 {
    font-size: 2.3em !important;
  }

  .text-lg-9 {
    font-size: 2.5em !important;
  }

  .text-lg-10 {
    font-size: 2.75em !important;
  }

  .text-lg-11 {
    font-size: 3em !important;
  }

  .text-lg-12 {
    font-size: 3.5em !important;
  }

  .text-lg-12-13,
  .text-lg-12-5 {
    font-size: 3.75em !important;
  }

  .text-lg-13 {
    font-size: 4em !important;
  }

  .text-lg-14 {
    font-size: 4.5em !important;
  }

  .text-lg-15 {
    font-size: 5em !important;
  }

  .text-lg-16 {
    font-size: 5.33em !important;
  }

  .text-lg-17 {
    font-size: 5.66em !important;
  }

  .text-lg-18 {
    font-size: 6em !important;
  }

  .text-lg-19 {
    font-size: 6.33em !important;
  }

  .text-lg-20 {
    font-size: 6.66em !important;
  }
  .b-search-box {
    position: absolute;
    top: 70%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
    /* width: 1100px;
    max-width: 100%; */
  }
}

@media (min-width: 1200px) {
  .text-xl-0 {
    font-size: 0.7em !important;
  }

  .text-xl-1 {
    font-size: 0.8em !important;
  }

  .text-xl-2 {
    font-size: 0.9em !important;
  }

  .text-xl-2-3,
  .text-xl-2-5 {
    font-size: 0.95em !important;
  }

  .text-xl-3 {
    font-size: 1em !important;
  }

  .text-xl-3-4,
  .text-xl-3-5 {
    font-size: 1.1em !important;
  }

  .text-xl-4 {
    font-size: 1.2em !important;
  }

  .text-xl-4-5 {
    font-size: 1.35em !important;
  }

  .text-xl-5 {
    font-size: 1.5em !important;
  }

  .text-xl-5-6,
  .text-xl-5-5 {
    font-size: 1.65em !important;
  }

  .text-xl-6 {
    font-size: 1.8em !important;
  }

  .text-xl-6-7,
  .text-xl-6-5 {
    font-size: 1.9em !important;
  }

  .text-xl-7 {
    font-size: 2em !important;
  }

  .text-xl-8 {
    font-size: 2.3em !important;
  }

  .text-xl-9 {
    font-size: 2.5em !important;
  }

  .text-xl-10 {
    font-size: 2.75em !important;
  }

  .text-xl-11 {
    font-size: 3em !important;
  }

  .text-xl-12 {
    font-size: 3.5em !important;
  }

  .text-xl-12-13,
  .text-xl-12-5 {
    font-size: 3.75em !important;
  }

  .text-xl-13 {
    font-size: 4em !important;
  }

  .text-xl-14 {
    font-size: 4.5em !important;
  }

  .text-xl-15 {
    font-size: 5em !important;
  }

  .text-xl-16 {
    font-size: 5.33em !important;
  }

  .text-xl-17 {
    font-size: 5.66em !important;
  }

  .text-xl-18 {
    font-size: 6em !important;
  }

  .text-xl-19 {
    font-size: 6.33em !important;
  }

  .text-xl-20 {
    font-size: 6.66em !important;
  }
  .top_member:hover .dropdown-menu {
    display: block;
  }
}
@media (min-width: 992px) {
  #header
    .header-nav-main
    nav
    > ul
    > li.dropdown
    .dropdown-menu
    li
    a
    .fa-chevron-down {
    display: none;
  }
  #header
    .header-nav-main
    nav
    > ul
    > li.dropdown
    .dropdown-menu
    li
    a.dropdown-toggle::after {
    border: 0;
    font-family: "Font Awesome 5 Free";
    content: "\f054";
    font-weight: 900;
    position: absolute;
    top: 50%;
    font-size: 0.5rem;
    opacity: 0.7;
    right: 20px;
    transform: translateY(-50%);
    transition: all 0.2s ease-out;
  }
  .product_section .right_box{
    width: calc(100% - 320px);
  }
}
ul > li.dropdown:hover > .dropdown-menu {
  top: auto;
  display: block;
  opacity: 1;
}
#header
  .header-nav-main
  nav
  > ul
  > li.dropdown
  .dropdown-menu
  li.dropdown:hover
  > .dropdown-menu {
  top: 0;
  left: 100%;
  opacity: 1;
}
.nav-pills > li > a.dropdown-item {
  border-radius: 25px !important;
}

#header .header-nav-main nav > ul#mainNav > li > a {
  color: #3c4043;
  font-weight: 700;
  font-size: 19px;
}
#header .header-nav-main nav > ul:not(:hover) > li > a.active {
  color: #be1e2d;
}
.font-weight-extra-bold.text-uppercase {
  font-family: var(--fontblod);
  line-height: 1;
}

.news_case {
  min-height: calc((100vh - 232px));
}

.effect1 {
  color: var(--maincolor);
  text-decoration: none;
  font-size: 18px;
  position: relative;
  padding: 10px 50px 10px 20px;

  -webkit-transition: all 0.3s;

  -o-transition: all 0.3s;

  transition: all 0.3s;

  -webkit-transform: scale(3);

  -ms-transform: scale(3);

  transform: scale(3);
  /*change scale(3) to scale(1)*/
}

.effect1 .bg {
  background: var(--maincolor);
  width: 30px;
  height: 2px;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -1px;
  z-index: -1;

  -webkit-transition: all 0.3s;

  -o-transition: all 0.3s;

  transition: all 0.3s;
}

.effect1:hover {
  padding-right: 20px;
  color: #fff;
  text-decoration: none;
}

.effect1:hover .bg {
  height: 100%;
  width: 100%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.effect1 .bg:before,
.effect1 .bg:after {
  content: "";
  height: 2px;
  width: 10px;
  background: var(--maincolor);
  position: absolute;
  right: -2px;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

.effect1 .bg:before {
  bottom: 3px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.effect1 .bg:after {
  top: 3px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.effect1:hover .bg:before,
.effect1:hover .bg:after {
  right: 0;
}

.effect1:hover .bg:before {
  bottom: 6px;
}

.effect1:hover .bg:after {
  top: 6px;
}

.vertical {
  writing-mode: vertical-lr;
}

.subTitle {
  font-weight: 600;
  font-size: 18px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--maincolor);
}

html .toggle-primary .toggle > label {
  color: #777;
  background-color: #fff;
  border: 1px solid #eee;
  height: 48px;
}

.toggle > label:before {
  top: calc(50% + -8px);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.toggle.active > label:before {
  top: calc(50% - 2px);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

/* .btn-modern.rounded-1{border-radius: 5px !important;} */
.round-15 {
  border-radius: 15px !important;
}

.toggle-content .custom-control {
  display: inline-block;
}

.tabs.tabs-simple .nav-tabs > li {
  margin-right: 15px;
  position: relative;
}

html body .tabs.tabs-simple .nav-tabs > li.active .nav-link {
  background-color: var(--maincolor);
  color: #fff;
}

html body .tabs.tabs-simple .nav-tabs > li.active:hover .nav-link,
html body .tabs.tabs-simple .nav-tabs > li.active .nav-link:focus {
  color: #fff;
}

html body .tabs.tabs-simple .nav-tabs > li.active:before {
  content: "";
  display: block;
  position: absolute;
  bottom: -13px;
  right: 42%;
  width: 0;
  height: 0;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-top: 7px solid var(--maincolor);
  -webkit-transform: translate3d(-7px, -6px, 0);
  transform: translate3d(-7px, -6px, 0);
}

.i_gov_table tr th {
  vertical-align: middle;
}

.i_gov_table a:hover,
.gov_case_T:hover > a {
  color: rgba(227, 89, 56, 0.5);
}

.i_gov_table td,
.i_new_table td {
  vertical-align: middle;
}

.i_gov_table td:last-child,
.i_new_table th:last-child,
.i_new_table td:last-child {
  text-align: right;
}

/*.i_gov_table a:hover:before,.gov_case_T:hover>a:before{
    transition: all .3s ease;
    content: '查看內容';
    background-color: var(--maincolor);
    color: #fff;
    border-radius: 50px;
    position: absolute;
    padding: 5px 8px;
    left: calc((100% - 80px) / 2);
    top: 17%;
}*/
.pos_r {
  position: relative;
}

.chat_line {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: fixed;
  bottom: 10px;
  right: 10px;
  z-index: 1042;
}

.scroll-to-top.visible ~ .chat_line {
  bottom: 65px;
}

.bg-tertiary {
  background: #eaeff3;
}

.text-primary-dk {
  color: var(--maindark);
}

.step_box {
  opacity: 0.35;
  height: calc(100% / 3.5);
}

.step_box.active {
  opacity: 1;
}

.custom-control {
  padding-left: 0;
  margin-bottom: 5px;
}

.custom-control-label {
  position: static;
  padding-left: 1.7rem;
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgb(5 123 223 / 25%);
}

.custom-control-label::before,
.custom-control-label::after {
  width: 1.3rem;
  height: 1.3rem;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.delupImg {
  position: relative;
  cursor: pointer;
}

.delupImg i {
  position: absolute;
  top: -7px;
  right: -7px;
  font-size: 24px;
  color: #853131;
  text-shadow: 0 0 10px rgba(8, 8, 8, 0.4);
  background-color: #ffffff;
  border-radius: 50px;
}

.dis_block {
  display: block;
}

.custom-file.isround {
  max-width: 350px;
}

.custom-file.isround input {
  border-radius: 25px 0 0 25px;
}

.text-light-4 {
  line-height: 1.8;
}

.sucess_container {
  min-height: calc(85vh - 6rem);
  background-color: rgba(255, 255, 255, 0.95);
}

.sucess_box {
  padding: 25px;
  width: 100%;
}

.page_subtitle {
  position: absolute;
  font-size: 2rem;
  opacity: 0.08;
  bottom: -28px;
  width: 100%;
  z-index: 0;
}

.main > section .page_subtitle {
  bottom: 26px;
}

/*.custom-text-color-2.table td{border: 1px solid #dee2e6}*/
.custom-text-color-2 td:nth-child(1),
.custom-text-color-2 td:nth-child(2) {
  width: 12%;
}

.custom-text-color-2 td:nth-child(4) {
  width: 15%;
}

.custom-text-color-2 td:nth-child(3) {
  width: 40%;
}

.pagination > li:last-child > a,
.pagination > li:first-child > a {
  padding: 10px 12px;
}

html.side-panel .side-panel-wrapper {
  width: 500px;
  max-width: 100%;
}

.filter_box {
  height: calc(100vh - 150px);
  margin-bottom: 10px;
}

html .like.add i:before {
  font-weight: 900;
  color: #fff;
  text-shadow: 0 0 10px rgba(248, 80, 67, 0.2);
}

html .timeline-box .dk .btn-outline.btn-primary {
  color: #e69168;
  background-color: rgba(255, 255, 255, 0);
  background-image: none;
  border-color: #e69168;
  font-weight: 600;
}

html .add.btn-primary.like,
html .add.btn-primary.like i,
html .add.btn-primary.like:hover,
html .timeline-box .dk .btn-outline.btn-primary:hover,
html .timeline-box .dk .btn-outline.btn-primary.add {
  background-color: var(--maincolor);
  color: #fff;
}

html .like:hover i,
html .btn-primary.like:hover i,
html .add.btn-primary.like i {
  color: #fff;
}

.badge {
  border-radius: 25px !important;
}

.informationArea {
  border-bottom: 1px solid #e3e3e2;
}

.count {
  font-size: 2rem;
  font-weight: 700;
  color: #414141;
}

.case_owner {
  position: absolute;
  left: calc((100% - 120px) / 2);
  top: -20px;
  width: 120px;
  height: 120px;
  border-radius: 100%;
  border: 8px solid #f0f3f7;
}

.author {
  position: absolute;
  bottom: 30px;
  z-index: 5;
}

.author .cover {
  width: 150px;
  height: 150px;
  border-radius: 100%;
  border: 5px solid #fff;
}

.author p {
  font-weight: 600;
}

.author_content {
  float: left;
  margin-top: 20px;
}

.box_link {
  margin: 0;
}

.box_link a {
  color: #fff;
  display: block;
  text-align: center;
  padding: 25px 20px;
  font-weight: 600;
  background-color: var(--maincolor);
}

.box_link a:nth-child(1) {
  background-color: #df6a05;
}

.box_link a:nth-child(3) {
  background-color: #c03e00;
}

.box_link a:hover {
  filter: contrast(1.2);
}

.socile {
  margin-bottom: 0;
}

.socile li {
  display: inline-block;
  padding-right: 15px;
  color: #666;
}

.socile li i {
  font-size: 18px;
}

.side_filter select,
.side_filter .input-group input.form-control {
  height: 48px;
  font-size: 1rem;
}

.side_filter .toggle.toggle-minimal .toggle > label {
  border: 1px solid rgba(0, 0, 0, 0.09) !important;
  padding: 0.5rem 1rem;
  height: 48px;
  background-color: #fff;
}

select {
  position: relative;
  -webkit-appearance: none;
}

select ~ label,
#cate_btn + label {
  display: block;
  position: absolute;
  bottom: 9px;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  right: 11px;
  border-color: #ccc;
  border-top: 1px solid;
  border-right: 1px solid;
  width: 8px;
  height: 8px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

p + select ~ label {
  bottom: 13px;
  top: auto;
}

form .item {
  padding: 0;
  display: inline-block;
  position: relative;
}
form .item.apply_button {
  vertical-align: bottom;
}
form .item button {
  margin-bottom: 0;
}

form .item.search {
  max-width: 250px;
}

form .item select {
  padding: 0.5rem 1.5rem 0.5rem 0.8rem;
}

#cate_btn {
  display: block;
  width: 100%;
  cursor: pointer;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.5rem 1.5rem 0.5rem 0.8rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 2;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.09);
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  background: #fff;
  min-height: 49px !important;
}

.cate_select {
  position: relative;
}

#cate_show {
  position: absolute;
  width: 40vw;
  left: 0vw;
  padding-top: 20px;
  display: none;
  z-index: 9;
  box-shadow: 0 0 10px #bbb;
  background: #fff;
  top: 110%;
}

#cate_show.show {
  display: block;
}

.side_filter .toggle-content {
  max-height: 300px;
  overflow-y: scroll;
}

html .toggle-primary .toggle input ~ label {
  color: #777;
}

[data-toggle="modal"] {
  cursor: pointer;
}

#partner .modal-body div:nth-child(3n) .border-right {
  border-right: none !important;
}
.post-item {
  display: flex;
}
.post-item .post-image {
  width: 25%;
  flex-shrink: 0;
}
.post-item .post-image a {
  display: block;
}
.post-item .post-content {
  padding-left: 32px;
}
.side_title {
  position: relative;
  margin-bottom: 12px;
}
.side_title h4 {
  background-color: #e3ecf6;
  padding: 8px 20px;
  color: #607796;
  font-weight: 500;
  font-size: 1.1em;
  margin-bottom: 0;
  border-radius: 30px;
}

.side_title.large h4 {
  padding: 12px 20px;
  margin-bottom: 0;
}

.side_title:before {
  content: "";
  height: 100%;
  width: 25px;
  background-color: var(--lightbg);
  display: block;
  position: absolute;
  right: 40px;
}
ul.simple-post-list {
  padding-left: 10px;
}

.contact_company {
  background-color: rgba(255, 255, 255, 0.85);
  padding: 25px 15px;
}

.modal-backdrop {
  z-index: 1043;
}

.first_row .custom-tour-item {
  background-color: var(--maingrey);
}

.member_nav {
  margin-bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.member_nav li {
  display: inline;
}

.member_nav li a {
  color: #444;
  font-weight: 600;
  position: relative;
}

.member_nav li a:hover,
.member_nav li a.active {
  color: var(--maincolor);
}

.ui-block-title {
  padding: 0 25px 18px;
  line-height: 1;
  border-bottom: 1px solid #e6ecf5;
  display: table;
  width: 100%;
  position: relative;
  border-radius: 5px 5px 0 0;
}

html body .tabs .nav-tabs li.active .nav-link,
html body .tabs .nav-tabs.nav-justified .nav-link:hover,
html body .tabs .nav-tabs.nav-justified .nav-link:focus {
  border-top: none;
}

.nav-tabs.nav-justified li .nav-link {
  border-bottom: 1px solid #eee;
}

html body .tabs.white-tab .nav-tabs li.active .nav-link,
html body .tabs.white-tab .nav-tabs .nav-link:hover,
html body .tabs.white-tab .nav-tabs .nav-link:focus,
html body .tabs.white-tab .nav-tabs.nav-tabs-justified li.active .nav-link,
html body .tabs.white-tab .nav-tabs.nav-tabs-justified .nav-link:hover,
html body .tabs.white-tab .nav-tabs.nav-tabs-justified .nav-link:focus {
  color: var(--maingreen_light);
  border-top: 1px solid var(--maingreen_light);
}

/*.table.partner th:last-child,.table.partner td:last-child{text-align: right;}*/
.table.partner td {
  position: relative;
  vertical-align: middle;
}

.table.partner td select {
  padding: 6px 15px;
  height: 40px;
  border-radius: 50px !important;
}

.table.partner td select + label {
  top: calc(50% + -7px);
}

.partner select.accept {
  border-color: #79b335;
  color: #119935;
  background-color: #ebf4e3;
}

.partner select.refuse {
  border-color: #999;
  color: #666;
  background-color: #ececec;
}

table.partner td a.text-dark:hover {
  color: var(--maincolor) !important;
}

.simple-post-list li.border-bottom a {
  width: 100%;
}

li article {
  display: flex;
  align-items: center;
}

[for="mycover"] {
  border-radius: 100px;
  width: 150px;
  height: 150px;
  margin: 0 auto;
  overflow: hidden;
}

.profile-image-change-text {
  display: none;
}

.profile-image-change-text {
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  bottom: 0;
  color: #fff;
  display: none;
  height: 40px;
  line-height: 32px;
  right: 0;
  top: -40px;
  width: 100%;
  z-index: 3;
}

[for="mycover"]:hover .profile-image-change-text {
  display: block;
  text-align: center;
}

.message_author {
  border-radius: 50px;
  margin: 0px auto;
  width: 80px;
  height: 80px;
}

.scroll_box {
  height: 560px;
  overflow-y: scroll;
  overflow-x: hidden;
}

.fix_btn {
  position: fixed;
  bottom: 10px;
  right: 10%;
  z-index: 3;
}

.fix_btn a {
  width: 120px;
  height: 120px;
  display: block;
  border: 1px solid #dadada;
  line-height: 100px;
  border-radius: 100px;
  margin-bottom: 10px;
  font-size: 16px;
  position: relative;
}

.fix_btn a:before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: -1;
  background-color: var(--maingreen);
  width: 100px;
  height: 100px;
  border-radius: 50%;
}

.toggle-content .d-flex img + div {
  width: calc(100% - 250px);
}

.buy_table td,
.buy_table th {
  text-align: center;
  border: 1px solid #e6d7d1;
}

.buy_table th {
  background-color: var(--maincolor);
  color: #fff;
}

.buy_table td:nth-child(1) {
  text-align: left;
  background-color: rgba(223, 76, 9, 0.1);
  padding: 0.75rem 0.5rem;
}

.list.list-icons li > .icons:first-child {
  color: #777;
}

.map iframe {
  width: 100%;
  height: 350px;
}

.form-control-lg {
  font-size: 16px;
  padding: 0.375rem 0.75rem;
}
select.form-control {
  padding-right: 2rem;
}
.fb-share-button span,
.fb-like span {
  vertical-align: top !important;
}

.timeline-box .row {
  margin-right: 0px;
  margin-left: 0px;
}

#company_select {
  background-color: var(--maincolor);
  color: #fff;
}

#company_select + label {
  border-color: #fff;
}

.tabs-simple img {
  max-width: 40%;
  margin: 28px auto;
}

.step_box img {
  max-width: 30%;
  margin: 0 auto;
}

.index .content-grid .bg_round:after {
  content: "";
  width: 100px;
  height: 100px;
  border-radius: 100px;
  background-color: var(--maingreen);
  opacity: 0.1;
  display: block;
  position: absolute;
  top: 20%;
  left: calc((100% - 100px) / 2);
}

.custom-control-label::after {
  background: no-repeat 45%/60% 60%;
}

.unread:after {
  content: "";
  position: absolute;
  width: 12px;
  height: 12px;
  display: block;
  border-radius: 10px;
  background-color: rgb(223, 75, 5);
  top: -8px;
  right: -6px;
  z-index: 0;
}

.dropdown-item.unread:after {
  width: 12px;
  height: 12px;
  top: -3px;
  right: -3px;
}

.border-left-extra-bold:before {
  width: 50px;
  height: 3px;
  content: "";
  display: block;
  background: #55857e;
  position: absolute;
  left: calc((100% - 41px) / 2 - 100px);
  top: 15px;
}

.border-left-extra-bold:after {
  width: 50px;
  height: 3px;
  content: "";
  display: block;
  background: #55857e;
  position: absolute;
  left: calc((100% - 41px) / 2 + 90px);
  top: 15px;
}

.timeline-box table td {
  padding: 0.3rem 0.75rem;
  /*background-color: rgba(234, 239, 243, 0.5);*/
}

.timeline-box .border {
  border-width: 2px !important;
}

.timeline-box .d-sm-flex.justify-content-between {
  background-color: rgb(224, 229, 234);
}

.company_cat_box {
  border: 2px solid #c2d6d4;
  text-align: center;
  padding: 0px;
}

.company_cat_box h3 {
  margin-bottom: 10px;
  background-color: #cadedb;
  padding: 10px;
}

.company_cat_box:nth-child(2n) {
  border-left: none;
}

.company_cat_box:first-child h3,
.company_cat_box:last-child h3 {
  background-color: var(--maingreen);
  color: #fff;
}

.company_cat_box img.img-fluid {
  max-width: 65px;
}

.company_cat_box .col-lg-3.col-4:hover {
  text-shadow: 0 0 20px #56aaa9;
  font-weight: 600;
}

.company_cat_box table {
}

.flex-warp-warp {
  flex-wrap: wrap;
}

textarea.form-control {
  min-height: 48px;
}

.servoce_box {
  position: relative;
}

.del_service {
  position: absolute;
  top: 10px;
  right: -14px;
  background: #ddd;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  font-size: 30px;
  color: #848484;
  text-shadow: 0 0 10px rgba(8, 8, 8, 0.4);
  background-color: #ffffff;
  border-radius: 50px;
}

#close_cate {
  z-index: 2;
  position: absolute;
  right: -1px;
  top: 5px;
  padding: 10px;
  font-size: 28px;
}

.tag {
  border: 1px solid var(--maingreen);
  color: var(--maingreen);
  border-radius: 4px;
  padding: 5px 10px;
  font-size: 14px;
  display: inline-block;
  line-height: 1.5;
  margin: 5px 5px 0 0;
}

.index #footer {
  margin-top: 0;
}

svg ~ span {
  font-size: 30px;
}

section.section.section-tertiary.section-no-border {
  padding: 20px 0;
}

.pricing-table.pricing-table-no-gap.offset-lg-1 {
  margin-left: 8.333333%;
}

.plan .seldate.pos_r {
  width: 150px;
  margin: 0 auto;
  color: #df4a06;
  border: 1px solid #df4a06;
  border-radius: 4px;
}

.plan .seldate.pos_r select.form-control-lg {
  color: #df4a06;
  font-size: 15px;
  height: 40px !important;
}

.plan-price sub {
  font-size: 18px;
  transform: translateY(24px) translateX(6px);
}

#footer {
  z-index: 0;
  background: #242424;
  margin-top: 0;
}

.input-group-append button.btn-light {
  border: 1px solid rgb(188 193 205 / 60%);
  border-left: none;
}

.input-group-append button.btn-light {
  pointer-events: none;
}

.simple-post-list li.border-bottom b {
  width: 100%;
}

#who-we-are img {
  max-width: 100%;
  height: auto;
}

.message_textarea {
  min-height: 48px;
  border-color: #dee2e6;
  border-radius: 5px !important;
  background-color: #f8fafc;
}

/* $c */
.lc-1 {
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
  white-space: nowrap;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
}

.search-bar {
  padding-left: 11px;
  transition: all 0.3s;
  display: flex;
  align-items: center;
  padding-top: 10px;
  padding-bottom: 10px;
  transition: height 0.5s;
}

.search-bar .stickyLogo {
  content: "";
  position: absolute;
  right: 100%;
  width: 60px;
  height: 40px;
  background-image: url("../img/logo_img.png");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 280ms ease;
}

.sticky-header-active .search-bar .stickyLogo {
  opacity: 1;
  visibility: visible;
}

.search-bar .item {
  display: inline-block;
}

.search-bar .input-group {
  width: 320px;
}

.search-bar .input-group .form-control {
  /* height: auto; */
  min-height: 30px;
  border-color: #be1e2d;
  border-top-left-radius: 40px;
  border-bottom-left-radius: 40px;
}

.search-bar .input-group .btn {
  border-top-right-radius: 40px;
  border-bottom-right-radius: 40px;
  padding: 0.333rem 0.933rem;
}

.search-bar .custom-control {
  font-size: 0.95em;
}

.link-box {
  margin-left: 24px;
}

.link-box .link-item {
  display: inline-block;
  padding: 6px 16px;
}

.cate.cate3 .ad-imgbox {
  width: 240px;
  margin-bottom: 8px;
  display: block !important;
}

.cate.cate3 .ad-imgbox .imgbox__inner {
  width: 100%;
  padding-top: calc(100% * 6 / 9);
  position: relative;
}

.cate.cate3 .ad-imgbox .image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
}

.sale-section,
.company-section {
  position: relative;
}

.product-box {
  display: block;
  padding: 10px;
  margin-bottom: 24px;
}
.shop-box {
  display: flex;
  align-items: center;
  background-color: #fff;
  padding: 15px 24px;
  margin-bottom: 24px;
  border-radius: 14px;
  box-shadow: 0 0 50px -18px rgb(0 34 87 / 10%);
  transition: all 280ms;
}
.shop-box .shop-imgbox {
  width: 20%;
  flex-shrink: 0;
  border-radius: 50%;
  overflow: hidden;
  border: 1px solid rgb(61 61 61 / 8%);
  transition: all 280ms;
}
.shop-box:hover {
  background-color: #bedfff;
  box-shadow: 0 0 20px -18px rgb(0 34 87 / 10%);
}
.shop-box:hover .shop-imgbox {
  opacity: 0.7;
}
.shop-box:hover .product-infobox .btn {
  background-color: #be1e2d;
  color: #fff;
}
.product-box.last-box {
  text-align: center;
  background-color: transparent;
  border: 1px solid #be1e2d;
}

.product-box.last-box:hover {
  background-color: #be1e2d;
}

.product-box.last-box .product-imgbox {
  border: 3px solid #fff;
}

.product-box.last-box .product-infobox {
  padding: 12px 8px;
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}

.product-box.last-box h3 {
  margin-bottom: 0;
  margin-top: 24px;
  font-size: 24px;
  color: #be1e2d;
  width: 100%;
}

.product-box.last-box p {
  width: 100%;
  color: #be1e2d;
}
.product-box.last-box:hover h3,
.product-box.last-box:hover p {
  color: #fff;
}
.imgbox__inner {
  width: 100%;
  padding-top: 100%;
  position: relative;
}
.imgbox__inner-6-9 {
  width: 100%;
  padding-top: calc(100% * 6 / 9);
  position: relative;
}
.image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.product-infobox {
  padding-top: 16px;
  /* height: 195px; */
}
.shop-box .product-infobox {
  padding-top: 16px;
  padding-bottom: 16px;
  padding-left: 24px;
  flex-grow: 1;
}
.unqualified .product-infobox {
  padding: 8px;
  padding-top: 16px;
  height: 170px;
}

.product-infobox p {
  margin-bottom: 0;
  color: #3c4043;
  font-size: 15px;
  letter-spacing: 0.6px;
  line-height: 1.4;
}

.product-infobox .product-name {
  margin-bottom: 0;
  font-size: 20px;
  line-height: 1.2;
  font-weight: 700;
  /* height: 44px; */
  color: #3c4043;
}
.product-infobox .main-product {
  color: #2969bc;
  font-weight: 600;
  font-size: 16px;
}
.shop-box .product-infobox .product-name {
  font-size: 22px;
}
.shop-box .product-infobox .product-name {
  height: auto;
}
.product-infobox .feature {
  margin-bottom: 0;
  height: 44px;
  color: rgb(55 55 55 / 55%);
}
.product-infobox .brand-name {
  margin-bottom: 4px;
  font-size: 15px;
}

.product-infobox .price {
  font-size: 15.4px;
  margin-bottom: 2px;
  line-height: 1.4;
  color: #acacac;
  font-weight: 500;
  text-decoration: line-through;
}

.product-infobox .o-price {
  position: relative;
  display: inline-block;
  color: #004fb5;
  font-size: 18px;
}

.product-infobox .price.special-price {
  color: #e67815;
  font-size: 18px;
  font-weight: 600;
  text-decoration: none;
}

.product-infobox .company-name {
  font-size: 15.4px;
  margin: 8px 0;
}

.company-box .company-name a {
  color: #212529;
}

.product-infobox .least {
  font-size: 15.4px;
  background-color: #eee;
  padding: 0px 5px;
  margin-top: 4px;
  letter-spacing: 0;
}
.title-box {
  position: relative;
}
.title-box h2 {
  color: #3c4043;
  font-size: 2.4em;
  margin-bottom: 0;
  position: relative;
}
.company-section .title-box h2::before {
  content: "";
  display: inline-block;
  width: 250px;
  height: 250px;
  background-image: url(../img/icons/supply.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 50%;
  position: absolute;
  right: -160px;
  opacity: 0.1;
  top: 50%;
  transform: translateY(-40%);
}
.require-section .title-box h2::before {
  content: "";
  display: inline-block;
  width: 250px;
  height: 250px;
  background-image: url(../img/icons/require.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  right: -160px;
  opacity: 0.1;
  top: 50%;
  transform: translateY(-40%);
}
.title-box .v-span {
  position: relative;
  margin-bottom: 80px;
}
.title-box .v-span::before {
  content: "";
  width: 1px;
  height: 60px;
  background-color: #be1e2d;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 28px;
}
.shop-box .product-infobox .btn {
  margin-top: 10px;
  background-color: #f2f6ff;
}

.shop-box .product-infobox p {
  margin-bottom: 8px;
}

.shop-box .product-infobox .feature span {
  background-color: #f38451;
  color: #fff;
  font-size: 0.2em;
  border-radius: 3px;
  padding: 0 4px;
  line-height: 18px;
  display: inline-block;
  vertical-align: top;
  margin-right: 2px;
}

.category-box {
  width: 19%;
  display: flex;
  align-items: center;
  padding: 8px 10px;
  transition: all 0.3s;
  /* box-shadow: 0 0px 8px -3px rgba(0,0,0,0.2); */
  margin-bottom: 8px;
  background-color: #eef2fa;
  margin-right: 8px;
  border-radius: 100px;
}

.find-category-section .category-box:last-child {
  margin-right: 0;
}
.category-box .product-imgbox {
  width: 30%;
  border-radius: 50%;
  overflow: hidden;
}
.category-box:hover {
  transform: translateY(0);
  box-shadow: 0 0 30px -12px rgba(0, 0, 0, 0.1);
  background-color: #bedfff;
}

.category-box:hover p {
  color: #3c4043;
  transition: all 0.3s;
}

.category-box p {
  margin-bottom: 0;
  line-height: 1.4;
  padding-left: 10px;
  color: #222;
}

.category-wrapper {
  display: flex;
  flex-wrap: wrap;
}

.product-imgbox .imgbox__inner {
  width: 100%;
  padding-top: 100%;
  position: relative;
}

.product-imgbox .image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.category-name {
  font-weight: 600;
  position: relative;
  color: #be1e2d;
}

.category-name::before {
  content: "";
  width: 30px;
  height: 30px;
  background-image: url(../img/icons/tag.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: middle;
  margin-right: 12px;
  opacity: 0.8;
}

.link-wrapper {
  display: block;
}
.require-item,
.require-item:active,
.require-item:focus {
  display: block;
  border-radius: 14px;
  color: #3c4043;
  box-shadow: 0 0 50px -18px rgb(0 34 87 / 10%);
  margin-bottom: 32px;
  position: relative;
  background-color: #fff;
}

.require-item:hover {
  color: #3c4043;
  box-shadow: 0 0 24px -10px rgb(0 34 87 / 20%);
}
.require-item:hover .left_icon,
.require-item:hover .right_icon{
  opacity: 1;
}
.require-item:hover .left_icon::before,
.require-item:hover .left_icon::after,
.require-item:hover .right_icon::before,
.require-item:hover .right_icon::after{
  background: var(--maincolor);
}
.require-item .date {
  padding: 8px 16px 0;
  transition: inherit;
}
.require-item .require-item-body {
  padding: 14px 16px;
}
.require-item .infoItem {
  margin-bottom: 24px;
}

.require-item .infoItem .label {
  font-size: 0.9em;
  line-height: 1.2;
  color: #acacac;
  margin-bottom: 4px;
}
.require-item .infoItem .content {
  line-height: 1.4;
}
.require-item .require-item-body > .infoItem .content {
  height: 45px;
}
.index_print_bg::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url("../img/bg/blueprint.jpg");
  opacity: 0.1;
}

.bg-pattern1::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 70%;
  height: 70%;
  background-position: left;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url("../img/bg/pattern2.svg");
  opacity: 0.5;
}

.bg-pattern2::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 70%;
  height: 70%;
  background-position: left;
  background-size: cover;
  background-repeat: no-repeat;
  background-image: url("../img/bg/pattern1.svg");
  opacity: 0.5;
}

/* $ask */
.side-menu .nav-box {
  padding: 15px 12px;
  margin-bottom: 16px;
  border-radius: 8px;
  background-color: var(--maingrey);
}
.side-menu h5 {
  color: #fff;
}
.ask-history-box .box-header p,
.ask-history-box .box-header a,
.ask-history-box .box-header label{
  color: #fff;
  margin-bottom: 0;
}
.side-menu.accordion .card-header {
  background-color: transparent;
}

.side-menu.accordion .card-header a {
  padding-left: 24px;
}

.side-menu.accordion a.accordion-toggle:hover {
  color: #df4b05;
}

.nav-box ul {
  margin-bottom: 0;
  padding-top: 10px;
}

.nav-box .nav-link {
  color: #fff;
  transition: all 0.1s;
  position: relative;
  margin-bottom: 8px;
  padding: 6px 24px;
  border-radius: 32px;
}
.nav-box .nav-item:last-child .nav-link {
  margin-bottom: 0;
}
.nav-box .nav-link:hover,
.nav-box .nav-link:focus,
.nav-box .nav-link:active {
  background-color: var(--maingrey);
}

.nav-box .nav-link.active {
  color: #fff;
  background-color: #a19f9f;
}

.title-with-mark {
  position: relative;
}

.title-with-mark::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  width: 4px;
  height: 100%;
  background-color: #df4b05;
}

.nav-box p {
  padding: 4px 0;
  margin-bottom: 5px;
  color: #fff;
}

.ask-history-box {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 16px;
  background-color: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 0 50px -10px rgba(0, 0, 0, 0.1);
}
.ask-history-box:hover .box-header{
  background: var(--maincolor) !important;
}

.ask-history-box p,
.ask-history-box h4 {
  line-height: 24px;
  margin-bottom: 0;
  color: #3c4043;
}

.ask-history-box .item-box {
  padding: 8px 12px;
  max-width: 100%;
  min-width: 0;
  line-height: 20px;
  flex-shrink: 0;
}
.ask-history-box .box-body .item-box {
  width: 16.66666666%;
  border-right: 1px solid #e9e9e9;
}
.ask-history-box .box-body .item-box:last-child {
  border-right: 0;
}
.ask-history-box .item-box.max-w {
  max-width: 16.666666%;
}

.statis-history.ask-history-box .item-box.max-w {
  max-width: 15%;
}

.product_follow-wrapper .ask-history-box .item-box.max-w {
  max-width: 25%;
}

.ask-history-box .item-label {
  color: #a0a0a0;
  letter-spacing: 0.4px;
  line-height: 1.2;
  font-weight: 600;
  margin-bottom: 4px;
}

.ask-history-box .item-content {
  font-weight: 500;
  color: #3c4043;
  font-size: 16px;
}

.ask-history-box .item-box .intro {
  font-size: 18px;
  font-weight: 700;
}

.ask-history-box .box-body .left-box {
  width: 60%;
}

.ask-history-box .box-body .right-box {
  width: 40%;
  display: flex;
  justify-content: space-between;
}

.ask-history-box .box-body .right-box .item-box {
  width: 33.33333%;
}

.ask-history-box .box-body .right-box .item-content {
  display: block;
}

.ask-history-box .full-box {
  flex: 1 1 100%;
  display: flex;
  width: 100%;
}

.ask-history-box .box-header {
  background-color: #d2e4f2;
  padding: 10px 16px;
  display: flex;
  transition: 0.2s background-color ease-in-out;
}
.ask-history-box .box-date{
  display: flex;
  width: 100%;
  padding: 6px 10px;
  color: #3b3b3b;
  font-size: 0.9em;
  border-bottom: 1px solid #e9e9e9;
}

.ask-history-box.box-collapse .box-header {
  align-items: center;
  padding: 0;
  padding-left: 16px;
  margin-bottom: 0;
}

.ask-history-box .box-header h4 {
  color: #000;
  letter-spacing: 0.4px;
}

.ask-history-box .box-header .right-box {
  min-width: 12%;
  flex-shrink: 0;
}

.ask-history-box .box-body {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.ask-history-box.box-collapse .collapse-content {
  background-color: #f9f9f9;
  padding: 16px;
}
.ask-history-box.box-collapse .collapse-content .item {
  display: flex;
  background-color: #fff;
  border-bottom: 1px solid #e4ddd4;
}
.ask-history-box.box-collapse .collapse-content .item .label {
  width: 15%;
  font-weight: 600;
  background-color: #faebd7;
  padding: 8px 12px;
}

.ask-history-box.box-collapse .collapse-content .item .content {
  color: #3c4043;
  padding: 8px 12px;
}
.ask-history-box-min-right .ask-history-box .right-box {
  min-width: 8%;
}

.ask-history-box .collapse {
  width: 100%;
}

/* $product */
.thumb-swiper .swiper-slide {
  width: 25%;
  height: 100%;
  opacity: 0.3;
}

.thumb-swiper .swiper-slide-thumb-active {
  opacity: 1;
}

.main-swiper .swiper__inner,
.thumb-swiper .swiper__inner {
  width: 100%;
  padding-top: 100%;
  position: relative;
}

.main-swiper .image,
.thumb-swiper .image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.thumb-swiper.swiper-thumbs {
  padding: 8px 0;
  --swiper-navigation-size: 18px;
}

.thumb-swiper .swiper-button-next {
  right: 2px;
}

.thumb-swiper .swiper-button-prev {
  left: 2px;
}

.thumb-swiper .swiper-slide {
  cursor: pointer;
}

.product-info-wrapper {
  max-width: 100%;
}

.product-info-wrapper .info-box {
  background-color: #fff;
  margin-bottom: 16px;
  border-radius: 8px;
  overflow: hidden;
}

.product-info-wrapper .info-box ul {
  margin-bottom: 0;
}

.product-info-wrapper .product-name {
  margin-bottom: 16px;
  font-size: 1.7em;
}

.product-note {
  color: #004fb5;
  font-size: 16px;
}

.price-item {
  color: #3c4043;
  font-size: 15px;
  line-height: 1;
  display: inline-block;
  vertical-align: text-bottom;
  padding-right: 24px;
}

.price-item.special {
  color: #000000;
}

.price-item.special span {
  font-size: 30px;
  font-weight: bold;
  color: #df4a06;
  font-family: "Century Gothic", sans-serif;
}

.up-bottom-border {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
}

.product-spec-wrapper .spec-item {
  background-color: #edf2fa;
  display: flex;
  align-items: center;
  padding: 8px 16px;
  margin-bottom: 2px;
  border-radius: 8px;
}

.product-spec-wrapper .spec-item .left-box {
  display: flex;
  flex: 2;
}

.product-spec-wrapper .item-cell {
  flex: 1;
}

.product-spec-wrapper .item-cell.checkbox {
  flex: 0.3;
  display: flex;
  align-items: center;
}

.product-spec-wrapper .spec-label {
  font-size: 14px;
  color: #9b9b9b;
  line-height: 14px;
  margin-bottom: 6px;
}

.product-spec-wrapper .spec-content {
  font-size: 17px;
  line-height: 22px;
  color: #484848;
  letter-spacing: 0.6px;
}

.product-spec-wrapper .price .spec-content {
  color: #e67815;
  font-weight: 700;
}

.amount-selector {
  display: flex;
}

.amount-selector button {
  border: 1px solid #edf2fa;
  background-color: rgb(250, 250, 250);
  padding-left: 4px;
  padding-right: 4px;
}
.amount-selector button:hover {
  background-color: #eee;
}
.amount-selector .number {
  border: 0;
  border-top: 1px solid #edf2fa;
  border-bottom: 1px solid #edf2fa;
  background-color: #fff;
  width: 50px;
  padding: 2px 8px;
  outline: 0;
  font-size: 16px;
  -moz-appearance: textfield;
}

.amount-selector .number::-webkit-outer-spin-button,
.amount-selector .number::-webkit-inner-spin-button {
  -webkit-appearance: none;
  -moz-appearance: textfield;
  margin: 0;
}

.amount-selector .number:focus {
  outline: 0;
}

.amount-selector button:focus {
  outline: 0;
}

.spec-note {
  color: #a0a0a0;
  display: block;
  font-size: 0.95em;
}

.spec-note span {
  display: inline-block;
  vertical-align: top;
}
.sidebar {
  border-radius: 8px;
}
.sidebar .company-name {
  font-weight: 900;
  font-size: 20px;
  line-height: 1.4;
  margin-bottom: 10px;
}

.aside-cate-box {
  padding: 6px 10px;
  margin-bottom: 10px;
}

.aside-cate-box .box-header {
  padding: 6px 0;
  border-bottom: 1px dashed #acacac;
}

.mobile-menu-wrapper .aside-cate-box .box-header {
  padding: 10px 16px;
  border-radius: 40px;
  background-color: #e3ecf6;
  width: 30%;
}

.aside-cate-box .box-header h5 {
  margin-bottom: 0;
  color: #004fb5;
  font-size: 17px;
}

.aside-cate-box .box-body {
  padding: 6px 0;
}

.aside-cate-box .box-body p {
  margin-bottom: 0;
  font-size: 15px;
  color: #222;
}

.aside-cate-box .box-body p span {
  display: block;
  font-weight: 700;
}

.aside-cate-box .box-body dl {
  margin-bottom: 6px;
  border-bottom: 1px solid #eee;
  padding-bottom: 6px;
}

.aside-cate-box .box-body dl::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}

.aside-cate-box .box-body dl:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.aside-cate-box .box-body dt {
  font-weight: 500;
  color: #8f8e8e;
  font-size: 15px;
}

.aside-cate-box .box-body dt a {
  color: #757575;
  padding-left: 4px;
  padding-right: 4px;
}

.aside-cate-box .box-body dt a:hover {
  text-decoration: underline;
}

.aside-cate-box .box-body a.active {
  color: #be1e2d;
  font-weight: 600;
  display: block;
}

.aside-cate-box .box-body dd {
  margin-bottom: 0;
  line-height: 20px;
}

.aside-cate-box .box-body dd a {
  font-size: 15.4px;
  color: #222;
  display: block;
  padding: 5px;
  padding-left: 8px;
  line-height: 16px;
}
.aside-cate-box .box-body dd a::before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 8px;
  height: 1px;
  background-color: #000;
  margin-right: 8px;
}
.aside-cate-box .box-body dd a.active::before {
  background-color: #be1e2d;
}
.aside-cate-box .box-body dd a:hover {
  color: #be1e2d;
}
.company-contact {
  background-color: #fff;
  margin-bottom: 32px;
  padding: 14px;
  border-radius: 8px;
}
.bg-white .company-contact {
  background-color: #edf2fa;
}
.company-contact h4 {
  font-size: 17px;
}
.product-wrapper {
  margin-bottom: 40px;
  padding-top: 24px;
  padding-bottom: 42px;
}

.product-wrapper .intro-wrapper .intro-item {
  border-bottom: 1px solid #eee;
  padding: 10px;
  margin-bottom: 8px;
  display: flex;
}

.product-wrapper .intro-wrapper .intro-item:last-child {
  border-bottom: 0;
}

.product-wrapper .intro-wrapper .intro-item .label {
  margin-bottom: 4px;
  color: #be1e2d;
  font-weight: 900;
  font-size: 16.5px;
  width: 12%;
}

.product-wrapper .intro-wrapper .intro-item .content {
  line-height: 20px;
  font-size: 14px;
  margin-bottom: 0;
  width: 80%;
}

.product-wrapper .intro-wrapper .intro-item.sale .content {
  color: #df4a06;
  font-weight: 900;
}

.product-wrapper .tab-content .tab-pane,
.product-wrapper .tab-content .tab-pane p {
  line-height: 1.6;
  color: #3c4043;
}

.product-wrapper .tab-content .tab-pane img {
  max-width: 100%;
  margin-bottom: 8px;
}

.help-bubble-wrapper {
  position: fixed;
  bottom: 0;
  right: 5%;
  width: 360px;
  box-shadow: 0 0 12px -2px rgba(0, 0, 0, 0.3);
  z-index: 90;
}

.help-bubble-wrapper .bubble-header {
  background-color: #0094e6;
  padding: 12px 18px;
  border-top-right-radius: 4px;
  border-top-left-radius: 4px;
  position: relative;
  cursor: pointer;
}

.help-bubble-wrapper .bubble-header p {
  color: #fff;
}

.help-bubble-wrapper p {
  font-size: 15.4px;
  font-weight: 900;
  color: #3c4043;
  line-height: 20px;
  text-align: left;
  margin-bottom: 0;
}

.help-bubble-wrapper .bubble-body {
  background-color: #fff;
  display: none;
}

.help-bubble-wrapper .bubble-body .scroll-box {
  height: 252px;
  padding: 8px 20px;
  overflow-y: auto;
}

.help-bubble-wrapper .msg-item {
  max-width: 100%;
  width: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin: 4px 0;
}

.help-bubble-wrapper .msg-item.msg-sent {
  align-items: flex-end;
}

.help-bubble-wrapper .chat-time {
  font-size: 14px;
  padding: 0 8px;
  display: block;
}

.help-bubble-wrapper .msg-content {
  padding: 10px 10px 10px 12px;
  border-radius: 0 10px 10px 10px;
  background-color: #f6f6f6;
  display: inline-block;
}

.help-bubble-wrapper .msg-sent .msg-content {
  background-color: #327574;
  border-radius: 10px 0 10px 10px;
}

.help-bubble-wrapper .msg-item p {
  font-size: 16px;
  line-height: 20px;
  letter-spacing: 0.4px;
  color: #646464;
  font-weight: 400;
  display: inline-block;
}

.help-bubble-wrapper .msg-sent.msg-item p {
  color: #fff;
}

.help-bubble-wrapper .comment-box {
  padding: 10px 12px;
}

.help-bubble-wrapper .comment-box input.form-control {
  line-height: 28px;
  min-height: 36px;
  border: 1px solid #dee2e6;
  background-color: #f8fafc;
}

.help-bubble-wrapper .comment-box button {
  font-size: 15px;
}

.help-bubble-wrapper .close {
  color: #fff;
  opacity: 0.7;
  position: absolute;
  top: 50%;
  right: 18px;
  transform: translateY(-50%);
  font-size: 16px;
}

/* product list */
.product-list-wrapper {
  margin-bottom: 40px;
}
.product-list-wrapper .sticky-top{
  top: 98px;
  z-index: 1;
}

.product-list-wrapper .product-box {
  margin-bottom: 28px;
}
.product-list-wrapper:not(.product-wrapper) .product-box {
  border-radius: 4px 32px;
}
.product-list-wrapper .product-box .image {
  transition: all 280ms;
}
.product-list-wrapper .product-box:hover .image {
  transform: scale(1.08);
}
.product-box .product-imgbox {
  overflow: hidden;
}
.company-section .product-box .product-imgbox {
  border-radius: 50%;
  overflow: hidden;
}

.select-wrapper {
  border: 1px solid #be1e2d;
  margin-bottom: 24px;
  background-color: #fff;
  border-radius: 4px;
}

.select-wrapper .select-box {
  display: flex;
  position: relative;
}

.select-wrapper .select-box .label {
  margin-bottom: 0;
  width: 15%;
  background-color: #be1e2d;
  padding: 0.383rem 1.033rem;
  flex-shrink: 0;
}

.select-wrapper .select-box .label h5 {
  color: #fff;
  font-weight: 500;
  margin-bottom: 0;
}

.select-wrapper .select-box .content {
  width: 90%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  border-bottom: 1px solid #eee;
  position: relative;
  padding-left: 8px;
}

.select-wrapper .select-box:last-child .content {
  border-bottom: 0;
}

.select-wrapper .select-box .content a,
.select-wrapper .select-box .content button {
  display: inline-block;
  padding: 10px 10px;
  line-height: 100%;
  color: #484848;
}

.select-wrapper .select-box .content a.active,
.select-wrapper .select-box .content a:hover,
.select-wrapper .select-box .content button:hover,
.select-wrapper .select-box .content button:active,
.select-wrapper .select-box .content button:focus {
  color: #007bff;
  text-decoration: underline;
  outline: 0;
}

.select-wrapper .select-box .content button {
  background-color: transparent;
  border: 0;
}

.select-wrapper .select-box .content button.active {
  background-color: #ee6120;
  color: #fff;
}

.select-wrapper .select-box .content button.active:hover {
  background-color: #f38451;
  color: #fff;
}

.select-wrapper .select-box .content label {
  line-height: 28px;
}

.select-wrapper .custom-control-label::before,
.select-wrapper .custom-control-label::after {
  width: 1rem;
  height: 1rem;
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}

.btn-wrapper {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}

.btn-wrapper.manage-wrapper .left-box {
  display: flex;
  align-items: center;
}

.btn-wrapper.manage-wrapper .left-box .filter-box {
  margin-left: 8px;
}

.btn-wrapper.manage-wrapper .right-box {
  flex-shrink: 0;
}

/* checkout */
.order-info-wrapper {
  background-color: #edf2fa;
  padding: 10px;
  border-radius: 4px;
}
.order-info-box {
  /* display: flex; */
  background-color: #fff;
  border-radius: 8px;
  padding: 16px;
  margin-bottom: 6px;
  position: relative;
  overflow: hidden;
}

.order-info-box .left-box .product-imgbox {
  width: 90px;
  height: 90px;
}

.order-info-box .right-box {
  flex: 5;
}

.order-info-box .product-text h5,
.order-info-box .product-text p {
  margin-bottom: 0;
  line-height: 20px;
}

.order-info-box .product-text h5 {
  font-size: 18px;
  margin-bottom: 12px;
  max-width: 90%;
}
.order-info-box .product-text .item {
  display: flex;
  font-size: 15px;
  line-height: 1.4;
  margin-bottom: 2px;
}
.order-info-box .product-text .item .label {
  width: 20%;
  color: #9a9a9a;
}

.order-info-box .close {
  float: none;
  position: absolute;
  top: 0;
  right: 0;
  padding: 14px 14px;
  font-size: 18px;
  background-color: rgb(158 161 179 / 50%);
  text-shadow: none;
  border-bottom-left-radius: 8px;
}

.order-info-box .close:hover {
  background-color: #ef2626;
  color: #fff;
}

.order-info-box .close:focus,
.order-info-box .close:active {
  outline: none;
}

.total-wrapper {
  height: 100%;
  display: flex;
  align-items: flex-end;
  padding-top: 16px;
}

.total-wrapper .total-box {
  border-top: 1px solid #d5e0ef;
  padding: 16px 10px;
  width: 100%;
  text-align: right;
}

.total-wrapper .total-box h5 {
  font-size: 17px;
}

.total-wrapper .total-box h5,
.total-wrapper .total-box h4 {
  margin-bottom: 0;
}

.consumer-infobox h5 span {
  color: #3c4043;
  text-transform: none;
}

.complete-msg {
  min-height: 400px;
  padding: 24px 16px;
  background-color: #f6f6f6;
  border-radius: 8px;
}

.complete-msg .btn-box .nav-item a {
  font-size: 16px;
  /* color: #be1e2d; */
  display: inline-block;
}

.complete-msg .btn-box .nav-item a:hover {
  background-color: #32aaf0;
}

.complete-msg p {
  font-size: 17px;
  color: #3c4043;
}

.complete-msg p strong {
  color: #be1e2d;
}

.input-with-span span {
  display: inline-block;
  vertical-align: middle;
  margin: 0 6px;
}

.ui-block-title p.note b {
  margin-right: 24px;
  color: #32b5b3;
}

.ui-block-title p b:last-child {
  margin-right: 0;
}

.product-info-wrapper.company-info {
  max-width: 100%;
}

.company-info-item {
  display: flex;
  border-bottom: 2px solid #fff;
}
.company-info-item:last-child {
  border-bottom: 0;
}
.company-info-item .label,
.company-info-item .content{
  margin-bottom: 0;
  padding: 8px 12px;
}

.company-info-item .label {
  flex: 1;
  background-color: var(--maingrey);
  color: #fff;
  font-weight: 600;
}

.company-info-item .content {
  flex: 5;
  color: #3c4043;
  background: #f0f0f0;
}
.company-info-item .content a {
  text-decoration: underline;
}
.company-info-item .content a:hover {
  text-decoration: none;
}
.product-info-wrapper.company-info .note {
  font-size: 18px;
}

.group-list-wrapper .ask-history-box .box-body {
  width: 100%;
}

.group-list-wrapper .ask-history-box {
  display: flex;
}

.group-list-wrapper .ask-history-box .ask-imgbox {
  display: block;
}

.group-list-wrapper .ask-history-box .ask-imgbox .imgbox__inner {
  width: 100%;
  padding-top: 100%;
  position: relative;
}

.group-list-wrapper .ask-history-box > .left-box {
  width: 13%;
}

.group-list-wrapper .ask-history-box > .right-box {
  width: 87%;
}

.purchase-my-wrapper.group-list-wrapper .ask-history-box > .left-box {
  width: 18%;
}

.purchase-my-wrapper.group-list-wrapper .ask-history-box > .right-box {
  width: 82%;
}

.rights-striped .custom-tour-item div:first-child {
  background-color: #eee;
}

.visit-box {
  background-color: #f4f4f4;
  padding: 16px 24px;
}

.visit-box h4 {
  font-size: 28px;
  font-weight: 900;
  letter-spacing: 0.2px;
  font-family: Arial, sans-serif;
  color: #30a2a9;
  line-height: 100%;
}

.visit-box p {
  font-size: 15px;
}

.max-w-100 {
  max-width: 100% !important;
}

.status {
  border-radius: 4px;
  font-size: 14px !important;
  line-height: 16px !important;
  font-weight: normal !important;
  display: inline-block;
}

.badge-ing {
  color: #fff !important;
  background-color: #ee6120;
}

.badge-ok {
  color: #fff !important;
  background-color: #538585;
}

.badge-cancel {
  color: #fff !important;
  background-color: #929292;
}

/* follow */
.follow-list-wrapper .product-box {
  border: 1px solid #eee;
  display: flex;
  margin-left: 8px;
  margin-right: 8px;
  margin-bottom: 24px;
  background-color: #f8f8f8;
}

.follow-list-wrapper .product-box .product-imgbox {
  flex-shrink: 0;
  width: 22%;
}

.follow-list-wrapper .product-box .product-infobox {
  flex: 2;
  padding: 0;
  /* margin-left: 24px; */
  width: 78%;
  padding-left: 24px;
}

.follow-list-wrapper .product-infobox {
  height: auto;
}

.follow-list-wrapper .product-infobox p {
  margin-bottom: 4px;
  display: flex;
}

.follow-list-wrapper .product-name {
  margin-top: 4px;
}

.follow-list-wrapper .product-box .label {
  color: #828385;
  font-size: 15px;
  flex-shrink: 0;
}

.follow-list-wrapper .product-box .content {
  font-weight: 900;
  color: #484848;
  font-size: 15.4px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.btn-follow {
  background-color: #ffc24b;
}

.btn-follow:hover,
.btn-follow:active,
.btn-follow:focus {
  background-color: #f7b636;
}

.btn-unfollow {
  background-color: #538585;
  color: #fff;
}

.btn-unfollow:hover,
.btn-unfollow:active,
.btn-unfollow:focus {
  background-color: #749c9c;
  color: #fff;
}

.company-box .btn {
  flex-shrink: 0;
}

/* manage */
.manage-list {
  line-height: 24px;
}

.manage-list .item-name a {
  /* color: #538585; */
  text-decoration: underline;
}

.manage-list .rights-striped {
  border-bottom: 1px solid #eee;
}

.manage-list .rights-striped:last-child {
  /* border-bottom: 1px solid #eee; */
}
.manage-list .item {
  border-right: 1px solid #eee;
  align-content: center;
}
.manage-list .item:last-child {
  border-right: 0;
}
.manage-list .item-1 {
  flex: 0.7;
  width: 4%;
}

.manage-list .item-1-2 {
  flex: 1.5;
  width: 8%;
}

.manage-list .item-2 {
  flex: 2;
  width: 18%;
}

.manage-list .item-3 {
  flex: 3;
  width: 8.85714%;
}

.manage-list .item-full {
  flex: 0 0 100%;
}

.manage-list input[type="number"]::-webkit-inner-spin-button,
.manage-list input[type="number"]::-webkit-outer-spin-button {
  opacity: 1;
}

.manage-list input[type="number"] {
  border: 1px solid #acacac;
  padding-left: 6px;
}

.manage-list input[type="number"]:focus,
.manage-list input[type="number"]:active,
.manage-list input[type="number"]:hover {
  outline: 0;
}

.new-wrapper .spec-box .price-box {
  position: relative;
}

.box-badge {
  margin-top: 16px;
  margin-bottom: 4px;
  background-color: #eaeff3;
  color: #484848;
  display: inline-block;
  padding: 4px 12px;
  border-radius: 6px;
}

.new-wrapper .spec-box .new-price-btn {
  border-radius: 6px;
  line-height: 24px;
}

.new-wrapper .spec-box .new-price-btn:hover,
.new-wrapper .spec-box .new-price-btn:active,
.new-wrapper .spec-box .new-price-btn:focus {
  outline: 0;
  box-shadow: none !important;
}

.spec-sm-item-group {
  display: flex;
  margin-bottom: 4px;
  margin-top: 6px;
}

.spec-sm-item {
  display: inline-block;
  margin-right: 16px;
}

.spec-sm-item .form-control {
  display: inline-block;
  width: auto;
}

.spec-box .label-with-hint {
  position: relative;
}

.spec-box .label-with-hint span {
  position: absolute;
  bottom: 0;
  width: 320px;
}

.spec-box .price-box .long-hint {
  display: none;
  position: absolute;
  top: -10px;
  right: 0;
  width: 320px;
}

.spec-box .price-box:nth-child(1) .long-hint {
  display: block;
}

.del-btn {
  background-color: transparent;
  line-height: 40px;
  border: 0;
}

.del-btn:hover,
.del-btn:active,
.del-btn:focus {
  outline: 0;
}

.spec-add {
  background-color: transparent;
  border: 1px solid #7a7a7a;
  border-radius: 6px !important;
  line-height: 22px;
}

.spec-add:hover,
.spec-add:active,
.spec-add:focus {
  outline: 0;
  border: 1px solid #7a7a7a;
  box-shadow: none !important;
}

a.del-spec {
  color: #acacac;
}

a.del-spec:hover,
a.del-spec:active,
a.del-spec:focus {
  color: #484848;
}

.pp-box .item {
  flex: 1;
}

.pp-box .label {
  font-size: 15px;
  line-height: 18px;
  margin-bottom: 0;
  color: rgb(156, 156, 156);
}

.pp-box .content {
  font-weight: 900;
  color: #32b5b3;
}

.pp-box .left-box {
  width: 50%;
}

.pp-box .right-box {
  width: 50%;
  display: flex;
}

.pp-box .pp-name {
  padding: 8px 12px;
  background-color: #126b6a;
  box-shadow: 0 3px 10px -1px rgba(0, 0, 0, 0.2);
  color: #fff;
  display: inline-block;
  border-radius: 4px;
}

.pp-box .pp-name.orange {
  background-color: #dcb05f;
}

html .big-btn.btn-with-arrow.btn-secondary {
  background-color: #eeab26;
  color: #fff;
  box-shadow: 2px 3px 12px -3px #eeab26;
  padding: 12px 24px;
}

html .big-btn.btn-with-arrow.btn-secondary:hover span,
html .big-btn.btn-with-arrow.btn-secondary span {
  background-color: #fff;
  box-shadow: none;
}

html .big-btn.btn-with-arrow.btn-secondary span i {
  color: #eeab26;
}

html .btn-tertiary-scale-3 {
  background-color: #e14e92 !important;
  color: #fff !important;
}

.company-header {
  background-color: #fff;
  padding: 20px 24px;
  margin-bottom: 32px;
  display: flex;
  border-radius: 8px;
}

.company-header-wrapper .company-imgbox {
  width: 18%;
  flex-shrink: 0;
}
.company-imgbox .imgbox__inner {
  width: 100%;
  border-radius: 50%;
  overflow: hidden;
  box-shadow: 0 0 24px -8px rgb(16 54 150 / 10%);
  /* padding-top: calc(100% * 1 / 4); */
}

.company-header {
  flex-grow: 1;
}

.company-header .pin-event {
  background-color: #fff;
  padding: 6px 12px;
  margin-bottom: 12px;
}

.company-header .pin-event p {
  font-weight: 700;
  font-size: 17px;
}

.company-header .pin-event .date {
  font-size: 16px;
  font-weight: 400;
  margin-left: 6px;
}

.company-header .item,
.company-contact .item {
  margin-bottom: 8px;
  color: #3c4043;
  display: flex;
}
.company-header .item .label {
  color: #b3b3b3;
  width: 10%;
  flex-shrink: 0;
}
.company-contact .item .label {
  color: #b3b3b3;
  /* width: 8%; */
  margin-right: 8px;
  flex-shrink: 0;
}
.company-header .item .content,
.company-contact .item .content {
  flex-grow: 1;
}
.company-header a {
  text-decoration: underline;
}
.company-header .box-body {
  padding-top: 10px;
  padding-left: 24px;
  flex-grow: 1;
}
.product-c-box {
  display: flex;
  align-items: center;
  padding: 8px 10px;
  transition: all 0.3s;
  /* box-shadow: 0 0px 8px -3px rgba(0,0,0,0.2); */
  margin-bottom: 24px;
  background-color: #eef2fa;
  margin-right: 8px;
  border-radius: 100px;
}

.product-c-box:hover {
  box-shadow: 0 0 30px -12px rgba(0, 0, 0, 0.1);
  background-color: #bedfff;
}
.product-c-box h4 {
  font-size: 1.2rem;
  font-weight: 500;
}

.product-c-box .text-box {
  display: flex;
  align-items: center;
  padding-left: 24px;
}

.product-c-box .product-c-imgbox {
  flex: 1;
  border-radius: 50%;
  overflow: hidden;
}

.product-c-box .text-box {
  flex: 2;
}

.product-c-box h1 {
  margin-left: 20px;
  opacity: 0;
  transform: translateX(0);
  transition: all 0.1s ease-in;
}

.qa-card {
  margin-bottom: 24px;
}

.qa-card .card-header {
  background-color: transparent;
  padding: 12px 0;
  padding-left: 18px;
}

.qa-card .card-header button {
  font-size: 18px;
}

.qa-card .card-header:hover {
  background-color: var(--maingreen);
}

.qa-card .card-header:hover button {
  color: #fff;
}

.qa-card .card-body {
  background-color: rgb(248, 248, 248);
  padding: 24px;
}

.q-text-deco {
  font-size: 48px;
  display: inline-block;
  position: absolute;
  top: 6px;
  left: 0;
  opacity: 0.1;
  font-weight: 400;
}

.qa-card .card-header:hover .q-text-deco {
  color: #fff;
}

.qa-anchor {
  position: relative;
  top: -80px;
  visibility: hidden;
  opacity: 0;
  height: 0;
}

.link-feature-box h4,
.link-feature-box h2 {
  transition: all 0.5s;
}

.link-feature-box img {
  max-width: 100%;
  transition: all 0.5s;
}

.link-feature-box:hover img {
  transform: scale(1.08);
}

.link-feature-box:hover h4,
.link-feature-box:hover h2 {
  color: #187978;
  transform: translateX(16px);
}

.mobile-menu-wrapper {
  padding: 12px 8px;
  /* background-color: #f8f8f8; */
}

.mobile-menu-wrapper .aside-cate-box {
  display: flex;
  background-color: #fff;
}

.mobile-menu-wrapper .aside-cate-box dd {
  float: left;
}

.mobile-menu-wrapper .aside-cate-box .box-body dd a {
  border-right: 1px solid #bdbdbd;
  padding: 10px;
  padding-top: 0;
  padding-bottom: 0;
  line-height: 16px;
  margin: 4px 0;
}

.mobile-nav-wrapper {
  position: relative;
}

.mobile-nav-wrapper.grad::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 24px;
  height: calc(100% - 4px);
  background: linear-gradient(to right, rgba(255, 255, 255, 0), #fff);

  pointer-events: none;
}

.mobile-scroll-box {
  width: 100%;
  overflow-x: scroll;
  padding-left: 8px;
}

.mobile-nav {
  width: 880px;
}

.mobile-nav a.nav-link {
  color: #686868;
  font-weight: 700;
  font-size: 17px;
}

.mobile-nav a.nav-link.product {
  background-color: #f8f8f8;
}

.mobile-menu-wrapper .scroll-box {
  width: 100%;
  margin-bottom: 16px;
}

.mobile-menu-wrapper .scroll-box ul {
  margin: 0;
  padding: 0;
  white-space: nowrap;
  overflow-x: auto;
}

.mobile-menu-wrapper .scroll-box li {
  list-style: none;
  display: inline-block;
}

.mobile-menu-wrapper .scroll-box li a {
  font-weight: 600;
  font-size: 17px;
  padding: 15px 16px;
}

.unqualified .only-show {
  position: relative;
}

.unqualified .only-show::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /* border: 1px solid red; */
  background-image: url("../img/home/blr.jpg");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.only-show .hint-btn {
  display: none;
}

.unqualified .hint-btn {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
}

.custom-control.custom-radio.inline .custom-control-label,
.custom-control.custom-checkbox.inline .custom-control-label {
  vertical-align: initial;
  padding-left: 1.7rem;
}

.status-radio.custom-radio
  .custom-control-input:disabled:checked
  ~ .custom-control-label::before {
  background-color: #00b3aa;
  border-color: #00b3aa;
}

.fake-select {
  cursor: pointer;
  padding: 10px 16px;
  line-height: 100%;
  display: flex;
  align-items: center;
}
/* @media (min-width: 1025px) { */
.fake-select:hover {
  background-color: #bedfff;
}
/* } */

.fake-select:hover::before {
  display: block;
}

.fake-select .fake-list {
  position: absolute;
  top: 35px;
  left: 0;
  width: 100%;
  padding: 4px 12px;
  display: block;
  background-color: #fff;
  z-index: 2;
  display: none;
  border: 2px solid #bedfff;
  border-radius: 4px;
}

.fake-select .fake-list.show {
  display: block;
}

.fake-select .fake-item {
  display: inline-block;
}

.order-status-box {
  padding-top: 32px;
}

.ask-history-box .status-box {
  margin-left: 10px;
}

.status-box-wrapper .status-box {
  background-color: #f4f4f4;
  padding: 4px;
}

#visitor {
  width: 100% !important;
  height: auto !important;
}

.catalog-list {
  /* position: absolute;
    top: 0;
    left: 0; */
  position: relative;
  z-index: 11;
  width: 214px;
  height: 424px;
  background: #fff;
  padding: 12px;
  display: block;
}

.catalog-list .title {
  font-weight: 500;
  padding: 10px 16px;
  color: #969696;
  margin-top: 8px;
}

.catalog-list .list-item {
  list-style: none;
  padding: 16px 24px;
  cursor: pointer;
  display: block;
  line-height: 1.4;
  /* background-color: #e9eff9; */
  background-color: rgb(3 91 205 / 4%);
  margin-bottom: 3px;
}

.catalog-list .list-item > a {
  font-weight: 600;
  display: flex;
  width: 100%;
  justify-content: space-between;
  align-items: center;
}

#header
  .header-nav-main
  nav
  > ul
  > li.dropdown
  .dropdown-menu
  li
  .catalog-list
  a.link-item {
  display: inline-block;
  padding: 0 10px;
  padding-left: 0;
}

.catalog-list .list-item:hover {
  background-color: #bedfff;
}

.floating-list {
  position: absolute;
  top: 0;
  left: 200px;
  /* width: 1088px;
    height: 100%; */
  background-color: #fff;
  overflow-y: auto;
  box-shadow: 0 3px 20px -2px rgb(0 0 0 / 20%);
  border: 4px solid #f4f6fa;
  padding-top: 12px;
  display: none;
}

.catalog-list .list-item:hover .floating-list {
  display: block;
}

.floating-list::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, 0.3);
  border-radius: 0;
  border: 2px solid transparent;
}

.floating-list::-webkit-scrollbar:vertical {
  width: 4px;
}

.floating-list .floating-item {
  /* padding: 8px 24px; */
  border-bottom: 1px solid #eee;
}

.floating-list .floating-item::after {
  content: "";
  display: block;
  clear: both;
  visibility: hidden;
  opacity: 0;
  height: 0;
}

.floating-list .floating-item .left-box {
  /* float: left;
    width: 20%; */
}

.floating-list .floating-item .left-box a {
  color: #222;
  line-height: 1.6;
}

.floating-list .floating-item .right-box {
  float: left;
  width: 80%;
}

.floating-list .floating-item .link-item {
  display: inline-block;
  line-height: 1.6;
  color: #777;
  font-size: 15px;
  letter-spacing: 0.4px;
}

.floating-list .floating-item .link-item span {
  display: inline-block;
  border-right: 1px solid #b3b3b3;
  padding: 0 10px;
}

.floating-list .floating-item .link-item span:hover {
  color: #be1e2d;
  text-decoration: underline;
}

.floating-list .floating-item .link-item:last-child {
  border-right: 0;
}

.all-product-tag:hover {
  color: #fff;
  background-color: #be1e2d;
}

/* .all-product-tag .catalog-list {
  top: auto;
  opacity: 0;
  visibility: hidden;
} */
.catalog-list ul {
  margin-left: 0;
}

.catalog-list ul li {
  list-style: none;
}

/* .all-product-tag:hover  .catalog-list {
  opacity: 1;
  visibility: visible;
} */
#header .header-nav.header-nav-links nav > ul li:hover > a.all-product-tag {
  background-color: #df4b05 !important;
  color: #fff !important;
}

.silder_box .imgbox {
  display: block;
}

.silder_box .imgbox__inner {
  width: 100%;
  padding-top: 30%;
  position: relative;
}

.silder_box .image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

.order-detail-item {
  border: 3px solid #f3bf74;
  background-color: #fff;
  margin-bottom: 24px;
  padding: 16px;
  border-radius: 8px;
}

.order-detail-item p {
  line-height: 30px;
  color: #222;
}

.order-detail-item b {
  margin-right: 8px;
}

.mobile-show {
  display: none;
}

/* 20220314 */
.custom-control-label::after {
  /* top: .29rem; */
  top: 50%;
  transform: translateY(-50%);
}

/* 20220318 */
.c-flex {
  flex: 0 0 52%;
}

/* 20220330 */
.product-spec-wrapper .spec-label a {
  font-size: 16px;
}

.price-modal .spec-det {
  margin-bottom: 6px;
}

.price-modal .spec-det .cell {
  display: flex;
  justify-content: space-between;
  font-size: 16px;
}

.c-flex-wrap {
  flex-wrap: wrap;
}

/* 20220412 esme*/
.list-ad-carousel .silder_box .imgbox__inner {
  padding-top: 32%;
}

.select-box .content .input-group input {
  min-height: 40px;
  margin: 3px 0;
  max-width: 250px;
}

.select-box .content input + .input-group-append.search button {
  background-color: #df4b05;
  border-color: #df4b05 #df4b05 #df4b05;
  color: #fff;
  margin: 3px 5px;
  margin-left: 0;
}

.advt-section .advt-carousel .advt-item {
  background-color: #fff;
  display: block;
  padding: 8px;
  border: 1px solid #eee;
  position: relative;
}

.advt-section .advt-item .imgbox__inner {
  position: relative;
  width: 100%;
  padding-top: 48%;
}

.advt-section .advt-carousel .advt-item::after {
  content: "Ad";
  position: absolute;
  left: 0;
  bottom: 0;
  background-color: #aaaaaa;
  color: #fff;
  padding: 3px;
  line-height: 1;
  font-size: 0.75em;
}
.post-meta line {
  stroke: #be1e2d;
}
.post-meta {
  display: inline-block;
  background-color: #cee4f6;
  border-radius: 16px;
  padding: 0 12px;
}
.page-padding {
  padding-left: 1.5rem;
  padding-right: 1.5rem;
}

/* Custom Tour Items Hover Effect */
.custom-tour-wrapper {
  position: relative;
  overflow: hidden;
}

.custom-tour-wrapper .custom-tour-stage {
  transition: ease transform 300ms;
}

.custom-tour-wrapper
  .custom-tour-stage
  > .custom-tour-item
  + .custom-tour-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transform: translate3d(0, 100%, 0);
  background-color: #81a4a0;
}

.custom-tour-wrapper:not(.custom-tour-wrapper-static):hover
  > .custom-tour-stage {
  transform: translate3d(0, -100%, 0);
}

.custom-tour-wrapper
  .custom-tour-stage
  > .custom-tour-item
  + .custom-tour-item
  * {
  color: #fff !important;
}

.custom-border-color-1 .custom-tour-item:hover h5,
.custom-tour-item.bg-light:hover h5 {
  color: var(--maingreen) !important;
}

.custom-tour-item.bg-light:hover {
  background-color: #f0f0f0 !important;
}

.custom-tour-item.bg-light {
  color: #444;
}
.moretext {
  display: none;
}
.expand-button {
  background-color: #f7f7f7;
}
.icon-item i {
  vertical-align: middle;
  margin-right: 14px;
  font-size: 35px;
}
.icon-item .item {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.4;
}
.newsCate a {
  display: inline-block;
  margin-right: 8px;
}
/*
| ----------------------------------------------------
| responsive
| ----------------------------------------------------
*/
@media (min-width: 1500px) {
  .container {
    max-width: 1300px;
  }
}

@media (min-width: 1367px) and (max-width: 1500px) {
  aside .page_subtitle {
    font-size: 1.7rem;
    bottom: auto;
    top: 50px;
  }

  h1.font-weight-extra-bold.text-color-dark {
    font-size: 2rem;
  }

  h1.font-weight-extra-bold.text-color-dark svg {
    width: 50px !important;
  }

  .socile li {
    padding-right: 8px;
    font-size: 0.9rem;
  }

  .text-dark.opacity-7 {
    font-size: 0.9rem;
  }
}

@media (min-width: 769px) and (max-width: 1367px) {
  .company .d-flex {
    flex-wrap: wrap;
  }
}

@media (max-width: 1367px) {
  .vhsign {
    height: auto;
  }
}

@media (max-width: 1441px) {
  .btn-wrapper.manage-wrapper .left-box {
    flex-wrap: wrap;
  }

  .btn-wrapper.manage-wrapper .left-box .filter-box {
    width: 100%;
    margin-left: 0;
    margin-top: 8px;
    display: flex;
  }

  .spec-box .price-box .long-hint {
    width: 280px;
  }
}

@media (max-width: 1025px) {
  html.sticky-header-active #header.header-semi-transparent-light .header-body {
    top: 0 !important;
  }
  .sticky-header-active .search-bar .stickyLogo {
    display: none;
  }
  .over_x {
    overflow-x: scroll;
  }

  .gov_list {
    width: 900px;
  }

  .gov_list.gov_list-big {
    width: 1100px;
  }

  section.custom-timeline .timeline-box .experience-info,
  section.custom-timeline .timeline-box .experience-description {
    padding: 20px;
  }

  #footer h5.opacity-6 {
    margin-right: 20px;
  }

  #footer img {
    z-index: 99;
    position: relative;
    margin-right: 20px;
  }

  .counters strong {
    font-size: 26px;
    line-height: 26px;
  }

  .index_publish:before,
  .index_publish_img:before {
    height: calc(100%);
  }

  .timeline-box table {
    min-width: 1000px;
  }

  .search-bar .input-group {
    width: 310px;
  }

  .search-bar {
    padding-left: 0;
  }

  .catalog-list {
    width: 100%;
    height: 100%;
  }

  .floating-list {
    position: absolute;
    top: 0;
    left: 100%;
    width: 780px;
    height: 100%;
  }

  .product-c-box .text-box h4 {
    font-size: 18px;
  }

  .product-c-box .text-box h1 {
    font-size: 21px;
  }

  .help-bubble-wrapper {
    right: 10%;
  }

  .product-spec-wrapper .item-cell {
    padding-left: 0;
    padding-right: 24px;
    flex: none;
  }

  .product-spec-wrapper .item-cell.checkbox {
    padding-right: 8px;
  }

  .product-spec-wrapper .spec-item {
    flex-direction: column;
    align-items: flex-start;
  }

  .product-spec-wrapper .spec-label {
    display: inline-block;
    padding-right: 6px;
  }

  .product-spec-wrapper .spec-content {
    display: inline-block;
  }

  .product-wrapper .intro-wrapper .intro-item .label {
    width: 20%;
  }

  .tabs .ask-history-box .box-body .right-box {
    width: 100%;
  }

  .side-menu.accordion .card-header a {
    padding: 8px 10px;
  }

  .follow-list-wrapper .product-box {
    flex-direction: column;
  }

  .follow-list-wrapper .product-box .product-infobox {
    padding: 8px;
    margin-left: 0;
    width: 100%;
  }

  .spec-box .price-box .long-hint {
    width: 240px;
    line-height: 19px !important;
    font-size: 14px;
    top: -20px;
    right: -20px;
  }

  .new-wrapper .spec-box .new-price-btn {
    margin-left: auto;
    margin-right: 105px;
    margin-top: 10px;
  }

  .mobile-menu-wrapper .aside-cate-box {
    flex-wrap: wrap;
  }
  .mobile-menu-wrapper .aside-cate-box .box-header {
    width: 100%;
    border-bottom: 0;
  }
  .nav-box .nav-link {
    padding: 6px 14px;
  }
  .side-menu .nav-box {
    font-size: 15px;
  }
}

@media (max-width: 992px) {
  .member_nav {
    padding: 20px 0 20px 100px;
  }

  .accordion.side-menu {
    margin-bottom: 24px;
    padding: 12px;
  }

  .search-bar {
    display: none;
  }

  .search-bar.mobile-active {
    position: absolute;
    top: 88px;
    left: 50%;
    transform: translateX(-50%);
    width: calc(100% + 60px);
    /* padding-top: 10px; */
    padding-top: 0;
    background-color: #fff;
    box-shadow: 0 4px 5px 0px rgba(0, 0, 0, 0.1);
    max-height: 0;
    transition: max-height 0.3s;
    display: block;
    overflow: hidden;
    padding-left: 32px;
    padding-right: 32px;
  }

  .search-bar.mobile-active.show {
    max-height: 100%;
    height: auto;
    /* display: block; */
    transition: max-height 0.3s;
  }

  .search-bar.mobile-active .item {
    width: 100%;
  }

  .search-bar {
    flex-direction: column;
    align-items: flex-start;
    /* margin-top: 12px; */
    padding-right: 11px;
    padding-bottom: 0;
  }
  .search-bar .input-group {
    margin-bottom: 12px;
    margin-top: 5px;
  }

  .search-bar .link-box {
    margin-left: 0;
  }

  .search-bar .input-group {
    width: 100%;
  }

  .mobile-header-row-wrapper {
    display: flex;
    flex-direction: column;
  }

  .box-body .right-box .item-box {
    text-align: left !important;
  }

  .ask-history-box .box-body .right-box {
    width: 100%;
  }

  .ask-history-box .full-box {
    flex-basis: 0;
    flex-wrap: wrap;
  }

  .ask-history-box .box-body .left-box {
    width: 100%;
  }

  .group-list-wrapper .ask-history-box > .left-box {
    width: 30%;
  }

  .group-list-wrapper .ask-history-box > .right-box {
    width: 70%;
  }

  .ask-history-box .item-box.max-w {
    max-width: 50%;
    width: 50%;
  }

  .spec-box .price-box .long-hint {
    width: 460px;
    top: 0px;
    right: auto;
    left: 48px;
  }

  .new-wrapper .spec-box .new-price-btn {
    margin-right: 16px;
  }

  .new-wrapper .spec-box .delete-add {
    position: absolute;
    top: 0;
    right: 24px;
  }

  .spec-box .price-box {
    padding-top: 32px;
  }

  .spec-box .price-box:nth-child(1) {
    padding-top: 10px;
  }

  .pp-box .left-box {
    width: 100%;
  }
  .category-box {
    width: 23%;
  }
  .company-header {
    flex-wrap: wrap;
  }
  .company-header-wrapper .company-imgbox {
    margin-bottom: 12px;
  }
  .company-header .box-body {
    padding-left: 0;
  }
  .company-header .item .label {
    width: 100%;
  }
  .company-header .item,
  .company-contact .item {
    flex-wrap: wrap;
    margin-bottom: 24px;
  }
  .nav-box ul {
    display: none;
  }
  .m-side-menu {
    margin-bottom: 40px;
  }
}

@media (max-width: 769px) {
  .index_publish {
    padding: 40px 50px 50px;
  }

  .index_publish_img:before {
    height: calc(54vw + 20px);
    left: -80px;
  }

  #header .border-top-light {
    border: 0 !important;
  }

  .company_cat_box h3 {
    background-color: #e4f2f1 !important;
    color: #212529 !important;
  }

  .company_cat_box:nth-child(2n) h3 {
    background-color: var(--maingreen) !important;
    color: #fff !important;
  }

  ul > li.dropdown:hover > .dropdown-menu {
    right: 0;
    left: auto;
  }

  section.custom-timeline .timeline-box .experience-info p {
    font-size: 0.85rem !important;
  }

  section.custom-timeline
    .timeline-box
    .experience-description
    .font-weight-extra-bold {
    font-size: 1.1rem !important;
  }

  .index .vertical {
    writing-mode: unset;
    padding-left: 30px;
  }

  .index .vertical p {
    margin-bottom: 5px;
  }

  .index .vertical h2 .visible-xs {
    display: inline-block !important;
  }

  .step_box {
    display: inline-block;
    width: 30%;
    height: auto;
    margin-left: 15px;
    text-align: center;
  }

  .step_box h4 {
    font-size: 16px;
  }

  .step_box img {
    margin-bottom: 10px !important;
  }

  .step_box + .clearfix {
    display: inline-block;
  }

  .author {
    bottom: 50px;
  }

  .timeline-box .like.btn-primary {
    width: 35px;
    height: 35px;
    text-align: center;
    line-height: 28px;
    position: absolute;
    bottom: 43%;
    right: 10px;
    background-color: #fff;
  }

  .timeline-box .like.add {
    background-color: var(--maincolor);
  }

  .badge.bg-green + .inline {
    overflow: hidden;
    text-overflow: ellipsis;
    width: 300px;
    white-space: nowrap;
  }

  form .item {
    margin-bottom: 10px;
  }

  /* #cate_show{left: -33vw;} */
  form .item.search {
    max-width: 100%;
  }

  svg ~ span.pl-2 {
    font-size: 24px;
    display: block;
    padding-left: 0 !important;
  }

  .index_publish:before,
  .index_publish_img:before {
    height: calc(100% + 20px);
  }

  .company_cat_box img.img-fluid {
    max-width: 40px;
    margin-bottom: 5px;
  }

  .pricing-table.pricing-table-no-gap.offset-lg-1 {
    margin-left: 10px;
  }

  /* ------------ */
  .purchase-form .item {
    width: 100%;
  }

  .purchase-form .item.apply_button {
    width: 22%;
  }

  .purchase-form .item.search {
    width: 100% !important;
  }

  .product-c-box .text-box h1 {
    display: none;
  }

  .product-c-box .text-box {
    padding-left: 12px;
  }

  .mobile-show {
    display: block;
  }

  .select-wrapper .select-box .label {
    width: 18%;
    padding: 0.383rem 0.633rem;
  }

  .select-wrapper .select-box .content {
    width: 82%;
  }
  .fake-select {
    padding: 8px;
  }
}

/*iphone plus*/
@media (max-width: 415px) {
  .index #header {
    top: 0;
  }

  .index_publish_img {
    padding-bottom: 70%;
  }

  .index .forcefullwidth_wrapper_tp_banner {
    margin-top: 115px !important;
  }

  .slider-container {
    margin-top: 80px;
  }

  .index_publish {
    padding: 30px 15px;
  }

  .index_publish_img {
    padding: 50px 15px;
  }

  .index_publish:before {
    height: calc(80vw);
    -webkit-transform: skewX(0deg);
    transform: skewX(0deg);
  }

  .index_publish_img:before {
    height: 100%;
    left: -100px;
    top: 0;
  }

  .index_company {
    min-height: 100px;
  }

  .counters label {
    font-size: 16px;
  }

  .counters strong,
  .counters [class*="fa-"],
  .counters .icons {
    font-size: 22px;
    line-height: 1;
  }

  .index .vertical {
    padding-left: 0px;
  }
  .post-item {
    flex-wrap: wrap;
  }
  .post-item .post-content {
    padding-left: 0;
  }
  .post-item .post-image {
    width: 100%;
  }
  .post-image .img-fluid {
    max-height: 350px;
  }

  #header .header-logo img {
    width: 250px;
    height: 90px;
  }

  .section-tertiary .page_subtitle {
    display: none;
  }

  section.custom-timeline .timeline-box .experience-info {
    padding: 15px;
  }

  section.custom-timeline .timeline-box .experience-description {
    padding: 25px;
  }

  section.custom-timeline .timeline-box .experience-info p {
    width: 49%;
    display: inline-block;
    font-size: 0.85rem !important;
    margin-bottom: 10px;
  }

  section.custom-timeline .timeline-box .experience-description .col-md-9 {
    padding: 10px 0;
    margin-bottom: 10px;
  }

  .custom-text-color-2.table td {
    display: table-cell;
    padding: 5px;
  }

  .custom-text-color-2.table td .font-weight-bold {
    color: #444;
  }

  table.partner td:nth-child(2) {
    width: 45% !important;
  }

  .form-control:not(.form-control-sm):not(.form-control-lg) {
    font-size: 1rem;
  }

  .author {
    bottom: 75px;
    left: 10px;
  }

  .author .cover {
    width: 90px;
    height: 90px;
    margin-top: 1rem;
  }

  .page-header.page-header-modern.page-header-background.page-header-background-md {
    padding: 70px 0;
  }

  .author + .col-lg-10 {
    overflow-x: scroll;
  }

  .author + .col-lg-10::-webkit-scrollbar:vertical {
    width: 4px;
  }

  .author + .col-lg-10::-webkit-scrollbar:horizontal {
    height: 4px;
  }

  .author + .col-lg-10::-webkit-scrollbar-thumb {
    background-color: #fff;
  }

  .author + .col-lg-10::-webkit-scrollbar-track {
    background-color: #fff;
  }

  .author + .col-lg-10:hover::-webkit-scrollbar:vertical {
    width: 4px;
  }

  .author + .col-lg-10:hover::-webkit-scrollbar:horizontal {
    height: 4px;
  }

  .author + .col-lg-10:hover::-webkit-scrollbar-thumb {
    background-color: var(--maincolor);
  }

  .btn.header-btn-collapse-nav {
    font-size: 20px;
  }

  .member_nav {
    padding: 20px 0;
    width: 700px;
  }

  .box_link a {
    padding: 25px 10px;
  }

  .index .content-grid .bg_round:after {
    width: 80px;
    height: 80px;
    top: 11%;
    left: calc((100% - 80px) / 2);
  }

  .tabs-simple img {
    margin: 10px auto;
  }

  #footer h5.opacity-6,
  #footer img {
    margin-right: 0px;
  }

  .vhsign,
  .section.vh80 {
    height: auto;
    min-height: 100vh;
  }

  .company_cat_box img.img-fluid {
    max-width: 50px;
  }

  .timeline-box .like.btn-primary {
    bottom: 45%;
  }

  html .btn-outline.btn-primary:hover,
  html .btn-outline.btn-primary.hover {
    color: #df4b05;
    background-color: #fff;
    border-color: #df4b05;
  }

  html .like:hover i,
  html .btn-primary.like:hover i,
  html .add.btn-primary.like i {
    color: #df4b05;
  }

  .timeline-box .like.add {
    background-color: var(--maincolor);
  }

  .custom-box-details .col-md-6 {
    border-right: none !important;
    border-bottom: 1px solid #dadada;
  }

  .incoming_msg_img {
    width: 10%;
  }

  .received_withd_msg,
  .received_msg {
    width: 85%;
  }

  .custom-tour-wrapper
    .custom-tour-stage
    > .custom-tour-item
    + .custom-tour-item
    span,
  .custom-tour-stage .custom-tour-item.bg-light span {
    font-size: 14px;
  }

  .badge.bg-green + .inline {
    width: 230px;
  }

  form .item {
    width: 100%;
  }

  #cate_show {
    left: 0vw;
    width: 90vw;
  }

  .p25 {
    padding: 15px !important;
  }

  .side_title.large:before {
    right: 40px;
  }

  .side_title.large h4 {
    width: 85%;
  }

  .company_cat_box:nth-child(2n) {
    border-left: 2px solid #c2d6d4;
  }

  svg ~ span {
    font-size: 22px;
  }

  #tabs4 table {
    min-width: 500px;
  }

  .owl-carousel.nav-style-2 .owl-nav .owl-prev {
    left: 0;
  }

  .owl-carousel.nav-style-2 .owl-nav .owl-next {
    right: -20px;
  }

  .pricing-table.pricing-table-no-gap.offset-lg-1 {
    margin-left: 0;
  }

  .pricing-table.pricing-table-no-gap.offset-lg-1 .plan-featured {
    margin-bottom: 20px;
  }

  .toggle-content .d-flex {
    flex-wrap: wrap;
  }

  .toggle-content .d-flex img + div {
    width: 100%;
  }

  .btn-addblog {
    width: 100%;
    display: block;
  }

  #header.header-narrow .header-logo a .logo-small {
    width: 180px !important;
  }

  .mobile-no-p {
    padding: 0 !important;
  }

  .tab-content.mobile-no-p {
    margin-left: -15px;
    margin-right: -15px;
  }

  .ask-history-wrapper {
    padding: 16px !important;
  }

  .ask-history-box {
    margin-left: 2px;
    margin-right: 2px;
    margin-bottom: 32px;
  }

  .ask-history-box:hover {
    box-shadow: none;
  }

  .ask-history-box .box-header {
    flex-direction: column;
  }

  .ask-history-box .box-body {
    flex-wrap: wrap;
    flex-direction: column;
  }

  .ask-history-box .box-body .left-box {
    width: 100%;
  }

  .group-list-wrapper .ask-history-box > .left-box {
    width: 100%;
  }

  .group-list-wrapper .ask-history-box > .right-box {
    width: 100%;
  }

  .ask-history-box .item-content {
    font-size: 16px;
  }

  .ask-history-box .item-box {
    padding: 6px;
    width: 100% !important;
    border-bottom: 1px solid #e9e9e9;
    border-right: 0 !important;
  }

  .ask-history-box .item-box:last-child{
    border-bottom:0;
  }

  .box-header.item-box {
    padding: 10px;
  }

  .box-header.item-box .right-box {
    margin-top: 4px;
  }

  .ask-history-box .box-body {
    padding: 6px;
  }

  .ask-history-box .box-body .right-box {
    width: 100%;
    flex-wrap: wrap;
    flex-direction: column;
  }

  .ask-history-box .box-body .right-box .item-box {
    width: 100%;
    text-align: left !important;
    line-height: 18px;
  }

  .ask-history-box .box-cell .item-label {
    display: block;
  }

  .ask-history-box .full-box {
    flex: none;
    width: 100%;
    flex-wrap: wrap;
  }

  .ask-history-box .item-label {
    display: inline-block;
    vertical-align: top;
    font-size: 16px;
    line-height: 22px;
  }

  .ask-history-box .box-body .right-box .item-content {
    display: inline-block;
    vertical-align: top;
    line-height: 22px;
  }

  .purchase-my-wrapper.group-list-wrapper .ask-history-box > .right-box {
    width: 100%;
  }

  .purchase-my-wrapper.group-list-wrapper .ask-history-box > .left-box {
    width: 100%;
  }

  .ask-history-box.box-collapse .box-header {
    align-items: initial;
    padding: 6px 16px;
  }

  .ask-history-box .item-box.max-w {
    max-width: 100%;
  }

  .statis-history.ask-history-box .item-box.max-w {
    max-width: 100%;
  }

  .product_follow-wrapper .ask-history-box .item-box.max-w {
    max-width: 50%;
  }

  .ask-history-box .box-header .box {
    flex-direction: column;
    align-items: flex-start !important;
  }

  .container.container-no-p {
    max-width: 100%;
    width: 100%;
    padding: 0;
    margin: 0;
  }

  .category-box {
    width: 25%;
    min-width: 0;
    flex-direction: column;
    border-radius: 10px;
    margin-right: 0;
    border: 2px solid #fff;
  }
  .category-box p {
    padding-left: 0;
    padding-top: 6px;
    font-size: 0.95em;
  }
  .category-box .product-imgbox {
    width: 80%;
  }

  .category-name {
    margin-left: 16px;
  }

  .d-sm-block {
    display: block !important;
  }

  .product-c-box {
    margin-bottom: 10px;
  }

  .select-wrapper.mobile-show .select-box {
    flex-direction: column;
  }

  .select-wrapper.mobile-show .select-box .label {
    width: 100%;
  }

  .select-wrapper.mobile-show .select-box .content {
    width: 100%;
    margin-left: 0;
  }

  .fake-select .fake-list {
    top: 100%;
  }

  .company-header {
    padding: 12px;
    justify-content: center;
  }

  .company-box {
    flex-wrap: wrap;
  }

  .company-box .company-name {
    width: 100%;
    margin-bottom: 8px;
  }

  .help-bubble-wrapper {
    right: auto;
    width: 80%;
  }

  .product-info-wrapper {
    max-width: 100%;
  }

  .product-wrapper .intro-wrapper .intro-item .label {
    width: 30%;
    font-size: 16px;
  }

  html body .tabs.white-tab .nav-tabs li.active .nav-link,
  html body .tabs.white-tab .nav-tabs .nav-link:hover,
  html body .tabs.white-tab .nav-tabs .nav-link:focus,
  html body .tabs.white-tab .nav-tabs.nav-tabs-justified li.active .nav-link,
  html body .tabs.white-tab .nav-tabs.nav-tabs-justified .nav-link:hover,
  html body .tabs.white-tab .nav-tabs.nav-tabs-justified .nav-link:focus {
    padding: 12px 16px;
  }

  .tabs .nav.nav-tabs.nav-justified li .nav-link {
    padding: 12px 16px;
  }

  .search-bar.mobile-active {
    width: calc(100% + 10px);
    padding-left: 18px;
    padding-right: 18px;
    top: 86px;
  }

  .order-info-box .product-text {
    padding: 6px 16px;
  }

  .order-info-box .product-text h5 {
    font-size: 17px;
  }

  .order-info-box .left-box .product-imgbox {
    width: 110px;
  }

  .owl-carousel.stage-margin .owl-stage-outer {
    margin: 0 !important;
  }

  .product-list-wrapper .product-box {
    margin-bottom: 20px;
    margin-left: 4px;
    margin-right: 4px;
  }

  .spec-note {
    letter-spacing: 0.2px;
  }

  .company-info-item .content {
    flex: 3;
  }

  .company-info-item p {
    padding: 6px 8px;
  }

  .accordion.side-menu {
    /* display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    align-items: flex-start; */
  }

  .accordion.side-menu .card {
    margin-top: 0;
    /* min-width: 280px; */
  }

  .accordion .card:first-of-type,
  .accordion .card:not(:first-of-type):not(:last-of-type),
  .accordion .card:last-of-type {
    border: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
  }

  .purchase-form .item.apply_button {
    width: 100%;
  }

  .pp-box .left-box {
    width: 100%;
  }

  .pp-box .right-box {
    width: 100%;
  }

  .table-scroll-box {
    width: 100%;
    overflow-x: auto;
  }

  .table-scroll-box-sm .table {
    width: 500px;
  }

  .ui-block-title p.note b {
    margin-right: 0;
    color: #32b5b3;
    display: block;
  }

  .ui-block-title .float-right.date-note {
    float: left !important;
    width: 100%;
    padding-top: 8px;
  }

  .btn-wrapper.manage-wrapper {
    flex-wrap: wrap;
    flex-direction: column;
    margin-top: 25px;
  }

  .manage-wrapper .filter-box .d-inline-block {
    width: 100%;
    margin-bottom: 4px;
  }

  .new-cate-box .d-inline-block {
    width: 100%;
    margin-bottom: 4px;
    margin-left: 0 !important;
  }

  .new-cate-box .del-cate-btn {
    position: absolute;
    top: 0;
    right: 16px;
  }

  .spec-sm-item-group {
    flex-wrap: wrap;
  }

  .spec-sm-item-group .spec-sm-item label {
    display: block;
  }

  .spec-box .price-box .long-hint {
    width: 70%;
    top: 4px;
    left: 40px;
    line-height: 17px !important;
  }

  .new-wrapper .spec-box .delete-add {
    top: 24px;
  }

  .spec-box .price-box:nth-child(1) {
    padding-top: 24px;
  }

  .visitor-scroll-box {
    width: 100%;
    overflow-x: auto;
  }

  #visitor {
    width: 700px !important;
    height: auto !important;
  }

  .filter-box select {
    width: calc(100vw / 4);
    margin-bottom: 5px;
  }

  .manage-wrapper .left-box {
    margin-bottom: 5px;
  }
  .shop-box {
    padding: 14px 16px;
    flex-wrap: wrap;
  }
  .shop-box .shop-imgbox {
    width: 32%;
  }
  #header.header-narrow .header-logo a {
    width: auto !important;
  }
  .shop-box .product-infobox {
    padding-left: 0;
  }
  .select-wrapper .select-box {
    flex-wrap: wrap;
  }
  .select-wrapper .select-box .label {
    width: 100%;
  }
  .select-wrapper .select-box .content {
    width: 100%;
  }
  .select-wrapper .select-box .content a,
  .select-wrapper .select-box .content button {
    padding: 8px;
  }

  .company-header-wrapper .company-imgbox {
    width: 50%;
    flex-shrink: 0;
  }
  .company-header-wrapper .company-name {
    text-align: center;
  }
}

/*iphone: 7px*/
@media (max-width: 376px) {
  #header .header-logo img {
    width: 230px;
    height: 84px;
  }

  .index .forcefullwidth_wrapper_tp_banner {
    margin-top: 115px !important;
  }

  .forcefullwidth_wrapper_tp_banner {
    margin-top: 0 !important;
  }

  #header .header-nav-top .nav > li > a,
  #header .header-nav-top .nav > li > span {
    padding: 6px 0px;
  }

  /* .index_publish:before{height: calc(100vw + 78px)} */
  .index_publish_img:before {
    height: 100%;
  }

  .index_publish:before {
    height: calc(80vw);
  }

  .product-wrapper .intro-wrapper .intro-item {
    padding: 0;
  }

  .product-wrapper .intro-wrapper .intro-item .label {
    font-size: 15px;
  }

  .order-info-box .left-box .product-imgbox {
    width: 100px;
  }
}

/*iphone 5*/
@media (max-width: 321px) {
  .author {
    bottom: 80px;
  }

  .author .cover {
    width: 60px;
    height: 60px;
  }

  .author_content {
    margin-top: 0;
  }

  .badge.bg-green + .inline {
    width: 190px;
  }

  #header .header-logo img {
    width: 200px;
    height: 74px;
  }

  .side_title.large:before {
    right: 31px;
    width: 44px;
    transform: skewX(30deg);
  }

  .logined .product-infobox {
    padding: 0px;
    padding-top: 10px;
    /* height: 195px; */
  }

  .product-infobox .product-name {
    font-size: 16px;
  }

  .product-infobox .price {
    font-size: 16px;
    line-height: 18px;
  }

  #header.header-narrow .header-logo a .logo-small {
    width: 170px !important;
  }
}

/*iPhone XR*/
@media only screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2) {
}

/*iPhone XS*/
@media only screen and (device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3) {
}

/*iPhone XS Max*/
@media only screen and (device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3) {
}

/*縱拿*/
@media screen and (orientation: portrait) {
}

/*設備寬高比*/
@media screen and (device-aspect-ratio: 16/9) {
}

@media (max-width: 991px) {
  .about .pic{
    height: 250px !important;
  }
  .b-search-box{
    position: relative;
    z-index: 1;
  }
  .b-search-box .border-left {
    border: 0 !important;
  }
  .header-body{
    position: fixed;
  }
  .pageHeader {
    padding: 120px 0 50px;
  }
}
@media (max-width: 767px) {
  #header{
    position: relative;
  }
  .process .box::before{
    left: -4%;
  }
  .pageHeader{
    padding: 50px 0;
  }
  .bg-title{
    width: 50vw;
    top: 20%;
  }
  .ask-history-box .full-box{
    flex-direction: column;
  }
  .ask-history-box .box-header p.pr-sm-0{
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 575px) {
  .case .container > .row::before{
    transform: translate(6%, 20px);
    width: 88%;
    height: calc(100% - 5rem - 20px);
    border-radius: 1rem;
  }
  .process .box-out > div:not(:last-child)::before{
    left: 7%;
  }
  .process .box-out > div:not(:last-child):after{
    top: auto;
    bottom: -20px;
    right: 0;
    left: 50%;
    height: 20px;
    transform: translate(-50%, 0%);
    clip-path: polygon(100% 0, 0 0, 50% 100%);
  }
  #footer img{
    width: 120px;
  }
}
@media (min-width: 1450px){
  #header .header-nav.header-nav-links nav > ul > li > a, #header .header-nav.header-nav-links nav > ul > li:hover > a, #header .header-nav.header-nav-line nav > ul > li > a, #header .header-nav.header-nav-line nav > ul > li:hover > a{
    padding: 0 1.3rem;
  }
}
@media (min-width: 1200px) and (max-width: 1449px){
  #header.header-narrow .header-logo a .logo-small{
    width: 190px;
  }
}
@media (max-width: 1199px){
  .silder_box .imgbox__inner{
    padding-top: 40%;
  }
}
@keyframes readMore {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}

@-webkit-keyframes toggle {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes toggle {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.progress-ring {
  position: relative;
  top: 0;
  left: 0;
  height: 200px;
  width: 200px;
}
.progress-ring div {
  position: absolute;
  top: 0;
  left: 0;
  height: 200px;
  width: 200px;
  /* 圆环宽高，可自定义 */
  border: 20px solid transparent;
  border-radius: 50%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.progress-ring .progress-left,
.progress-ring .progress-right,
.progress-ring .progress-cover {
  clip: rect(0 100px 200px 0);
  /* [0 | <width/2> | <width> | 0] */
}
.progress-ring .progress-right {
  opacity: 0;
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
.progress-ring .progress-text {
  border: none;
  font-weight: 600;
  text-align: center;
  font-size: 50px;
  color: var(--maincolor);
  /* 进度文字颜色 */
  line-height: 200px;
}
.progress-ring .progress-percent {
  font-size: 16px;
}
.progress_line{
  background: #ddd;
  width: 100%;
  height: 20px;
  position: relative;
}
.progress_page .progress_line span{
  position: absolute;
  left: 0;
  top:0;
  width: 0;
  height: 100%;
  background: var(--maincolor);
}
.progress_page.show .progress_line span{
  width: calc((var(--progress_num_) / var(--progress_total_)) * 100%);
  transition: all 1s linear;
}