@import url('../css-assets/-40c303c1.bin');
@charset "utf-8";
:root {
	--base-text-color: #666;
    --base-bg-color: #fff;

	--main-color-A: #bbb;
	--main-color-Aa: #ddd;
	--minor-color-B: #1773C6; /**/
	--minor-color-Bb: #E94B41;
	--main-grayC-color: #ddd;
	--main-grayCc-color: #ebebeb;

	--menu-text-color: #333;
    --menu-bg-color: rgba(255,255,255,.95);
    --menu-subbg-color: #ebebeb;

    --light-blue: #71B8E5;
}


body {
    font-size: 110%;
}
.tb-page-container {
/****  full-width y/n  ****/
    margin: 0 auto;
}
.tb-page-container .page-outer-space {
	padding: 60px 0 50px 0; 
}
.tb-nav-container ul {
	background-color: transparent;
}
.tb-nav-container ul ul {
	background-color: #fff;
}
.tb-category-newsTitle {
	display: none;
	color: #10488E;
}
.tb-category-newsTitle:before {
    background-color: #61C1B4;
}
.tb-page-l-wrap .tb-page-category-list li.active a {
	background-color: #fff;
	color: #333;
}
.tb-sidebar-menu {
	background: rgb(49,171,191);
	background: linear-gradient(270deg, rgba(49,171,191,1) 6%, rgba(48,119,157,1) 22%, rgba(16,71,142,1) 58%);
}
.hover-effect .item .pic .more-name:before {
	background-color: #111;
}
.hover-effect .item .pic .more-name {
	display: none;
	color: #fff;
}
.hover-effect .item .pic .more-name:after {
	background-color: #fff;
}
.other-related-wrap .slick-arrow {
	background-color: #10478E;
}
.other-related-title:before {
	background-color: #eee;
}
@media only screen and (max-width: 992px) {
	.tb-page-category-list li.active a {
		background: #fff;
		color: #333;
	}
	@media only screen and (max-width: 768px) {
		.tb-nav-container ul {
			background-color: #efefef;
		}
	}
}


/* menu */
.burger-button {
	right: 0;
	left: initial;
	z-index: 151;
}
.burger-button:after {
	border-top-color: var(--minor-color-B);
	border-bottom-color: var(--minor-color-B); 
}
.burger-button:before,
.burger-button.menu-opened:before,
.burger-button.menu-opened:after {
	background: var(--minor-color-B);
}
#tb-rightside-menuList {
	z-index: 1001;
}
.tb-nav-container ul > li.has-sub .submenu-button:before {
	/*color: var(--minor-color-B);*/
}
.tb-header {
	height: 120px;
	background: rgba(255, 255, 255, .95);
    box-shadow: 0 0px 15px rgba(0, 0, 0, .3);
}
.tb-main-cont {
	margin-top: 120px;
}
.tb-logo-box {
	width: 35%;
	max-width: 350px;
	margin-top: 19px;
	margin-bottom: 19px;
	margin-left: 0;
	margin-right: 5%;
}
.tb-nav-container ul {
	position: relative;
	margin-top: 44px;
}
.tb-nav-container > ul {
	float: left;
	width: 45%;
}
.tb-nav-container ul li {
	position: relative;
}
/*.tb-nav-container ul li:last-child {
	display: none;
}*/
.tb-nav-container ul li a {
	color: #333;
	font-size: 1.1rem;
}
.tb-nav-container ul li a span {
	display: none;
}
.tb-nav-container ul ul {
	margin-top: -1px;
}
.tb-nav-container ul ul li:last-child {
	display: block;
}
.tb-nav-container ul li:hover a  {
	border-bottom: 5px solid #85C9FB;
}
/*.tb-nav-container > ul > li:hover > a, .tb-nav-container ul li.active a {
    color: #124D8A;
}*/
.tb-nav-container ul li:hover ul li {
    border-bottom: 1px solid #eee;
}
.tb-nav-container ul li:hover ul li:hover a {
	color: #237AC9;
    background: #EDF6FC;
}
/*.tb-nav-container > ul > li:last-child {
	display: none;
}*/
.tb-nav-container ul ul li a {
	font-size: 1rem;
}
@media only screen and (max-width: 1700px) {
	.tb-nav-container > ul {
		width: 55%;
	}
	@media only screen and (max-width: 1400px) {
		.tb-nav-container > ul {
			width: 60%;
		}
		@media only screen and (max-width: 1200px) {
			.tb-main-cont {
				margin-top: 136px;
			}
			.tb-header {
				height: 136px;
			}
			.tb-logo-box {
				width: 280px;
				margin: 10px auto;
			}
			.tb-nav-container > ul {
				width: 100%;
			}
			.tb-nav-container ul {
				margin-top: 0;
			}
			.tb-nav-container ul li a span {
				padding-top: 0;
				padding-bottom: 5px;
			}
			.tb-nav-container > ul > li > a {
				padding-left: 13px;
				padding-right: 13px;
			}
			@media only screen and (max-width: 992px) {
				.tb-nav-container > ul > li:last-child {
					display: inline-block;
				}
				@media only screen and (max-width: 768px) {
					.tb-main-cont {
						margin-top: 60px;
					}
					.tb-header {
						width: 100%;
						margin: auto;
						height: 60px;
					}
					.tb-logo-box {                        
						width: 195px;
                        height: 30px;
					}
					.burger-button {
		    			top: 50%;
					}
					.tb-nav-container ul {
						position: fixed;
						left: 0;
						top: 0;
						padding-left: 15%;
						padding-right: 15%;
						padding-top: 80px; /* header's height */
						padding-bottom: 20px;
						width: 100%;
						background-color: #fff;
						box-shadow: 0 3px 6px rgba(0,0,0,.16);
						/*border-radius: 0 0 80px 80px;
						z-index: 150;*/
					}
					.tb-nav-container ul li {
						padding-left: 5%;
					}
					.tb-nav-container ul li:last-child {
						display: block;
					}
					.tb-nav-container ul > li.has-sub .submenu-button {
			            height: 50px;
			            width: 50px;
			        }
					.tb-nav-container ul li a span {
						position: absolute;
						left: 90px;
						font-size: 12px;
						bottom: 10px;
					}
					.tb-nav-container ul ul {
						padding-top: 0;
						padding-bottom: 10px;
						padding-left: 20px;
						box-shadow: none;
						border-radius: 0;
						/*background: rgb(252,252,252);
						background: linear-gradient(90deg, rgba(252,252,252,1) 0%, rgba(255,255,255,1) 100%);*/
					}
					.tb-nav-container ul li:hover > ul {
						box-shadow: none;
					}
					.tb-nav-container ul li:hover ul li {
						border: none;
					}
					.tb-nav-container ul ul ul li a {
						padding-left: 0;
					}
					.tb-nav-container ul li:hover a {
						border-bottom-width: 0;
					}
					.tb-nav-container > ul > li > a {
						color: #333;
					}
					.tb-nav-container > ul > li:hover > a, 
					.tb-nav-container ul li.active a {
					    color: #124D8A;
					}
					.tb-nav-container ul ul li:hover a , 
					.tb-nav-container ul ul li.active a {
						color: #3C8CCB;
					}
				}
			}
		}
	}
}


/* common */
.tb-page-category-list {
	z-index: 11;
}
.tb-page-banner .pic {
	background-position: 53% bottom;
	max-height: 500px;
}
.tb-page-banner .pic:before {
	padding-bottom: 47vw;
	max-height: 500px;
	background: #1773c65c;
}

/* 案例主圖加深遮罩，讓白色案例標題在各種照片上都清楚可讀。 */
.zhaojie-case-page .tb-page-banner .pic {
    position: relative;
    overflow: hidden;
}

.zhaojie-case-page .tb-page-banner .pic:before {
    z-index: 1;
}

.zhaojie-case-page .tb-page-banner .pic:after {
    position: absolute;
    display: block;
    content: '';
    inset: 0;
    z-index: 2;
    background: rgba(0, 0, 0, .48);
}

.zhaojie-case-page .tb-page-banner .banner-txt {
    z-index: 3;
}
.banner-txt {
	position: absolute;
	top: 50%;
	left: 6vw;
	transform: translate(0,-50%) scale(.9);
}
.banner-txt .tb-subhead h1,
.banner-txt .tb-subhead h1 big,
.banner-txt .tb-subhead h2,
.banner-txt .tb-subhead h2 big,
.banner-txt p.focus {
	text-align: left;
	color: #fff;
}
.tb-subhead h2,
.tb-subhead h1 {
	position: relative;
	max-width: initial;
	width: 100%;
	color: #333;
	margin: 10px auto;
	text-align: center;
	letter-spacing: 3px;
	font-weight: bold;
	font-size: 1.5rem;
}
.tb-subhead h2 big,
.tb-subhead h1 big {
	position: relative;
	display: block;
	padding-bottom: 10px;
	color: #71BAE5;
	font-size: 2rem;
	line-height: 2rem;
	font-family: "Barlow", sans-serif;
	font-weight: 500;
}
.tb-subhead h2 small,
.tb-subhead h1 small {
	position: relative;
	color: #71BBE6;
	font-family: "Barlow", sans-serif;
	font-weight: 500;
}
.shadow {
	box-shadow: rgba(100, 100, 111, 0.3) 0px 7px 29px 0px;
}
.tb-news-list {
    min-height: 300px;
}
.half-box {
	position: relative;
	width: 100%;
}
#newsIn-page .page-outer-space .tb-news-article img {
	margin: 0;
}
.cover-link {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}
.en-font {
	font-family: "Barlow", sans-serif;
}
.ch-font {
	font-family: "思源宋體", "Noto Serif TC", serif;
}
i {
	font-style: normal;
}
.focus {
	color: #333;
	font-weight: 600;
	font-size: 1.3rem;
	line-height: 2.6rem;
	font-family: "思源宋體", "Noto Serif TC", serif;
}
.more-btn {
	position: relative;
	display: block;
	max-width: 300px;
	width: 90%;
	color: #fff;
    padding: 16px 0;
    padding-right: 58px;
	text-align: center;
	background-color: #1773C6;
	border-radius: 40px;
	transition: all .3s;
	overflow: hidden;
}
.more-btn:hover {
	background-color: #71bbe6;
	box-shadow: rgba(0, 0, 0, 0.5) 3px 3px 5px;
}
.more-btn:before {
	position: absolute;
	display: block;
	content: '';
	width: 46px;
    height: 46px;
    top: 8px;
    right: 12px;
	background: #fff;
	border-radius: 100%;
	transition: all .3s;
}
.more-btn:hover:before {
	background: #1773C6;
}
.more-btn:after {
    position: absolute;
    display: block;
    content: '';
    width: 16px;
    height: 16px;
    top: 23px;
    right: 30px;
    border-color: #1773C6;
    border-style: solid;
    border-width: 0 2px 2px 0;
    transition: opacity .2s;
    transform: rotate(-45deg);
	transition: all .3s;
}
.more-btn:hover:after {
    border-color: #fff;
}
.more-btn i {
	position: relative;
	transition: all .3s;
	z-index: 1;
}
.more-btn i.en-font {
	position: relative;
	display: inline-block;
	vertical-align: baseline;
	padding-left: 10px;
	font-weight: 500;
}
.more-btn:hover i {
	color: #fff;
}
.call-box {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.call-box a {
	position: relative;
	display: block;
	max-width: 305px;
	width: 98%;
    padding: 15px 0;
    padding-right: 50px;
    margin: 10px 1%;
    text-align: center;
    color: #fff;
	font-family: "Barlow", sans-serif;
	font-size: 1.5rem;
	font-weight: 500;
	border-radius: 60px;
	transition: all .3s;
}
.call-box a:hover {
	box-shadow: rgba(0, 0, 0, 0.5) 3px 3px 5px;
}
.call-box a.tel {
	background-color: #1773C6;
}
.call-box a.line {
	background-color: #77C25A;
}
.call-box a:before {
    position: absolute;
    display: block;
    content: '';
    width: 46px;
    height: 46px;
    top: 8px;
    right: 12px;
    background: #fff;
    border-radius: 100%;
    transition: all .3s;
}
.call-box a:after {
    position: absolute;
    display: block;
    content: '';
    width: 46px;
    height: 46px;
    top: 8px;
    right: 12px;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px;
    transition: all .3s;
}
.call-box a.tel:after {
	background-image: url(../css-assets/images/svg-phone-blue.svg);
}
.call-box a.line:after {
	background-image: url(../css-assets/images/svg-line.svg);
}
.w-2, .w-3, .w-4, .w-6, .w-7, .w-8 {
	position: relative;
	width: 90%;
	margin: 0 auto;
}
.tb-pager {
	position: relative;
	margin: 0 auto;
	padding: 30px 0;
}
.tb-pager li {
	width: 32px;
    height: 32px;
}
.tb-pager li a {
	color: #777;
	font-weight: 500;
	font-family: "Barlow", sans-serif;
}
.tb-pager li.active {
	border-radius: 100%;
	background-color: #1773C6;
}
.tb-pager li.active a {
	color: #fff;
	font-weight: 500;
}
.page-category-on {
	border: none;
	background: #71BBE6;
	background: linear-gradient(129deg, rgba(113, 187, 230, 1) 0%, rgba(23, 115, 198, 1) 76%);
}
#editor-article-page .tb-page-category {
	padding-top: 30px;
}
@media only screen and (min-width: 559px) {
	@media only screen and (min-width: 600px) {
		.call-box a {
			width: 48%;
		}
		@media only screen and (min-width: 768px) {
			@media only screen and (min-width: 992px) {
				.tb-page-banner .pic:before {
				    padding-bottom: 38vw;
					background: transparent;
				}
				.half-box {
					width: 50%;
				}
				.tb-subhead h2,
				.tb-subhead h1 {
					font-size: 1.7rem;
				}
				.tb-subhead h2 big,
				.tb-subhead h1 big {
					display: inline-block;
					vertical-align: sub;
					font-size: 3.6rem;
					line-height: 3.6rem;
					padding-bottom: 0;
					padding-right: 20px;
				}
				.focus {
					font-size: 2rem;
					line-height: 3rem;
					letter-spacing: 4px;
				}
				.call-box a {
					width: 98%;
				}
				.w-2 {
					width: 20%;
				}
				.w-3 {
					width: 30%;
				}
				.w-4 {
					width: 40%;
				}
				.w-6 {
					width: 60%;
				}
				.w-7 {
					width: 70%;
				}
				.w-8 {
					width: 80%;
				}
				/* 功能頁共用頁籤樣式 */
				#editor-article-page .tb-page-category {
					padding-top: 0;
				}
				.tb-page-category-list li,
				#newsIn-page .tb-page-category-list li {
                	padding: 8px;
					line-height: 35px;
					text-align: center;
                }
				.tb-page-category-list li a,
				#newsIn-page .tb-page-category-list li a {
					border-color: #85C9FB;
					background: #85C9FB;
					color: #fff;
					padding: 7px;
					border-radius: 40px;
				}
				.tb-page-category-list li:hover a,
				#newsIn-page .tb-page-category-list li:hover a {
					color: #fff;
					opacity: .8;
				}
				.tb-page-category-list li.active a,
				#newsIn-page .tb-page-category-list li.active a {
					border-color: #1773C6;
					background: #1773C6;
					color: #fff;
					border-radius: 40px;
				}
				@media only screen and (min-width: 1200px) {
					.call-box a {
						width: 48%;
					}
				}
			}
		}
	}
}


