@font-face {
  font-family: 'Microsoft JhengHei';
  unicode-range: U+7db0, U+78A7, U+7B75;
  font-style: normal;
  font-weight: bold;
  src: local(MS Gothic), local(Yu Gothic), local(PMingLiU);
}

.editor * {
	font-family: Mulish, 'Noto Sans HK', Arial, 'Microsoft JhengHei', 微軟正黑體, 'Heiti TC', STHeitiTC, 'PMingLiU', 新細明體;
}

.editor p, .editor div, .editor a, .editor li, .editor td, .editor th, .editor h1, .editor h2, .editor h3, .editor h4, .editor h5, .editor h6 { margin:0px; padding:0px; font-size: 15px; word-wrap: break-word; white-space: normal; line-height: 30px; }

.editor ul, .editor ol { margin: 0; }

.editor ul li {
	position: relative;
	list-style: none;
	padding-left: 40px;
	margin-bottom: 10px;
	line-height: 20px;
}
.editor ul li:before {
	content: '';
	position: absolute;
	top: 4px;
    left: 0;
	border-radius: 50%;
	width: 12px;
	height: 12px;
	background-color: #000000;
}

.editor ol {
	counter-reset: li;
}
.editor ol li {
	list-style: none;
	counter-increment: li;
	position: relative;
	padding-left: 40px;
    margin-bottom: 10px;
}
.editor ol li:before {
	content: counter(li);
	position: absolute;
	top: 0;
	left: 0;
	border-radius: 50%;
	text-align: center;
	line-height: 30px;
	width: 30px;
	height: 30px;
	color: #fff;
}

.editor ul:not(.colour1):not(.colour2) > li::before{
	background-color: #000000 !important;
}
.editor ol:not(.colour1):not(.colour2) > li::before{
	background-color: #000000 !important;
}

.editor img { border:none; }

.editor a, .editor a:link, .editor a:active, .editor a:visited { color: -webkit-link; font-size: inherit; text-decoration: underline; }

.editor a:hover { color: -webkit-link; }

.editor table.table-border, .editor table.table-border td, .editor table.table-border th { 
	border-collapse: collapse; 
	border: 1px solid #000000;
}

.editor td, .editor th { padding:3px; }

