/* Minification failed. Returning unminified contents.
(1309,1): run-time error CSS1019: Unexpected token, found '@import'
(1309,9): run-time error CSS1019: Unexpected token, found 'url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&display=swap")'
(1314,1): run-time error CSS1019: Unexpected token, found '@import'
(1314,9): run-time error CSS1019: Unexpected token, found 'url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&display=swap")'
(1487,1): run-time error CSS1019: Unexpected token, found '@-webkit-keyframes'
(1488,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
(1498,1): run-time error CSS1019: Unexpected token, found '@keyframes'
(1499,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '0%'
 */
.ui-helper-hidden {
	display: none;
}
.ui-helper-hidden-accessible {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}
.ui-helper-reset {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	line-height: 1.3;
	text-decoration: none;
	font-size: 100%;
	list-style: none;
}
.ui-helper-clearfix:before,
.ui-helper-clearfix:after {
	content: "";
	display: table;
	border-collapse: collapse;
}
.ui-helper-clearfix:after {
	clear: both;
}
.ui-helper-zfix {
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: absolute;
	opacity: 0;
	-ms-filter: "alpha(opacity=0)"; /* support: IE8 */
}

.ui-front {
	z-index: 100;
}


/* Interaction Cues
----------------------------------*/
.ui-state-disabled {
	cursor: default !important;
	pointer-events: none;
}


/* Icons
----------------------------------*/
.ui-icon {
	display: inline-block;
	vertical-align: middle;
	margin-top: -.25em;
	position: relative;
	text-indent: -99999px;
	overflow: hidden;
	background-repeat: no-repeat;
}

.ui-widget-icon-block {
	left: 50%;
	margin-left: -8px;
	display: block;
}

/* Misc visuals
----------------------------------*/

/* Overlays */
.ui-widget-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.ui-accordion .ui-accordion-header {
	display: block;
	cursor: pointer;
	position: relative;
	margin: 2px 0 0 0;
	padding: .5em .5em .5em .7em;
	font-size: 100%;
}
.ui-accordion .ui-accordion-content {
	padding: 1em 2.2em;
	border-top: 0;
	overflow: auto;
}
.ui-autocomplete {
	position: absolute;
	top: 0;
	left: 0;
	cursor: default;
}
.ui-menu {
	list-style: none;
	padding: 0;
	margin: 0;
	display: block;
	outline: 0;
}
.ui-menu .ui-menu {
	position: absolute;
}
.ui-menu .ui-menu-item {
	margin: 0;
	cursor: pointer;
	/* support: IE10, see #8844 */
	list-style-image: url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7");
}
.ui-menu .ui-menu-item-wrapper {
	position: relative;
	padding: 3px 1em 3px .4em;
}
.ui-menu .ui-menu-divider {
	margin: 5px 0;
	height: 0;
	font-size: 0;
	line-height: 0;
	border-width: 1px 0 0 0;
}
.ui-menu .ui-state-focus,
.ui-menu .ui-state-active {
	margin: -1px;
}

/* icon support */
.ui-menu-icons {
	position: relative;
}
.ui-menu-icons .ui-menu-item-wrapper {
	padding-left: 2em;
}

/* left-aligned */
.ui-menu .ui-icon {
	position: absolute;
	top: 0;
	bottom: 0;
	left: .2em;
	margin: auto 0;
}

/* right-aligned */
.ui-menu .ui-menu-icon {
	left: auto;
	right: 0;
}
.ui-button {
	padding: .4em 1em;
	display: inline-block;
	position: relative;
	line-height: normal;
	margin-right: .1em;
	cursor: pointer;
	vertical-align: middle;
	text-align: center;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;

	/* Support: IE <= 11 */
	overflow: visible;
}

.ui-button,
.ui-button:link,
.ui-button:visited,
.ui-button:hover,
.ui-button:active {
	text-decoration: none;
}

/* to make room for the icon, a width needs to be set here */
.ui-button-icon-only {
	width: 2em;
	box-sizing: border-box;
	text-indent: -9999px;
	white-space: nowrap;
}

/* no icon support for input elements */
input.ui-button.ui-button-icon-only {
	text-indent: 0;
}

/* button icon element(s) */
.ui-button-icon-only .ui-icon {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -8px;
	margin-left: -8px;
}

.ui-button.ui-icon-notext .ui-icon {
	padding: 0;
	width: 2.1em;
	height: 2.1em;
	text-indent: -9999px;
	white-space: nowrap;

}

input.ui-button.ui-icon-notext .ui-icon {
	width: auto;
	height: auto;
	text-indent: 0;
	white-space: normal;
	padding: .4em 1em;
}

/* workarounds */
/* Support: Firefox 5 - 40 */
input.ui-button::-moz-focus-inner,
button.ui-button::-moz-focus-inner {
	border: 0;
	padding: 0;
}
.ui-controlgroup {
	vertical-align: middle;
	display: inline-block;
}
.ui-controlgroup > .ui-controlgroup-item {
	float: left;
	margin-left: 0;
	margin-right: 0;
}
.ui-controlgroup > .ui-controlgroup-item:focus,
.ui-controlgroup > .ui-controlgroup-item.ui-visual-focus {
	z-index: 9999;
}
.ui-controlgroup-vertical > .ui-controlgroup-item {
	display: block;
	float: none;
	width: 100%;
	margin-top: 0;
	margin-bottom: 0;
	text-align: left;
}
.ui-controlgroup-vertical .ui-controlgroup-item {
	box-sizing: border-box;
}
.ui-controlgroup .ui-controlgroup-label {
	padding: .4em 1em;
}
.ui-controlgroup .ui-controlgroup-label span {
	font-size: 80%;
}
.ui-controlgroup-horizontal .ui-controlgroup-label + .ui-controlgroup-item {
	border-left: none;
}
.ui-controlgroup-vertical .ui-controlgroup-label + .ui-controlgroup-item {
	border-top: none;
}
.ui-controlgroup-horizontal .ui-controlgroup-label.ui-widget-content {
	border-right: none;
}
.ui-controlgroup-vertical .ui-controlgroup-label.ui-widget-content {
	border-bottom: none;
}

/* Spinner specific style fixes */
.ui-controlgroup-vertical .ui-spinner-input {

	/* Support: IE8 only, Android < 4.4 only */
	width: 75%;
	width: calc( 100% - 2.4em );
}
.ui-controlgroup-vertical .ui-spinner .ui-spinner-up {
	border-top-style: solid;
}

.ui-checkboxradio-label .ui-icon-background {
	box-shadow: inset 1px 1px 1px #ccc;
	border-radius: .12em;
	border: none;
}
.ui-checkboxradio-radio-label .ui-icon-background {
	width: 16px;
	height: 16px;
	border-radius: 1em;
	overflow: visible;
	border: none;
}
.ui-checkboxradio-radio-label.ui-checkboxradio-checked .ui-icon,
.ui-checkboxradio-radio-label.ui-checkboxradio-checked:hover .ui-icon {
	background-image: none;
	width: 8px;
	height: 8px;
	border-width: 4px;
	border-style: solid;
}
.ui-checkboxradio-disabled {
	pointer-events: none;
}
.ui-datepicker {
	width: 17em;
	padding: .2em .2em 0;
	display: none;
}
.ui-datepicker .ui-datepicker-header {
	position: relative;
	padding: .2em 0;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
	position: absolute;
	top: 2px;
	width: 1.8em;
	height: 1.8em;
}
.ui-datepicker .ui-datepicker-prev-hover,
.ui-datepicker .ui-datepicker-next-hover {
	top: 1px;
}
.ui-datepicker .ui-datepicker-prev {
	left: 2px;
}
.ui-datepicker .ui-datepicker-next {
	right: 2px;
}
.ui-datepicker .ui-datepicker-prev-hover {
	left: 1px;
}
.ui-datepicker .ui-datepicker-next-hover {
	right: 1px;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span {
	display: block;
	position: absolute;
	left: 50%;
	margin-left: -8px;
	top: 50%;
	margin-top: -8px;
}
.ui-datepicker .ui-datepicker-title {
	margin: 0 2.3em;
	line-height: 1.8em;
	text-align: center;
}
.ui-datepicker .ui-datepicker-title select {
	font-size: 1em;
	margin: 1px 0;
}
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
	width: 45%;
}
.ui-datepicker table {
	width: 100%;
	font-size: .9em;
	border-collapse: collapse;
	margin: 0 0 .4em;
}
.ui-datepicker th {
	padding: .7em .3em;
	text-align: center;
	font-weight: bold;
	border: 0;
}
.ui-datepicker td {
	border: 0;
	padding: 1px;
}
.ui-datepicker td span,
.ui-datepicker td a {
	display: block;
	padding: .2em;
	text-align: right;
	text-decoration: none;
}
.ui-datepicker .ui-datepicker-buttonpane {
	background-image: none;
	margin: .7em 0 0 0;
	padding: 0 .2em;
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
}
.ui-datepicker .ui-datepicker-buttonpane button {
	float: right;
	margin: .5em .2em .4em;
	cursor: pointer;
	padding: .2em .6em .3em .6em;
	width: auto;
	overflow: visible;
}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
	float: left;
}

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
	width: auto;
}
.ui-datepicker-multi .ui-datepicker-group {
	float: left;
}
.ui-datepicker-multi .ui-datepicker-group table {
	width: 95%;
	margin: 0 auto .4em;
}
.ui-datepicker-multi-2 .ui-datepicker-group {
	width: 50%;
}
.ui-datepicker-multi-3 .ui-datepicker-group {
	width: 33.3%;
}
.ui-datepicker-multi-4 .ui-datepicker-group {
	width: 25%;
}
.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
	border-left-width: 0;
}
.ui-datepicker-multi .ui-datepicker-buttonpane {
	clear: left;
}
.ui-datepicker-row-break {
	clear: both;
	width: 100%;
	font-size: 0;
}