/* footer & rightside-menuList */
.to_top {
    position: fixed;
    bottom: 50px;
    right: .5vw;
    width: 50px;
    height: 70px;
    line-height: 30px;
    text-align: center;
    color: #CDCDCD;
    font-size: .95rem; 
    padding-top: 70px;
    font-family: "Poppins", sans-serif;
    /*text-shadow: rgba(0,0,0,.7) 0 0 5px;*/
    z-index: 9;
}
.to_top:after {
    position: absolute;
    display: block;
    content: '';
    top: 0%;
    right: 54%;
    width: 1px;
    height: 70px;
    background: #ccc;
    animation: linetop 2s ease-in-out reverse infinite;
    /*box-shadow: rgba(0,0,0,.7) 0 0 5px;*/
}

/* ---------------------------------------- */
/* ---------------------------------------- */
/* ---------------------------------------- */
.fixed_button {
	position: fixed;
    z-index: 1000;
    right: .5vw;
    bottom: 160px;
}
.fixed_button li {
	position: relative;
    width: 50px;
    height: 50px;
    margin: 5px;
    border-radius: 100%;
	/*box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;*/
}
.fixed_button li a {
	position: relative;
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 100%;
	background-color: #fff;
	border: 1px solid #eee;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 24px;
    transition: all .3s;
}
.fixed_button li a.phone {
	background-image: url(../css-assets/images/svg-phone.svg);
}
.fixed_button li a.line {
	background-image: url(../css-assets/images/svg-line.svg);
}
.fixed_button li a.facebook {
    background-image: url(../css-assets/images/svg-facebook.svg);
}
.fixed_button li a.phone:hover {
	background-color: #85C9FB;
	background-image: url(../css-assets/images/svg-phone-white.svg);
}
.fixed_button li a.line:hover {
	background-color: #77C25A;
	background-image: url(../css-assets/images/svg-line-white.svg);
}
.fixed_button li a.facebook:hover {
	background-color: #1773C6;
    background-image: url(../css-assets/images/svg-facebook-white.svg);
}
.tb-footerCopy {
	color: #777;
	padding-bottom: 20px;
	background-color: #eee;
}
.tb-footerCopy .viewnum {
    position: relative;
    display: block;
    text-align: center;
}
.footer-top-link {
	display: none;
}
.tb-footer {
	color: #fff;
	background-color: #333;
}
.footer-all {
	position: relative;
	padding: 3vw 0;
}
.footer-all:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	background-image: url(../client/footer-feature.jpeg);
	background-repeat: no-repeat;
	background-position: 20% top;
	background-size: cover;
	opacity: .5;
}
.footer-all .flist {
	padding: 100px 0 60px;
}
.footer-left {
	position: relative;
	max-width: 400px;
	width: 90%;
	margin: auto;
}
.footer-info {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	padding: 30px 0;
}
.footer-info li {
	position: relative;
	width: 100%;
	margin: 15px 0;
	padding-left: 96px;
	font-size: 1.05rem;
    line-height: 1.4rem;
}
.footer-info li b {
	position: absolute;
	top: 0;
	left: 0;
	font-weight: normal;
}
.footer-info li a {
	position: relative;
	transition: all .3s;
}
.footer-info li a:hover {
	color: #85C9FB;
}
.footer-right {
	position: relative;
	max-width: 350px;
	width: 90%;
	margin: auto;
}
.footer-social-box {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	padding: 20px 15px;
	justify-content: center;
}
.footer-social-box a {
	position: relative;
    display: block;
    width: 50px;
    height: 50px;
    margin: 5px;
    border-radius: 100%;
	background-color: #fff;
	border: 1px solid #eee;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 24px;
    transition: all .3s;
}
.footer-social-box a.tel {
	background-image: url(../css-assets/images/svg-phone.svg);
}
.footer-social-box a.line {
	background-image: url(../css-assets/images/svg-line.svg);
}
.footer-social-box a.fb {
    background-image: url(../css-assets/images/svg-facebook.svg);
}
.footer-social-box a.tel:hover {
	background-color: #85C9FB;
	background-image: url(../css-assets/images/svg-phone-white.svg);
}
.footer-social-box a.line:hover {
	background-color: #77C25A;
	background-image: url(../css-assets/images/svg-line-white.svg);
}
.footer-social-box a.fb:hover {
	background-color: #1773C6;
    background-image: url(../css-assets/images/svg-facebook-white.svg);
}
.footer-menu {
	position: relative;
	display: flex;
	flex-wrap: wrap;
}
.footer-menu li {
	position: relative;
	width: 33.333%;
	text-align: center;
	font-size: 1.05rem;
	padding: 10px 0;
	transition: all .3s;
}
.footer-menu li:hover {
	color: #85C9FB;
}
@media only screen and (min-width: 559px) {
	@media only screen and (min-width: 768px) {
		@media only screen and (min-width: 992px) {
			.footer-top-link {
				position: fixed;
				z-index: 1001;
				right: 0;
				top: 0;
				display: block;
			}
			.footer-top-link a {
				width: 180px;
			    display: inline-block;
			    height: auto;
			    color: #fff;
			    text-align: center;
			    font-weight: bold;
			    padding: 10px 15px 10px 30px;
			    background-color: #1773C6;
			    background-image: url(../css-assets/images/svg-phone-white.svg);
			    background-repeat: no-repeat;
			    background-position: 6px center;
			    background-size: 20px;
				filter: brightness(1);
		        transform: translateX(12px);
			}
			.footer-top-link a.line {
				background-color: #77C25A;
				background-image: url(../css-assets/images/svg-line-white.svg);
			    background-position: 12px center;
				background-size: 25px;
		    	transform: translateX(7px);
			}
			.footer-top-link a:hover {
				filter: brightness(.95);
			}
			/**/
			.footer-all:before {
				width: 40%;
				opacity: 1;
			}
			.footer-all .flist {
				width: 80%;
				margin-left: 0;
			}
			.footer-social-box {
				justify-content: flex-start;
			}
			@media only screen and (min-width: 1200px) {
				@media only screen and (min-width: 1400px) {
					.footer-top-link a {
						width: 140px;
						padding: 70px 0 20px;
						background-position: top 30px center;
				    	background-size: 28px;
					}
					.footer-top-link a.line {
						background-position: top 30px center;
					}
					/**/
					.footer-all .flist {
						width: 60%;
					}
				}
			}
		}	
	}
}


/* main */
.main-all {
	position: relative;
	padding: 0;
}
.main-A {
	position: relative;
	padding: 0 0 20px;
}
.main-A:before {
	position: absolute;
	display: none;
	content: '';
	width: 1px;
	height: 100%;
	top: 0;
	right: 18%;
	background-color: #eee;
}
.mainA-item01 {
	position: relative;
	padding: 5vw 0;
	margin: auto;
}
.mainA-item01 .left {
	position: relative;
	width: 90%;
	margin: 0 auto;
}
.mainA-item01 .left .tb-subhead h2 {
	max-width: 260px;
	padding: 0;
	margin: 0 auto;
	text-align: center;
}
.mainA-item01 .left .tb-subhead h2 big {
	display: block;
	padding-right: 0;
	padding-bottom: 20px;
}
.mainA-item01 .right {
	position: relative;
	width: 90%;
	margin: 0 auto;
	padding-top: 30px;
}
.mainA-item01 .right h2 {
	position: relative;
	text-align: center;
}
.mainA-item01 .right p {
	position: relative;
	max-width: 700px;
	width: 90%;
	margin: auto;
	text-align: justify;
	padding: 20px 0;
}
.mainA-item01 .btn {
	position: relative;
	display: block;
	width: 90%;
}
.mainA-item01 .btn a {
    position: absolute;
    display: block;
    bottom: 0;
    right: 0;
    width: 40px;
    height: 40px;
    margin-left: auto;
    margin-right: 0;
    cursor: pointer;
    background-color: #1773C6;
    border-radius: 100%;
    transform: translate(0, 0);
    transition: all .2s;
}
.mainA-item01 .btn a:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	top: 50%;
	left: 50%;
	background-color: rgba(23,115,198,.15);
	border-radius: 100%;
	transform: translate(-50%,-50%);
	transition: all .3s;
}
.mainA-item01 .btn a:after {
    position: absolute;
    display: block;
    content: '';
    width: 13px;
    height: 13px;
    top: 50%;
    right: 50%;
    margin-right: -4px;
    border-width: 0 2px 2px 0;
    border-color: #fff;
    border-style: solid;
    margin-top: -7px;
    transition: opacity .2s;
    transform: rotate(-45deg);
}
/* main - item02 */
.mainA-item02 {
	position: relative;
	padding: 20px 0;
	z-index: 1;
}
.mainA-item02:before {
	position: absolute;
	content: '';
	display: block;
	width: 100%;
	max-width: 2000px;
	height: 1px;
	left: 0;
	top: 4vw;
	background-color: #eee;
}
.tab_all {
	position: relative;
	padding: 20px 0;
}
.tab_container {
	position: relative;
	width: 92%;
	margin: auto;
}
.tab_content {
	position: relative;
	padding: 20px 0;
	margin: auto;
	align-items: flex-start;
}
.tab_content .pic {
	position: relative;
	width: 92%;
	margin: 0 auto;
}
.tab_content .pic img {
	position: relative;
	width: 100%;
	max-width: 800px;
}
.tab_content .txt {
	position: relative;
	width: 100%;
	margin: auto 0;
	justify-content: center;
}
.tab_content .txt-inner {
	position: relative;
	max-width: 600px;
	width: 90%;
	margin: auto;
}
.tab_content .txt .title {
	padding: 20px 0;
}
.tab_content .txt .title .num {
	position: relative;
	display: block;
	font-size: 2rem;
	color: #ECECEC;
	font-weight: 500;
	padding-top: 2vw;
}
.tab_content .txt .title h2 {
	position: relative;
	color: #333;
	padding: 20px 0;
	font-size: 1.8rem;
	line-height: 1.8rem;
	font-weight: 600;
	letter-spacing: 4px;
}
.tab_content .txt .title h2 small {
	position: relative;
	display: block;
	color: #dedede;
	padding-top: 20px;
	letter-spacing: 1px;
	font-size: 1rem;
	line-height: 1rem;
	font-weight: 400;
}
.tab_content .txt .item-tag {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	max-width: 500px;
	width: 100%;
	padding: 30px 0;
}
.tab_content .txt .item-tag li {
	position: relative;
	width: 50%;
	margin: 8px 0;
	padding-left: 14px;
	color: #71B8E5;
	font-size: 1.2rem;
	letter-spacing: 2px;
	font-family: "思源宋體", "Noto Serif TC", serif;
}
#tab1.tab_content .txt .item-tag li:nth-child(3) {
	width: 100%;
}
.tab_content .txt .item-tag li:before {
	position: absolute;
	display: block;
	content: '';
	width: 4px;
	height: 4px;
	top: 15px;
	left: 0;
	background-color: #71B8E5;
	border-radius: 100%;
}
.tab_content .txt .txt-bottom {
	position: relative;
	border-top: 1px solid #eee;
}
.tab_content .txt .txt-bottom:before {
	position: absolute;
	display: block;
	content: '';
	width: 20%;
	height: 4px;
	top: -3px;
	left: 0;
	background-color: #71BBE6;
}
.tab_content .txt .txt-bottom p {
	position: relative;
	font-size: 1.1rem;
	padding: 40px 0;
	text-align: justify;
}
.tab_content .txt-bottom .key-word {
	position: relative;
	display: block;
	text-align: initial;
	font-size: 1rem;
	line-height: 1.5rem;
	text-align: justify;
}
.tab_content .txt .more-btn {
	margin-top: 50px;
}
.tabs-selection {
	position: relative;
	width: 80%;
	margin: 30px auto;
	cursor: pointer;
	z-index: 1;
}
.tabs-selection li {
	position: relative;
	max-width: 450px;
	width: 50%;
	margin: 10px auto;
	margin-left: 0;
	padding-left: 15px;
	font-size: 1.3rem;
	font-family: "思源宋體", "Noto Serif TC", serif;
	color: #333;
	font-weight: 600;
}
.tabs-selection li:nth-child(3) {
    width: 96%;
}
.tabs-selection li:hover {
	background-color: #EDF6FC;
}
.tabs-selection li span {
	position: absolute;
	display: block;
	left: 20px;
	top: 0;
	font-size: 1.15rem;
}
.tabs-selection li:before {
    position: absolute;
    content: '';
    display: block;
    width: 8px;
    height: 8px;
    left: -5px;
    top: 12px;
    background-color: #71BBE6;
}
/* service-item-contact-box 首頁服務項目區塊連結 */
.main-B {
	position: relative;
	z-index: 1;
}
.main-B:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 80%;
	top: 0;
	left: 0;
	background: #EDF6FC;
}
.main-B .flist {
	position: relative;
	width: 95%;
	margin: auto;
	padding: 3vw 0;
	align-items: center;
	background-color: #fff;
	border-top-left-radius: 2vw;
	border-bottom-left-radius: 2vw;
	box-shadow: rgba(0, 0, 0, 0.16) 0px 10px 36px 0px, rgba(0, 0, 0, 0.06) 0px 0px 0px 1px;
}
.mainB-left {
	position: relative;
	width: 90%;
	margin: 0 auto;
}
.mainB-left .inner {
	position: relative;
	max-width: 620px;
	width: 90%;
	margin: auto;
}
.mainB-left small {
	position: relative;
	display: block;
	color: #71BAE5;
	font-weight: 500;
}
.mainB-left h2 {
	position: relative;
	display: block;
	padding: 20px 0;
	line-height: 2rem;
	z-index: 2;
}
.mainB-left h2 span {
	position: relative;
	display: block;
}
.mainB-left h2 i {
	color: #71BAE5;
}
.mainB-left p {
	position: relative;
	text-align: justify;
	padding: 30px 0;
}
.mainB-right {
	position: relative;
	width: 90%;
	margin: 0 auto;
}
.mainB-right ul {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	max-width: 980px;
	width: 90%;
	margin: auto;
}
.mainB-right ul li {
	position: relative;
	width: 100%;
	margin: 5px;
}
.mainB-right ul li .pic {
	position: relative;
	max-width: 310px;
	width: 100%;
	max-height: 310px;
	margin: auto;
	overflow: hidden;
}
.mainB-right ul li .pic:after {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0,0,0,.4);
}
.mainB-right ul li .pic:after {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: rgba(0,0,0,.4);
	transition: all .3s;
}
.mainB-right ul li:hover .pic:after {
	background: #71BBE6;
	background: linear-gradient(180deg, rgba(113, 187, 230, 0.76) 0%, rgba(23, 115, 198, 0.76) 100%);
}
.mainB-right ul li .txt {
	position: absolute;
	max-width: 310px;
	width: 100%;
	top: 50%;
	left: 50%;
	color: #fff;
	text-align: center;
	transform: translate(-50%,-50%);
}
.mainB-right ul li .txt span.num {
	position: relative;
	display: block;
	font-size: clamp(1.6rem,5vw,5rem);
    line-height: clamp(1.6rem,5vw,5rem);
    font-weight: 500;
    padding-bottom: 1vw;
}
.mainB-right ul li .txt h3 {
	position: relative;
	padding: 30px 0;
	font-weight: bold;
	font-size: clamp(1.4rem,2vw,1.6rem);;
}
.mainB-right ul li .txt h3 small {
	position: relative;
	display: block;
	font-weight: 400;
	font-size: .9rem;
	padding-top: 2vw;
}
@media only screen and (min-width: 559px) {
	.mainA-item01 {
		width: 90%;
		align-items: center;
	}
	.mainA-item01 .left {
		width: 100%;
		padding-left: 3vw;
	}
	.mainA-item01 .left .tb-subhead h2 {
		margin: 0;
		text-align: left;
	}
	.mainA-item01 .right {
		width: 76%;
	}
	.mainA-item01 .right h2 {
		max-width: 700px;
		width: 90%;
		margin: auto;
		text-align: left;
	}
	.mainA-item01 .right h2 br {
    	display: none;
    }
	.mainA-item01 .btn {
		width: 24%;
	}
	.mainA-item01 .btn a {
		position: relative;
	    width: 90px;
	    height: 90px;
	    margin-left: auto;
	    margin-right: auto;
	    transform: translate(-8px, 16px);
	}
	.mainA-item01 .btn a:hover:before {
		width: calc(100% + 50px);
		height: calc(100% + 50px);
	}
	.mainA-item01 .btn a:after {
	    width: 16px;
	    height: 16px;
	    margin-right: -6px;
	    border-width: 0 3px 3px 0;
	}
	.tab_content .txt .title h2 small {
		display: inline-block;
	    vertical-align: middle;
		padding-left: 20px;
		padding-top: 0;
	}
	.mainB-left h2 {
		line-height: 3rem;
	}
	.mainB-right ul li {
		width: calc(33.333% - 10px);
		margin: 5px;
	}
	.mainB-right ul li .pic {
		max-height: initial;
	}
	.tab_content .txt .item-tag {
		max-width: 420px;
		width: 90%;
	}
	.tab_content .txt .item-tag li {
		font-size: 1.5rem;
	}
	@media only screen and (min-width: 768px) {
		.tabs-selection li,
		.tabs-selection li:nth-child(3) {
			width: 33.333%;
		}
		.tab_content .txt .title h2 {
			font-size: 2rem;
			line-height: 2rem;
		}
		@media only screen and (min-width: 992px) {
			.main-A:before {
				display: block;
			}
			.mainA-item01 {
				width: 100%;
				align-items: flex-start;
			}
			.mainA-item01 .left {
				width: 28%;
			}
			.mainA-item01 .left .tb-subhead h2 {
				margin: auto;
			}
			.mainA-item01 .right {
				width: 52%;
				padding-top: 0;
				padding-left: 2vw;
			}
			.mainA-item01 .right h2 {
				margin: 0;
				font-size: 1.5rem;
    			line-height: 2rem;
			}
			.mainA-item01 .right p {
				margin: 0;
			}
			.mainA-item01 .btn {
				width: 20%;
			}
			.mainA-item01 .btn a {
			    margin-left: 0;
			    margin-right: auto;
			}
			.mainA-item02:after {
                position: absolute;
                content: '';
                display: block;
                width: 18%;
                height: 100%;
                right: 0;
                bottom: -16vw;
                background-image: url(../client/waterproof-02.jpeg);
                background-repeat: no-repeat;
                background-size: contain;
                background-position: right bottom;
            }
			.tabs-selection {
                width: 18%;
                margin: auto;
                margin-right: 0;
                transform: translateY(-18vw);
            }
            .tabs-selection li {
            	width: 100%;
				padding: 10px 0;
				padding-left: 25px;
            }
            .tabs-selection li, .tabs-selection li:nth-child(3) {
            	width: 100%;
            }
            .tabs-selection li:before {
			    top: 23px;
			}
            .tab_container {
                width: 80%;
				margin-left: 0;
            }
            .mainA-item02,
            .tab_all,
            .tab_content {
            	padding-top: 0;
            }
            .tab_content .pic {
            	position: sticky;
            	top: 4vw;
            	left: 0;
                width: 50%;
            }
            .tab_content .txt {
                width: 50%;
            }
            .tab_content .txt .title h2 small {
				display: block;
				padding-left: 0;
				padding-top: 20px;
			}
            .tab_content .txt .title .num {
            	font-size: 5rem;
            	line-height: 5rem;
            }
            .main-B .flist {
            	margin-right: 0;
            }
			.mainB-left {
				width: 42%;
			}
			.mainB-right {
				width: 58%;
			}
			@media only screen and (min-width: 1200px) {
				.mainA-item01 .right h2 {
					font-size: 2rem;
	    			line-height: 3rem;
				}
                .tabs-selection {
                    transform: translateY(-9vw);
                }
				.tab_content .txt .title h2 small {
					display: inline-block;
				    vertical-align: middle;
					padding-left: 20px;
					padding-top: 0;
				}
				@media only screen and (min-width: 1500px) {
					.tabs-selection {
		                transform: translateY(-10vw);
		            }
	            }
			}
		}	
	}
}


