@font-face {
  font-family: 'DIN-Medium';
  src: url('../fonts/DIN-Medium.otf');
}
@font-face {
  font-family: 'Montserrat-SemiBold';
  src: url('../fonts/Montserrat-SemiBold.otf');
}
:root {
  --Noto-Sans-SC: 'Noto Sans SC', sans-serif;
  --Noto-Serif-SC: 'Noto Serif SC', sans-serif;
  --Song-Myung: 'Song Myung', sans-serif;
  --Roboto-Condensed: 'Roboto Condensed', sans-serif;
  --Abel: 'Abel', sans-serif;
  --Barlow-Condensed: 'Barlow Condensed', sans-serif;
  --Din: 'DIN-Medium', sans-serif;
  --Montserrat-SemiBold: 'Montserrat-SemiBold', 'sans-serif';
  --Montserrat: 'Montserrat', 'sans-serif';
  --Poppins: 'Poppins', 'sans-serif';
  --Lato: 'Lato', 'sans-serif';
  --exCondensed: 'Fira Sans Extra Condensed', 'sans-serif';
}
h1,
h2,
h3,
h4,
h5,
p {
  transition: all 0.5s;
}
body {
  overflow: visible;
}
body::-webkit-scrollbar-track {
  -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
  border-radius: 2px;
  background-color: #fff;
}
body::-webkit-scrollbar {
  width: 5px;
  background-color: #fff;
}
body::-webkit-scrollbar-thumb {
  border-radius: 2px;
  -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.1);
  background-color: #666;
}
body:hover::-webkit-scrollbar-thumb {
  background-color: #ccc;
}
.out-header {
  height: 157px;
  width: 100%;
}
.mycontainer {
  max-width: 1200px;
  width: 85%;
  margin: 0 auto;
}
.blank {
  margin: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  min-height: 0 !important;
  border: 0 !important;
}
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  box-shadow: 0 1px 4px rgba(0, 6, 26, 0.19);
  z-index: 99;
  transition: all 0.5s;
  background-color: #fff;
}
header .header-top {
  background-color: #009a44;
}
header .header-top .mycontainer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 42px;
  font-size: 13px;
  color: #fff;
}
header .header-top .mycontainer a {
  color: inherit;
}
header .header-top .mycontainer a:hover {
  text-decoration: underline !important;
}
header .header-mid .mycontainer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 136px;
}
header .header-mid .logo {
  width: 38.3333333%;
}
header .header-mid .logo img {
  transition: all 0.5s;
}
header .header-mid .search {
  width: 34.1666667%;
}
header .header-mid .search form {
  position: relative;
  display: flex;
}
header .header-mid .search form input {
  display: block;
  flex: 1;
  height: 2.4em;
  border-radius: 1em 0 0 1em;
  outline: none;
  font-size: clamp(13px, 1vw, 15px);
  color: #333;
  font-weight: 300;
  background-color: #fafafa;
  border: 1px solid #d2d2d2;
  padding: 0 1em;
  transition: all 0.5s;
}
header .header-mid .search form input::placeholder {
  color: #5f5f5f;
  transition: all 0.5s;
}
header .header-mid .search form button {
  font-size: clamp(14px, 1.1vw, 18px);
  color: #fff;
  background-color: #0068b7;
  padding: 0 0.625em;
  outline: none;
  border: 0;
  cursor: pointer;
  transition: all 0.5s;
}
header .header-mid .info {
  display: flex;
  align-items: center;
  font-size: clamp(12px, 1.2vw, 20px);
  color: #000;
  line-height: 1.2;
  margin-left: 1%;
}
header .header-mid .info img {
  margin-right: 14px;
}
header .header-mid .info h5 {
  display: inline-block;
}
header .header-mid .info h4 {
  display: inline-block;
  color: #2e1163;
  font-size: 1.35em;
  font-weight: 700;
}
header nav {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #fff;
  border-top: 2px solid #c9c9c9;
}
header .lv1 {
  flex: 1;
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  font-size: clamp(16px, 1.2vw, 20px);
  margin-bottom: 0;
}
header .lv1 > li {
  position: relative;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 1;
}
header .lv1 > li a {
  display: block;
  color: #000;
  transition: all 0.5s;
  text-transform: uppercase;
  line-height: 65px;
  text-align: center;
}
header .lv1 > li::before {
  position: absolute;
  display: block;
  content: "";
  width: 1px;
  height: 1em;
  background-color: #000;
  right: 0;
  top: 50%;
  transform: translate(0, -50%);
}
header .lv1 > li:last-child::before {
  display: none;
}
header .lv1 > li:hover > a {
  color: #2e1163;
}
header .lv1 > li:hover .lv2 {
  opacity: 1;
  transform: translate(-50%, 0);
  visibility: visible;
}
header .lv1 .lang {
  color: #fff;
  margin-right: 5%;
}
header .lv1 .lang img {
  margin-right: 9px;
}
header .lv1 .lang a {
  padding: 0;
  background-color: transparent !important;
}
header .lv1 .lang a:hover {
  text-decoration: underline !important;
}
header .lv1 .lang .on {
  color: #fff;
  font-weight: 700;
}
header .lv1 > .active a {
  color: #2e1163 !important;
}
header .lv2 {
  position: absolute;
  left: 50%;
  top: 100%;
  transform: translate(-50%, 50%);
  transition: all 0.5s;
  background-color: rgba(0, 0, 0, 0.5);
  padding: 10px;
  visibility: hidden;
  opacity: 0;
}
header .lv2 > li {
  position: relative;
  white-space: nowrap;
  text-align: center;
  padding: 2px 15px;
  min-width: 130px;
}
header .lv2 > li a {
  font-size: 16px;
  color: #fff;
}
header .lv2 > li:hover .lv3 {
  opacity: 1;
  visibility: visible;
  transform: translate(0, 0);
}
header .lv3 {
  position: absolute;
  top: 0%;
  left: 100%;
  transform: translate(50%, 0);
  transition: all 0.5s;
  background-color: rgba(0, 0, 0, 0.88);
  padding: 0 0 10px;
  visibility: hidden;
  opacity: 0;
}
.box {
  width: 100%;
  text-align: center;
  margin: 3.4868421% 0 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.pagination {
  display: flex !important;
  text-align: center;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 2%;
}
.pagination a {
  display: block;
  font-size: 14px;
  padding: 0 13px;
  line-height: 32px;
  background-color: #fff;
  margin: 5px;
  color: #1f61be;
  transition: all 0.5s;
  font-family: var(--Din);
  border-radius: 4px;
}
.pagination span {
  display: block;
  font-size: 14px;
  padding: 0 13px;
  line-height: 32px;
  background-color: #1f61be;
  margin: 5px;
  color: #fff;
  transition: all 0.5s;
  font-family: var(--Din);
  border-radius: 4px;
}
.pagination a:hover {
  color: #fff;
  background-color: #1f61be;
  border-color: transparent;
}
.box .total {
  color: #666;
  margin: 5px 7px;
  font-size: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}
.box .go-link {
  margin: 5px 19px;
  font-size: 16px;
  color: #666;
}
.box .go-link form {
  display: flex;
  align-items: center;
}
.box .go-link a {
  line-height: 1;
  display: inherit;
}
.box .go-link button {
  cursor: pointer;
  font-size: 16px;
  color: #666;
  outline: none;
  background-color: transparent;
  border: 0;
  padding: 0;
  margin: 0;
}
.box .go-link button:hover {
  text-decoration: underline;
}
.box .go-link input {
  width: 56px;
  height: 40px;
  text-align: center;
  outline: none;
  border-radius: 4px;
  border: 2px solid #f0f4f8;
  font-family: var(--Din);
  margin: 0 11px;
}
.box .go-link input[type='number']::-webkit-outer-spin-button,
.box .go-link input[type='number']::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0;
}
.index-banner {
  position: relative;
}
.index-banner .swiper .swiper-slide {
  position: relative;
}
.index-banner .swiper .swiper-slide-active h2 {
  animation: fadeInDown 2s;
}
.index-banner .swiper .swiper-slide-active h5 {
  animation: fadeInDown 2.5s;
}
.index-banner .swiper .swiper-slide-active a {
  animation: fadeInUp 2s;
}
.index-banner .swiper .swiper-slide-active img {
  transform: scale(1);
}
.index-banner img {
  display: block;
  width: 100%;
  object-fit: cover;
  transform: scale(1.1);
  transition: all 5s;
}
.index-banner .mycontainer {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.index-banner .banner-text {
  text-align: center;
}
.index-banner .banner-text h2 {
  font-size: 50px;
  color: #fff;
  font-weight: 700;
  line-height: 1.6;
}
.index-banner .banner-text h5 {
  font-size: 18px;
  color: #fff;
  font-weight: 500;
  line-height: 1.6;
}
.index-banner .banner-text a {
  display: inline-block;
  width: 150px;
  line-height: 50px;
  text-align: center;
  border: 1px solid #fff;
  border-radius: 25px;
  color: #fff;
  margin-top: 6.13497%;
  transition: all 0.5s;
}
.index-banner .banner-text a img {
  margin-right: 13px;
  transition: all 0.5s;
}
.index-banner .banner-text a:hover {
  box-shadow: inset -5px 5px 15px rgba(255, 255, 255, 0.3);
}
.index-banner .banner-text a:hover img {
  margin-right: 7px;
}
.index-banner .swiper-pagination {
  position: relative;
  bottom: auto;
  left: auto;
  width: auto;
}
.index-banner .swiper-pagination .swiper-pagination-bullet {
  font-size: clamp(14px, 2.13541667vw, 41px);
  width: 1em;
  height: 0.3414634em;
  border-radius: 0.1707317em;
  line-height: 1;
  background-color: #fff;
  transition: all 0.5s;
  margin: 0 0.23171em;
}
.index-banner .swiper-page {
  position: absolute;
  bottom: 2%;
  width: 100%;
  left: 50%;
  transform: translate(-50%, 0);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1;
}
.index-title {
  text-align: center;
  margin-bottom: 3%;
  line-height: 1.8;
}
.index-title h3 {
  font-size: clamp(20px, 1.875vw, 36px);
  color: #000;
  font-weight: 700;
}
.index-title h5 {
  font-size: clamp(12px, 1.2vw, 22px);
  color: #000;
  font-weight: 300;
}
.index-about {
  background: url(../images/index-about-bg.jpg) no-repeat;
  background-size: cover;
  background-position: center bottom;
  padding: 6.6145833% 0 8.645833%;
}
.index-about .mycontainer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.index-about .mycontainer .lt {
  width: 59.166667%;
}
.index-about .mycontainer .lt .title {
  position: relative;
  z-index: 1;
  font-size: clamp(16px, 2.03125vw, 39px);
  color: #2e1163;
  font-weight: 700;
  margin-bottom: 4.225352%;
}
.index-about .mycontainer .lt .title::before {
  position: absolute;
  content: attr(title);
  z-index: -1;
  left: 0;
  top: 0;
  line-height: 1;
  font-size: clamp(24px, 2.5vw, 48px);
  color: rgba(0, 0, 0, 0.1);
}
.index-about .mycontainer .lt .brief {
  font-size: clamp(14px, 1.2vw, 20px);
  color: #000;
  line-height: 2.2;
}
.index-about .mycontainer .lt a {
  font-size: clamp(14px, 1.2vw, 20px);
  background-color: #2e1163;
  color: #fff;
  line-height: 2.15;
  float: right;
  margin-top: 5.633803%;
}
.index-about .mycontainer .lt a span {
  padding: 0 1em;
}
.index-about .mycontainer .lt a i {
  display: inline-block;
  text-align: center;
  height: 100%;
  background-color: #fff;
  width: 2.4em;
  line-height: 1.95;
  border: 2px solid #2e1163;
}
.index-about .mycontainer .lt a i img {
  width: 0.7em;
  transition: all 0.5s;
}
.index-about .mycontainer .lt a:hover i img {
  animation: swing 1s;
}
.index-about .mycontainer .rt {
  width: 37.5%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10%;
}
.index-about .mycontainer .rt .block {
  position: relative;
  text-align: center;
  width: 40%;
  white-space: nowrap;
  line-height: 1.6;
  font-size: clamp(20px, 2.1875vw, 42px);
  padding-bottom: 0.52380952em;
  margin-bottom: 3.0952381em;
}
.index-about .mycontainer .rt .block:nth-last-child(-n+2) {
  margin-bottom: 0;
}
.index-about .mycontainer .rt .block::after {
  display: block;
  position: absolute;
  content: "";
  left: 50%;
  bottom: 0;
  transform: translate(-50%, 0);
  width: 2.7142857em;
  height: 3px;
  background-color: #2e1163;
}
.index-about .mycontainer .rt .block h2 {
  color: #000;
  font-weight: 700;
}
.index-about .mycontainer .rt .block h5 {
  color: #000;
  font-size: clamp(14px, 1.2vw, 22px);
}
.index-prod {
  margin: 2% 0 3%;
}
.index-prod .mycontainer {
  max-width: 1580px;
}
.index-prod .tab {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 3%;
}
.index-prod .tab li {
  font-size: clamp(14px, 1.2vw, 21px);
  color: #000;
  font-weight: 300;
  text-align: center;
  min-width: 8.142857em;
  line-height: 2.952381;
  padding: 0 0.5em;
  border: 1px solid #eee;
  transition: all 0.5s;
}
.index-prod .tab li:hover {
  background-color: #2e1163;
  color: #fff;
  font-weight: 700;
  border-color: transparent;
}
.index-prod .tab .active {
  background-color: #2e1163;
  color: #fff;
  font-weight: 700;
  border-color: transparent;
}
.index-prod .tab a {
  color: inherit;
}
.index-prod .swiper .swiper-slide {
  position: relative;
  overflow: hidden;
  border-radius: 2px 2px 10px 10px;
  background-color: #eee;
}
.index-prod .swiper .swiper-slide:hover .pic img {
  scale: 1.05;
}
.index-prod .swiper .swiper-slide:hover .title p {
  color: #2e1163;
}
.index-prod .swiper .swiper-slide:hover .title i a {
  background-color: #fff;
  box-shadow: 0 0 0 1px #2e1163;
}
.index-prod .swiper .swiper-slide:hover .title i a img {
  filter: contrast(1) brightness(100%);
}
.index-prod .swiper .pic {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 0;
  padding-bottom: 139.58333%;
  border-radius: 2px;
	border: 1px solid #eee;
}
.index-prod .swiper .pic img {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.5s;
}
.index-prod .swiper .title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: clamp(14px, 1.1vw, 18px);
  color: #5e5e5e;
  padding: 0 0.61111em 0 1.44444em;
  line-height: 3.22222;
}
.index-prod .swiper .title p {
  flex: 1;
  margin-right: 0.5em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.index-prod .swiper .title p a {
  color: inherit;
}
.index-prod .swiper .title i a {
  display: block;
  width: 2em;
  height: 2em;
  line-height: 1.8;
  text-align: center;
  border-radius: 50%;
  background-color: #2e1163;
  transition: all 0.5s;
}
.index-prod .swiper .title i a img {
  width: 0.5em;
  filter: contrast(0) brightness(200%);
  margin-left: 0.1em;
  transition: all 0.5s;
}
.index-serv .wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  background-color: #f5f5f5;
  padding: 1.614583% 0 1.3541667%;
}
.index-serv .wrapper .lt {
  position: relative;
  z-index: 5;
  width: 52.3958333%;
  padding-left: 18.4895833%;
}
.index-serv .wrapper .lt .tab {
  position: relative;
  z-index: 3;
  display: flex;
  flex-wrap: wrap;
  width: 114.615385%;
  justify-content: space-between;
  margin-bottom: 4.6154%;
}
.index-serv .wrapper .lt .tab li {
  width: 23.3557047%;
  background-color: #fff;
  border: 2px solid #eee;
  font-size: clamp(14px, 1.25vw, 24px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  min-height: 6.3333333em;
  cursor: pointer;
  padding: 0.5em;
  transition: all 0.5s;
}
.index-serv .wrapper .lt .tab li .icon {
  width: 2.375em;
  height: 2.375em;
}
.index-serv .wrapper .lt .tab li .icon img {
  max-height: 100%;
  transition: all 0.5s;
}
.index-serv .wrapper .lt .tab li h4 {
  font-weight: 300;
  color: #000;
}
.index-serv .wrapper .lt .tab li:hover .icon img {
  animation: swing 1s;
}
.index-serv .wrapper .lt .tab .active {
  background-color: #2e1163;
}
.index-serv .wrapper .lt .tab .active .icon img {
  filter: contrast(0) brightness(200%);
}
.index-serv .wrapper .lt .tab .active h4 {
  color: #fff;
}
.index-serv .wrapper .lt .swiper h3 {
  font-size: clamp(16px, 1.5625vw, 30px);
  color: #000;
  font-weight: 700;
  margin-bottom: 0.466667em;
}
.index-serv .wrapper .lt .swiper h5 {
  display: inline-block;
  font-size: clamp(12px, 1.2vw, 21px);
  color: #fff;
  background-color: #2e1163;
  line-height: 1.761905;
  border-radius: 0.8809525em;
  padding: 0 0.5em;
  margin-bottom: 0.65em;
}
.index-serv .wrapper .lt .swiper .brief {
  font-size: clamp(14px, 1.35416667vw, 26px);
  color: #484848;
  line-height: clamp(2em, 4.0104167vw, 2.96154em);
}
.index-serv .wrapper .rt {
  width: 45%;
}
.index-serv .wrapper .rt .pic {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 0;
  padding-bottom: 74.189815%;
}
.index-serv .wrapper .rt .pic img {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.5s;
}
.index-device {
  background-color: #f0f0f0;
  background-image: url(../images/index-device-bg.jpg);
  background-repeat: no-repeat;
  background-size: 100% auto;
  padding: 1.5% 0 2%;
}
.index-device .mycontainer {
  max-width: 1626px;
}
.index-device .index-title h3 {
  color: #fff;
}
.index-device .index-title h5 {
  color: #fff;
}
.index-device .swiper .swiper-slide:hover .pic img {
  scale: 1.05;
}
.index-device .swiper .swiper-slide:hover .title {
  color: #2e1163;
}
.index-device .swiper .pic {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 0;
  padding-bottom: 128.57143%;
  border: 3px solid #fff;
}
.index-device .swiper .pic img {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.5s;
}
.index-device .swiper .title {
  text-align: center;
  font-size: clamp(14px, 1.2vw, 22px);
  margin-top: 0.45em;
  transition: all 0.5s;
  color: #666;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.index-device .swiper .title a {
  color: inherit;
}
.index-device .swiper .swiper-pagination {
  position: relative;
  bottom: auto;
  left: auto;
  width: auto;
  margin-top: 2%;
}
.index-device .swiper .swiper-pagination .swiper-pagination-bullet {
  font-size: clamp(10px, 1vw, 15px);
  width: 1em;
  height: 1em;
  line-height: 1;
  background-color: #2e1163;
  transition: all 0.5s;
  margin: 0 4px;
}
.index-app .wrapper {
  display: flex;
}
.index-app .wrapper .block {
  flex: 1;
  transition: all 0.7s;
}
.index-app .wrapper .block .pic {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 27.708333vw;
}
.index-app .wrapper .block .pic img {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.index-app .wrapper .block .pic .mask {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(46, 17, 99, 0.6);
  transition: all 0.5s;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 0.5em;
  font-size: clamp(18px, 1.875vw, 36px);
  color: #fff;
}
.index-app .wrapper .block:hover {
  flex: 2;
}
.index-app .wrapper .block:hover .mask {
  background-color: rgba(46, 17, 99, 0.3);
}
.index-factory {
  margin: 2% 0;
}
.index-factory .mycontainer {
  max-width: 1611px;
}
.index-factory .swiper .pic {
  position: relative;
  overflow: hidden;
  width: 100%;
  height: 0;
  padding-bottom: 81.8877551%;
}
.index-factory .swiper .pic img {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.5s;
}
.index-factory .swiper .title {
  border: 1px solid #eee;
  border-top: 0;
  font-size: clamp(14px, 1.2vw, 20px);
  color: #000;
  text-align: center;
  line-height: 2.6;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  transition: all 0.5s;
  padding: 0 0.5em;
}
.index-factory .swiper .title a {
  color: inherit;
}
.index-factory .swiper .swiper-slide:hover .pic img {
  scale: 1.05;
}
.index-factory .swiper .swiper-slide:hover .title {
  color: #2e1163;
}
.index-news {
  margin: 1.5% 0 3%;
}
.index-news .container {
  max-width: 1240px;
}
.index-news .tab {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1em;
  margin-bottom: 3%;
}
.index-news .tab li {
  font-size: clamp(14px, 1.2vw, 21px);
  min-width: 8.85714286em;
  padding: 0 1em;
  color: #fff;
  background-color: #2e1163;
  text-align: center;
  line-height: 1.66667;
  border: 1px solid transparent;
  border-radius: 0.833335em;
  transition: all 0.5s;
}
.index-news .tab li a {
  display: block;
  color: inherit;
}
.index-news .tab li:hover {
  background-color: #fff;
  color: #2e1163;
  border-color: #2e1163;
}
.index-news .wrapper {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.index-news .wrapper .lt {
  width: 49.25%;
}
.index-news .wrapper .lt .pic {
  position: relative;
  overflow: hidden;
}
.index-news .wrapper .lt .pic img {
  display: block;
  width: 100%;
}
.index-news .wrapper .rt {
  width: 49%;
}
.index-news .wrapper .block {
  margin-bottom: 7.4829932%;
}
.index-news .wrapper .block:last-child {
  margin-bottom: 0;
}
.index-news .wrapper .block h4 {
  font-size: clamp(16px, 1.25vw, 24px);
  color: #000;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 300;
  margin-bottom: 0.3333em;
}
.index-news .wrapper .block p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  font-size: clamp(12px, 1.1vw, 18px);
  color: #737373;
  font-weight: 300;
  line-height: 2.3888889;
  height: 7.1666667em;
}
.index-news .wrapper .block a {
  color: inherit;
}
.index-news .wrapper .block:hover h4 {
  color: #2e1163;
}
footer {
  background-color: #393939;
}
footer .footer-top ul {
  display: flex;
  justify-content: space-between;
}
footer .footer-top ul li a {
  font-size: clamp(16px, 1.1627907vw, 20px);
  color: #edf2f8;
  line-height: 3;
}
footer .footer-top ul li a:hover {
  text-decoration: underline !important;
}
footer .footer-mid {
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  padding: 2.5% 0 1.5%;
}
footer .footer-mid .mycontainer {
  display: flex;
  justify-content: space-between;
  gap: 1em;
}
footer .footer-mid h4 {
  font-size: clamp(16px, 1.2vw, 20px);
  color: #fff;
  font-weight: 700;
  margin-bottom: 1.05em;
}
footer .footer-mid p {
  font-size: clamp(14px, 1.1vw, 18px);
  color: #fff;
}
footer .footer-mid .logo {
  align-self: center;
}
footer .footer-mid .info {
  width: 33.3333%;
}
footer .footer-mid .info p {
  margin-bottom: 1em;
}
footer .footer-mid .ewm img {
  width: clamp(90px, 11.354166vw, 218px);
}
footer .footer-mid nav ul {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
}
footer .footer-mid nav ul li {
  font-size: clamp(14px, 1.1vw, 18px);
  color: #fff;
  margin-bottom: 1em;
  margin-right: 1em;
  line-height: 2;
}
footer .footer-mid nav ul li:nth-child(n+22) {
  display: none;
}
footer .footer-mid nav ul a {
  color: inherit;
  transition: all 0.5s;
}
footer .footer-mid nav ul a:hover {
  opacity: 0.5;
}
footer .footer-mid .msg {
  width: 25%;
}
footer .footer-mid .msg form input,
footer .footer-mid .msg form textarea {
  outline: none;
  width: 100%;
  background-color: rgba(0, 0, 0, 0.25);
  padding: 0 1em;
  height: 42px;
  margin-bottom: 3px;
  color: #fff;
  transition: all 0.5s;
  border: 1px solid rgba(253, 253, 253, 0.25);
}
footer .footer-mid .msg form input::placeholder,
footer .footer-mid .msg form textarea::placeholder {
  color: #fff;
}
footer .footer-mid .msg form input:focus,
footer .footer-mid .msg form textarea:focus {
  background-color: rgba(0, 0, 0, 0.7);
}
footer .footer-mid .msg form textarea {
  padding: 0.5em 1em;
  height: 57px;
}
footer .footer-mid .msg form button {
  width: 100%;
  outline: none;
  transition: all 0.5s;
  font-size: clamp(14px, 0.9375vw, 18px);
  color: #fff;
  font-weight: 700;
  background-color: #84ce13;
  cursor: pointer;
  height: 2.33333em;
  margin-top: 6px;
}
footer .footer-mid .msg form button:hover {
  filter: brightness(80%);
}
footer .footer-bt {
  text-align: center;
  line-height: 1.8;
  color: #fff;
  font-size: clamp(14px, 1vw, 16px);
  padding: 0.78125% 0;
  border-top: 1px solid rgba(255, 255, 255, 0.3);
}
footer .footer-bt a {
  color: inherit;
  transition: all 0.5s;
}
footer .footer-bt a:hover {
  opacity: 0.7;
}
