
:root {
  --normal: rgb(51, 51, 51);
  --primary: rgb(68, 126, 216);
  --light: rgb(2, 103, 190);
  --gray: rgb(235, 235, 235);
  --silver: rgb(238, 238, 238);
  --link: rgb(33, 33, 33);
  --secondary: rgb(93, 93, 93);
  --mute: rgb(128, 128, 128);
  --mute-light: rgb(168, 168, 168);
  --white: white;
  --black: black;
  --dark: rgb(35, 35, 35);
  --top-nav: 3.8rem;
  --top-nav-sm: 4rem;
  --logo-size: 2.25rem;
  --left-pad: 4rem;
  --left-wide: 7rem;
  --left-sm: 20px;
  --right-pad: 30px;
  --fw-bold: 600;
  --fw-normal: normal;
  --fw-light: 200;
  --font-system: "-apple-system", "Noto Sans", "Helvetica Neue", "Helvetica", "Nimbus Sans L", "PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", "Source Han Sans SC", "Source Han Sans CN", "Microsoft YaHei", "ST Heiti", "SimHei";
  --font-family: "-apple-system", "Noto Sans", "Helvetica Neue", "Helvetica", "Nimbus Sans L", "PingFang SC", "Hiragino Sans GB", "Noto Sans CJK SC", "Source Han Sans SC", "Source Han Sans CN", "Microsoft YaHei", "ST Heiti", "SimHei";
}