/* index photo */
.tb-i-photoB {
	position: relative;
	margin-top: 5vw;
	padding-bottom: 5vw;
}
.tb-i-photoB:before {
	position: absolute;
	display: block;
	content: '';
    width: 100%;
    height: 24%;
	bottom: 0;
	left: 0;
	background-color: #EDF6FC;
}
.tb-i-photoB .flist {
	position: relative;
	max-width: 1700px;
	margin: auto;
}
.tb-i-about {
	position: relative;
	width: 84%;
	max-width: 700px;
	margin: 3% auto;
}
.tb-i-about .about-btn {
	margin-left: 0;
	margin-top: 50px;
	margin-bottom: 50px;
}
.main-about-slogan {
	position: relative;
	display: block;
	margin: 30px 0;
}
.tb-i-photoB-txt {
	position: relative;
	width: 100%;
	padding: 20px;
}
.tb-i-photoB-cont {
	width: 90%;
}
.tb-i-photoB-cont .item .text {
	background-color: transparent;
}
.tb-photoB-SList-slick .slick-arrow {
	top: -40px;
	background-color: #333;
	border-radius: 0;
}
.tb-photoB-MList-slick .slick-arrow {
	background-color: #333;
	border-radius: 0;
}
.tb-photoB-SList-slick .slick-arrow:before,
.tb-photoB-MList-slick .slick-arrow:before {
	border-color: #fff;
}
.tb-photoB-SList-slick .slick-arrow.slick-prev {
	left: unset;
	right: 0;
	margin-right: 50px;
}
.tb-photoB-SList-slick {
	margin-bottom: 68px;
}
.tb-photoB-SList-slick .item .pic,
.tb-photoB-MList-slick .item .pic {
	border-radius: 0;
	transition: all .3s;
}
.tb-photoB-SList-slick .item .pic:before, .tb-photoB-MList-slick .item .pic:before {
	padding-bottom: 74%;
}
.tb-photoB-MList-slick .item:hover .pic:before {
	background-image: url(../client/waterproof-03.jpeg);
	background-position: left bottom;
	background-repeat: repeat-x;
	background-size: auto 100%;
	z-index: 2;
}
.tb-photoB-MList-slick .item .text {
	position: relative;
	width: 100%;
	background-color: transparent;
	z-index: 2;
}
.tb-i-photoB-cont .item .title {
	text-align: center;
}
.tb-i-about {
	position: relative;
}
.tb-i-about .tb-subhead h2 {
	text-align: left;
}
.tb-i-about .focus i {
	color: #71B8E5;
}
.tb-i-about p {
	position: relative;
	text-align: justify;
	padding: 4vw 0;
}
.tb-i-about p a,
.mainA-item01 .right p a,
.tab_content .txt .txt-bottom p a,
.tb-i-newsD .top-box p a,
.tb-faq-list .item a,
.mainB-left p a,
.s-index-txt .txt-bottom p a,
.s-page-tab .tab-content a,
.process-list li p a,
.sA-b-list li p a,
.tips-top-box .w-7 p a,
.tips-list li p a {
	color: #1773C6;
}
.reviewC-txt p a,
.sA-a-txt p a,
.area-txt p a {
	color: #afddff;
}
/* photo-page */
#photo-page .tb-page-container {
	background-color: #EDF6FC;
}
/*#photo-page .tb-page-container:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 50%;
	top: 0;
	left: 0;
	background-color: #EDF6FC;
}*/
/*#photo-page .tb-page-container:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 42%;
	bottom: 0;
	left: 0;
	background: #71BBE6;
	background: linear-gradient(326deg, rgba(113, 187, 230, 1) 0%, rgba(23, 115, 198, 1) 77%);
}*/
#photo-page .tb-breadcrumb {
	display: none;
}
#photo-page .asideCont-flist {
	position: relative;
	z-index: 1;
}
#photo-page .asideCont-flist:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	background-color: #fff;
}
#photo-page .tb-page-l-wrap {
    /*width: 90%;
    max-width: initial;*/
    box-shadow: none;
}
#photo-page .tb-sidebar-menu {
    background: transparent;
}
#photo-page .tb-sidebar-menu ul li a {
	background: #85C9FB;
}
#photo-page .tb-sidebar-menu ul li.active a {
	background: #1773C6;
}
#photo-page .tb-sidebar-menu ul ul li {
    background: transparent;
    border-bottom: none;
    margin-bottom: 0;
}
#photo-page .tb-sidebar-menu ul li ul li a,
#photo-page .tb-sidebar-menu ul li.active ul li a,
#photo-page .tb-sidebar-menu ul li ul li.active a {
	background: transparent;
}
#photo-page .tb-sidebar-menu ul li ul li a:before {
	position: absolute;
	display: block;
	content: '';
	width: 7px;
	height: 7px;
	top: 14px;
    left: 8px;
	background-color: #aaa;
}
#photo-page .tb-sidebar-menu ul li ul li:hover a:before,
#photo-page .tb-sidebar-menu ul li ul li.active a:before {
	background-color: #71BBE6;
}
.tb-sidebar-menu ul li a .side-arrow:before {
    right: 25px;
}
#photo-page .tb-photo-list .item .text .title {
    font-size: 1.1rem;
    text-shadow: none;
}
.top-album {
	padding-bottom: 50px;
}
.top-album .tb-photo-list {
	max-width: 1300px;
}
.backto-album {
    position: relative;
    margin: auto;
    max-width: 1300px;
    width: 100%;
    display: block;
    padding: 20px 0;
    letter-spacing: 2px;
    /*transform: scale(.8);*/
    transform-origin: center center;
    transition: all .3s;
}
.backto-album a.backto-btn {
    position: absolute;
    bottom: 10px;
    left: 0;
    display: block;
    width: 90%;
    max-width: 230px;
    margin: auto;
    margin-left: 0;
    padding: 10px 0;
    padding-left: 30px;
    color: #777;
    font-weight: bold;
    transition: all .3s;
}
.backto-album a.backto-btn:before {
	position: absolute;
    display: block;
    content: '';
    width: 13px;
    height: 13px; 
    top: 50%;
    left: 15px;
    border-width: 2px 0 0 2px;
    border-color: #1773C6;
    border-style: solid;
    margin-top: -7px;
    transition: all .3s;
    transform: rotate(-45deg);
}
.backto-album a.backto-btn:hover:before {
	left: 5px;
}
#photo-page .tb-pager {
	padding: 0;
	text-align: right;
}
#photo-page .tb-pager li {
	text-align: center;
}
.tb-sidebar-title {
	border: none;
    background: #71BBE6;
    background: linear-gradient(129deg, rgba(113, 187, 230, 1) 0%, rgba(23, 115, 198, 1) 76%);
}
.bottom-album-bg {
	position: relative;
}
.bottom-album-bg.photo-index {
    padding-top: 80px;
    transform: translateY(-80px);
    margin-bottom: -80px;
}
.bottom-album-bg:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 140%;
	bottom: 0;
	left: 0;
	background: #71BBE6;
	background: linear-gradient(326deg, rgba(113, 187, 230, 1) 0%, rgba(23, 115, 198, 1) 77%);
}
.bottom-album {
	position: relative;
	width: 92%;
	margin: auto;
	padding: 3vw 0;
}
.other-related-wrap {
	width: 98%;
}
.bottom-album-left {
	position: relative;
	width: 90%;
	margin: 0 auto;
}
.bottom-album-left .tb-subhead h2 {
	color: #fff;
	text-align: left;
}
.bottom-album-left .tb-subhead h2 big {
	display: block;
	color: #fff;
	padding-bottom: 20px;
}
.bottom-album-left p {
	position: relative;
	text-align: justify;
	color: #fff;
	max-width: 350px;
	width: 90%;
	padding: 20px 0;
}
.bottom-album-left p:before {
	position: absolute;
	display: block;
	content: '';
	width: 42px;
	height: 3px;
	top: 0;
	left: 0;
	background-color: #fff;
}
.other-related-wrap .tb-photo-list .item {
	width: 33.333%;
}
.other-related-wrap .tb-photo-list .item .text {
	background-color: #333;
}
.other-related-wrap .tb-photo-list .item .text .title {
	color: #fff;
	padding-bottom: 0;
}
.other-related-wrap .slick-arrow {
	width: 36px;
	height: 36px;
	background-color: #fff;
	border-radius: 100%;
	box-shadow: none;
}
.other-related-wrap .slick-arrow.slick-prev {
    right: 45px;
}
.other-related-wrap .slick-arrow.slick-next {
	background-color: #85C9FB;
}
.other-related-wrap .slick-arrow.slick-prev:before {
	border-color: #1773C6;
}
@media only screen and (min-width: 767px) {
	.tb-photoB-left {
		width: 60%;
	}
	.tb-photoB-right {
		width: 40%;
	}
	.tb-i-photoB-txt {
		position: absolute;
		right: 0;
		top: 0;
		width: 36%;
	}
	.tb-i-photoB-txt .tb-subhead h2 {
		text-align: left; 
	}
	.tb-photoB-SList-slick {
		display: block;
		margin-bottom: 0;
	}
	.tb-photoB-SList-slick .item .pic:before, 
	.tb-photoB-MList-slick .item .pic:before {
		padding-bottom: 132.57%;
	}
	.tb-photoB-MList-slick .item .pic img {
		max-width: 175%;
		width: 175%;
	}
	.tb-photoB-SList-slick .slick-arrow {
		top: -40px;
	}
	.tb-photoB-SList-slick .slick-arrow.slick-prev {
        left: 20px;
	}
	.tb-photoB-SList-slick .slick-arrow.slick-next {
		right: unset;
        left: 80px;
	}
	/**/
	.backto-album {
		width: 96%;
        transform: scale(1);
    }
	.backto-album a.backto-btn {
        position: absolute;
        bottom: 10px;
        left: 0;
        margin: 0;
        z-index: 2;
    }
	@media only screen and (min-width: 992px) {
		.tb-i-photoB:before {
			width: 82%;
			height: 58%;
		}
		.tb-i-about {
			width: 40%;
		}
		.tb-i-photoB-cont {
			width: 50%;
		}
		.tb-photoB-SList-slick .item .text {
			display: none;
		}
		.tb-photoB-MList-slick .item {
			padding: 0;
		}
		.tb-photoB-MList-slick .item .text {
			position: absolute;
			bottom: 0;
			left: 0;
			/*opacity: 0;
			visibility: hidden;*/
			background-color: rgba(0,0,0,.5);
			transition: all .5s;
		}
		/*.tb-photoB-MList-slick .item:hover .text {
			opacity: 1;
			visibility: visible;
		}*/
		.tb-i-photoB-cont .item .title {
			color: #fff;
		}
		/* photo - page */
		/*#photo-page .tb-page-container {
			padding-bottom: 40px;
		}*/
		#photo-page .asideCont-flist {
			width: 92%;
			margin-left: auto;
			margin-right: 0;
		}
		#photo-page .asideCont-flist:before {
			width: 98%;
			border-bottom-left-radius: 3vw;
		}
		#photo-page .tb-page-l-wrap {
			width: 300px;
		}
		#photo-page .tb-page-r-wrap  {
			width: calc(100% - 320px);
		}
		#photo-page .tb-sidebar-menu ul li {
		    border-bottom: none;
		    margin-bottom: 15px;
		}
		#photo-page .tb-sidebar-menu ul li a {
			text-align: center;
			font-weight: bold;
			font-size: 1.125rem;
			background-color: #85C9FB;
			border-radius: 40px;
		}
		#photo-page .tb-sidebar-menu ul li:first-child a {
			background-color: #1773C6;
		}
		#photo-page .tb-sidebar-menu ul li.active a {
			background-color: #1773C6;
		}
		#photo-page .tb-sidebar-menu ul ul {
			padding-left: 2vw;
		}
		#photo-page .tb-sidebar-menu ul ul li {
		    background: transparent;
		    border-bottom: none;
		    margin-bottom: 0;
		}
		#photo-page .tb-sidebar-menu ul li ul li a,
		#photo-page .tb-sidebar-menu ul li.active ul li a,
		#photo-page .tb-sidebar-menu ul li.active ul li:first-child a,
		#photo-page .tb-sidebar-menu ul li ul li:first-child a {
			color: #999;
			text-align: left;
			font-size: initial;
			font-weight: normal;
			background-color: transparent;
		}
		#photo-page .tb-sidebar-menu ul li.active ul li:hover a,
		#photo-page .tb-sidebar-menu ul li.active ul li.active a {
			color: #222;
		}
		#photo-page .tb-sidebar-menu ul li ul li a:before {
			top: 20px;
			left: 0;
		}
		.top-album .tb-photo-list .item {
			width: 50%;
		}
		.bottom-album {
			margin-right: 0;
		}
		.bottom-album-left {
			width: 25%;
		}
		.bottom-album-left p {
			margin-top: 30px;
			padding: 30px 0 80px;
		}
		.other-related-wrap .tb-photo-list {
            width: 75%;
        }
        .other-related-wrap .slick-arrow {
			width: 50px;
			height: 50px;
		}
        .other-related-wrap .slick-arrow.slick-prev {
            left: -22vw;
            right: initial;
            top: initial;
            bottom: -80px;
        }
        .other-related-wrap .slick-arrow.slick-next {
            left: calc(-22vw + 60px);
            right: initial;
            top: initial;
            bottom: -80px;
        }
        /*.backto-album {
            position: absolute;
            bottom: 0;
            left: 50%;
            width: 96%;
            padding: 20px 0;
            margin: 0 auto;
            transform: translateX(-50%);
        }*/
        @media only screen and (min-width: 1200px) {
			.top-album .tb-photo-list .item {
				width: 33.333%;
			}
			@media only screen and (min-width: 1400px) {
				.other-related-wrap .slick-arrow.slick-prev {
		            bottom: 2vw;
		        }
		        .other-related-wrap .slick-arrow.slick-next {
		            bottom: 2vw;
		        }
	        }
		}
	}
}