/* RTL support */
.ui-datepicker-rtl {
	direction: rtl;
}
.ui-datepicker-rtl .ui-datepicker-prev {
	right: 2px;
	left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next {
	left: 2px;
	right: auto;
}
.ui-datepicker-rtl .ui-datepicker-prev:hover {
	right: 1px;
	left: auto;
}
.ui-datepicker-rtl .ui-datepicker-next:hover {
	left: 1px;
	right: auto;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane {
	clear: right;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button {
	float: left;
}
.ui-datepicker-rtl .ui-datepicker-buttonpane button.ui-datepicker-current,
.ui-datepicker-rtl .ui-datepicker-group {
	float: right;
}
.ui-datepicker-rtl .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-rtl .ui-datepicker-group-middle .ui-datepicker-header {
	border-right-width: 0;
	border-left-width: 1px;
}

/* Icons */
.ui-datepicker .ui-icon {
	display: block;
	text-indent: -99999px;
	overflow: hidden;
	background-repeat: no-repeat;
	left: .5em;
	top: .3em;
}
.ui-dialog {
	position: absolute;
	top: 0;
	left: 0;
	padding: .2em;
	outline: 0;
}
.ui-dialog .ui-dialog-titlebar {
	padding: .4em 1em;
	position: relative;
}
.ui-dialog .ui-dialog-title {
	float: left;
	margin: .1em 0;
	white-space: nowrap;
	width: 90%;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ui-dialog .ui-dialog-titlebar-close {
	position: absolute;
	right: .3em;
	top: 50%;
	width: 20px;
	margin: -10px 0 0 0;
	padding: 1px;
	height: 20px;
}
.ui-dialog .ui-dialog-content {
	position: relative;
	border: 0;
	padding: .5em 1em;
	background: none;
	overflow: auto;
}
.ui-dialog .ui-dialog-buttonpane {
	text-align: left;
	border-width: 1px 0 0 0;
	background-image: none;
	margin-top: .5em;
	padding: .3em 1em .5em .4em;
}
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset {
	float: right;
}
.ui-dialog .ui-dialog-buttonpane button {
	margin: .5em .4em .5em 0;
	cursor: pointer;
}
.ui-dialog .ui-resizable-n {
	height: 2px;
	top: 0;
}
.ui-dialog .ui-resizable-e {
	width: 2px;
	right: 0;
}
.ui-dialog .ui-resizable-s {
	height: 2px;
	bottom: 0;
}
.ui-dialog .ui-resizable-w {
	width: 2px;
	left: 0;
}
.ui-dialog .ui-resizable-se,
.ui-dialog .ui-resizable-sw,
.ui-dialog .ui-resizable-ne,
.ui-dialog .ui-resizable-nw {
	width: 7px;
	height: 7px;
}
.ui-dialog .ui-resizable-se {
	right: 0;
	bottom: 0;
}
.ui-dialog .ui-resizable-sw {
	left: 0;
	bottom: 0;
}
.ui-dialog .ui-resizable-ne {
	right: 0;
	top: 0;
}
.ui-dialog .ui-resizable-nw {
	left: 0;
	top: 0;
}
.ui-draggable .ui-dialog-titlebar {
	cursor: move;
}
.ui-draggable-handle {
	-ms-touch-action: none;
	touch-action: none;
}
.ui-resizable {
	position: relative;
}
.ui-resizable-handle {
	position: absolute;
	font-size: 0.1px;
	display: block;
	-ms-touch-action: none;
	touch-action: none;
}
.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
	display: none;
}
.ui-resizable-n {
	cursor: n-resize;
	height: 7px;
	width: 100%;
	top: -5px;
	left: 0;
}
.ui-resizable-s {
	cursor: s-resize;
	height: 7px;
	width: 100%;
	bottom: -5px;
	left: 0;
}
.ui-resizable-e {
	cursor: e-resize;
	width: 7px;
	right: -5px;
	top: 0;
	height: 100%;
}
.ui-resizable-w {
	cursor: w-resize;
	width: 7px;
	left: -5px;
	top: 0;
	height: 100%;
}
.ui-resizable-se {
	cursor: se-resize;
	width: 12px;
	height: 12px;
	right: 1px;
	bottom: 1px;
}
.ui-resizable-sw {
	cursor: sw-resize;
	width: 9px;
	height: 9px;
	left: -5px;
	bottom: -5px;
}
.ui-resizable-nw {
	cursor: nw-resize;
	width: 9px;
	height: 9px;
	left: -5px;
	top: -5px;
}
.ui-resizable-ne {
	cursor: ne-resize;
	width: 9px;
	height: 9px;
	right: -5px;
	top: -5px;
}
.ui-progressbar {
	height: 2em;
	text-align: left;
	overflow: hidden;
}
.ui-progressbar .ui-progressbar-value {
	margin: -1px;
	height: 100%;
}
.ui-progressbar .ui-progressbar-overlay {
	background: url("data:image/gif;base64,R0lGODlhKAAoAIABAAAAAP///yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAQABACwAAAAAKAAoAAACkYwNqXrdC52DS06a7MFZI+4FHBCKoDeWKXqymPqGqxvJrXZbMx7Ttc+w9XgU2FB3lOyQRWET2IFGiU9m1frDVpxZZc6bfHwv4c1YXP6k1Vdy292Fb6UkuvFtXpvWSzA+HycXJHUXiGYIiMg2R6W459gnWGfHNdjIqDWVqemH2ekpObkpOlppWUqZiqr6edqqWQAAIfkECQEAAQAsAAAAACgAKAAAApSMgZnGfaqcg1E2uuzDmmHUBR8Qil95hiPKqWn3aqtLsS18y7G1SzNeowWBENtQd+T1JktP05nzPTdJZlR6vUxNWWjV+vUWhWNkWFwxl9VpZRedYcflIOLafaa28XdsH/ynlcc1uPVDZxQIR0K25+cICCmoqCe5mGhZOfeYSUh5yJcJyrkZWWpaR8doJ2o4NYq62lAAACH5BAkBAAEALAAAAAAoACgAAAKVDI4Yy22ZnINRNqosw0Bv7i1gyHUkFj7oSaWlu3ovC8GxNso5fluz3qLVhBVeT/Lz7ZTHyxL5dDalQWPVOsQWtRnuwXaFTj9jVVh8pma9JjZ4zYSj5ZOyma7uuolffh+IR5aW97cHuBUXKGKXlKjn+DiHWMcYJah4N0lYCMlJOXipGRr5qdgoSTrqWSq6WFl2ypoaUAAAIfkECQEAAQAsAAAAACgAKAAAApaEb6HLgd/iO7FNWtcFWe+ufODGjRfoiJ2akShbueb0wtI50zm02pbvwfWEMWBQ1zKGlLIhskiEPm9R6vRXxV4ZzWT2yHOGpWMyorblKlNp8HmHEb/lCXjcW7bmtXP8Xt229OVWR1fod2eWqNfHuMjXCPkIGNileOiImVmCOEmoSfn3yXlJWmoHGhqp6ilYuWYpmTqKUgAAIfkECQEAAQAsAAAAACgAKAAAApiEH6kb58biQ3FNWtMFWW3eNVcojuFGfqnZqSebuS06w5V80/X02pKe8zFwP6EFWOT1lDFk8rGERh1TTNOocQ61Hm4Xm2VexUHpzjymViHrFbiELsefVrn6XKfnt2Q9G/+Xdie499XHd2g4h7ioOGhXGJboGAnXSBnoBwKYyfioubZJ2Hn0RuRZaflZOil56Zp6iioKSXpUAAAh+QQJAQABACwAAAAAKAAoAAACkoQRqRvnxuI7kU1a1UU5bd5tnSeOZXhmn5lWK3qNTWvRdQxP8qvaC+/yaYQzXO7BMvaUEmJRd3TsiMAgswmNYrSgZdYrTX6tSHGZO73ezuAw2uxuQ+BbeZfMxsexY35+/Qe4J1inV0g4x3WHuMhIl2jXOKT2Q+VU5fgoSUI52VfZyfkJGkha6jmY+aaYdirq+lQAACH5BAkBAAEALAAAAAAoACgAAAKWBIKpYe0L3YNKToqswUlvznigd4wiR4KhZrKt9Upqip61i9E3vMvxRdHlbEFiEXfk9YARYxOZZD6VQ2pUunBmtRXo1Lf8hMVVcNl8JafV38aM2/Fu5V16Bn63r6xt97j09+MXSFi4BniGFae3hzbH9+hYBzkpuUh5aZmHuanZOZgIuvbGiNeomCnaxxap2upaCZsq+1kAACH5BAkBAAEALAAAAAAoACgAAAKXjI8By5zf4kOxTVrXNVlv1X0d8IGZGKLnNpYtm8Lr9cqVeuOSvfOW79D9aDHizNhDJidFZhNydEahOaDH6nomtJjp1tutKoNWkvA6JqfRVLHU/QUfau9l2x7G54d1fl995xcIGAdXqMfBNadoYrhH+Mg2KBlpVpbluCiXmMnZ2Sh4GBqJ+ckIOqqJ6LmKSllZmsoq6wpQAAAh+QQJAQABACwAAAAAKAAoAAAClYx/oLvoxuJDkU1a1YUZbJ59nSd2ZXhWqbRa2/gF8Gu2DY3iqs7yrq+xBYEkYvFSM8aSSObE+ZgRl1BHFZNr7pRCavZ5BW2142hY3AN/zWtsmf12p9XxxFl2lpLn1rseztfXZjdIWIf2s5dItwjYKBgo9yg5pHgzJXTEeGlZuenpyPmpGQoKOWkYmSpaSnqKileI2FAAACH5BAkBAAEALAAAAAAoACgAAAKVjB+gu+jG4kORTVrVhRlsnn2dJ3ZleFaptFrb+CXmO9OozeL5VfP99HvAWhpiUdcwkpBH3825AwYdU8xTqlLGhtCosArKMpvfa1mMRae9VvWZfeB2XfPkeLmm18lUcBj+p5dnN8jXZ3YIGEhYuOUn45aoCDkp16hl5IjYJvjWKcnoGQpqyPlpOhr3aElaqrq56Bq7VAAAOw==");
	height: 100%;
	-ms-filter: "alpha(opacity=25)"; /* support: IE8 */
	opacity: 0.25;
}
.ui-progressbar-indeterminate .ui-progressbar-value {
	background-image: none;
}
.ui-selectable {
	-ms-touch-action: none;
	touch-action: none;
}
.ui-selectable-helper {
	position: absolute;
	z-index: 100;
	border: 1px dotted black;
}
.ui-selectmenu-menu {
	padding: 0;
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	display: none;
}
.ui-selectmenu-menu .ui-menu {
	overflow: auto;
	overflow-x: hidden;
	padding-bottom: 1px;
}
.ui-selectmenu-menu .ui-menu .ui-selectmenu-optgroup {
	font-size: 1em;
	font-weight: bold;
	line-height: 1.5;
	padding: 2px 0.4em;
	margin: 0.5em 0 0 0;
	height: auto;
	border: 0;
}
.ui-selectmenu-open {
	display: block;
}
.ui-selectmenu-text {
	display: block;
	margin-right: 20px;
	overflow: hidden;
	text-overflow: ellipsis;
}
.ui-selectmenu-button.ui-button {
	text-align: left;
	white-space: nowrap;
	width: 14em;
}
.ui-selectmenu-icon.ui-icon {
	float: right;
	margin-top: 0;
}
.ui-slider {
	position: relative;
	text-align: left;
}
.ui-slider .ui-slider-handle {
	position: absolute;
	z-index: 2;
	width: 1.2em;
	height: 1.2em;
	cursor: pointer;
	-ms-touch-action: none;
	touch-action: none;
}
.ui-slider .ui-slider-range {
	position: absolute;
	z-index: 1;
	font-size: .7em;
	display: block;
	border: 0;
	background-position: 0 0;
}

/* support: IE8 - See #6727 */
.ui-slider.ui-state-disabled .ui-slider-handle,
.ui-slider.ui-state-disabled .ui-slider-range {
	filter: inherit;
}

.ui-slider-horizontal {
	height: .8em;
}
.ui-slider-horizontal .ui-slider-handle {
	top: -.3em;
	margin-left: -.6em;
}
.ui-slider-horizontal .ui-slider-range {
	top: 0;
	height: 100%;
}
.ui-slider-horizontal .ui-slider-range-min {
	left: 0;
}
.ui-slider-horizontal .ui-slider-range-max {
	right: 0;
}

.ui-slider-vertical {
	width: .8em;
	height: 100px;
}
.ui-slider-vertical .ui-slider-handle {
	left: -.3em;
	margin-left: 0;
	margin-bottom: -.6em;
}
.ui-slider-vertical .ui-slider-range {
	left: 0;
	width: 100%;
}
.ui-slider-vertical .ui-slider-range-min {
	bottom: 0;
}
.ui-slider-vertical .ui-slider-range-max {
	top: 0;
}
.ui-sortable-handle {
	-ms-touch-action: none;
	touch-action: none;
}
.ui-spinner {
	position: relative;
	display: inline-block;
	overflow: hidden;
	padding: 0;
	vertical-align: middle;
}
.ui-spinner-input {
	border: none;
	background: none;
	color: inherit;
	padding: .222em 0;
	margin: .2em 0;
	vertical-align: middle;
	margin-left: .4em;
	margin-right: 2em;
}
.ui-spinner-button {
	width: 1.6em;
	height: 50%;
	font-size: .5em;
	padding: 0;
	margin: 0;
	text-align: center;
	position: absolute;
	cursor: default;
	display: block;
	overflow: hidden;
	right: 0;
}
/* more specificity required here to override default borders */
.ui-spinner a.ui-spinner-button {
	border-top-style: none;
	border-bottom-style: none;
	border-right-style: none;
}
.ui-spinner-up {
	top: 0;
}
.ui-spinner-down {
	bottom: 0;
}
.ui-tabs {
	position: relative;/* position: relative prevents IE scroll bug (element with position: relative inside container with overflow: auto appear as "fixed") */
	padding: .2em;
}
.ui-tabs .ui-tabs-nav {
	margin: 0;
	padding: .2em .2em 0;
}
.ui-tabs .ui-tabs-nav li {
	list-style: none;
	float: left;
	position: relative;
	top: 0;
	margin: 1px .2em 0 0;
	border-bottom-width: 0;
	padding: 0;
	white-space: nowrap;
}
.ui-tabs .ui-tabs-nav .ui-tabs-anchor {
	float: left;
	padding: .5em 1em;
	text-decoration: none;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active {
	margin-bottom: -1px;
	padding-bottom: 1px;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-state-disabled .ui-tabs-anchor,
.ui-tabs .ui-tabs-nav li.ui-tabs-loading .ui-tabs-anchor {
	cursor: text;
}
.ui-tabs-collapsible .ui-tabs-nav li.ui-tabs-active .ui-tabs-anchor {
	cursor: pointer;
}
.ui-tabs .ui-tabs-panel {
	display: block;
	border-width: 0;
	padding: 1em 1.4em;
	background: none;
}
.ui-tooltip {
	padding: 8px;
	position: absolute;
	z-index: 9999;
	max-width: 300px;
}
body .ui-tooltip {
	border-width: 2px;
}
/* Component containers
----------------------------------*/
.ui-widget {
	font-family: Arial,Helvetica,sans-serif;
	font-size: 1em;
}
.ui-widget .ui-widget {
	font-size: 1em;
}
.ui-widget input,
.ui-widget select,
.ui-widget textarea,
.ui-widget button {
	font-family: Arial,Helvetica,sans-serif;
	font-size: 1em;
}
.ui-widget.ui-widget-content {
	border: 1px solid #c5c5c5;
}
.ui-widget-content {
	border: 1px solid #dddddd;
	background: #ffffff;
	color: #333333;
}
.ui-widget-content a {
	color: #333333;
}
.ui-widget-header {
	border: 1px solid #dddddd;
	background: #e9e9e9;
	color: #333333;
	font-weight: bold;
}
.ui-widget-header a {
	color: #333333;
}

/* Interaction states
----------------------------------*/
.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,

/* We use html here because we need a greater specificity to make sure disabled
works properly when clicked or hovered */
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
	border: 1px solid #c5c5c5;
	background: #f6f6f6;
	font-weight: normal;
	color: #454545;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button,
.ui-button {
	color: #454545;
	text-decoration: none;
}
.ui-state-hover,
.ui-widget-content .ui-state-hover,
.ui-widget-header .ui-state-hover,
.ui-state-focus,
.ui-widget-content .ui-state-focus,
.ui-widget-header .ui-state-focus,
.ui-button:hover,
.ui-button:focus {
	border: 1px solid #cccccc;
	background: #ededed;
	font-weight: normal;
	color: #2b2b2b;
}
.ui-state-hover a,
.ui-state-hover a:hover,
.ui-state-hover a:link,
.ui-state-hover a:visited,
.ui-state-focus a,
.ui-state-focus a:hover,
.ui-state-focus a:link,
.ui-state-focus a:visited,
a.ui-button:hover,
a.ui-button:focus {
	color: #2b2b2b;
	text-decoration: none;
}

.ui-visual-focus {
	box-shadow: 0 0 3px 1px rgb(94, 158, 214);
}
.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
	border: 1px solid #003eff;
	background: #007fff;
	font-weight: normal;
	color: #ffffff;
}
.ui-icon-background,
.ui-state-active .ui-icon-background {
	border: #003eff;
	background-color: #ffffff;
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
	color: #ffffff;
	text-decoration: none;
}

/* Interaction Cues
----------------------------------*/
.ui-state-highlight,
.ui-widget-content .ui-state-highlight,
.ui-widget-header .ui-state-highlight {
	border: 1px solid #dad55e;
	background: #fffa90;
	color: #777620;
}
.ui-state-checked {
	border: 1px solid #dad55e;
	background: #fffa90;
}
.ui-state-highlight a,
.ui-widget-content .ui-state-highlight a,
.ui-widget-header .ui-state-highlight a {
	color: #777620;
}
.ui-state-error,
.ui-widget-content .ui-state-error,
.ui-widget-header .ui-state-error {
	border: 1px solid #f1a899;
	background: #fddfdf;
	color: #5f3f3f;
}
.ui-state-error a,
.ui-widget-content .ui-state-error a,
.ui-widget-header .ui-state-error a {
	color: #5f3f3f;
}
.ui-state-error-text,
.ui-widget-content .ui-state-error-text,
.ui-widget-header .ui-state-error-text {
	color: #5f3f3f;
}
.ui-priority-primary,
.ui-widget-content .ui-priority-primary,
.ui-widget-header .ui-priority-primary {
	font-weight: bold;
}
.ui-priority-secondary,
.ui-widget-content .ui-priority-secondary,
.ui-widget-header .ui-priority-secondary {
	opacity: .7;
	-ms-filter: "alpha(opacity=70)"; /* support: IE8 */
	font-weight: normal;
}
.ui-state-disabled,
.ui-widget-content .ui-state-disabled,
.ui-widget-header .ui-state-disabled {
	opacity: .35;
	-ms-filter: "alpha(opacity=35)"; /* support: IE8 */
	background-image: none;
}
.ui-state-disabled .ui-icon {
	-ms-filter: "alpha(opacity=35)"; /* support: IE8 - See #6059 */
}

/* Icons
----------------------------------*/

/* states and images */
.ui-icon {
	width: 16px;
	height: 16px;
}
.ui-icon,
.ui-widget-content .ui-icon {
	background-image: url("images/ui-icons_444444_256x240.png");
}
.ui-widget-header .ui-icon {
	background-image: url("images/ui-icons_444444_256x240.png");
}
.ui-state-hover .ui-icon,
.ui-state-focus .ui-icon,
.ui-button:hover .ui-icon,
.ui-button:focus .ui-icon {
	background-image: url("images/ui-icons_555555_256x240.png");
}
.ui-state-active .ui-icon,
.ui-button:active .ui-icon {
	background-image: url("images/ui-icons_ffffff_256x240.png");
}
.ui-state-highlight .ui-icon,
.ui-button .ui-state-highlight.ui-icon {
	background-image: url("images/ui-icons_777620_256x240.png");
}
.ui-state-error .ui-icon,
.ui-state-error-text .ui-icon {
	background-image: url("images/ui-icons_cc0000_256x240.png");
}
.ui-button .ui-icon {
	background-image: url("images/ui-icons_777777_256x240.png");
}

/* positioning */
/* Three classes needed to override `.ui-button:hover .ui-icon` */
.ui-icon-blank.ui-icon-blank.ui-icon-blank {
	background-image: none;
}
.ui-icon-caret-1-n { background-position: 0 0; }
.ui-icon-caret-1-ne { background-position: -16px 0; }
.ui-icon-caret-1-e { background-position: -32px 0; }
.ui-icon-caret-1-se { background-position: -48px 0; }
.ui-icon-caret-1-s { background-position: -65px 0; }
.ui-icon-caret-1-sw { background-position: -80px 0; }
.ui-icon-caret-1-w { background-position: -96px 0; }
.ui-icon-caret-1-nw { background-position: -112px 0; }
.ui-icon-caret-2-n-s { background-position: -128px 0; }
.ui-icon-caret-2-e-w { background-position: -144px 0; }
.ui-icon-triangle-1-n { background-position: 0 -16px; }
.ui-icon-triangle-1-ne { background-position: -16px -16px; }
.ui-icon-triangle-1-e { background-position: -32px -16px; }
.ui-icon-triangle-1-se { background-position: -48px -16px; }
.ui-icon-triangle-1-s { background-position: -65px -16px; }
.ui-icon-triangle-1-sw { background-position: -80px -16px; }
.ui-icon-triangle-1-w { background-position: -96px -16px; }
.ui-icon-triangle-1-nw { background-position: -112px -16px; }
.ui-icon-triangle-2-n-s { background-position: -128px -16px; }
.ui-icon-triangle-2-e-w { background-position: -144px -16px; }
.ui-icon-arrow-1-n { background-position: 0 -32px; }
.ui-icon-arrow-1-ne { background-position: -16px -32px; }
.ui-icon-arrow-1-e { background-position: -32px -32px; }
.ui-icon-arrow-1-se { background-position: -48px -32px; }
.ui-icon-arrow-1-s { background-position: -65px -32px; }
.ui-icon-arrow-1-sw { background-position: -80px -32px; }
.ui-icon-arrow-1-w { background-position: -96px -32px; }
.ui-icon-arrow-1-nw { background-position: -112px -32px; }
.ui-icon-arrow-2-n-s { background-position: -128px -32px; }
.ui-icon-arrow-2-ne-sw { background-position: -144px -32px; }
.ui-icon-arrow-2-e-w { background-position: -160px -32px; }
.ui-icon-arrow-2-se-nw { background-position: -176px -32px; }
.ui-icon-arrowstop-1-n { background-position: -192px -32px; }
.ui-icon-arrowstop-1-e { background-position: -208px -32px; }
.ui-icon-arrowstop-1-s { background-position: -224px -32px; }
.ui-icon-arrowstop-1-w { background-position: -240px -32px; }
.ui-icon-arrowthick-1-n { background-position: 1px -48px; }
.ui-icon-arrowthick-1-ne { background-position: -16px -48px; }
.ui-icon-arrowthick-1-e { background-position: -32px -48px; }
.ui-icon-arrowthick-1-se { background-position: -48px -48px; }
.ui-icon-arrowthick-1-s { background-position: -64px -48px; }
.ui-icon-arrowthick-1-sw { background-position: -80px -48px; }
.ui-icon-arrowthick-1-w { background-position: -96px -48px; }
.ui-icon-arrowthick-1-nw { background-position: -112px -48px; }
.ui-icon-arrowthick-2-n-s { background-position: -128px -48px; }
.ui-icon-arrowthick-2-ne-sw { background-position: -144px -48px; }
.ui-icon-arrowthick-2-e-w { background-position: -160px -48px; }
.ui-icon-arrowthick-2-se-nw { background-position: -176px -48px; }
.ui-icon-arrowthickstop-1-n { background-position: -192px -48px; }
.ui-icon-arrowthickstop-1-e { background-position: -208px -48px; }
.ui-icon-arrowthickstop-1-s { background-position: -224px -48px; }
.ui-icon-arrowthickstop-1-w { background-position: -240px -48px; }
.ui-icon-arrowreturnthick-1-w { background-position: 0 -64px; }
.ui-icon-arrowreturnthick-1-n { background-position: -16px -64px; }
.ui-icon-arrowreturnthick-1-e { background-position: -32px -64px; }
.ui-icon-arrowreturnthick-1-s { background-position: -48px -64px; }
.ui-icon-arrowreturn-1-w { background-position: -64px -64px; }
.ui-icon-arrowreturn-1-n { background-position: -80px -64px; }
.ui-icon-arrowreturn-1-e { background-position: -96px -64px; }
.ui-icon-arrowreturn-1-s { background-position: -112px -64px; }
.ui-icon-arrowrefresh-1-w { background-position: -128px -64px; }
.ui-icon-arrowrefresh-1-n { background-position: -144px -64px; }
.ui-icon-arrowrefresh-1-e { background-position: -160px -64px; }
.ui-icon-arrowrefresh-1-s { background-position: -176px -64px; }
.ui-icon-arrow-4 { background-position: 0 -80px; }
.ui-icon-arrow-4-diag { background-position: -16px -80px; }
.ui-icon-extlink { background-position: -32px -80px; }
.ui-icon-newwin { background-position: -48px -80px; }
.ui-icon-refresh { background-position: -64px -80px; }
.ui-icon-shuffle { background-position: -80px -80px; }
.ui-icon-transfer-e-w { background-position: -96px -80px; }
.ui-icon-transferthick-e-w { background-position: -112px -80px; }
.ui-icon-folder-collapsed { background-position: 0 -96px; }
.ui-icon-folder-open { background-position: -16px -96px; }
.ui-icon-document { background-position: -32px -96px; }
.ui-icon-document-b { background-position: -48px -96px; }
.ui-icon-note { background-position: -64px -96px; }
.ui-icon-mail-closed { background-position: -80px -96px; }
.ui-icon-mail-open { background-position: -96px -96px; }
.ui-icon-suitcase { background-position: -112px -96px; }
.ui-icon-comment { background-position: -128px -96px; }
.ui-icon-person { background-position: -144px -96px; }
.ui-icon-print { background-position: -160px -96px; }
.ui-icon-trash { background-position: -176px -96px; }
.ui-icon-locked { background-position: -192px -96px; }
.ui-icon-unlocked { background-position: -208px -96px; }
.ui-icon-bookmark { background-position: -224px -96px; }
.ui-icon-tag { background-position: -240px -96px; }
.ui-icon-home { background-position: 0 -112px; }
.ui-icon-flag { background-position: -16px -112px; }
.ui-icon-calendar { background-position: -32px -112px; }
.ui-icon-cart { background-position: -48px -112px; }
.ui-icon-pencil { background-position: -64px -112px; }
.ui-icon-clock { background-position: -80px -112px; }
.ui-icon-disk { background-position: -96px -112px; }
.ui-icon-calculator { background-position: -112px -112px; }
.ui-icon-zoomin { background-position: -128px -112px; }
.ui-icon-zoomout { background-position: -144px -112px; }
.ui-icon-search { background-position: -160px -112px; }
.ui-icon-wrench { background-position: -176px -112px; }
.ui-icon-gear { background-position: -192px -112px; }
.ui-icon-heart { background-position: -208px -112px; }
.ui-icon-star { background-position: -224px -112px; }
.ui-icon-link { background-position: -240px -112px; }
.ui-icon-cancel { background-position: 0 -128px; }
.ui-icon-plus { background-position: -16px -128px; }
.ui-icon-plusthick { background-position: -32px -128px; }
.ui-icon-minus { background-position: -48px -128px; }
.ui-icon-minusthick { background-position: -64px -128px; }
.ui-icon-close { background-position: -80px -128px; }
.ui-icon-closethick { background-position: -96px -128px; }
.ui-icon-key { background-position: -112px -128px; }
.ui-icon-lightbulb { background-position: -128px -128px; }
.ui-icon-scissors { background-position: -144px -128px; }
.ui-icon-clipboard { background-position: -160px -128px; }
.ui-icon-copy { background-position: -176px -128px; }
.ui-icon-contact { background-position: -192px -128px; }
.ui-icon-image { background-position: -208px -128px; }
.ui-icon-video { background-position: -224px -128px; }
.ui-icon-script { background-position: -240px -128px; }
.ui-icon-alert { background-position: 0 -144px; }
.ui-icon-info { background-position: -16px -144px; }
.ui-icon-notice { background-position: -32px -144px; }
.ui-icon-help { background-position: -48px -144px; }
.ui-icon-check { background-position: -64px -144px; }
.ui-icon-bullet { background-position: -80px -144px; }
.ui-icon-radio-on { background-position: -96px -144px; }
.ui-icon-radio-off { background-position: -112px -144px; }
.ui-icon-pin-w { background-position: -128px -144px; }
.ui-icon-pin-s { background-position: -144px -144px; }
.ui-icon-play { background-position: 0 -160px; }
.ui-icon-pause { background-position: -16px -160px; }
.ui-icon-seek-next { background-position: -32px -160px; }
.ui-icon-seek-prev { background-position: -48px -160px; }
.ui-icon-seek-end { background-position: -64px -160px; }
.ui-icon-seek-start { background-position: -80px -160px; }
/* ui-icon-seek-first is deprecated, use ui-icon-seek-start instead */
.ui-icon-seek-first { background-position: -80px -160px; }
.ui-icon-stop { background-position: -96px -160px; }
.ui-icon-eject { background-position: -112px -160px; }
.ui-icon-volume-off { background-position: -128px -160px; }
.ui-icon-volume-on { background-position: -144px -160px; }
.ui-icon-power { background-position: 0 -176px; }
.ui-icon-signal-diag { background-position: -16px -176px; }
.ui-icon-signal { background-position: -32px -176px; }
.ui-icon-battery-0 { background-position: -48px -176px; }
.ui-icon-battery-1 { background-position: -64px -176px; }
.ui-icon-battery-2 { background-position: -80px -176px; }
.ui-icon-battery-3 { background-position: -96px -176px; }
.ui-icon-circle-plus { background-position: 0 -192px; }
.ui-icon-circle-minus { background-position: -16px -192px; }
.ui-icon-circle-close { background-position: -32px -192px; }
.ui-icon-circle-triangle-e { background-position: -48px -192px; }
.ui-icon-circle-triangle-s { background-position: -64px -192px; }
.ui-icon-circle-triangle-w { background-position: -80px -192px; }
.ui-icon-circle-triangle-n { background-position: -96px -192px; }
.ui-icon-circle-arrow-e { background-position: -112px -192px; }
.ui-icon-circle-arrow-s { background-position: -128px -192px; }
.ui-icon-circle-arrow-w { background-position: -144px -192px; }
.ui-icon-circle-arrow-n { background-position: -160px -192px; }
.ui-icon-circle-zoomin { background-position: -176px -192px; }
.ui-icon-circle-zoomout { background-position: -192px -192px; }
.ui-icon-circle-check { background-position: -208px -192px; }
.ui-icon-circlesmall-plus { background-position: 0 -208px; }
.ui-icon-circlesmall-minus { background-position: -16px -208px; }
.ui-icon-circlesmall-close { background-position: -32px -208px; }
.ui-icon-squaresmall-plus { background-position: -48px -208px; }
.ui-icon-squaresmall-minus { background-position: -64px -208px; }
.ui-icon-squaresmall-close { background-position: -80px -208px; }
.ui-icon-grip-dotted-vertical { background-position: 0 -224px; }
.ui-icon-grip-dotted-horizontal { background-position: -16px -224px; }
.ui-icon-grip-solid-vertical { background-position: -32px -224px; }
.ui-icon-grip-solid-horizontal { background-position: -48px -224px; }
.ui-icon-gripsmall-diagonal-se { background-position: -64px -224px; }
.ui-icon-grip-diagonal-se { background-position: -80px -224px; }


/* Misc visuals
----------------------------------*/

/* Corner radius */
.ui-corner-all,
.ui-corner-top,
.ui-corner-left,
.ui-corner-tl {
	border-top-left-radius: 3px;
}
.ui-corner-all,
.ui-corner-top,
.ui-corner-right,
.ui-corner-tr {
	border-top-right-radius: 3px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-left,
.ui-corner-bl {
	border-bottom-left-radius: 3px;
}
.ui-corner-all,
.ui-corner-bottom,
.ui-corner-right,
.ui-corner-br {
	border-bottom-right-radius: 3px;
}

/* Overlays */
.ui-widget-overlay {
	background: #aaaaaa;
	opacity: .3;
	-ms-filter: Alpha(Opacity=30); /* support: IE8 */
}
.ui-widget-shadow {
	-webkit-box-shadow: 0px 0px 5px #666666;
	box-shadow: 0px 0px 5px #666666;
}

@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&display=swap");
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100..900&display=swap");
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, img {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

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

table {
  border-collapse: collapse;
  border-spacing: 0; }

a {
  text-decoration: none; }

b, strong {
  font-weight: bold; }

i, em {
  font-style: italic; }

.container {
  max-width: 1006px;
  margin: 0 auto;
  width: 92%; }

.textCenter {
  text-align: center; }

.textUnderline {
  text-decoration: underline; }

.positionR {
  position: relative; }

.dFlex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.dBlock {
  display: block; }

.flexColumn {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column; }

.alignCenter {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.justifyCenter {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }

.justifyBetween {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }

.justifyStart {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start; }

.justifyEnd {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }

.textCenter {
  text-align: center; }

.marginX {
  margin: auto; }

.perspective {
  -webkit-perspective: 1000;
          perspective: 1000; }

.redHint {
  color: #e60013; }

.errorHint {
  color: #e60013; }

.mustHint {
  margin: 10px 0;
  color: #e60013;
  display: none; }

.py-1st {
  padding: 50px 0; }
  @media screen and (max-width: 1024px) {
    .py-1st {
      padding: 30px 0; } }
  @media screen and (max-width: 767px) {
    .py-1st {
      padding: 20px 0; } }

*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

body,
html {
  font-family: "Noto Sans TC", "Sono", sans-serif;
  width: 100%;
  height: 100%; }

body.no-scroll {
  overflow: hidden; }

img {
  max-width: 100%;
  height: auto;
  image-rendering: -webkit-optimize-contrast;
  vertical-align: top; }

a {
  text-decoration: none; }

select, option, input, button {
  font-family: "Noto Sans TC", "Sono", sans-serif; }
  select::-webkit-input-placeholder, option::-webkit-input-placeholder, input::-webkit-input-placeholder, button::-webkit-input-placeholder {
    font-family: "Noto Sans TC", "Sono", sans-serif; }
  select::-moz-placeholder, option::-moz-placeholder, input::-moz-placeholder, button::-moz-placeholder {
    font-family: "Noto Sans TC", "Sono", sans-serif; }
  select:-ms-input-placeholder, option:-ms-input-placeholder, input:-ms-input-placeholder, button:-ms-input-placeholder {
    font-family: "Noto Sans TC", "Sono", sans-serif; }
  select::-ms-input-placeholder, option::-ms-input-placeholder, input::-ms-input-placeholder, button::-ms-input-placeholder {
    font-family: "Noto Sans TC", "Sono", sans-serif; }
  select::placeholder, option::placeholder, input::placeholder, button::placeholder {
    font-family: "Noto Sans TC", "Sono", sans-serif; }

@-webkit-keyframes arrowMove {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  50% {
    -webkit-transform: translateX(10px);
            transform: translateX(10px); }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0); } }

@keyframes arrowMove {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  50% {
    -webkit-transform: translateX(10px);
            transform: translateX(10px); }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0); } }

.header {
  padding: 0px 50px 0px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-shadow: 0 15px 20px rgba(170, 170, 170, 0.6);
          box-shadow: 0 15px 20px rgba(170, 170, 170, 0.6);
  z-index: 10; }
  @media screen and (max-width: 1280px) {
    .header {
      padding: 20px 20px;
      -webkit-box-shadow: none;
              box-shadow: none; } }
  @media screen and (max-width: 767px) {
    .header {
      padding: 10px 20px; } }

.logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .logo img {
    width: 255px; }
    @media screen and (max-width: 450px) {
      .logo img {
        width: 200px; } }

@media screen and (max-width: 1280px) {
  .headerMenu {
    position: fixed;
    top: 0;
    left: -100%;
    width: 260px;
    height: 100vh;
    background: #fff;
    -webkit-box-shadow: 2px 0 10px rgba(0, 0, 0, 0.2);
            box-shadow: 2px 0 10px rgba(0, 0, 0, 0.2);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-transition: left 0.3s ease-in-out;
    -o-transition: left 0.3s ease-in-out;
    transition: left 0.3s ease-in-out;
    max-height: 100vh;
    overflow-y: auto; }
    .headerMenu.active {
      left: 0; } }

.menu-indicator {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 3px;
  background-color: #f00;
  -webkit-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  z-index: -1; }

.firstMenu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media screen and (max-width: 1280px) {
    .firstMenu {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: start; } }
  .firstMenu a {
    color: #333;
    font-weight: bold; }
    .firstMenu a:hover {
      color: #e60013; }

@media screen and (max-width: 1280px) {
  .firstMenuLi {
    width: 100%; } }

.firstMenuLi:hover .dropDownMenu {
  display: block; }

.firstMenuLi.active .dropDownMenu {
  display: block; }

.firstMenuLi.active .firstMenuA.has-submenu {
  position: relative; }
  .firstMenuLi.active .firstMenuA.has-submenu::after {
    content: "－"; }

.firstMenuA {
  padding: 45px 24px;
  position: relative;
  display: block;
  font-size: 1.125rem;
  line-height: 1.5; }
  @media screen and (max-width: 1280px) {
    .firstMenuA {
      padding: 15px 30px 15px 15px;
      width: 100%;
      border-bottom: 1px solid #e6e6e6; } }
  .firstMenuA.has-submenu {
    position: relative; }
    .firstMenuA.has-submenu::after {
      content: "＋";
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      right: 10px;
      font-size: 1.2rem;
      font-weight: bold;
      -webkit-transition: -webkit-transform 0.3s ease;
      transition: -webkit-transform 0.3s ease;
      -o-transition: transform 0.3s ease;
      transition: transform 0.3s ease;
      transition: transform 0.3s ease, -webkit-transform 0.3s ease; }
      @media screen and (min-width: 1280px) {
        .firstMenuA.has-submenu::after {
          display: none; } }

.dropDownMenu {
  position: absolute;
  left: 0;
  top: 100%;
  background-color: #dcdcdc;
  width: 100%;
  display: none;
  padding: 30px 0;
  -webkit-box-shadow: 0 15px 20px rgba(170, 170, 170, 0.6);
          box-shadow: 0 15px 20px rgba(170, 170, 170, 0.6); }
  @media screen and (max-width: 1280px) {
    .dropDownMenu {
      position: static;
      width: 100%;
      background: none;
      display: none;
      -webkit-box-shadow: none;
              box-shadow: none;
      padding: 0;
      background-color: #F2F2F2; } }

.dropDownMenuTitle {
  font-size: 1.375rem;
  font-weight: bold;
  margin-right: 40px;
  width: 30%;
  line-height: 1.5;
  color: #333; }
  @media screen and (max-width: 1280px) {
    .dropDownMenuTitle {
      width: 100%;
      display: none; } }
  .dropDownMenuTitle i {
    color: #ee5561; }

.dropDownMenuContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  @media screen and (max-width: 1280px) {
    .dropDownMenuContainer {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.dropDownMenuUl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 75%; }
  @media screen and (max-width: 1280px) {
    .dropDownMenuUl {
      width: 100%;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.dropDownMenuLi {
  width: 25%; }
  @media screen and (max-width: 1280px) {
    .dropDownMenuLi {
      width: 100%; } }

.dropDownMenuA {
  display: inline-block;
  padding: 5px 10px;
  font-size: 1.125rem;
  line-height: 1.5; }
  @media screen and (max-width: 1280px) {
    .dropDownMenuA {
      border-bottom: 1px solid #e6e6e6;
      display: block;
      padding: 10px; } }

.hamBtnBox {
  display: none;
  position: relative;
  z-index: 10; }
  @media screen and (max-width: 1280px) {
    .hamBtnBox {
      display: block;
      cursor: pointer; } }

.hamBtnBox.active span {
  background-color: transparent; }
  .hamBtnBox.active span::before {
    -webkit-transform: translateY(8px) rotate(45deg);
        -ms-transform: translateY(8px) rotate(45deg);
            transform: translateY(8px) rotate(45deg); }
  .hamBtnBox.active span::after {
    -webkit-transform: translateY(-8px) rotate(-45deg);
        -ms-transform: translateY(-8px) rotate(-45deg);
            transform: translateY(-8px) rotate(-45deg); }

@media screen and (max-width: 1280px) {
  .hamBtnBoxLabel {
    width: 30px;
    height: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    cursor: pointer; }
    .hamBtnBoxLabel span {
      display: block;
      width: 100%;
      height: 3px;
      background-color: #333;
      position: relative;
      -webkit-transition: all 0.3s ease-in-out;
      -o-transition: all 0.3s ease-in-out;
      transition: all 0.3s ease-in-out; }
      .hamBtnBoxLabel span::before, .hamBtnBoxLabel span::after {
        content: "";
        width: 100%;
        height: 3px;
        background-color: #333;
        position: absolute;
        -webkit-transition: all 0.3s ease-in-out;
        -o-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out; }
      .hamBtnBoxLabel span::before {
        top: -8px; }
      .hamBtnBoxLabel span::after {
        top: 8px; } }

.menu-mask {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9;
  width: 100%;
  height: 100%;
  background-color: rgba(194, 194, 194, 0.8);
  z-index: 9; }
  @media screen and (max-width: 1280px) {
    .menu-mask {
      display: none; } }

.footerContainer {
  width: 94%;
  margin: 0 auto; }

.sitemap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 50px 0; }
  @media screen and (max-width: 1024px) {
    .sitemap {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }
  @media screen and (max-width: 767px) {
    .sitemap {
      padding: 25px 0; } }

.footerLogo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  @media screen and (max-width: 1024px) {
    .footerLogo {
      margin-bottom: 30px; } }
  @media screen and (max-width: 450px) {
    .footerLogo {
      margin-bottom: 20px; } }
  .footerLogo img {
    width: 83px;
    margin-right: 22px; }
    @media screen and (max-width: 767px) {
      .footerLogo img {
        width: 60px;
        margin-right: 16px; } }
  .footerLogo span {
    font-size: 1.25rem;
    font-weight: bold;
    white-space: nowrap;
    color: #333; }
    @media screen and (max-width: 767px) {
      .footerLogo span {
        font-size: 1.2rem; } }

.footerMenu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start; }
  @media screen and (max-width: 1024px) {
    .footerMenu {
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      width: 100%; } }
  @media screen and (max-width: 767px) {
    .footerMenu {
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; } }
  .footerMenu a {
    color: #333; }
    .footerMenu a:hover {
      color: #e60013; }

.footerMenuLi {
  margin-right: 80px; }
  @media screen and (max-width: 1280px) {
    .footerMenuLi {
      margin-right: 20px; } }
  @media screen and (max-width: 767px) {
    .footerMenuLi {
      margin-right: 5px;
      width: calc(50% - 5px);
      margin-bottom: 20px; }
      .footerMenuLi:nth-of-type(2n) {
        margin-right: 0; } }
  .footerMenuLi:last-of-type {
    margin-right: 0; }

.footerMenu1stA {
  font-size: 1.375rem;
  line-height: 1.3;
  font-weight: bold;
  margin-bottom: 20px;
  display: inline-block; }
  @media screen and (max-width: 767px) {
    .footerMenu1stA {
      font-size: 1.1rem; } }

.footerDropdownMenuLi {
  margin-bottom: 20px; }
  @media screen and (max-width: 450px) {
    .footerDropdownMenuLi {
      margin-bottom: 15px; } }
  .footerDropdownMenuLi:last-of-type {
    margin-bottom: 0; }

.footerDropdownA {
  font-weight: 500; }
  @media screen and (max-width: 450px) {
    .footerDropdownA {
      font-size: 0.9rem; } }

.copyrightArea {
  background-color: #333;
  font-size: 1rem; }

.copyrightRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 25px 0; }
  @media screen and (max-width: 767px) {
    .copyrightRow {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }

@media screen and (max-width: 767px) {
  .copyrightLeft {
    margin-bottom: 15px; } }

.copyrightLeft a {
  color: #fff;
  text-decoration: underline;
  -webkit-text-decoration-color: #ddd;
          text-decoration-color: #ddd;
  text-underline-offset: 4px;
  margin-right: 40px; }
  .copyrightLeft a:last-of-type {
    margin-right: 0; }
  @media screen and (max-width: 768px) {
    .copyrightLeft a {
      margin-right: 20px; } }
  @media screen and (max-width: 767px) {
    .copyrightLeft a {
      font-size: 0.8rem; } }

.copyright {
  color: #fff;
  line-height: 1.5; }
  @media screen and (max-width: 767px) {
    .copyright {
      font-size: 0.8rem;
      text-align: center; } }

.breadcrumbs {
  padding: 0px 63px 40px;
  position: relative;
  z-index: 2; }
  @media screen and (max-width: 820px) {
    .breadcrumbs {
      padding: 0 20px 40px; } }
  @media screen and (max-width: 767px) {
    .breadcrumbs {
      padding: 0px 4% 30px; } }
  .breadcrumbs ul {
    display: inline-block; }
  .breadcrumbs li {
    display: inline;
    position: relative;
    white-space: normal; }
  .breadcrumbs li + li::before {
    content: ">";
    margin: 0 10px;
    display: inline-block; }
  .breadcrumbs a {
    display: inline;
    font-size: 1rem;
    line-height: 1.5;
    color: #333;
    font-weight: bold;
    word-break: break-all;
    overflow-wrap: break-word;
    text-align: left; }
    .breadcrumbs a:hover {
      text-decoration: underline; }

.pageSection {
  background-color: #ededed;
  padding: 45px 0 80px;
  position: relative;
  min-height: 100vh; }
  @media screen and (max-width: 767px) {
    .pageSection {
      padding: 30px 0 40px; } }

.pageSectionBGD {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1; }

.pageTitle {
  font-size: 2.875rem;
  font-weight: 500;
  padding-bottom: 50px;
  border-bottom: 1px solid #535353;
  text-align: center;
  color: #333;
  line-height: 1.5; }
  @media screen and (max-width: 1024px) {
    .pageTitle {
      font-size: 2.5rem;
      padding-bottom: 30px; } }
  @media screen and (max-width: 767px) {
    .pageTitle {
      font-size: 2rem;
      padding-bottom: 20px; } }
  @media screen and (max-width: 450px) {
    .pageTitle {
      font-size: 1.8rem; } }

.pageTitleNoLine {
  font-size: 2.875rem;
  font-weight: 500;
  padding-bottom: 50px;
  text-align: center;
  color: #333;
  line-height: 1.5; }
  @media screen and (max-width: 1024px) {
    .pageTitleNoLine {
      font-size: 2.5rem;
      padding-bottom: 30px; } }
  @media screen and (max-width: 767px) {
    .pageTitleNoLine {
      font-size: 2rem;
      padding-bottom: 20px; } }
  @media screen and (max-width: 450px) {
    .pageTitleNoLine {
      font-size: 1.8rem; } }

.paginationNav {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 60px 0 0; }
  @media screen and (max-width: 450px) {
    .paginationNav {
      margin: 40px 0 0; } }

.pagination {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.pageItem {
  margin-right: 8px; }
  .pageItem:last-of-type {
    margin-right: 0; }

.pageLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 56px;
  aspect-ratio: 1/1;
  border-radius: 20px;
  border: 1px solid #7b7a7a;
  font-size: 1.375rem;
  color: #7b7a7a;
  background-color: #fff; }
  @media screen and (max-width: 767px) {
    .pageLink {
      width: 45px;
      border-radius: 15px;
      font-size: 1.2rem; } }
  @media screen and (max-width: 450px) {
    .pageLink {
      width: 38px;
      font-size: 1rem;
      border-radius: 10px; } }
  @media screen and (max-width: 321px) {
    .pageLink {
      width: 35px; } }
  .pageLink:hover {
    background-color: #e60013;
    border: 1px solid #e60013;
    color: #fff; }

.pageLink.pageLinkActive {
  background-color: #e60013;
  border: 1px solid #e60013;
  color: #fff; }

.NoResult {
  font-size: 3rem;
  font-weight: bold;
  color: #033333;
  text-align: center;
  margin: 60px auto; }

.btn {
  border-radius: 20px;
  font-size: 1.375rem;
  font-weight: 500;
  display: inline-block;
  padding: 25px 10px;
  width: 460px;
  border: 1px solid transparent;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .btn {
      font-size: 1.2rem;
      width: 300px;
      padding: 20px 10px; } }
  @media screen and (max-width: 450px) {
    .btn {
      padding: 15px 10px;
      border-radius: 15px;
      font-size: 1.2rem; } }

.redBtn {
  background-color: #e60013;
  color: #fff; }
  .redBtn:hover {
    background-color: #fff;
    color: #e60013;
    border: 1px solid #e60013; }

.whiteBtn {
  background-color: #fff;
  color: #7b7a7a; }
  .whiteBtn:hover {
    background-color: #fff;
    color: #e60013;
    border: 1px solid #e60013; }

.btnRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.cookieApproveBoxWrap {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 2; }

.cookieApproveBox {
  padding: 45px 10px;
  text-align: center;
  background-color: #000000c5;
  -webkit-box-shadow: 0px -20px 30px #00000091;
          box-shadow: 0px -20px 30px #00000091;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media screen and (max-width: 820px) {
    .cookieApproveBox {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      padding: 25px 10px; } }
  .cookieApproveBox p {
    color: #fff;
    margin-right: 60px;
    line-height: 1.5; }
    @media screen and (max-width: 820px) {
      .cookieApproveBox p {
        margin: 0 0 20px; } }
  .cookieApproveBox .agreeCookieBtn {
    background-color: #fff;
    color: #333;
    max-width: 280px;
    padding: 20px 0;
    border: 1px solid transparent;
    font-size: 1.375rem; }
    @media screen and (max-width: 820px) {
      .cookieApproveBox .agreeCookieBtn {
        padding: 15px 0; } }
    @media screen and (max-width: 767px) {
      .cookieApproveBox .agreeCookieBtn {
        font-size: 1.1rem; } }
    .cookieApproveBox .agreeCookieBtn:hover {
      border: 1px solid #fff;
      background-color: #333;
      color: #fff; }

.bannerSwiper {
  aspect-ratio: 1920/500; }
  @media screen and (max-width: 450px) {
    .bannerSwiper {
      aspect-ratio: 1920/830; } }

.bannerSlidePic {
  width: 100%;
  height: 100%; }
  .bannerSlidePic img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%; }

.bannerPagination {
  bottom: 52px !important; }
  @media screen and (max-width: 820px) {
    .bannerPagination {
      bottom: 25px !important; } }
  @media screen and (max-width: 767px) {
    .bannerPagination {
      bottom: 10px !important; } }
  .bannerPagination .swiper-pagination-bullet {
    background-color: #fff;
    opacity: 1;
    width: 20px;
    height: 20px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }
    @media screen and (max-width: 767px) {
      .bannerPagination .swiper-pagination-bullet {
        width: 15px;
        height: 15px; } }
  .bannerPagination .swiper-pagination-bullet-active {
    background-color: #e60013;
    width: 75px;
    border-radius: 10px; }
    @media screen and (max-width: 767px) {
      .bannerPagination .swiper-pagination-bullet-active {
        width: 50px; } }

.indexInfoSectionSection {
  padding: 130px 0;
  position: relative;
  background-color: #ededed; }
  @media screen and (max-width: 1280px) {
    .indexInfoSectionSection {
      padding: 70px 0; } }
  @media screen and (max-width: 1024px) {
    .indexInfoSectionSection {
      padding: 50px 0; } }
  @media screen and (max-width: 767px) {
    .indexInfoSectionSection {
      padding: 30px 0; } }

.indexActivitiesBGD {
  position: absolute; }

.indexActivitiesBGD1 {
  left: 0;
  top: -3%; }

.indexActivitiesBGD2 {
  right: 0;
  top: 35%; }

.indexActivitiesBGD3 {
  bottom: 0;
  left: 0; }

.indexInfoSectionContainer {
  width: 94%;
  max-width: 1520px;
  margin: 0 auto;
  position: relative;
  z-index: 2; }

.indexNews {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 110px; }
  @media screen and (max-width: 1280px) {
    .indexNews {
      margin-bottom: 70px; } }
  @media screen and (max-width: 820px) {
    .indexNews {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      margin-bottom: 50px; } }

.indexNewsTitle {
  font-size: 2.875rem;
  position: relative;
  display: inline-block;
  padding: 10px 0;
  color: #333; }
  @media screen and (max-width: 1280px) {
    .indexNewsTitle {
      font-size: 2.5rem; } }
  @media screen and (max-width: 820px) {
    .indexNewsTitle {
      font-size: 2rem;
      margin-bottom: 35px; } }
  @media screen and (max-width: 450px) {
    .indexNewsTitle {
      font-size: 1.6rem;
      margin-bottom: 25px; } }
  .indexNewsTitle::after {
    content: "";
    height: 9px;
    position: absolute;
    width: 100%;
    background-color: #e60013;
    bottom: -10px;
    left: 0; }
    @media screen and (max-width: 767px) {
      .indexNewsTitle::after {
        height: 5px;
        bottom: -4px; } }

.indexNewsUl {
  width: 77.6%; }
  @media screen and (max-width: 820px) {
    .indexNewsUl {
      width: 100%; } }

.indexNewsRow {
  display: block; }
  .indexNewsRow:last-of-type a {
    margin-bottom: 0; }
  .indexNewsRow a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 0px 10px 35px;
    margin-bottom: 35px;
    border-bottom: 1px solid #333; }
    @media screen and (max-width: 820px) {
      .indexNewsRow a {
        margin-bottom: 20px;
        padding: 0 10px 20px; } }
    @media screen and (max-width: 767px) {
      .indexNewsRow a {
        padding: 0 0 20px; } }
    .indexNewsRow a:hover .indexNewsRowArrow {
      -webkit-animation: arrowMove .5s infinite;
              animation: arrowMove .5s infinite; }

.indexNewsRowLeft {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 90%;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }

.indexNewsRowDate {
  font-weight: bold;
  color: #e60013;
  border: 1px solid #e60013;
  border-radius: 30px;
  padding: 15px;
  width: 108px;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 30px; }
  @media screen and (max-width: 820px) {
    .indexNewsRowDate {
      width: 100px;
      border-radius: 20px; } }
  @media screen and (max-width: 767px) {
    .indexNewsRowDate {
      margin-right: 10px;
      width: 90px;
      padding: 8px;
      border-radius: 10px; } }
  @media screen and (max-width: 450px) {
    .indexNewsRowDate {
      width: 70px; } }
  .indexNewsRowDate span {
    font-size: 1.125rem; }
    @media screen and (max-width: 767px) {
      .indexNewsRowDate span {
        font-size: 0.8rem; } }
  .indexNewsRowDate p {
    font-size: 3.625rem; }
    @media screen and (max-width: 820px) {
      .indexNewsRowDate p {
        font-size: 2.8rem; } }
    @media screen and (max-width: 767px) {
      .indexNewsRowDate p {
        font-size: 2rem; } }

.indexNewsRowInfo {
  font-weight: bold;
  line-height: 1.5; }
  .indexNewsRowInfo p {
    font-size: 1.125rem;
    color: #e60013;
    margin-bottom: 20px; }
    @media screen and (max-width: 820px) {
      .indexNewsRowInfo p {
        margin-bottom: 10px; } }
    @media screen and (max-width: 768px) {
      .indexNewsRowInfo p {
        font-size: 1rem; } }
  .indexNewsRowInfo h3 {
    font-size: 1.375rem;
    color: #333; }
    @media screen and (max-width: 768px) {
      .indexNewsRowInfo h3 {
        font-size: 1.3rem; } }
    @media screen and (max-width: 767px) {
      .indexNewsRowInfo h3 {
        -o-text-overflow: ellipsis;
           text-overflow: ellipsis;
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        font-size: 1.25rem; } }

.indexNewsRowArrow {
  width: 55px; }
  @media screen and (max-width: 820px) {
    .indexNewsRowArrow {
      width: 45px; } }
  @media screen and (max-width: 450px) {
    .indexNewsRowArrow {
      width: 30px; } }

.indexActivities {
  max-width: 1350px;
  margin: 0 auto;
  color: #333; }

.indexActivitiesRow {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 100px; }
  .indexActivitiesRow:last-of-type {
    margin-bottom: 0; }
  @media screen and (max-width: 1280px) {
    .indexActivitiesRow {
      margin-bottom: 80px; } }
  @media screen and (max-width: 768px) {
    .indexActivitiesRow {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      margin-bottom: 60px; } }
  @media screen and (max-width: 767px) {
    .indexActivitiesRow {
      margin-bottom: 50px; } }
  .indexActivitiesRow:nth-of-type(2) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
    @media screen and (max-width: 768px) {
      .indexActivitiesRow:nth-of-type(2) {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column; } }
    .indexActivitiesRow:nth-of-type(2) .indexActivitiesRowInfos {
      padding-left: 0;
      padding-right: 90px; }
      @media screen and (max-width: 1280px) {
        .indexActivitiesRow:nth-of-type(2) .indexActivitiesRowInfos {
          padding-right: 30px; } }
      @media screen and (max-width: 768px) {
        .indexActivitiesRow:nth-of-type(2) .indexActivitiesRowInfos {
          padding-right: 0; } }

.indexActivitiesRowPic {
  display: block;
  border-radius: 25px;
  overflow: hidden;
  aspect-ratio: 860/570;
  width: 53.4%; }
  @media screen and (max-width: 768px) {
    .indexActivitiesRowPic {
      width: 100%;
      margin-bottom: 20px; } }
  .indexActivitiesRowPic:hover img {
    -webkit-transform: scale(1.2);
        -ms-transform: scale(1.2);
            transform: scale(1.2); }
  .indexActivitiesRowPic img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
    -webkit-transition: 0.6s;
    -o-transition: 0.6s;
    transition: 0.6s; }

.indexActivitiesRowInfos {
  width: 40%;
  padding-left: 90px; }
  @media screen and (max-width: 1280px) {
    .indexActivitiesRowInfos {
      padding-left: 30px; } }
  @media screen and (max-width: 768px) {
    .indexActivitiesRowInfos {
      width: 100%;
      padding-left: 0; } }

.indexActivitiesRowInfosTop {
  position: relative;
  padding-bottom: 30px;
  margin-bottom: 10px; }

.indexActivitiesTag {
  font-size: 1.125rem;
  display: inline-block;
  padding: 5px;
  color: #e60013;
  border: 1px solid #e60013;
  font-weight: bold;
  margin-bottom: 20px; }
  @media screen and (max-width: 450px) {
    .indexActivitiesTag {
      font-size: 1rem; } }

.indexActivitiesTitle {
  width: 100%;
  font-size: 1.375rem;
  font-weight: bold;
  line-height: 1.3;
  margin-bottom: 20px;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  -webkit-line-clamp: 1; }
  @media screen and (max-width: 450px) {
    .indexActivitiesTitle {
      font-size: 1.3rem;
      margin-bottom: 10px; } }

.indexActivitiesText {
  font-size: 1.125rem;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  line-height: 2;
  -webkit-line-clamp: 2;
  font-weight: 500; }
  @media screen and (max-width: 450px) {
    .indexActivitiesText {
      font-size: 1rem; } }

.indexActivitiesMoreBtn {
  font-size: 1.125rem;
  color: #e60013;
  display: inline-block;
  text-decoration: underline;
  text-underline-offset: 8px;
  position: absolute;
  bottom: 0;
  right: 0;
  font-weight: 500; }
  @media screen and (max-width: 450px) {
    .indexActivitiesMoreBtn {
      font-size: 1rem;
      text-underline-offset: 5px; } }
  .indexActivitiesMoreBtn:hover {
    text-decoration: none; }
    .indexActivitiesMoreBtn:hover::after {
      width: 100%; }
  .indexActivitiesMoreBtn::after {
    content: "";
    width: 0%;
    height: 2px;
    background-color: #e60013;
    bottom: -8px;
    position: absolute;
    left: 0;
    -webkit-transition: 0.5s;
    -o-transition: 0.5s;
    transition: 0.5s; }
    @media screen and (max-width: 450px) {
      .indexActivitiesMoreBtn::after {
        bottom: -4px; } }

.indexActivitiesRowInfosBottom {
  margin-bottom: 100px; }
  @media screen and (max-width: 768px) {
    .indexActivitiesRowInfosBottom {
      margin-bottom: 50px; } }
  @media screen and (max-width: 450px) {
    .indexActivitiesRowInfosBottom {
      margin-bottom: 25px; } }

.indexActivitiesObject,
.indexActivitiesTime {
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.125rem;
  line-height: 2; }
  @media screen and (max-width: 450px) {
    .indexActivitiesObject,
    .indexActivitiesTime {
      font-size: 1rem; } }
  .indexActivitiesObject img,
  .indexActivitiesTime img {
    margin-right: 20px;
    width: 30px; }
    @media screen and (max-width: 450px) {
      .indexActivitiesObject img,
      .indexActivitiesTime img {
        width: 25px;
        margin-right: 15px; } }

.indexActivitiesObject {
  margin-bottom: 10px; }

.indexToReserveBtn {
  font-size: 1.375rem;
  font-weight: bold;
  display: block;
  background-color: #fff;
  border-radius: 20px;
  border: 1px solid #bfbfbf;
  padding: 25px 0;
  text-align: center;
  color: #e60013; }
  @media screen and (max-width: 768px) {
    .indexToReserveBtn {
      font-size: 1.3rem;
      padding: 15px 0; } }
  @media screen and (max-width: 450px) {
    .indexToReserveBtn {
      font-size: 1.1rem;
      border-radius: 15px; } }
  .indexToReserveBtn:hover {
    background-color: #e60013;
    color: #fff; }
    .indexToReserveBtn:hover i {
      -webkit-animation: arrowMove .5s infinite;
              animation: arrowMove .5s infinite; }
  .indexToReserveBtn i {
    display: inline-block;
    margin-left: 15px; }

.indexFactorySection {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 768px) {
    .indexFactorySection {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.indexFactoryContent {
  position: relative;
  background-blend-mode: multiply;
  background-size: cover;
  background-position: center center;
  background-color: #326783e3;
  display: block;
  padding: 80px 0;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-transition: background-color 0.5s linear;
  -o-transition: background-color 0.5s linear;
  transition: background-color 0.5s linear; }
  @media screen and (max-width: 1280px) {
    .indexFactoryContent {
      padding: 60px 0; } }
  @media screen and (max-width: 768px) {
    .indexFactoryContent {
      padding: 30px 0; } }
  .indexFactoryContent:hover {
    background-color: #555555; }
    .indexFactoryContent:hover .indexFactoryContentBtn i {
      -webkit-animation: arrowMove .5s infinite;
              animation: arrowMove .5s infinite; }

.indexFactoryContent1 {
  background-image: url(../../assets/images/page/index/factory1.png); }

.indexFactoryContent2 {
  background-image: url(../../assets/images/page/index/factory2.png); }

.indexFactoryBox {
  width: 80%;
  margin: 0 auto;
  max-width: 550px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #fff;
  line-height: 1.8;
  position: relative;
  z-index: 2; }
  @media screen and (max-width: 450px) {
    .indexFactoryBox {
      width: 90%; } }
  .indexFactoryBox h3 {
    font-size: 2.5rem;
    font-weight: 500;
    text-align: center;
    margin-bottom: 20px;
    text-shadow: 3px 3px 3px #000; }
    @media screen and (max-width: 1280px) {
      .indexFactoryBox h3 {
        font-size: 2rem; } }
    @media screen and (max-width: 450px) {
      .indexFactoryBox h3 {
        font-size: 1.8rem;
        margin-bottom: 15px; } }
  .indexFactoryBox p {
    font-size: 1.125rem;
    margin-bottom: 45px;
    text-shadow: 3px 3px 3px #000; }
    @media screen and (max-width: 768px) {
      .indexFactoryBox p {
        margin-bottom: 25px; } }
    @media screen and (max-width: 450px) {
      .indexFactoryBox p {
        font-size: 1rem;
        margin-bottom: 20px; } }

.indexFactoryContentBtn {
  background-color: #fff;
  color: #4b6682;
  padding: 10px 100px;
  border-radius: 20px;
  font-size: 1.375rem;
  font-weight: bold; }
  @media screen and (max-width: 820px) {
    .indexFactoryContentBtn {
      padding: 10px 60px; } }
  @media screen and (max-width: 768px) {
    .indexFactoryContentBtn {
      font-size: 1.2rem; } }
  @media screen and (max-width: 450px) {
    .indexFactoryContentBtn {
      font-size: 1rem;
      border-radius: 15px;
      padding: 8px 60px; } }
  .indexFactoryContentBtn i {
    margin-left: 10px; }

.newsListContainer {
  position: relative;
  z-index: 2; }

.newsListPageTitle {
  position: relative; }

/* 自訂select箭頭 */
.newsListPageSelectWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 192px;
  position: absolute;
  right: 0;
  bottom: 50%;
  border: 1px solid #7b7a7a; }
  @media screen and (max-width: 767px) {
    .newsListPageSelectWrap {
      bottom: auto;
      top: 50%;
      -webkit-transform: translateY(-26px);
          -ms-transform: translateY(-26px);
              transform: translateY(-26px);
      width: 150px; } }
  @media screen and (max-width: 450px) {
    .newsListPageSelectWrap {
      width: 100px; } }
  .newsListPageSelectWrap::after {
    content: "▼";
    font-size: 1rem;
    position: absolute;
    right: 10px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    pointer-events: none;
    color: #0f0f0f; }
    @media screen and (max-width: 450px) {
      .newsListPageSelectWrap::after {
        font-size: 0.8rem;
        right: 7px; } }

/* 隱藏預設箭頭 */
.newsListPageSelect {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: white;
  border: none;
  padding: 18px 40px 18px 18px;
  font-size: 1.25rem;
  font-weight: bold;
  width: 100%;
  cursor: pointer;
  position: relative;
  color: #333; }
  @media screen and (max-width: 450px) {
    .newsListPageSelect {
      padding: 8px 20px 8px 8px;
      font-size: 1rem; } }
  .newsListPageSelect option {
    color: #333; }

.newsListUl li {
  border-bottom: 1px solid #b4b4b4; }

.newsListEach {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  color: #333;
  padding: 40px 14px; }
  @media screen and (max-width: 767px) {
    .newsListEach {
      padding: 20px 10px; } }
  .newsListEach:hover {
    background-color: #ddd; }
    .newsListEach:hover .newsListEachRight {
      -webkit-animation: arrowMove .5s infinite;
              animation: arrowMove .5s infinite; }

.newsListEachLeft {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: calc(86% - 3rem); }

.newsListEachDate {
  font-size: 1.25rem;
  font-weight: 500; }
  @media screen and (max-width: 450px) {
    .newsListEachDate {
      font-size: 1rem; } }

.newsListEachDot {
  font-size: 2rem;
  color: #e60013;
  margin: 0 30px;
  font-weight: bold; }
  @media screen and (max-width: 450px) {
    .newsListEachDot {
      margin: 0 6px;
      font-size: 1.1rem; } }

.newsListEachTitle {
  font-size: 1.375rem;
  font-weight: bold;
  word-break: break-all;
  -o-text-overflow: ellipsis;
     text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  -webkit-line-clamp: 1; }
  @media screen and (max-width: 450px) {
    .newsListEachTitle {
      font-size: 1.2rem; } }

.newsListEachRight {
  font-size: 2rem;
  width: 2rem; }
  @media screen and (max-width: 450px) {
    .newsListEachRight {
      font-size: 1.5rem;
      width: 1.5rem; } }

.newsArticle h1,
.newsArticle h2,
.newsArticle h3,
.newsArticle h4,
.newsArticle h5,
.newsArticle h6 {
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.68;
  color: #333; }

.newsArticle h1 {
  font-size: 2rem; }
  @media screen and (max-width: 767px) {
    .newsArticle h1 {
      font-size: 1.8rem; } }

.newsArticle h2 {
  font-size: 1.375rem; }
  @media screen and (max-width: 767px) {
    .newsArticle h2 {
      font-size: 1.3rem; } }

.newsArticle h3 {
  font-size: 1.3rem; }
  @media screen and (max-width: 767px) {
    .newsArticle h3 {
      font-size: 1.2rem; } }

.newsArticle h4 {
  font-size: 1.25rem; }
  @media screen and (max-width: 767px) {
    .newsArticle h4 {
      font-size: 1.1rem; } }

.newsArticle h5 {
  font-size: 1.1rem; }
  @media screen and (max-width: 767px) {
    .newsArticle h5 {
      font-size: 1rem; } }

.newsArticle h6 {
  font-size: 1rem; }
  @media screen and (max-width: 767px) {
    .newsArticle h6 {
      font-size: 0.9rem; } }

.newsArticle p {
  font-size: 1.125rem;
  line-height: 2;
  font-weight: 500;
  margin-bottom: 15px;
  color: #333; }
  @media screen and (max-width: 767px) {
    .newsArticle p {
      font-size: 1rem; } }

.newsArticle b, .newsArticle strong {
  font-weight: bold; }

.newsArticle i, .newsArticle em {
  font-style: italic; }

.newsArticle a {
  color: #e60013;
  text-decoration: underline; }

.newsArticle sub {
  vertical-align: sub;
  font-size: smaller; }

.newsArticle sup {
  vertical-align: super;
  font-size: smaller; }

.newsArticle blockquote {
  display: block;
  margin-top: 1em;
  margin-bottom: 1em;
  margin-left: 40px;
  margin-right: 40px; }

.newsArticle iframe {
  max-width: 100%; }

.newsArticle img {
  max-width: 100%; }

.newsArticle ul {
  list-style: disc; }

.newsArticle ol {
  list-style: decimal; }

.newsArticle ul, .newsArticle ol {
  list-style-position: outside;
  padding-left: 1.75rem;
  margin: 20px 0;
  color: #333; }
  @media screen and (max-width: 450px) {
    .newsArticle ul, .newsArticle ol {
      padding-left: 1.5rem; } }

.newsArticle li {
  margin: 15px 0;
  font-size: 1.125rem;
  line-height: 2; }
  @media screen and (max-width: 450px) {
    .newsArticle li {
      font-size: 1rem; } }

.FAQContainer li {
  margin-bottom: 16px; }

.questionRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 1px solid #7b7a7a;
  border-radius: 20px;
  overflow: hidden;
  margin-bottom: 16px;
  background-color: #fff;
  cursor: pointer; }

.questionRowLeft {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch; }

.questionRowTitle {
  font-size: 2.875rem;
  font-weight: bold;
  padding: 12px 38px 24px 24px;
  background: -webkit-gradient(linear, left top, right top, from(#f48a92), color-stop(1%, #f48a92), to(#e60012));
  background: -o-linear-gradient(left, #f48a92 0%, #f48a92 1%, #e60012 100%);
  background: linear-gradient(to right, #f48a92 0%, #f48a92 1%, #e60012 100%);
  clip-path: polygon(0% 0%, 80% 0%, 100% 50%, 80% 100%, 0% 100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: white;
  font-weight: bold;
  margin-right: 20px; }
  @media screen and (max-width: 767px) {
    .questionRowTitle {
      font-size: 2rem;
      margin-right: 15px;
      padding: 12px 28px 24px 24px; } }

.questionRowIcon {
  color: #e60013;
  font-weight: bold;
  font-size: 2rem;
  margin: 0 20px; }
  @media screen and (max-width: 767px) {
    .questionRowIcon {
      font-size: 1.5rem; } }

.questionText {
  font-size: 1.375rem;
  font-weight: bold;
  line-height: 1.5;
  padding: 20px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #333; }
  @media screen and (max-width: 767px) {
    .questionText {
      font-size: 1.2rem;
      padding: 10px 0; } }

.answerRow {
  display: none;
  border: 1px solid #7b7a7a;
  border-radius: 20px;
  overflow: hidden;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  background-color: #fff; }

.answerTitle {
  font-size: 2.875rem;
  font-weight: bold;
  color: #e60013;
  padding: 12px 38px 24px 24px;
  margin-right: 20px; }
  @media screen and (max-width: 767px) {
    .answerTitle {
      font-size: 2rem;
      margin-right: 15px;
      padding: 12px 28px 24px 24px; } }

.answerText {
  font-size: 1.125rem;
  padding: 20px 0;
  line-height: 2;
  padding-right: 45px;
  color: #333; }
  @media screen and (max-width: 767px) {
    .answerText {
      line-height: 1.5;
      font-size: 1rem;
      padding: 10px 10px 10px 0; } }

.noticeContent .noticeHintRed {
  color: #e60013;
  font-weight: bold; }

.noticeLi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  padding: 50px 20px;
  border-bottom: 1px solid #535353;
  color: #333; }
  @media screen and (max-width: 820px) {
    .noticeLi {
      padding: 30px 10px; } }

.noticeLiLeft {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 35.5%;
  border-right: 1px solid #535353;
  padding-right: 40px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  @media screen and (max-width: 820px) {
    .noticeLiLeft {
      padding-right: 20px; } }
  @media screen and (max-width: 767px) {
    .noticeLiLeft {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center; } }

.noticeLiLeftIcon {
  width: 140px;
  margin-right: 40px;
  text-align: center; }
  @media screen and (max-width: 1024px) {
    .noticeLiLeftIcon {
      width: 90px;
      margin-right: 40px; } }
  @media screen and (max-width: 820px) {
    .noticeLiLeftIcon {
      width: 80px;
      margin-right: 20px; } }
  @media screen and (max-width: 767px) {
    .noticeLiLeftIcon {
      width: 70px;
      margin: 0 0 20px; } }

.noticeLiLeftText {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-size: 1.375rem;
  font-weight: bold; }
  @media screen and (max-width: 767px) {
    .noticeLiLeftText {
      font-size: 1.2rem; } }

.noticeLiRight {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 2;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding-left: 40px;
  font-weight: 500;
  font-size: 1.125rem; }
  @media screen and (max-width: 820px) {
    .noticeLiRight {
      padding-left: 20px; } }
  @media screen and (max-width: 767px) {
    .noticeLiRight {
      font-size: 1rem; } }

.reserveDoneBanner {
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 80px 0;
  border-bottom: 1px solid #535353;
  margin-bottom: 60px; }
  @media screen and (max-width: 767px) {
    .reserveDoneBanner {
      padding: 60px 20px; } }
  @media screen and (max-width: 450px) {
    .reserveDoneBanner {
      padding: 50px 20px; } }
  .reserveDoneBanner img {
    width: 60px;
    margin-right: 25px; }
    @media screen and (max-width: 767px) {
      .reserveDoneBanner img {
        width: 50px;
        margin-bottom: 15px; } }
    @media screen and (max-width: 321px) {
      .reserveDoneBanner img {
        width: 40px;
        margin-bottom: 10px; } }
  .reserveDoneBanner p {
    font-weight: bold;
    font-size: 1.375rem;
    color: #e60013;
    line-height: 1.9; }
    @media screen and (max-width: 321px) {
      .reserveDoneBanner p {
        font-size: 1.3rem; } }

.reserveDoneHint {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 85px;
  padding: 0 20px; }
  .reserveDoneHint img {
    width: 80px;
    margin-right: 30px; }
    @media screen and (max-width: 767px) {
      .reserveDoneHint img {
        margin-bottom: 15px;
        width: 50px; } }
    @media screen and (max-width: 321px) {
      .reserveDoneHint img {
        width: 40px; } }
  .reserveDoneHint p {
    font-weight: bold;
    line-height: 1.9;
    font-size: 1.125rem; }
    @media screen and (max-width: 321px) {
      .reserveDoneHint p {
        font-size: 1rem; } }

.courseListContainer {
  max-width: 1705px;
  width: 95%;
  margin: 0 auto; }
  @media screen and (max-width: 450px) {
    .courseListContainer {
      width: 90%; } }

.courseList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .courseList li {
    width: calc(33.3333% - 24px);
    margin-right: 36px;
    margin-bottom: 45px; }
    .courseList li:nth-of-type(3n) {
      margin-right: 0; }
    @media screen and (max-width: 1024px) {
      .courseList li {
        width: calc(33.3333% - 12px);
        margin-right: 18px;
        margin-bottom: 35px; } }
    @media screen and (max-width: 768px) {
      .courseList li {
        width: calc(50% - 10px); }
        .courseList li:nth-of-type(3n) {
          margin-right: 18px; }
        .courseList li:nth-of-type(2n) {
          margin-right: 0; } }
    @media screen and (max-width: 767px) {
      .courseList li {
        width: 100%;
        margin: 0 auto 30px; } }

.courseEachBox {
  display: block;
  border: 1px solid #bfbfbf;
  border-radius: 20px;
  overflow: hidden;
  position: relative; }
  .courseEachBox:hover .toCoursePageArrow {
    -webkit-animation: arrowMove .5s infinite;
            animation: arrowMove .5s infinite; }
  .courseEachBox:hover .courseEachPic img {
    -webkit-transform: scale(1.2);
        -ms-transform: scale(1.2);
            transform: scale(1.2); }

.courseEachPic {
  width: 100%;
  aspect-ratio: 86/57;
  overflow: hidden; }
  .courseEachPic img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s; }

.courseEachBottom {
  padding: 35px 35px 57px;
  position: relative;
  color: #333;
  background-color: #fff; }
  @media screen and (max-width: 1280px) {
    .courseEachBottom {
      padding: 25px 25px 45px; } }
  @media screen and (max-width: 1024px) {
    .courseEachBottom {
      padding: 20px 20px 40px; } }
  .courseEachBottom h2 {
    font-weight: bold;
    font-size: 1.375rem;
    margin-bottom: 20px;
    line-height: 1.3;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    -webkit-line-clamp: 1; }
    @media screen and (max-width: 1024px) {
      .courseEachBottom h2 {
        font-size: 1.2rem; } }
    @media screen and (max-width: 450px) {
      .courseEachBottom h2 {
        margin-bottom: 15px; } }
  .courseEachBottom > p {
    font-size: 1.125rem;
    line-height: 2;
    margin-bottom: 20px;
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2; }
    @media screen and (max-width: 1024px) {
      .courseEachBottom > p {
        font-size: 1rem; } }
    @media screen and (max-width: 450px) {
      .courseEachBottom > p {
        margin-bottom: 15px; } }

.courseEachTag {
  font-size: 1rem;
  line-height: 1.3;
  font-weight: bold;
  display: inline-block;
  padding: 5px;
  border: 1px solid #e60013;
  color: #e60013;
  margin-bottom: 20px; }
  @media screen and (max-width: 1024px) {
    .courseEachTag {
      font-size: 1rem; } }
  @media screen and (max-width: 450px) {
    .courseEachTag {
      margin-bottom: 15px; } }
  @media screen and (max-width: 321px) {
    .courseEachTag {
      font-size: 0.85rem; } }

.courseEachBottomInfos {
  border-top: 1px solid #333;
  padding-top: 30px; }
  @media screen and (max-width: 1280px) {
    .courseEachBottomInfos {
      padding-top: 25px; } }
  @media screen and (max-width: 1024px) {
    .courseEachBottomInfos {
      padding-top: 20px; } }
  @media screen and (max-width: 450px) {
    .courseEachBottomInfos {
      padding-top: 15px; } }

.courseEachObject,
.courseEachTime {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .courseEachObject p,
  .courseEachTime p {
    font-size: 1.125rem;
    line-height: 2;
    width: calc(100% - 45px);
    -o-text-overflow: ellipsis;
       text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
    -webkit-line-clamp: 1; }
    @media screen and (max-width: 1024px) {
      .courseEachObject p,
      .courseEachTime p {
        font-size: 1rem; } }
  .courseEachObject img,
  .courseEachTime img {
    width: 25px;
    margin-right: 20px; }

.courseEachObject {
  margin-bottom: 20px; }
  @media screen and (max-width: 450px) {
    .courseEachObject {
      margin-bottom: 15px; } }

.toCoursePageArrow {
  display: inline-block;
  font-size: 2rem;
  font-weight: bold;
  color: #e60013;
  position: absolute;
  bottom: 15px;
  right: 15px; }
  @media screen and (max-width: 1024px) {
    .toCoursePageArrow {
      font-size: 1.5rem;
      bottom: 10px; } }

.coursePic {
  margin-bottom: 35px;
  text-align: center;
  -webkit-filter: drop-shadow(3px 3px 3px #868686);
          filter: drop-shadow(3px 3px 3px #868686); }

.courseInformation {
  margin-bottom: 80px; }
  @media screen and (max-width: 450px) {
    .courseInformation {
      margin-bottom: 40px; } }

.courseInformationRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 22px; }

.courseDate {
  font-weight: bold;
  color: #e60013;
  border: 1px solid #e60013;
  border-radius: 30px;
  padding: 15px;
  width: 108px;
  aspect-ratio: 1/1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-right: 30px; }
  @media screen and (max-width: 820px) {
    .courseDate {
      width: 100px;
      border-radius: 20px; } }
  @media screen and (max-width: 767px) {
    .courseDate {
      margin-right: 10px;
      width: 90px;
      padding: 8px;
      border-radius: 10px; } }
  @media screen and (max-width: 450px) {
    .courseDate {
      width: 70px; } }
  .courseDate span {
    font-size: 1.125rem; }
    @media screen and (max-width: 767px) {
      .courseDate span {
        font-size: 0.8rem; } }
  .courseDate p {
    font-size: 3.625rem; }
    @media screen and (max-width: 820px) {
      .courseDate p {
        font-size: 2.8rem; } }
    @media screen and (max-width: 767px) {
      .courseDate p {
        font-size: 2rem; } }

.courseInfo {
  font-weight: bold;
  line-height: 1.5; }
  .courseInfo p {
    font-size: 1.125rem;
    color: #e60013; }
    @media screen and (max-width: 768px) {
      .courseInfo p {
        font-size: 1rem; } }
  .courseInfo h3 {
    font-size: 1.875rem;
    color: #333; }
    @media screen and (max-width: 768px) {
      .courseInfo h3 {
        font-size: 1.5rem; } }

.courseContent {
  font-size: 1.25rem;
  line-height: 2;
  padding: 37px 0;
  border-bottom: 1px solid #333;
  border-top: 1px solid #333;
  color: #333;
  font-weight: 500;
  margin-bottom: 24px; }

.courseContentFiles, .courseShare {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  font-size: 1.25rem;
  line-height: 2.9;
  font-weight: bold; }
  @media screen and (max-width: 450px) {
    .courseContentFiles, .courseShare {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      line-height: 1.8; } }

.courseContentFiles {
  margin-bottom: 30px; }

.courseContentFilesTitle {
  margin-right: 5px;
  color: #333; }
  @media screen and (max-width: 450px) {
    .courseContentFilesTitle {
      margin-bottom: 10px; } }

@media screen and (max-width: 450px) {
  .courseFilesList li {
    margin-bottom: 20px; } }

.courseFilesLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #333; }
  @media screen and (max-width: 450px) {
    .courseFilesLink {
      font-size: 1rem; } }
  .courseFilesLink:hover span {
    text-decoration: underline; }
  .courseFilesLink img {
    width: 33px;
    margin-right: 14px; }
  .courseFilesLink span {
    text-underline-offset: 8px; }

.courseShareWays {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center; }
  .courseShareWays li {
    margin-right: 20px; }

.courseShareLink {
  display: inline-block; }
  .courseShareLink img {
    width: 54px; }
    @media screen and (max-width: 450px) {
      .courseShareLink img {
        width: 40px; } }
  .courseShareLink:hover {
    -webkit-filter: brightness(1.5);
            filter: brightness(1.5);
    -webkit-transform: scale(0.9);
        -ms-transform: scale(0.9);
            transform: scale(0.9); }

.courseBtnRow {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between; }
  .courseBtnRow a:hover i {
    -webkit-animation: arrowMove .5s infinite;
            animation: arrowMove .5s infinite; }
  @media screen and (max-width: 820px) {
    .courseBtnRow a {
      width: 47%; } }
  @media screen and (max-width: 767px) {
    .courseBtnRow a {
      font-size: 1rem; } }
  .courseBtnRow a i {
    margin-left: 5px;
    display: inline-block; }

.tremsContainer h1,
.tremsContainer h2,
.tremsContainer h3,
.tremsContainer h4,
.tremsContainer h5,
.tremsContainer h6 {
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.68;
  color: #333; }

.tremsContainer h1 {
  font-size: 2rem; }
  @media screen and (max-width: 767px) {
    .tremsContainer h1 {
      font-size: 1.8rem; } }

.tremsContainer h2 {
  font-size: 1.375rem; }
  @media screen and (max-width: 767px) {
    .tremsContainer h2 {
      font-size: 1.3rem; } }

.tremsContainer h3 {
  font-size: 1.3rem; }
  @media screen and (max-width: 767px) {
    .tremsContainer h3 {
      font-size: 1.2rem; } }

.tremsContainer h4 {
  font-size: 1.25rem; }
  @media screen and (max-width: 767px) {
    .tremsContainer h4 {
      font-size: 1.1rem; } }

.tremsContainer h5 {
  font-size: 1.1rem; }
  @media screen and (max-width: 767px) {
    .tremsContainer h5 {
      font-size: 1rem; } }

.tremsContainer h6 {
  font-size: 1rem; }
  @media screen and (max-width: 767px) {
    .tremsContainer h6 {
      font-size: 0.9rem; } }

.tremsContainer p {
  font-size: 1.125rem;
  line-height: 2;
  font-weight: 500;
  margin-bottom: 15px;
  color: #333; }
  @media screen and (max-width: 767px) {
    .tremsContainer p {
      font-size: 1rem; } }

.tremsContainer b, .tremsContainer strong {
  font-weight: bold; }

.tremsContainer i, .tremsContainer em {
  font-style: italic; }

.tremsContainer a {
  color: #e60013;
  text-decoration: underline; }

.tremsContainer sub {
  vertical-align: sub;
  font-size: smaller; }

.tremsContainer sup {
  vertical-align: super;
  font-size: smaller; }

.tremsContainer blockquote {
  display: block;
  margin-top: 1em;
  margin-bottom: 1em;
  margin-left: 40px;
  margin-right: 40px; }

.tremsContainer iframe {
  max-width: 100%; }

.tremsContainer img {
  max-width: 100%; }

.tremsContainer ul {
  list-style: disc; }

.tremsContainer ol {
  list-style: decimal; }

.tremsContainer ul, .tremsContainer ol {
  list-style-position: outside;
  padding-left: 1.75rem;
  margin: 20px 0;
  color: #333; }
  @media screen and (max-width: 450px) {
    .tremsContainer ul, .tremsContainer ol {
      padding-left: 1.5rem; } }

.tremsContainer li {
  margin: 15px 0;
  font-size: 1.125rem;
  line-height: 2; }
  @media screen and (max-width: 450px) {
    .tremsContainer li {
      font-size: 1rem; } }

.tremsContainer p {
  margin-bottom: 30px; }

.tremsContainer a {
  word-break: break-all; }

.termsTableArea {
  width: 100%;
  overflow-x: auto;
  margin: 30px auto 50px; }
  @media screen and (max-width: 450px) {
    .termsTableArea {
      margin: 30px auto; } }

.termsTable {
  min-width: 800px;
  border-collapse: collapse;
  font-size: 1.125rem;
  letter-spacing: 1px;
  width: 100%;
  color: #333;
  line-height: 1.8; }
  @media screen and (max-width: 767px) {
    .termsTable {
      font-size: 1rem; } }
  .termsTable thead {
    background-color: #dcdcdc;
    font-weight: bold; }
    .termsTable thead th:nth-of-type(2) {
      min-width: 150px; }
  .termsTable tbody tr {
    border-bottom: 1px solid #535353; }
  .termsTable th,
  .termsTable td {
    padding: 8px 10px; }

.mapArea {
  margin-bottom: 45px; }
  @media screen and (max-width: 767px) {
    .mapArea {
      margin-bottom: 30px; } }
  .mapArea iframe {
    width: 100%;
    aspect-ratio: 6/3.94; }

.mapTextInfos {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center; }
  @media screen and (max-width: 767px) {
    .mapTextInfos {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.mapLocation,
.mapTime {
  width: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.125rem;
  font-weight: 500;
  line-height: 2;
  padding: 20px 45px;
  color: #333; }
  @media screen and (max-width: 820px) {
    .mapLocation,
    .mapTime {
      padding: 20px 30px; } }
  @media screen and (max-width: 767px) {
    .mapLocation,
    .mapTime {
      width: 100%;
      padding: 15px;
      line-height: 1.6;
      font-size: 1rem; } }
  .mapLocation img,
  .mapTime img {
    margin-right: 30px; }
    @media screen and (max-width: 820px) {
      .mapLocation img,
      .mapTime img {
        margin-right: 15px; } }

.mapLocation {
  border-right: 1px solid #333; }
  @media screen and (max-width: 767px) {
    .mapLocation {
      border-right: none;
      border-bottom: 1px solid #b4b4b4; } }
  .mapLocation img {
    width: 74px; }
    @media screen and (max-width: 820px) {
      .mapLocation img {
        width: 54px; } }
    @media screen and (max-width: 767px) {
      .mapLocation img {
        width: 40px; } }
    @media screen and (max-width: 321px) {
      .mapLocation img {
        width: 30px; } }

.mapTime img {
  width: 100px; }
  @media screen and (max-width: 820px) {
    .mapTime img {
      width: 80px; } }
  @media screen and (max-width: 767px) {
    .mapTime img {
      width: 40px; } }
  @media screen and (max-width: 321px) {
    .mapTime img {
      width: 30px; } }

.onlineReservationIntroText {
  font-weight: bold;
  text-align: center;
  font-size: 1.25rem;
  line-height: 2;
  margin: 50px 0;
  color: #333; }
  @media screen and (max-width: 1024px) {
    .onlineReservationIntroText {
      margin: 30px 0; } }
  @media screen and (max-width: 767px) {
    .onlineReservationIntroText {
      margin: 20px 0; } }
  @media screen and (max-width: 450px) {
    .onlineReservationIntroText {
      font-size: 1.1rem;
      line-height: 1.8; } }

.reservationForm .mustHint,
.reservationForm .errorHint {
  margin: 10px 0;
  color: #e60013;
  display: none; }

.reservationFormRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 767px) {
    .reservationFormRow {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.reservationInputEach {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: calc(50% - 70px);
  margin-right: 70px;
  margin-bottom: 40px; }
  @media screen and (max-width: 768px) {
    .reservationInputEach {
      width: calc(50% - 30px);
      margin-right: 30px;
      margin-bottom: 30px; } }
  @media screen and (max-width: 767px) {
    .reservationInputEach {
      width: 100%;
      margin-right: 0; } }

.reservationLabel {
  font-weight: bold;
  font-size: 1.25rem;
  margin-bottom: 14px;
  color: #333; }

.reservationInputBox {
  width: 100%; }

.reservationInputBoxSelect {
  position: relative;
  display: inline-block;
  /* 自訂箭頭 */
  /* 隱藏預設箭頭 */ }
  .reservationInputBoxSelect:after {
    content: "▼";
    font-size: 16px;
    position: absolute;
    right: 10px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    pointer-events: none;
    color: #333; }
  .reservationInputBoxSelect select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-color: white;
    border: 1px solid #7b7a7a;
    padding: 20px 40px 20px 20px;
    font-size: 1.25rem;
    width: 100%;
    cursor: pointer;
    position: relative;
    font-weight: 500;
    color: #333; }
    @media screen and (max-width: 450px) {
      .reservationInputBoxSelect select {
        font-size: 1rem;
        padding: 10px 20px 10px 10px; } }

.reservationDateRow input {
  padding: 18px 20px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  border: 1px solid #7b7a7a;
  width: 100%;
  font-weight: 500;
  font-size: 1.25rem;
  color: #333; }
  @media screen and (max-width: 450px) {
    .reservationDateRow input {
      font-size: 1rem;
      padding: 8px 20px 8px 10px; } }

.reservationDateRow span {
  margin-left: 15px; }

.reservationDateInputBox {
  position: relative; }
  .reservationDateInputBox .datePickerIcon {
    position: absolute;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    font-size: 1.25rem;
    color: #5f6368;
    cursor: pointer; }

.reservationInputBoxText input[type="text"],
.reservationInputBoxText input[type="email"] {
  padding: 18px 20px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  outline: none;
  border: 1px solid #7b7a7a;
  width: 100%;
  font-weight: 500;
  font-size: 1.25rem;
  color: #333; }
  @media screen and (max-width: 450px) {
    .reservationInputBoxText input[type="text"],
    .reservationInputBoxText input[type="email"] {
      font-size: 1rem;
      padding: 10px 20px 9px 10px; } }

.reservationInputBoxGender {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.reservationInputEachGenderRow {
  width: 100%; }

.reservationInputEachGender {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.reservationInputBoxGender input[type="text"] {
  max-width: 433px; }
  @media screen and (max-width: 820px) {
    .reservationInputBoxGender input[type="text"] {
      max-width: 312px; } }
  @media screen and (max-width: 450px) {
    .reservationInputBoxGender input[type="text"] {
      max-width: 50%; } }
  @media screen and (max-width: 321px) {
    .reservationInputBoxGender input[type="text"] {
      max-width: 46%; } }

.genderRow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 30px; }
  @media screen and (max-width: 450px) {
    .genderRow {
      margin-left: 15px; } }

.genderRowRadio {
  margin: 0 20px 0 0; }
  @media screen and (max-width: 450px) {
    .genderRowRadio {
      margin: 0 10px 0 0; } }
  .genderRowRadio input[type="radio"] {
    position: absolute;
    opacity: 0; }
    .genderRowRadio input[type="radio"] + .radio-label:before {
      content: "";
      background: #ededed;
      border-radius: 100%;
      border: 1px solid black;
      display: inline-block;
      width: 1.4em;
      height: 1.4em;
      position: relative;
      top: -0.2em;
      margin-right: 10px;
      vertical-align: top;
      cursor: pointer;
      text-align: center;
      -webkit-transition: all 250ms ease;
      -o-transition: all 250ms ease;
      transition: all 250ms ease; }
      @media screen and (max-width: 450px) {
        .genderRowRadio input[type="radio"] + .radio-label:before {
          margin-right: 8px;
          width: 1.1em;
          height: 1.1em;
          top: -0.03em; } }
    .genderRowRadio input[type="radio"]:checked + .radio-label:before {
      background-color: #333;
      -webkit-box-shadow: inset 0 0 0 4px #ededed;
              box-shadow: inset 0 0 0 4px #ededed; }
    .genderRowRadio input[type="radio"]:focus + .radio-label:before {
      outline: none;
      border-color: #333; }
  .genderRowRadio label {
    cursor: pointer; }

.reservationSSpan {
  font-size: 0.875rem; }

.verificationCodeBox {
  border: 1px solid #7b7a7a;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
  height: 67px; }
  @media screen and (max-width: 450px) {
    .verificationCodeBox {
      height: 45px; } }
  .verificationCodeBox > input {
    border: none;
    width: 50%;
    height: 100%;
    padding: 12px 30px 12px 16px;
    font-size: 1.125rem; }
    @media screen and (max-width: 450px) {
      .verificationCodeBox > input {
        font-size: 1rem;
        padding: 10px 20px 9px 10px; } }
    .verificationCodeBox > input::-webkit-input-placeholder {
      color: #7b7a7a;
      font-size: 0.875rem; }
    .verificationCodeBox > input::-moz-placeholder {
      color: #7b7a7a;
      font-size: 0.875rem; }
    .verificationCodeBox > input:-ms-input-placeholder {
      color: #7b7a7a;
      font-size: 0.875rem; }
    .verificationCodeBox > input::-ms-input-placeholder {
      color: #7b7a7a;
      font-size: 0.875rem; }
    .verificationCodeBox > input::placeholder {
      color: #7b7a7a;
      font-size: 0.875rem; }
    .verificationCodeBox > input:focus {
      outline: none; }

.switchVerificationCode {
  width: 48px;
  height: 40px;
  -webkit-backdrop-filter: blur(4px);
          backdrop-filter: blur(4px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  z-index: 2;
  cursor: pointer;
  left: calc(50% + 0px);
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  border-radius: 16px;
  -webkit-box-shadow: 0px 0px 8px #0000003a;
          box-shadow: 0px 0px 8px #0000003a;
  background-color: #f2f3f483; }
  .switchVerificationCode:hover {
    background-color: #f2f3f4; }

.validateCodeImg {
  background-image: url(../../assets/images/component/VerificationCodeBg.png);
  width: 50%; }

.privacyRow {
  margin-bottom: 50px; }
  .privacyRow label {
    font-size: 1.25rem;
    font-weight: bold;
    color: #504f4f; }
    @media screen and (max-width: 450px) {
      .privacyRow label {
        font-size: 1rem; } }
  .privacyRow a {
    text-decoration: underline;
    text-underline-offset: 8px; }

.sendReservationFormBtn {
  cursor: pointer;
  padding: 20px 15px;
  display: inline-block;
  font-family: "Noto Sans TC", "Sono", sans-serif; }
  @media screen and (max-width: 767px) {
    .sendReservationFormBtn {
      font-size: 1rem;
      padding: 15px 10px;
      border-radius: 15px;
      width: 60%; } }

.ui-datepicker-prev, .ui-datepicker-next {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center; }
  .ui-datepicker-prev:hover, .ui-datepicker-next:hover {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center; }

.ui-datepicker-prev {
  background-image: url(../../assets/images/component/chevron-left-solid.svg); }
  .ui-datepicker-prev:hover {
    background-image: url(../../assets/images/component/chevron-left-solid.svg); }

.ui-datepicker-next {
  background-image: url(../../assets/images/component/chevron-right-solid.svg); }
  .ui-datepicker-next:hover {
    background-image: url(../../assets/images/component/chevron-right-solid.svg); }

.fieldIntroductionArticle h1,
.fieldIntroductionArticle h2,
.fieldIntroductionArticle h3,
.fieldIntroductionArticle h4,
.fieldIntroductionArticle h5,
.fieldIntroductionArticle h6 {
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.68;
  color: #333; }

.fieldIntroductionArticle h1 {
  font-size: 2rem; }
  @media screen and (max-width: 767px) {
    .fieldIntroductionArticle h1 {
      font-size: 1.8rem; } }

.fieldIntroductionArticle h2 {
  font-size: 1.375rem; }
  @media screen and (max-width: 767px) {
    .fieldIntroductionArticle h2 {
      font-size: 1.3rem; } }

.fieldIntroductionArticle h3 {
  font-size: 1.3rem; }
  @media screen and (max-width: 767px) {
    .fieldIntroductionArticle h3 {
      font-size: 1.2rem; } }

.fieldIntroductionArticle h4 {
  font-size: 1.25rem; }
  @media screen and (max-width: 767px) {
    .fieldIntroductionArticle h4 {
      font-size: 1.1rem; } }

.fieldIntroductionArticle h5 {
  font-size: 1.1rem; }
  @media screen and (max-width: 767px) {
    .fieldIntroductionArticle h5 {
      font-size: 1rem; } }

.fieldIntroductionArticle h6 {
  font-size: 1rem; }
  @media screen and (max-width: 767px) {
    .fieldIntroductionArticle h6 {
      font-size: 0.9rem; } }

.fieldIntroductionArticle p {
  font-size: 1.125rem;
  line-height: 2;
  font-weight: 500;
  margin-bottom: 15px;
  color: #333; }
  @media screen and (max-width: 767px) {
    .fieldIntroductionArticle p {
      font-size: 1rem; } }

.fieldIntroductionArticle b, .fieldIntroductionArticle strong {
  font-weight: bold; }

.fieldIntroductionArticle i, .fieldIntroductionArticle em {
  font-style: italic; }

.fieldIntroductionArticle a {
  color: #e60013;
  text-decoration: underline; }

.fieldIntroductionArticle sub {
  vertical-align: sub;
  font-size: smaller; }

.fieldIntroductionArticle sup {
  vertical-align: super;
  font-size: smaller; }

.fieldIntroductionArticle iframe {
  max-width: 100%; }

.fieldIntroductionArticle img {
  max-width: 100%; }

.fieldIntroductionArticle p {
  margin-bottom: 30px; }

.fieldTaichungPicArea {
  position: relative;
  margin-bottom: 30px; }

.fieldTaichungPic img {
  width: 100%; }

.fieldTaichungPicAreaDot {
  position: absolute;
  width: 40px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  border: 1px solid #fff;
  background-color: #333;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  cursor: pointer;
  line-height: 1;
  font-size: 1.375rem;
  font-weight: bold; }
  .fieldTaichungPicAreaDot:hover {
    background-color: #e60013; }
  @media screen and (max-width: 1024px) {
    .fieldTaichungPicAreaDot {
      width: 38px;
      font-size: 1.2rem; } }
  @media screen and (max-width: 767px) {
    .fieldTaichungPicAreaDot {
      width: 30px;
      font-size: 1rem; } }
  @media screen and (max-width: 450px) {
    .fieldTaichungPicAreaDot {
      width: 25px;
      font-size: 0.9rem; } }

.fieldTaichungPicAreaDot.fieldTaichungPicAreaDotActive {
  background-color: #e60013;
  width: 50px;
  z-index: 2;
  font-size: 1.5625rem; }
  @media screen and (max-width: 1024px) {
    .fieldTaichungPicAreaDot.fieldTaichungPicAreaDotActive {
      width: 40px; } }
  @media screen and (max-width: 767px) {
    .fieldTaichungPicAreaDot.fieldTaichungPicAreaDotActive {
      width: 35px; } }
  @media screen and (max-width: 450px) {
    .fieldTaichungPicAreaDot.fieldTaichungPicAreaDotActive {
      width: 30px; } }

.fieldTaichungPicAreaDot1 {
  bottom: 36%;
  left: 39%; }
  @media screen and (max-width: 450px) {
    .fieldTaichungPicAreaDot1 {
      bottom: 27%;
      left: 36%; } }

.fieldTaichungPicAreaDot2 {
  bottom: 27%;
  left: 22.5%; }

.fieldTaichungPicAreaDot3 {
  bottom: 36%;
  left: 10%; }
  @media screen and (max-width: 450px) {
    .fieldTaichungPicAreaDot3 {
      bottom: 27%; } }

.fieldTaichungPicAreaDot4 {
  top: 45%;
  left: 9%; }

.fieldTaichungPicAreaDot5 {
  top: 36.5%;
  left: 2.5%; }

.fieldTaichungPicAreaDot6 {
  top: 29.5%;
  left: 9%; }

.fieldTaichungPicAreaDot7 {
  top: 16%;
  left: 8%; }

.fieldTaichungPicAreaDot8 {
  top: 10%;
  left: 13%; }

.fieldTaichungPicAreaDot9 {
  top: 2%;
  left: 17%; }

.fieldTaichungPicAreaDot10 {
  top: 13%;
  left: 48%; }

.fieldTaichungPicAreaDot11 {
  top: 43%;
  left: 42%; }

.fieldTaichungPicAreaDot12 {
  top: 24%;
  right: 25%; }

.fieldTaichungPicAreaDot13 {
  bottom: 10%;
  right: 39%; }

.fieldIntroductionEachPlace {
  padding-bottom: 30px;
  border-bottom: 1px solid #333;
  margin-bottom: 40px; }

.fieldTaichungEachPlaceList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
  .fieldTaichungEachPlaceList li {
    width: calc(25% - 20px);
    margin-right: 20px;
    margin-bottom: 10px;
    counter-increment: step;
    line-height: 1.83;
    font-size: 1.125rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    color: #333; }
    .fieldTaichungEachPlaceList li:nth-of-type(4n) {
      margin-right: 0; }
    @media screen and (max-width: 820px) {
      .fieldTaichungEachPlaceList li {
        width: calc(33.333% - 14px); }
        .fieldTaichungEachPlaceList li:nth-of-type(4n) {
          margin-right: 20px; }
        .fieldTaichungEachPlaceList li:nth-of-type(3n) {
          margin-right: 0px; } }
    @media screen and (max-width: 767px) {
      .fieldTaichungEachPlaceList li {
        width: calc(50% - 10px);
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start; }
        .fieldTaichungEachPlaceList li:nth-of-type(3n) {
          margin-right: 20px; }
        .fieldTaichungEachPlaceList li:nth-of-type(2n) {
          margin-right: 0px; } }
    .fieldTaichungEachPlaceList li:before {
      content: counter(step);
      aspect-ratio: 1/1;
      border-radius: 50%;
      border: 2px solid #fff;
      background-color: #e60013;
      color: #fff;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      cursor: pointer;
      line-height: 1;
      width: 40px;
      font-size: 1.125rem;
      font-weight: bold;
      margin-right: 5px;
      -ms-flex-negative: 0;
          flex-shrink: 0; }
      @media screen and (max-width: 767px) {
        .fieldTaichungEachPlaceList li:before {
          width: 35px;
          font-size: 1rem; } }

.fieldTaichungEachPlaceDot {
  cursor: pointer;
  font-weight: bold;
  font-size: 1.125rem; }
  .fieldTaichungEachPlaceDot:hover {
    color: #e60013; }

.fieldTaichungEachPlaceDot.fieldTaichungEachPlaceDotActive {
  color: #e60013; }

.fieldTXGEachSwiperSlide {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }
  @media screen and (max-width: 450px) {
    .fieldTXGEachSwiperSlide {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column; } }

.fieldTXGEachSwiperSlidePic {
  width: 44%;
  margin-right: 28px; }
  @media screen and (max-width: 767px) {
    .fieldTXGEachSwiperSlidePic {
      width: 100%;
      margin: 0 0 20px; } }

.fieldTXGEachSwiperSlideInfos {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1; }
  .fieldTXGEachSwiperSlideInfos .fieldTXGEachSwiperSlideInfosTitle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 30px; }
    @media screen and (max-width: 820px) {
      .fieldTXGEachSwiperSlideInfos .fieldTXGEachSwiperSlideInfosTitle {
        margin-bottom: 20px; } }
  .fieldTXGEachSwiperSlideInfos .fieldTXGAreaName {
    font-size: 1.375rem;
    line-height: 1.32;
    font-weight: bold;
    margin-bottom: 0;
    color: #333; }
    @media screen and (max-width: 767px) {
      .fieldTXGEachSwiperSlideInfos .fieldTXGAreaName {
        font-size: 1.3rem; } }
  .fieldTXGEachSwiperSlideInfos .fieldTXGNum {
    width: 64px;
    aspect-ratio: 1/1;
    background-color: #e60013;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    color: #fff;
    font-size: 1.875rem;
    font-weight: bold;
    border-radius: 50%;
    margin-right: 20px; }
    @media screen and (max-width: 1024px) {
      .fieldTXGEachSwiperSlideInfos .fieldTXGNum {
        width: 60px;
        margin-right: 15px; } }
    @media screen and (max-width: 767px) {
      .fieldTXGEachSwiperSlideInfos .fieldTXGNum {
        width: 48px;
        font-size: 1.5rem; } }
  .fieldTXGEachSwiperSlideInfos .fieldTXGEachSwiperSlideInfosText {
    margin-bottom: 0;
    color: #333; }
    @media screen and (max-width: 767px) {
      .fieldTXGEachSwiperSlideInfos .fieldTXGEachSwiperSlideInfosText {
        font-size: 1.2rem; } }

.visitingNoticeArticle h1,
.visitingNoticeArticle h2,
.visitingNoticeArticle h3,
.visitingNoticeArticle h4,
.visitingNoticeArticle h5,
.visitingNoticeArticle h6 {
  font-weight: bold;
  margin-bottom: 20px;
  line-height: 1.68;
  color: #333; }

.visitingNoticeArticle h1 {
  font-size: 2rem; }
  @media screen and (max-width: 767px) {
    .visitingNoticeArticle h1 {
      font-size: 1.8rem; } }

.visitingNoticeArticle h2 {
  font-size: 1.375rem; }
  @media screen and (max-width: 767px) {
    .visitingNoticeArticle h2 {
      font-size: 1.3rem; } }

.visitingNoticeArticle h3 {
  font-size: 1.3rem; }
  @media screen and (max-width: 767px) {
    .visitingNoticeArticle h3 {
      font-size: 1.2rem; } }

.visitingNoticeArticle h4 {
  font-size: 1.25rem; }
  @media screen and (max-width: 767px) {
    .visitingNoticeArticle h4 {
      font-size: 1.1rem; } }

.visitingNoticeArticle h5 {
  font-size: 1.1rem; }
  @media screen and (max-width: 767px) {
    .visitingNoticeArticle h5 {
      font-size: 1rem; } }

.visitingNoticeArticle h6 {
  font-size: 1rem; }
  @media screen and (max-width: 767px) {
    .visitingNoticeArticle h6 {
      font-size: 0.9rem; } }

.visitingNoticeArticle p {
  font-size: 1.125rem;
  line-height: 2;
  font-weight: 500;
  margin-bottom: 15px;
  color: #333; }
  @media screen and (max-width: 767px) {
    .visitingNoticeArticle p {
      font-size: 1rem; } }

.visitingNoticeArticle b, .visitingNoticeArticle strong {
  font-weight: bold; }

.visitingNoticeArticle i, .visitingNoticeArticle em {
  font-style: italic; }

.visitingNoticeArticle a {
  color: #e60013;
  text-decoration: underline; }

.visitingNoticeArticle sub {
  vertical-align: sub;
  font-size: smaller; }

.visitingNoticeArticle sup {
  vertical-align: super;
  font-size: smaller; }

.visitingNoticeArticle ul {
  list-style: disc; }

.visitingNoticeArticle ol {
  list-style: decimal; }

.visitingNoticeArticle ul, .visitingNoticeArticle ol {
  list-style-position: outside;
  padding-left: 1.75rem;
  margin: 20px 0;
  color: #333; }
  @media screen and (max-width: 450px) {
    .visitingNoticeArticle ul, .visitingNoticeArticle ol {
      padding-left: 1.5rem; } }

.visitingNoticeArticle li {
  margin: 15px 0;
  font-size: 1.125rem;
  line-height: 2; }
  @media screen and (max-width: 450px) {
    .visitingNoticeArticle li {
      font-size: 1rem; } }

.visitingNoticeArticle iframe {
  max-width: 100%; }

.visitingNoticeArticle img {
  max-width: 100%; }

.visitingNoticeArticle div {
  font-size: 1.125rem;
  line-height: 2;
  margin: 0 auto 2rem;
  color: #333;
  font-weight: 500; }
  @media screen and (max-width: 767px) {
    .visitingNoticeArticle div {
      margin: 0 auto 20px;
      font-size: 1rem; } }

.toOnlineReservationTainanArticle {
  padding: 50px 0;
  line-height: 2;
  font-size: 1.125rem;
  font-weight: 500;
  border-bottom: 1px solid #333;
  color: #333; }
  @media screen and (max-width: 767px) {
    .toOnlineReservationTainanArticle {
      padding: 30px 0; } }
  @media screen and (max-width: 450px) {
    .toOnlineReservationTainanArticle {
      font-size: 1rem; } }
  .toOnlineReservationTainanArticle li {
    margin: 20px 0; }

.toOnlineReservationTainanRuleCheck {
  margin: 60px 0;
  text-align: center; }
  @media screen and (max-width: 767px) {
    .toOnlineReservationTainanRuleCheck {
      margin: 30px 0; } }
  .toOnlineReservationTainanRuleCheck label {
    font-weight: bold;
    cursor: pointer;
    font-size: 1.125rem;
    line-height: 1.5;
    color: #333; }
    @media screen and (max-width: 450px) {
      .toOnlineReservationTainanRuleCheck label {
        font-size: 1rem; } }
    .toOnlineReservationTainanRuleCheck label span {
      color: #e60013; }

.fieldTainanPics {
  margin: 30px 0 50px; }

/*# sourceMappingURL=all.css.map */

.ui-widget.ui-widget-content {
    background: #f2f2f2;
    padding:10px;
}
.ui-widget-header {
    border: none;
    background: none;
}
.ui-datepicker th {
    background: white;
    color: #666666;
    border-right: 1px solid #f2f2f2;
    border-bottom: 1px solid #f2f2f2;
    font-weight: normal;
    line-height: 32px;
    padding: .4em .2em;
    width: 34px;
}
.ui-datepicker td {
    padding:0px;
}
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
    border: 1px solid #f2f2f2;
    background: #808080;
    color: white;
    text-align: center;
    line-height: 30px;
    font-size: 15px;
}