html { font-size: 100%; min-height: 100% }
body, h1, h2, h3, h4, h5, h6, p, blockquote, pre, dl, dt, dd, ol, ul, li, form, fieldset, legend, figure, table, th, td, caption, hr, input, button, article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { font-weight: var(--fw-normal); position: relative; margin: 0; padding: 0; }
body { font-family: var(--font-family); color: var(--normal); font-size: .7rem; line-height: 1.8; letter-spacing: .015em; /* -webkit-font-smoothing: antialiased;*/ }
@media screen and (min-width:1200px){html{font-size:110%}}@media screen and (min-width:1400px){html{font-size:115%}}@media screen and (min-width:1600px){html{font-size:120%}}@media screen and (min-width:1900px){html{font-size:125%}}@media screen and (min-width:2500px){html{font-size:127.5%}}@media screen and (min-width:3000px){html{font-size:130%}}@media screen and (-webkit-min-device-pixel-ratio:1.25),screen and (min-resolution:120dpi){html{font-size:90%}@media screen and (min-width:1200px){html{font-size:98%}}@media screen and (min-width:1400px){html{font-size:102%}}@media screen and (min-width:1600px){html{font-size:106%}}@media screen and (min-width:1900px){html{font-size:110%}}@media screen and (min-width:2500px){html{font-size:112%}}}@media screen and (-webkit-min-device-pixel-ratio:1.5),screen and (min-resolution:144dpi){html{font-size:85%}@media screen and (min-width:1200px){html{font-size:90%}}@media screen and (min-width:1400px){html{font-size:100%}}@media screen and (min-width:1600px){html{font-size:105%}}@media screen and (min-width:1900px){html{font-size:115%}}@media screen and (min-width:2500px){html{font-size:125%}}}@media screen and (-webkit-min-device-pixel-ratio:2),screen and (min-resolution:192dpi){}
h1,h2,h3,h4,h5,h6 { display: block; line-height: inherit; font-weight: inherit; }
audio, canvas, progress, video { display: inline-block; vertical-align: baseline; display: flex; justify-content: space-between; }
audio:not([controls]) { display: none; height: 0; }
video { max-width: 100%; width: 100%; object-fit: cover; }
[hidden], template { display: none; }
a, button { transition: all .5s; }
a { color: var(--link); text-decoration: none; display: inline-block; position: relative; }
a:hover { text-decoration: none; color: var(--primary); outline: none; }
a:focus, a:active, button:hover, button:focus, button:active, input:focus, textarea:focus, li:focus, video:active, video:focus { text-decoration: none; color: inherit; outline: none; }
button, a { -webkit-transform: translateZ(0); transform: translateZ(0); border: 0; background: transparent; -webkit-transform-style: preserve-3d; -webkit-backface-visibility: hidden; }
button:hover { color: var(--primary); }
a, span, div, section, dl, dt, dd, i, em, label { font-style: normal; position: relative; }
li { list-style: none; }
input, textarea, button { font-family: var(--font-family) }
input, textarea { font-size: .7rem; width: 100%; resize: none; transition: border .5s, background-color .5s; border: 0; border-radius: 0; background: transparent; -webkit-appearance: none; }
a:hover .no-hover { color: inherit; background: initial; }
strong, .strong { font-weight: normal; }
img { max-width: 100%; max-height: 100%; height: auto; vertical-align: top; }
hr { margin-top: 1rem; margin-bottom: 1rem; border: 0; border-top: 1px solid var(--secondary); }
hr.min { margin-top: 0; margin-bottom: 0; }
dl, dt, dd { line-height: inherit; }
a.block span { position: relative; display: block; }
.normal { font-weight: normal; font-style: normal; font-size: initial; }
.mobile-break { display: none; }
.inline { position: relative; display: inline; vertical-align: top; letter-spacing: normal; }
.block { position: relative; display: block; }
.nowrap { white-space: nowrap; }
.ellipsis { display: block; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.multi-ellipsis { display: -webkit-box !important; overflow: hidden; word-break: break-word; -webkit-box-orient: vertical; }
.gray { color: var(--gray); }
.white { color: white; }
.black { color: var(--black); }
.primary { color: var(--primary); }
.secondary { color: var(--secondary); }
.silver { color: var(--silver); }
.mute { color: var(--mute); }
.dark { color: var(--dark); }
.light { color: var(--light); }
.bg-gray { background-color: var(--gray); }
.bg-silver { background-color: var(--silver); }
.none { display: none; }
.noevent { pointer-events: none; }
.full-size { position: relative; overflow: hidden; width: 100%; height: 100%; }
.full-height { height: 100%; }
.full-width { width: 100%; height: auto; vertical-align: top; }
.abs { position: absolute; top: 0; left: 0; width: 100%; }
.bgs-cover, .bgs-contain { background-repeat: no-repeat; background-position: center center; }
.bgs-cover { background-size: cover; }
.bgs-contain { background-size: contain; }
.bgp-left-top { background-position: left top; }
.bgp-center-top { background-position: center top; }
.at-middle { display: flex !important; align-items: center; flex-wrap: wrap; }
.v-middle { display: flex; align-items: center; justify-content: left; }
.cxany-valign-middle span, .cxany-valign-middle img, .cxany-valign-middle i { display: inline-block; float: none; vertical-align: middle; }
.left-pad { padding-left: var(--left-pad) }
.right-pad { padding-right: var(--right-pad) }
.fs-light { font-weight: 300; /*-webkit-font-smoothing: antialiased;*/ }
.ff-system { font-family: var(--font-system) }
.ff-am { font-family: "am" }
.fw-200 { font-weight: 200; }
.fw-300 { font-weight: 300; }
.fw-400 { font-weight: 400; }
.fw-500 { font-weight: 500; }
.fs-9{font-size:.45rem}.fs-10{font-size:.5rem}.fs-11{font-size:.55rem}.fs-12{font-size:.6rem}.fs-13{font-size:.65rem}.fs-14{font-size:.7rem}.fs-15{font-size:.75rem}.fs-16{font-size:.75rem}.fs-17{font-size:.85rem}.fs-18{font-size:.9rem}.fs-19{font-size:.95rem}.fs-20{font-size:1rem}.fs-21{font-size:1.05rem}.fs-22{font-size:1.1rem}.fs-23{font-size:1.15rem}.fs-24{font-size:1.2rem}.fs-25{font-size:1.25rem}.fs-26{font-size:1.3rem}.fs-27{font-size:1.35rem}.fs-28{font-size:1.4rem}.fs-29{font-size:1.45rem}.fs-30{font-size:1.5rem}.fs-31{font-size:1.55rem}.fs-32{font-size:1.6rem}.fs-33{font-size:1.65rem}.fs-34{font-size:1.7rem}.fs-35{font-size:1.75rem}.fs-36{font-size:1.8rem}.fs-37{font-size:1.85rem}.fs-38{font-size:1.9rem}.fs-39{font-size:1.95rem}.fs-40{font-size:2rem}.fs-42{font-size:2.1rem}.fs-44{font-size:2.2rem}.fs-46{font-size:2.3rem}.fs-48{font-size:2.4rem}.fs-50{font-size:2.5rem}.fs-52{font-size:2.6rem}.fs-54{font-size:2.7rem}.fs-56{font-size:2.8rem}.fs-58{font-size:2.9rem}.fs-60{font-size:3rem}.fs-62{font-size:3.1rem}.fs-64{font-size:3.2rem}.fs-66{font-size:3.3rem}.fs-68{font-size:3.4rem}.fs-70{font-size:3.5rem}.fs-72{font-size:3.6rem}.fs-74{font-size:3.7rem}.fs-76{font-size:3.8rem}.fs-78{font-size:3.9rem}.fs-80{font-size:4rem}.fs-82{font-size:4.1rem}.fs-84{font-size:4.2rem}.fs-86{font-size:4.3rem}.fs-88{font-size:4.4rem}.fs-90{font-size:4.5rem}.fs-92{font-size:4.6rem}.fs-94{font-size:4.7rem}.fs-96{font-size:4.8rem}.fs-98{font-size:4.9rem}.fs-100{font-size:5rem}
.p-t{padding-top:5rem}.p-t-lg{padding-top:8rem}.p-t-md{padding-top:4rem}.p-t-sm{padding-top:2.5rem}.p-t-xs{padding-top:1.5rem}.p-t-min{padding-top:.75rem}.p-b{padding-bottom:5rem}.p-b-lg{padding-bottom:8rem}.p-b-md{padding-bottom:4rem}.p-b-sm{padding-bottom:2.5rem}.p-b-xs{padding-bottom:1.5rem}.p-b-min{padding-bottom:.75rem}.m-t{margin-top:5rem}.m-t-lg{margin-top:8rem}.m-t-md{margin-top:4rem}.m-t-sm{margin-top:2.5rem}.m-t-xs{margin-top:1.5rem}.m-t-min{margin-top:.75rem}.m-b{margin-bottom:5rem}.m-b-lg{margin-bottom:8rem}.m-b-md{margin-bottom:4rem}.m-b-sm{margin-bottom:2.5rem}.m-b-xs{margin-bottom:1.5rem}.m-b-min{margin-bottom:.75rem}.m-l{margin-right:5rem}.m-l-lg{margin-left:8rem}.m-l-md{margin-left:4rem}.m-l-sm{margin-left:2.5rem}.m-l-xs{margin-left:1.5rem}.m-l-min{margin-left:.75rem}.m-r{margin-right:5rem}.m-r-lg{margin-right:8rem}.m-r-md{margin-right:4rem}.m-r-sm{margin-right:2.5rem}.m-r-xs{margin-right:1.5rem}.m-r-min{margin-right:.75rem}.l-h-lg{line-height:2.5}.l-h-md{line-height:2.2}.l-h-sm{line-height:2}.l-h-xs{line-height:1.6}.l-h-2-8{line-height:2.8}.l-h-2-7{line-height:2.7}.l-h-2-6{line-height:2.6}.l-h-1-4{line-height:1.4}.l-h-1-3{line-height:1.3}.l-h-1-2{line-height:1.2}.l-h-1-1{line-height:1.1}.l-h-1{line-height:1}@media screen and (min-width:1900px){.p-t{padding-top:6rem}.p-b{padding-bottom:6rem}.m-t{margin-top:6rem}.m-b{margin-bottom:6rem}.p-t-md{padding-top:5rem}.p-b-md{padding-bottom:5rem}.m-t-md{margin-top:5rem}.m-b-md{margin-bottom:5rem}}
[data-clamp="2"] { -webkit-line-clamp: 2; } [data-clamp="3"] { -webkit-line-clamp: 3; } [data-clamp="4"] { -webkit-line-clamp: 4; } [data-clamp="5"] { -webkit-line-clamp: 5; }
[class*="icon-"] { display: inline-block; }
.row { margin-right: 0; margin-left: 0; position: relative; }
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { padding-right: 0; padding-left: 0; }
.spacing-1 { margin-right: -1px; margin-left: -1px; }
.spacing-1 [class^="col-"] { padding-right: 1px; padding-left: 1px; }
.spacing-2 { margin-right: -2px; margin-left: -2px; }
.spacing-2 [class^="col-"] { padding-right: 2px; padding-left: 2px; }
.spacing-5 { margin-right: -.25rem; margin-left: -.25rem; } .spacing-5 [class^="col-"] { padding-right: .25rem; padding-left: .25rem; }
.spacing-7 { margin-right: -.35rem; margin-left: -.35rem; } .spacing-7 [class^="col-"] { padding-right: .35rem; padding-left: .35rem; }
.spacing-10 { margin-right: -.5rem; margin-left: -.5rem; }
.spacing-10 [class^="col-"] { padding-right: .5rem; padding-left: .5rem; }
.spacing-15 { margin-right: -.75rem; margin-left: -.75rem; }
.spacing-15 [class^="col-"] { padding-right: .75rem; padding-left: .75rem; }
.spacing-20 { margin-right: -1rem; margin-left: -1rem; }
.spacing-20 [class^="col-"] { padding-right: 1rem; padding-left: 1rem; }
.spacing-25 { margin-right: -1.25rem; margin-left: -1.25rem; }
.spacing-25 [class^="col-"] { padding-right: 1.25rem; padding-left: 1.25rem; }
.spacing-30 { margin-right: -1.5rem; margin-left: -1.5rem; }
.spacing-30 [class^="col-"] { padding-right: 1.5rem; padding-left: 1.5rem; }
.spacing-35 { margin-right: -1.75rem; margin-left: -1.75rem; }
.spacing-35 [class^="col-"] { padding-right: 1.75rem; padding-left: 1.75rem; }
.spacing-40 { margin-right: -2rem; margin-left: -2rem; }
.spacing-40 [class^="col-"] { padding-right: 2rem; padding-left: 2rem; }
.spacing-50 { margin-right: -2.5rem; margin-left: -2.5rem; }
.spacing-50 [class^="col-"] { padding-right: 2.5rem; padding-left: 2.5rem; }

a.block span.inline { display: inline-block; }
.btn-inline { line-height: 40px; width: 100%; height: 40px; transition: background .5s; color: white; background-color: rgb(214, 216, 221); }
.btn-inline:hover { background-color: rgb(56, 101, 199); }
.ratio { position: relative !important; display: block; overflow: hidden; }
.ratio .inner { position: absolute !important; top: 0; left: 0; width: 100%; height: 100%; }
.ratio > img { position: absolute; z-index: -1; top: 0; left: 0; width: 1px; height: 1px; }
.ratio-16-10 { padding-top: 62.5%; }
.ratio-16-9 { padding-top: 56.25%; }
.ratio-9-16 { padding-top: 177.7777%; }
.ratio-1-1 { padding-top: 100%; }
.ratio-2-1 { padding-top: 50%; }
.ratio-3-1 { padding-top: 33.3333%; }
.ratio-3-2 { padding-top: 66.6666%; }
.ratio-2-3 { padding-top: 133.3333%; }
.ratio-4-3 { padding-top: 75%; }
.ratio-1-2 { padding-top: 150%; }
.ratio-1-3 { padding-top: 300%; }
.hover-zoom { transition: all .5s ease; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-transform-style: preserve-3d; -webkit-backface-visibility: hidden; }
a:hover .hover-zoom, li:hover .hover-zoom, .has-hover:hover .hover-zoom { -webkit-transform: scale(1.1); transform: scale(1.1); }
.window-height { height: 100vh; transition: opacity .8s; opacity: 0; }
.window-height.show-me { opacity: 1; }
.wow { visibility: hidden; opacity: 0; }
.wow-loaded .wow { opacity: 1; }
.ani { transition: all .5s; -webkit-transform-style: preserve-3d; -webkit-backface-visibility: hidden; }
.noani { transition: none !important; }
.flex, [class*="flex-"] { display: flex; }
.flex-sb { justify-content: space-between; }
.flex-cc { align-items: center; justify-content: center; }
.flex-cs { align-items: center; justify-content: flex-start; }
.flex-ce { align-items: center; justify-content: flex-end; }
.flex-cb { align-items: center; justify-content: space-between; }

/* Frame Defined */
.frame-full, .frame-wide, .frame-middle, .frame-narrow { position: relative; width: auto; margin-right: auto; margin-left: auto; }
.frame-full, .frame-wide { padding-left: var(--left-pad); padding-right: var(--left-pad); }
.frame-wide { max-width: 100%; padding-left: var(--left-pad); padding-right: var(--left-pad); }
@media screen and (min-width:1280px) {
  .frame-middle { max-width: 1000px; }
}
@media screen and (min-width:1440px) {
  .frame-middle { max-width: 1280px; }
  .frame-wide { padding-left: 0; padding-right: 0; max-width: 1320px }
}
@media screen and (min-width:1600px) {
  .frame-wide { max-width: 1380px; }
}
@media screen and (min-width:1900px) {
  .frame-wide { max-width: 1420px; }
}
@media screen and (min-width:2500px) {
  .frame-middle { max-width: 1600px; }
}

/* Main */
body { overflow: hidden; background-color: white; color: var(--normal); padding-top: var(--top-nav) }
main { width: 100%; margin: 0; }
main:after { display: table; clear: both; content: ""; }
.menu-mask { content: ""; display: block; position: fixed; width: 100%; height: 100%; left: 99999999rem; top: 0; z-index: 20; background-color: rgb(0, 0, 0); opacity: .7; pointer-events: none; }

/* Heading Top Navigation */
.top-nav { position: fixed; display: flex; transition: all .25s linear; justify-content: space-between; width: 100%; background-color: white; box-shadow: 0 5px 10px rgba(0,0,0,.05); z-index: 990; top: 0; left: 0; width: 100%; height: var(--top-nav); }
.top-nav .row-nav { width: 100%; }
.main-nav-bar, .top-nav-menu, .tnm-con, .tnm-con dl, .tnm-con dt { height: 100%; }
.main-nav-bar { flex-grow: 1; justify-content: flex-start; }
.main-nav-bar .top-row { display: flex; align-items: center; justify-content: flex-end; padding-right: 2rem }
.top-nav-menu { line-height: 1.5rem; z-index: 8; }
.top-nav-logo { display: flex; align-items: center; z-index: 9; height: 2.25rem; min-width: 10rem; }
.top-nav-logo h1 { display: block; width: 100%; height: 100%; transition: height .25s linear; }
.top-nav-logo h1 a { display: block; height: 100%; transition: none; }
.top-nav-logo img, .top-nav-logo svg { transition: all .25s; height: 100%; vertical-align: top }
.top-nav-menu dt { text-align: center; /*background-color: white;*/ z-index: 11 }
.top-nav-menu dt a { font-size: .95rem; line-height: 1.5rem; position: relative; z-index: 3; color: var(--link); display: block; height: 100%; padding-right: 2rem; padding-left: 2rem; white-space: nowrap; display: flex; align-items: center; }
.top-nav-menu dt a>em { line-height: 2.5; }
.top-nav-menu dt a>em:after { border-width: 4px; }

.top-nav-menu dl.active dt a, .top-nav-menu dt a:hover { color: var(--link) }
.top-nav-menu dl.active dt a:after, .top-nav-menu dt a:hover:after { opacity: 1; }
.desktop .top-nav-menu dl:hover .top-sub-menu, .desktop .top-nav-menu dl:hover:after { pointer-events: initial; opacity: 1; }
.top-nav-menu dl.active dt a { background-color: var(--silver) }
.top-nav-menu dl.active dt a>em:after { transition: width .5s; left: 0; width: 100%; }
.top-nav-menu dl:last-child dt { padding-right: 0 }
.top-sub-menu { position: absolute; z-index: 2; top: auto; left: 0; min-width: 11rem; transition: all .25s linear; pointer-events: none; opacity: 0; /*transform: translateY(-100%);*/ }
/*.top-sub-menu:before { position: absolute; top: unset; width: 50000px; height: 100%; left: -10000px; content: ""; background-color: rgba(255, 255, 255, .75); z-index: 0;  }*/
.top-sub-nav { background-color: white; padding-top: .75rem; padding-bottom: .75rem; }
.top-sub-menu a { display: block; white-space: nowrap; font-size: .8rem; padding-left: 2rem; padding-right: 2rem; line-height: 2.5rem; }
.top-sub-menu a:hover, .top-sub-menu a.active { color: var(--primary); }
.tnm-con:before { content: ""; position: absolute; width: 50000px; left: -10000px; height: 100%; top: 0; /*background-color: white;*/ z-index: 5; }
.top-quick { z-index: 9; font-size: .9rem; color: var(--link) }
.top-lang { z-index: 9; padding-left: 2rem; border-left: 1px solid var(--mute-light) }
.top-lang a { display: inline-block; line-height: 1.5rem; }
.top-lang a:hover, .top-search a:hover { color: var(--primary) }
.top-member a { display: flex; align-items: center; justify-content: center; width: 1.4rem; height: 1.4rem; border-radius: 100%; background-color: var(--silver); font-size: 1rem;/* margin-left: 2.5rem;*/ }
.top-nav-menu .visible-inline-xs { display: none }
.top-toggle-nav { display: none; }
.social-image>span { box-shadow: 0 0 15px rgba(0,0,0,.15); padding: .5rem; overflow: hidden; display: block; position: absolute; top: 200%; opacity: 0; width: 7rem; background: white; border-radius: 6px; transition: all .25s; left: 50%; transform: translate3d(-50%,0%,0); pointer-events: none; }
.social-image:hover>span { top: 150%; opacity: 1; }


/* Button */
.b-border { background-color: transparent; color: var(--primary); display: flex; align-items: center; justify-content: center; height: 2rem; max-width: 4.9rem; border: 1px solid var(--primary); }
.b-border:hover { background-color: var(--primary); color: white; }
.b-bc { background-color: var(--primary); color: white; display: flex; align-items: center; justify-content: center; height: 2rem; max-width: 4.9rem; border: 1px solid var(--primary); }
.b-bc:hover { background-color: transparent; color: var(--primary) }
.b-sm { height: 1.7rem; max-width: 4.2rem; padding-top: .2em; }

/* Grid */
.grid { display: flex; list-style: none; flex-wrap: wrap; }
.grid [class*="width-"] { max-width: 100%; flex-shrink: 0; }
.width-auto { flex-grow: 1; }

/* Home */
.slides-list, .slides-list li, .bx-wrapper, .bx-viewport { position: relative; height: 100%; }
.slick-list, .slick-track { overflow: hidden; height: inherit; }
.slick-dots { z-index: 3; bottom: 2.25rem; line-height: 1; font-size: 0; left: 0; text-align: center; }
.slick-dots li { width: .55rem; height: .55rem; margin-right: .75rem; margin-left: .75rem; padding: 0;  }
.slick-dots li button { width: 100%; height: 100%; margin: 0; padding: 0; background-color: transparent; }
.slick-dots li button:before { line-height: 1; background-color: white; opacity: .5; font-size: 0; border-radius: 100%; width: 100%; height: 100%; transition: all .5s; }
.slick-dots li.slick-active button:before { color: white; opacity: 1; }

.dot-primary .slick-dots li button { background-color: white; }
.dot-primary .slick-dots li.slick-active button { background-color: rgb(30, 80, 164); }
.slick-prev, .slick-next { z-index: 2; overflow: hidden; width: 4.5rem; height: 4.5rem; line-height: 4.5rem; text-align: center; }
.slick-prev { left: -6rem; }
.slick-next { right: -6rem; }
.slick-prev:before, .slick-next:before { font-family: "cxany"; font-size: 2.8rem; transition: color .5s; color: var(--primary); vertical-align: middle; }
.slick-prev:before { content: "\c1021"; }
.slick-next:before { content: "\c1022"; }
.slick-dark-nav .slick-prev:before, .slick-dark-nav .slick-next:before { color: transparent; }
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus { color: var(--link); }
.slides-nav { top: 30%; }
.slides-nav a { line-height: 1; position: absolute; top: 50%; display: inline-block; }
.slides-nav i { vertical-align: top; }
.slides-nav-prev { left: 0; -webkit-transform: translateX(-80%) translateY(-50%); transform: translateX(-80%) translateY(-50%); }
.slides-nav-next { right: 0; -webkit-transform: translateX(80%) translateY(-50%); transform: translateX(80%) translateY(-50%); }
.slick-track { margin-left: auto; margin-right: auto; }
.slick-dashed.slick-slider { margin: 0; }

.v-dots .slick-dots { width: .8rem; display: flex; flex-direction: column; left: initial; right: 12vw; top: 50%; bottom: initial; line-height: 1; transform: translateY(-50%); }
.v-dots .slick-dots li { margin: .5rem 0; width: 6px; height: 6px; transition: none; }
.v-dots .slick-dots li button { width: 100%; text-align: center; }
.v-dots .slick-dots li.slick-active { width: 1.5rem; height: 2px; border-radius: 2px;  }
.v-dots .slick-dots li.slick-active button:before { border-radius: 1px;  }
.v-dots .slick-dots li button:before { opacity: 1; transition: none; }

@media screen and (min-width:1650px) {
  .v-dots .slick-dots { right: 14vw; }
}
@media screen and (min-width:1900px) {
  .v-dots .slick-dots { right: 20vw; }
  .slides-nav-prev { -webkit-transform: translateX(-100%) translateY(-50%); transform: translateX(-100%) translateY(-50%); }
  .slides-nav-next { -webkit-transform: translateX(100%) translateY(-50%); transform: translateX(100%) translateY(-50%); }
}

/* animation */
.ani-way { animation: hover 3.25s ease infinite; }
@keyframes hover {
  0% { webkit-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); webkit-animation-timing-function: cubic-bezier(0.3, 0.36, 0.6, 1); -webkit-animation-timing-function: cubic-bezier(0.3, 0.36, 0.6, 1); animation-timing-function: cubic-bezier(0.3, 0.36, 0.6, 1); }
  25% { webkit-transform: translateY(-6.25px); -webkit-transform: translateY(-6.25px); transform: translateY(-6.25px); webkit-animation-timing-function: cubic-bezier(0.51, -0.05, 0.85, 0.82); -webkit-animation-timing-function: cubic-bezier(0.51, -0.05, 0.85, 0.82); animation-timing-function: cubic-bezier(0.51, -0.05, 0.85, 0.82); }
  50% { webkit-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); webkit-animation-timing-function: cubic-bezier(0.3, 0.36, 0.6, 1); -webkit-animation-timing-function: cubic-bezier(0.3, 0.36, 0.6, 1); animation-timing-function: cubic-bezier(0.3, 0.36, 0.6, 1); }
  75% { webkit-transform: translateY(6.25px); -webkit-transform: translateY(6.25px); transform: translateY(6.25px); webkit-animation-timing-function: cubic-bezier(0.51, -0.05, 0.85, 0.82); -webkit-animation-timing-function: cubic-bezier(0.51, -0.05, 0.85, 0.82); animation-timing-function: cubic-bezier(0.51, -0.05, 0.85, 0.82); }
  100% { webkit-transform: translateY(0); -webkit-transform: translateY(0); transform: translateY(0); }
}