/* news */
.tb-i-newsD {
	padding: 2vw 0;
}
.tb-i-newsD .top-box {
	position: relative;
	max-width: 1610px;
	width: 90%;
	margin: auto;
	padding-bottom: 50px;
	padding-left: 1.56vw;
	z-index: 1;
}
.tb-i-newsD .top-box .tb-subhead {
	max-width: initial;
	margin: 0;
}
.tb-i-newsD .top-box .tb-subhead h2 {
	text-align: left;
}
.tb-i-newsD .top-box p {
	position: relative;
	text-align: justify;
}
.tb-i-newsD .tb-news-list-block,
.tb-news-list-row {
	max-width: 1610px;
	width: 90%;
	margin: auto;
	z-index: 1;
}
.tb-news-list-block .item .date,
.tb-news-list-row .item .date {
	position: relative;
    top: 0;
    left: 0;
    width: 100%;
    color: #ccc;
    padding: 10px;
    transform: scale(1);
    padding: 10px 0;
    text-align: left;
    font-weight: 500;
    font-size: .95rem;
    margin-top: 10px;
    font-family: "Barlow", sans-serif;
    background-color: transparent;
    box-shadow: none;
    transition: all .3s;
}
.tb-news-list-block .item:hover .date,
.tb-news-list-row .item:hover .date {
	color: #1773C6;
}
.tb-news-list-block .item .date:before,
.tb-news-list-row .item .date:before {
	position: absolute;
	display: block;
	content: '';
	width: calc(100% - 100px);
	height: 1px;
	top: 50%;
	right: 0;
	background-color: #eee;
}
.tb-news-list-row .item .date:before {
	width: calc(100% - 120px);
}
.tb-news-list-block .item .text .desc {
	max-height: 72px;
	min-height: 72px;
	overflow: hidden;
}
.tb-news-list-block .item .text .title,
.tb-news-list-row .item .text .title {
    font-weight: bold;
    text-shadow: none;
    line-height: 1.5rem;
}
.tb-news-list-block .item .text .title .newLabel,
.newLabel, .tb-news-list-row .item .text .title .newLabel {
	display: inline-block;
	text-align: center;
	font-family: "Barlow", sans-serif;
	font-weight: 500;
}
.tb-i-newsD .action-btn {
	display: none;
}
/* news-page */
#newsRow-page .tb-page-container {
	background-image: url(../client/waterproof-04.jpeg);
	background-repeat: no-repeat;
	background-position: right top;
	background-size: 50%;
}
.tb-news-list-row .item .text:before {
	display: none;
}
.tb-news-list-row .item .more-deco {
	display: none;
}
/* news - in */
.back-btn {
	color: #fff;
	background-color: #1773C6;
}
.back-btn:hover {
	color: #fff;
	background-color: #85C9FB;
}
#newsIn-page .tb-page-category-list li.active a:before {
	display: none;	
}
@media only screen and (min-width: 559px) {
	.tb-news-list-block .item .text .title {
		max-height: 75px;
		min-height: 75px;
	}
	@media only screen and (min-width: 767px) {
		/* news-page */
		.tb-news-list-row .item:nth-child(n+2) {
			width: 50%;
		}
		.tb-news-list-row .item:nth-child(n+2) .pic {
			width: 100%;
		}
		.tb-news-list-row .item .text {
            padding-top: 15px;
            padding-left: 10px;
        }
		.tb-news-list-row .item:nth-child(1) .text {
			padding-left: 3vw;
		}
		.tb-news-list-row .item:nth-child(n+2) .text {
			width: 100%;
		}
		.tb-news-list-row .item:nth-child(1):before {
			position: absolute;
			display: block;
			content: '';
			width: 64%;
			height: 100%;
			bottom: 0;
			right: 0;
			border-top: 1px solid #eee;
			border-bottom: 1px solid #eee;
		}
		.tb-news-list-row .item:nth-child(1) a {
			align-items: center;
		}
		.tb-news-list-row .item:nth-child(1) .date {
			position: absolute;
			top: 0;
			/*left: 25px;*/
			left: 3vw;
			transition: all .3s;
		}
		.tb-news-list-row .item:nth-child(1):hover .date {
			color: #1773C6;
		}
		.tb-news-list-row .item:nth-child(1) .date:before {
			display: none;
		}
		.tb-news-list-row .item:nth-child(1) .text {
			padding-top: 60px;
		}
		#newsRow-page .tb-page-category-list,
		#newsIn-page .tb-page-category-list {
			max-width: 1610px;
			width: 90%;
			margin: auto;
			text-align: left;
		}
		#newsIn-page .tb-page-category-list {
			text-align: center;
		}
		#newsRow-page .tb-page-category-list li,
		#newsIn-page .tb-page-category-list li {
			max-width: 25%;
			width: 24%;
		}
		#newsRow-page .tb-page-category-list li a,
		#newsIn-page .tb-page-category-list li a {
			width: 100%;
		}
		/* news - in */
		#newsIn-page .tb-page-l-wrap {
			max-width: initial;
			width: 100%;
		}
		#newsIn-page .tb-page-r-wrap {
			width: 100%;
		}
		@media only screen and (min-width: 992px) {
			.tb-news-list-row .item:nth-child(n+2) {
				width: 33.333%;
			}
			@media only screen and (min-width: 1199px) {
	            .tb-i-newsD .tb-news-list-block .item {
		            width: 33.333%;
		        }
		        /* news-page */
				#newsRow-page .tb-page-container {
					background-size: auto;
				}
		        .tb-news-list-row .item .text {
	                padding-top: 15px;
	            }
				.tb-news-list-row .item:nth-child(1) .more-deco {
					position: absolute;
					display: block;
					max-width: 230px;
					width: 90%;
					padding: 16px 0;
					padding-right: 58px;
					bottom: 15px;
					right: 0;
					color: #1773C6;
					text-align: center;
					transition: all .5s;
					opacity: 0;
				}
				.tb-news-list-row .item:nth-child(1):hover .more-deco {
					display: block;
					opacity: 1;
				}
				.tb-news-list-row .item:nth-child(1) .more-deco:before {
				    position: absolute;
				    display: block;
				    content: '';
				    width: 40px;
				    height: 40px;
				    top: 8px;
				    right: 12px;
				    background: #1773C6;
				    border-radius: 100%;
				    transition: all .3s;
				}
				.tb-news-list-row .item:nth-child(1) .more-deco:after {
				    position: absolute;
				    display: block;
				    content: '';
				    width: 12px;
		            height: 12px;
		            top: 22px;
		            right: 28px;
				    border-color: #fff;
				    border-style: solid;
				    border-width: 0 2px 2px 0;
				    transition: opacity .2s;
				    transform: rotate(-45deg);
				    transition: all .3s;
				}
				.tb-news-list-row .item:nth-child(1) .more-deco i {
				    position: relative;
				    transition: all .3s;
				    z-index: 1;
				}
				.tb-news-list-row .item:nth-child(1) .more-deco i.en-font {
				    position: relative;
				    display: inline-block;
				    vertical-align: baseline;
				    padding-left: 10px;
				    font-weight: 500;
				}
				.tb-news-list-row .item:nth-child(n+2) .more-deco {
					display: none;
				}
			}
		}	
	}
}


.tb-i-faq {
	position: relative;
	padding: 3vw 0;
	background-color: #EDF6FC;
}
.tb-i-faq .tb-subhead {
	max-width: 1600px;
	width: 90%;
	margin: auto;
	padding-left: 3.56vw;
	margin-bottom: 30px;
}
.tb-i-faq .tb-faq-list {
	max-width: 1600px;
	width: 90%;
	margin: auto;
	padding: 2vw 0;
}
.tb-faq-list .item {
	position: relative;
	padding: 0 2vw;
	/*border-top: 1px solid #fff;*/
	margin-bottom: 0;
}
.tb-faq-list .item:has(input:checked) {
  background-color: rgba(205, 230, 245, .64);
}
.tb-faq-list .item:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 1px;
	top: 0;
	left: 0;
	background-color: #fff;
}
.tb-faq-list .q {
	padding: 30px 0;
    background: transparent;
}
.tb-faq-list input:checked + .q {
	padding-bottom: 0;
}
.tb-faq-list .q:after {
	content: "+";
	border: none;
	color: #777;
	font-size: 1.8rem;
    transform: rotate(0);
}
.tb-faq-list input:checked + .q:after {
	content: "-";
    transform: rotate(0);
}
.tb-faq-list .q .q-txt {
	font-weight: bold;
	padding-left: 50px;
}
.tb-faq-list .q .q-txt:before {
    width: 40px;
    height: 40px;
    top: 16px;
    background-color: #85C9FB;
    border-radius: 100%;
}
.tb-faq-list .q .q-txt:after {
    width: 40px;
    height: 40px;
    top: 40px;
    font-family: "Arial", sans-serif;
    font-weight: 400;
}
.tb-faq-list .a-content {
	background-color: transparent;
}
.tb-faq-list input:checked ~ .a-content {
	padding-bottom: 30px;
}
.tb-i-faq .more-btn {
	margin: auto;
	margin-top: 30px;
}
@media only screen and (min-width: 559px) {
	@media only screen and (min-width: 767px) {
		.tb-faq-list .q .q-txt {
	        padding-left: 76px;
	        padding-right: 80px;
	    }
		.tb-faq-list .q .q-txt:before {
		    width: 58px;
		    height: 58px;
		    top: 0;
		}
		.tb-faq-list .q .q-txt:after {
		    width: 58px;
		    height: 58px;
		    padding: 10px 0;
		    top: 32px;
		}
	    .tb-faq-list input:checked ~ .a-content {
	        padding-left: 76px;
	        padding-right: 80px;
	    }
		@media only screen and (min-width: 992px) {
			.tb-i-faq .tb-subhead h2 {
				text-align: left;
			}
			.tb-faq-list .q .q-txt {
				font-size: 1.4rem;
			}
            .tb-i-faq .more-btn {
                position: absolute;
                top: calc(3vw + 20px);
                right: calc((100% - 1600px) / 2);
            }
			@media only screen and (min-width: 1200px) {
			}
		}	
	}
}


