@charset "UTF-8";
.part__item, .part__img img, .part__info {
	-webkit-transition: all 300ms cubic-bezier(0.42, 0, 0.58, 1);
	-o-transition: all 300ms cubic-bezier(0.42, 0, 0.58, 1);
	transition: all 300ms cubic-bezier(0.42, 0, 0.58, 1);
}

/*banner*/
.banner {
	width: 100%;
	position: relative;
	line-height: 0;
	z-index: 2;
}

.banner .slick-arrow {
	width: 40px;
	height: 40px;
	margin: auto;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 5;
	cursor: pointer;
}

.banner .slick-arrow i {
	font-size: 30px;
	line-height: 40px;
	color: #fff;
	opacity: 0.5;
}

.banner .slick-arrow:hover i {
	opacity: 1;
	-webkit-transition: opacity .3s ease-out;
	-o-transition: opacity .3s ease-out;
	transition: opacity .3s ease-out;
}

.banner .slick-dots {
	width: 100%;
	padding: 15px 0;
	text-align: center;
	background-color: #fff;
}

.banner .slick-dots li {
	width: 20px;
	height: 40px;
	margin: 0 5px;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-ms-flex-line-pack: center;
	    align-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	vertical-align: middle;
	cursor: pointer;
}

.banner .slick-dots li span {
	width: 100%;
	height: 2px;
	background-color: #c8c8c8;
	display: block;
	-webkit-transition: background-color .5s ease-out;
	-o-transition: background-color .5s ease-out;
	transition: background-color .5s ease-out;
}

.banner .slick-dots .slick-active span {
	background-color: #2F5597;
}

.banner .prev {
	left: 0;
	background: transparent;
}

.banner .prev::after {
	color: #fff !important;
}

.banner .next {
	right: 10px;
	background: transparent;
}

.banner .next::after {
	color: #fff !important;
}

.banner__link {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 3;
}