.home-banner { height: 35vw; }
.home-slides .slick-arrow { transition: all .5s; opacity: 0; color: white; background-color: transparent; }
.home-slides .slick-arrow:before { font-size: 1.4rem; }
.home-slides:hover .slick-arrow { opacity: 1; }
.home-slides .slick-prev { left: 6%; }
.home-slides .slick-next { right: 6%; }
.slides-info { height: 100%; width: 100%; display: flex; align-items: center; padding-right: 5vw; }
.hsi-con { color: white; font-weight: 300; line-height: 1.4; }
.hsi-con.primary { color: var(--primary) }
.hsi-con img { max-height: 100%; width: auto; }
.hsi-con h3 { font-size: 2.3rem; font-weight: var(--fw-normal); line-height: 1.3; }
.hsi-con h4 { font-size: 1.35rem; margin-top: 1rem; }

a.cover-link { display: block; position: absolute; z-index: 3; width: 100%; height: 100%; left: 0; top: 0; }

h3.title { font-size: 2.3rem; line-height: 1.1; }
.hcom-overview { max-width: 33rem; padding-top: 1.75rem; padding-bottom: 3.25rem; line-height: 2.3; text-align: justify; }

.pt-lg { padding-top: 9.5rem; }.pb-lg { padding-bottom: 9.5rem; }.pt-md{ padding-top: 7.5rem; }.pb-md{ padding-bottom: 7.5rem; }.pt-sm{ padding-top: 5rem; }.pb-sm{ padding-bottom: 5rem; }.pt-xs{ padding-top: 2.5rem; }.pb-xs{ padding-bottom: 2.5rem; }.pt-min{ padding-top: 1.25rem; }.pb-min{ padding-bottom: 1.25rem; }
.mt-lg { margin-top: 9.5rem; }.mb-lg { margin-bottom: 9.5rem; }.mt-md { margin-top: 7.5rem; }.mb-md { margin-bottom: 7.5rem; }.mt-sm { margin-top: 5rem; }.mb-sm { margin-bottom: 5rem; }.mt-xs { margin-top: 2.5rem; }.mb-xs { margin-bottom: 2.5rem; }.mt-min { margin-top: 1.25rem; }.mb-min { margin-bottom: 1.25rem; }