hr { border:none; height:1px; background-color:#CCCCCC; color:#CCCCCC; }

.editor .underline, .editor .underline * { text-decoration:underline; }

.editor table, .editor img { max-width: 100%; height: auto; }

.editor:after {
	clear: both;
    display: block;
    content: " ";
}

.editor .table tr:nth-child(odd) {
	background: #F6F6F6;
}
.editor .table th,
.editor .table td {
	padding: 20px 30px;
}

.editor .table-responsive-wrapper {
	width: 100%;
}

.editor .table-responsive-wrapper .table-responsive {

}

.editor .text-right {
	float: left;
	margin-right: 20px;
}

.editor .text-left {
	float: right;
	margin-left: 20px;
}

.editor .round-border {
	border-radius: 30px;
}

.editor .two-col,
.editor .three-col,
.editor .four-col {
	font-size: 0;
	white-space: nowrap;
}

.editor .two-col .col,
.editor .three-col .col,
.editor .four-col .col {
	display: inline-block;
	vertical-align: top;
	white-space: normal;
}

.editor .two-col .col {
	width: 49%;
}

.editor .three-col .col {
	width: 32%;
}

.editor .four-col .col {
	width: 23.5%;
}

.editor .two-col .col + .col,
.editor .three-col .col + .col,
.editor .four-col .col + .col {
	margin-left: 2%;
}

.editor .subtitle {
	font-size: 28px;
	font-weight: bold;
}

.editor .photo img {
	border-radius: 10px;
}

.editor .homepage-title{
	font-size: 60px;
	font-weight: 800;
	line-height: 100px;
}

.editor{
	
	.rounded_title {
		width: fit-content;
		padding: 10px 36px;
		border-radius: 20px;
		color: #fff;
		a {
			text-decoration: none;
		}
	}

	.rounded_group {
		border-radius: 10px;
		padding: 33px;

		.rounded_group_title {
			line-height: 30px;
		}

		.rounded_group_content {
			line-height: 30px;
		}
	}

	.ul_bullet {
		/* padding-left: 40px; */
		list-style: none;

		li {
			position: relative;
			line-height: 30px;

			* {
				line-height: 30px;
			}

			&::before {
				content: "";
				position: absolute;
				/* left: -34px; */
				left: 0px;
				top: 10px;
				width: 12px;
				height: 12px;
				border-radius: 50%;
				display: block;
			}
		}
	}

	.ol_bullet {

		counter-reset: css-counter 0;
		/* padding-left: 40px; */
		list-style: none;

		li {
			position: relative;
			line-height: 30px;
			counter-increment: css-counter 1;

			&:nth-child(n+2) {
				margin-top: 10px;
			}

			* {
				line-height: 30px;
			}

			&::before {
				content: counter(css-counter);
				position: absolute;
				/* left: -35px; */
				left: 0px;
				top: 0px;
				width: 30px;
				height: 30px;
				border-radius: 50%;
				display: block;
				color: white;
				text-align: center;
			}
		}
	}

	.custom_table_1 {

		tbody {
			tr {
				min-width: 192px;

				td {
					vertical-align: top;
					padding: 10px 30px;
					line-height: 30px;

					&:nth-child(1) {
						width: 25%;
					}

					* {
						line-height: 30px;
					}
				}

				&:nth-child(odd) {
					background: #F6F6F6;
				}

				&:nth-child(even) {
					background: #FFFFFF;
				}
			}
		}
	}

	.three_boxes_in_row {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
		&:nth-child(n+2) {
			margin-top: 30px;

		}

		.item {
			padding: 35px 50px;
			box-sizing: border-box;
			background: #F6F6F6 0% 0% no-repeat padding-box;
			border-radius: 10px;
			width: 32.1%;

			@media screen and (max-width: 1199px) {
				width: 100%;

				&:nth-child(n+2) {
					margin-top: 30px;
				}
			}

			@media screen and (max-width: 767px) {
				&:nth-child(n+2) {
					margin-top: 20px;
				}
			}

			@media screen and (min-width: 1200px) {
				&:nth-child(n+2) {
					margin-left: 1.4%;
				}
			}

			.three-title {
				line-height: 30px;
				/* font-size: 22px; */
					font-size: unset;
			}

			.content {
				line-height: 28px;
			}
		}
	}
	.rounded_border_title{
		a{
			border: 1px solid #707070;
			border-radius: 20px;
			color: #707070;
			position: relative;
			display: inline-block;
			padding: 5px 55px 5px 38px;
			overflow: hidden;
			text-decoration: none;
			&:before {
				content: '';
				display: block;
				background: #707070;
				width: 0;
				height: 100%;
				position: absolute;
				z-index: -1;
				top: 0;
				right: 0;
				transition: all 0.3s ease-in-out;
			}
			&::after{
				content: '';
				display: block;
				position: absolute;
				top: 50%;
				transform: translateY(-50%);
				right: 36px;
				width: 6px;
				height: 12px;
				background: url("../img/arrow2.svg") no-repeat center center;
			}
			&:hover {
				color: #fff;
				&:before {
					left: 0;
					right: auto;
					width: 100%;
				}
				&:after {
					background-image: url(../img/arrow2-white.svg);
				}
			}
		}
	}
	.linked_title {
		width: 100%;
		background: #FFFFFF 0% 0% no-repeat padding-box;
		box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.16);
		border-radius: 10px;
		position: relative;
		box-sizing: border-box;
		padding: 15px 80px 15px 42px;

		&::before {
			content: "";
			position: absolute;
			width: 15px;
			height: 15px;
			display: block;
			top: 50%;
			right: 25px;
			transform: translateY(-50%) rotate(-90deg);
			background: url("../img/FAQ-arrow.svg") no-repeat center center;
		}
	}
}

@media screen and (max-width: 1200px) {
	.editor .homepage-title{
		font-size: 42px;
	    font-weight: 800;
	    line-height: 50px;
	}
}

@media screen and (max-width: 768px) {
	.editor .text-right,
	.editor .text-left {
		float: none;
		display: block;
		margin: 0 auto 20px;
	}

	.editor .two-col,
	.editor .three-col,
	.editor .four-col {
		white-space: normal;
	}

	.editor .two-col .col,
	.editor .three-col .col,
	.editor .four-col .col {
		display: block;
		width: 100%;
	}

	.editor .two-col .col + .col,
	.editor .three-col .col + .col,
	.editor .four-col .col + .col {
		margin-top: 20px;
	}

	.editor .two-col .col + .col,
	.editor .three-col .col + .col,
	.editor .four-col .col + .col {
		margin-left: 0;
	}
}