body, html {
font-size: 16px;
font-weight: 300;
color: #2c2c2c;
}


@media screen and (max-width: 1080px) {
html{
font-size: 10px;
}
}

@media screen and (min-width: 1080px) and (max-width: 1400px) {
html{
font-size: 14px;
}
}

@media screen and (min-width: 1400px) and (max-width: 1920px) {
html{
font-size: 15px;
}
}

@media screen and (min-width: 1920px) {
html{
font-size: 16px;
}
}

@font-face{
font-family: CodaCaption;
src: url("CodaCaption-ExtraBold.ttf");
}


.logo { width: 100%; margin: 0px; position: fixed; z-index: 999; border-bottom: 1px solid rgba(255,255,255,0.6); overflow: hidden; transition: all 0.3s ease 0s; }
.logo .logo-box .logo_white { height: 3.6rem; padding: 0.6rem 0 0rem 2rem; }
.logo .logo-box .logo_color { height: 3.6rem; padding: 0.6rem 0 0rem 2rem; }
.logo .item { float: left; text-align: center; margin: 0rem 1.5rem 0rem 0rem; }
.logo .item .nav_font { color: #fff; line-height: 4.5rem; display: block; text-align: center; letter-spacing: 1px; font-size: 1rem; font-weight: 500; transition: all 0.4s ease 0s; }
.logo .item .line { width: 0px; background-color: #df1c18; height: .3rem; position: relative; top: 0px; transition: all 0.3s ease 0s;}
.logo .item:hover .line { width: 100%; transition: all 0.3s ease 0s; }
.logo .item:hover .nav_font { transform: translateY(-100%); transition: all 0.4s ease 0s; }
.logo .item:hover .nav_font::after { content: attr(title); position: absolute; top: 0; left: 0; transform: translateY(100%); width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: #e60013; transition: all 0.4s ease 0s; }
/* 特效变色logo */
.bg_white { background: #fff; transition: all 0.3s ease 0s; }
.logo .item .font_color { line-height: 4.5rem; color: #212121; transition: all 0.4s ease 0s; }

.nav_child { width: 100%; position: fixed; background-color: rgba(0,0,0,0.8); z-index: 9999; overflow: hidden; display: none; left: 0; }
.nav_child .nav_child_list { width: 95%; margin: 4rem auto; }
.nav_child .nav_fa_item { width: 10%; float: left; }
.nav_child .nav_fa_item h2 a { font-size: 1.2rem; color: #eee; font-weight: bold; line-height: 1.2rem; }
.nav_child .nav_fa_item .line { height: 2px; width: 3rem; background-color: #eee; margin: 1rem 0 1rem; }
.nav_child .nav_so_item a { font-size: .9rem; color: #9c9c9c; font-weight: bold; line-height: 1.8rem; } 
.nav_child .nav_so_item a:hover { color: #fff; }

.mod_title { margin-bottom: 2rem; }
.mod_title h1 { font-size: 1.8rem; line-height: 1.8rem; color: #4c4c4c; font-weight: bold; }
.mod_title h1 span { color: #055eab; font-weight: bold; }
.mod_title svg { width: 1.8rem; height: 1.8rem; margin-right: .5rem; position: relative; top: .3rem; }
.mod_title font { width: 1px; height: 1.9rem; background-color: #4c4c4c; display: inline-block; position: relative; top: .25rem; margin: 0 .3rem; background: radial-gradient(#212121, #eee); }
.mod_title .line { width: 3rem; height: 2px; background: #ff9800; margin: 1.2rem 0; }
.mod_title p { font-size: .9rem; line-height: .9rem; color: #6c6c6c; }
.mod_title p span { color: #ff9800; }

.wrap { width: 85%; margin: 0 auto; max-width: 1600px; }

.about { background: url("about_bg.png") center top no-repeat; background-size: cover; padding: 6rem 0px; margin: 0px; }
.about .box_01 { width: 64.5%; cursor: pointer; float: left; overflow: hidden; position: relative; }
.about .box_01 img { width: 100%; }
.about .box_01 .info { position: absolute; width: 100%; height: 100%; background: rgba(0,0,0,0.5); top: 0; }
.about .box_01 .info::before { content: ""; display: block; width: 100%; height: 100%; background: rgba(5,94,171,0.8); bottom: -100%; position: relative; transition: all 0.5s ease 0s; }
.about .box_01:hover .info::before { bottom: 0; transition: all 0.5s ease 0s; }
.about .box_01 .info .font { position: absolute; top: 50%; left: 20%; transform: translate(-15%, -50%); }
.about .box_01 .info h2 { font-size: 1.8rem; line-height: 1.6rem; font-weight: bold; color: #fff; }
.about .box_01 .info .line { width: 3rem; height: 3px; margin: 1.5rem 0rem; background: #fff; }
.about .box_01 .info p { font-size: 1rem; line-height: 2rem; color: #fff; }
.about .box_01 .info a { display: inline-block; width: 10rem; border: 2px solid #fff; color: #fff; text-align: center; font-size: 1rem; line-height: 2.5rem; margin-top: 2rem; transition: all 0.3s ease 0s; }
.about .box_01 .info a svg { width: 30px; height: 22px; position: relative; top: 6px; }
.about .box_01 .info a:hover { background: #fff; color: #212121; transition: all 0.3s ease 0s; }
.about .box_01 .info a:hover svg path { fill: #212121 !important; background-color: #212121 !important; color: #212121 !important; }
#lightcase-case video { width: 800px !important; height: 450px !important; }
.about .box_02 { width: 34.5%; float: right; }
.about .box_02 div img { width: 100%; }
.about .box_02_item { margin-bottom: 1.25rem; border-radius: 3px; cursor: pointer; overflow: hidden; position: relative; }
.about .box_02_item .info { position: absolute; width: 100%; height: 100%; background: rgba(0,0,0,0.5); top: 0; }
.about .box_02_item .info::before { content: ""; display: block; width: 100%; height: 100%; background: rgba(5,94,171,0.8); left: -100%; position: relative; transition: all 0.5s ease 0s; }
.about .box_02_item:hover .info::before { left: 0; transition: all 0.5s ease 0s; }
.about .box_02_item .info .font { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.about .box_02_item .info h3 { font-size: 1.5rem; line-height: 3rem; font-weight: bold; color: #fff; }
.about .box_02_item .info p { font-size: .8rem; line-height: .8rem; color: #fff; text-align: center; }
.about .box_02_item .info .icon { text-align: center; }
.about .box_02_item .info svg { width: 50px; height: 50px; }

.product { margin: 6rem 0px; }
.product .list { margin: 3rem 0px 5rem; }
.product .list .item { float: left; margin-left: 10px; border: 1px solid #efefef; position: relative; }
.product .list .item:first-child { margin-left: 0px; }
.product .list .thumb { height: 16rem; display: table-cell; vertical-align: middle; text-align: center; }
.product .list img { max-width: 90%; max-height: 90%; }
.product .item .focus { width: 100%; background: rgba(5,94,171,0.8); height: 0px; position: absolute; bottom: 0px;  transition: all 0.5s ease 0s; overflow: hidden; }
.product .item:hover .focus { height: 100%; transition: all 0.5s ease 0s; }
.product .focus h1, .product .focus p { text-align: center; font-size: .8rem; color: #fff; }
.product .focus h1 { margin-top: 66px; font-size: .8rem; line-height: 1.2rem; }
.product .focus p { display: block; width: 9rem; line-height: 2rem; font-size: .8rem; border: 1px solid #fff; text-align: center; margin: 0 auto; margin-top: 10px; }
.product #scroll-mod { overflow:hidden; width: 100%; }
.product #scroll-rom { float: left; width: 2000%; }
.product #scroll-rom-1 { float: left; }
.product #scroll-rom-2 { float: left; margin-left: 10px; }

.news { background: url("news_bg.png")  center top no-repeat; background-size: cover; padding: 6rem 0px 7rem; margin: 0px; }
.news .mod_title a:hover { color: #1047a1; }
.news .news_layout { margin-top: 3rem; }
.news .list_01 .item { float: left; width: 31.5%; margin-left: 1.8rem; }
.news .list_01 .item:first-child { margin-left: 0px; }
.news .list_01 .item .pic { position: relative; display: block; height: 0; padding: 0; overflow: hidden; padding-bottom: 60%; }
.news .list_01 .item .pic img { position: absolute; object-fit: cover; width: 100%; height: 100%; border: 0; vertical-align: middle; transition: all 0.5s ease 0s; }
.news .list_01 .item:hover img { -webkit-transform: scale(1.8); transform: scale(1.8); transition: all 0.5s ease 0s; } 
.news .list_01 .item .info { background: #fff; padding: 1.5rem 1rem; transition: all 0.5s ease 0s; }
.news .list_01 .item:hover .info { background: #1047a1; transition: all 0.5s ease 0s; }
.news .list_01 .item .date { font-size: .8rem; color: #999; line-height: .8rem; margin-bottom: .6rem; }
.news .list_01 .item:hover .info * { color: #fff; transition: all 0.5s ease 0s; }
.news .list_01 .item:hover .info .line { background-color: #fff; }
.news .list_01 .item:hover .more { color: #1047a1; background-color: #fff; }
.news .list_01 .item .title { width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.news .list_01 .item .title a { font-size: 1.2rem; color: #4c4c4c; font-weight: bold; line-height: 1.2rem; }
.news .list_01 .item .line { width: 50px; height: 1px; background: #4c4c4c; margin: .8rem 0;  }
.news .list_01 .item .sub { font-size: .9rem; color: #969696; line-height: 1.5rem; margin-bottom: 10px; }
.news .list_01 .item .more { font-size: .8rem; line-height: 36px; width: 9rem; display: block; text-align: center; background-color: #055eab; color: #fff; }

.news .list_02 { margin-top: 1rem; }
.news .list_02 .item { width: 49%; float: left; background: #fff; margin-top: 1rem; margin-left: .8rem; padding: 1rem 0; transition: all 0.5s ease 0s; }
.news .list_02 .item:nth-child(2n+1) { margin-left: 0rem; }
.news .list_02 .date { width: 6rem; height: 3.6rem; float: left; display: flex; justify-content: center; align-items: center; }
.news .list_02 .date p { color: #4c4c4c; text-align: center; }
.news .list_02 .day { font-size: 1.8rem; font-family: "CodaCaption"; font-weight: bold; line-height: 2rem; margin-bottom: .3rem; }
.news .list_02 .month { font-size: .6rem; line-height: .6rem; }

.news .list_02 .con { float: left; width: 28rem; }
.news .list_02 .con .tt { width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.news .list_02 .con .tt a { font-size: 1.3rem; line-height: 3.6rem; font-weight: bold; color: #4c4c4c; }
.news .list_02 .item:hover { background: #1047a1; transition: all 0.5s ease 0s; }
.news .list_02 .item:hover p, .news .list_02 .item:hover a { color: #fff; }

.project { background: url("project_bg.jpeg") center bottom no-repeat; padding: 7rem 0px; margin-bottom: 0px; background-size: 100%; }
.project .wrap { max-width: 1440px; }
.project .list { position: relative; top: -3rem; }
.project .item { width: 24%; margin-left: 1%; float: left; position: relative; box-shadow:inset 0 0 0 2000px rgba(0, 0, 0, 0.2); border-radius: 5px; cursor: pointer; transition: all 0.5s ease 0s; }
.project .item .item_skin { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); } 
.project .item:hover { margin-top: -20px; transition: all 0.5s ease 0s; }
.project .item h2 { font-size: 1.6rem; color: #fff; text-align: center; line-height: 5rem; }
.project .item .icon { display: flex; justify-content: center; align-items: center; }
.project .item .icon svg { width: 3rem; height: 3rem; }
.project .item:nth-child(1) { background: url("project_01.png") center top no-repeat;  background-size: 100% auto; padding-top: 24%; height: 0px; margin-left: 0; }
.project .item:nth-child(2) { background: url("project_02.png") center top no-repeat;  background-size: 100% auto; padding-top: 24%; height: 0px; }
.project .item:nth-child(3) { background: url("project_03.png") center top no-repeat;  background-size: 100% auto; padding-top: 24%; height: 0px; }
.project .item:nth-child(4) { background: url("project_04.png") center top no-repeat;  background-size: 100% auto; padding-top: 24%; height: 0px; }

.partner .list { padding: 20px 0px; }
.partner .list .item { width: 15%; margin-left: 1.5%; display: inline-block; cursor: pointer; }
.partner .list .item:nth-child(6n+1) { margin-left: 0%; }
.partner .list .item .pic { position: relative; display: block; height: 0; padding: 0; overflow: hidden; padding-bottom: 45%; border: 1px solid #eee;  }
.partner .list .item img { position: absolute; object-fit: cover; width: 100%; height: 100%; border: 0; vertical-align: middle; filter: grayscale(100%); -webkit-filter: grayscale(100%); -moz-filter: grayscale(100%); -ms-filter: grayscale(100%); -o-filter: grayscale(100%); transition: all 0.3s ease 0s; transition: all 0.3s ease 0s; }
.partner .list .item:hover img { filter: grayscale(0%); -webkit-filter: grayscale(0%); -moz-filter: grayscale(0%); -ms-filter: grayscale(0%); -o-filter: grayscale(0%); transition: all 0.3s ease 0s; }