/* bottom line animate */
/*
a>em { display: inline-block; overflow: hidden; line-height: 1; }
a>em:after { content: ""; display: block; position: absolute; left: 100%; width: 0; bottom: 0; transition: all .25s; border-bottom: 1px solid var(--primary); }
a:hover>em:after { transition: width .5s; width: 100%; left: 0; }
*/

/* Advantage */
.hadv-item { transition: all .5s; padding: 1.5rem; height: 100%; overflow: hidden; line-height: 2; }
.hadv-item dt { text-align: center; z-index: 2; }
.hadv-item dt img { width: 6rem; margin-left: 0; margin-right: 0; }
.hadv-item h4 { line-height: 1.2; padding-top: 1.5rem; padding-bottom: 1.5rem; text-align: center; }
.hadv-item h4.with-line { margin-bottom: 1.25rem; padding-bottom: 1.25rem; }
.hadv-item h4.with-line:after { position: absolute; content: ""; left: 50%; bottom: 0; width: 1.75rem; height: 1px; transition: background .25s; background-color: var(--mute-light); transform: translateX(-50%); }
/*.desktop .hadv-item:hover .ani { color: white; }*/
.b-more { border: 1px solid black; display: inline-block; line-height: 1; padding: .5rem 1.5rem; }
.b-more:hover { background-color: black; color: white; }
/*.desktop .hadv-item:hover h4:after { background-color: white; }*/