/* index review */
.tb-i-reviewC {
	padding: clamp(70px, 8vw, 90px) 4% 30px;
	background: #71BBE6;
	background: linear-gradient(55deg, rgba(113, 187, 230, 1) 0%, rgba(23, 115, 198, 1) 76%);
}
.reviewC-txt {
	position: relative;
}
.reviewC-txt .tb-subhead {
	max-width: 580px;
	width: 90%;
	padding-top: 50px;
	background-image: url(../client/waterproof-05.jpeg);
	background-repeat: no-repeat;
	background-position: right top;
	background-size: contain;
}
.reviewC-txt .tb-subhead h2 {
	max-width: 320px;
	width: 100%;
	margin: auto;
	color: #fff;
	text-align: left;
	background-image: url(../client/waterproof-06.jpeg);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto;
}
.reviewC-txt .focus {
	position: relative;
	max-width: 460px;
    width: 90%;
    margin: auto;
	padding: 4vw 0;
	color: #fff;
	text-align: left;
}
.reviewC-txt .focus i {
	position: relative;
	display: inline-block;
	padding-left: 40px;
	background-image: url(../css-assets/images/svg-location.svg);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 30px;
}
.reviewC-txt p {
	position: relative;
	max-width: 460px;
    width: 90%;
    margin: auto;
	color: #fff;
	text-align: justify;
}
.reviewC-txt p br {
	display: none;
}
.tb-reviewC-list {
	margin-top: 50px;
	margin-bottom: 50px;
	padding: 0;
}
.tb-reviewC-list .item {
	position: relative;
	padding: 60px 40px;
	background-color: #fff;
	border-top-right-radius: 40px;
    border-bottom-left-radius: 40px;
}
.tb-reviewC-list .item .pic {
	display: none;
}
.tb-reviewC-list .item .writer {
	display: none;
}
.tb-reviewC-list .item p {
	position: relative;
	max-width: initial;
	max-height: 96px;
	min-height: 96px;
	overflow: overlay;
	padding-right: 5px;
}
.tb-reviewC-list .item .title {
	position: relative;
	max-width: initial;
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #eee; 
	color: #333;
}
.tb-reviewC-list .item .title:before {
	position: absolute;
	display: block;
	content: '';
	width: 25%;
	height: 5px;
	bottom: -3px;
	left: 0;
	background-color: #71BBE6;
}
.tb-reviewC-list .slick-arrow {
	width: 40px;
	height: 40px;
	background-color: #85C9FB;
}
.tb-reviewC-list .slick-arrow:before {
	border-color: #fff;
}
@media only screen and (min-width: 500px) {
	.reviewC-txt .focus br {
		display: none;
	}
	@media only screen and (min-width: 559px) {
		.reviewC-txt .focus {
			text-align: center;
		}
		@media only screen and (min-width: 992px) {
			.tb-i-reviewC {
				padding-left: 30%;
				padding-right: 7%;
				padding-bottom: clamp(70px, 8vw, 90px);
			}
			.tb-i-reviewC:before {
				position: absolute;
				content: '';
				display: block;
				width: 35%;
				height: calc(100% + 8vw);
				left: 0;
				bottom: 0;
				background-image: url(../client/waterproof-07.jpeg);
				background-position: center;
				background-repeat: no-repeat;
				background-size: cover;
			}
			.reviewC-txt .tb-subhead {
				margin-right: 0;
			}
			.reviewC-txt .tb-subhead h2 {
				margin-right: 0;
			}
			.reviewC-txt .focus {
				max-width: initial;
				text-align: right;
				margin-right: 0;
			}
			.reviewC-txt .focus i {
				padding-left: 50px;
				background-size: auto;
			}
			.reviewC-txt p {
				text-align: right;
				margin-right: 0;
			}
			.tb-reviewC-list .slick-arrow {
				width: 50px;
				height: 50px;
			}
			.tb-reviewC-list .slick-arrow.slick-prev {
				transform: translateX(-50px);
			}
			.tb-reviewC-list .slick-arrow.slick-next {
				transform: translateX(50px);
			}
		}
	}
}


/* service - index */
.service-index-A {
	position: relative;
	margin-top: 30px;
}
.service-txt-nav {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	max-width: 980px;
	width: 90%;
	margin: 20px auto;
	z-index: 1;
}
.nav-item {
    position: relative;
    width: 50%;
    cursor: pointer;
    margin: 5px auto;
    padding: 5px 10px;
    transition: 0.3s;
    font-size: 1.4rem;
    color: #333;
    font-weight: 500;
    letter-spacing: 2px;
    text-align: center;
    border-left: 1px solid #ddd;
}
.nav-item:nth-of-type(1) {
	border-left: none;
}
.nav-item:nth-of-type(3) {
	border-left: none;
	width: 100%;
}
.nav-item .num {
	position: relative;
	display: inline-block;
	padding-right: 10px;
	color: #aaa;
	/*font-size: 1.2rem;*/
	font-weight: 600;
}
.nav-item:hover .num,
.nav-item.active .num {
    color: #71BAE5;
}
.s-index-item {
	position: relative;
}
.s-index-pic {
    position: relative;
    width: 90%;
    margin: 0 auto;
    height: 320px;
    overflow: clip;
}
.s-index-pic:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	top: 0;
	left: 0;
	padding-bottom: 100%;
}
.s-index-pic img {
   	position: absolute;
   	width: 100%;
   	top: 50%;
   	left: 50%;
   	transform: translate(-50%,-50%);
}
.s-index-txt {
	position: relative;
	width: 90%;
	margin: 0 auto;
	padding: 3vw 0;
}
.s-index-txt:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	bottom: 0;
	right: 0;
	background-color: #EDF6FC;
}
.s-index-txt .txt-inner {
	position: relative;
	max-width: 970px;
	width: 90%;
	margin: auto;
}
.s-index-txt .title {
	position: relative;
	padding: 20px 0;
	align-items: flex-start;
}
.s-index-txt .title a {
    position: absolute;
    display: block;
    top: 50%;
    right: 0;
    width: 60px;
    height: 60px;
    cursor: pointer;
    background-color: #1773C6;
    border-radius: 100%;
    transform: translateY(-50%);
    transition: all .2s;
}
.s-index-txt .title a:before {
    position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    background-color: rgba(23, 115, 198, .15);
    border-radius: 100%;
    transform: translate(-50%, -50%);
    transition: all .3s;
}
.s-index-txt .title a:hover:before {
	width: calc(100% + 30px);
	height: calc(100% + 30px);
}
.s-index-txt .title a:after {
    position: absolute;
    display: block;
    content: '';
    width: 13px;
    height: 13px;
    top: 50%;
    right: 30px;
    margin-right: -4px;
    border-width: 0 2px 2px 0;
    border-color: #fff;
    border-style: solid;
    transition: opacity .2s;
    transform: translateY(-50%) rotate(-45deg);
    pointer-events: none;
}
.s-index-txt .title .num {
	position: relative;
	display: block;
	font-size: 2rem;
	color: #1773C6;
	font-weight: 500;
}
.s-index-txt .title h2 {
	position: relative;
	color: #333;
	padding-left: 20px;
	font-size: 1.8rem;
	line-height: 1.8rem;
	font-weight: 600;
	letter-spacing: 4px;
}
.s-index-txt .title h2 small {
	position: relative;
	display: block;
	color: #1772C5;
	padding-top: 15px;
	letter-spacing: 1px;
	font-size: 1rem;
	line-height: 1rem;
	font-weight: 600;
}
.s-index-txt .txt-bottom p {
    position: relative;
    font-size: 1.1rem;
    padding: 40px 0;
    text-align: justify;
}
.s-index-txt .txt-bottom .key-word {
    position: relative;
    display: block;
    text-align: initial;
    font-size: 1rem;
    line-height: 1.5rem;
    text-align: justify;
    /*color: #777;*/
    color: #71bbe6;
}
.s-page-tab {
	position: relative;
	padding: 30px 0;
}
.s-page-tab .tab-buttons {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	max-width: 700px;
	width: 90%;
	margin: auto;
}
.s-page-tab .tab-btn {
	position: relative;
	width: calc(90% - 15px);
	margin: 5px auto;
	padding: 5px 20px;
	cursor: pointer;
	border: none;
	color: #555;
	font-size: 1.3rem;
	font-family: "思源宋體", "Noto Serif TC", serif;
	font-weight: 500;
	letter-spacing: 2px;
	background: #fff;
}
.s-page-tab .tab-btn.active {
	color: #fff;
	background: #85C9FB;
}
.s-page-tab .tab-content {
	position: relative;
	display: none;
	padding: 20px 0;
}
.s-page-tab .tab-content.active {
	display: block;
}
/* 圖片下方計數器&箭頭 */
.slider-controls {
    position: relative;
    width: 30%;
    display: flex;
    justify-content: space-between; /* 左邊數字，右邊箭頭 */
    align-items: center;
    padding: 15px 0;
    display: none;
}
.slider-controls .page-count {
	position: relative;
	width: 50%;
	padding-left: 10px;
    font-size: 1.7rem;
    color: #aaa;
    font-weight: 500;
}
.slider-controls .page-count .current-num {
	color: #71B9E5;
}
.custom-arrows {
	position: relative;
	max-width: 120px;
	width: 50%;
	display: flex;
	align-items: center;
	justify-content: space-between;
    color: #aaa;
    font-weight: 600;
}
.custom-arrows button {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 2rem;
    color: #aaa;
    padding: 0 5px;
    text-align: center;
    transition: all .3s;
}
.custom-arrows button:hover {
	color: #71BBE6;
}
@media only screen and (min-width: 559px) {
	.s-page-tab .tab-btn {
		width: calc(50% - 15px);
		margin: 5px 0;
		margin-right: 15px;
	}
	.s-index-pic {
	    height: 500px;
	}
	@media only screen and (min-width: 768px) {
		.s-page-tab .tab-btn {
			width: calc(33.333% - 15px);
		}
		.nav-item,
		.nav-item:nth-of-type(3) {
			width: 33.333%;
		    font-size: 1.6rem;
		}
		.nav-item:nth-of-type(3) {
			border-left: 1px solid #ddd;
		}
		/*.s-index-item .flist {
			align-items: flex-end;
		}*/
		.s-index-txt .title {
			align-items: center;
		}
        .s-index-txt .title .num {
        	font-size: 5rem;
        	line-height: 5rem;
        }
		.s-index-txt .title h2 {
			padding: 20px 0;
			padding-left: 1.5vw;
		}
		@media only screen and (min-width: 992px) {
			.s-page-tab .tab-buttons {
				margin-left: 0;
			}
			/*.s-index-item:before {
				position: absolute;
				display: block;
				content: '';
				width: calc(70% - 25px);
				height: 100%;
				bottom: 0;
				right: 0;
				background-color: #EDF6FC;
			}*/
			.s-index-item .flist{
				align-items: stretch;
			}
			.s-index-pic {
				width: 30%;
				margin-left: 0;
				height: initial;
			}
			/*.s-index-pic:before {
				display: none;
			}*/
			.s-index-item:nth-of-type(3) .s-index-pic:before {
				background-image: url(../client/waterproof-08.jpeg);
				background-repeat: no-repeat;
				background-position: left top;
				background-size: cover;
			}
			.s-index-pic img {
				position: relative;
				top: initial;
				left: initial;
				transform: translate(0,0);
			}
			.s-index-txt {
				width: calc(70% - 25px);
				margin-right: 0;
			}
			.s-index-txt .title {
				align-items: center;
			}
            .slider-controls {
            	display: flex;
            	transform: translateY(-120px);
            	margin-bottom: -120px;
            }
			@media only screen and (min-width: 1200px) {
				.s-index-item:nth-of-type(3) .s-page-tab .tab-buttons {
					max-width: 940px;
				}
				.s-index-item:nth-of-type(3) .s-page-tab .tab-btn {
					width: calc(25% - 15px);
				}
				.service-txt-nav {
					position: absolute;
					top: 5vw;
	                right: 5vw;
					width: calc(70% - 25px);
					margin-left: auto;
					margin-right: 0;
				}
				.s-index-item {
					padding-bottom: 80px;
				}
				.s-index-txt {
					margin-top: 80px;
					transform: translateY(110px);
				}
				@media only screen and (min-width: 1600px) {
		            .slider-controls {
		            	transform: translateY(-70px);
		            	margin-bottom: -70px;
		            }
				}
			}
		}	
	}
}


/* process */
.process-all {
	position: relative;
	padding: 50px 0;
}
.process-all .tb-subhead h2 big {
	display: block;
	padding-right: 0;
	padding-bottom: 10px;
}
.process-list {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	width: 90%;
	margin: auto;
	padding: 2vw 0;
}
.process-list li {
	position: relative;
	width: 90%;
	margin: 30px auto;
}
.process-list li:not(:last-child)::after {
	position: absolute;
	content: '';
	display: block;
	width: 40px;
	height: 40px;
	right: 50%;
	bottom: -70px;
	margin: 15px auto;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path d="M10 20 L50 50 L10 80 Z" fill="%23999"/><path d="M50 20 L90 50 L50 80 Z" fill="%23999"/></svg>');
	background-repeat: no-repeat;
	background-size: contain;
	animation: arrow-move-sp 1.5s infinite ease-in-out;
	transform: translate(50%,0) rotate(90deg);
}
@keyframes arrow-move-sp {
	0% {  opacity: 0.3; }
	50% {  opacity: 1; }
	100% {  opacity: 0.3; }
}
.process-list li .num {
	position: relative;
	display: block;
    width: 90px;
    height: 90px;
    margin: 20px auto;
    text-align: center;
    cursor: pointer;
    transition: all .2s;
}
.process-list li .num:before {
    position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 100%;
    top: 50%;
    left: 50%;
    background-color: rgba(23, 115, 198, .15);
    border-radius: 100%;
    transform: translate(-50%, -50%);
    transition: all .3s;
}
.process-list li:hover .num:before {
    width: calc(100% + 40px);
    height: calc(100% + 40px);
}
.process-list li .num i {
	position: relative;
	display: block;
    width: 90px;
    height: 90px;
    padding: 28px 0;
	color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
    background-color: #aaa;
    border-radius: 100%;
    transition: all .2s;
    z-index: 1;
}
.process-list li:hover .num i {
	background-color: #1773C6;
}
.process-list li h3 {
	position: relative;
	text-align: center;
	font-weight: bold;
	color: #333;
	font-size: 1.4rem;
	padding: 20px 0 5px;
}
.process-list li p {
	position: relative;
	max-width: 300px;
	width: 90%;
	margin: auto;
	padding: 5px 0;
	text-align: justify;
	font-size: 1.05rem;
}
@media only screen and (min-width: 559px) {
	.process-list li {
		width: calc(50% - 20px);
		margin: 10px;
	}
	.process-list li:not(:last-child)::after {
		top: 40px;
		right: -40px;
		bottom: initial;
		margin: 0 20px;
		transform: rotate(0deg);
		animation: arrow-move-pc 1.5s infinite ease-in-out;
	}
	@keyframes arrow-move-pc {
		0% { transform: translate(0,0); opacity: 0.3; }
		50% { transform: translate(10px,0); opacity: 1; }
		100% { transform: translate(0,0); opacity: 0.3; }
	}
	@media only screen and (min-width: 768px) {
		@media only screen and (min-width: 992px) {
			.process-list li {
				width: calc(33.333% - 20px);
			}
			@media only screen and (min-width: 1200px) {
				.process-list li {
					width: calc(20% - 20px);
				}
			}
		}	
	}
}


