@charset "UTF-8";
.partnerArea .partnerList .partnerItem .Img a, .slideMenuArea .menuBox .nav > li.dropDown > span > a::before, .slideMenuArea .menuBox .nav > li.dropDown > span > a::after, .slideMenuTrigger .line::before, .slideMenuTrigger .line::after, .slideMenuTrigger .line, .slideMenuTrigger, header .contactBtn span img, header .menuBox .menu a::before, header, a {
	transition: all 0.5s;
}

@-webkit-keyframes fishing {
	0% {
		-webkit-transform: translate(-50%, -110%) rotate(90deg);
		        transform: translate(-50%, -110%) rotate(90deg);
	}
	15% {
		-webkit-transform: translate(-50%, -95%) rotate(90deg);
		        transform: translate(-50%, -95%) rotate(90deg);
	}
	30% {
		-webkit-transform: translate(-50%, -120%) rotate(90deg);
		        transform: translate(-50%, -120%) rotate(90deg);
	}
	50% {
		-webkit-transform: translate(-50%, -95%) rotate(90deg);
		        transform: translate(-50%, -95%) rotate(90deg);
	}
	70% {
		-webkit-transform: translate(-50%, -110%) rotate(90deg);
		        transform: translate(-50%, -110%) rotate(90deg);
	}
}