.hser-item { background-color: white; padding: 0; cursor: default; }
.hser-item dt { width: 100%; height: 11rem; left: 0; top: 0; }
.hser-item dd { font-size: .8rem; padding: 0 1.25rem; text-align: justify; line-height: 1.85 }
.hser-intro { padding-bottom: 2.5rem; }
.hser-det { padding-bottom: 1.5rem; }
.hser-det>p { font-size: 0; line-height: 1; height: 1rem; }
.hser-front { position: absolute; width: 100%; height: 100%; left: 0; top: 0; opacity: 0; background-color: var(--primary); z-index: 5; color: white; transform: translateY(11rem); }
.hser-front h4.with-line:after { background-color: white; }
.hser-item:hover .hser-front { opacity: 1; transform: unset; }
.hser-item:hover .hser-back { opacity: 0; }
.hpar-list a { background-color: white; border-radius: 6px; border: 2px solid var(--dark); overflow: hidden; margin: 1.15rem auto; }
.hpar-list .ratio-3-1 { padding-top: 40% }

/* Products */
.sub-banner { background-color: var(--primary); color: white; }
.sban-con { min-height: 28rem; line-height: 1.5; }
.sban-item { width: 50%; flex-shrink: 0; padding: 3rem; }
.sban-img img { width: 100%; }
.sban-info { line-height: 1.5; }
.sban-info>div { padding-top: 1rem; line-height: 1.8; }