.banner__image {
	width: 100%;
	padding-bottom: 37.5%;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.banner__image picture {
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	-webkit-transform: scale(1.08);
	    -ms-transform: scale(1.08);
	        transform: scale(1.08);
	-webkit-transition: all 4s ease;
	-o-transition: all 4s ease;
	transition: all 4s ease;
	z-index: 1;
}

.banner__image img {
	width: 100%;
	height: 100%;
	display: block;
	-o-object-fit: cover;
	   object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
}

.banner__image::after {
	content: '';
	width: 100%;
	height: 100%;
	background-color: #252525;
	opacity: 0.1;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

.banner__word {
	width: 100%;
	height: 100%;
	padding: 15px 40px;
	-ms-flex-line-pack: center;
	    align-content: center;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

.banner__word-box {
	width: 49.875%;
	padding: 0 0 0 3%;
	position: relative;
}

.banner__title, .banner__text {
	-webkit-transition: all 0.8s cubic-bezier(0.32, 0.34, 0, 1.62);
	-o-transition: all 0.8s cubic-bezier(0.32, 0.34, 0, 1.62);
	transition: all 0.8s cubic-bezier(0.32, 0.34, 0, 1.62);
}

.banner__title {
	margin-bottom: 10px;
	padding: 10px 0;
	display: inline-block;
	letter-spacing: 0;
	font-weight: 700;
	font-size: 55px;
	font-size: 3.143rem;
	line-height: 3.429rem;
	opacity: 0;
	-webkit-transform: translateX(-50px);
	    -ms-transform: translateX(-50px);
	        transform: translateX(-50px);
}

.banner__text {
	width: 100%;
	font-size: 20px;
	font-size: 1.143rem;
	line-height: 1.714rem;
	letter-spacing: normal;
	opacity: 0;
	-webkit-transform: translateX(-50px);
	    -ms-transform: translateX(-50px);
	        transform: translateX(-50px);
}

.banner .slick-active .banner__image picture {
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
}

.banner .slick-active .banner__word .banner__word-box .banner__title, .banner .slick-active .banner__word .banner__word-box .banner__text {
	opacity: 1;
	-webkit-transform: translateY(0);
	    -ms-transform: translateY(0);
	        transform: translateY(0);
}

.banner .slick-active .banner__word .banner__word-box .banner__title {
	-webkit-transition: all 0.5s cubic-bezier(0.32, 0.34, 0, 1.62) 0.5s;
	-o-transition: all 0.5s cubic-bezier(0.32, 0.34, 0, 1.62) 0.5s;
	transition: all 0.5s cubic-bezier(0.32, 0.34, 0, 1.62) 0.5s;
}

.banner .slick-active .banner__word .banner__word-box .banner__text {
	-webkit-transition: all 0.5s cubic-bezier(0.32, 0.34, 0, 1.62) 0.8s;
	-o-transition: all 0.5s cubic-bezier(0.32, 0.34, 0, 1.62) 0.8s;
	transition: all 0.5s cubic-bezier(0.32, 0.34, 0, 1.62) 0.8s;
}

@media only screen and (max-width: 1280px) {
	.show::before {
		display: none;
	}
	.banner {
		width: 100%;
		padding: 0;
		margin-left: 0;
	}
	.banner__word-box {
		padding: 0;
	}
	.banner__title {
		font-size: 35px;
		font-size: 2rem;
		line-height: 2.286rem;
		margin-bottom: 0px;
	}
	.banner__text {
		font-size: 18px;
		font-size: 1.029rem;
		line-height: 1.543rem;
	}
}

@media only screen and (max-width: 768px) {
	.banner__word {
		padding: 30px 40px;
		-ms-flex-line-pack: start;
		    align-content: flex-start;
		-webkit-box-align: start;
		    -ms-flex-align: start;
		        align-items: flex-start;
	}
	.banner__word-box {
		width: 100%;
		padding: 0;
	}
	.banner__image {
		padding-bottom: 133.3333%;
	}
	.banner__title {
		font-size: 50px;
		font-size: 2.857rem;
		line-height: 3.429rem;
	}
	.banner__text {
		font-size: 20px;
		font-size: 1.143rem;
		line-height: 1.714rem;
	}
}

@media only screen and (max-width: 480px) {
	.banner__title {
		font-size: 35px;
		font-size: 2rem;
		line-height: 2.286rem;
		font-weight: 700;
	}
	.banner__text {
		font-size: 18px;
		font-size: 1.029rem;
		line-height: 1.543rem;
	}
}

/*banner---end*/
/*====從這開始====*/
.company {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: -80px auto 90px;
	background: #fff;
	-webkit-box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
	        box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
	position: relative;
	z-index: 2;
}

.company__img {
	width: 40%;
}

.company__img img {
	display: block;
	width: 100%;
	height: 100%;
}

.company__info {
	width: 60%;
	padding: 50px 30px 30px;
	background-image: url("../../images/bg-01.jpg");
	background-position: left bottom;
	background-repeat: no-repeat;
}

.company__title {
	font-family: 'Montserrat';
	margin-bottom: 20px;
}

.company__txt {
	margin: 15px auto 20px;
}

@media only screen and (max-width: 1280px) {
	.company {
		margin: 50px auto;
	}
}

@media only screen and (max-width: 768px) {
	.company {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	.company__img {
		width: 100%;
	}
	.company__info {
		width: 100%;
		padding: 20px 15px;
	}
}

/*認證*/
.attest {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.attest__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: calc(100%/3 - 40px);
}

.attest__title {
	text-align: center;
	font-weight: 700;
	color: #005EAC;
	font-size: 22px;
	width: 100%;
	min-height: 66px;
}

.attest__img {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: 95px;
	height: 95px;
	border-radius: 99rem;
	background: #E3F1F8;
	margin: 20px auto;
}

.attest__txt {
	text-align: center;
}

@media only screen and (max-width: 768px) {
	.attest__item {
		width: 100%;
		margin-bottom: 40px;
	}
}

/*首頁產品區*/
.idx-product {
	padding-left: 20px;
	padding-right: 20px;
	margin: 100px auto;
	background-image: url("../../images/bg-world.jpg");
	background-position: 50% top;
	background-repeat: no-repeat;
}

@media only screen and (max-width: 768px) {
	.idx-product {
		margin: 60px auto 0;
	}
}

/*首頁藍區*/
.idx-page {
	background-image: url(../../images/bg-02.png), url(../../images/bg-03.png), -o-linear-gradient(315deg, #005eac 0%, #043c85 50%, #005eac 100%);
	background-image: url(../../images/bg-02.png), url(../../images/bg-03.png), linear-gradient(135deg, #005eac 0%, #043c85 50%, #005eac 100%);
	background-position: top right, left bottom, left;
	background-repeat: no-repeat, no-repeat, no-repeat;
}

/*數字*/
.show__slogan {
	text-align: center;
	color: #fff;
}

.show__main {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 85%;
	margin: 30px auto 50px;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}

.show__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	text-align: center;
}

.show__title {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	padding: 0 30px;
	width: 100%;
	font-family: "Montserrat";
	color: #fff;
	font-size: clamp(34px, 4vw, 64px);
	line-height: 64px;
	text-align: center;
	font-weight: 700;
	margin: auto;
}

.show__title::after {
	content: attr(title);
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	font-size: 36px;
	color: #fff;
}

.show__tip {
	width: 100%;
	font-size: 18px;
	color: #9DD0DF;
}

@media only screen and (max-width: 1024px) {
	.show__main {
		width: 100%;
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
	}
	.show__item {
		width: 25%;
	}
}

@media only screen and (max-width: 768px) {
	.show__item {
		width: 50%;
	}
}

@media only screen and (max-width: 640px) {
	.show__item {
		width: 100%;
	}
}

/*首頁聯絡*/
.service {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	background: #539EFF url(../../images/bg-logo.png) right bottom no-repeat;
}

.service__main {
	padding: 50px 100px 0;
	width: 55%;
	color: #fff;
}

.service__img {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	overflow: hidden;
	padding-bottom: 37%;
	width: 45%;
}

.service__img img {
	-o-object-fit: cover;
	   object-fit: cover;
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
}

@media only screen and (max-width: 1920px) {
	.service__img {
		padding-bottom: 40%;
	}
}

@media only screen and (max-width: 1550px) {
	.service__main {
		padding: 0 50px 0;
	}
	.service__img {
		padding-bottom: 55%;
	}
}

@media only screen and (max-width: 1366px) {
	.service__img {
		padding-bottom: 70%;
	}
}

@media only screen and (max-width: 1024px) {
	.service__main {
		padding: 30px;
		width: 100%;
	}
	.service__img {
		width: 100%;
		padding-bottom: 20%;
	}
}

@media only screen and (max-width: 640px) {
	.service__main {
		padding: 0;
	}
}

.part {
	display: block;
	position: relative;
	padding-left: 20%;
}

.part .slick-slide {
	margin-right: 20px;
}

.part > .next {
	left: 100px !important;
}

.part::before {
	content: attr(title);
	font-size: clamp(25px, 3vw, 40px);
	font-weight: 700;
	color: #fff;
	position: absolute;
	left: 0;
	top: 0;
}

.part__item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	background: #fff;
}

.part__item::before {
	content: attr(title);
	width: 88px;
	height: 88px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	background-image: url("../../images/pic-three.png");
	background-position: left top;
	background-repeat: no-repeat;
	font-family: "Ubuntu";
	color: #fff;
	font-size: clamp(25px, 3vw, 40px);
	padding: 7px 0 0 7px;
	pointer-events: none;
}

.part__item:hover::before {
	background-image: url("../../images/pic-three2.png");
	background-position: left top;
	background-repeat: no-repeat;
}

.part__item:hover img {
	-webkit-transform: scale(0.95);
	    -ms-transform: scale(0.95);
	        transform: scale(0.95);
}

.part__item:hover .part__info {
	background: #177069;
	color: #fff;
}

.part__item:hover .part__title {
	color: #fff;
}

.part__img {
	padding-bottom: 120%;
	display: block;
	position: relative;
	overflow: hidden;
	width: 100%;
}

.part__img img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
}

.part__info {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	text-align: center;
	padding: 10px;
}

.part__title {
	width: 100%;
	color: #0B7AB7;
	font-size: 22px;
	font-size: 1.257rem;
	line-height: 1.486rem;
	font-weight: 700;
}

.part__subtip {
	width: 100%;
	font-size: 18px;
	font-size: 1.029rem;
	line-height: 1.371rem;
}

.part__icon {
	position: absolute;
	left: 0;
	top: 330px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	width: 130px;
	height: 45px;
	color: #fff;
	font-size: 18px;
	border-radius: 99rem;
	background: #0B7AB7;
}

.part__icon:hover {
	background: #333;
	color: #fff;
}

@media only screen and (max-width: 1280px) {
	.hot-page {
		padding: 80px 20px;
	}
}

@media only screen and (max-width: 1024px) {
	.hot-page {
		padding: 40px 20px;
	}
	.part {
		padding-left: 0;
	}
	.part .slick-slide {
		margin: auto 10px;
	}
	.part::before {
		position: inherit;
		display: block;
		margin-bottom: 10px;
	}
	.part > .next {
		left: inherit !important;
		right: 15px !important;
		top: 0;
	}
	.part > .prev {
		left: inherit;
		right: 130px;
		top: 0;
	}
	.part__icon {
		display: none;
	}
}

.file {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
}

.file .slick-slide {
	margin: auto 20px;
}

.file__show {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-align: start;
	    -ms-flex-align: start;
	        align-items: flex-start;
	width: 33.333%;
}

.file__txt {
	width: 100%;
	margin-top: 15px;
	font-size: 18px;
}

.file__page {
	width: 66.666%;
	padding-top: 60px;
}

.file__item {
	border-radius: 10px;
	overflow: hidden;
	-webkit-transition: 0.4s ease-in-out;
	-o-transition: 0.4s ease-in-out;
	transition: 0.4s ease-in-out;
	border: 1px solid #E6E6E6;
}

.file__item a {
	padding: 35px 15px 35px 83px;
	display: block;
	position: relative;
	font-weight: 700;
	color: #214B95;
	background: #fff url("../../images/icon-08.svg") 15px 50% no-repeat;
}

.file__item a:hover {
	background: #3D5374 url("../../images/icon-08.svg") 15px 50% no-repeat;
	color: #fff;
}

@media only screen and (max-width: 768px) {
	.file .slick-slide {
		margin: auto 10px;
	}
	.file__show {
		width: 100%;
	}
	.file__page {
		padding-top: 30px;
		width: 100%;
	}
}