@keyframes fishing {
	0% {
		-webkit-transform: translate(-50%, -110%) rotate(90deg);
		        transform: translate(-50%, -110%) rotate(90deg);
	}
	15% {
		-webkit-transform: translate(-50%, -95%) rotate(90deg);
		        transform: translate(-50%, -95%) rotate(90deg);
	}
	30% {
		-webkit-transform: translate(-50%, -120%) rotate(90deg);
		        transform: translate(-50%, -120%) rotate(90deg);
	}
	50% {
		-webkit-transform: translate(-50%, -95%) rotate(90deg);
		        transform: translate(-50%, -95%) rotate(90deg);
	}
	70% {
		-webkit-transform: translate(-50%, -110%) rotate(90deg);
		        transform: translate(-50%, -110%) rotate(90deg);
	}
}
@-webkit-keyframes ripple {
	0% {
		opacity: 0.2;
		-webkit-transform: scale(0.8);
		        transform: scale(0.8);
	}
	70% {
		opacity: 1;
		-webkit-transform: scale(1);
		        transform: scale(1);
	}
	100% {
		opacity: 0;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}
@keyframes ripple {
	0% {
		opacity: 0.2;
		-webkit-transform: scale(0.8);
		        transform: scale(0.8);
	}
	70% {
		opacity: 1;
		-webkit-transform: scale(1);
		        transform: scale(1);
	}
	100% {
		opacity: 0;
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
}
@-webkit-keyframes check {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-5px);
		        transform: translateY(-5px);
	}
	90% {
		opacity: 1;
		-webkit-transform: translateY(2px);
		        transform: translateY(2px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}
@keyframes check {
	0% {
		opacity: 0;
		-webkit-transform: translateY(-5px);
		        transform: translateY(-5px);
	}
	90% {
		opacity: 1;
		-webkit-transform: translateY(2px);
		        transform: translateY(2px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		        transform: translateY(0);
	}
}
@-webkit-keyframes building {
	0% {
		opacity: 0;
		-webkit-transform: scaleY(0.8);
		        transform: scaleY(0.8);
	}
	70% {
		opacity: 1;
		-webkit-transform: scaleY(1.1);
		        transform: scaleY(1.1);
	}
	80% {
		opacity: 1;
		-webkit-transform: scaleY(0.85);
		        transform: scaleY(0.85);
	}
	90% {
		opacity: 1;
		-webkit-transform: scaleY(1.15);
		        transform: scaleY(1.15);
	}
	100% {
		opacity: 1;
		-webkit-transform: scaleY(1);
		        transform: scaleY(1);
	}
}
@keyframes building {
	0% {
		opacity: 0;
		-webkit-transform: scaleY(0.8);
		        transform: scaleY(0.8);
	}
	70% {
		opacity: 1;
		-webkit-transform: scaleY(1.1);
		        transform: scaleY(1.1);
	}
	80% {
		opacity: 1;
		-webkit-transform: scaleY(0.85);
		        transform: scaleY(0.85);
	}
	90% {
		opacity: 1;
		-webkit-transform: scaleY(1.15);
		        transform: scaleY(1.15);
	}
	100% {
		opacity: 1;
		-webkit-transform: scaleY(1);
		        transform: scaleY(1);
	}
}
@-webkit-keyframes sparkle {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes sparkle {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
/*master.css 共用樣式start*/
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
	display: block;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
	content: none;
}

* {
	-webkit-text-size-adjust: none;
}

a {
	text-decoration: none;
}

em {
	font-style: normal;
}

fieldset,
img {
	border: 0;
}

ol,
ul {
	list-style: none;
}

abbr,
acronym {
	border: 0;
}

input[type=text],
input[type=password],
textarea,
button {
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	background-color: transparent;
	border: none;
	border-radius: 0;
	font-size: 16px;
	outline: none;
	padding: 0;
	margin: 0;
}

.CLEAR {
	clear: both;
	height: 0;
	font-size: 0;
	line-height: 0;
}

.clearfix:after {
	content: "";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

* html .clearfix {
	height: 1%;
}

*:first-child + html .clearfix {
	min-height: 1%;
}

/*master.css 共用樣式 end*/
/*esg 樣式*/
* {
	box-sizing: border-box;
}

body {
	font-family: "Noto Sans TC", Helvetica, Arial, "微軟正黑體", Heiti TC, "メイリオ", sans-serif;
}

header {
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 50;
}
header .wrapBox {
	max-width: 1530px;
	-ms-flex-align: center;
	    align-items: center;
	display: -ms-flexbox;
	display: flex;
	padding-top: 12px;
	padding-bottom: 20px;
}
@media (max-width: 1200px) {
	header .wrapBox {
		padding-top: 15px;
		padding-bottom: 15px;
	}
}
header .logo {
	width: 210px;
	margin-top: 15px;
	margin-right: 110px;
}
header .logo a {
	display: block;
}
header .logo img {
	width: 100%;
	display: block;
}
@media (max-width: 1440px) {
	header .logo {
		width: 180px;
		margin-right: 25px;
	}
}
@media (max-width: 1200px) {
	header .logo {
		width: 180px;
		margin-top: 0;
		margin-right: 25px;
	}
}
@media (max-width: 480px) {
	header .logo {
		width: 150px;
		margin-right: 25px;
	}
}
header .menuBox .menu {
	width: 100%;
	-ms-flex-align: center;
	    align-items: center;
	display: -ms-flexbox;
	display: flex;
}
header .menuBox .menu li {
	padding: 0 20px;
}
header .menuBox .menu a {
	color: #000;
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: -0.01rem;
	display: block;
	padding: 20px 0;
	position: relative;
}
header .menuBox .menu a::before {
	content: "";
	width: 0;
	height: 5px;
	background-color: #d20000;
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 1;
}
header .menuBox .menu a:is(:hover, .current) {
	color: #d20000;
}
header .menuBox .menu a:is(:hover, .current)::before {
	width: 100%;
	left: 0;
}
@media (max-width: 1680px) {
	header .menuBox {
		-ms-flex: 1;
		    flex: 1;
	}
	header .menuBox .menu {
		-ms-flex-pack: justify;
		    justify-content: space-between;
	}
	header .menuBox .menu li {
		padding: 0 10px;
	}
}
@media (max-width: 1440px) {
	header .menuBox .menu li {
		padding: 0 8px;
	}
}
@media (max-width: 1280px) {
	header .menuBox .menu a {
		font-size: 15px;
	}
}
@media (max-width: 1200px) {
	header .menuBox {
		display: none;
	}
}
header .contactBtn {
	margin-left: 20px;
	margin-top: 10px;
	margin-bottom: 5px;
}
header .contactBtn a {
	background-color: #d20000;
	border-radius: 30px;
	box-shadow: 3px 4px 0 rgba(33, 33, 33, 0.2);
	color: #fff;
	display: block;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: -0.01rem;
	padding: 10px 43px;
}
header .contactBtn span {
	display: block;
	position: relative;
}
header .contactBtn span img {
	position: absolute;
	top: 50%;
	right: 0;
	z-index: 1;
	-webkit-transform: translate(100%, -45%);
	        transform: translate(100%, -45%);
}
header .contactBtn:hover a {
	background-color: #212121;
	box-shadow: 3px 4px 0 #d20000;
}
header .contactBtn:hover span img {
	-webkit-filter: brightness(0.7);
	        filter: brightness(0.7);
}
@media (max-width: 1440px) {
	header .contactBtn a {
		padding: 10px 28px;
	}
}
@media (max-width: 1200px) {
	header .contactBtn {
		margin-top: 0;
		margin-left: auto;
	}
}
@media (max-width: 480px) {
	header .contactBtn {
		margin-left: auto;
	}
	header .contactBtn a {
		width: 95px;
		font-size: 15px;
		padding: 6px 12px;
		text-align: center;
	}
}
@media (max-width: 375px) {
	header .contactBtn a {
		width: 85px;
	}
}
header.scrolled {
	background-color: #fff;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}

/*slideMenu*/
.slideMenuTrigger {
	width: 50px;
	height: 48px;
	-ms-flex-align: center;
	    align-items: center;
	background-color: #d20000;
	border: 1px solid #d20000;
	border-radius: 10px;
	cursor: pointer;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	    flex-direction: column;
	-ms-flex-pack: center;
	    justify-content: center;
	margin-left: 15px;
	position: relative;
}
.slideMenuTrigger .line {
	width: 50%;
	height: 1px;
	background-color: #fff;
	display: inline-block;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}
.slideMenuTrigger .line::before, .slideMenuTrigger .line::after {
	content: "";
	width: 100%;
	height: 1px;
	background-color: #fff;
	position: absolute;
	z-index: 1;
}
.slideMenuTrigger .line::before {
	top: 0;
	left: 0;
	-webkit-transform: translateY(-8px);
	        transform: translateY(-8px);
}
.slideMenuTrigger .line::after {
	bottom: 0;
	right: 0;
	-webkit-transform: translateY(8px);
	        transform: translateY(8px);
}
.slideMenuTrigger.close {
	margin-left: auto;
}
.slideMenuTrigger.close .line {
	background-color: transparent;
}
.slideMenuTrigger.close .line::before {
	top: 0;
	left: 0;
	-webkit-transform: translateY(0) rotate(45deg);
	        transform: translateY(0) rotate(45deg);
}
.slideMenuTrigger.close .line::after {
	bottom: 0;
	right: 0;
	-webkit-transform: translateY(0) rotate(-45deg);
	        transform: translateY(0) rotate(-45deg);
}
.slideMenuTrigger:hover {
	background-color: #fff;
}
.slideMenuTrigger:hover span {
	background-color: #383838;
}
.slideMenuTrigger:hover span::before, .slideMenuTrigger:hover span::after {
	background-color: #383838;
}
@media (min-width: 1441px) {
	.slideMenuTrigger {
		display: none;
	}
}
@media (max-width: 480px) {
	.slideMenuTrigger {
		width: 44px;
		height: 41px;
		-ms-flex-negative: 0;
		    flex-shrink: 0;
		margin-left: 12px;
	}
}
.slideMenuArea {
	width: 100%;
	max-width: 480px;
	height: 100vh;
	background-color: #fff;
	opacity: 0;
	overflow-x: hidden;
	padding-bottom: calc(40px + env(safe-area-inset-bottom));
	pointer-events: none;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 99;
	-webkit-transform: translateX(100%);
	        transform: translateX(100%);
	transition: all 0.6s ease-in-out;
	-webkit-overflow-scrolling: touch;
}
.slideMenuArea::-webkit-scrollbar-track {
	box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.15);
	background-color: #fff;
}
.slideMenuArea::-webkit-scrollbar {
	width: 5px;
	height: 5px;
	background-color: #fff;
}
.slideMenuArea::-webkit-scrollbar-thumb {
	background: #d20000;
}
.slideMenuArea.show {
	opacity: 1;
	pointer-events: auto;
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}
.slideMenuArea.show .topBox {
	-webkit-animation: textSlideRightAnimation 0.5s 0.6s ease-in-out both;
	        animation: textSlideRightAnimation 0.5s 0.6s ease-in-out both;
}
.slideMenuArea.show .funcBox {
	-webkit-animation: textSlideRightAnimation 0.5s 0.9s ease-in-out both;
	        animation: textSlideRightAnimation 0.5s 0.9s ease-in-out both;
}
.slideMenuArea.show .menuBox {
	-webkit-animation: textSlideRightAnimation 0.5s 1.2s ease-in-out both;
	        animation: textSlideRightAnimation 0.5s 1.2s ease-in-out both;
}
.slideMenuArea.show .menuBox .nav li.dropDown.open .submenu {
	-webkit-animation: textSlideDownAnimation 0.3s 0.15s ease-in-out both;
	        animation: textSlideDownAnimation 0.3s 0.15s ease-in-out both;
}
.slideMenuArea.show .socialBox {
	-webkit-animation: textSlideRightAnimation 0.5s 1.5s ease-in-out both;
	        animation: textSlideRightAnimation 0.5s 1.5s ease-in-out both;
}
.slideMenuArea .wrap {
	padding-left: 30px;
	padding-right: 30px;
}
.slideMenuArea .topBox {
	-ms-flex-align: center;
	    align-items: center;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	    justify-content: space-between;
	padding: 20px 0 15px;
}
.slideMenuArea .topBox .slideMenuLogo {
	width: 135px;
}
.slideMenuArea .topBox .slideMenuLogo img {
	max-width: 100%;
	display: inline-block;
	vertical-align: middle;
}
.slideMenuArea .menuBox {
	width: 100%;
	padding: 15px 0;
}
.slideMenuArea .menuBox .nav > li {
	border-bottom: 2px solid rgba(0, 0, 0, 0.3);
	padding: 10px 0;
	position: relative;
}
.slideMenuArea .menuBox .nav > li.dropDown > span {
	cursor: pointer;
}
.slideMenuArea .menuBox .nav > li.dropDown > span > a::before, .slideMenuArea .menuBox .nav > li.dropDown > span > a::after {
	content: "";
	width: 12px;
	height: 1px;
	background-color: #d20000;
	position: absolute;
	top: 50%;
	right: 5px;
	-webkit-transform: translate(-50%, 0);
	        transform: translate(-50%, 0);
	z-index: 1;
}
.slideMenuArea .menuBox .nav > li.dropDown > span > a::after {
	-webkit-transform: translate(-50%, 0) rotate(90deg);
	        transform: translate(-50%, 0) rotate(90deg);
}
.slideMenuArea .menuBox .nav > li.dropDown > span > a.current::before, .slideMenuArea .menuBox .nav > li.dropDown > span > a.current::after {
	background-color: #d20000;
}
.slideMenuArea .menuBox .nav > li.dropDown.open > span > a::after {
	-webkit-transform: translate(-50%, 0) rotate(0);
	        transform: translate(-50%, 0) rotate(0);
}
.slideMenuArea .menuBox .nav > li.dropDown.open .submenu {
	display: block;
}
.slideMenuArea .menuBox .nav > li a {
	color: #383838;
	display: block;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0px;
	padding: 15px;
	position: relative;
}
.slideMenuArea .menuBox .nav > li a::before {
	content: "";
	width: 4px;
	height: 18px;
	background-color: #c82638;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 1;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.slideMenuArea .menuBox .nav > li a:hover, .slideMenuArea .menuBox .nav > li a.current {
	color: #000;
}
.slideMenuArea .menuBox .nav .submenu {
	width: 100%;
	display: none;
	padding: 0 10px 10px;
}
.slideMenuArea .menuBox .nav .submenu li {
	padding: 5px 0;
}
.slideMenuArea .menuBox .nav .submenu li a {
	color: #3a3a3a;
	font-size: 15px;
	font-weight: 500;
	padding: 5px 0;
}
.slideMenuArea .menuBox .nav .submenu li a:hover {
	color: #d20000;
}
.slideMenuMask {
	position: fixed;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 98;
	background-color: rgba(0, 0, 0, 0.7);
	opacity: 0;
	pointer-events: none;
	transition: all 0.5s;
}
.slideMenuMask.show {
	opacity: 1;
	pointer-events: auto;
}

.btnBox .btn {
	color: #fff;
	background-color: #d20000;
	border: 1px solid #d20000;
	box-shadow: 3px 4px #c3bab4;
	border-radius: 50px;
	display: inline-block;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.2rem;
	padding: 27px 112px;
	position: relative;
	text-align: center;
}
.btnBox .btn.small {
	font-size: 18px;
	letter-spacing: 0.14rem;
	padding: 24px 76px;
}
.btnBox .btn.extraSmall {
	letter-spacing: 0.14rem;
	padding: 24px 40px;
}
.btnBox .btn.white {
	background-color: #fff;
	color: #d20000;
}
.btnBox .btn.white2 {
	background-color: #fff;
	box-shadow: 3px 4px #891f20;
	color: #d20000;
}
.btnBox .btn:hover {
	background-color: #212121;
	box-shadow: 3px 4px #d20000;
}
.btnBox .btn:hover.white {
	background-color: #d20000;
	box-shadow: 3px 4px #c3bab4;
	color: #fff;
}
.btnBox .btn:hover.white2 {
	border-color: #212121;
	box-shadow: 3px 4px #999;
	color: #fff;
}
@media (max-width: 1680px) {
	.btnBox .btn {
		font-size: 18px;
		padding: 20px 65px;
	}
	.btnBox .btn.small {
		padding: 20px 65px;
	}
	.btnBox .btn.extraSmall {
		padding: 20px 40px;
	}
}
@media (max-width: 1440px) {
	.btnBox .btn {
		font-size: 16px;
		padding: 15px 50px;
	}
	.btnBox .btn.small {
		font-size: 16px;
		padding: 15px 50px;
	}
	.btnBox .btn.extraSmall {
		padding: 15px 40px;
	}
}
@media (max-width: 1024px) {
	.btnBox .btn {
		font-size: 15px;
		letter-spacing: 0.05rem;
		padding: 13px 40px;
	}
	.btnBox .btn.small, .btnBox .btn.extraSmall {
		font-size: 15px;
		letter-spacing: 0.05rem;
		padding: 15px 40px;
	}
}

.wrapBox {
	width: 100%;
	max-width: 1570px;
	margin: 0 auto;
	padding: 0 20px;
}

.mainContent {
	position: relative;
	overflow: hidden;
}

.titleBox {
	margin: 0 auto 65px;
	text-align: center;
}
.titleBox .titleEn {
	color: #b9b9b9;
	font-size: 17px;
	font-weight: 500;
	font-family: "Poppins", "Noto Sans TC", "微軟正黑體", serif;
	line-height: 1;
	letter-spacing: 0.02rem;
}
.titleBox .titleTw {
	font-size: 39px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: -0.01rem;
	margin-top: 14px;
	padding-bottom: 43px;
	position: relative;
}
.titleBox .titleTw::before {
	content: "";
	width: 35px;
	height: 4px;
	background-color: #d20000;
	border-radius: 10px;
	position: absolute;
	bottom: 0;
	left: 50%;
	z-index: 1;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
}
.titleBox .subtitle {
	font-size: 25px;
	line-height: 1;
	letter-spacing: -0.01rem;
	margin-top: 30px;
}
.titleBox .subtitle.large {
	font-size: 30px;
}
.titleBox .text {
	font-size: 18px;
	line-height: 1.7;
	letter-spacing: -0.01rem;
	margin-top: 15px;
}
.titleBox.yellow .titleEn, .titleBox.yellow .titleTw, .titleBox.yellow .subtitle, .titleBox.yellow .text {
	color: #d20000;
}
.titleBox.orange .titleTw {
	color: #ef402b;
}
.titleBox.large .titleEn {
	font-size: 20px;
}
.titleBox.large .titleTw {
	font-size: 60px;
}
@media (max-width: 1680px) {
	.titleBox.large .titleTw {
		font-size: 50px;
	}
}
@media (max-width: 1440px) {
	.titleBox.large .titleEn {
		font-size: 18px;
	}
	.titleBox.large .titleTw {
		font-size: 46px;
	}
	.titleBox .titleTw, .titleBox.large .titleTw {
		font-size: 46px;
	}
}
@media (max-width: 1200px) {
	.titleBox {
		margin-bottom: 30px;
	}
	.titleBox .titleEn, .titleBox.large .titleEn {
		font-size: 17px;
	}
	.titleBox .titleTw, .titleBox.large .titleTw {
		font-size: 40px;
		margin-top: 10px;
		padding-bottom: 25px;
	}
	.titleBox .subtitle {
		font-size: 20px;
		line-height: 1.5;
		margin-top: 15px;
	}
	.titleBox .subtitle.large {
		font-size: 25px;
	}
	.titleBox .text {
		font-size: 17px;
	}
}
@media (max-width: 1024px) {
	.titleBox .titleEn, .titleBox.large .titleEn {
		font-size: 16px;
	}
	.titleBox .titleTw, .titleBox.large .titleTw {
		font-size: 34px;
	}
	.titleBox .text {
		font-size: 16px;
	}
}
@media (max-width: 768px) {
	.titleBox .titleTw, .titleBox.large .titleTw {
		font-size: 30px;
	}
}
@media (max-width: 640px) {
	.titleBox .titleTw, .titleBox.large .titleTw {
		font-size: 26px;
	}
	.titleBox .subtitle {
		font-size: 18px;
	}
	.titleBox .subtitle.large {
		font-size: 22px;
	}
}
@media (max-width: 480px) {
	.titleBox .titleTw, .titleBox.large .titleTw {
		font-size: 22px;
	}
	.titleBox .subtitle,
.titleBox .subtitle.large {
		font-size: 18px;
	}
}
@media (max-width: 374px) {
	.titleBox .titleTw, .titleBox.large .titleTw {
		font-size: 22px;
	}
}

.bannerArea .wrapBox {
	max-width: 100%;
	padding: 0;
}
.bannerArea .bannerBox {
	position: relative;
}
.bannerArea .Img {
	position: relative;
}
.bannerArea .Img img {
	display: block;
}
.bannerArea .Img img:not(.deco) {
	width: 100%;
}
.bannerArea .Img img.deco {
	width: auto;
	max-width: 100%;
	opacity: 0;
	position: absolute;
	z-index: 1;
}
.bannerArea .Img img.deco1 {
	width: 5.4655%;
	top: 13.5%;
	right: 20.8%;
	-webkit-transform: translateY(-15px);
	        transform: translateY(-15px);
	transition: all 0.6s ease-in-out;
}
.bannerArea .Img img.deco2 {
	width: 6.516%;
	bottom: 6.5%;
	right: 55.2%;
	-webkit-transform: translateX(-15px);
	        transform: translateX(-15px);
	transition: all 0.6s 0.4s ease-in-out;
}
.bannerArea .Img img.deco3 {
	width: 7.8822%;
	bottom: -0.2%;
	right: 8.25%;
	-webkit-transform: translateX(15px);
	        transform: translateX(15px);
	transition: all 0.6s 0.8s ease-in-out;
}
@media (max-width: 768px) {
	.bannerArea .Img {
		padding-bottom: 75%;
	}
	.bannerArea .Img img:not(.deco) {
		width: 100%;
		height: 100%;
		margin: auto;
		object-fit: cover;
		object-position: 15%;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 1;
	}
	.bannerArea .Img img.deco1 {
		width: 8%;
		top: 15%;
		right: 5%;
	}
	.bannerArea .Img img.deco2 {
		width: 9%;
		bottom: 3%;
		right: 40%;
	}
	.bannerArea .Img img.deco3 {
		width: 12%;
		bottom: 0;
		right: 3%;
	}
}
@media (max-width: 640px) {
	.bannerArea .Img {
		padding-bottom: 100%;
	}
	.bannerArea .Img img:not(.deco) {
		object-position: 30%;
	}
	.bannerArea .Img img.deco1 {
		display: none;
	}
	.bannerArea .Img img.deco2 {
		display: none;
	}
	.bannerArea .Img img.deco3 {
		display: none;
	}
}
@media (max-width: 480px) {
	.bannerArea .Img {
		padding-bottom: 125%;
	}
	.bannerArea .Img img:not(.deco) {
		object-position: 0;
	}
}
.bannerArea .Txt {
	max-width: 1305px;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	    flex-direction: column;
	-ms-flex-pack: center;
	    justify-content: center;
	margin: 0 auto;
	padding: 140px 20px 60px;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}
.bannerArea .Txt .textBox {
	width: 48%;
	max-width: 520px;
	margin-left: 0;
	text-align: left;
}
.bannerArea .Txt .textBox .titleTw {
	font-size: 59px;
	font-weight: 900;
	line-height: 1.15;
	letter-spacing: -0.03rem;
	opacity: 0;
	-webkit-transform: translateY(20px);
	        transform: translateY(20px);
	transition: all 0.6s ease-in-out;
}
.bannerArea .Txt .textBox .titleEn {
	color: #5f5f5f;
	font-size: 35px;
	font-weight: 500;
	font-family: "Poppins", "Noto Sans TC", "微軟正黑體", serif;
	opacity: 0;
	line-height: 1.2;
	letter-spacing: -0.04rem;
	margin-top: 20px;
	-webkit-transform: translateY(20px);
	        transform: translateY(20px);
	transition: all 0.6s 0.4s ease-in-out;
}
.bannerArea .Txt .textBox .titleEn span {
	color: #d20000;
}
.bannerArea .Txt .textBox .text {
	color: #393939;
	font-size: 19px;
	font-weight: 500;
	margin-top: 30px;
	opacity: 0;
	line-height: 1.7;
	letter-spacing: 0.03rem;
	-webkit-transform: translateY(20px);
	        transform: translateY(20px);
	transition: all 0.6s 0.8s ease-in-out;
}
.bannerArea .Txt .textBox .btnBox {
	margin-top: 45px;
	opacity: 0;
	-webkit-transform: translateY(20px);
	        transform: translateY(20px);
	transition: all 0.6s 1.2s ease-in-out;
}
@media (max-width: 1680px) {
	.bannerArea .Txt .textBox .titleTw {
		font-size: 50px;
		font-weight: 700;
	}
	.bannerArea .Txt .textBox .titleEn {
		font-size: 30px;
	}
	.bannerArea .Txt .textBox .text {
		font-size: 17px;
		margin-top: 20px;
	}
	.bannerArea .Txt .textBox .btnBox {
		margin-top: 30px;
	}
}
@media (max-width: 1440px) {
	.bannerArea .Txt {
		max-width: 1160px;
	}
}
@media (max-width: 1200px) {
	.bannerArea .Txt {
		padding: 80px 20px 20px;
	}
	.bannerArea .Txt .textBox .titleTw {
		font-size: 38px;
	}
	.bannerArea .Txt .textBox .titleEn {
		font-size: 24px;
		margin-top: 12px;
	}
	.bannerArea .Txt .textBox .text {
		font-size: 16px;
		margin-top: 15px;
	}
	.bannerArea .Txt .textBox .btnBox {
		margin-top: 15px;
	}
}
@media (max-width: 1024px) {
	.bannerArea .Txt .textBox .titleTw {
		font-size: 34px;
	}
	.bannerArea .Txt .textBox .titleEn {
		font-size: 20px;
		margin-top: 10px;
	}
	.bannerArea .Txt .textBox .text {
		line-height: 1.4;
		margin-top: 10px;
	}
}
@media (max-width: 768px) {
	.bannerArea .Txt .textBox {
		width: 60%;
		max-width: initial;
	}
}
@media (max-width: 480px) {
	.bannerArea .Txt .textBox {
		width: 100%;
	}
	.bannerArea .Txt .textBox .text {
		font-size: 15px;
	}
}
@media (max-width: 400px) {
	.bannerArea .Txt .textBox .titleTw {
		font-size: 30px;
	}
}
.bannerArea.show .Img img.deco {
	opacity: 1;
}
.bannerArea.show .Img img.deco1 {
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}
.bannerArea.show .Img img.deco2 {
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}
.bannerArea.show .Img img.deco3 {
	-webkit-transform: translateX(0);
	        transform: translateX(0);
}
.bannerArea.show .Txt .titleEn, .bannerArea.show .Txt .titleTw, .bannerArea.show .Txt .text, .bannerArea.show .Txt .btnBox {
	opacity: 1;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}

.problemArea {
	background-color: #fff7f7;
	padding: 100px 0 20px;
	position: relative;
	z-index: 2;
}
@media (max-width: 1200px) {
	.problemArea {
		padding: 60px 0 20px;
	}
}
.problemArea .problemDeco {
	width: 100%;
	height: 94px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	-webkit-transform: translateY(100%);
	        transform: translateY(100%);
}
.problemArea .problemDeco img {
	width: 100%;
	height: 100%;
	display: block;
	object-fit: cover;
}
.problemArea .problemBox {
	margin-top: 55px;
}
@media (max-width: 1200px) {
	.problemArea .problemBox {
		margin-top: 30px;
	}
}
.problemArea .problemBox .problemList {
	max-width: 1200px;
	-ms-flex-align: center;
	    align-items: center;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-ms-flex-pack: center;
	    justify-content: center;
	margin: 0 auto;
}
@media (max-width: 1680px) {
	.problemArea .problemBox .problemList {
		max-width: 1080px;
	}
}
.problemArea .problemBox .problemItem {
	width: auto;
	-ms-flex-align: end;
	    align-items: flex-end;
	border-bottom: 3px solid #fff;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 35px;
	padding-bottom: 20px;
	padding-right: 50px;
	position: relative;
}
.problemArea .problemBox .problemItem:nth-child(odd)::before, .problemArea .problemBox .problemItem:nth-last-child(2)::before {
	content: "";
	width: 6px;
	height: 6px;
	background-color: #ffd9d9;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	right: 30px;
	z-index: 1;
	-webkit-transform: translate(50%, -150%);
	        transform: translate(50%, -150%);
}
.problemArea .problemBox .problemItem:last-child::before {
	display: none;
}
.problemArea .problemBox .problemItem .Txt {
	-ms-flex: 1;
	    flex: 1;
}
.problemArea .problemBox .problemItem .Txt .title {
	font-size: 29px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.01rem;
}
.problemArea .problemBox .problemItem .Txt .title span {
	border: 1px solid #f2f2f2;
	background-color: #fff;
	border-radius: 30px;
	font-weight: 700;
	display: inline-block;
	padding: 18px 22px;
	margin-left: 10px;
	margin-right: 10px;
}
@media (max-width: 1680px) {
	.problemArea .problemBox .problemItem .Txt .title {
		font-size: 24px;
	}
	.problemArea .problemBox .problemItem .Txt .title span {
		padding: 14px 18px;
		margin-left: 6px;
		margin-right: 6px;
	}
}
@media (max-width: 1024px) {
	.problemArea .problemBox .problemItem {
		margin-bottom: 20px;
		padding-bottom: 10px;
		padding-right: 25px;
	}
	.problemArea .problemBox .problemItem:nth-child(odd)::before, .problemArea .problemBox .problemItem:nth-last-child(2)::before {
		display: none;
	}
	.problemArea .problemBox .problemItem .Txt .title {
		font-size: 20px;
	}
	.problemArea .problemBox .problemItem .Txt .title span {
		padding: 12px 14px;
		margin: 5px;
	}
}
@media (max-width: 768px) {
	.problemArea .problemBox .problemItem .Txt .title {
		font-size: 18px;
	}
	.problemArea .problemBox .problemItem .Txt .title span {
		padding: 10px 12px;
	}
}
@media (max-width: 640px) {
	.problemArea .problemBox .problemItem {
		margin-bottom: 10px;
		padding-bottom: 10px;
		padding-right: 0;
		text-align: center;
	}
}

.solveArea {
	background: linear-gradient(90deg, #fff 32px, transparent 1%) center, linear-gradient(#fff 32px, transparent 1%) center, #ffe3e3;
	background-size: 34px 34px;
	padding: 180px 0 35px;
}
@media (max-width: 1200px) {
	.solveArea {
		padding: 150px 0 60px;
	}
}
.solveArea .wrapBox {
	max-width: 1320px;
	margin: 0 auto;
}
.solveArea .titleBox {
	max-width: 800px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 60px;
}
.solveArea .titleBox .titleTw {
	margin-top: 8px;
	line-height: 1.45;
}
.solveArea .solveList .solveItem {
	width: 100%;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: justify;
	    justify-content: space-between;
	position: relative;
}
.solveArea .solveList .solveItem .Img {
	position: relative;
}
.solveArea .solveList .solveItem .Img img {
	max-width: 100%;
	position: relative;
	z-index: 2;
}
.solveArea .solveList .solveItem .Img::before {
	content: "";
	width: 100%;
	height: 250px;
	border-bottom: 2px dashed #d20000;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	bottom: 0;
	z-index: 1;
	transition: all 0.5s 1s ease-in-out;
}
.solveArea .solveList .solveItem .Txt {
	width: 490px;
}
.solveArea .solveList .solveItem .Txt .topBox {
	color: #d20000;
	display: -ms-flexbox;
	display: flex;
}
.solveArea .solveList .solveItem .Txt .topBox .sequence {
	padding-top: 10px;
}
.solveArea .solveList .solveItem .Txt .topBox .sequence .text {
	font-size: 16px;
	font-weight: 600;
	font-family: "Poppins", "Noto Sans TC", "微軟正黑體", serif;
	line-height: 1;
	letter-spacing: 0.015rem;
	text-align: justify;
}
.solveArea .solveList .solveItem .Txt .topBox .sequence .number {
	font-size: 90px;
	font-weight: 700;
	font-family: "Oswald", "Noto Sans TC", "微軟正黑體", serif;
	line-height: 1;
	letter-spacing: -0.05rem;
	margin-top: 8px;
}
.solveArea .solveList .solveItem .Txt .topBox .title {
	font-size: 32px;
	font-weight: 700;
	-ms-flex: 1;
	    flex: 1;
	line-height: 1.4;
	letter-spacing: 0.07rem;
	padding-left: 25px;
}
.solveArea .solveList .solveItem .Txt .topBox .title a {
	color: #000;
	display: block;
}
.solveArea .solveList .solveItem .Txt .topBox .title a span {
	color: #d20000;
}
.solveArea .solveList .solveItem .Txt .topBox .title a:hover {
	color: #d20000;
}
.solveArea .solveList .solveItem .Txt .bottomBox {
	margin-top: 25px;
}
.solveArea .solveList .solveItem .Txt .bottomBox .text {
	color: #000;
	font-size: 16px;
	line-height: 1.8;
	letter-spacing: 0.035rem;
}
.solveArea .solveList .solveItem .Txt .bottomBox .tagList {
	-ms-flex-align: center;
	    align-items: center;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.03rem;
	margin-top: 40px;
}
.solveArea .solveList .solveItem .Txt .bottomBox .tagList li {
	padding: 0 5px;
}
.solveArea .solveList .solveItem .Txt .bottomBox .btnBox {
	margin-top: 50px;
}
.solveArea .solveList .solveItem:nth-child(odd) {
	left: -55px;
	padding-bottom: 90px;
}
.solveArea .solveList .solveItem:nth-child(odd) .Img::before {
	left: 47%;
	-webkit-transform: rotate(48deg);
	        transform: rotate(48deg);
}
.solveArea .solveList .solveItem:nth-child(odd) .Txt .bottomBox .text {
	padding-left: 10px;
}
.solveArea .solveList .solveItem:nth-child(even) {
	-ms-flex-direction: row-reverse;
	    flex-direction: row-reverse;
	padding-bottom: 5px;
	left: 65px;
}
.solveArea .solveList .solveItem:nth-child(even) .Img::before {
	right: 36%;
	-webkit-transform: rotate(-48deg);
	        transform: rotate(-48deg);
}
.solveArea .solveList .solveItem:nth-child(even) .Txt {
	margin-top: 110px;
}
.solveArea .solveList .solveItem:nth-child(even) .Txt .topBox {
	padding-right: 10px;
}
.solveArea .solveList .solveItem:nth-child(even) .Txt .bottomBox .text {
	padding-right: 50px;
}
.solveArea .solveList .solveItem:nth-child(1) .Txt {
	margin-top: 70px;
}
.solveArea .solveList .solveItem:nth-child(3) {
	left: -10px;
}
.solveArea .solveList .solveItem:nth-child(3) .Txt {
	width: 540px;
	margin-top: 155px;
}
.solveArea .solveList .solveItem:last-child .Img::before {
	display: none;
}
.solveArea .solveList .solveItem.show .Img::before {
	opacity: 1;
}
@media (max-width: 1280px) {
	.solveArea .solveList .solveItem {
		-ms-flex-pack: center;
		    justify-content: center;
	}
	.solveArea .solveList .solveItem .Img {
		width: 50%;
	}
	.solveArea .solveList .solveItem .Txt {
		margin-top: 30px;
	}
	.solveArea .solveList .solveItem .Txt .topBox .sequence {
		padding-top: 10px;
	}
	.solveArea .solveList .solveItem .Txt .topBox .sequence .text {
		font-size: 15px;
	}
	.solveArea .solveList .solveItem .Txt .topBox .sequence .number {
		font-size: 80px;
		margin-top: 3px;
	}
	.solveArea .solveList .solveItem .Txt .topBox .title {
		font-size: 26px;
		padding-left: 20px;
	}
	.solveArea .solveList .solveItem .Txt .bottomBox .text {
		line-height: 1.5;
	}
	.solveArea .solveList .solveItem .Txt .bottomBox .tagList {
		font-size: 14px;
		margin-top: 25px;
	}
	.solveArea .solveList .solveItem .Txt .bottomBox .tagList li {
		padding: 0 3px;
	}
	.solveArea .solveList .solveItem .Txt .bottomBox .btnBox {
		margin-top: 30px;
	}
	.solveArea .solveList .solveItem:nth-child(odd) {
		padding-bottom: 50px;
		left: 0;
	}
	.solveArea .solveList .solveItem:nth-child(odd) .Txt {
		padding-left: 20px;
	}
	.solveArea .solveList .solveItem:nth-child(odd) .Txt .bottomBox .text {
		padding-left: 0;
	}
	.solveArea .solveList .solveItem:nth-child(even) {
		left: 0;
	}
	.solveArea .solveList .solveItem:nth-child(even) .Txt {
		margin-top: 30px;
		padding-right: 20px;
	}
	.solveArea .solveList .solveItem:nth-child(even) .Txt .topBox {
		padding-right: 0;
	}
	.solveArea .solveList .solveItem:nth-child(even) .Txt .bottomBox .text {
		padding-right: 0;
	}
	.solveArea .solveList .solveItem:nth-child(1) .Txt {
		margin-top: 30px;
	}
	.solveArea .solveList .solveItem:nth-child(3) {
		left: 0;
	}
}
@media (max-width: 1200px) {
	.solveArea .solveList .solveItem .Img::before {
		display: none;
	}
	.solveArea .solveList .solveItem:nth-child(even) {
		padding-bottom: 50px;
	}
	.solveArea .solveList .solveItem:nth-child(3) .Txt {
		margin-top: 70px;
	}
}
@media (max-width: 1024px) {
	.solveArea .solveList .solveItem .Img {
		width: 55%;
	}
}
@media (max-width: 860px) {
	.solveArea .solveList .solveItem {
		display: block;
		padding: 15px 0;
	}
	.solveArea .solveList .solveItem .Img {
		width: 80%;
		max-width: 400px;
		margin: 0 auto;
	}
	.solveArea .solveList .solveItem .Txt {
		width: 100%;
		max-width: 640px;
		margin: 30px auto 0;
	}
	.solveArea .solveList .solveItem .Txt .topBox .sequence .text {
		font-size: 12px;
		text-align: left;
	}
	.solveArea .solveList .solveItem .Txt .topBox .sequence .number {
		font-size: 60px;
	}
	.solveArea .solveList .solveItem .Txt .topBox .title {
		font-size: 24px;
	}
	.solveArea .solveList .solveItem .Txt .bottomBox {
		margin-top: 15px;
	}
	.solveArea .solveList .solveItem .Txt .bottomBox .text {
		font-size: 15px;
	}
	.solveArea .solveList .solveItem .Txt .bottomBox .tagList {
		margin-top: 20px;
	}
	.solveArea .solveList .solveItem .Txt .bottomBox .btnBox {
		margin-top: 20px;
	}
	.solveArea .solveList .solveItem:nth-child(odd) .Txt {
		padding-left: 0;
	}
	.solveArea .solveList .solveItem:nth-child(even) .Txt {
		padding-right: 0;
	}
	.solveArea .solveList .solveItem:nth-child(3) .Txt {
		width: 100%;
		max-width: 640px;
		margin: 30px auto 0;
	}
}
@media (max-width: 480px) {
	.solveArea .solveList .solveItem .Txt .topBox .sequence {
		display: none;
	}
	.solveArea .solveList .solveItem .Txt .topBox .title {
		padding-left: 0;
	}
}

.serviceArea {
	background-color: #f5f5f5;
	padding: 80px 0 120px;
	position: relative;
}
.serviceArea.show .serviceDeco2, .serviceArea.show .serviceDeco3 {
	opacity: 1;
	-webkit-transform: translateY(0);
	        transform: translateY(0);
}
@media (max-width: 1200px) {
	.serviceArea {
		padding: 60px 0;
	}
}
.serviceArea .serviceDeco img {
	width: 100%;
	display: block;
}
.serviceArea .serviceDeco1 {
	width: 100%;
	height: 92px;
	position: absolute;
	top: 1px;
	left: 0;
	z-index: 1;
	-webkit-transform: translateY(-100%);
	        transform: translateY(-100%);
}
.serviceArea .serviceDeco1 img {
	height: 100%;
	object-fit: cover;
}
.serviceArea .serviceDeco2 {
	width: 23.962%;
	opacity: 0;
	-webkit-transform: translateY(20px);
	        transform: translateY(20px);
	position: absolute;
	bottom: -53px;
	left: -3px;
	z-index: 1;
	transition: all 0.5s 0.5s ease-in-out;
}
.serviceArea .serviceDeco3 {
	width: 29.427%;
	opacity: 0;
	-webkit-transform: translateY(20px);
	        transform: translateY(20px);
	position: absolute;
	bottom: 90px;
	right: 0;
	z-index: 1;
	transition: all 0.5s 0.5s ease-in-out;
}
.serviceArea .wrapBox {
	max-width: 1260px;
	position: relative;
	z-index: 2;
}
@media (max-width: 1440px) {
	.serviceArea .wrapBox {
		max-width: 1024px;
	}
}
@media (max-width: 768px) {
	.serviceArea .wrapBox {
		max-width: 90%;
	}
}
.serviceArea .titleBox {
	margin-bottom: 60px;
}
@media (max-width: 1200px) {
	.serviceArea .titleBox {
		margin-bottom: 35px;
	}
}
.serviceArea .serviceList {
	border-top: 16px solid #d20000;
	border-radius: 8px;
	background-color: #fff;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
	display: -ms-flexbox;
	display: flex;
}
.serviceArea .serviceList .slick-dots {
	margin-top: 0;
	position: absolute;
	bottom: -30px;
}
@media (max-width: 768px) {
	.serviceArea .serviceList {
		display: block;
	}
}
.serviceArea .serviceItem {
	width: 33.3333333333%;
	padding: 64px 40px 45px;
	text-align: center;
}
.serviceArea .serviceItem .Img {
	-ms-flex-align: center;
	    align-items: center;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-pack: center;
	    justify-content: center;
	position: relative;
	margin-bottom: 80px;
}
.serviceArea .serviceItem .Img::before {
	content: "";
	width: 120px;
	height: 120px;
	border-radius: 50%;
	border: 30px solid #f8eaea;
	position: absolute;
	margin: auto;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}
.serviceArea .serviceItem .Img img {
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
.serviceArea .serviceItem .Txt .title {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.1rem;
}
.serviceArea .serviceItem .Txt .title a {
	color: #000;
	display: block;
}
.serviceArea .serviceItem .Txt .title a:hover {
	color: #d20000;
}
.serviceArea .serviceItem .Txt ul {
	margin-top: 25px;
	text-align: left;
}
.serviceArea .serviceItem .Txt ul li {
	-ms-flex-align: center;
	    align-items: center;
	border-bottom: 1px solid #e5e5e5;
	color: #000;
	display: -ms-flexbox;
	display: flex;
	font-size: 18px;
	padding: 15px 4px 10px;
}
.serviceArea .serviceItem .Txt ul li span {
	width: 20px;
	height: 20px;
	background-color: #d20000;
	border-radius: 50%;
	display: inline-block;
	position: relative;
	margin-right: 20px;
}
.serviceArea .serviceItem .Txt ul li span::before {
	content: "";
	width: 2px;
	height: 7px;
	background-color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-200%, -30%) rotate(-45deg);
	        transform: translate(-200%, -30%) rotate(-45deg);
}
.serviceArea .serviceItem .Txt ul li span::after {
	content: "";
	width: 2px;
	height: 10px;
	background-color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(60%, -50%) rotate(45deg);
	        transform: translate(60%, -50%) rotate(45deg);
}
.serviceArea .serviceItem:not(:last-child) {
	border-right: 2px solid #e5e5e5;
}
.serviceArea .serviceItem:nth-child(odd) {
	background-color: #fbfbfb;
}
.serviceArea .serviceItem:nth-child(even) {
	background-color: #fff;
}
@media (max-width: 1200px) {
	.serviceArea .serviceItem .Img {
		margin-bottom: 40px;
	}
	.serviceArea .serviceItem .Img::before {
		width: 80px;
		height: 80px;
	}
	.serviceArea .serviceItem .Img img {
		max-width: 120px;
	}
	.serviceArea .serviceItem .Txt .title {
		font-size: 20px;
	}
	.serviceArea .serviceItem .Txt ul {
		margin-top: 15px;
	}
	.serviceArea .serviceItem .Txt ul li {
		font-size: 15px;
		padding: 10px 4px;
	}
	.serviceArea .serviceItem .Txt ul li span {
		margin-right: 10px;
	}
}
@media (max-width: 1024px) {
	.serviceArea .serviceItem .Txt .title {
		font-size: 18px;
	}
}
@media (max-width: 768px) {
	.serviceArea .serviceItem:not(:last-child) {
		border-right: none;
	}
	.serviceArea .serviceItem:nth-child(odd) {
		background-color: #fff;
	}
}
@media (max-width: 480px) {
	.serviceArea .serviceItem {
		padding: 40px 15px;
	}
	.serviceArea .serviceItem .Img {
		margin-bottom: 40px;
	}
	.serviceArea .serviceItem .Img::before {
		width: 50px;
		height: 50px;
	}
	.serviceArea .serviceItem .Img img {
		max-width: 100px;
	}
}

.webArea {
	position: relative;
	z-index: 2;
}
.webArea .webItem {
	padding: 80px 0 105px;
	position: relative;
}
.webArea .webItem .wrapBox {
	max-width: 1300px;
	display: -ms-flexbox;
	display: flex;
}
.webArea .webItem .web_deco {
	opacity: 0;
	-webkit-transform: translateY(15px);
	        transform: translateY(15px);
	pointer-events: none;
	position: absolute;
	z-index: 1;
	transition: all 0.5s 1.2s ease-in-out;
}
.webArea .webItem .web_deco img {
	width: 100%;
	display: block;
}
.webArea .webItem .Img {
	width: 51.153%;
	max-width: 665px;
	border-radius: 20px;
	overflow: hidden;
	box-shadow: 8px 8px #8d090b;
	position: relative;
	z-index: 2;
}
.webArea .webItem .Img img {
	width: 100%;
	display: block;
}
.webArea .webItem .Txt {
	-ms-flex: 1;
	    flex: 1;
	padding: 27px 30px 0 50px;
	position: relative;
	z-index: 2;
}
.webArea .webItem .Txt .titleEn {
	color: #b9b9b9;
	font-size: 17px;
	font-weight: 600;
	font-family: "Poppins", "Noto Sans TC", "微軟正黑體", serif;
	letter-spacing: 1;
	letter-spacing: 0.02rem;
}
.webArea .webItem .Txt .title {
	font-size: 39px;
	font-weight: 700;
	line-height: 1.45;
	letter-spacing: -0.03rem;
	margin-top: 10px;
}
.webArea .webItem .Txt .text {
	color: #fff;
	font-size: 17px;
	line-height: 1.7;
	letter-spacing: 0.04rem;
	margin-top: 35px;
}
.webArea .webItem .Txt .btnBox {
	margin-top: 58px;
}
.webArea .webItem .Txt .btnBox .btn {
	letter-spacing: 0.02rem;
	padding: 22px 33px;
}
.webArea .webItem:nth-child(odd) {
	background: linear-gradient(90deg, #a21b1d 32px, transparent 1%) center, linear-gradient(#a21b1d 32px, transparent 1%) center, #ae3436;
	background-size: 34px 34px;
}
.webArea .webItem:nth-child(odd) .wrapBox {
	-ms-flex-direction: row;
	    flex-direction: row;
}
.webArea .webItem:nth-child(odd) .Img {
	box-shadow: 13px 13px #8d090b;
	opacity: 0;
	-webkit-transform: translateX(-15px);
	        transform: translateX(-15px);
	transition: all 0.5s 1s ease-in-out;
}
.webArea .webItem:nth-child(odd) .Txt {
	opacity: 0;
	-webkit-transform: translateX(-15px);
	        transform: translateX(-15px);
	transition: all 0.5s 0.5s ease-in-out;
}
.webArea .webItem:nth-child(odd) .Txt .title {
	padding-right: 10px;
}
.webArea .webItem:nth-child(odd) .Txt .title a {
	color: #fff;
	display: block;
}
.webArea .webItem:nth-child(odd) .Txt .title a:hover {
	color: #222;
}
.webArea .webItem:nth-child(odd) .Txt .text {
	color: #fff;
}
.webArea .webItem:nth-child(even) {
	background: linear-gradient(90deg, #fff 32px, transparent 1%) center, linear-gradient(#fff 32px, transparent 1%) center, #ffe3e3;
	background-size: 34px 34px;
}
.webArea .webItem:nth-child(even) .wrapBox {
	-ms-flex-direction: row-reverse;
	    flex-direction: row-reverse;
}
.webArea .webItem:nth-child(even) .web_deco {
	width: 10.614%;
	top: -27.5%;
	left: 8.2%;
}
.webArea .webItem:nth-child(even) .Img {
	box-shadow: -13px 13px #f9e8e8;
	opacity: 0;
	-webkit-transform: translateX(15px);
	        transform: translateX(15px);
	transition: all 0.5s 0.5s ease-in-out;
}
.webArea .webItem:nth-child(even) .Txt {
	opacity: 0;
	-webkit-transform: translateX(15px);
	        transform: translateX(15px);
	transition: all 0.5s 1s ease-in-out;
	text-align: right;
}
.webArea .webItem:nth-child(even) .Txt .title a {
	color: #000;
}
.webArea .webItem:nth-child(even) .Txt .title a span {
	color: #d20000;
}
.webArea .webItem:nth-child(even) .Txt .title a:hover {
	color: #d20000;
}
.webArea .webItem:nth-child(even) .Txt .text {
	color: #000;
}
.webArea .webItem:nth-child(3) .web_deco1 {
	width: 9.248%;
	top: -27%;
	right: 7.6%;
}
.webArea .webItem:nth-child(3) .web_deco2 {
	width: 14.293%;
	left: 11.5%;
	bottom: -6.5%;
}
.webArea .webItem.show:nth-child(odd) .web_deco, .webArea .webItem.show:nth-child(odd) .Img, .webArea .webItem.show:nth-child(odd) .Txt {
	opacity: 1;
	-webkit-transform: translate(0);
	        transform: translate(0);
}
.webArea .webItem.show:nth-child(even) .web_deco, .webArea .webItem.show:nth-child(even) .Img, .webArea .webItem.show:nth-child(even) .Txt {
	opacity: 1;
	-webkit-transform: translate(0);
	        transform: translate(0);
}
@media (max-width: 1440px) {
	.webArea .webItem:nth-child(even) .web_deco {
		bottom: -8%;
	}
}
@media (max-width: 1280px) {
	.webArea .webItem .Txt .titleEn {
		font-size: 16px;
	}
	.webArea .webItem .Txt .title {
		font-size: 34px;
		margin-top: 15px;
	}
	.webArea .webItem .Txt .text {
		font-size: 16px;
		margin-top: 15px;
	}
	.webArea .webItem .Txt .btnBox {
		margin-top: 30px;
	}
}
@media (max-width: 1200px) {
	.webArea .webItem:nth-child(odd) .web_deco {
		left: 3%;
	}
	.webArea .webItem:nth-child(even) .web_deco {
		right: 3%;
	}
	.webArea .webItem:nth-child(3) .web_deco {
		left: 3%;
	}
}
@media (max-width: 1024px) {
	.webArea .webItem .Txt {
		padding: 10px 20px;
	}
	.webArea .webItem .Txt .titleEn {
		font-size: 16px;
	}
	.webArea .webItem .Txt .title {
		font-size: 30px;
		margin-top: 12px;
	}
	.webArea .webItem .Txt .btnBox {
		margin-top: 20px;
	}
}
@media (max-width: 860px) {
	.webArea .webItem {
		padding: 60px 0;
	}
	.webArea .webItem .web_deco {
		display: none;
	}
	.webArea .webItem .Img {
		width: 100%;
		margin: 0 auto 30px;
	}
	.webArea .webItem .Txt {
		width: 100%;
		max-width: 665px;
		margin: 0 auto;
		padding: 0;
	}
	.webArea .webItem .Txt .titleEn {
		font-size: 15px;
	}
	.webArea .webItem .Txt .title {
		font-size: 26px;
		line-height: 1.25;
		margin-top: 10px;
	}
	.webArea .webItem .Txt .text {
		font-size: 15px;
		margin-top: 10px;
	}
	.webArea .webItem .Txt .btnBox .btn {
		padding: 13px 40px;
	}
	.webArea .webItem:nth-child(odd) .wrapBox, .webArea .webItem:nth-child(even) .wrapBox {
		-ms-flex-direction: column-reverse;
		    flex-direction: column-reverse;
	}
	.webArea .webItem:nth-child(odd) .Img, .webArea .webItem:nth-child(even) .Img {
		transition: all 0.5s 0.5s ease-in-out;
	}
	.webArea .webItem:nth-child(odd) .Txt, .webArea .webItem:nth-child(even) .Txt {
		transition: all 0.5s 0.8s ease-in-out;
	}
	.webArea .webItem:nth-child(odd) .Img, .webArea .webItem:nth-child(odd) .Txt, .webArea .webItem:nth-child(even) .Img, .webArea .webItem:nth-child(even) .Txt {
		-webkit-transform: translate(0, 15px);
		        transform: translate(0, 15px);
	}
	.webArea .webItem:nth-child(even) .Txt {
		text-align: left;
	}
	.webArea .webItem:nth-child(odd) .Txt .title {
		max-width: 100%;
		padding-right: 0;
	}
}
@media (max-width: 480px) {
	.webArea .webItem .Txt .title {
		font-size: 23px;
	}
}

.partnerArea {
	padding: 130px 0 65px;
	position: relative;
}
@media (max-width: 1200px) {
	.partnerArea {
		padding: 60px 0;
	}
}
.partnerArea .wrapBox {
	max-width: 1305px;
}
.partnerArea .partnerDeco {
	width: 100%;
	height: 94px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
	-webkit-transform: translateY(100%);
	        transform: translateY(100%);
}
.partnerArea .partnerDeco img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.partnerArea .titleBox {
	margin-bottom: 15px;
}
.partnerArea .partnerList {
	-ms-flex-align: center;
	    align-items: center;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.partnerArea .partnerList .partnerItem {
	width: 12.5%;
	padding: 28px 5px;
	text-align: center;
}
.partnerArea .partnerList .partnerItem .Img img {
	max-width: 100%;
	display: inline-block;
}
.partnerArea .partnerList .partnerItem .Img a {
	display: block;
}
.partnerArea .partnerList .partnerItem .Img a:hover {
	-webkit-transform: translateY(-5px);
	        transform: translateY(-5px);
}
@media (max-width: 1024px) {
	.partnerArea .partnerList .partnerItem {
		width: 16.6666666667%;
		padding: 20px 5px;
	}
}
@media (max-width: 768px) {
	.partnerArea .partnerList .partnerItem {
		width: 25%;
		padding: 15px 5px;
	}
}
@media (max-width: 640px) {
	.partnerArea .partnerList .partnerItem {
		width: 33.3333333333%;
		padding: 12px 5px;
	}
}
@media (max-width: 400px) {
	.partnerArea .partnerList .partnerItem {
		width: 50%;
	}
}

.contactArea {
	background: linear-gradient(90deg, #e6e6e6 32px, transparent 1%) center, linear-gradient(#e6e6e6 32px, transparent 1%) center, #fff;
	background-size: 34px 34px;
	padding: 185px 0 140px;
}
@media (max-width: 1200px) {
	.contactArea {
		padding: 120px 0 50px;
	}
}
.contactArea .wrapBox {
	max-width: 1310px;
	-ms-flex-align: start;
	    align-items: flex-start;
	display: -ms-flexbox;
	display: flex;
}
@media (max-width: 1200px) {
	.contactArea .wrapBox {
		display: block;
	}
}
.contactArea .contactInfoBox {
	width: 475px;
	padding-right: 100px;
}
.contactArea .contactInfoBox .titleBox {
	margin-bottom: 45px;
	text-align: left;
}
.contactArea .contactInfoBox .titleBox .titleTw {
	letter-spacing: 0.335rem;
	padding-bottom: 0;
}
.contactArea .contactInfoBox .titleBox .titleTw::before {
	display: none;
}
.contactArea .contactInfoBox .titleBox .text {
	font-size: 16px;
	line-height: 1.85;
	letter-spacing: 0rem;
	margin-top: 40px;
}
.contactArea .contactInfoBox .infoBox .infoList .infoItem {
	-ms-flex-align: center;
	    align-items: center;
	display: -ms-flexbox;
	display: flex;
}
.contactArea .contactInfoBox .infoBox .infoList .infoItem:not(:last-child) {
	margin-bottom: 12px;
}
.contactArea .contactInfoBox .infoBox .infoList .Img {
	width: 42px;
	height: 42px;
	-ms-flex-align: center;
	    align-items: center;
	border-radius: 50%;
	background-color: #c82638;
	display: -ms-flexbox;
	display: flex;
	margin-right: 15px;
	-ms-flex-pack: center;
	    justify-content: center;
}
.contactArea .contactInfoBox .infoBox .infoList .Img img {
	max-width: 100%;
	display: inline-block;
}
.contactArea .contactInfoBox .infoBox .infoList a {
	color: #000;
	-ms-flex: 1;
	    flex: 1;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.02rem;
}
.contactArea .contactInfoBox .infoBox .infoList a:hover {
	color: #c82638;
}
@media (max-width: 1200px) {
	.contactArea .contactInfoBox {
		width: 100%;
		margin-bottom: 50px;
		padding-right: 0;
	}
	.contactArea .contactInfoBox .titleBox {
		margin-bottom: 35px;
	}
	.contactArea .contactInfoBox .titleBox .text {
		margin-top: 20px;
	}
}
.contactArea .contactFormBox {
	-ms-flex: 1;
	    flex: 1;
	margin-top: 15px;
}
.contactArea .contactFormBox .formList {
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-ms-flex-pack: justify;
	    justify-content: space-between;
}
.contactArea .contactFormBox .formItem {
	-ms-flex-align: center;
	    align-items: center;
	background-color: #fff;
	border-radius: 35px;
	display: -ms-flexbox;
	display: flex;
	padding: 18px 45px;
}
.contactArea .contactFormBox .formItem.textArea {
	-ms-flex-align: start;
	    align-items: flex-start;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
}
.contactArea .contactFormBox .formItem.radio {
	border-radius: 0;
	background-color: transparent;
	border-bottom: 1px solid #bebebe;
	padding-bottom: 18px;
}
.contactArea .contactFormBox .formItem.full {
	width: 100%;
}
.contactArea .contactFormBox .formItem.half {
	width: calc(50% - 10px);
}
.contactArea .contactFormBox .formItem.requireStyle .title {
	position: relative;
}
.contactArea .contactFormBox .formItem.requireStyle .title::before {
	content: "*";
	color: #ef402b;
	position: absolute;
	top: 0;
	left: -9px;
	z-index: 1;
}
.contactArea .contactFormBox .formItem.error {
	border: 1px solid #c82638;
}
.contactArea .contactFormBox .formItem:not(:last-child) {
	margin-bottom: 20px;
}
.contactArea .contactFormBox .formItem .title {
	width: 115px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.01rem;
	position: relative;
}
.contactArea .contactFormBox .formItem .title::after {
	content: "";
	width: 1px;
	height: 100%;
	background-color: #b2b2b2;
	position: absolute;
	top: 50%;
	right: 0;
	z-index: 1;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);
}
.contactArea .contactFormBox .formItem .radioList {
	width: calc(100% - 115px);
	-ms-flex-align: center;
	    align-items: center;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-ms-flex-pack: justify;
	    justify-content: space-between;
	padding-left: 60px;
}
.contactArea .contactFormBox .formItem .radioList label {
	width: 33.3333333333%;
	-ms-flex-align: center;
	    align-items: center;
	cursor: pointer;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 10px;
}
.contactArea .contactFormBox .formItem .radioList input[type=radio],
.contactArea .contactFormBox .formItem .radioList input[type=checkbox] {
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	cursor: pointer;
	margin: 0;
	outline: 0;
	border-radius: none;
	background-color: #fff;
	border: 1px solid #ccc;
	margin: 0 10px 0 0;
	position: relative;
}
.contactArea .contactFormBox .formItem .radioList input[type=radio]:checked + span img,
.contactArea .contactFormBox .formItem .radioList input[type=checkbox]:checked + span img {
	-webkit-animation: check 0.3s cubic-bezier(0.41, 0.99, 0.48, 1.08) forwards;
	        animation: check 0.3s cubic-bezier(0.41, 0.99, 0.48, 1.08) forwards;
}
.contactArea .contactFormBox .formItem .radioList input[type=checkbox] {
	width: 22px;
	height: 22px;
	border-radius: 3px;
}
.contactArea .contactFormBox .formItem .radioList input[type=radio] {
	width: 24px;
	height: 24px;
	border-radius: 3px;
}
.contactArea .contactFormBox .formItem .radioList span {
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.01rem;
	position: relative;
}
.contactArea .contactFormBox .formItem .radioList span img {
	max-width: 100%;
	display: inline-block;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	top: -10px;
	left: -29px;
	z-index: 1;
}
.contactArea .contactFormBox .formItem input[type=text] {
	width: calc(100% - 115px);
	color: #000;
	display: block;
	font-size: 16px;
	font-weight: 500;
	font-family: "Noto Sans TC", "微軟正黑體", sans-serif;
	line-height: 1;
	letter-spacing: 0.01rem;
	padding: 0 15px;
}
.contactArea .contactFormBox .formItem textarea {
	width: 100%;
	height: 120px;
	color: #000;
	display: block;
	font-size: 17px;
	font-weight: 600;
	margin-top: 15px;
	resize: vertical;
}
@media (max-width: 1024px) {
	.contactArea .contactFormBox .formItem {
		border-radius: 15px;
		display: block;
		padding: 16px 30px;
	}
	.contactArea .contactFormBox .formItem.radio {
		padding-bottom: 6px;
	}
	.contactArea .contactFormBox .formItem.half {
		width: 100%;
		margin-right: 0;
	}
	.contactArea .contactFormBox .formItem .title {
		width: auto;
		display: inline-block;
		font-size: 17px;
		padding-bottom: 15px;
		margin-bottom: 15px;
	}
	.contactArea .contactFormBox .formItem .title::after {
		content: "";
		width: 100%;
		height: 1px;
		background-color: #b2b2b2;
		position: absolute;
		top: 100%;
		left: 0;
		right: auto;
		z-index: 1;
		-webkit-transform: translateY(-50%);
		        transform: translateY(-50%);
	}
	.contactArea .contactFormBox .formItem .radioList {
		width: 100%;
		-ms-flex-pack: start;
		    justify-content: flex-start;
		padding-left: 0;
	}
	.contactArea .contactFormBox .formItem .radioList label {
		width: calc(33.3333333333% - 8px);
		margin-bottom: 10px;
	}
	.contactArea .contactFormBox .formItem .radioList label:not(:last-child) {
		margin-right: 12px;
	}
	.contactArea .contactFormBox .formItem .radioList input[type=radio] {
		margin: 0 8px 0 0;
	}
	.contactArea .contactFormBox .formItem .radioList span {
		font-size: 16px;
	}
	.contactArea .contactFormBox .formItem input[type=text] {
		width: 100%;
		font-size: 16px;
		padding: 0;
	}
	.contactArea .contactFormBox .formItem textarea {
		font-size: 16px;
		margin-top: 0;
	}
}
@media (max-width: 640px) {
	.contactArea .contactFormBox .formItem .radioList {
		width: 100%;
		-ms-flex-pack: start;
		    justify-content: flex-start;
		padding-left: 0;
	}
	.contactArea .contactFormBox .formItem .radioList label {
		width: auto;
	}
}
@media (max-width: 400px) {
	.contactArea .contactFormBox .formItem .radioList label {
		width: 100%;
	}
	.contactArea .contactFormBox .formItem .radioList label:not(:last-child) {
		margin-right: 0;
	}
}
.contactArea .contactFormBox .btnBox .btn {
	padding: 20px 85px;
}

footer {
	background-color: #a21b1d;
	color: #d1d1d1;
	font-size: 16px;
	letter-spacing: 0.02rem;
	padding: 40px 0;
	text-align: center;
}

.slick-slider .slick-dots {
	margin: 0;
	position: static;
	margin-top: 20px;
}
.slick-slider .slick-dots li {
	width: 10px;
	height: 10px;
	margin: 0 6px;
}
.slick-slider .slick-dots li button {
	width: 100%;
	height: 100%;
	padding: 0;
}
.slick-slider .slick-dots li button::before {
	content: "";
	width: 100%;
	height: 100%;
	border-radius: 50%;
	border: 1px solid #ef402b;
	background-color: #ef402b;
	opacity: 0.5;
}
.slick-slider .slick-dots li.slick-active button::before {
	opacity: 1;
}