.pcore-det>dt, .pcore-det>dd { padding: 0 3rem; width: 50%; flex-shrink: 0 }
.pcore-det>dt { padding-left: 0; }
.pcore-det>dt>a { width: 100%; }
.pcore-det>dd li { padding-top: .6rem; padding-bottom: .6rem; }
.pcore-det>dd strong { line-height: 1.8; display: flex; align-items: center; font-size: .9rem; }
.pcore-det>dd strong img { width: .65rem; height: .65rem; margin-right: .35rem; }
.pcore-det>dd div { font-size: .65rem; padding-left: 1rem }
.pro-adv { background-color: rgb(250,250,250) }
.padv-list { display: flex; flex-wrap: wrap; }
.padv-list li { display: flex; align-items: flex-start; padding-top: 1.25rem; padding-bottom: 1.25rem; }
.padv-list li>strong { width: 4rem; flex-shrink: 0; }
.padv-list li>div { padding-left: 1.25rem; }
.padv-list li>div h4 { padding-top: .25rem; padding-bottom: .25rem; }

.ser-list li { padding-top: 1.25rem; margin-bottom: 1.25rem; }
.ser-list li h4 { display: inline-block; font-size: 1.4rem; color: black; line-height: 1.5; margin-bottom: .75rem; border-bottom: 1px solid black; }