/* area */
.service-area-all {
	position: relative;
	padding: 50px 0;
	background: #71BBE6;
	background: linear-gradient(250deg, rgba(113, 187, 230, 1) 0%, rgba(23, 115, 198, 1) 78%);
}
.service-area-all:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 16%;
	top: 0;
	left: 0;
	background-color: #fff;
}
.area-txt .tb-subhead {
    padding-left: 32px;
    background-image: url(../css-assets/images/svg-location.svg);
    background-repeat: no-repeat;
    background-position: left 10px;
    background-size: 30px;
}
.area-txt .tb-subhead h2 {
	text-align: left;
	padding-left: 1%;
}
.area-txt {
	position: relative;
	max-width: 970px;
	width: 90%;
	margin: auto;
	padding-bottom: 30px;
}
.area-txt h3.focus {
	position: relative;
	width: 90%;
	margin: auto;
	padding: 20px 0;
	padding-left: 1%;
	color: #fff;
}
.area-txt p {
	position: relative;
	max-width: 700px;
	width: 90%;
	padding: 20px 0;
	padding-left: 1%;
	margin: auto;
	color: #fff;
	text-align: justify;
}
.service-area-all .call-box a {
    padding-right: 0;
    padding-left: 76px;
    text-align: left;
	background-color: #fff;
}
.service-area-all .call-box a:before {
	right: initial;
	left: 12px;
}
.service-area-all .call-box a:after {
	right: initial;
	left: 12px;
}
.service-area-all .call-box a.tel {
	color: #1773C6;
}
.service-area-all .call-box a.tel:before {
	background-color: #1773C6;
}
.service-area-all .call-box a.tel:after {
	background-image: url(../css-assets/images/svg-phone-white.svg);
}
.service-area-all .call-box a.line {
	color: #77C25A;
}
.service-area-all .call-box a.line:before {
	background-color: #77C25A;
}
.service-area-all .call-box a.line:after {
	background-image: url(../css-assets/images/svg-line-white.svg);
}
.service-area-all .call-box a.form {
	color: #61B9FA;
}
.service-area-all .call-box a.form:before {
	background-color: #61B9FA;
}
.service-area-all .call-box a.form:after {
	background-image: url(../css-assets/images/svg-email-white.svg);
	background-size: 28px;
}
.area-slider {
	position: relative;
	max-width: 606px;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	z-index: 1;
}
.area-slider:before {
	position: relative;
	content: '';
	display: block;
	width: 100%;
	padding-bottom: 85%;
}
.area-slider .photo {
	position: absolute;
	animation: round 12s cubic-bezier(.08,.69,0,1) infinite;
 	opacity: 0;
}
.area-slider .photo {
    height: auto!important;
    z-index: 0;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
@keyframes round {
	25% {
		opacity: 1;
	}
	39.999% {
		opacity: 1;
	}
	40% {
		opacity: 0;
	}
}
.area-slider img:nth-child(1) {
	animation-delay: 8s;
}
.area-slider img:nth-child(2) {
	animation-delay: 4s;
}
.area-slider img:nth-child(3) {
	animation-delay: 0s;
}
@media only screen and (min-width: 559px) {
	@media only screen and (min-width: 600px) {
		.service-area-all .call-box a {
		    padding-left: 60px;
		}
		@media only screen and (min-width: 768px) {
			.service-area-all .call-box a {
			    padding-left: 76px;
			}
			@media only screen and (min-width: 992px) {
				.service-area-all:before {
	                height: 27%;
	            }
	            .area-txt {
	            	padding-bottom: 0;
	            }
				.area-txt .tb-subhead {
				    background-position: left 15px;
				    background-size: 36px;
				}
				.area-txt .tb-subhead h2 big {
					display: block;
					padding-bottom: 20px;
	                font-size: 3rem;
	                line-height: 3rem;
	            }
	            .service-area-all .call-box {
	            	padding-left: 36px;
				    justify-content: flex-start;
				}
				@media only screen and (min-width: 1200px) {
					.service-area-all:before {
						height: 30%;
					}
					.service-area-all .flist {
						align-items: center;
					}
					.area-txt .tb-subhead {
						padding-left: 100px;
						padding-bottom: 30px;
						background-position: left top;
						background-size: contain;
					}
					.area-txt .tb-subhead h2 big {
	                    display: inline-block;
	                    vertical-align: sub;
						padding-bottom: 0;
	                }
	                .area-txt h3.focus,
					.area-txt p {
						margin: 0;
					}
					.service-area-all .call-box {
		            	padding-left: 0;
		            }
					@media only screen and (min-width: 1500px) {
						.service-area-all:before {
							height: 34%;
						}
		                .service-area-all .call-box a {
		                    width: 31.333%;
		                }
	                }
				}
			}	
		}
	}
}


/* service */
.service-A {
	position: relative;
	background: #71BBE6;
	background: linear-gradient(33deg, rgba(113, 187, 230, 1) 0%, rgba(23, 115, 198, 1) 57%);
}
.service-A:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 5%;
	top: 0;
	left: 0;
	background-color: #fff;
}
.sA-a {
	position: relative;
}
.sA-a-txt {
	position: relative;
	max-width: 850px;
	width: 90%;
	margin: auto;
	padding: 7vw 0;
}
.sA-a-txt h3 {
	width: 90%;
	color: #fff;
	margin: auto;
}
.sA-a-txt p {
	position: relative;
	color: #fff;
	text-align: justify;
}
.sA-a-txt span.key-word {
	width: 90%;
	color: #fff;
	margin: auto;
}
.sA-a-txt .title {
	position: relative;
	width: 90%;
	margin: auto;
    padding: 20px 0;
    display: flex;
    flex-wrap: wrap;
    /*align-items: center;*/
}
.sA-a-txt .title .num {
    position: relative;
    display: block;
    font-size: 2rem;
    color: #1772C5;
    font-weight: 600;
    padding-top: 18px;
}
.sA-a-txt .title h2 {
    position: relative;
    color: #333;
    padding: 20px 0;
    padding-left: 20px;
    font-size: 1.8rem;
    line-height: 1.8rem;
    font-weight: 600;
    letter-spacing: 4px;
}
.sA-a-txt .title h2 small {
    position: relative;
    display: block;
    color: #1772C5;
    padding-top: 20px;
    letter-spacing: 1px;
    font-size: 1rem;
    line-height: 1rem;
}
.sA-a-txt h3.focus {
	padding: 20px 0;
}
.sA-a-txt p {
	position: relative;
	max-width: 800px;
	width: 90%;
	margin: auto;
	text-align: justify;
	padding: 20px 0;
}
.sA-a-txt span.key-word {
	position: relative;
	display: block;
	padding: 20px 0;
}
.sA-b {
	position: relative;
	max-width: 1900px;
	width: 93%;
	margin: auto;
	padding: 3vw 0;
}
.sA-b:before {
	position: absolute;
	display: block;
	content: '';
	height: 100%;
	width: 100%;
	top: 0;
	right: 0;
	background-color: #fff;
	border-radius: 20px;
	box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
	z-index: 1;
}
.sA-b-pic {
	position: relative;
	width: 90%;
	margin: 0 auto;
}
.sA-b-txt {
	position: relative;
	width: 90%;
	margin: 0 auto;
}
.sA-b-txt .inner {
	position: relative;
	max-width: 860px;
	width: 90%;
	margin: auto;
	padding-top: 40px;
}
.sA-b h2.top-txt {
	position: relative;
	max-width: 1570px;
	width: 90%;
	margin: auto;
	color: #fff;
	font-size: 2.4rem;
    line-height: 2.6rem;
    text-align: center;
	/*font-size: 3rem;*/
	font-weight: 600;
	padding: 20px 0;
	-webkit-text-stroke: 1px rgba(113,185,229,.7);
  	text-stroke: 1px rgba(113,185,229,.7);
	z-index: 2;
}
.sA-b h2.top-txt:before {
	position: absolute;
	display: none;
	content: '';
	width: calc(100% - 330px);
	height: 1px;
	top: 50%;
	right: 0;
	background-color: #85C9FB;
}
.rope .sA-b h2.top-txt:before {
	width: calc(100% - 510px);
}
.height .sA-b h2.top-txt:before {
    width: calc(100% - 420px);
}
/*.sA-b .flist {
	position: relative;
	max-width: 1570px;
	width: 90%;
	margin: auto;
	padding: 3vw 0;
	align-items: center;
	z-index: 2;
}*/
.sA-b-list {
	position: relative;
	max-width: 1440px;
	width: 90%;
	margin: auto;
	/*margin-bottom: 30px;*/
	padding: 3vw 0 60px;
	z-index: 2;
}
.sA-b-list li {
	position: relative;
	align-items: center;
}
.sA-b-list li .flist {
	align-items: center;
}
.sA-b-list li .num {
	position: absolute;
	top: 18px;
	left: 0;
	color: #aaa;
	font-size: 2rem;
	font-weight: 500;
}
.sA-b-list li .num i {
	color: #71BAE5;
}
.sA-b-list li h3 {
	position: relative;
	font-weight: 600;
	font-size: 1.8rem;
	letter-spacing: 4px;
	padding: 20px 0;
	color: #333;
}
.sA-b-list li p {
	position: relative;
	padding: 20px 0;
	text-align: justify;
}
.sA-b-list li a.more-btn {
	margin: auto;
	margin-top: 50px;
}
.sA-b-list .slick-arrow {
	top: 42%;
	background-color: #333;
	box-shadow: none;
}
.sA-b-list .slick-arrow.slick-prev {
	left: initial;
	right: 60px;
}
/*.sA-b-list .slick-arrow {
	top: initial;
	bottom: 0;
}
.sA-b-list .slick-arrow.slick-prev {
	left: calc(50% - 55px);
}
.sA-b-list .slick-arrow.slick-next {
	right: calc(50% - 55px);
}*/
.sA-b-list .slick-arrow:before {
	border-color: #fff;
}
.sA-b-tips {
	position: relative;
	padding: 3vw 0;
	border-top: 1px solid #eee;
	z-index: 2;
}
.tips-top-box {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	max-width: 1440px;
	width: 90%;
	margin: auto;
	padding: 3vw 0;
	align-items: center;
}
/*.tips-top-box .w-3 small {
	position: relative;
	display: block;
	color: #71B9E5;
	font-weight: 600;
	padding-bottom: 10px;
}
.tips-top-box .w-3 h3 {
	position: relative;
	font-weight: 600;
	color: #333;
	font-size: 1.6rem;
}*/
.tips-top-box .w-3 .tb-subhead h2 small {
	padding-bottom: 10px;
}
.tips-top-box .w-7 p {
	position: relative;
	max-width: 890px;
	width: 90%;
	margin: auto;
	text-align: justify;
}
.tips-list {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	max-width: 1440px;
	width: 90%;
	margin: 30px auto;
}
.tips-list li {
	position: relative;
	width: 100%;
	padding: 3vw 0;
	margin: 0 auto;
	border-bottom: 1px solid #eee;
}
.tips-list li:first-child {
	border-top: 1px solid #eee;
}
.tips-list li h3 {
    position: relative;
    max-width: 600px;
    width: 90%;
    margin: auto;
    font-weight: bold;
    color: #333;
    padding-left: 23px;
    background-image: url(../client/waterproof-09.jpeg);
    background-repeat: no-repeat;
    background-position: left 8px;
    background-size: 15px;
}
.tips-list li p {
	position: relative;
	text-align: justify;
	padding-top: 20px;
	max-width: 600px;
	width: 90%;
	margin: auto;
	font-size: 1.05rem;
	line-height: 1.7rem;
}
@media only screen and (min-width: 500px) {
	.sA-b-list .slick-arrow {
	    top: 55%;
	    right: 50px;
    }
    .sA-b-list .slick-arrow.slick-prev {
	    right: 110px;
    }
	@media only screen and (min-width: 559px) {
		.service-A:before {
			height: 6%;
		}
		.sA-b-list .slick-arrow {
		    top: 60%;
		}
		@media only screen and (min-width: 768px) {
	        .sA-a-txt .title .num {
	            font-size: 4rem;
	            line-height: 4rem;
	        }
			.sA-b h2.top-txt {
				text-align: left;
			}
			.sA-b h2.top-txt:before {
				display: block;
			}
			.sA-b-list {
				padding: 3vw 0;
			}
			.sA-b-list .slick-arrow {
			    top: 62%;
			}
			.tips-top-box .w-3 .tb-subhead h2 br {
				display: none;
			}
			@media only screen and (min-width: 992px) {
				.service-A:before {
					height: 10%;
				}
				.sA-a:before {
					position: absolute;
					display: block;
					content: '';
					width: 40%;
					height: 100%;
					top: 0;
					right: 0;
					background-image: url(../client/waterproof-10.jpeg);
					background-repeat: no-repeat;
					background-position: center top;
					background-size: cover;
				}
				.rope .sA-a:before {
					background-image: url(../client/rain-01.jpeg);
				}
				.hright .sA-a:before {
					background-image: url(../client/rain-02.jpeg);
				}
				.sA-a .w-6 {
					margin: 0;
				}
				.sA-a-txt .title {
				    padding-bottom: 50px;
				}
			    .sA-a-txt h3.focus {
	                font-size: 1.7rem;
	                line-height: 2rem;
	            }
	            .sA-b {
	            	margin-right: 0;
	            }
				.sA-b:before {
					border-radius: 0;
					border-top-left-radius: 80px;
					border-bottom-left-radius: 80px;
				}
				.sA-b-list li .num {
					top: calc(2vw + 20px);
					left: initial;
					right: 0;
				}
				.sA-b-pic {
					width: 35%;
				}
				.sA-b-txt {
					width: 65%;
				}
				.sA-b-list li a.more-btn {
					margin: 0;
					margin-top: 50px;
				}
				.sA-b-list .slick-arrow {
				    top: 4vw;
				    bottom: initial;
				}
				.sA-b-list .slick-arrow.slick-prev {
					left: initial;
				    right: calc(2vw + 60px);
				}
				.sA-b-list .slick-arrow.slick-next {
				    right: 2vw;
				}
				.tips-list li {
					width: 50%;
					border-bottom: none;
				}
				.tips-list li:first-child {
					border-top: none;
				}
				.tips-list li:nth-child(even) {
					border-left: 1px solid #eee;
				}
				.tips-list li:nth-child(n+3) {
					border-top: 1px solid #eee;
				}
				.tips-list li h3 {
					padding-left: 40px;
					background-position: left 5px;
					background-size: 26px;
				}
				.tips-top-box {
					padding-left: 3vw;
				}
				.tips-top-box .w-3 {
					border-right: 1px solid #ddd;
				}
				.tips-top-box .w-3 .tb-subhead h2 {
					text-align: left;
				}
				.tips-top-box .w-3 .tb-subhead h2 br {
					display: block;
				}
				@media only screen and (min-width: 1200px) {
					.sA-a-txt .title {
					    align-items: center;
					}
					.sA-a-txt .title .num {
						padding-top: 0;
					}
					.sA-a-txt .title h2 small {
	                    display: inline-block;
	                    vertical-align: middle;
	                    padding-left: 20px;
	                    padding-top: 0;
	                }
	                .sA-a-txt .title,
	                .sA-a-txt h3.focus,
					.sA-a-txt p,
					.sA-a-txt span.key-word {
						margin: 0;
					}
	                .sA-b h2.top-txt {
	                	font-size: 4rem;
	                	line-height: 4rem;
	                }
	                .sA-b h2.top-txt:before {
						width: calc(100% - 550px);
					}
					.rope .sA-b h2.top-txt:before {
	                    width: calc(100% - 820px);
	                }
	                .height .sA-b h2.top-txt:before {
	                    width: calc(100% - 670px);
	                }
					.tips-top-box .w-3 .tb-subhead h2 br {
						display: none;
					}
				}
			}	
		}
	}
}


/* service - faq */
.s-faq-all {
	position: relative;
	padding: 2vw 0 50px;
	background-color: #EDF6FC;
}
.s-faq-all:before {
	position: absolute;
	display: none;
	content: '';
	width: 24%;
	height: 110%;
	bottom: 0;
	left: 0;
	background-image: url(../client/rain-03.jpeg);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
	opacity: .1;
}
.rope .s-faq-all:before {
	background-image: url(../client/rain-04.jpeg);
}
.height .s-faq-all:before {
	background-image: url(../client/rain-05.jpeg);
}
.s-faq-all:after {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 10%;
	top: -10%;
	left: 0;
	background-color: #EDF6FC;
}
.s-faq-all .inner {
	position: relative;
	width: 90%;
	margin: 0 auto;
}
.s-faq-all .tb-subhead h2 {
	padding: 30px 0;
	margin-bottom: 40px;
}
.s-faq-all .tb-faq-list {
	padding: 0;
	margin: 0 auto;
}
.s-faq-all .tb-faq-list .item {
    padding: 0 4vw;
}
.s-faq-all .tb-faq-list .q:after {
	margin-top: -22px;
}
.s-faq-all .tb-faq-list input:checked ~ .q:after {
	margin-top: -3px;
}
@media only screen and (min-width: 559px) {
	@media only screen and (min-width: 767px) {
		.s-faq-all:before {
			display: block;
		}
		@media only screen and (min-width: 992px) {
			.s-faq-all:before {
				opacity: 1;
			}
			.s-faq-all:after {
				display: none;
			}
			.s-faq-all .inner {
				width: 76%;
				margin-right: 0;
			}
			.s-faq-all .tb-subhead h2 {
				text-align: left;
				padding-left: 4vw;
			}
			.s-faq-all .tb-faq-list .q {
			    padding: 50px 0;
			}
			.s-faq-all .tb-faq-list input:checked ~ .a-content {
			    padding-bottom: 50px;
			}
			@media only screen and (min-width: 1200px) {
	
			}
		}
	}
}