/* About */
.about-banner { background-color: rgb(232, 240, 244); }
.abcon-item { padding: 1.5rem; background-color: white; box-shadow: 0 2px 1px -1px rgba(0,0,0,.2), 0 1px 1px 0 rgba(0,0,0,.14), 0 1px 3px 0 rgba(0,0,0,.12); }
.abcon-item h4 { font-size: .95rem; margin-bottom: .5rem; line-height: 1.5; color: black; }
.abcon-email { margin-top: .75rem; padding-top: .5rem; border-top: 1px dashed var(--mute-light); }
.abcon-email img { width: .8rem; height: .8rem; margin-right: .35rem }
.abcon-email a { color: var(--primary); }

/* Solutions */
.solutions-banner .sban-info h3 { padding-bottom: .25rem; }
.sub-particles { position: absolute; z-index: 0; pointer-events: none; height: 11rem; width: 100%; left: 0; bottom: 0; }
.fixed-tn .sub-particles { display: none; }


.sinfh-det { max-width: 600px; margin-left: auto; margin-right: auto; }
.score-det { padding: 1.5rem 2.5rem; background-color: white; box-shadow: 0 2px 1px -1px rgba(0,0,0,.2), 0 1px 1px 0 rgba(0,0,0,.14), 0 1px 3px 0 rgba(0,0,0,.12); }
.score-nav a { line-height: 3; border-bottom: 2px solid transparent; padding: 0 1.2rem; color: black; }
.score-nav a.active { border-color: var(--primary); color: var(--primary) }
.desktop .score-nav a:hover { background-color: var(--silver) }

.score-txt { width: 18rem; flex-shrink: 0; border-left: 1px dashed var(--mute-light); padding-left: 1.25rem; padding-bottom: 2rem; margin-left: 2.5rem; }
.sct-overview { padding-bottom: 1rem; }
.score-txt>h4 { padding-top: .5rem; padding-bottom: .5rem; color: black; font-size: .75rem; font-weight: bold }
.sct-det>p { padding-left: 1rem; line-height: 1.6rem; background: url('/uploads/default/icon-compents-red.svg') no-repeat left .5rem; background-size: .6rem .6rem; }

/* common footer */
.main-footer { padding-top: 5rem; padding-bottom: 5rem; background-color: var(--link); background-image: url('/uploads/default/bg-footer.png'); background-size: auto 100%; }
.main-footer, .main-footer a { color: white; }
.main-footer a:hover { color: var(--primary); }
.main-footer dt { display: flex; align-items: center; font-size: 1rem; margin-bottom: .5rem; height: 2.4rem; line-height: 1; }

.footer-nav-menu { width: 50%; }
.fnm-item:not(:last-child) { padding-right: 5vw; }
.fnm-item a { display: flex; height: 1.75rem; align-items: center; font-size: .6rem; white-space: nowrap; }
.fnm-item a>em { line-height: 1.5;  }
.fnm-contact dd img { width: 5rem; margin-top: .7rem; }

.footer-contact { min-width: 25%; }
.footer-contact .hotline { line-height: 1; padding-left: .25rem; }
.gotop { position: absolute; right: 0; top: 0; color: var(--primary); border-radius: 100%; display: flex; align-items: center; line-height: 1; justify-content: center; width: 1.95rem; height: 1.95rem; border: 2px solid var(--primary); }
.gotop:hover { background-color: var(--primary); color: white; }
.gotop i { -webkit-font-smoothing: auto; }

.ftlink { margin-top: 1.75rem; margin-right: -3.5rem; flex-wrap: wrap; }
.ftlink a { white-space: nowrap; display: inline-block; line-height: 1; }
.ftlink a>em { line-height: 1rem; }
.footer-copyright { background: var(--primary) }
.footer-copyright, .footer-copyright a { color: rgb(142, 142, 142); }
.footer-copyright a:hover { color: white; }
.fcopy-con { padding-top: 1.25rem; padding-bottom: 1.25rem; }

.desktop body { overflow-y: scroll; }

.fc-social { padding-left: .5rem; }
.fc-social a { width: 2.4rem; height: 2.4rem; margin-left: 1rem; }
.fc-social a:hover { opacity: .65; }
.fc-qrcode>span { width: 8.2rem; }
.fc-qrcode>span:not(:last-child) { margin-right: 2rem; }