/* faq page  */
#faq-page .tb-breadcrumb,
#faq-page .tb-share {
	display: none;
}
#faq-page .tb-page-container:before {
	position: absolute;
	display: block;
	content: '';
	width: 23%;
	height: 100%;
	top: 0;
	left: 0;
	background-image: url(../client/rain-06.jpeg);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
}
#faq-page .page-outer-space {
	padding: 0;
}
#faq-page .tb-page-category {
    padding: 30px 0;
}
.faq-right {
	position: relative;
	width: 100%;
	margin: auto;
	background-color: #E8F3FB;
}
.faq-right .tb-faq-list {
	max-width: initial;
	margin: 0 auto;
	padding: 0;
}
.faq-right .tb-faq-list .item {
    padding: 0 3vw;
}
@media only screen and (min-width: 559px) {
	@media only screen and (min-width: 767px) {
		
		@media only screen and (min-width: 992px) {
			#faq-page .tb-page-category {
			    padding: 0;
			}
			.faq-right {
				width: 76%;
				margin-right: 0;
			}
			#faq-page .tb-page-category-list {
			    padding: 3vw 0;
			    padding-left: 3vw;
			    text-align: left;
			}
			#faq-page .tb-page-category-list li {
                max-width: 230px;
                width: calc(33.333% - 10px);
                margin: 10px;
                padding: 0;
			}
			#faq-page .tb-page-category-list li a {
				max-width: initial;
                border-color: #fff;
                background: #fff;
                color: #444;
                text-align: center;
            }
            #faq-page .tb-page-category-list li.active a {
                border-color: #1773C6;
                background: #1773C6;
                color: #fff;
            }
			@media only screen and (min-width: 1200px) {
	
			}
		}
	}
}


/* 顏色 */
.point-link {
	color: #1773C6;
}
.fff-link:hover,
.point-link:hover {
	text-decoration: underline;
}
.about-C .text h5 {
    position: relative;
}
/* about */
.about-A,
.about-A .flist,
.about-A .cont * {
	position: relative;
}
.about-A .flist:before {
	position: absolute;
	display: block;
	content: "";
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: #EDF6FC;
}
.about-A .pic {
	position: relative;
}
.about-A .pic .txt {
	position: absolute;
	width: 100%;
	max-width: 997px;
	height: auto;
	margin: 0 auto;
	right: 0;
	bottom: 0;
	padding-inline: 1.5rem;
	padding-block: 2rem;
	font-weight: 600;
	color: var(--menu-text-color);
	font-size: clamp(1.5rem, 4vw, 1.88rem);
	background: linear-gradient(90deg, #ffffffcc 0%, transparent 100%);
}
.about-A .pic .txt span {
	display: block;
	padding-top: .4rem;
	font-size: clamp(1.2rem, 3vw, 1.48rem);
}
.about-A .pic img {
	width: 100%;
    height: 100%;
    aspect-ratio: 4/3;
    object-fit: cover;
    object-position: bottom;
    margin: 0 auto;
}
.about-A .cont {
	width: 94%;
    max-width: 650px;
    margin: 0 auto;
    padding-bottom: 3rem;
}
.about-A .cont .title-box {
	padding-block: 3rem 2rem;
	padding-inline: 2rem;
}
.about-A .cont .title-box .title {
	margin: 0 auto;
	line-height: 1.4;
}
.about-A .cont .title-box h1 {
	display: flex;
	align-items: center;
	column-gap: 1rem;
	color: var(--light-blue);
	font-weight: 600;
	font-size: clamp(2rem, 5vw, 3.54rem);
}
.about-A .cont .title-box h1 span {
	color: var(--menu-text-color);
	font-size: clamp(1.4rem, 4vw, 1.65rem);
	font-family: 'Microsoft JhengHei UI', 'Microsoft JhengHei', 'Arial', sans-serif;
}
.about-A .cont .title-box big {
	display: block;
	margin: 0 auto;
	margin-top: 20px;
	font-weight: 700;
	color: var(--menu-text-color);
	font-size: clamp(1.4rem, 4vw, 1.88rem);
	letter-spacing: 4px;
}
.about-A .cont .title-box big a:hover {
	color: #1773C6;
	/*opacity: .8;*/
}
.about-A .cont .title-box big span {
	position: relative;
	display: block;
	padding-bottom: 10px;
}
.about-A .cont .text_btn {
	padding-inline: 2rem;
}
.about-A .cont .text_btn p {
	margin: 0 auto;
	text-align: justify;
	padding-bottom: 1rem;
}
@media only screen and (min-width: 559px) {
	.about-A .pic .txt span {
		padding-top: .8rem;
	}
	@media only screen and (min-width: 768px) {
		.about-A .cont .text_btn p {
			padding-bottom: 3rem;
		}
		@media only screen and (min-width: 992px) {
			.about-A .flist:before {
				height: 33%;
			}
			.about-A .half-box:nth-of-type(1) {
				position: sticky;
				top: 0;
				right: 0;
			}
			.about-A .pic img {
				aspect-ratio: unset;
			}
			@media only screen and (min-width: 1200px) {
				.about-A .flist:before {
					height: 38%;
				}
				@media only screen and (min-width: 1400px) {
					.about-A .flist:before {
						height: 46%;
					}
					.about-A .pic .txt {
						width: 90%;
					}
					.about-A .pic img {
						width: 90%;
						margin: 0;
						margin-left: auto;
					    height: unset;
					    object-fit: unset;
					    object-position: unset;
					}
					.about-A .cont {
						width: unset;
    					max-width: unset;
					}
					.about-A .cont .title-box {
						padding-block: 5rem 3rem;
					}
					.about-A .cont .text_btn p,
					.about-A .cont .title-box .title {
						width: 93%;
						max-width: 630px;
					}
					.about-A .cont .title-box h1 {
						padding-bottom: 2rem;
					}
					@media only screen and (min-width: 1600px) {
						.about-A .cont .title-box h1,
						.about-A .cont .title-box big,
						.about-A .cont .text_btn p {
							padding-inline: 2.2rem;
						}
						.about-A .cont .text_btn p {
							padding-block: 3rem;
						}
						@media only screen and (min-width: 1800px) {
							.about-A .flist:before {
								height: 38%;
							}
						}
					}
				}
			}
		}
	}
}

/* about-B */
.about-B {
	margin-block: 3rem;
}
.about-B .B-cont {
	width: 93%;
	max-width: 1568px;
	margin: 0 auto;
}
.title-txt {
	text-align: center;
	line-height: 1.4;
	color: var(--light-blue);
	font-weight: 600;
	font-size: clamp(2rem, 5vw, 3.54rem);
	margin-bottom: 2rem;
}
.title-txt p {
	color: var(--menu-text-color);
	font-size: clamp(1.4rem, 4vw, 1.65rem);
}
.about-B .B-cont .pic {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-evenly;
}
.about-B .B-cont .pic img {
	aspect-ratio: 4/3;
	border-radius: 3%;
}
.about-B .B-cont .pic img:last-child {
	aspect-ratio: unset;
	border-radius: unset;
}

@media only screen and (min-width: 992px) {
	.about-B {
		margin-block: 4rem 6rem;
	}
	.about-B .B-cont .pic {
		gap: 0;
	}
	.about-B .B-cont .pic img:last-child {
		width: 28%;
	}
	@media only screen and (min-width: 1200px) {
		.about-B .B-cont .pic img {
			width: calc(90% / 2);
		}
		@media only screen and (min-width: 1600px) {
			.about-B .B-cont .pic img {
				width: unset !important;
			}
		}
	}
}

/* about-C */
.about-C .C-cont {
	position: relative;
	counter-reset: h5-counter;
}
.about-C .C-cont:before {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 80%;
	left: 0;
	top: 0;
	background: linear-gradient(23deg, #71BBE6 0%, #1773C6 100%);
}
.about-C .C-cont:after {
	position: absolute;
	content: "";
	display: block;
	width: 100vw;
	height: 0.5px;
	top: 20%;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: var(--base-bg-color);
	opacity: 1;
}
.about-C .C-cont .flist01 {
	width: 93%;
	max-width: 1650px;
	margin: 0 auto;
	align-items: stretch;
}
.about-C .flist,
.about-C .half-box:first-child {
	position: relative;
}
.about-C .text {
	width: 93%;
	max-width: 740px;
	margin: 0 auto;	
	padding-block: 5rem 3rem;
	padding-inline: 2rem;
	color: var(--base-bg-color);
}
.about-C .text h5 {
	position: relative;
	text-align: center;
	font-weight: 600;
	padding-top: 3rem;
	padding-bottom: 2rem;
	counter-increment: h5-counter;
	font-size: clamp(1.35rem, 4vw, 1.4vw);
}
.about-C .text h5:before {
	position: absolute;
	content: counter(h5-counter, decimal-leading-zero);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 3.8rem;
    height: 3.8rem;
    padding-bottom: .3rem;
	background-color: #85C9FB;
	border-radius: 50%;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	font-family: "Barlow", sans-serif;
	font-size: clamp(1.4rem, 4vw, 1.88rem);
	box-shadow: 0 0px 15px rgba(0, 0, 0, 0.03);
}
.about-C .text p {
	text-align: justify;
	font-size: 1.125rem;
}
.about-C .main-B:before {
	display: none;
}

@media only screen and (max-width: 466px) {
	.about-C .C-cont:after {
		top: 21.5%;
	}
	.about-C .half-box:last-child .text h5 {
		text-align: justify;
	}
}
@media only screen and (max-width: 519px) {
	.about-C .half-box:first-child .text h5 {
		text-align: justify;
	}
}
@media only screen and (min-width: 559px) {
	.about-C .C-cont:after {
		top: 27%;
	}
	@media only screen and (min-width: 768px) {
		.about-C .C-cont:after {
			top: 24.6%;
		}
		@media only screen and (min-width: 992px) {
			.about-C .text {
				width: unset;
				max-width: unset;
				padding-block: 5rem;
			}
			.about-C .text h5 {
				padding-top: 4rem;
			}
			.about-C .C-cont:after {
				opacity: 0;
			}
			.about-C .half-box:first-child:before {
				position: absolute;
				content: "";
				display: block;
				width: 1px;
				height: calc(100% - 38%);
				right: 0;
				top: calc(100% - 75%);
				background-color: var(--base-bg-color);
			}
			@media only screen and (min-width: 1200px) {
				.about-C .text {
					width: 93%;
					max-width: 740px;
				}
				.about-C .half-box:first-child:before {
					height: calc(100% - 40%);
					top: calc(100% - 72%);
				}
				.about-C .half-box:first-child .text p {
					line-height: 1.8;
				}
				@media only screen and (min-width: 1400px) {
					.about-C .half-box:first-child .text p {
						line-height: 2.2;
					}
				}
			}
		}
	}
}

/* about-D */
.about-D,
.about-D .D-cont {
	position: relative;
}
.about-D {
	margin-top: 5rem;
	padding-bottom: 3rem;
}
.about-D:before {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 55%;
	left: 0;
	bottom: 0;
	background-color: #EDF6FC;
}
.about-D .D-cont {
	width: 93%;
	max-width: 1865px;
	margin: 0 auto;
}
.about-D .tb-photo-list .item {
    padding-top: 10px;
}
.about-D .tb-photo-list .item .pic {
	box-shadow: none;
	background-color: var(--base-bg-color);
	transition: box-shadow .3s ease, transform .3s ease;
}
.about-D .tb-photo-list .item:hover .pic {
    box-shadow: 0 8px 35px -5px rgba(0, 0, 0, 0.15);
    transform: translateY(-4px);
}
.about-D .tb-photo-list .item .text span {
	position: relative;
	display: block;
	font-weight: 600;
	text-align: center;
	margin-bottom: 1.5rem;
	padding-bottom: 2rem;
	color: var(--menu-text-color);
	font-size: clamp(1.25rem, 3vw, 1.4rem);
}
.about-D .tb-photo-list .item .text span:after {
	position: absolute;
	content: "";
	display: block;
	width: 158px;
	height: 5px;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	background-color: #71BBE6;
}
.about-D .tb-photo-list .slick-arrow:before {
	border-color: var(--base-bg-color);
}
.about-D .tb-photo-list .slick-arrow {
	top: -5%;
	background-color: #85C9FB;
	width: 45px;
	height: 45px;
}

@media only screen and (min-width: 559px) {
	.about-D .tb-photo-list .slick-prev {
		left: -30px;
	}
	.about-D .tb-photo-list .slick-next {
		right: -30px;
	}
	.about-D .tb-photo-list .item .pic {
		box-shadow: 0 4px 30px -5px rgba(0, 0, 0, 0.08);
	}
	.about-D .tb-photo-list .slick-arrow {
		top: 50%;
	}
	@media only screen and (min-width: 768px) {
		@media only screen and (min-width: 992px) {
			.about-D {
				padding-bottom: 5rem;
			}
			.about-D .tb-photo-list .slick-prev {
				left: -43px;
			}
			.about-D .tb-photo-list .slick-next {
				right: -43px;
			}
			@media only screen and (min-width: 1200px) {
				.about-D .tb-photo-list .item .pic {
					box-shadow: none;
				}
				@media only screen and (min-width: 1400px) {
					.about-D .tb-photo-list .item .pic {
						box-shadow: 0 4px 30px -5px rgba(0, 0, 0, 0.08);
					}
					@media only screen and (min-width: 1600px) {
						.about-D .tb-photo-list .slick-arrow {
							width: 50px;
							height: 50px;
						}
						.about-D .tb-photo-list .slick-prev {
							left: -80px;
						}
						.about-D .tb-photo-list .slick-next {
							right: -80px;
						}
						.about-D .tb-photo-list .item .pic {
							box-shadow: none;
						}
					}
				}
			}
		}
	}
}


/* contact */
#contact-page .tb-page-container {
	background: #71BBE6;
	background: linear-gradient(337deg, rgba(113, 187, 230, 1) 0%, rgba(23, 115, 198, 1) 80%);
}
#contact-page .tb-page-container:before {
	position: absolute;
	display: block;
	content: '';
	width: 100%;
	height: 40%;
	bottom: 0;
	right: 0;
	background-color: #EDF6FC;
}
#contact-page .tb-page-container .page-outer-space {
	padding: 0;
}
#contact-page .tb-breadcrumb {
	display: none;
}
.contact-top-box {
	position: relative;
	max-width: 530px;
	width: 100%;
	color: #fff;
	margin: auto;
	padding: 3vw 0;
}
.contact-top-box.flist,
.contact-top-box .flist {
	align-items: center;
}
.top-left .tb-subhead {
	max-width: 500px;
}
.top-left .tb-subhead h2 {
	color: #fff;
	padding: 0;
	margin: 0 auto;
}
.top-left .tb-subhead h2 big {
	display: block;
    color: #1773c6;
    font-size: 3rem;
    line-height: 3rem;
    padding-top: 10px;
    -webkit-text-stroke: .3px rgba(255, 255, 255, 1);
    text-stroke: .3px rgba(255, 255, 255, 1);
}
.contact-info {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	margin: 20px 0;
	padding-left: 20px;
}
.contact-info li {
	position: relative;
	width: 100%;
	font-size: 1.2rem;
	font-weight: 600;
	padding: 10px 0;
	padding-left: 130px;
	background-repeat: no-repeat;
}
.contact-info li.tel {
	background-image: url(../css-assets/images/svg-phone-white.svg);
	background-size: 20px;
	background-position: 4px 15px;
}
.contact-info li.addr {
	background-image: url(../css-assets/images/svg-location-white.svg);
	background-size: 28px;
	background-position: left 12px;
}
.contact-info li b {
	position: absolute;
	top: 10px;
    left: 30px;
}
/*.contact-info li a {
	padding-left: 100px;
}*/
.contact-social {
	position: relative;
	display: flex;
	flex-wrap: wrap;
}
.contact-social a {
	position: relative;
	max-height: 190px;
	width: calc(50% - 20px);
	margin: 10px;
	padding: 6vw 0;
	background-color: #fff;
	border-radius: 24px;
	transition: all .3s;
}
.contact-social a:hover {
	transform: translate(-1px,-1px);
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}
.contact-social a i {
    position: relative;
    display: block;
    font-weight: bold;
    text-align: center;
	padding-top: 50px;
    padding-left: 0;
    background-repeat: no-repeat;
	background-position: center top;
	background-size: 40px;
}
.contact-social a.fb i {
	color: #0059B2;
	background-image: url(../css-assets/images/svg-facebook.svg);
}
.contact-social a.line i {
	color: #77C25A;
	background-image: url(../css-assets/images/svg-line.svg);
}
.contact-bottom-box {
	position: relative;
	width: 100%;
	padding: 3vw 0;
	background-color: #fff;
}
.bottom-left {
	position: relative;
	width: 90%;
	margin: 0 auto;
}
.bottom-left .map {
	position: relative;
	max-width: 600px;
	width: 90%;
	margin: auto;
}
.bottom-right {
	position: relative;
	width: 90%;
	margin: 0 auto;
}
.tb-form-contact:before {
	background-image: url();
}
.tb-form-contact .tb-subhead {
	max-width: 820px;
	width: 90%;
	margin: auto;
}
.form-contact-box {
	max-width: 820px;
	width: 90%;
}
.form-title,
.form-txt .list-item-label {
	font-weight: bold;
	color: #666;
}
.btn-rest {
	color: #777;
	background: #ddd;
	border-radius: 0;
	box-shadow: none;
}
.btn-send {
	background: #237AC9;
	border-color: #237AC9;
	border-radius: 0;
	box-shadow: none;
}
.contact-title i {
	color: #61C1B4;
}
.contact-title {
	border-bottom-color: #cccccc;
}
.form-txt .form-item {
	margin-right: 20px;
}
input[type=radio], input[type=checkbox] {
    width: 16px;
    height: 16px;
    vertical-align: baseline;
}
input[type=radio], input[type=checkbox] {
	margin: 0;
}
input[type='radio'] {
    accent-color: #237AC9;
    border-radius: 100%;
}
input[type='checkbox'] {
    accent-color: #237AC9;
}
input[type="checkbox"]:not(:checked):not(:disabled),
input[type="radio"]:not(:checked):not(:disabled) {
	appearance: none;
	background-color: #ddd;
    border: none;
}
.form-txt .input-style {
	border: none;
	background-color: #ddd;
	border-radius: 0;
}
input[type=text]:focus, input[type=email]:focus, input[type=tel]:focus, input[type=number]:focus, textarea:focus, select:focus {
    border: none;
    box-shadow: none;
}
.table01.lengthS {
	border: none;
	border-bottom: 1px solid #666;
	background-color: transparent;
	font-weight: normal;
}
input[type=text].table01.lengthS:focus {
	border-bottom: 1px solid #666;
}
@media only screen and (min-width: 559px) {
	@media only screen and (min-width: 767px) {
		.top-left .tb-subhead {
			margin: 0;
		}
		.top-left .tb-subhead h2 big {
			font-size: 4.5rem;
			line-height: 4.5rem;
		}
		@media only screen and (min-width: 992px) {
			.contact-top-box {
				max-width: 1840px;
			}
			.top-left {
				width: 90%;
			}
			.top-left .tb-subhead h2 {
				text-align: left;
			}
			.top-left .tb-subhead h2 big {
				font-size: 3rem;
				line-height: 3rem;
			}
			.top-right {
				width: 90%;
			}
			.contact-info {
				border-left: 1px solid rgba(255, 255, 255, .5);
			}
			.contact-info li {
				font-size: 1.4rem;
				padding-left: 150px;
			}
			.contact-bottom-box {
				max-width: 1840px;
				width: 92%;
				border-top-right-radius: 3vw;
				box-shadow: rgba(0, 0, 0, 0.35) 0px 10px 15px;
			}
			.bottom-left {
				position: sticky;
				top: 4vw;
				left: 0;
				width: 45%;
			}
			.bottom-right {
				width: 55%;
			}
			.tb-form-contact .tb-subhead h1 {
				text-align: left;
			}
			.contact-social a {
                padding: 50px 0;
            }
			@media only screen and (min-width: 1200px) {
				.contact-top-box {
					width: 92%;
					margin: 0;
				}
				.top-left {
					width: 40%;
				}
				.top-left .tb-subhead {
					max-width: 350px;
					margin: auto;
				}
				.top-right {
					width: 60%;
				}
				.contact-social a {
					width: calc(90% - 20px);
	                padding: 25px 0;
	                border-radius: 14px;
	            }
				.contact-social a i {
					padding-top: 0;
				    padding-left: 20px;
				    background-position: calc(50% - 72px) top;
				    background-size: contain;
				}
				@media only screen and (min-width: 1400px) {
					.top-left .tb-subhead {
						max-width: 500px;
					}
					.top-left .tb-subhead h2 big {
						font-size: 4.5rem;
						line-height: 4.5rem;
					}
					@media only screen and (min-width: 1500px) {
						.contact-social a {
							width: calc(50% - 20px);
							padding: 50px 0;
						}
						.contact-social a i {
							padding-top: 50px;
						    padding-left: 0;
							background-position: center top;
							background-size: 40px;
						}
					}

				}
			}
		}
	}
}