/* news */
.news-list .ratio-3-1 { padding-top: 90%; }
.news-list .newsi-txt { transition: opacity .5s ease; color: white; background-color: rgba(4, 50, 48, .85); padding: 2rem; opacity: 0; position: absolute; width: 100%; height: 100%; left: 0; top: 0; z-index: 2; display: flex!important; flex-direction: column; align-items: center; justify-content: center; }
.news-list .date { padding-top: .25rem; }
.news-list a:hover .newsi-txt { opacity: 1; }

.pager-list { justify-content: flex-end; align-items: center; }
.pager-list a { display: flex; align-items: center; justify-content: center; font-family: "Arial"; font-size: .6rem; margin-left: 1px; margin-right: 1px; min-width: 1.6rem; height: 1.3rem; line-height: 1.3rem; text-align: center; color: rgb(128, 128, 128) }
.pager-list a.active { background: url("/uploads/default/water.svg") no-repeat center center; background-size: auto 100%; color: white!important }
.pager-list a:hover { color: var(--light); }
.pager-list .pager-prev, .pager-list .pager-next { font-size: 1rem; color: var(--primary); margin-left: .25rem; margin-right: .25rem; }

#map img { max-width: initial; max-height: initial; height: initial; vertical-align: initial; }
#map label { max-width: unset; }


/* search */
.search-title { padding-bottom: 1.5rem; margin-bottom: 1.5rem; border-bottom: 1px dashed var(--primary) }
.search-title h3 { font-family: 'ikeasbi'; font-size: 1.7rem; }
.search-products .subject { margin-top: .5rem; color: var(--primary); display: inline-block; line-height: 1.5rem; border-radius: .75rem; padding-left: 1.5rem; padding-right: 1.5rem; font-size: .85rem; border: 1px solid var(--primary);  }
.search-products .overview { color: var(--primary); font-family: var(--font-system); font-size: .7rem; }
.search-list a { margin-top: 1rem; margin-bottom: 1rem; padding-bottom: 1rem; }
.search-list a:hover { background-color: rgb(248, 248, 248); box-shadow: .35rem .35rem .75rem rgba(0, 0, 0, .1) }
.search-list a:hover .subject, .search-list a:hover .overview { color: var(--mute); border-color: var(--mute); }
.search-count { align-items: flex-end; justify-content: space-between; }


/* othes */
.fancybox-content { background-color: white!important; }

/* Form */
input { outline: none!important; }
input[type="text"], textarea { transition: border .5s ease; font-size: .65rem; padding: 0 .8rem; font-weight: 400; font-family: "Arial"; line-height: 2.8rem; border: 1px solid rgb(198, 198, 198); background-color: white; z-index: 1; }
input[type="text"] { line-height: .9rem; padding-top: .9rem; padding-bottom: .9rem; }
input[type="text"].error, textarea.error, input[type="text"]:focus, textarea:focus { border-color: var(--primary); }
::-webkit-input-placeholder { color: rgb(157, 157, 157); }
:-moz-placeholder { color: rgb(157, 157, 157); }
::-moz-placeholder { color: rgb(157, 157, 157); }
:-ms-input-placeholder { color: rgb(157, 157, 157); }
.form-message { font-size: 0; line-height: 0; z-index: -9; display: none; visibility: hidden; height: 0; }
input[type="radio"], input[type="checkbox"] { display: inline-block; }
input[type="checkbox"], input[type="radio"] { margin: 0; position: relative; width: .65rem; height: .65rem; padding: 0; vertical-align: middle; border: 0; background: transparent; -webkit-appearance: none; -moz-appearance: none; appearance: none; }
input[type="checkbox"]:before, input[type="radio"]:before { transition: all .5s; font-family: "cxany"; font-size: .75rem; line-height: .75rem; border: 1px solid rgb(128, 128, 128); position: absolute; top: -.1rem; left: 0; display: block; overflow: hidden; width: 100%; height: 100%; content: ""; text-align: center; }
input[type="checkbox"]:checked:before, input[type="radio"]:checked:before { content: ""; color: white; background-color: rgb(30, 80, 164); border: 0; }
input[type="checkbox"]:disabled:before, input[type="radio"]:disabled:before { color: rgb(103, 134, 157); background-color: rgb(235, 240, 242); }
input:focus::-webkit-input-placeholder { color: rgba(0, 0, 0, .35); }
input:focus:-moz-placeholder { color: rgba(0, 0, 0, .35); }
input:focus::-moz-placeholder { color: rgba(0, 0, 0, .35); }
input:focus:-ms-input-placeholder { color: rgba(0, 0, 0, .35); }
textarea:focus::-webkit-input-placeholder { color: rgba(0, 0, 0, .35); }
textarea:focus:-moz-placeholder { color: rgba(0, 0, 0, .35); }
textarea:focus::-moz-placeholder { color: rgba(0, 0, 0, .35); }
textarea:focus:-ms-input-placeholder { color: rgba(0, 0, 0, .35); }
::selection { background: var(--red); color: white; }
::selection { background: rgba(255, 87, 20, .8); color: white; }
ins[data-type="screen"] { display: none; content: "xs"; }
@media (min-width:768px) {
  ins[data-type="screen"] { content: "sm"; }
}
@media (min-width:992px) {
  ins[data-type="screen"] { content: "md"; }
}
@media (min-width:1200px) {
  ins[data-type="screen"] { content: "lg"; }
}
@media (min-width:1400px) {
  ins[data-type="screen"] { content: "lg xl"; }
}