/* 高空服務頁已移除服務地區輪播，文字區改為完整寬度。 */
.service-area-all > .flist > .w-6 {
    width: 100%;
}

/* 兆杰工程客製化：限制品牌圖像與內容圖片，不改變原有版型結構。 */
@media only screen and (min-width: 1201px) {
    .tb-logo-box {
        width: 240px;
        max-width: 240px;
        height: 80px;
        margin-top: 20px;
        margin-bottom: 20px;
        margin-right: 4%;
        display: flex;
        align-items: center;
    }

    .tb-logo,
    .tb-logo img {
        max-height: 80px;
        height: 80px;
        width: auto;
        max-width: 100%;
        object-fit: contain;
    }
}

@media only screen and (max-width: 1200px) and (min-width: 769px) {
    .tb-logo-box {
        width: 210px;
        max-width: 210px;
        height: 72px;
        display: flex;
        align-items: center;
    }

    .tb-logo,
    .tb-logo img {
        max-height: 72px;
        height: 72px;
        width: auto;
        max-width: 100%;
        object-fit: contain;
    }
}

/* Logo follows the header/navigation row and never grows beyond it. */
@media only screen and (min-width: 1201px) {
    .tb-logo-box { width: 300px; max-width: 300px; height: 80px; }
    .tb-logo-box .tb-logo-txt {
        position: relative;
        order: 2;
        width: auto;
        height: auto;
        margin: 0 0 0 14px;
        overflow: visible;
        clip: auto;
        color: #111;
        font-size: 1.7rem;
        font-weight: 800;
        line-height: 1;
        white-space: nowrap;
    }
    .tb-logo-box .tb-logo { order: 1; }
    .tb-logo,
    .tb-logo img { height: 72px; max-height: 72px; }
}

@media only screen and (max-width: 1200px) and (min-width: 769px) {
    .tb-logo-box { width: 250px; max-width: 250px; height: 64px; }
    .tb-logo-box .tb-logo-txt {
        position: relative; order: 2; width: auto; height: auto; margin-left: 10px;
        overflow: visible; clip: auto; color: #111; font-size: 1.25rem;
        font-weight: 800; line-height: 1; white-space: nowrap;
    }
    .tb-logo-box .tb-logo { order: 1; }
    .tb-logo,
    .tb-logo img { height: 56px; max-height: 56px; }
}

@media only screen and (max-width: 768px) {
    .tb-logo-box { width: 205px; max-width: 205px; height: 44px; }
    .tb-logo-box .tb-logo-txt {
        position: relative; order: 2; width: auto; height: auto; margin-left: 7px;
        overflow: visible; clip: auto; color: #111; font-size: 1.05rem;
        font-weight: 800; line-height: 1; white-space: nowrap;
    }
    .tb-logo-box .tb-logo { order: 1; }
    .tb-logo,
    .tb-logo img { height: 38px; max-height: 38px; }
}

@media only screen and (max-width: 768px) {
    .tb-logo-box {
        width: 140px;
        max-width: 140px;
        height: 42px;
        margin-top: 9px;
        margin-bottom: 9px;
        display: flex;
        align-items: center;
    }

    .tb-logo,
    .tb-logo img {
        max-height: 42px;
        height: 42px;
        width: auto;
        max-width: 100%;
        object-fit: contain;
    }
}

/* 客戶照片比例不一，卡片統一裁切在既有圖片框內。 */
#index-page .tb-photo-list .item .pic,
#index-page .tb-photoB-SList-slick .item .pic,
#index-page .tb-photoB-MList-slick .item .pic,
#index-page .tb-news-list-block .item .pic,
#index-page .tb-news-list-row .item .pic,
#index-page .tb-news-big-slick .item .pic,
#index-page .tb-news-small-slick .item .pic,
#index-page .about-A .pic {
    overflow: hidden;
}

#index-page .tb-photo-list .item .pic img,
#index-page .tb-photoB-SList-slick .item .pic img,
#index-page .tb-photoB-MList-slick .item .pic img,
#index-page .tb-news-list-block .item .pic img,
#index-page .tb-news-list-row .item .pic img,
#index-page .tb-news-big-slick .item .pic img,
#index-page .tb-news-small-slick .item .pic img,
#index-page .about-A .pic img {
    max-width: 100%;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Homepage-only content sizing. The inner page templates keep their original layout. */
#index-page .mainA-item01 .tb-subhead h2 big {
    display: inline-block;
    white-space: nowrap;
}

/* This was a decorative source-site image; remove it so it cannot appear as
   an extra card beside the homepage service section. */
#index-page .mainA-item02::after {
    display: none;
}

#index-page .tb-photoB-MList-slick .item .pic::before,
#index-page .tb-photoB-MList-slick .item:hover .pic::before {
    background-image: none !important;
}

#index-page .mainB-right ul li .pic {
    height: 260px;
    max-height: 260px;
    overflow: hidden;
}

#editor-page .main-B .mainB-right ul li .pic {
    height: 260px;
    max-height: 260px;
    overflow: hidden;
}

#editor-page .main-B .mainB-right ul li .pic img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#index-page .mainB-right ul li .pic img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#index-page .footer-brand {
    color: #fff;
    font-size: 2.4rem;
    font-weight: 800;
    letter-spacing: .12em;
    line-height: 1.2;
    padding: 18px 0 12px;
    white-space: nowrap;
}

#index-page .footer-info li {
    word-break: keep-all;
    white-space: nowrap;
}

/* 內頁頁尾與首頁使用相同的品牌文字、尺寸與地址排版。 */
.footer-brand {
    color: #fff;
    font-size: 2.4rem;
    font-weight: 800;
    letter-spacing: .12em;
    line-height: 1.2;
    padding: 18px 0 12px;
    white-space: nowrap;
}

.footer-info li {
    word-break: keep-all;
    white-space: nowrap;
}

/* 關於兆杰的整合服務文字維持在自己的內容區，避免被右側固定圖片覆蓋或裁切。 */
#editor-page .about-A .flist.row-reverse > .half-box:nth-child(2) > .half-box {
    width: 100%;
    margin-top: 1rem;
    padding: 2rem;
    background: #EDF6FC;
}

#editor-page .about-A .flist.row-reverse > .half-box:nth-child(2) > .half-box .text {
    width: 100%;
    max-width: 650px;
    margin: 0 auto;
}

#editor-page .about-A .flist.row-reverse > .half-box:nth-child(2) > .half-box .text h5 {
    margin: 0 0 1.5rem;
    color: #333;
    font-size: clamp(1.6rem, 3vw, 2.3rem);
    font-weight: 800;
    line-height: 1.4;
    text-align: center;
}

/* 關於我們內文：將長段落拆成帶框重點，桌機雙欄、手機單欄。 */
#editor-page .about-content-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

#editor-page .about-content-list li {
    position: relative;
    min-height: 3.5rem;
    padding: 1rem 1rem 1rem 2.4rem;
    border: 1px solid rgba(113, 187, 230, .55);
    border-radius: 8px;
    background: rgba(255, 255, 255, .78);
    color: #555;
    line-height: 1.8;
    text-align: left;
}

#editor-page .about-content-list li:before {
    position: absolute;
    content: '';
    width: 8px;
    height: 8px;
    top: 1.55rem;
    left: 1rem;
    border-radius: 50%;
    background: #1773C6;
    box-shadow: 0 0 0 4px rgba(113, 187, 230, .18);
}

/* 首頁服務項目：02/03 保留原本分頁與圖片，只移除文字內容；03 圖片在既有區域內裁成橫式。 */
#index-page .mainA-item02 #tab2 .txt,
#index-page .mainA-item02 #tab3 .txt {
    display: none;
}

#index-page .mainA-item02 #tab2 .pic,
#index-page .mainA-item02 #tab3 .pic {
    width: 100%;
    height: 390px;
    max-height: 390px;
    overflow: hidden;
}

#index-page .mainA-item02 #tab2 .pic img,
#index-page .mainA-item02 #tab3 .pic img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media only screen and (max-width: 768px) {
    #index-page .mainB-right ul li .pic {
        height: 190px;
        max-height: 190px;
    }

    #editor-page .main-B .mainB-right ul li .pic {
        height: 190px;
        max-height: 190px;
    }

    #index-page .footer-brand {
        font-size: 1.9rem;
    }

    .footer-brand {
        font-size: 1.9rem;
    }

    #index-page .footer-info li {
        white-space: normal;
    }

    .footer-info li {
        white-space: normal;
    }

    #editor-page .about-content-list {
        grid-template-columns: 1fr;
    }

    #index-page .mainA-item02 #tab2 .pic,
    #index-page .mainA-item02 #tab3 .pic {
        height: 240px;
        max-height: 240px;
    }
}

.tb-page-inner img,
.tb-i-photoB img,
.tb-i-service img {
    max-width: 100%;
}
