*,
::after,
::before {
	box-sizing: border-box;
	/*不顯示手指點擊的效果*/
	-webkit-tap-highlight-color: transparent;
}

:focus {
	outline: none;
}

/* 寬度不被 Scrollbar 影響 */
@viewport {
	width: device-width;
}

@-o-viewport {
	width: device-width;
}

@-ms-viewport {
	width: device-width;
}

html {
	font-size: initial;
	scroll-behavior: smooth;
}

body {
	position: relative;
	width: 100%;
	min-width: 320px;
	margin: 0;
}

main {
	position: relative;
}

article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
	display: block
}

hr {
	box-sizing: content-box;
	width: 100%;
	height: 1px;
	border: 0;
	margin-top: 1rem;
	margin-bottom: 1rem;
	background-color: rgba(204, 204, 204, 1);
}

hr.vertical {
	width: 1px;
	height: 100%;
}

abbr[data-original-title],
abbr[title] {
	text-decoration: underline;
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
	cursor: help;
	border-bottom: 0;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none
}

address {
	margin-bottom: 1rem;
	font-style: normal;
	line-height: inherit;
}

dd {
	margin-bottom: 0.5rem;
	margin-left: 0
}

blockquote {
	margin: 0 0 1rem
}

sub,
sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline
}

sub {
	bottom: -0.25em
}

sup {
	top: -0.5em
}

pre {
	margin-top: 0;
	margin-bottom: 1rem;
	overflow: auto
}

figure {
	margin: 0 0 1rem
}

caption {
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	color: #6c757d;
	text-align: left;
	caption-side: bottom
}

label {
	display: inline-block;
	margin-bottom: 0.5rem
}

button {
	border-radius: 0
}

button,
input,
optgroup,
select,
textarea {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: initial;
}

button,
input {
	overflow: visible
}

button,
select {
	text-transform: none
}

select {
	color: initial;
	word-wrap: normal
}

/* for ie hide select dropdown arrow */
select::-ms-expand {
	display: none;
}

[type=button],
[type=reset],
[type=submit],
button {
	-moz-appearance: button;
	     appearance: button;
	-webkit-appearance: button;
}

[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled),
button:not(:disabled) {
	cursor: pointer
}

[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
	padding: 0;
	border-style: none
}

input[type=date],
input[type=datetime-local],
input[type=month],
input[type=time] {
	-moz-appearance: listbox;
	     appearance: listbox;
	-webkit-appearance: listbox;
}

/*input 預設文字*/
/* Firefox */

::-moz-placeholder {
	color: rgba(0, 0, 0, .4);
	opacity: 1;
}

:-ms-input-placeholder {
	color: rgba(0, 0, 0, .4);
	opacity: 1;
}

::-webkit-input-placeholder {
	color: rgba(0, 0, 0, .4);
	opacity: 1;
}

::-ms-input-placeholder {
	color: rgba(0, 0, 0, .4);
	opacity: 1;
}

::placeholder {
	color: rgba(0, 0, 0, .4);
	opacity: 1;
}

/* Internet Explorer 10-11 */
:-ms-input-placeholder {
	color: rgba(0, 0, 0, .4);
}

/* Microsoft Edge */
::-ms-input-placeholder {
	color: rgba(0, 0, 0, .4);
}

fieldset {
	min-width: 0;
	padding: 0;
	margin: 0;
	border: 0
}

legend {
	display: block;
	width: 100%;
	max-width: 100%;
	padding: 0;
	margin-bottom: 0.5rem;
	font-size: 1.5rem;
	line-height: inherit;
	color: inherit;
	white-space: normal
}

progress {
	vertical-align: baseline
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
	height: auto
}

[type=search] {
	outline-offset: -2px;
	-moz-appearance: none;
	     appearance: none;
	-webkit-appearance: none;
}

[type=search]::-webkit-search-decoration {
	-webkit-appearance: none
}

::-webkit-file-upload-button {
	font: inherit;
	-webkit-appearance: button
}

output {
	display: inline-block
}

summary {
	display: list-item;
	cursor: pointer
}

template {
	display: none
}

/* ------------------------------
	**no-scroll **no-touch
--------------------------- uu */
/*html.no-scroll,*/
/*.no-scroll body,*/
.no-scroll {
	overflow: hidden;
}

/*html.no-touch,*/
.no-touch {
	touch-action: none;
}

/* ------------------------------
	**
--------------------------- uu */
/* 文字框選 */
::-moz-selection {
	color: #000000;
	background-color: hsl(201deg 85% 55% / 1);
}

::selection {
	color: #000000;
	background-color: hsl(201deg 85% 55% / 1);
}

::-moz-selection {
	color: #000000;
	background-color: hsl(201deg 85% 55% / 1);
}

/* ------------------------------
	**width
--------------------------- uu */
.w-auto {
	width: auto !important
}

.w-25 {
	width: 25% !important
}

.w-50 {
	width: 50% !important
}

.w-75 {
	width: 75% !important
}

.w-100 {
	width: 100% !important
}

.w-1rem {
	width: 1rem !important
}

.w-1d5rem {
	width: 1.5rem !important
}

.w-2rem {
	width: 2rem !important
}

.w-3rem {
	width: 3rem !important
}

.w-4rem {
	width: 4rem !important
}

.w-5rem {
	width: 5rem !important
}

.w-6rem {
	width: 6rem !important
}

.w-7rem {
	width: 7rem !important
}

.w-8rem {
	width: 8rem !important
}

.max-w-unset {
	max-width: unset !important
}

.max-w-25 {
	max-width: 25% !important
}

.max-w-50 {
	max-width: 50% !important
}

.max-w-75 {
	max-width: 75% !important
}

.max-w-100 {
	max-width: 100% !important
}

.vw-100 {
	width: 100vw !important
}

.min-vw-100 {
	min-width: 100vw !important
}

@media (max-width: 1440px) {
	.xl-w-auto {
		width: auto !important
	}

	.xl-w-25 {
		width: 25% !important
	}

	.xl-w-50 {
		width: 50% !important
	}

	.xl-w-75 {
		width: 75% !important
	}

	.xl-w-100 {
		width: 100% !important
	}

	.xl-w-1rem {
		width: 1rem !important
	}

	.xl-w-2rem {
		width: 2rem !important
	}

	.xl-w-3rem {
		width: 3rem !important
	}

	.xl-w-4rem {
		width: 4rem !important
	}

	.xl-w-5rem {
		width: 5rem !important
	}

	.xl-w-6rem {
		width: 6rem !important
	}

	.xl-w-7rem {
		width: 7rem !important
	}

	.xl-w-8rem {
		width: 8rem !important
	}

	.xl-max-w-unset {
		max-width: unset !important
	}

	.xl-max-w-25 {
		max-width: 25% !important
	}

	.xl-max-w-50 {
		max-width: 50% !important
	}

	.xl-max-w-75 {
		max-width: 75% !important
	}

	.xl-max-w-100 {
		max-width: 100% !important
	}

	.xl-vw-100 {
		width: 100vw !important
	}

	.xl-min-vw-100 {
		min-width: 100vw !important
	}
}

@media (max-width: 1280px) {
	.lg-w-auto {
		width: auto !important
	}

	.lg-w-25 {
		width: 25% !important
	}

	.lg-w-50 {
		width: 50% !important
	}

	.lg-w-75 {
		width: 75% !important
	}

	.lg-w-100 {
		width: 100% !important
	}

	.lg-w-1rem {
		width: 1rem !important
	}

	.lg-w-2rem {
		width: 2rem !important
	}

	.lg-w-3rem {
		width: 3rem !important
	}

	.lg-w-4rem {
		width: 4rem !important
	}

	.lg-w-5rem {
		width: 5rem !important
	}

	.lg-w-6rem {
		width: 6rem !important
	}

	.lg-w-7rem {
		width: 7rem !important
	}

	.lg-w-8rem {
		width: 8rem !important
	}

	.lg-max-w-unset {
		max-width: unset !important
	}

	.lg-max-w-25 {
		max-width: 25% !important
	}

	.lg-max-w-50 {
		max-width: 50% !important
	}

	.lg-max-w-75 {
		max-width: 75% !important
	}

	.lg-max-w-100 {
		max-width: 100% !important
	}

	.lg-vw-100 {
		width: 100vw !important
	}

	.lg-min-vw-100 {
		min-width: 100vw !important
	}
}

@media (max-width: 1024px) {
	.md-w-auto {
		width: auto !important
	}

	.md-w-25 {
		width: 25% !important
	}

	.md-w-50 {
		width: 50% !important
	}

	.md-w-75 {
		width: 75% !important
	}

	.md-w-100 {
		width: 100% !important
	}

	.md-w-1rem {
		width: 1rem !important
	}

	.md-w-2rem {
		width: 2rem !important
	}

	.md-w-3rem {
		width: 3rem !important
	}

	.md-w-4rem {
		width: 4rem !important
	}

	.md-w-5rem {
		width: 5rem !important
	}

	.md-w-6rem {
		width: 6rem !important
	}

	.md-w-7rem {
		width: 7rem !important
	}

	.md-w-8rem {
		width: 8rem !important
	}

	.md-max-w-unset {
		max-width: unset !important
	}

	.md-max-w-25 {
		max-width: 25% !important
	}

	.md-max-w-50 {
		max-width: 50% !important
	}

	.md-max-w-75 {
		max-width: 75% !important
	}

	.md-max-w-100 {
		max-width: 100% !important
	}

	.md-vw-100 {
		width: 100vw !important
	}

	.md-min-vw-100 {
		min-width: 100vw !important
	}
}

@media (max-width: 768px) {
	.sm-w-auto {
		width: auto !important
	}

	.sm-w-25 {
		width: 25% !important
	}

	.sm-w-50 {
		width: 50% !important
	}

	.sm-w-75 {
		width: 75% !important
	}

	.sm-w-100 {
		width: 100% !important
	}

	.sm-w-1rem {
		width: 1rem !important
	}

	.sm-w-2rem {
		width: 2rem !important
	}

	.sm-w-3rem {
		width: 3rem !important
	}

	.sm-w-4rem {
		width: 4rem !important
	}

	.sm-w-5rem {
		width: 5rem !important
	}

	.sm-w-6rem {
		width: 6rem !important
	}

	.sm-w-7rem {
		width: 7rem !important
	}

	.sm-w-8rem {
		width: 8rem !important
	}

	.sm-max-w-unset {
		max-width: unset !important
	}

	.sm-max-w-25 {
		max-width: 25% !important
	}

	.sm-max-w-50 {
		max-width: 50% !important
	}

	.sm-max-w-75 {
		max-width: 75% !important
	}

	.sm-max-w-100 {
		max-width: 100% !important
	}

	.sm-vw-100 {
		width: 100vw !important
	}

	.sm-min-vw-100 {
		min-width: 100vw !important
	}
}

@media (max-width: 576px) {
	.xs-w-auto {
		width: auto !important
	}

	.xs-w-25 {
		width: 25% !important
	}

	.xs-w-50 {
		width: 50% !important
	}

	.xs-w-75 {
		width: 75% !important
	}

	.xs-w-100 {
		width: 100% !important
	}

	.xs-w-1rem {
		width: 1rem !important
	}

	.xs-w-2rem {
		width: 2rem !important
	}

	.xs-w-3rem {
		width: 3rem !important
	}

	.xs-w-4rem {
		width: 4rem !important
	}

	.xs-w-5rem {
		width: 5rem !important
	}

	.xs-w-6rem {
		width: 6rem !important
	}

	.xs-w-7rem {
		width: 7rem !important
	}

	.xs-w-8rem {
		width: 8rem !important
	}

	.xs-max-w-unset {
		max-width: unset !important
	}

	.xs-max-w-25 {
		max-width: 25% !important
	}

	.xs-max-w-50 {
		max-width: 50% !important
	}

	.xs-max-w-75 {
		max-width: 75% !important
	}

	.xs-max-w-100 {
		max-width: 100% !important
	}

	.xs-vw-100 {
		width: 100vw !important
	}

	.xs-min-vw-100 {
		min-width: 100vw !important
	}
}

/* ------------------------------
	**height
--------------------------- uu */
.h-auto {
	height: auto !important
}

.min-h-auto {
	min-height: auto !important
}

.max-h-auto {
	max-height: auto !important
}

.h-25 {
	height: 25% !important
}

.min-h-25 {
	min-height: 25% !important
}

.max-h-25 {
	max-height: 25% !important
}

.h-50 {
	height: 50% !important
}

.min-h-50 {
	min-height: 50% !important
}

.max-h-50 {
	max-height: 50% !important
}

.h-75 {
	height: 75% !important
}

.min-h-75 {
	min-height: 75% !important
}

.max-h-75 {
	max-height: 75% !important
}

.h-100 {
	height: 100% !important
}

.min-h-100 {
	min-height: 100% !important
}

.max-h-100 {
	max-height: 100% !important
}

.h-25vh {
	height: 25vh !important
}

.min-h-25vh {
	min-height: 25vh !important
}

.max-h-25vh {
	max-height: 25vh !important
}

.h-30vh {
	height: 30vh !important
}

.min-h-30vh {
	min-height: 30vh !important
}

.max-h-30vh {
	max-height: 30vh !important
}

.h-50vh {
	height: 50vh !important
}

.min-h-50vh {
	min-height: 50vh !important
}

.max-h-50vh {
	max-height: 50vh !important
}

.h-75vh {
	height: 75vh !important
}

.min-h-75vh {
	min-height: 75vh !important
}

.max-h-75vh {
	max-height: 75vh !important
}

.h-100vh {
	height: 100vh !important
}

.min-h-100vh {
	min-height: 100vh !important
}

.max-h-100vh {
	max-height: 100vh !important
}

.h-3rem {
	height: 3rem !important
}

.min-h-3rem {
	min-height: 3rem !important
}

.max-h-3rem {
	max-height: 3rem !important
}

@media (max-width: 1280px) {
	.lg-h-auto {
		height: auto !important
	}

	.lg-min-h-auto {
		min-height: auto !important
	}

	.lg-max-h-auto {
		max-height: auto !important
	}

	.lg-h-25 {
		height: 25% !important
	}

	.lg-min-h-25 {
		min-height: 25% !important
	}

	.lg-max-h-25 {
		max-height: 25% !important
	}

	.lg-h-50 {
		height: 50% !important
	}

	.lg-min-h-50 {
		min-height: 50% !important
	}

	.lg-max-h-50 {
		max-height: 50% !important
	}

	.lg-h-75 {
		height: 75% !important
	}

	.lg-min-h-75 {
		min-height: 75% !important
	}

	.lg-max-h-75 {
		max-height: 75% !important
	}

	.lg-h-100 {
		height: 100% !important
	}

	.lg-min-h-100 {
		min-height: 100% !important
	}

	.lg-max-h-100 {
		max-height: 100% !important
	}

	.lg-h-25vh {
		height: 25vh !important
	}

	.lg-min-h-25vh {
		min-height: 25vh !important
	}

	.lg-max-h-25vh {
		max-height: 25vh !important
	}

	.lg-h-50vh {
		height: 50vh !important
	}

	.lg-min-h-50vh {
		min-height: 50vh !important
	}

	.lg-max-h-50vh {
		max-height: 50vh !important
	}

	.lg-h-75vh {
		height: 75vh !important
	}

	.lg-min-h-75vh {
		min-height: 75vh !important
	}

	.lg-max-h-75vh {
		max-height: 75vh !important
	}

	.lg-h-100vh {
		height: 100vh !important
	}

	.lg-min-h-100vh {
		min-height: 100vh !important
	}

	.lg-max-h-100vh {
		max-height: 100vh !important
	}

	.lg-h-3rem {
		height: 3rem !important
	}

	.lg-min-h-3rem {
		min-height: 3rem !important
	}

	.lg-max-h-3rem {
		max-height: 3rem !important
	}
}

@media (max-width: 1024px) {
	.md-h-auto {
		height: auto !important
	}

	.md-min-h-auto {
		min-height: auto !important
	}

	.md-max-h-auto {
		max-height: auto !important
	}

	.md-h-25 {
		height: 25% !important
	}

	.md-min-h-25 {
		min-height: 25% !important
	}

	.md-max-h-25 {
		max-height: 25% !important
	}

	.md-h-50 {
		height: 50% !important
	}

	.md-min-h-50 {
		min-height: 50% !important
	}

	.md-max-h-50 {
		max-height: 50% !important
	}

	.md-h-75 {
		height: 75% !important
	}

	.md-min-h-75 {
		min-height: 75% !important
	}

	.md-max-h-75 {
		max-height: 75% !important
	}

	.md-h-100 {
		height: 100% !important
	}

	.md-min-h-100 {
		min-height: 100% !important
	}

	.md-max-h-100 {
		max-height: 100% !important
	}

	.md-h-25vh {
		height: 25vh !important
	}

	.md-min-h-25vh {
		min-height: 25vh !important
	}

	.md-max-h-25vh {
		max-height: 25vh !important
	}

	.md-h-50vh {
		height: 50vh !important
	}

	.md-min-h-50vh {
		min-height: 50vh !important
	}

	.md-max-h-50vh {
		max-height: 50vh !important
	}

	.md-h-75vh {
		height: 75vh !important
	}

	.md-min-h-75vh {
		min-height: 75vh !important
	}

	.md-max-h-75vh {
		max-height: 75vh !important
	}

	.md-h-100vh {
		height: 100vh !important
	}

	.md-min-h-100vh {
		min-height: 100vh !important
	}

	.md-max-h-100vh {
		max-height: 100vh !important
	}

	.md-h-3rem {
		height: 3rem !important
	}

	.md-min-h-3rem {
		min-height: 3rem !important
	}

	.md-max-h-3rem {
		max-height: 3rem !important
	}
}

@media (max-width: 768px) {
	.sm-h-auto {
		height: auto !important
	}

	.sm-min-h-auto {
		min-height: auto !important
	}

	.sm-max-h-auto {
		max-height: auto !important
	}

	.sm-h-25 {
		height: 25% !important
	}

	.sm-min-h-25 {
		min-height: 25% !important
	}

	.sm-max-h-25 {
		max-height: 25% !important
	}

	.sm-h-50 {
		height: 50% !important
	}

	.sm-min-h-50 {
		min-height: 50% !important
	}

	.sm-max-h-50 {
		max-height: 50% !important
	}

	.sm-h-75 {
		height: 75% !important
	}

	.sm-min-h-75 {
		min-height: 75% !important
	}

	.sm-max-h-75 {
		max-height: 75% !important
	}

	.sm-h-100 {
		height: 100% !important
	}

	.sm-min-h-100 {
		min-height: 100% !important
	}

	.sm-max-h-100 {
		max-height: 100% !important
	}

	.sm-h-25vh {
		height: 25vh !important
	}

	.sm-min-h-25vh {
		min-height: 25vh !important
	}

	.sm-max-h-25vh {
		max-height: 25vh !important
	}

	.sm-h-50vh {
		height: 50vh !important
	}

	.sm-min-h-50vh {
		min-height: 50vh !important
	}

	.sm-max-h-50vh {
		max-height: 50vh !important
	}

	.sm-h-75vh {
		height: 75vh !important
	}

	.sm-min-h-75vh {
		min-height: 75vh !important
	}

	.sm-max-h-75vh {
		max-height: 75vh !important
	}

	.sm-h-100vh {
		height: 100vh !important
	}

	.sm-min-h-100vh {
		min-height: 100vh !important
	}

	.sm-max-h-100vh {
		max-height: 100vh !important
	}

	.sm-h-3rem {
		height: 3rem !important
	}

	.sm-min-h-3rem {
		min-height: 3rem !important
	}

	.sm-max-h-3rem {
		max-height: 3rem !important
	}
}

@media (max-width: 576px) {
	.xs-h-auto {
		height: auto !important
	}

	.xs-min-h-auto {
		min-height: auto !important
	}

	.xs-max-h-auto {
		max-height: auto !important
	}

	.xs-h-25 {
		height: 25% !important
	}

	.xs-min-h-25 {
		min-height: 25% !important
	}

	.xs-max-h-25 {
		max-height: 25% !important
	}

	.xs-h-50 {
		height: 50% !important
	}

	.xs-min-h-50 {
		min-height: 50% !important
	}

	.xs-max-h-50 {
		max-height: 50% !important
	}

	.xs-h-75 {
		height: 75% !important
	}

	.xs-min-h-75 {
		min-height: 75% !important
	}

	.xs-max-h-75 {
		max-height: 75% !important
	}

	.xs-h-100 {
		height: 100% !important
	}

	.xs-min-h-100 {
		min-height: 100% !important
	}

	.xs-max-h-100 {
		max-height: 100% !important
	}

	.xs-h-25vh {
		height: 25vh !important
	}

	.xs-min-h-25vh {
		min-height: 25vh !important
	}

	.xs-max-h-25vh {
		max-height: 25vh !important
	}

	.xs-h-50vh {
		height: 50vh !important
	}

	.xs-min-h-50vh {
		min-height: 50vh !important
	}

	.xs-max-h-50vh {
		max-height: 50vh !important
	}

	.xs-h-75vh {
		height: 75vh !important
	}

	.xs-min-h-75vh {
		min-height: 75vh !important
	}

	.xs-max-h-75vh {
		max-height: 75vh !important
	}

	.xs-h-100vh {
		height: 100vh !important
	}

	.xs-min-h-100vh {
		min-height: 100vh !important
	}

	.xs-max-h-100vh {
		max-height: 100vh !important
	}

	.xs-h-3rem {
		height: 3rem !important
	}

	.xs-min-h-3rem {
		min-height: 3rem !important
	}

	.xs-max-h-3rem {
		max-height: 3rem !important
	}
}

/* ------------------------------
	**block
	<div class="block-scale block-*-*">
		<div class="block-content">Content</div>
	</div>
--------------------------- uu */
.block-scale {
	position: relative;
	width: 100%;
}

.block-scale:after {
	content: " ";
	display: block;
	width: 100%;
}

.block-content {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
}

/*1.5*/
.block-2-3:after {
	padding-top: calc(100% / 2 * 3);
}

/*1.25*/
.block-4-5:after {
	padding-top: calc(100% / 4 * 5);
}

/*1.16*/
.block-6-7:after {
	padding-top: calc(100% / 6 * 7);
}

/*1*/
.block-1-1:after {
	padding-top: 100%;
}

/*0.75*/
.block-4-3:after {
	padding-top: calc(100% / 4 * 3);
}

/*0.66*/
.block-3-2:after {
	padding-top: calc(100% / 3 * 2);
}

/*0.56*/
.block-16-9:after {
	padding-top: calc(100% / 16 * 9);
}

/*0.54*/
.block-1d85-1:after {
	padding-top: calc(100% / 1.85 * 1);
}

/*0.5*/
.block-2-1:after {
	padding-top: calc(100% / 2 * 1);
}

/*0.41*/
.block-2d39-1:after {
	padding-top: calc(100% / 2.39 * 1);
}

/*0.37*/
.block-8-3:after {
	padding-top: calc(100% / 8 * 3);
}

.block-auto:after {
	content: none;
}

.block-auto .block-content {
	position: relative;
}

@media (max-width: 1440px) {

	.xl-block-2-3:after {
		padding-top: calc(100% / 2 * 3);
	}

	.xl-block-4-5:after {
		padding-top: calc(100% / 4 * 5);
	}

	.xl-block-6-7:after {
		padding-top: calc(100% / 6 * 7);
	}

	.xl-block-1-1:after {
		padding-top: 100%;
	}

	.xl-block-4-3:after {
		padding-top: calc(100% / 4 * 3);
	}

	.xl-block-3-2:after {
		padding-top: calc(100% / 3 * 2);
	}

	.xl-block-16-9:after {
		padding-top: calc(100% / 16 * 9);
	}

	.xl-block-1d85-1:after {
		padding-top: calc(100% / 1.85 * 1);
	}

	.xl-block-2-1:after {
		padding-top: calc(100% / 2 * 1);
	}

	.xl-block-2d39-1:after {
		padding-top: calc(100% / 2.39 * 1);
	}

	.xl-block-8-3:after {
		padding-top: calc(100% / 8 * 3);
	}

	.xl-block-auto:after {
		content: none;
	}

	.xl-block-auto .block-content {
		position: relative;
	}
}

@media (max-width: 1280px) {

	.lg-block-2-3:after {
		padding-top: calc(100% / 2 * 3);
	}

	.lg-block-4-5:after {
		padding-top: calc(100% / 4 * 5);
	}

	.lg-block-6-7:after {
		padding-top: calc(100% / 6 * 7);
	}

	.lg-block-1-1:after {
		padding-top: 100%;
	}

	.lg-block-4-3:after {
		padding-top: calc(100% / 4 * 3);
	}

	.lg-block-3-2:after {
		padding-top: calc(100% / 3 * 2);
	}

	.lg-block-16-9:after {
		padding-top: calc(100% / 16 * 9);
	}

	.lg-block-1d85-1:after {
		padding-top: calc(100% / 1.85 * 1);
	}

	.lg-block-2-1:after {
		padding-top: calc(100% / 2 * 1);
	}

	.lg-block-2d39-1:after {
		padding-top: calc(100% / 2.39 * 1);
	}

	.lg-block-8-3:after {
		padding-top: calc(100% / 8 * 3);
	}

	.lg-block-auto:after {
		content: none;
	}

	.lg-block-auto .block-content {
		position: relative;
	}
}

@media (max-width: 1024px) {

	.md-block-2-3:after {
		padding-top: calc(100% / 2 * 3);
	}

	.md-block-4-5:after {
		padding-top: calc(100% / 4 * 5);
	}

	.md-block-6-7:after {
		padding-top: calc(100% / 6 * 7);
	}

	.md-block-1-1:after {
		padding-top: 100%;
	}

	.md-block-4-3:after {
		padding-top: calc(100% / 4 * 3);
	}

	.md-block-3-2:after {
		padding-top: calc(100% / 3 * 2);
	}

	.md-block-16-9:after {
		padding-top: calc(100% / 16 * 9);
	}

	.md-block-1d85-1:after {
		padding-top: calc(100% / 1.85 * 1);
	}

	.md-block-2-1:after {
		padding-top: calc(100% / 2 * 1);
	}

	.md-block-2d39-1:after {
		padding-top: calc(100% / 2.39 * 1);
	}

	.md-block-8-3:after {
		padding-top: calc(100% / 8 * 3);
	}

	.md-block-auto:after {
		content: none;
	}

	.md-block-auto .block-content {
		position: relative;
	}
}

@media (max-width: 768px) {

	.sm-block-2-3:after {
		padding-top: calc(100% / 2 * 3);
	}

	.sm-block-4-5:after {
		padding-top: calc(100% / 4 * 5);
	}

	.sm-block-6-7:after {
		padding-top: calc(100% / 6 * 7);
	}

	.sm-block-1-1:after {
		padding-top: 100%;
	}

	.sm-block-4-3:after {
		padding-top: calc(100% / 4 * 3);
	}

	.sm-block-3-2:after {
		padding-top: calc(100% / 3 * 2);
	}

	.sm-block-16-9:after {
		padding-top: calc(100% / 16 * 9);
	}

	.sm-block-1d85-1:after {
		padding-top: calc(100% / 1.85 * 1);
	}

	.sm-block-2-1:after {
		padding-top: calc(100% / 2 * 1);
	}

	.sm-block-2d39-1:after {
		padding-top: calc(100% / 2.39 * 1);
	}

	.sm-block-8-3:after {
		padding-top: calc(100% / 8 * 3);
	}

	.sm-block-auto:after {
		content: none;
	}

	.sm-block-auto .block-content {
		position: relative;
	}
}

@media (max-width: 576px) {

	.xs-block-2-3:after {
		padding-top: calc(100% / 2 * 3);
	}

	.xs-block-4-5:after {
		padding-top: calc(100% / 4 * 5);
	}

	.xs-block-6-7:after {
		padding-top: calc(100% / 6 * 7);
	}

	.xs-block-1-1:after {
		padding-top: 100%;
	}

	.xs-block-4-3:after {
		padding-top: calc(100% / 4 * 3);
	}

	.xs-block-3-2:after {
		padding-top: calc(100% / 3 * 2);
	}

	.xs-block-16-9:after {
		padding-top: calc(100% / 16 * 9);
	}

	.xs-block-1d85-1:after {
		padding-top: calc(100% / 1.85 * 1);
	}

	.xs-block-2-1:after {
		padding-top: calc(100% / 2 * 1);
	}

	.xs-block-2d39-1:after {
		padding-top: calc(100% / 2.39 * 1);
	}

	.xs-block-8-3:after {
		padding-top: calc(100% / 8 * 3);
	}

	.xs-block-auto:after {
		content: none;
	}

	.xs-block-auto .block-content {
		position: relative;
	}
}

/* ------------------------------
	**font **text
--------------------------- uu */
body {
	font-family: 'Open Sans', 'Noto Sans TC', 'Noto Sans SC', sans-serif, 'Helvetica Neue', 'Microsoft JhengHei';
	font-size: 1rem;
	/*font-weight: 400;*/
	font-style: normal;
	/*line-height: 1.25;*/
	/*line-height: 1.5;*/
	text-decoration: none;
	text-transform: none;
	/*letter-spacing: 0.02rem;*/
	color: #333;
	/*font-style: normal;*/
	/*line-height: initial;*/
}

/* font-family */
header,
nav,
button,
select,
footer,
footer ul li,
footer input,
footer span,
.section-title {
	font-family: 'Montserrat', 'Open Sans', 'Noto Sans TC', 'Noto Sans SC', sans-serif, 'Helvetica Neue', 'Microsoft JhengHei';
}

h1,
.h1,
h2,
h3,
h4,
h5,
h6,
p {
	display: block;
	margin-top: 0;
	font-style: normal;
	text-decoration: none;
	text-transform: none;
}

h6,
.h6,
ul.h6 li {
	margin-bottom: var(--ft-h6-mb);
	font-size: var(--ft-h6);
	font-weight: 400;
}

h5,
.h5 {
	margin-bottom: var(--ft-h5-mb);
	font-size: var(--ft-h5);
	font-weight: 400;
}

h4,
.h4 {
	margin-bottom: var(--ft-h4-mb);
	font-size: var(--ft-h4);
	font-weight: 500;
}

h3,
.h3 {
	margin-bottom: var(--ft-h3-mb);
	font-size: var(--ft-h3);
	font-weight: 500;
}

h2,
.h2 {
	margin-bottom: var(--ft-h2-mb);
	font-size: var(--ft-h2);
	font-weight: 600;
}

h1,
.h1 {
	margin-bottom: var(--ft-h1-mb);
	font-size: var(--ft-h1);
	font-weight: 600;
}

h6.hero {
	margin-bottom: var(--ft-h6-hero-mb);
	font-size: var(--ft-h6-hero);
}

h5.hero {
	margin-bottom: var(--ft-h5-hero-mb);
	font-size: var(--ft-h5-hero);
}

h4.hero {
	margin-bottom: var(--ft-h4-hero-mb);
	font-size: var(--ft-h4-hero);
}

h3.hero {
	margin-bottom: var(--ft-h3-hero-mb);
	font-size: var(--ft-h3-hero);
}

h2.hero {
	margin-bottom: var(--ft-h2-hero-mb);
	font-size: var(--ft-h2-hero);
}

h1.hero {
	margin-bottom: var(--ft-h1-hero-mb);
	font-size: var(--ft-h1-hero);
}

p {
	margin-top: 0;
	margin-bottom: 0;
}

span {
	display: inline-block;
	font-size: 0.75rem;
	font-weight: 400;
	letter-spacing: 0.02rem;
	opacity: 0.8
}

small {
	/*font-size: 0.75rem;*/
	/*font-weight: 400;*/
	letter-spacing: 0.02rem;
}

a {
	color: inherit;
	text-decoration: none;
}

@media (hover: none) {

	a:hover,
	ul li a:hover {
		color: inherit;
	}
}

a label {
	cursor: pointer;
}

dt {
	font-weight: 700;
}

code,
kbd,
pre,
samp {
	font-size: 1rem;
}

.text-align-center {
	text-align: center !important;
}

.text-align-right {
	text-align: right !important;
}

.text-align-left {
	text-align: left !important;
}

.text-align-justify {
	text-align: justify !important;
}

@media (max-width: 768px) {

	.sm-text-align-center {
		text-align: center !important;
	}

	.sm-text-align-right {
		text-align: right !important;
	}

	.sm-text-align-left {
		text-align: left !important;
	}

	.sm-text-align-justify {
		text-align: justify !important;
	}
}

@media (max-width: 576px) {

	.xs-text-align-unset {
		text-align: unset !important;
	}

	.xs-text-align-center {
		text-align: center !important;
	}

	.xs-text-align-right {
		text-align: right !important;
	}

	.xs-text-align-left {
		text-align: left !important;
	}

	.xs-text-align-justify {
		text-align: justify !important;
	}
}

/* 首大寫 */
.text-capitalize {
	text-transform: capitalize;
}

/* 全大寫 */
.text-uppercase {
	text-transform: uppercase;
}

/* 全小寫 */
.text-lowercase {
	text-transform: lowercase;
}

/* 文字不換行 */
.text-nowrap {
	white-space: nowrap;
}

/* 文字不換行 ie 都只顯示一排 */
.ms_ie [class*="text-ellipsis-"] {
	white-space: nowrap;
}

/* 文字溢出，顯示... */
.text-ellipsis,
[class*="text-ellipsis-"] {
	text-overflow: ellipsis;
	overflow: hidden;
}

[class*="text-ellipsis-"] {
	text-overflow: ellipsis;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
}

.text-ellipsis-2 {
	line-clamp: 2;
	-webkit-line-clamp: 2;
}

.text-ellipsis-3 {
	line-clamp: 3;
	-webkit-line-clamp: 3;
}

.text-ellipsis-4 {
	line-clamp: 4;
	-webkit-line-clamp: 4;
}

.text-ellipsis-5 {
	line-clamp: 5;
	-webkit-line-clamp: 5;
}

@media (max-width: 1024px) {

	.md-text-ellipsis-2 {
		line-clamp: 2;
		-webkit-line-clamp: 2;
	}

	.md-text-ellipsis-3 {
		line-clamp: 3;
		-webkit-line-clamp: 3;
	}

	.md-text-ellipsis-4 {
		line-clamp: 4;
		-webkit-line-clamp: 4;
	}

	.md-text-ellipsis-5 {
		line-clamp: 5;
		-webkit-line-clamp: 5;
	}
}

@media (max-width: 768px) {

	.sm-text-ellipsis-2 {
		line-clamp: 2;
		-webkit-line-clamp: 2;
	}

	.sm-text-ellipsis-3 {
		line-clamp: 3;
		-webkit-line-clamp: 3;
	}

	.sm-text-ellipsis-4 {
		line-clamp: 4;
		-webkit-line-clamp: 4;
	}

	.sm-text-ellipsis-5 {
		line-clamp: 5;
		-webkit-line-clamp: 5;
	}
}

@media (max-width: 576px) {

	.xs-text-ellipsis-2 {
		line-clamp: 2;
		-webkit-line-clamp: 2;
	}

	.xs-text-ellipsis-3 {
		line-clamp: 3;
		-webkit-line-clamp: 3;
	}

	.xs-text-ellipsis-4 {
		line-clamp: 4;
		-webkit-line-clamp: 4;
	}

	.xs-text-ellipsis-5 {
		line-clamp: 5;
		-webkit-line-clamp: 5;
	}
}

/* ------------------------------
	**weight
	**text-weight
	**font-weight

	100 lighter thin
	300         light
	400 normal  regular
	500         medium
	700 bold    bold
	900 bolder  black

	https://developer.mozilla.org/en-US/docs/Web/CSS/font-weight
--------------------------- uu */
.content-text {
	font-weight: 400;
}

footer ul li,
footer button,
footer span,
.section-title,
.content-title,
.content-sub-title {
	font-weight: 500;
}

b {
	font-weight: 700;
}

.text-weight-100,
.text-weight-lighter {
	font-weight: lighter !important;
	font-weight: 100 !important;
}

.text-weight-300 {
	font-weight: 300 !important;
}

.text-weight-400,
.text-weight-normal {
	font-weight: normal !important;
	font-weight: 400 !important;
}

.text-weight-500 {
	font-weight: 500 !important;
}

.text-weight-600 {
	font-weight: 600 !important;
}

.text-weight-700,
.text-weight-bold {
	font-weight: bold !important;
	font-weight: 700 !important;
}

.text-weight-900,
.text-weight-bolder {
	font-weight: bolder !important;
	font-weight: 900 !important;
}

/* ------------------------------
	section-title
	content-title
	content-text
	article-content 文章
	paragraph-content 段落
	content-category
	text-category 類別
	text-explanation 註解
	text-img-explanation 圖片註解
--------------------------- uu */
.section-title,
.hero.section-title {
	margin-bottom: 4.5rem;
}

@media (max-width: 1440px) {

	.section-title,
	.hero.section-title {
		margin-bottom: 4rem;
	}
}

@media (max-width: 1280px) {

	.section-title,
	.hero.section-title {
		margin-bottom: 3.5rem;
	}
}

@media (max-width: 1024px) {

	.section-title,
	.hero.section-title {
		margin-bottom: 3rem;
	}
}

@media (max-width: 768px) {

	.section-title,
	.hero.section-title {
		margin-bottom: 2.5rem;
	}
}

@media (max-width: 576px) {

	.section-title,
	.hero.section-title {
		margin-bottom: 2rem;
	}
}

/* .content-title {} */

/* .content-text {} */

/* .content-title+.content-text,
.content-text+.content-text {
	margin-top: 0.5625rem;
}

@media (max-width: 1440px) {}

@media (max-width: 1280px) {

	.content-title+.content-title,
	.content-text+.content-title {
		margin-top: 0.5rem;
	}
}

@media (max-width: 1024px) {

	.content-title+.content-title,
	.content-text+.content-title {
		margin-top: 0.4375rem;
	}
}

@media (max-width: 768px) {

	.content-title+.content-title,
	.content-text+.content-title {
		margin-top: 0.5rem;
	}
}

@media (max-width: 576px) {

	.content-title+.content-title,
	.content-text+.content-title {
		margin-top: 0.4375rem;
	}
} */

.content-text+.content-title,
.content-text+.content-sub-title {
	margin-top: 1rem;
}

/* 類別 */
.content-category {
	display: flex;
	/*margin-bottom: 1.75rem;*/
}

/*@media (max-width: 1440px) {
	.content-category {
		margin-bottom: 1.5rem;
	}
}

@media (max-width: 1280px) {
	.content-category {
		margin-bottom: 1.25rem;
	}
}

@media (max-width: 1024px) {
	.content-category {
		margin-bottom: 1rem;
	}
}

@media (max-width: 768px) {
	.content-category {
		margin-bottom: 0.75rem;
	}
}

@media (max-width: 576px) {
	.content-category {
		margin-bottom: 0.5rem;
	}
}*/

/* 類別分隔線 */
.content-category hr {
	width: 1px;
	height: auto;
	margin: 0.125rem 0.5rem;
}

.text-category {
	font-weight: 500;
	line-height: 1.5;
	opacity: 0.6;
}

/* 註解 */
/* .text-explanation {} */

/* 圖片註解 */
.text-img-explanation {
	margin-top: 0.875rem;
}

@media (max-width: 1440px) {
	.text-img-explanation {
		margin-top: 0.75rem;
	}
}

@media (max-width: 1280px) {
	.text-img-explanation {
		margin-top: 0.625rem;
	}
}

@media (max-width: 1024px) {
	.text-img-explanation {
		margin-top: 0.5rem;
	}
}

@media (max-width: 768px) {
	.text-img-explanation {
		margin-top: 0.625rem;
	}
}

@media (max-width: 576px) {
	.text-img-explanation {
		margin-top: 0.5rem;
	}
}

.text-color-dk,
.content-title,
.text-color-dk .content-title {
	color: rgba(0, 0, 0, 0.9);
}

.content-sub-title,
.text-color-dk .content-sub-title {
	color: rgba(0, 0, 0, 0.8);
}

.content-text,
.text-color-dk .content-text {
	color: rgba(0, 0, 0, 0.7);
}

.content-category span:before,
.text-color-dk .content-category span:before {
	background-color: #000;
}

.text-color-lt,
.text-color-lt .section-title,
.text-color-lt .content-title,
.text-color-lt li {
	color: rgba(255, 255, 255, 1);
}

.text-color-lt .content-sub-title {
	color: rgba(255, 255, 255, 0.9);
}

.text-color-lt .content-text {
	color: rgba(255, 255, 255, 0.8);
}

.text-color-lt .content-category span:before {
	background-color: #fff;
}

@media (max-width: 1440px) {}

@media (max-width: 1280px) {}

@media (max-width: 1024px) {
	.md-text-color-dk .content-title {
		color: rgba(0, 0, 0, 0.9);
	}

	.md-text-color-dk .content-sub-title {
		color: rgba(0, 0, 0, 0.8);
	}

	.md-text-color-dk .content-text {
		color: rgba(0, 0, 0, 0.7);
	}

	.md-text-color-dk .content-category span:before {
		background-color: #000;
	}
}

@media (max-width: 768px) {
	.sm-text-color-dk .content-title {
		color: rgba(0, 0, 0, 0.9);
	}

	.sm-text-color-dk .content-sub-title {
		color: rgba(0, 0, 0, 0.8);
	}

	.sm-text-color-dk .content-text {
		color: rgba(0, 0, 0, 0.7);
	}

	.sm-text-color-dk .content-category span:before {
		background-color: #000;
	}
}

@media (max-width: 576px) {

	.xs-text-color-dk .content-title {
		color: rgba(0, 0, 0, 0.9);
	}

	.xs-text-color-dk .content-sub-title {
		color: rgba(0, 0, 0, 0.8);
	}

	.xs-text-color-dk .content-text {
		color: rgba(0, 0, 0, 0.7);
	}

	.xs-text-color-dk .content-category span:before {
		background-color: #000;
	}
}

.text-line-height-1d75 {
	line-height: 1.75;
}

.line-height-1 {
	line-height: 1;
}

.line-height-1d25 {
	line-height: 1.25;
}

.line-height-1d5 {
	line-height: 1.5;
}

.line-height-2 {
	line-height: 2;
}

.line-mark {
	display: inline-block;
}

.line-mark:after {
	content: "";
	display: block;
	height: 2px;
	margin: 0.5rem 0;
	background-color: var(--color-ci-bl);
}

.line-mark-gy:after {
	content: "";
	display: block;
	width: 5rem;
	height: 0.125rem;
	margin: 0.5rem auto;
	background-color: #ddd;
}

.line-mark-gd:after {
	content: "";
	display: block;
	width: 5rem;
	height: 0.125rem;
	margin: 0.5rem auto;
	background-color: var(--color-ci-bl);
}

.hero.line-mark-gd:after {
	content: "";
	display: block;
	width: 10rem;
	height: 0.25rem;
	margin: 2rem auto;
	background-color: var(--color-ci-bl);
}

@media (max-width: 1440px) {
	.hero.line-mark-gd:after {
		width: 9rem;
		height: 4px;
		margin: 1.75rem auto;
	}
}

@media (max-width: 1280px) {
	.hero.line-mark-gd:after {
		width: 8rem;
		height: 4px;
		margin: 1.5rem auto;
	}
}

@media (max-width: 1024px) {
	.hero.line-mark-gd:after {
		width: 6rem;
		height: 4px;
		margin: 1rem auto;
	}
}

@media (max-width: 768px) {
	.hero.line-mark-gd:after {
		width: 7rem;
		height: 4px;
		margin: 1.25rem auto;
	}
}

@media (max-width: 576px) {
	.hero.line-mark-gd:after {
		width: 5rem;
		height: 4px;
		margin: 0.75rem auto;
	}
}

/* ------------------------------
	article 文章
	paragraph 段落
--------------------------- uu */
.article-content .paragraph-content {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin-top: 4rem;
	line-height: 1.75;
}

.article-content .paragraph-content:first-child {
	margin-top: 0;
}

.article-content .content-text {
	line-height: 1.75;
}

.article-content .content-text+.content-title {
	margin-top: 3rem;
}

.paragraph-content .content-text+.content-text {
	margin-top: 1rem;
}

.paragraph-content .content-title:last-child,
.paragraph-content .content-text:last-child {
	margin-bottom: 0;
}

/* ------------------------------
	**color **text-color
--------------------------- uu */
.text-color-bk {
	color: rgb(51, 51, 51) !important;
}

.text-color-gn {
	color: var(--color-gn) !important;
}

.text-color-rd {
	color: rgb(217, 38, 56) !important;
	opacity: 1;
}

.text-color-wt {
	color: rgb(255, 255, 255) !important;
}

.text-color-ci-gd {
	color: var(--color-ci-gd) !important;
}

.text-color-ci-bl,
.text-color-link,
.text-color-hover:hover {
	color: var(--color-ci-bl);
}

.text-color-ci-sb {
	color: var(--color-ci-sb) !important;
}

/* 連結下底線 */
.text-underline:hover {
	text-decoration: underline;
}

/* ------------------------------
	**background
	**bg-color
--------------------------- uu */
.bg-color-bk,
.bg-color-bk>.nav-block:before {
	background-color: #000000 !important;
}

.bg-color-bk-d9 {
	background-color: var(--color-bk-d9) !important;
}

.bg-color-bk-d75 {
	background-color: var(--color-bk-d75) !important;
}

.bg-color-bk-d6 {
	background-color: var(--color-bk-d6) !important;
}

.bg-color-bk-d45 {
	background-color: var(--color-bk-d45) !important;
}

.bg-color-bk-d3 {
	background-color: var(--color-bk-d3) !important;
}

.bg-color-dk,
.bg-color-dk>.nav-block:before {
	background-color: #2e3338 !important;
}

/* light gray */
.bg-color-lg,
.bg-color-lg>.nav-block:before {
	background-color: rgb(244, 244, 246) !important;
}

.bg-color-lt,
.bg-color-lt>.nav-block:before {
	background-color: rgba(255, 255, 255, .1) !important;
}

.bg-color-rd,
.bg-color-rd>.nav-block:before {
	background-color: var(--color-rd) !important;
}

.bg-color-wt {
	background-color: var(--color-wt) !important;
}

.bg-color-wt-d9 {
	background-color: var(--color-wt-d9) !important;
}

.bg-color-wt-d75 {
	background-color: var(--color-wt-d75) !important;
}

.bg-color-wt-d6 {
	background-color: var(--color-wt-d6) !important;
}

.bg-color-wt-d45 {
	background-color: var(--color-wt-d45) !important;
}

.bg-color-wt-d3 {
	background-color: var(--color-wt-d3) !important;
}

.bg-color-gradient-lg {
	background: linear-gradient(-45deg, rgb(227, 227, 232), rgb(244, 244, 246));
}

.bg-color-gradient-ci-bl {
	background: linear-gradient(-45deg, var(--color-ci-bl), var(--color-ci-sb));
}

.bg-color-ci-bl {
	background-color: var(--color-ci-bl) !important;
}

.bg-color-ci-bl-light,
.bg-color-ci-bl-lt {
	background-color: rgba(235, 247, 255, 1) !important;
}

.bg-color-ci-sb {
	background-color: var(--color-ci-sb) !important;
}

.bg-color-ci-sb-lt {
	background-color: var(--color-ci-sb-d1) !important;
}

.bg-color-CAF0FF {
	background-color: #CAF0FF !important;
}

.bg-color-tp {
	background-color: transparent !important;
}

.bg-clear {
	background: none !important;
}

@media (max-width: 1024px) {
	.md-bg-color-tp {
		background-color: transparent !important;
	}

	.md-bg-clear {
		background: none !important;
	}
}

.bg-text-gradient-bk-top {
	background: linear-gradient(rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0) 100%);
}

.bg-text-gradient-bk-bottom {
	background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.85) 100%);
}

.bg-logo-s {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 60px;
	height: 60px;
	/*margin-top: auto;*/
	/*margin-left: auto;*/
	pointer-events: none;
}

.bg-logo-s:before,
.bg-logo-s:after {
	content: '';
	position: absolute;
	display: block;
	width: 1600%;
	height: 1600%;
	background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='40 40 48 48'%3e%3cpath fill='%23000000' opacity='0.04' d='M78.6,53.1c-1.4-0.6-5.5-2.1-10.2-2.1c-3.9,0-6.9,1.5-7.6,3.9c-1.6,6.6,18.8,6.4,16.2,16c-1.8,6.5-9.4,9.1-18.2,9.1c-4.8,0-9.5-0.8-10.7-1.2l1.3-4.8c1.8,0.8,6.4,2.7,11.4,2.7c4.5,0,8.1-1.3,8.9-4.5C71.6,65.1,51,65.6,53.6,56c1.3-5.1,7.4-8,16.4-8c4,0,8.1,0.6,9.8,0.8L78.6,53.1z'/%3e%3c/svg%3e") no-repeat center center;
	pointer-events: none;
}

.bg-logo-s:after {
	width: 3200%;
	height: 3200%;
}

@media (max-width: 576px) {
	.bg-logo-s:after {
		opacity: 0;
	}
}

.bg-logo-s3d {
	position: fixed;
	right: 0;
	bottom: 0;
	min-width: 320px;
	width: 100vw;
	max-width: 720px;
	min-height: 320px;
	height: 100vw;
	max-height: 720px;
	overflow: hidden;
}

.bg-logo-s3d img {
	position: absolute;
	/*top: 0;*/
	right: -17%;
	bottom: -27%;
	width: 100%;
	/*max-width: 600px;*/
	/*height: 70vw;*/
	/*margin: auto;*/
}

@media (max-width: 768px) {
	.bg-logo-s3d {
		position: fixed;
	}
}

/* ------------------------------
	**bg-slant
--------------------------- uu */
/*
fill='%23000000'
opacity='1'
preserveAspectRatio='none'

bg-slant-top-rtlb
bg-slant-top-ltrb
bg-slant-right-rtlb
bg-slant-right-ltrb
bg-slant-bottom-rtlb
bg-slant-bottom-ltrb
bg-slant-left-rtlb
bg-slant-left-ltrb
*/

[class*='bg-slant-right'] .container {
	margin-right: 0;
}

[class*='bg-slant-left'] .container {
	margin-left: 0;
}

@media (max-width: 768px) {

	/* [class*='sm-bg-slant-right-'] .container,
	[class*='sm-bg-slant-right-'] .section-content {} */

	/* [class*='sm-bg-slant-left-'] .container,
	[class*='sm-bg-slant-left-'] .section-content {} */

	[class*='sm-bg-slant-top-'] .container,
	[class*='sm-bg-slant-top-'] .section-content {
		padding-top: 1.5rem;
		margin-right: auto;
		margin-left: auto;
	}

	[class*='sm-bg-slant-bottom-'] .container,
	[class*='sm-bg-slant-bottom-'] .section-content {
		padding-bottom: 1.5rem;
		margin-right: auto;
		margin-left: auto;
	}
}

@media (max-width: 576px) {

	/* [class*='sm-bg-slant-right-'] .container,
	[class*='sm-bg-slant-right-'] .section-content {} */

	/* [class*='sm-bg-slant-left-'] .container,
	[class*='sm-bg-slant-left-'] .section-content {} */

	[class*='sm-bg-slant-top-'] .container,
	[class*='sm-bg-slant-top-'] .section-content,
	[class*='xs-bg-slant-top-'] .container,
	[class*='xs-bg-slant-top-'] .section-content {
		padding-top: 1rem;
		margin-right: auto;
		margin-left: auto;
	}

	[class*='sm-bg-slant-bottom-'] .container,
	[class*='sm-bg-slant-bottom-'] .section-content,
	[class*='xs-bg-slant-bottom-'] .container,
	[class*='xs-bg-slant-bottom-'] .section-content {
		padding-bottom: 1rem;
		margin-right: auto;
		margin-left: auto;
	}
}

[class*='bg-slant-']:before {
	background-color: #000;
}

[class*='bg-slant-top-']:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 1px;
	top: -1px;
	left: 0;
}

[class*='bg-slant-right-']:before {
	content: "";
	position: absolute;
	width: 1px;
	height: 100%;
	top: 0;
	left: 100%;
}

[class*='bg-slant-bottom-']:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 1px;
	top: 100%;
	left: 0;
}

[class*='bg-slant-left-']:before {
	content: "";
	position: absolute;
	width: 1px;
	height: 100%;
	top: 0;
	left: -1px;
}

.bg-color-ci-bl-light[class*='bg-slant-']:before {
	background-color: #ebf7ff !important;
}

[class*='bg-slant-']:after {
	content: "";
	position: absolute;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.bg-color-ci-bl-light.bg-slant-right-rtlb:after,
.bg-color-ci-bl-light.bg-slant-bottom-rtlb:after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='%23ebf7ff' preserveAspectRatio='none'%3E%3Cpath d='M0,100V0h100L0,100z'/%3E%3C/svg%3E");
}

.bg-color-ci-bl-light.bg-slant-top-ltrb:after,
.bg-color-ci-bl-light.bg-slant-right-ltrb:after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='%23ebf7ff' preserveAspectRatio='none'%3E%3Cpath d='M0,100V0l100,100H0z'/%3E%3C/svg%3E");
}

.bg-color-ci-bl-light.bg-slant-left-ltrb:after,
.bg-color-ci-bl-light.bg-slant-bottom-ltrb:after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='%23ebf7ff' preserveAspectRatio='none'%3E%3Cpath d='M100,100L0,0h100V100z'/%3E%3C/svg%3E");
}

.bg-color-ci-bl-light.bg-slant-top-rtlb:after,
.bg-color-ci-bl-light.bg-slant-left-rtlb:after {
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='%23ebf7ff' preserveAspectRatio='none'%3E%3Cpath d='M100,100H0L100,0V100z'/%3E%3C/svg%3E");
}

.bg-slant-top-rtlb:after,
.bg-slant-top-ltrb:after {
	width: 100%;
	height: 40%;
	top: -40%;
	left: 0;
}

.bg-slant-right-rtlb:after,
.bg-slant-right-ltrb:after {
	width: 40%;
	height: 100%;
	top: 0;
	left: 100%;
}

.bg-slant-bottom-rtlb:after,
.bg-slant-bottom-ltrb:after {
	width: 100%;
	height: 40%;
	top: 100%;
	left: 0;
}

.bg-slant-left-rtlb:after,
.bg-slant-left-ltrb:after {
	width: 40%;
	height: 100%;
	top: 0;
	left: -40%;
}

@media (max-width: 768px) {
	[class*='sm-bg-slant-top-']:before {
		width: 100%;
		height: 1px;
		top: -1px;
		left: 0;
	}

	[class*='sm-bg-slant-right-']:before {
		width: 1px;
		height: 100%;
		top: 0;
		left: 100%;
	}

	[class*='sm-bg-slant-bottom-']:before {
		width: 100%;
		height: 1px;
		top: 100%;
		left: 0;
	}

	[class*='sm-bg-slant-left-']:before {
		width: 1px;
		height: 100%;
		top: 0;
		left: -1px;
	}

	.bg-color-ci-bl-light.sm-bg-slant-right-rtlb:after,
	.bg-color-ci-bl-light.sm-bg-slant-bottom-rtlb:after {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='%23ebf7ff' preserveAspectRatio='none'%3E%3Cpath d='M0,100V0h100L0,100z'/%3E%3C/svg%3E");
	}

	.bg-color-ci-bl-light.sm-bg-slant-top-ltrb:after,
	.bg-color-ci-bl-light.sm-bg-slant-right-ltrb:after {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='%23ebf7ff' preserveAspectRatio='none'%3E%3Cpath d='M0,100V0l100,100H0z'/%3E%3C/svg%3E");
	}

	.bg-color-ci-bl-light.sm-bg-slant-left-ltrb:after,
	.bg-color-ci-bl-light.sm-bg-slant-bottom-ltrb:after {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='%23ebf7ff' preserveAspectRatio='none'%3E%3Cpath d='M100,100L0,0h100V100z'/%3E%3C/svg%3E");
	}

	.bg-color-ci-bl-light.sm-bg-slant-top-rtlb:after,
	.bg-color-ci-bl-light.sm-bg-slant-left-rtlb:after {
		background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='%23ebf7ff' preserveAspectRatio='none'%3E%3Cpath d='M100,100H0L100,0V100z'/%3E%3C/svg%3E");
	}

	.sm-bg-slant-top-rtlb:after,
	.sm-bg-slant-top-ltrb:after {
		width: 100%;
		height: 25%;
		top: -25%;
		left: 0;
	}

	.sm-bg-slant-right-rtlb:after,
	.sm-bg-slant-right-ltrb:after {
		width: 40%;
		height: 100%;
		top: 0;
		left: 100%;
	}

	.sm-bg-slant-bottom-rtlb:after,
	.sm-bg-slant-bottom-ltrb:after {
		width: 100%;
		height: 25%;
		top: 100%;
		left: 0;
	}

	.sm-bg-slant-left-rtlb:after,
	.sm-bg-slant-left-ltrb:after {
		width: 40%;
		height: 100%;
		top: 0;
		left: -40%;
	}
}

@media (max-width: 576px) {

	.sm-bg-slant-top-rtlb:after,
	.sm-bg-slant-top-ltrb:after {
		height: 10%;
		top: -10%;
	}

	.sm-bg-slant-bottom-rtlb:after,
	.sm-bg-slant-bottom-ltrb:after {
		height: 10%;
	}
}

/* ------------------------------
	**img **image **picture
--------------------------- uu */
img {
	vertical-align: middle;
	border-style: none;
}

img::-moz-selection {
	background: transparent;
}

img::selection {
	background: transparent;
}

img::-moz-selection {
	background: transparent;
}

svg {
	overflow: hidden;
	vertical-align: middle;
}

.content-img picture {
	width: 100%;
	height: 100%;
}

/*.container-auto,*/
.section-auto.container-auto {
	display: flex;
	justify-content: center;
}

/* ------------------------------
	**img-placeholder
--------------------------- uu */
.content-img {
	/*用inline-block首頁banner圖會變高*/
	/*display: inline-block;*/
	position: relative;
	max-width: 100%;
	max-height: 100%;
}

.content-img-placeholder,
.content-img-error {
	width: 100%;
	height: 100%;
	background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 128 128'%3e%3cpath fill='%23ffffff90' d='M78.8,53.2c-1.4-0.6-5.5-2.1-10.2-2.1c-3.9,0-6.9,1.5-7.6,3.9c-1.6,6.6,18.8,6.4,16.2,16c-1.8,6.5-9.4,9.1-18.2,9.1c-4.8,0-9.5-0.8-10.7-1.2l1.3-4.8c1.8,0.8,6.4,2.7,11.4,2.7c4.5,0,8.1-1.3,8.9-4.5c1.9-7.1-18.7-6.6-16.1-16.2c1.3-5.1,7.4-8,16.4-8c4,0,8.1,0.6,9.8,0.8L78.8,53.2z'/%3e%3c/svg%3e"
		) #00000030 no-repeat center center;
}

.content-img.img-inside {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.content-img-placeholder img,
.content-img-error img {
	min-width: 64px;
	min-height: 64px;
	opacity: 0;
	/*transition: 0.3s, opacity 0s;*/
}

/* https://developer.mozilla.org/zh-TW/docs/Web/CSS/object-fit */
/* https://codepen.io/iounini/pen/KKqwYEQ */
.img-contain {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}

.img-cover {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}

.img-scale-down {
	/*width: 100%;*/
	/*height: 100%;*/
	max-width: 100%;
	max-height: 100%;
	margin: auto;
	-o-object-fit: scale-down;
	object-fit: scale-down;
}

.product-label {
	height: var(--ft-label);
	margin-right: 1rem;
	margin-bottom: var(--ft-label-mb);
	overflow: hidden;
}

.product-label-category {
	height: var(--ft-label-category);
	margin-bottom: var(--ft-label-category-mb);
	overflow: hidden;
}

.product-label-category.hero {
	height: var(--ft-label-category-hero);
	margin-bottom: var(--ft-label-category-hero-mb);
}

.product-label img {
	height: 300%;
	transform: translateY(-16.666667%);
}

.product-label-category img {
	height: 200%;
	transform: translateY(0);
}

.text-color-dk .product-label-category img,
.text-color-dk.product-label-category img {
	transform: translateY(-50%);
}

.content-outside .product-label img,
.content-outside-bottom .product-label img {
	transform: translateY(-66.666667%);
}

@media (max-width: 1280px) {

	.lg-content-outside .product-label img,
	.lg-content-outside-bottom .product-label img {
		transform: translateY(-66.666667%);
	}

	.lg-content-outside .product-label-category img,
	.lg-content-outside-bottom .product-label-category img {
		transform: translateY(-50%);
	}
}

@media (max-width: 1024px) {

	.md-content-outside .product-label img,
	.md-content-outside-bottom .product-label img {
		transform: translateY(-66.666667%);
	}

	.md-content-outside .product-label-category img,
	.md-content-outside-bottom .product-label-category img {
		transform: translateY(-50%);
	}
}

@media (max-width: 768px) {

	.sm-content-outside .product-label img,
	.sm-content-outside-bottom .product-label img {
		transform: translateY(-66.666667%);
	}

	.sm-content-outside .product-label-category img,
	.sm-content-outside-bottom .product-label-category img {
		transform: translateY(-50%);
	}
}

@media (max-width: 576px) {

	.xs-content-outside .product-label img,
	.xs-content-outside-bottom .product-label img {
		transform: translateY(-66.666667%);
	}

	.xs-content-outside .product-label-category img,
	.xs-content-outside-bottom .product-label-category img {
		transform: translateY(-50%);
	}
}

span.product-category {
	display: inline-block;
	width: auto;
	height: 1.25rem;
	padding: 0.125rem .5rem;
	border-radius: 0.75rem;
	margin-top: 0.25rem;
	margin-bottom: 0.75rem;
	background-color: rgba(128, 128, 130, .75);
	font-family: 'Source Sans Pro';
	font-size: 0.75rem;
	font-weight: 600;
	font-style: italic;
	line-height: 1rem;
	color: #fff;
	transition: background-color 0.3s;
}

a:hover span.product-category {
	background-color: var(--color-ci-bl);
}

.product-label-category+.product-category {
	margin-left: 1rem;
}

/* image align */
.img-align-top img {
	position: absolute;
	top: 0;
	bottom: auto;
	height: auto;
}

.img-align-buttom img {
	position: absolute;
	top: auto;
	bottom: 0;
	height: auto;
}

.img-align-left img {
	position: absolute;
	right: auto;
	left: 0;
	width: auto;
}

.img-align-right img {
	position: absolute;
	right: 0;
	left: auto;
	width: auto;
}

@media (max-width: 1440px) {
	.xl-img-align-top img {
		position: absolute;
		top: 0;
		bottom: auto;
		height: auto;
	}

	.xl-img-align-buttom img {
		position: absolute;
		top: auto;
		bottom: 0;
		height: auto;
	}

	.xl-img-align-left img {
		position: absolute;
		right: auto;
		left: 0;
		width: auto;
	}

	.xl-img-align-right img {
		position: absolute;
		right: 0;
		left: auto;
		width: auto;
	}
}

@media (max-width: 1280px) {
	.lg-img-align-top img {
		position: absolute;
		top: 0;
		bottom: auto;
		height: auto;
	}

	.lg-img-align-buttom img {
		position: absolute;
		top: auto;
		bottom: 0;
		height: auto;
	}

	.lg-img-align-left img {
		position: absolute;
		right: auto;
		left: 0;
		width: auto;
	}

	.lg-img-align-right img {
		position: absolute;
		right: 0;
		left: auto;
		width: auto;
	}
}

@media (max-width: 1024px) {
	.md-img-align-top img {
		position: absolute;
		top: 0;
		bottom: auto;
		height: auto;
	}

	.md-img-align-buttom img {
		position: absolute;
		top: auto;
		bottom: 0;
		height: auto;
	}

	.md-img-align-left img {
		position: absolute;
		right: auto;
		left: 0;
		width: auto;
	}

	.md-img-align-right img {
		position: absolute;
		right: 0;
		left: auto;
		width: auto;
	}
}

@media (max-width: 768px) {
	.sm-img-align-top img {
		position: absolute;
		top: 0;
		bottom: auto;
		height: auto;
	}

	.sm-img-align-buttom img {
		position: absolute;
		top: auto;
		bottom: 0;
		height: auto;
	}

	.sm-img-align-left img {
		position: absolute;
		right: auto;
		left: 0;
		width: auto;
	}

	.sm-img-align-right img {
		position: absolute;
		right: 0;
		left: auto;
		width: auto;
	}
}

@media (max-width: 576px) {
	.xs-img-align-top img {
		position: absolute;
		top: 0;
		bottom: auto;
		height: auto;
	}

	.xs-img-align-buttom img {
		position: absolute;
		top: auto;
		bottom: 0;
		height: auto;
	}

	.xs-img-align-left img {
		position: absolute;
		right: auto;
		left: 0;
		width: auto;
	}

	.xs-img-align-right img {
		position: absolute;
		right: 0;
		left: auto;
		width: auto;
	}
}

.radius-1rem {
	position: relative;
	border-radius: 1rem !important;
	overflow: hidden;
}

.radius-2rem {
	position: relative;
	border-radius: 2rem !important;
	overflow: hidden;
}

/* image zoom */
.img-zoom-in {
	/*width: 100%;*/
	/*height: 100%;*/
	transform-origin: center;
	transition: 0.6s ease;
}

.img-hover:hover.img-zoom-in,
.img-hover:hover .img-zoom-in {
	transform: scale(1.1);
}

/* image 飽和度 -70% */
.img-grayscale img {
	-webkit-filter: grayscale(70%);
	filter: grayscale(70%);
	transition: 0.6s ease;
}

.img-hover:hover.img-grayscale img,
.img-hover:hover .img-grayscale img {
	-webkit-filter: grayscale(0%);
	filter: grayscale(0%);
}

/* ------------------------------
	**list **ul **li
	https://developer.mozilla.org/zh-CN/docs/Web/CSS/list-style-type
	https://www.htmlsymbols.xyz/geometric-symbols
--------------------------- uu */
dl,
ol,
ul {
	padding-left: 0;
	margin-top: 0;
	list-style: none;
}

ul li {
	margin-bottom: 0.5rem;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
}

[class*=li-type-]>li>ul {
	margin-top: 1rem;
	margin-bottom: 2rem;
}

ul.span li {
	margin-bottom: 0.5rem;
	font-size: 0.75rem;
	line-height: 1.5;
	letter-spacing: 0.02rem;
	opacity: 0.8;
}

ul li:last-child,
ul.span li:last-child {
	margin-bottom: 0;
}

/* list-style-type */
/* https://developer.mozilla.org/en-US/play */
[class*=li-type-]:not(.li-type-icon, .li-type-none) {
	padding-left: 1.75rem;
}

.span[class*=li-type-]:not(.li-type-icon, .li-type-none) {
	padding-left: 1.5rem;
}

.li-type-none {
	padding-left: 0;
	list-style: none;
}

.li-type-decimal {
	list-style-type: decimal;
}

.li-type-disc {
	list-style-type: disc;
}

.li-type-circle {
	list-style-type: circle;
}

.li-type-square {
	list-style-type: square;
}

.li-type-lower-alpha {
	list-style-type: lower-alpha;
}

.li-type-lower-latin {
	list-style-type: lower-latin;
}

.li-type-upper-alpha {
	list-style-type: upper-alpha;
}

.li-type-upper-latin {
	list-style-type: upper-latin;
}

:is([class*=li-type-cjk], [class*=li-type-trad]):not(.li-type-icon) {
	padding-left: 2rem;
}

.li-type-trad-chinese-formal {
	list-style-type: trad-chinese-formal;
}

.li-type-trad-chinese-informal {
	list-style-type: trad-chinese-informal;
}

.li-type-cjk-ideographic {
	list-style-type: cjk-ideographic;
}

.li-type-diamond li:before {
	position: relative;
	display: inline-block;
	width: 1.375rem;
	margin-left: -1.375rem;
	content: "\2BC1";
}

.li-type-dot {
	list-style: none;
}

.li-type-dot li:before {
	position: relative;
	display: inline-block;
	width: 1.125rem;
	margin-left: -1.125rem;
	content: "\2022";
}

.span.li-type-dot li:before {
	width: 1rem;
}

.li-type-icon {
	padding-left: 0;
}

.li-type-icon li {
	display: flex;
}

.li-type-icon li a {
	display: inline-flex;
	transition: color 0.2s;
}

.li-type-icon li a:hover {
	color: hsl(201deg 85% 55% / 1);
	color: var(--color-ci-sb);
}

/* ------------------------------
	**button **btn
--------------------------- uu */
label.btn {
	margin-bottom: 0;
}

.btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0.5rem 0.75rem;
	border-width: 0;
	border-radius: 0.5rem;
	line-height: 1.25;
	text-align: center;
	vertical-align: middle;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	cursor: pointer;
	transition: background-color 0.3s ease, color 0.3s ease, opacity 0.3s ease, box-shadow 0.3s ease;
}

.btn:focus,
.btn.focus {
	outline: 0;
}

.btn:disabled,
.btn.disabled {
	cursor: default
}

/* size */
.btn-size-sm,
.btn-size-group-sm>.btn {
	padding: 0.125rem 0.5rem;
	border-radius: 0.25rem;
}

.btn-size-lg,
.btn-size-group-lg>.btn {
	padding: 0.875rem 1.25rem;
	border-radius: 0.75rem;
}

/* radius */
.btn-radius {
	padding-right: 1.125rem;
	padding-left: 1.125rem;
	border-radius: 1.125rem;
}

.btn-radius.btn-size-sm {
	padding-right: 0.75rem;
	padding-left: 0.75rem;
	border-radius: 0.75rem
}

.btn-radius.btn-size-lg {
	padding-right: 1.5rem;
	padding-left: 1.5rem;
	border-radius: 1.5rem;
}

/* 最小寬度 */
.btn-min-width:not([class*=btn-text], [class*=btn-icon]) {
	min-width: 6rem;
}

/* icon */
.btn-icon {
	min-width: 2.25rem;
	padding-right: 0;
	padding-left: 0;
	padding: 0.625rem 0;
}

.btn-icon.btn-size-sm {
	min-width: 1.5rem;
	padding: 0.25rem 0;
}

.btn-icon.btn-size-lg {
	min-width: 3rem;
	padding: 1rem 0;
}

.btn-text {
	padding-right: 0;
	padding-left: 0;
	background-color: transparent;
}

.btn-link {
	padding-right: 0;
	padding-left: 0;
	background-color: transparent;
	color: var(--color-ci-bl);
}

.btn-link:hover {
	text-decoration: underline;
}

.btns {
	display: flex;
	flex-wrap: wrap;
}

a.btn {
	transition: 0.3s ease;
}

/* light */
.btn-lt {
	background-color: rgba(255, 255, 255, .1);
	color: rgba(255, 255, 255, .9);
}

.btn-lt:not(:disabled, .disabled):hover,
.btn-lt:not(:disabled, .disabled):active,
.btn-lt:not(:disabled, .disabled).active {
	background-color: rgba(255, 255, 255, .2);
	color: rgba(255, 255, 255, 1);
}

.btn-lt:not(:disabled, .disabled):focus,
.btn-lt:not(:disabled, .disabled):active:focus,
.btn-lt:not(:disabled, .disabled).active:focus {
	box-shadow: 0 0 0 .2rem rgba(255, 255, 255, .3);
}

.btn-lt:disabled,
.btn-lt.disabled {
	background-color: rgba(255, 255, 255, .1);
	color: rgba(255, 255, 255, .6);
}

/* dark */
.btn-dk {
	background-color: rgba(0, 0, 0, .1);
	color: rgba(0, 0, 0, .9);
}

.btn-dk:not(:disabled, .disabled):hover,
.btn-dk:not(:disabled, .disabled):active,
.btn-dk:not(:disabled, .disabled).active {
	background-color: rgba(0, 0, 0, .2);
	color: rgba(0, 0, 0, 1);
}

.btn-dk:not(:disabled, .disabled):focus,
.btn-dk:not(:disabled, .disabled):active:focus,
.btn-dk:not(:disabled, .disabled).active:focus {
	box-shadow: 0 0 0 .2rem rgba(0, 0, 0, .25);
}

.btn-dk:disabled,
.btn-dk.disabled {
	background-color: rgba(0, 0, 0, .1);
	color: rgba(0, 0, 0, .4);
}

@media (max-width: 768px) {

	.sm-btn-dk {
		background-color: rgba(0, 0, 0, .1);
		color: rgba(0, 0, 0, .9);
	}

	.sm-btn-dk:hover,
	.sm-btn-dk:not(:disabled, .disabled):active,
	.sm-btn-dk:not(:disabled, .disabled).active {
		background-color: rgba(0, 0, 0, .2);
		color: rgba(0, 0, 0, 1);
	}

	.sm-btn-dk:focus,
	.sm-btn-dk.focus,
	.sm-btn-dk:not(:disabled, .disabled):active:focus,
	.sm-btn-dk:not(:disabled, .disabled).active:focus {
		box-shadow: 0 0 0 .2rem rgba(0, 0, 0, .1);
	}

	.sm-btn-dk:disabled,
	.sm-btn-dk.disabled {
		background-color: rgba(0, 0, 0, .1);
		color: rgba(0, 0, 0, .4);
	}
}

/* black */
.btn-bk {
	background-color: rgb(51, 51, 51);
	color: rgb(255, 255, 255);
}

.btn-bk:not(:disabled, .disabled):hover,
.btn-bk:not(:disabled, .disabled):active,
.btn-bk:not(:disabled, .disabled).active {
	background-color: rgb(26, 26, 26);
	color: rgb(255, 255, 255);
}

.btn-bk:not(:disabled, .disabled):focus,
.btn-bk:not(:disabled, .disabled):active:focus,
.btn-bk:not(:disabled, .disabled).active:focus {
	box-shadow: 0 0 0 .2rem rgba(51, 51, 51, .5);
}

.btn-bk:disabled,
.btn-bk.disabled {
	background-color: rgb(51, 51, 51);
	color: rgba(255, 255, 255, .5);
}

/* blue */
.btn-bl {
	background-color: rgb(0, 123, 255);
	color: #fff;
}

.btn-bl:not(:disabled, .disabled):hover,
.btn-bl:not(:disabled, .disabled):active,
.btn-bl:not(:disabled, .disabled).active {
	background-color: rgb(0, 98, 204);
	color: #fff;
}

.btn-bl:not(:disabled, .disabled):focus,
.btn-bl:not(:disabled, .disabled):active:focus,
.btn-bl:not(:disabled, .disabled).active:focus {
	box-shadow: 0 0 0 .2rem rgba(0, 123, 255, .5);
}

.btn-bl:disabled,
.btn-bl.disabled {
	background-color: rgb(153, 202, 255);
	color: #fff;
}

/* green */
.btn-gn {
	background-color: var(--color-gn);
	color: #fff;
}

.btn-gn:not(:disabled, .disabled):hover,
.btn-gn:not(:disabled, .disabled):active,
.btn-gn:not(:disabled, .disabled).active {
	background-color: rgb(31, 122, 52);
	color: #fff;
}

.btn-gn:not(:disabled, .disabled):focus,
.btn-gn:not(:disabled, .disabled):active:focus,
.btn-gn:not(:disabled, .disabled).active:focus {
	box-shadow: 0 0 0 .2rem var(--color-gn-d5);
}

.btn-gn:disabled,
.btn-gn.disabled {
	background-color: rgb(133, 224, 154);
	color: #fff;
}

/* red */
.btn-rd {
	background-color: rgb(217, 38, 56);
	color: #fff;
}

.btn-rd:not(:disabled, .disabled):hover,
.btn-rd:not(:disabled, .disabled):active,
.btn-rd:not(:disabled, .disabled).active {
	background-color: rgb(173, 31, 45);
	color: #fff;
}

.btn-rd:not(:disabled, .disabled):focus,
.btn-rd:not(:disabled, .disabled):active:focus,
.btn-rd:not(:disabled, .disabled).active:focus {
	box-shadow: 0 0 0 .2rem rgba(217, 38, 56, .5);
}

.btn-rd:disabled,
.btn-rd.disabled {
	background-color: rgb(240, 168, 175);
	color: #fff;
}

/* ci-bl */
.btn-ci-bl {
	background-color: var(--color-ci-bl);
	color: #fff;
}

.btn-ci-bl:not(:disabled, .disabled):hover,
.btn-ci-bl:not(:disabled, .disabled):active,
.btn-ci-bl:not(:disabled, .disabled).active {
	background-color: var(--color-ci-bl-h);
}

.btn-ci-bl:not(:disabled, .disabled):focus,
.btn-ci-bl:not(:disabled, .disabled):active:focus,
.btn-ci-bl:not(:disabled, .disabled).active:focus {
	box-shadow: 0 0 0 0.2rem var(--color-ci-bl-d3);
}

.btn-ci-bl:disabled,
.btn-ci-bl.disabled {
	opacity: 0.3;
}

/* ci-sb */
.btn-ci-sb {
	background-color: var(--color-ci-sb);
	color: #fff;
}

.btn-ci-sb:not(:disabled, .disabled):hover,
.btn-ci-sb:not(:disabled, .disabled):active,
.btn-ci-sb:not(:disabled, .disabled).active {
	background-color: var(--color-ci-sb-h);
}

.btn-ci-sb:not(:disabled, .disabled):focus,
.btn-ci-sb:not(:disabled, .disabled):active:focus,
.btn-ci-sb:not(:disabled, .disabled).active:focus {
	box-shadow: 0 0 0 0.2rem var(--color-ci-sb-d3);
}

.btn-ci-sb:disabled,
.btn-ci-sb.disabled {
	opacity: 0.3;
}

/* ci-gd */
.btn-ci-gd {
	background-color: var(--color-ci-gd);
	color: #fff;
}

.btn-ci-gd:not(:disabled, .disabled):hover,
.btn-ci-gd:not(:disabled, .disabled):active,
.btn-ci-gd:not(:disabled, .disabled).active {
	background-color: var(--color-ci-gd-h);
}

.btn-ci-gd:not(:disabled, .disabled):focus,
.btn-ci-gd:not(:disabled, .disabled):active:focus,
.btn-ci-gd:not(:disabled, .disabled).active:focus {
	box-shadow: 0 0 0 0.2rem var(--color-ci-gd-d3);
}

.btn-ci-gd:disabled,
.btn-ci-gd.disabled {
	opacity: 0.3;
}

/* btn-group */
.btn-group,
.btn-group-vertical {
	position: relative;
	display: inline-flex;
	vertical-align: middle;
}

/* clear */
.btn-clear {
	padding: 0;
	border: 0;
	border-radius: 0;
	margin: 0;
	background-color: transparent;
	color: transparent;
}

/* ------------------------------
	**font-awesome
--------------------------- uu */
[class*=fa-] {
	margin-right: 0.5rem;
}

.btn-icon [class*=fa-] {
	margin: 0;
}

.li-type-icon li i[class*=fa-] {
	min-width: 1.5rem;
	margin-right: 0.25rem;
	line-height: 1.5;
	text-align: center;
}

.span.li-type-icon li i[class*=fa-] {
	min-width: 1.25rem;
}

/* ------------------------------
	**icon
--------------------------- uu */
.ic {
	display: inline-block;
	box-sizing: content-box;
	width: 1.5rem;
	height: 1.5rem;
	padding: 0;
	margin: 0;
}

.ic:before,
.ic:after,
.ic span,
.ic span:before,
.ic span:after {
	content: "";
	display: block;
	box-sizing: border-box;
	position: absolute;
	border-color: rgba(0, 0, 0, .8);
	margin: 0;
	background-color: rgba(0, 0, 0, .8);
	opacity: 1;
	transition: 0.3s;
}

.bg-color-dk .ic:before,
.bg-color-dk .ic:after,
.bg-color-dk .ic span,
.bg-color-dk .ic span:before,
.bg-color-dk .ic span:after {
	border-color: rgba(255, 255, 255, .8);
	background-color: rgba(255, 255, 255, .8);
}

.ic:hover:before,
.ic:hover:after,
.ic:hover span,
.ic:hover span:before,
.ic:hover span:after,
.ic.hover:before,
.ic.hover:after,
.ic.hover span,
.ic.hover span:before,
.ic.hover span:after {
	border-color: hsl(201deg 85% 55% / 1);
	background-color: hsl(201deg 85% 55% / 1);
}

@media (hover: none) {

	.ic:hover:before,
	.ic:hover:after,
	.ic:hover span,
	.ic:hover span:before,
	.ic:hover span:after {
		border-color: rgba(0, 0, 0, .8);
		background-color: rgba(0, 0, 0, .8);
	}
}

label.btn.ic {
	padding: 0.75rem;
}

button .ic {
	float: left;
	padding: 0.75rem;
	cursor: pointer;
}

.ic-plus-more:before,
.ic-plus-more:after {
	width: 19px;
	height: 1px;
	transform: translate(3px, 12px);
}

.ic-plus-more:after {
	transform: translate(3px, 12px) rotate(-90deg);
}

.ic-plus-more.ani:hover:before {
	width: 22px;
	transform: translate(1px, 12px) rotate(45deg);
}

.ic-plus-more.ani:hover:after {
	width: 22px;
	transform: translate(1px, 12px) rotate(-45deg);
}

.ic-cross:before,
.ic-cross:after {
	width: 22px;
	height: 1px;
	transform: translate(1px, 12px) rotate(45deg);
}

.ic-cross:after {
	transform: translate(1px, 12px) rotate(-45deg);
}

.ic-cross-ani:before,
.ic-cross-ani:after {
	width: 16px;
	height: 1px;
	transform: translate(4px, 12px) rotate(45deg);
}

.ic-cross-ani:after {
	transform: translate(4px, 12px) rotate(-45deg);
}

.ic-cross-ani:hover:before {
	width: 22px;
	transform: translate(1px, 12px) rotate(45deg);
}

.ic-cross-ani:hover:after {
	width: 22px;
	transform: translate(1px, 12px) rotate(-45deg);
}

.ic-cross-ani-2:before,
.ic-cross-ani-2:after {
	width: 0;
	height: 1px;
	transform-origin: left;
	transform: translate(4px, 4px) rotate(45deg);
}

.ic-cross-ani-2:after {
	transform: translate(4px, 20px) rotate(-45deg);
}

.ic-cross-ani-2:hover:before,
.ic-cross-ani-2:hover:after {
	width: 22px;
}

.ic-search:before {
	width: 14px;
	height: 14px;
	border-style: solid;
	border-width: 1px;
	border-radius: 50%;
	background-color: transparent;
	transform: translate(3px, 3px);
}

.ic-search:after {
	width: 8px;
	height: 1px;
	transform-origin: left;
	transform: translate(14px, 14px) rotate(45deg);
}

.ic-search:hover:before,
.ic-search.hover:before {
	background-color: transparent;
}

.ic-menu-burger:before,
.ic-menu-burger:after {
	width: 20px;
	height: 1px;
	transform-origin: center;
	transform: translate(2px, 7px);
}

.ic-menu-burger:after {
	transform: translate(2px, 17px);
}

.ic-menu-burger span {
	width: 20px;
	height: 1px;
	transform: translate(2px, 12px);
}

.ic-menu-burger span:before {
	width: 0;
	height: 1px;
	transform-origin: center;
	transform: translate(10px, 0px) rotate(45deg);
}

.ic-menu-burger span:after {
	width: 0;
	height: 1px;
	transform-origin: center;
	transform: translate(10px, 0px) rotate(-45deg);
}

.ic-collapse:before {
	width: 11px;
	height: 1px;
	transform: translate(2px, 12px) rotate(35deg);
}

.ic-collapse:after {
	width: 11px;
	height: 1px;
	transform: translate(11px, 12px) rotate(-35deg);
}

.ic-collapse.active:before {
	transform: translate(2px, 12px) rotate(-35deg);
}

.ic-collapse.active:after {
	transform: translate(11px, 12px) rotate(35deg);
}

.ic-chevron-up:before {
	width: 11px;
	height: 1px;
	transform: translate(3px, 11px) rotate(-45deg);
}

.ic-chevron-up:after {
	width: 11px;
	height: 1px;
	transform: translate(10px, 11px) rotate(45deg);
}

.ic-chevron-down:before {
	width: 11px;
	height: 1px;
	transform: translate(3px, 11px) rotate(45deg);
}

.ic-chevron-down:after {
	width: 11px;
	height: 1px;
	transform: translate(10px, 11px) rotate(-45deg);
}

/* ------------------------------
	**display
--------------------------- uu */
.d-none {
	display: none !important;
}

.d-inline {
	display: inline !important;
}

.d-inline-block {
	display: inline-block !important;
}

.d-block {
	display: block !important;
}

.d-table {
	display: table !important;
}

.d-table-row {
	display: table-row !important;
}

.d-table-cell {
	display: table-cell !important;
}

.d-flex {
	display: flex !important;
}

.d-inline-flex {
	display: inline-flex !important;
}

.d-grid {
	display: -ms-grid !important;
	display: grid !important;
}

.d-inline-grid {
	display: -ms-grid !important;
	display: grid !important;
}

@media (max-width: 1440px) {
	.xl-d-none {
		display: none !important;
	}

	.xl-d-inline {
		display: inline !important;
	}

	.xl-d-inline-block {
		display: inline-block !important;
	}

	.xl-d-block {
		display: block !important;
	}

	.xl-d-table {
		display: table !important;
	}

	.xl-d-table-row {
		display: table-row !important;
	}

	.xl-d-table-cell {
		display: table-cell !important;
	}

	.xl-d-flex {
		display: flex !important;
	}

	.xl-d-inline-flex {
		display: inline-flex !important;
	}

	.xl-d-grid {
		display: -ms-grid !important;
		display: grid !important;
	}

	.xl-d-inline-grid {
		display: -ms-grid !important;
		display: grid !important;
	}
}

@media (max-width: 1280px) {
	.lg-d-none {
		display: none !important;
	}

	.lg-d-inline {
		display: inline !important;
	}

	.lg-d-inline-block {
		display: inline-block !important;
	}

	.lg-d-block {
		display: block !important;
	}

	.lg-d-table {
		display: table !important;
	}

	.lg-d-table-row {
		display: table-row !important;
	}

	.lg-d-table-cell {
		display: table-cell !important;
	}

	.lg-d-flex {
		display: flex !important;
	}

	.lg-d-inline-flex {
		display: inline-flex !important;
	}

	.lg-d-grid {
		display: -ms-grid !important;
		display: grid !important;
	}

	.lg-d-inline-grid {
		display: -ms-grid !important;
		display: grid !important;
	}
}

@media (max-width: 1024px) {
	.md-d-none {
		display: none !important;
	}

	.md-d-inline {
		display: inline !important;
	}

	.md-d-inline-block {
		display: inline-block !important;
	}

	.md-d-block {
		display: block !important;
	}

	.md-d-table {
		display: table !important;
	}

	.md-d-table-row {
		display: table-row !important;
	}

	.md-d-table-cell {
		display: table-cell !important;
	}

	.md-d-flex {
		display: flex !important;
	}

	.md-d-inline-flex {
		display: inline-flex !important;
	}

	.md-d-grid {
		display: -ms-grid !important;
		display: grid !important;
	}

	.md-d-inline-grid {
		display: -ms-grid !important;
		display: grid !important;
	}
}

@media (max-width: 768px) {
	.sm-d-none {
		display: none !important;
	}

	.sm-d-inline {
		display: inline !important;
	}

	.sm-d-inline-block {
		display: inline-block !important;
	}

	.sm-d-block {
		display: block !important;
	}

	.sm-d-table {
		display: table !important;
	}

	.sm-d-table-row {
		display: table-row !important;
	}

	.sm-d-table-cell {
		display: table-cell !important;
	}

	.sm-d-flex {
		display: flex !important;
	}

	.sm-d-inline-flex {
		display: inline-flex !important;
	}

	.sm-d-grid {
		display: -ms-grid !important;
		display: grid !important;
	}

	.sm-d-inline-grid {
		display: -ms-grid !important;
		display: grid !important;
	}
}

@media (max-width: 576px) {
	.xs-d-none {
		display: none !important;
	}

	.xs-d-inline {
		display: inline !important;
	}

	.xs-d-inline-block {
		display: inline-block !important;
	}

	.xs-d-block {
		display: block !important;
	}

	.xs-d-table {
		display: table !important;
	}

	.xs-d-table-row {
		display: table-row !important;
	}

	.xs-d-table-cell {
		display: table-cell !important;
	}

	.xs-d-flex {
		display: flex !important;
	}

	.xs-d-inline-flex {
		display: inline-flex !important;
	}

	.xs-d-grid {
		display: -ms-grid !important;
		display: grid !important;
	}

	.xs-d-inline-grid {
		display: -ms-grid !important;
		display: grid !important;
	}
}

/* ------------------------------
	**flex
--------------------------- uu */
.flex-row {
	flex-direction: row !important;
}

.flex-column {
	flex-direction: column !important;
}

.flex-wrap {
	flex-wrap: wrap !important;
}

.flex-nowrap {
	flex-wrap: nowrap !important;
}

/* ------------------------------
	**position
--------------------------- uu */
.position-static {
	position: static !important;
}

.position-relative {
	position: relative !important;
}

.position-absolute {
	position: absolute !important;
}

.position-fixed {
	position: fixed !important;
}

.position-sticky {
	position: -webkit-sticky !important;
	position: sticky !important;
}

@media (max-width: 768px) {
	.sm-position-static {
		position: static !important;
	}

	.sm-position-relative {
		position: relative !important;
	}

	.sm-position-absolute {
		position: absolute !important;
	}

	.sm-position-fixed {
		position: fixed !important;
	}

	.sm-position-sticky {
		position: -webkit-sticky !important;
		position: sticky !important;
	}
}

@media (max-width: 576px) {
	.xs-position-static {
		position: static !important;
	}

	.xs-position-relative {
		position: relative !important;
	}

	.xs-position-absolute {
		position: absolute !important;
	}

	.xs-position-fixed {
		position: fixed !important;
	}

	.xs-position-sticky {
		position: -webkit-sticky !important;
		position: sticky !important;
	}
}

/* ------------------------------
	**overflow
--------------------------- uu */
.overflow-auto {
	overflow: auto !important;
}

.overflow-hidden {
	overflow: hidden !important;
}

.overflow-scroll {
	overflow: scroll !important;
}

.overflow-visible {
	overflow: visible !important;
}

/* ------------------------------
	**z-index
--------------------------- uu */
.z--1 {
	z-index: -1;
}

.z-1 {
	z-index: 1;
}

.z-10 {
	z-index: 10;
}

/* ------------------------------
	**padding
--------------------------- uu */
/* padding auto */
.p,
.pt,
.py,
.child-section-p>section,
.child-section-py>section,
.child-section-pt>section {
	padding-top: 4rem;
}

.p,
.py,
.pb,
.child-section-p>section,
.child-section-py>section,
.child-section-pb>section {
	padding-bottom: 4rem;
}

.p,
.px,
.pr,
.child-section-p>section,
.child-section-px>section,
.child-section-pr>section {
	padding-right: 4rem;
}

.p,
.px,
.pl,
.child-section-p>section,
.child-section-px>section,
.child-section-pl>section {
	padding-left: 4rem;
}

@media (max-width: 1440px) {

	.p,
	.py,
	.pt,
	.xl-p,
	.xl-py,
	.xl-pt,
	.child-section-p>section,
	.child-section-py>section,
	.child-section-pt>section {
		padding-top: 3.5rem;
	}

	.p,
	.px,
	.pr,
	.xl-p,
	.xl-px,
	.xl-pr,
	.child-section-p>section,
	.child-section-px>section,
	.child-section-pr>section {
		padding-right: 3.5rem;
	}

	.p,
	.py,
	.pb,
	.xl-p,
	.xl-py,
	.xl-pb,
	.child-section-p>section,
	.child-section-py>section,
	.child-section-pb>section {
		padding-bottom: 3.5rem;
	}

	.p,
	.px,
	.pl,
	.xl-p,
	.xl-px,
	.xl-pl,
	.child-section-p>section,
	.child-section-px>section,
	.child-section-pl>section {
		padding-left: 3.5rem;
	}
}

@media (max-width: 1280px) {

	.p,
	.py,
	.pt,
	.xl-p,
	.xl-py,
	.xl-pt,
	.lg-p,
	.lg-py,
	.lg-pt,
	.child-section-p>section,
	.child-section-py>section,
	.child-section-pt>section {
		padding-top: 3rem;
	}

	.p,
	.px,
	.pr,
	.xl-p,
	.xl-px,
	.xl-pr,
	.lg-p,
	.lg-px,
	.lg-pr,
	.child-section-p>section,
	.child-section-px>section,
	.child-section-pr>section {
		padding-right: 3rem;
	}

	.p,
	.py,
	.pb,
	.xl-p,
	.xl-py,
	.xl-pb,
	.lg-p,
	.lg-py,
	.lg-pb,
	.child-section-p>section,
	.child-section-py>section,
	.child-section-pb>section {
		padding-bottom: 3rem;
	}

	.p,
	.px,
	.pl,
	.xl-p,
	.xl-px,
	.xl-pl,
	.lg-p,
	.lg-px,
	.lg-pl,
	.child-section-p>section,
	.child-section-px>section,
	.child-section-pl>section {
		padding-left: 3rem;
	}
}

@media (max-width: 1024px) {

	.p,
	.py,
	.pt,
	.xl-p,
	.xl-py,
	.xl-pt,
	.lg-p,
	.lg-py,
	.lg-pt,
	.md-p,
	.md-py,
	.md-pt,
	.child-section-p>section,
	.child-section-py>section,
	.child-section-pt>section {
		padding-top: 2.5rem;
	}

	.p,
	.px,
	.pr,
	.xl-p,
	.xl-px,
	.xl-pr,
	.lg-p,
	.lg-px,
	.lg-pr,
	.md-p,
	.md-px,
	.md-pr,
	.child-section-p>section,
	.child-section-px>section,
	.child-section-pr>section {
		padding-right: 2.5rem;
	}

	.p,
	.py,
	.pb,
	.xl-p,
	.xl-py,
	.xl-pb,
	.lg-p,
	.lg-py,
	.lg-pb,
	.md-p,
	.md-py,
	.md-pb,
	.child-section-p>section,
	.child-section-py>section,
	.child-section-pb>section {
		padding-bottom: 2.5rem;
	}

	.p,
	.px,
	.pl,
	.xl-p,
	.xl-px,
	.xl-pl,
	.lg-p,
	.lg-px,
	.lg-pl,
	.md-p,
	.md-px,
	.md-pl,
	.child-section-p>section,
	.child-section-px>section,
	.child-section-pl>section {
		padding-left: 2.5rem;
	}
}

@media (max-width: 768px) {

	.p,
	.py,
	.pt,
	.xl-p,
	.xl-py,
	.xl-pt,
	.lg-p,
	.lg-py,
	.lg-pt,
	.md-p,
	.md-py,
	.md-pt,
	.sm-p,
	.sm-py,
	.sm-pt,
	.child-section-p>section,
	.child-section-py>section,
	.child-section-pt>section {
		padding-top: 2rem;
	}

	.p,
	.px,
	.pr,
	.xl-p,
	.xl-px,
	.xl-pr,
	.lg-p,
	.lg-px,
	.lg-pr,
	.md-p,
	.md-px,
	.md-pr,
	.sm-p,
	.sm-px,
	.sm-pr,
	.child-section-p>section,
	.child-section-px>section,
	.child-section-pr>section {
		padding-right: 2rem;
	}

	.p,
	.py,
	.pb,
	.xl-p,
	.xl-py,
	.xl-pb,
	.lg-p,
	.lg-py,
	.lg-pb,
	.md-p,
	.md-py,
	.md-pb,
	.sm-p,
	.sm-py,
	.sm-pb,
	.child-section-p>section,
	.child-section-py>section,
	.child-section-pb>section {
		padding-bottom: 2rem;
	}

	.p,
	.px,
	.pl,
	.xl-p,
	.xl-px,
	.xl-pl,
	.lg-p,
	.lg-px,
	.lg-pl,
	.md-p,
	.md-px,
	.md-pl,
	.sm-p,
	.sm-px,
	.sm-pl,
	.child-section-p>section,
	.child-section-px>section,
	.child-section-pl>section {
		padding-left: 2rem;
	}
}

@media (max-width: 576px) {

	.p,
	.py,
	.pt,
	.xl-p,
	.xl-py,
	.xl-pt,
	.lg-p,
	.lg-py,
	.lg-pt,
	.md-p,
	.md-py,
	.md-pt,
	.sm-p,
	.sm-py,
	.sm-pt,
	.xs-p,
	.xs-py,
	.xs-pt,
	.child-section-p>section,
	.child-section-py>section,
	.child-section-pt>section {
		padding-top: 1.5rem;
	}

	.p,
	.px,
	.pr,
	.xl-p,
	.xl-px,
	.xl-pr,
	.lg-p,
	.lg-px,
	.lg-pr,
	.md-p,
	.md-px,
	.md-pr,
	.sm-p,
	.sm-px,
	.sm-pr,
	.xs-p,
	.xs-px,
	.xs-pr,
	.child-section-p>section,
	.child-section-px>section,
	.child-section-pr>section {
		padding-right: 1.5rem;
	}

	.p,
	.py,
	.pb,
	.xl-p,
	.xl-py,
	.xl-pb,
	.lg-p,
	.lg-py,
	.lg-pb,
	.md-p,
	.md-py,
	.md-pb,
	.sm-p,
	.sm-py,
	.sm-pb,
	.xs-p,
	.xs-py,
	.xs-pb,
	.child-section-p>section,
	.child-section-py>section,
	.child-section-pb>section {
		padding-bottom: 1.5rem;
	}

	.p,
	.px,
	.pl,
	.xl-p,
	.xl-px,
	.xl-pl,
	.lg-p,
	.lg-px,
	.lg-pl,
	.md-p,
	.md-px,
	.md-pl,
	.sm-p,
	.sm-px,
	.sm-pl,
	.xs-p,
	.xs-px,
	.xs-pl,
	.child-section-p>section,
	.child-section-px>section,
	.child-section-pl>section {
		padding-left: 1.5rem;
	}
}

/* top */
.p-0,
.py-0,
.pt-0 {
	padding-top: 0 !important;
}

.p-d25rem,
.py-d25rem,
.pt-d25rem {
	padding-top: 0.25rem !important;
}

.p-d5rem,
.py-d5rem,
.pt-d5rem {
	padding-top: 0.5rem !important;
}

.p-d75rem,
.py-d75rem,
.pt-d75rem {
	padding-top: 0.75rem !important;
}

.p-1rem,
.py-1rem,
.pt-1rem {
	padding-top: 1rem !important;
}

.p-1d25rem,
.py-1d25rem,
.pt-1d25rem {
	padding-top: 1.25rem !important;
}

.p-1d5rem,
.py-1d5rem,
.pt-1d5rem {
	padding-top: 1.5rem !important;
}

.p-2rem,
.py-2rem,
.pt-2rem {
	padding-top: 2rem !important;
}

.p-3rem,
.py-3rem,
.pt-3rem {
	padding-top: 3rem !important;
}

/* right */
.p-0,
.px-0,
.pr-0 {
	padding-right: 0 !important;
}

.p-d25rem,
.px-d25rem,
.pr-d25rem {
	padding-right: 0.25rem !important;
}

.p-d5rem,
.px-d5rem,
.pr-d5rem {
	padding-right: 0.5rem !important;
}

.p-d75rem,
.px-d75rem,
.pr-d75rem {
	padding-right: 0.75rem !important;
}

.p-1rem,
.px-1rem,
.pr-1rem {
	padding-right: 1rem !important;
}

.p-1d25rem,
.px-1d25rem,
.pr-1d25rem {
	padding-right: 1.25rem !important;
}

.p-1d5rem,
.px-1d5rem,
.pr-1d5rem {
	padding-right: 1.5rem !important;
}

.p-2rem,
.px-2rem,
.pr-2rem {
	padding-right: 2rem !important;
}

.p-3rem,
.px-3rem,
.pr-3rem {
	padding-right: 3rem !important;
}

/* bottom */
.p-0,
.py-0,
.pb-0 {
	padding-bottom: 0 !important;
}

.p-d25rem,
.py-d25rem,
.pb-d25rem {
	padding-bottom: 0.25rem !important;
}

.p-d5rem,
.py-d5rem,
.pb-d5rem {
	padding-bottom: 0.5rem !important;
}

.p-d75rem,
.py-d75rem,
.pb-d75rem {
	padding-bottom: 0.75rem !important;
}

.p-1rem,
.py-1rem,
.pb-1rem {
	padding-bottom: 1rem !important;
}

.p-1d25rem,
.py-1d25rem,
.pb-1d25rem {
	padding-bottom: 1.25rem !important;
}

.p-1d5rem,
.py-1d5rem,
.pb-1d5rem {
	padding-bottom: 1.5rem !important;
}

.p-2rem,
.py-2rem,
.pb-2rem {
	padding-bottom: 2rem !important;
}

.p-3rem,
.py-3rem,
.pb-3rem {
	padding-bottom: 3rem !important;
}

/* left */
.p-0,
.px-0,
.pl-0 {
	padding-left: 0 !important;
}

.p-d25rem,
.px-d25rem,
.pl-d25rem {
	padding-left: 0.25rem !important;
}

.p-d5rem,
.px-d5rem,
.pl-d5rem {
	padding-left: 0.5rem !important;
}

.p-d75rem,
.px-d75rem,
.pl-d75rem {
	padding-left: 0.75rem !important;
}

.p-1rem,
.px-1rem,
.pl-1rem {
	padding-left: 1rem !important;
}

.p-1d25rem,
.px-1d25rem,
.pl-1d25rem {
	padding-left: 1.25rem !important;
}

.p-1d5rem,
.px-1d5rem,
.pl-1d5rem {
	padding-left: 1.5rem !important;
}

.p-2rem,
.px-2rem,
.pl-2rem {
	padding-left: 2rem !important;
}

.p-3rem,
.px-3rem,
.pl-3rem {
	padding-left: 3rem !important;
}

@media (max-width: 1440px) {

	/* top */
	.xl-p-0,
	.xl-py-0,
	.xl-pt-0 {
		padding-top: 0 !important;
	}

	.xl-p-d25rem,
	.xl-py-d25rem,
	.xl-pt-d25rem {
		padding-top: 0.25rem !important;
	}

	.xl-p-d5rem,
	.xl-py-d5rem,
	.xl-pt-d5rem {
		padding-top: 0.5rem !important;
	}

	.xl-p-d75rem,
	.xl-py-d75rem,
	.xl-pt-d75rem {
		padding-top: 0.75rem !important;
	}

	.xl-p-1rem,
	.xl-py-1rem,
	.xl-pt-1rem {
		padding-top: 1rem !important;
	}

	.xl-p-1d25rem,
	.xl-py-1d25rem,
	.xl-pt-1d25rem {
		padding-top: 1.25rem !important;
	}

	.xl-p-1d5rem,
	.xl-py-1d5rem,
	.xl-pt-1d5rem {
		padding-top: 1.5rem !important;
	}

	.xl-p-2rem,
	.xl-py-2rem,
	.xl-pt-2rem {
		padding-top: 2rem !important;
	}

	.xl-p-3rem,
	.xl-py-3rem,
	.xl-pt-3rem {
		padding-top: 3rem !important;
	}

	/* right */
	.xl-p-0,
	.xl-px-0,
	.xl-pr-0 {
		padding-right: 0 !important;
	}

	.xl-p-d25rem,
	.xl-px-d25rem,
	.xl-pr-d25rem {
		padding-right: 0.25rem !important;
	}

	.xl-p-d5rem,
	.xl-px-d5rem,
	.xl-pr-d5rem {
		padding-right: 0.5rem !important;
	}

	.xl-p-d75rem,
	.xl-px-d75rem,
	.xl-pr-d75rem {
		padding-right: 0.75rem !important;
	}

	.xl-p-1rem,
	.xl-px-1rem,
	.xl-pr-1rem {
		padding-right: 1rem !important;
	}

	.xl-p-1d25rem,
	.xl-px-1d25rem,
	.xl-pr-1d25rem {
		padding-right: 1.25rem !important;
	}

	.xl-p-1d5rem,
	.xl-px-1d5rem,
	.xl-pr-1d5rem {
		padding-right: 1.5rem !important;
	}

	.xl-p-2rem,
	.xl-px-2rem,
	.xl-pr-2rem {
		padding-right: 2rem !important;
	}

	.xl-p-3rem,
	.xl-px-3rem,
	.xl-pr-3rem {
		padding-right: 3rem !important;
	}

	/* bottom */
	.xl-p-0,
	.xl-py-0,
	.xl-pb-0 {
		padding-bottom: 0 !important;
	}

	.xl-p-d25rem,
	.xl-py-d25rem,
	.xl-pb-d25rem {
		padding-bottom: 0.25rem !important;
	}

	.xl-p-d5rem,
	.xl-py-d5rem,
	.xl-pb-d5rem {
		padding-bottom: 0.5rem !important;
	}

	.xl-p-d75rem,
	.xl-py-d75rem,
	.xl-pb-d75rem {
		padding-bottom: 0.75rem !important;
	}

	.xl-p-1rem,
	.xl-py-1rem,
	.xl-pb-1rem {
		padding-bottom: 1rem !important;
	}

	.xl-p-1d25rem,
	.xl-py-1d25rem,
	.xl-pb-1d25rem {
		padding-bottom: 1.25rem !important;
	}

	.xl-p-1d5rem,
	.xl-py-1d5rem,
	.xl-pb-1d5rem {
		padding-bottom: 1.5rem !important;
	}

	.xl-p-2rem,
	.xl-py-2rem,
	.xl-pb-2rem {
		padding-bottom: 2rem !important;
	}

	.xl-p-3rem,
	.xl-py-3rem,
	.xl-pb-3rem {
		padding-bottom: 3rem !important;
	}

	/* left */
	.xl-p-0,
	.xl-px-0,
	.xl-pl-0 {
		padding-left: 0 !important;
	}

	.xl-p-d25rem,
	.xl-px-d25rem,
	.xl-pl-d25rem {
		padding-left: 0.25rem !important;
	}

	.xl-p-d5rem,
	.xl-px-d5rem,
	.xl-pl-d5rem {
		padding-left: 0.5rem !important;
	}

	.xl-p-d75rem,
	.xl-px-d75rem,
	.xl-pl-d75rem {
		padding-left: 0.75rem !important;
	}

	.xl-p-1rem,
	.xl-px-1rem,
	.xl-pl-1rem {
		padding-left: 1rem !important;
	}

	.xl-p-1d25rem,
	.xl-px-1d25rem,
	.xl-pl-1d25rem {
		padding-left: 1.25rem !important;
	}

	.xl-p-1d5rem,
	.xl-px-1d5rem,
	.xl-pl-1d5rem {
		padding-left: 1.5rem !important;
	}

	.xl-p-2rem,
	.xl-px-2rem,
	.xl-pl-2rem {
		padding-left: 2rem !important;
	}

	.xl-p-3rem,
	.xl-px-3rem,
	.xl-pl-3rem {
		padding-left: 3rem !important;
	}
}

@media (max-width: 1280px) {

	/* top */
	.lg-p-0,
	.lg-py-0,
	.lg-pt-0 {
		padding-top: 0 !important;
	}

	.lg-p-d25rem,
	.lg-py-d25rem,
	.lg-pt-d25rem {
		padding-top: 0.25rem !important;
	}

	.lg-p-d5rem,
	.lg-py-d5rem,
	.lg-pt-d5rem {
		padding-top: 0.5rem !important;
	}

	.lg-p-d75rem,
	.lg-py-d75rem,
	.lg-pt-d75rem {
		padding-top: 0.75rem !important;
	}

	.lg-p-1rem,
	.lg-py-1rem,
	.lg-pt-1rem {
		padding-top: 1rem !important;
	}

	.lg-p-1d25rem,
	.lg-py-1d25rem,
	.lg-pt-1d25rem {
		padding-top: 1.25rem !important;
	}

	.lg-p-1d5rem,
	.lg-py-1d5rem,
	.lg-pt-1d5rem {
		padding-top: 1.5rem !important;
	}

	.lg-p-2rem,
	.lg-py-2rem,
	.lg-pt-2rem {
		padding-top: 2rem !important;
	}

	.lg-p-3rem,
	.lg-py-3rem,
	.lg-pt-3rem {
		padding-top: 3rem !important;
	}

	/* right */
	.lg-p-0,
	.lg-px-0,
	.lg-pr-0 {
		padding-right: 0 !important;
	}

	.lg-p-d25rem,
	.lg-px-d25rem,
	.lg-pr-d25rem {
		padding-right: 0.25rem !important;
	}

	.lg-p-d5rem,
	.lg-px-d5rem,
	.lg-pr-d5rem {
		padding-right: 0.5rem !important;
	}

	.lg-p-d75rem,
	.lg-px-d75rem,
	.lg-pr-d75rem {
		padding-right: 0.75rem !important;
	}

	.lg-p-1rem,
	.lg-px-1rem,
	.lg-pr-1rem {
		padding-right: 1rem !important;
	}

	.lg-p-1d25rem,
	.lg-px-1d25rem,
	.lg-pr-1d25rem {
		padding-right: 1.25rem !important;
	}

	.lg-p-1d5rem,
	.lg-px-1d5rem,
	.lg-pr-1d5rem {
		padding-right: 1.5rem !important;
	}

	.lg-p-2rem,
	.lg-px-2rem,
	.lg-pr-2rem {
		padding-right: 2rem !important;
	}

	.lg-p-3rem,
	.lg-px-3rem,
	.lg-pr-3rem {
		padding-right: 3rem !important;
	}

	/* bottom */
	.lg-p-0,
	.lg-py-0,
	.lg-pb-0 {
		padding-bottom: 0 !important;
	}

	.lg-p-d25rem,
	.lg-py-d25rem,
	.lg-pb-d25rem {
		padding-bottom: 0.25rem !important;
	}

	.lg-p-d5rem,
	.lg-py-d5rem,
	.lg-pb-d5rem {
		padding-bottom: 0.5rem !important;
	}

	.lg-p-d75rem,
	.lg-py-d75rem,
	.lg-pb-d75rem {
		padding-bottom: 0.75rem !important;
	}

	.lg-p-1rem,
	.lg-py-1rem,
	.lg-pb-1rem {
		padding-bottom: 1rem !important;
	}

	.lg-p-1d25rem,
	.lg-py-1d25rem,
	.lg-pb-1d25rem {
		padding-bottom: 1.25rem !important;
	}

	.lg-p-1d5rem,
	.lg-py-1d5rem,
	.lg-pb-1d5rem {
		padding-bottom: 1.5rem !important;
	}

	.lg-p-2rem,
	.lg-py-2rem,
	.lg-pb-2rem {
		padding-bottom: 2rem !important;
	}

	.lg-p-3rem,
	.lg-py-3rem,
	.lg-pb-3rem {
		padding-bottom: 3rem !important;
	}

	/* left */
	.lg-p-0,
	.lg-px-0,
	.lg-pl-0 {
		padding-left: 0 !important;
	}

	.lg-p-d25rem,
	.lg-px-d25rem,
	.lg-pl-d25rem {
		padding-left: 0.25rem !important;
	}

	.lg-p-d5rem,
	.lg-px-d5rem,
	.lg-pl-d5rem {
		padding-left: 0.5rem !important;
	}

	.lg-p-d75rem,
	.lg-px-d75rem,
	.lg-pl-d75rem {
		padding-left: 0.75rem !important;
	}

	.lg-p-1rem,
	.lg-px-1rem,
	.lg-pl-1rem {
		padding-left: 1rem !important;
	}

	.lg-p-1d25rem,
	.lg-px-1d25rem,
	.lg-pl-1d25rem {
		padding-left: 1.25rem !important;
	}

	.lg-p-1d5rem,
	.lg-px-1d5rem,
	.lg-pl-1d5rem {
		padding-left: 1.5rem !important;
	}

	.lg-p-2rem,
	.lg-px-2rem,
	.lg-pl-2rem {
		padding-left: 2rem !important;
	}

	.lg-p-3rem,
	.lg-px-3rem,
	.lg-pl-3rem {
		padding-left: 3rem !important;
	}
}

@media (max-width: 1024px) {

	/* top */
	.md-p-0,
	.md-py-0,
	.md-pt-0 {
		padding-top: 0 !important;
	}

	.md-p-d25rem,
	.md-py-d25rem,
	.md-pt-d25rem {
		padding-top: 0.25rem !important;
	}

	.md-p-d5rem,
	.md-py-d5rem,
	.md-pt-d5rem {
		padding-top: 0.5rem !important;
	}

	.md-p-d75rem,
	.md-py-d75rem,
	.md-pt-d75rem {
		padding-top: 0.75rem !important;
	}

	.md-p-1rem,
	.md-py-1rem,
	.md-pt-1rem {
		padding-top: 1rem !important;
	}

	.md-p-1d25rem,
	.md-py-1d25rem,
	.md-pt-1d25rem {
		padding-top: 1.25rem !important;
	}

	.md-p-1d5rem,
	.md-py-1d5rem,
	.md-pt-1d5rem {
		padding-top: 1.5rem !important;
	}

	.md-p-2rem,
	.md-py-2rem,
	.md-pt-2rem {
		padding-top: 2rem !important;
	}

	.md-p-3rem,
	.md-py-3rem,
	.md-pt-3rem {
		padding-top: 3rem !important;
	}

	/* right */
	.md-p-0,
	.md-px-0,
	.md-pr-0 {
		padding-right: 0 !important;
	}

	.md-p-d25rem,
	.md-px-d25rem,
	.md-pr-d25rem {
		padding-right: 0.25rem !important;
	}

	.md-p-d5rem,
	.md-px-d5rem,
	.md-pr-d5rem {
		padding-right: 0.5rem !important;
	}

	.md-p-d75rem,
	.md-px-d75rem,
	.md-pr-d75rem {
		padding-right: 0.75rem !important;
	}

	.md-p-1rem,
	.md-px-1rem,
	.md-pr-1rem {
		padding-right: 1rem !important;
	}

	.md-p-1d25rem,
	.md-px-1d25rem,
	.md-pr-1d25rem {
		padding-right: 1.25rem !important;
	}

	.md-p-1d5rem,
	.md-px-1d5rem,
	.md-pr-1d5rem {
		padding-right: 1.5rem !important;
	}

	.md-p-2rem,
	.md-px-2rem,
	.md-pr-2rem {
		padding-right: 2rem !important;
	}

	.md-p-3rem,
	.md-px-3rem,
	.md-pr-3rem {
		padding-right: 3rem !important;
	}

	/* bottom */
	.md-p-0,
	.md-py-0,
	.md-pb-0 {
		padding-bottom: 0 !important;
	}

	.md-p-d25rem,
	.md-py-d25rem,
	.md-pb-d25rem {
		padding-bottom: 0.25rem !important;
	}

	.md-p-d5rem,
	.md-py-d5rem,
	.md-pb-d5rem {
		padding-bottom: 0.5rem !important;
	}

	.md-p-d75rem,
	.md-py-d75rem,
	.md-pb-d75rem {
		padding-bottom: 0.75rem !important;
	}

	.md-p-1rem,
	.md-py-1rem,
	.md-pb-1rem {
		padding-bottom: 1rem !important;
	}

	.md-p-1d25rem,
	.md-py-1d25rem,
	.md-pb-1d25rem {
		padding-bottom: 1.25rem !important;
	}

	.md-p-1d5rem,
	.md-py-1d5rem,
	.md-pb-1d5rem {
		padding-bottom: 1.5rem !important;
	}

	.md-p-2rem,
	.md-py-2rem,
	.md-pb-2rem {
		padding-bottom: 2rem !important;
	}

	.md-p-3rem,
	.md-py-3rem,
	.md-pb-3rem {
		padding-bottom: 3rem !important;
	}

	/* left */
	.md-p-0,
	.md-px-0,
	.md-pl-0 {
		padding-left: 0 !important;
	}

	.md-p-d25rem,
	.md-px-d25rem,
	.md-pl-d25rem {
		padding-left: 0.25rem !important;
	}

	.md-p-d5rem,
	.md-px-d5rem,
	.md-pl-d5rem {
		padding-left: 0.5rem !important;
	}

	.md-p-d75rem,
	.md-px-d75rem,
	.md-pl-d75rem {
		padding-left: 0.75rem !important;
	}

	.md-p-1rem,
	.md-px-1rem,
	.md-pl-1rem {
		padding-left: 1rem !important;
	}

	.md-p-1d25rem,
	.md-px-1d25rem,
	.md-pl-1d25rem {
		padding-left: 1.25rem !important;
	}

	.md-p-1d5rem,
	.md-px-1d5rem,
	.md-pl-1d5rem {
		padding-left: 1.5rem !important;
	}

	.md-p-2rem,
	.md-px-2rem,
	.md-pl-2rem {
		padding-left: 2rem !important;
	}

	.md-p-3rem,
	.md-px-3rem,
	.md-pl-3rem {
		padding-left: 3rem !important;
	}
}

@media (max-width: 768px) {

	/* top */
	.sm-p-0,
	.sm-py-0,
	.sm-pt-0 {
		padding-top: 0 !important;
	}

	.sm-p-d25rem,
	.sm-py-d25rem,
	.sm-pt-d25rem {
		padding-top: 0.25rem !important;
	}

	.sm-p-d5rem,
	.sm-py-d5rem,
	.sm-pt-d5rem {
		padding-top: 0.5rem !important;
	}

	.sm-p-d75rem,
	.sm-py-d75rem,
	.sm-pt-d75rem {
		padding-top: 0.75rem !important;
	}

	.sm-p-1rem,
	.sm-py-1rem,
	.sm-pt-1rem {
		padding-top: 1rem !important;
	}

	.sm-p-1d25rem,
	.sm-py-1d25rem,
	.sm-pt-1d25rem {
		padding-top: 1.25rem !important;
	}

	.sm-p-1d5rem,
	.sm-py-1d5rem,
	.sm-pt-1d5rem {
		padding-top: 1.5rem !important;
	}

	.sm-p-2rem,
	.sm-py-2rem,
	.sm-pt-2rem {
		padding-top: 2rem !important;
	}

	.sm-p-3rem,
	.sm-py-3rem,
	.sm-pt-3rem {
		padding-top: 3rem !important;
	}

	/* right */
	.sm-p-0,
	.sm-px-0,
	.sm-pr-0 {
		padding-right: 0 !important;
	}

	.sm-p-d25rem,
	.sm-px-d25rem,
	.sm-pr-d25rem {
		padding-right: 0.25rem !important;
	}

	.sm-p-d5rem,
	.sm-px-d5rem,
	.sm-pr-d5rem {
		padding-right: 0.5rem !important;
	}

	.sm-p-d75rem,
	.sm-px-d75rem,
	.sm-pr-d75rem {
		padding-right: 0.75rem !important;
	}

	.sm-p-1rem,
	.sm-px-1rem,
	.sm-pr-1rem {
		padding-right: 1rem !important;
	}

	.sm-p-1d25rem,
	.sm-px-1d25rem,
	.sm-pr-1d25rem {
		padding-right: 1.25rem !important;
	}

	.sm-p-1d5rem,
	.sm-px-1d5rem,
	.sm-pr-1d5rem {
		padding-right: 1.5rem !important;
	}

	.sm-p-2rem,
	.sm-px-2rem,
	.sm-pr-2rem {
		padding-right: 2rem !important;
	}

	.sm-p-3rem,
	.sm-px-3rem,
	.sm-pr-3rem {
		padding-right: 3rem !important;
	}

	/* bottom */
	.sm-p-0,
	.sm-py-0,
	.sm-pb-0 {
		padding-bottom: 0 !important;
	}

	.sm-p-d25rem,
	.sm-py-d25rem,
	.sm-pb-d25rem {
		padding-bottom: 0.25rem !important;
	}

	.sm-p-d5rem,
	.sm-py-d5rem,
	.sm-pb-d5rem {
		padding-bottom: 0.5rem !important;
	}

	.sm-p-d75rem,
	.sm-py-d75rem,
	.sm-pb-d75rem {
		padding-bottom: 0.75rem !important;
	}

	.sm-p-1rem,
	.sm-py-1rem,
	.sm-pb-1rem {
		padding-bottom: 1rem !important;
	}

	.sm-p-1d25rem,
	.sm-py-1d25rem,
	.sm-pb-1d25rem {
		padding-bottom: 1.25rem !important;
	}

	.sm-p-1d5rem,
	.sm-py-1d5rem,
	.sm-pb-1d5rem {
		padding-bottom: 1.5rem !important;
	}

	.sm-p-2rem,
	.sm-py-2rem,
	.sm-pb-2rem {
		padding-bottom: 2rem !important;
	}

	.sm-p-3rem,
	.sm-py-3rem,
	.sm-pb-3rem {
		padding-bottom: 3rem !important;
	}

	/* left */
	.sm-p-0,
	.sm-px-0,
	.sm-pl-0 {
		padding-left: 0 !important;
	}

	.sm-p-d25rem,
	.sm-px-d25rem,
	.sm-pl-d25rem {
		padding-left: 0.25rem !important;
	}

	.sm-p-d5rem,
	.sm-px-d5rem,
	.sm-pl-d5rem {
		padding-left: 0.5rem !important;
	}

	.sm-p-d75rem,
	.sm-px-d75rem,
	.sm-pl-d75rem {
		padding-left: 0.75rem !important;
	}

	.sm-p-1rem,
	.sm-px-1rem,
	.sm-pl-1rem {
		padding-left: 1rem !important;
	}

	.sm-p-1d25rem,
	.sm-px-1d25rem,
	.sm-pl-1d25rem {
		padding-left: 1.25rem !important;
	}

	.sm-p-1d5rem,
	.sm-px-1d5rem,
	.sm-pl-1d5rem {
		padding-left: 1.5rem !important;
	}

	.sm-p-2rem,
	.sm-px-2rem,
	.sm-pl-2rem {
		padding-left: 2rem !important;
	}

	.sm-p-3rem,
	.sm-px-3rem,
	.sm-pl-3rem {
		padding-left: 3rem !important;
	}
}

@media (max-width: 576px) {

	/* top */
	.xs-p-0,
	.xs-py-0,
	.xs-pt-0 {
		padding-top: 0 !important;
	}

	.xs-p-d25rem,
	.xs-py-d25rem,
	.xs-pt-d25rem {
		padding-top: 0.25rem !important;
	}

	.xs-p-d5rem,
	.xs-py-d5rem,
	.xs-pt-d5rem {
		padding-top: 0.5rem !important;
	}

	.xs-p-d75rem,
	.xs-py-d75rem,
	.xs-pt-d75rem {
		padding-top: 0.75rem !important;
	}

	.xs-p-1rem,
	.xs-py-1rem,
	.xs-pt-1rem {
		padding-top: 1rem !important;
	}

	.xs-p-1d25rem,
	.xs-py-1d25rem,
	.xs-pt-1d25rem {
		padding-top: 1.25rem !important;
	}

	.xs-p-1d5rem,
	.xs-py-1d5rem,
	.xs-pt-1d5rem {
		padding-top: 1.5rem !important;
	}

	.xs-p-2rem,
	.xs-py-2rem,
	.xs-pt-2rem {
		padding-top: 2rem !important;
	}

	.xs-p-3rem,
	.xs-py-3rem,
	.xs-pt-3rem {
		padding-top: 3rem !important;
	}

	/* right */
	.xs-p-0,
	.xs-px-0,
	.xs-pr-0 {
		padding-right: 0 !important;
	}

	.xs-p-d25rem,
	.xs-px-d25rem,
	.xs-pr-d25rem {
		padding-right: 0.25rem !important;
	}

	.xs-p-d5rem,
	.xs-px-d5rem,
	.xs-pr-d5rem {
		padding-right: 0.5rem !important;
	}

	.xs-p-d75rem,
	.xs-px-d75rem,
	.xs-pr-d75rem {
		padding-right: 0.75rem !important;
	}

	.xs-p-1rem,
	.xs-px-1rem,
	.xs-pr-1rem {
		padding-right: 1rem !important;
	}

	.xs-p-1d25rem,
	.xs-px-1d25rem,
	.xs-pr-1d25rem {
		padding-right: 1.25rem !important;
	}

	.xs-p-1d5rem,
	.xs-px-1d5rem,
	.xs-pr-1d5rem {
		padding-right: 1.5rem !important;
	}

	.xs-p-2rem,
	.xs-px-2rem,
	.xs-pr-2rem {
		padding-right: 2rem !important;
	}

	.xs-p-3rem,
	.xs-px-3rem,
	.xs-pr-3rem {
		padding-right: 3rem !important;
	}

	/* bottom */
	.xs-p-0,
	.xs-py-0,
	.xs-pb-0 {
		padding-bottom: 0 !important;
	}

	.xs-p-d25rem,
	.xs-py-d25rem,
	.xs-pb-d25rem {
		padding-bottom: 0.25rem !important;
	}

	.xs-p-d5rem,
	.xs-py-d5rem,
	.xs-pb-d5rem {
		padding-bottom: 0.5rem !important;
	}

	.xs-p-d75rem,
	.xs-py-d75rem,
	.xs-pb-d75rem {
		padding-bottom: 0.75rem !important;
	}

	.xs-p-1rem,
	.xs-py-1rem,
	.xs-pb-1rem {
		padding-bottom: 1rem !important;
	}

	.xs-p-1d25rem,
	.xs-py-1d25rem,
	.xs-pb-1d25rem {
		padding-bottom: 1.25rem !important;
	}

	.xs-p-1d5rem,
	.xs-py-1d5rem,
	.xs-pb-1d5rem {
		padding-bottom: 1.5rem !important;
	}

	.xs-p-2rem,
	.xs-py-2rem,
	.xs-pb-2rem {
		padding-bottom: 2rem !important;
	}

	.xs-p-3rem,
	.xs-py-3rem,
	.xs-pb-3rem {
		padding-bottom: 3rem !important;
	}

	/* left */
	.xs-p-0,
	.xs-px-0,
	.xs-pl-0 {
		padding-left: 0 !important;
	}

	.xs-p-d25rem,
	.xs-px-d25rem,
	.xs-pl-d25rem {
		padding-left: 0.25rem !important;
	}

	.xs-p-d5rem,
	.xs-px-d5rem,
	.xs-pl-d5rem {
		padding-left: 0.5rem !important;
	}

	.xs-p-d75rem,
	.xs-px-d75rem,
	.xs-pl-d75rem {
		padding-left: 0.75rem !important;
	}

	.xs-p-1rem,
	.xs-px-1rem,
	.xs-pl-1rem {
		padding-left: 1rem !important;
	}

	.xs-p-1d25rem,
	.xs-px-1d25rem,
	.xs-pl-1d25rem {
		padding-left: 1.25rem !important;
	}

	.xs-p-1d5rem,
	.xs-px-1d5rem,
	.xs-pl-1d5rem {
		padding-left: 1.5rem !important;
	}

	.xs-p-2rem,
	.xs-px-2rem,
	.xs-pl-2rem {
		padding-left: 2rem !important;
	}

	.xs-p-3rem,
	.xs-px-3rem,
	.xs-pl-3rem {
		padding-left: 3rem !important;
	}
}

/* item-content */
.item-content {
	padding-top: 2.25rem;
	padding-bottom: 2.25rem;
}

@media (max-width: 1440px) {
	.item-content {
		padding-top: 2rem;
		padding-bottom: 2rem;
	}
}

@media (max-width: 1280px) {

	.item-content {
		padding-top: 1.75rem;
		padding-bottom: 1.75rem;
	}
}

@media (max-width: 1024px) {

	.item-content {
		padding-top: 1.5rem;
		padding-bottom: 1.5rem;
	}
}

@media (max-width: 768px) {

	.item-content {
		padding-top: 1.25rem;
		padding-bottom: 1.25rem;
	}
}

@media (max-width: 576px) {

	.item-content {
		padding-top: 1.5rem;
		padding-bottom: 1.5rem;
	}
}

/* ------------------------------
	**margin
	可寫 xl-m, lg-m, md-m ...... 由 js 控制
--------------------------- uu */
/* margin auto */
.m,
.mt,
.my {
	margin-top: 4rem !important;
}

.m,
.mr,
.mx {
	margin-right: 4rem !important;
}

.m,
.mb,
.my {
	margin-bottom: 4rem !important;
}

.m,
.ml,
.mx {
	margin-left: 4rem !important;
}

.child-section-mb>section {
	margin-bottom: 4rem !important;
}

.child-section-mb>section:last-child {
	margin-bottom: 0 !important;
}

/* top */
.m-auto,
.mt-auto,
.my-auto {
	margin-top: auto !important;
}

.m-0,
.mt-0,
.my-0 {
	margin-top: 0 !important;
}

.m-d25rem,
.mt-d25rem,
.my-d25rem {
	margin-top: 0.25rem !important;
}

.m-d5rem,
.mt-d5rem,
.my-d5rem {
	margin-top: 0.5rem !important;
}

.m-d75rem,
.mt-d75rem,
.my-d75rem {
	margin-top: 0.75rem !important;
}

.m-1rem,
.mt-1rem,
.my-1rem {
	margin-top: 1rem !important;
}

.m-2rem,
.mt-2rem,
.my-2rem {
	margin-top: 2rem !important;
}

.m-3rem,
.mt-3rem,
.my-3rem {
	margin-top: 3rem !important;
}

/* right */
.m-auto,
.mr-auto,
.mx-auto {
	margin-right: auto !important;
}

.m-0,
.mr-0,
.mx-0 {
	margin-right: 0 !important;
}

.m-d25rem,
.mr-d25rem,
.mx-d25rem {
	margin-right: 0.25rem !important;
}

.m-d5rem,
.mr-d5rem,
.mx-d5rem {
	margin-right: 0.5rem !important;
}

.m-d75rem,
.mr-d75rem,
.mx-d75rem {
	margin-right: 0.75rem !important;
}

.m-1rem,
.mr-1rem,
.mx-1rem {
	margin-right: 1rem !important;
}

.m-2rem,
.mr-2rem,
.mx-2rem {
	margin-right: 2rem !important;
}

.m-3rem,
.mr-3rem,
.mx-3rem {
	margin-right: 3rem !important;
}

/* bottom */
.m-auto,
.mb-auto,
.my-auto {
	margin-bottom: auto !important;
}

.m-0,
.mb-0,
.my-0 {
	margin-bottom: 0 !important;
}

.m-d25rem,
.mb-d25rem,
.my-d25rem {
	margin-bottom: 0.25rem !important;
}

.m-d5rem,
.mb-d5rem,
.my-d5rem,
.child-mb-d5rem>* {
	margin-bottom: 0.5rem !important;
}

.m-d75rem,
.mb-d75rem,
.my-d75rem,
.child-mb-d75rem>* {
	margin-bottom: 0.75rem !important;
}

.m-1rem,
.mb-1rem,
.my-1rem,
.child-mb-1rem>* {
	margin-bottom: 1rem !important;
}

.m-1d5rem,
.mb-1d5rem,
.my-1d5rem {
	margin-bottom: 1.5rem !important;
}

.m-2rem,
.mb-2rem,
.my-2rem {
	margin-bottom: 2rem !important;
}

.m-3rem,
.mb-3rem,
.my-3rem {
	margin-bottom: 3rem !important;
}

.m-3d5rem,
.mb-3d5rem,
.my-3d5rem {
	margin-bottom: 3.5rem !important;
}

/* left */
.m-auto,
.ml-auto,
.mx-auto {
	margin-left: auto !important;
}

.m-0,
.ml-0,
.mx-0 {
	margin-left: 0 !important;
}

.m-d25rem,
.ml-d25rem,
.mx-d25rem {
	margin-left: 0.25rem !important;
}

.m-d5rem,
.ml-d5rem,
.mx-d5rem {
	margin-left: 0.5rem !important;
}

.m-d75rem,
.ml-d75rem,
.mx-d75rem {
	margin-left: 0.75rem !important;
}

.m-1rem,
.ml-1rem,
.mx-1rem {
	margin-left: 1rem !important;
}

.m-2rem,
.ml-2rem,
.mx-2rem {
	margin-left: 2rem !important;
}

.m-3rem,
.ml-3rem,
.mx-3rem {
	margin-left: 3rem !important;
}

/* margin auto */
@media (max-width: 1440px) {

	.m,
	.mt,
	.my,
	.xl-m,
	.xl-mt,
	.xl-my {
		margin-top: 3.5rem !important;
	}

	.m,
	.mr,
	.mx,
	.xl-m,
	.xl-mr,
	.xl-mx {
		margin-right: 3.5rem !important;
	}

	.m,
	.mb,
	.my,
	.xl-m,
	.xl-mb,
	.xl-my {
		margin-bottom: 3.5rem !important;
	}

	.m,
	.ml,
	.mx,
	.xl-m,
	.xl-ml,
	.xl-mx {
		margin-left: 3.5rem !important;
	}

	.child-section-mb>section {
		margin-bottom: 3.5rem !important;
	}
}

@media (max-width: 1280px) {

	.m,
	.mt,
	.my,
	.xl-m,
	.xl-mt,
	.xl-my,
	.lg-m,
	.lg-mt,
	.lg-my {
		margin-top: 3rem !important;
	}

	.m,
	.mr,
	.mx,
	.xl-m,
	.xl-mr,
	.xl-mx,
	.lg-m,
	.lg-mr,
	.lg-mx {
		margin-right: 3rem !important;
	}

	.m,
	.mb,
	.my,
	.xl-m,
	.xl-mb,
	.xl-my,
	.lg-m,
	.lg-mb,
	.lg-my {
		margin-bottom: 3rem !important;
	}

	.m,
	.ml,
	.mx,
	.xl-m,
	.xl-ml,
	.xl-mx,
	.lg-m,
	.lg-ml,
	.lg-mx {
		margin-left: 3rem !important;
	}

	.child-section-mb>section {
		margin-bottom: 3rem !important;
	}
}

@media (max-width: 1024px) {

	.m,
	.mt,
	.my,
	.xl-m,
	.xl-mt,
	.xl-my,
	.lg-m,
	.lg-mt,
	.lg-my,
	.md-m,
	.md-mt,
	.md-my {
		margin-top: 2.5rem !important;
	}

	.m,
	.mr,
	.mx,
	.xl-m,
	.xl-mr,
	.xl-mx,
	.lg-m,
	.lg-mr,
	.lg-mx,
	.md-m,
	.md-mr,
	.md-mx {
		margin-right: 2.5rem !important;
	}

	.m,
	.mb,
	.my,
	.xl-m,
	.xl-mb,
	.xl-my,
	.lg-m,
	.lg-mb,
	.lg-my,
	.md-m,
	.md-mb,
	.md-my {
		margin-bottom: 2.5rem !important;
	}

	.m,
	.ml,
	.mx,
	.xl-m,
	.xl-ml,
	.xl-mx,
	.lg-m,
	.lg-ml,
	.lg-mx,
	.md-m,
	.md-ml,
	.md-mx {
		margin-left: 2.5rem !important;
	}

	.child-section-mb>section {
		margin-bottom: 2.5rem !important;
	}
}

@media (max-width: 768px) {

	.m,
	.mt,
	.my,
	.xl-m,
	.xl-mt,
	.xl-my,
	.lg-m,
	.lg-mt,
	.lg-my,
	.md-m,
	.md-mt,
	.md-my,
	.sm-m,
	.sm-mt,
	.sm-my {
		margin-top: 3rem !important;
	}

	.m,
	.mr,
	.mx,
	.xl-m,
	.xl-mr,
	.xl-mx,
	.lg-m,
	.lg-mr,
	.lg-mx,
	.md-m,
	.md-mr,
	.md-mx,
	.sm-m,
	.sm-mr,
	.sm-mx {
		margin-right: 3rem !important;
	}

	.m,
	.mb,
	.my,
	.xl-m,
	.xl-mb,
	.xl-my,
	.lg-m,
	.lg-mb,
	.lg-my,
	.md-m,
	.md-mb,
	.md-my,
	.sm-m,
	.sm-mb,
	.sm-my {
		margin-bottom: 3rem !important;
	}

	.m,
	.ml,
	.mx,
	.xl-m,
	.xl-ml,
	.xl-mx,
	.lg-m,
	.lg-ml,
	.lg-mx,
	.md-m,
	.md-ml,
	.md-mx,
	.sm-m,
	.sm-ml,
	.sm-mx {
		margin-left: 3rem !important;
	}

	.child-section-mb>section {
		margin-bottom: 3rem !important;
	}
}

@media (max-width: 576px) {

	.m,
	.mt,
	.my,
	.xl-m,
	.xl-mt,
	.xl-my,
	.lg-m,
	.lg-mt,
	.lg-my,
	.md-m,
	.md-mt,
	.md-my,
	.sm-m,
	.sm-mt,
	.sm-my,
	.xs-m,
	.xs-mt,
	.xs-my {
		margin-top: 2.5rem !important;
	}

	.m,
	.mr,
	.mx,
	.xl-m,
	.xl-mr,
	.xl-mx,
	.lg-m,
	.lg-mr,
	.lg-mx,
	.md-m,
	.md-mr,
	.md-mx,
	.sm-m,
	.sm-mr,
	.sm-mx,
	.xs-m,
	.xs-mr,
	.xs-mx {
		margin-right: 2.5rem !important;
	}

	.m,
	.mb,
	.my,
	.xl-m,
	.xl-mb,
	.xl-my,
	.lg-m,
	.lg-mb,
	.lg-my,
	.md-m,
	.md-mb,
	.md-my,
	.sm-m,
	.sm-mb,
	.sm-my,
	.xs-m,
	.xs-mb,
	.xs-my {
		margin-bottom: 2.5rem !important;
	}

	.m,
	.ml,
	.mx,
	.xl-m,
	.xl-ml,
	.xl-mx,
	.lg-m,
	.lg-ml,
	.lg-mx,
	.md-m,
	.md-ml,
	.md-mx,
	.sm-m,
	.sm-ml,
	.sm-mx,
	.xs-m,
	.xs-ml,
	.xs-mx {
		margin-left: 2.5rem !important;
	}

	.child-section-mb>section {
		margin-bottom: 2.5rem !important;
	}
}

/* margin top right bottom left */
@media (max-width: 1440px) {

	/* top */
	.xl-m-auto,
	.xl-mt-auto,
	.xl-my-auto {
		margin-top: auto !important;
	}

	.xl-m-0,
	.xl-mt-0,
	.xl-my-0 {
		margin-top: 0 !important;
	}

	.xl-m-d25rem,
	.xl-mt-d25rem,
	.xl-my-d25rem {
		margin-top: 0.25rem !important;
	}

	.xl-m-d5rem,
	.xl-mt-d5rem,
	.xl-my-d5rem {
		margin-top: 0.5rem !important;
	}

	.xl-m-d75rem,
	.xl-mt-d75rem,
	.xl-my-d75rem {
		margin-top: 0.75rem !important;
	}

	.xl-m-1rem,
	.xl-mt-1rem,
	.xl-my-1rem {
		margin-top: 1rem !important;
	}

	.xl-m-2rem,
	.xl-mt-2rem,
	.xl-my-2rem {
		margin-top: 2rem !important;
	}

	.xl-m-3rem,
	.xl-mt-3rem,
	.xl-my-3rem {
		margin-top: 3rem !important;
	}

	/* right */
	.xl-m-auto,
	.xl-mr-auto,
	.xl-mx-auto {
		margin-right: auto !important;
	}

	.xl-m-0,
	.xl-mr-0,
	.xl-mx-0 {
		margin-right: 0 !important;
	}

	.xl-m-d25rem,
	.xl-mr-d25rem,
	.xl-mx-d25rem {
		margin-right: 0.25rem !important;
	}

	.xl-m-d5rem,
	.xl-mr-d5rem,
	.xl-mx-d5rem {
		margin-right: 0.5rem !important;
	}

	.xl-m-d75rem,
	.xl-mr-d75rem,
	.xl-mx-d75rem {
		margin-right: 0.75rem !important;
	}

	.xl-m-1rem,
	.xl-mr-1rem,
	.xl-mx-1rem {
		margin-right: 1rem !important;
	}

	.xl-m-2rem,
	.xl-mr-2rem,
	.xl-mx-2rem {
		margin-right: 2rem !important;
	}

	.xl-m-3rem,
	.xl-mr-3rem,
	.xl-mx-3rem {
		margin-right: 3rem !important;
	}

	/* bottom */
	.xl-m-auto,
	.xl-mb-auto,
	.xl-my-auto {
		margin-bottom: auto !important;
	}

	.xl-m-0,
	.xl-mb-0,
	.xl-my-0 {
		margin-bottom: 0 !important;
	}

	.xl-m-d25rem,
	.xl-mb-d25rem,
	.xl-my-d25rem {
		margin-bottom: 0.25rem !important;
	}

	.xl-m-d5rem,
	.xl-mb-d5rem,
	.xl-my-d5rem {
		margin-bottom: 0.5rem !important;
	}

	.xl-m-d75rem,
	.xl-mb-d75rem,
	.xl-my-d75rem {
		margin-bottom: 0.75rem !important;
	}

	.xl-m-1rem,
	.xl-mb-1rem,
	.xl-my-1rem {
		margin-bottom: 1rem !important;
	}

	.xl-m-1d5rem,
	.xl-mb-1d5rem,
	.xl-my-1d5rem {
		margin-bottom: 1.5rem !important;
	}

	.xl-m-2rem,
	.xl-mb-2rem,
	.xl-my-2rem {
		margin-bottom: 2rem !important;
	}

	.xl-m-3rem,
	.xl-mb-3rem,
	.xl-my-3rem {
		margin-bottom: 3rem !important;
	}

	/* left */
	.xl-m-auto,
	.xl-ml-auto,
	.xl-mx-auto {
		margin-left: auto !important;
	}

	.xl-m-0,
	.xl-ml-0,
	.xl-mx-0 {
		margin-left: 0 !important;
	}

	.xl-m-d25rem,
	.xl-ml-d25rem,
	.xl-mx-d25rem {
		margin-left: 0.25rem !important;
	}

	.xl-m-d5rem,
	.xl-ml-d5rem,
	.xl-mx-d5rem {
		margin-left: 0.5rem !important;
	}

	.xl-m-d75rem,
	.xl-ml-d75rem,
	.xl-mx-d75rem {
		margin-left: 0.75rem !important;
	}

	.xl-m-1rem,
	.xl-ml-1rem,
	.xl-mx-1rem {
		margin-left: 1rem !important;
	}

	.xl-m-2rem,
	.xl-ml-2rem,
	.xl-mx-2rem {
		margin-left: 2rem !important;
	}

	.xl-m-3rem,
	.xl-ml-3rem,
	.xl-mx-3rem {
		margin-left: 3rem !important;
	}
}

@media (max-width: 1280px) {

	/* top */
	.lg-m-auto,
	.lg-mt-auto,
	.lg-my-auto {
		margin-top: auto !important;
	}

	.lg-m-0,
	.lg-mt-0,
	.lg-my-0 {
		margin-top: 0 !important;
	}

	.lg-m-d25rem,
	.lg-mt-d25rem,
	.lg-my-d25rem {
		margin-top: 0.25rem !important;
	}

	.lg-m-d5rem,
	.lg-mt-d5rem,
	.lg-my-d5rem {
		margin-top: 0.5rem !important;
	}

	.lg-m-d75rem,
	.lg-mt-d75rem,
	.lg-my-d75rem {
		margin-top: 0.75rem !important;
	}

	.lg-m-1rem,
	.lg-mt-1rem,
	.lg-my-1rem {
		margin-top: 1rem !important;
	}

	.lg-m-2rem,
	.lg-mt-2rem,
	.lg-my-2rem {
		margin-top: 2rem !important;
	}

	.lg-m-3rem,
	.lg-mt-3rem,
	.lg-my-3rem {
		margin-top: 3rem !important;
	}

	/* right */
	.lg-m-auto,
	.lg-mr-auto,
	.lg-mx-auto {
		margin-right: auto !important;
	}

	.lg-m-0,
	.lg-mr-0,
	.lg-mx-0 {
		margin-right: 0 !important;
	}

	.lg-m-d25rem,
	.lg-mr-d25rem,
	.lg-mx-d25rem {
		margin-right: 0.25rem !important;
	}

	.lg-m-d5rem,
	.lg-mr-d5rem,
	.lg-mx-d5rem {
		margin-right: 0.5rem !important;
	}

	.lg-m-d75rem,
	.lg-mr-d75rem,
	.lg-mx-d75rem {
		margin-right: 0.75rem !important;
	}

	.lg-m-1rem,
	.lg-mr-1rem,
	.lg-mx-1rem {
		margin-right: 1rem !important;
	}

	.lg-m-2rem,
	.lg-mr-2rem,
	.lg-mx-2rem {
		margin-right: 2rem !important;
	}

	.lg-m-3rem,
	.lg-mr-3rem,
	.lg-mx-3rem {
		margin-right: 3rem !important;
	}

	/* bottom */
	.lg-m-auto,
	.lg-mb-auto,
	.lg-my-auto {
		margin-bottom: auto !important;
	}

	.lg-m-0,
	.lg-mb-0,
	.lg-my-0 {
		margin-bottom: 0 !important;
	}

	.lg-m-d25rem,
	.lg-mb-d25rem,
	.lg-my-d25rem {
		margin-bottom: 0.25rem !important;
	}

	.lg-m-d5rem,
	.lg-mb-d5rem,
	.lg-my-d5rem {
		margin-bottom: 0.5rem !important;
	}

	.lg-m-d75rem,
	.lg-mb-d75rem,
	.lg-my-d75rem {
		margin-bottom: 0.75rem !important;
	}

	.lg-m-1rem,
	.lg-mb-1rem,
	.lg-my-1rem {
		margin-bottom: 1rem !important;
	}

	.lg-m-1d5rem,
	.lg-mb-1d5rem,
	.lg-my-1d5rem {
		margin-bottom: 1.5rem !important;
	}

	.lg-m-2rem,
	.lg-mb-2rem,
	.lg-my-2rem {
		margin-bottom: 2rem !important;
	}

	.lg-m-3rem,
	.lg-mb-3rem,
	.lg-my-3rem {
		margin-bottom: 3rem !important;
	}

	/* left */
	.lg-m-auto,
	.lg-ml-auto,
	.lg-mx-auto {
		margin-left: auto !important;
	}

	.lg-m-0,
	.lg-ml-0,
	.lg-mx-0 {
		margin-left: 0 !important;
	}

	.lg-m-d25rem,
	.lg-ml-d25rem,
	.lg-mx-d25rem {
		margin-left: 0.25rem !important;
	}

	.lg-m-d5rem,
	.lg-ml-d5rem,
	.lg-mx-d5rem {
		margin-left: 0.5rem !important;
	}

	.lg-m-d75rem,
	.lg-ml-d75rem,
	.lg-mx-d75rem {
		margin-left: 0.75rem !important;
	}

	.lg-m-1rem,
	.lg-ml-1rem,
	.lg-mx-1rem {
		margin-left: 1rem !important;
	}

	.lg-m-2rem,
	.lg-ml-2rem,
	.lg-mx-2rem {
		margin-left: 2rem !important;
	}

	.lg-m-3rem,
	.lg-ml-3rem,
	.lg-mx-3rem {
		margin-left: 3rem !important;
	}
}

@media (max-width: 1024px) {

	/* top */
	.md-m-auto,
	.md-mt-auto,
	.md-my-auto {
		margin-top: auto !important;
	}

	.md-m-0,
	.md-mt-0,
	.md-my-0 {
		margin-top: 0 !important;
	}

	.md-m-d25rem,
	.md-mt-d25rem,
	.md-my-d25rem {
		margin-top: 0.25rem !important;
	}

	.md-m-d5rem,
	.md-mt-d5rem,
	.md-my-d5rem {
		margin-top: 0.5rem !important;
	}

	.md-m-d75rem,
	.md-mt-d75rem,
	.md-my-d75rem {
		margin-top: 0.75rem !important;
	}

	.md-m-1rem,
	.md-mt-1rem,
	.md-my-1rem {
		margin-top: 1rem !important;
	}

	.md-m-2rem,
	.md-mt-2rem,
	.md-my-2rem {
		margin-top: 2rem !important;
	}

	.md-m-3rem,
	.md-mt-3rem,
	.md-my-3rem {
		margin-top: 3rem !important;
	}

	/* right */
	.md-m-auto,
	.md-mr-auto,
	.md-mx-auto {
		margin-right: auto !important;
	}

	.md-m-0,
	.md-mr-0,
	.md-mx-0 {
		margin-right: 0 !important;
	}

	.md-m-d25rem,
	.md-mr-d25rem,
	.md-mx-d25rem {
		margin-right: 0.25rem !important;
	}

	.md-m-d5rem,
	.md-mr-d5rem,
	.md-mx-d5rem {
		margin-right: 0.5rem !important;
	}

	.md-m-d75rem,
	.md-mr-d75rem,
	.md-mx-d75rem {
		margin-right: 0.75rem !important;
	}

	.md-m-1rem,
	.md-mr-1rem,
	.md-mx-1rem {
		margin-right: 1rem !important;
	}

	.md-m-2rem,
	.md-mr-2rem,
	.md-mx-2rem {
		margin-right: 2rem !important;
	}

	.md-m-3rem,
	.md-mr-3rem,
	.md-mx-3rem {
		margin-right: 3rem !important;
	}

	/* bottom */
	.md-m-auto,
	.md-mb-auto,
	.md-my-auto {
		margin-bottom: auto !important;
	}

	.md-m-0,
	.md-mb-0,
	.md-my-0 {
		margin-bottom: 0 !important;
	}

	.md-m-d25rem,
	.md-mb-d25rem,
	.md-my-d25rem {
		margin-bottom: 0.25rem !important;
	}

	.md-m-d5rem,
	.md-mb-d5rem,
	.md-my-d5rem {
		margin-bottom: 0.5rem !important;
	}

	.md-m-d75rem,
	.md-mb-d75rem,
	.md-my-d75rem {
		margin-bottom: 0.75rem !important;
	}

	.md-m-1rem,
	.md-mb-1rem,
	.md-my-1rem {
		margin-bottom: 1rem !important;
	}

	.md-m-1d5rem,
	.md-mb-1d5rem,
	.md-my-1d5rem {
		margin-bottom: 1.5rem !important;
	}

	.md-m-2rem,
	.md-mb-2rem,
	.md-my-2rem {
		margin-bottom: 2rem !important;
	}

	.md-m-3rem,
	.md-mb-3rem,
	.md-my-3rem {
		margin-bottom: 3rem !important;
	}

	/* left */
	.md-m-auto,
	.md-ml-auto,
	.md-mx-auto {
		margin-left: auto !important;
	}

	.md-m-0,
	.md-ml-0,
	.md-mx-0 {
		margin-left: 0 !important;
	}

	.md-m-d25rem,
	.md-ml-d25rem,
	.md-mx-d25rem {
		margin-left: 0.25rem !important;
	}

	.md-m-d5rem,
	.md-ml-d5rem,
	.md-mx-d5rem {
		margin-left: 0.5rem !important;
	}

	.md-m-d75rem,
	.md-ml-d75rem,
	.md-mx-d75rem {
		margin-left: 0.75rem !important;
	}

	.md-m-1rem,
	.md-ml-1rem,
	.md-mx-1rem {
		margin-left: 1rem !important;
	}

	.md-m-2rem,
	.md-ml-2rem,
	.md-mx-2rem {
		margin-left: 2rem !important;
	}

	.md-m-3rem,
	.md-ml-3rem,
	.md-mx-3rem {
		margin-left: 3rem !important;
	}
}

@media (max-width: 768px) {

	/* top */
	.sm-m-auto,
	.sm-mt-auto,
	.sm-my-auto {
		margin-top: auto !important;
	}

	.sm-m-0,
	.sm-mt-0,
	.sm-my-0 {
		margin-top: 0 !important;
	}

	.sm-m-d25rem,
	.sm-mt-d25rem,
	.sm-my-d25rem {
		margin-top: 0.25rem !important;
	}

	.sm-m-d5rem,
	.sm-mt-d5rem,
	.sm-my-d5rem {
		margin-top: 0.5rem !important;
	}

	.sm-m-d75rem,
	.sm-mt-d75rem,
	.sm-my-d75rem {
		margin-top: 0.75rem !important;
	}

	.sm-m-1rem,
	.sm-mt-1rem,
	.sm-my-1rem {
		margin-top: 1rem !important;
	}

	.sm-m-2rem,
	.sm-mt-2rem,
	.sm-my-2rem {
		margin-top: 2rem !important;
	}

	.sm-m-3rem,
	.sm-mt-3rem,
	.sm-my-3rem {
		margin-top: 3rem !important;
	}

	/* right */
	.sm-m-auto,
	.sm-mr-auto,
	.sm-mx-auto {
		margin-right: auto !important;
	}

	.sm-m-0,
	.sm-mr-0,
	.sm-mx-0 {
		margin-right: 0 !important;
	}

	.sm-m-d25rem,
	.sm-mr-d25rem,
	.sm-mx-d25rem {
		margin-right: 0.25rem !important;
	}

	.sm-m-d5rem,
	.sm-mr-d5rem,
	.sm-mx-d5rem {
		margin-right: 0.5rem !important;
	}

	.sm-m-d75rem,
	.sm-mr-d75rem,
	.sm-mx-d75rem {
		margin-right: 0.75rem !important;
	}

	.sm-m-1rem,
	.sm-mr-1rem,
	.sm-mx-1rem {
		margin-right: 1rem !important;
	}

	.sm-m-2rem,
	.sm-mr-2rem,
	.sm-mx-2rem {
		margin-right: 2rem !important;
	}

	.sm-m-3rem,
	.sm-mr-3rem,
	.sm-mx-3rem {
		margin-right: 3rem !important;
	}

	/* bottom */
	.sm-m-auto,
	.sm-mb-auto,
	.sm-my-auto {
		margin-bottom: auto !important;
	}

	.sm-m-0,
	.sm-mb-0,
	.sm-my-0 {
		margin-bottom: 0 !important;
	}

	.sm-m-d25rem,
	.sm-mb-d25rem,
	.sm-my-d25rem {
		margin-bottom: 0.25rem !important;
	}

	.sm-m-d5rem,
	.sm-mb-d5rem,
	.sm-my-d5rem {
		margin-bottom: 0.5rem !important;
	}

	.sm-m-d75rem,
	.sm-mb-d75rem,
	.sm-my-d75rem {
		margin-bottom: 0.75rem !important;
	}

	.sm-m-1rem,
	.sm-mb-1rem,
	.sm-my-1rem {
		margin-bottom: 1rem !important;
	}

	.sm-m-1d5rem,
	.sm-mb-1d5rem,
	.sm-my-1d5rem {
		margin-bottom: 1.5rem !important;
	}

	.sm-m-2rem,
	.sm-mb-2rem,
	.sm-my-2rem {
		margin-bottom: 2rem !important;
	}

	.sm-m-3rem,
	.sm-mb-3rem,
	.sm-my-3rem {
		margin-bottom: 3rem !important;
	}

	/* left */
	.sm-m-auto,
	.sm-ml-auto,
	.sm-mx-auto {
		margin-left: auto !important;
	}

	.sm-m-0,
	.sm-ml-0,
	.sm-mx-0 {
		margin-left: 0 !important;
	}

	.sm-m-d25rem,
	.sm-ml-d25rem,
	.sm-mx-d25rem {
		margin-left: 0.25rem !important;
	}

	.sm-m-d5rem,
	.sm-ml-d5rem,
	.sm-mx-d5rem {
		margin-left: 0.5rem !important;
	}

	.sm-m-d75rem,
	.sm-ml-d75rem,
	.sm-mx-d75rem {
		margin-left: 0.75rem !important;
	}

	.sm-m-1rem,
	.sm-ml-1rem,
	.sm-mx-1rem {
		margin-left: 1rem !important;
	}

	.sm-m-2rem,
	.sm-ml-2rem,
	.sm-mx-2rem {
		margin-left: 2rem !important;
	}

	.sm-m-3rem,
	.sm-ml-3rem,
	.sm-mx-3rem {
		margin-left: 3rem !important;
	}
}

@media (max-width: 576px) {

	/* top */
	.xs-m-auto,
	.xs-mt-auto,
	.xs-my-auto {
		margin-top: auto !important;
	}

	.xs-m-0,
	.xs-mt-0,
	.xs-my-0 {
		margin-top: 0 !important;
	}

	.xs-m-d25rem,
	.xs-mt-d25rem,
	.xs-my-d25rem {
		margin-top: 0.25rem !important;
	}

	.xs-m-d5rem,
	.xs-mt-d5rem,
	.xs-my-d5rem {
		margin-top: 0.5rem !important;
	}

	.xs-m-d75rem,
	.xs-mt-d75rem,
	.xs-my-d75rem {
		margin-top: 0.75rem !important;
	}

	.xs-m-1rem,
	.xs-mt-1rem,
	.xs-my-1rem {
		margin-top: 1rem !important;
	}

	.xs-m-2rem,
	.xs-mt-2rem,
	.xs-my-2rem {
		margin-top: 2rem !important;
	}

	.xs-m-3rem,
	.xs-mt-3rem,
	.xs-my-3rem {
		margin-top: 3rem !important;
	}

	/* right */
	.xs-m-auto,
	.xs-mr-auto,
	.xs-mx-auto {
		margin-right: auto !important;
	}

	.xs-m-0,
	.xs-mr-0,
	.xs-mx-0 {
		margin-right: 0 !important;
	}

	.xs-m-d25rem,
	.xs-mr-d25rem,
	.xs-mx-d25rem {
		margin-right: 0.25rem !important;
	}

	.xs-m-d5rem,
	.xs-mr-d5rem,
	.xs-mx-d5rem {
		margin-right: 0.5rem !important;
	}

	.xs-m-d75rem,
	.xs-mr-d75rem,
	.xs-mx-d75rem {
		margin-right: 0.75rem !important;
	}

	.xs-m-1rem,
	.xs-mr-1rem,
	.xs-mx-1rem {
		margin-right: 1rem !important;
	}

	.xs-m-2rem,
	.xs-mr-2rem,
	.xs-mx-2rem {
		margin-right: 2rem !important;
	}

	.xs-m-3rem,
	.xs-mr-3rem,
	.xs-mx-3rem {
		margin-right: 3rem !important;
	}

	/* bottom */
	.xs-m-auto,
	.xs-mb-auto,
	.xs-my-auto {
		margin-bottom: auto !important;
	}

	.xs-m-0,
	.xs-mb-0,
	.xs-my-0 {
		margin-bottom: 0 !important;
	}

	.xs-m-d25rem,
	.xs-mb-d25rem,
	.xs-my-d25rem {
		margin-bottom: 0.25rem !important;
	}

	.xs-m-d5rem,
	.xs-mb-d5rem,
	.xs-my-d5rem {
		margin-bottom: 0.5rem !important;
	}

	.xs-m-d75rem,
	.xs-mb-d75rem,
	.xs-my-d75rem {
		margin-bottom: 0.75rem !important;
	}

	.xs-m-1rem,
	.xs-mb-1rem,
	.xs-my-1rem {
		margin-bottom: 1rem !important;
	}

	.xs-m-1d5rem,
	.xs-mb-1d5rem,
	.xs-my-1d5rem {
		margin-bottom: 1.5rem !important;
	}

	.xs-m-2rem,
	.xs-mb-2rem,
	.xs-my-2rem {
		margin-bottom: 2rem !important;
	}

	.xs-m-3rem,
	.xs-mb-3rem,
	.xs-my-3rem {
		margin-bottom: 3rem !important;
	}

	/* left */
	.xs-m-auto,
	.xs-ml-auto,
	.xs-mx-auto {
		margin-left: auto !important;
	}

	.xs-m-0,
	.xs-ml-0,
	.xs-mx-0 {
		margin-left: 0 !important;
	}

	.xs-m-d25rem,
	.xs-ml-d25rem,
	.xs-mx-d25rem {
		margin-left: 0.25rem !important;
	}

	.xs-m-d5rem,
	.xs-ml-d5rem,
	.xs-mx-d5rem {
		margin-left: 0.5rem !important;
	}

	.xs-m-d75rem,
	.xs-ml-d75rem,
	.xs-mx-d75rem {
		margin-left: 0.75rem !important;
	}

	.xs-m-1rem,
	.xs-ml-1rem,
	.xs-mx-1rem {
		margin-left: 1rem !important;
	}

	.xs-m-2rem,
	.xs-ml-2rem,
	.xs-mx-2rem {
		margin-left: 2rem !important;
	}

	.xs-m-3rem,
	.xs-ml-3rem,
	.xs-mx-3rem {
		margin-left: 3rem !important;
	}
}

/* ------------------------------
	**opacity
--------------------------- uu */
.opacity-1 {
	opacity: 0.1;
}

.opacity-2 {
	opacity: 0.2;
}

.opacity-3 {
	opacity: 0.3;
}

.opacity-4 {
	opacity: 0.4;
}

.opacity-5 {
	opacity: 0.5;
}

.opacity-6 {
	opacity: 0.6;
}

.opacity-7 {
	opacity: 0.7;
}

.opacity-8 {
	opacity: 0.8;
}

.opacity-9 {
	opacity: 0.9;
}

/* ------------------------------
	**toolbar
--------------------------- uu */
.toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-start;
	margin-bottom: .5rem;
}

.toolbar.fx-col {
	align-items: start;
}

.toolbar-group {
	display: flex;
	align-items: center;
}

.toolbar-group .toolbar-label {
	padding-top: 0.5rem;
	padding-right: 1rem;
	padding-bottom: 0.5rem;
	margin-top: 0;
	margin-bottom: 0;
	font-size: inherit;
}

.toolbar>.toolbar-group:not([class*=gap-]) {
    margin: 0 0.5rem;
}

/* ------------------------------
	**form **select
--------------------------- uu */
form {
	-webkit-margin-after: 0;
	margin-block-end: 0;
}

select {
	border-width: 0;
	white-space: pre-wrap;
}


.form-md {
	min-width: 360px;
}

@media (max-width: 576px) {
	.form-md {
		min-width: 100%;
	}
}

.form-group {
	line-height: 1.25;
}

.form-title {
	margin-bottom: 1rem;
	font-weight: 600;
}

.form-label {
	display: block;
	width: 100%;
	border: 0 solid transparent;
	margin-bottom: 0.5rem;
	font-size: 0.75rem;
	font-weight: 600;
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	color: rgba(0, 0, 0, 0.6);
}

[class*="fx-"][class*="gap"][class*="p5rem"] .form-label {
	width: calc(100% - 0.5rem);
}

[class*="fx-"][class*="gap"][class*="p75rem"] .form-label {
	width: calc(100% - 0.75rem);
}

[class*="fx-"][class*="gap"][class*="1rem"] .form-label {
	width: calc(100% - 1rem);
}

[class*="fx-"][class*="gap"][class*="1p5rem"] .form-label {
	width: calc(100% - 1.5rem);
}

[class*="fx-"][class*="gap"][class*="2rem"] .form-label {
	width: calc(100% - 2rem);
}

[class*="fx-"][class*="gap"][class*="2.5rem"] .form-label {
	width: calc(100% - 2.5rem);
}

[class*="fx-"][class*="gap"][class*="3rem"] .form-label {
	width: calc(100% - 3rem);
}

.form-text+.form-text {
	margin-top: 0.5rem;
}

.form-group.row .form-label {
	padding-right: 1rem;
}

.form-input,
.form-select,
.dropdown .dropdown-toggle {
	display: block;
	box-sizing: border-box;
	width: 100%;
	height: auto;
	padding: 0.5rem 0.75rem;
	border: 0 solid transparent;
	border-radius: 0.5rem;
	background-color: transparent;
	line-height: 1.25;
	resize: vertical;
	box-shadow: inset 0 0 0 1px rgba(200, 200, 200, 1);
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	transition: border 0.3s, background-color 0.3s, box-shadow 0.3s;
}

.form-select,
.dropdown .dropdown-toggle {
	padding-right: 2rem;
	background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3e%3cpath fill='none' fill-opacity='0' stroke='%23000000' stroke-opacity='0.9' stroke-miterlimit='10' stroke-width='1px' d='M17,10l-5,4l-5-4'/%3e%3c/svg%3e") transparent no-repeat right 0.25rem center;
}

:is(.form-select, .dropdown .dropdown-toggle).form-clear {
	padding-right: 1.75rem;
	padding-left: 0;
	border-radius: unset;
	background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3e%3cpath fill='none' fill-opacity='0' stroke='%23000000' stroke-opacity='0.9' stroke-miterlimit='10' stroke-width='1px' d='M17,10l-5,4l-5-4'/%3e%3c/svg%3e") transparent no-repeat right center;
	box-shadow: none;
}

textarea.form-input {
	min-height: 36px;
}

.form-group.row .form-input,
.form-group.row .form-select {
	display: inline-block;
	width: auto;
}

.form-message {
	display: block;
	margin-top: 0.25rem;
	line-height: 1.25;
}

.form-message-error {
	color: #dc3545;
}

.form-group.row .form-message {
	padding-left: 0.5rem;
	padding-top: 0.625rem;
	padding-bottom: 0.625rem;
	margin-top: 0;
}

.form-group.row .form-message[class*="fx-offset"] {
	padding: 0;
	margin-top: 0.25rem;
}

/* form file */
/* FF, IE7+, chrome (except button) */
input[type=file],
/* chromes and blink button */
input[type=file]::-webkit-file-upload-button {
	cursor: pointer;
}

.form-file {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	height: auto;
}

.form-file-text {
	display: flex;
	align-items: center;
	position: relative;
}

.form-file-label {
	position: relative;
	width: 100%;
	margin: 0;
	background-color: transparent;
	display: block;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.form-file-label:after {
	content: none;
}

.form-file-button {
	position: relative;
}

.form-file-input {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
}

/* hover */
.form-input:not([readonly], [disabled]):hover,
.form-select:not([readonly], [disabled]):hover,
.dropdown .dropdown-toggle:not([readonly], [disabled]):hover {
	box-shadow: inset 0 0 0 1px hsl(201deg 100% 35% / 0.3), 0 0 0 0.25rem hsl(201deg 100% 35% / 0.1);
}

.form-clear.form-input:not([readonly], [disabled]):hover,
.form-clear.form-select:not([readonly], [disabled]):hover {
	box-shadow: none;
}

/* focus */
.form-input:not([readonly], [disabled]):focus,
.form-input:not([readonly], [disabled]).focus,
.form-select:not([readonly], [disabled]):focus,
.form-select:not([readonly], [disabled]).focus,
.dropdown .dropdown-toggle:not([readonly], [disabled]):focus,
.dropdown .dropdown-toggle:not([readonly], [disabled]).focus {
	box-shadow: inset 0 0 0 1px rgba(16, 89, 250, 0.6), 0 0 0 0.25rem hsl(201deg 100% 35% / 0.3);
}

.form-clear.form-input:not([readonly], [disabled]):focus,
.form-clear.form-input:not([readonly], [disabled]).focus,
.form-clear.form-select:not([readonly], [disabled]):focus,
.form-clear.form-select:not([readonly], [disabled]).focus {
	box-shadow: none;
}

/* readonly */
.form-input[readonly],
.form-select[readonly] {
	background: #eee;
	resize: none;
}

.form-select[readonly] {
	cursor: auto;
	pointer-events: none;
}

/* disabled */
.form-input:disabled {
	background-color: transparent;
	opacity: .6;
	pointer-events: none;
	resize: none;
}

.form-select:disabled {
	background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3e%3cpath fill='none' fill-opacity='0' stroke='%23000000' stroke-opacity='0.6' stroke-miterlimit='10' stroke-width='1px' d='M17,10l-5,4l-5-4'/%3e%3c/svg%3e") transparent no-repeat right 0.25rem center;
	opacity: .6;
	pointer-events: none;
}

.form-label[disabled],
.form-message[disabled] {
	opacity: .3;
}

/* form-label-inside */
.form-label-inside {
	position: relative;
}

.form-label-inside .form-icon,
.form-label-inside .form-label {
	position: absolute;
	/*top: 0;*/
	/*bottom: 0;*/
	padding: 1.125rem 0.75rem;
	border: 0;
	margin: unset;
	font-size: 1rem;
	line-height: 1.25;
	pointer-events: none;
	transition-timing-function: ease-in;
	transition-duration: 0.15s;
	transition: 0.15s ease-in;
}

.form-select-group.form-label-inside .form-label {
	padding-right: 2rem;
}

.form-label-inside .form-icon~.form-label,
.form-label-inside .form-icon~.form-input {
	padding-left: calc(0.75rem + 1rem + 0.75rem);
}

.form-label-inside.value .form-label {
	padding-top: 8px;
	font-size: 0.75rem;
	color: rgba(0, 0, 0, 0.4);
}

.form-label-inside .form-input,
.form-label-inside .form-select {
	padding-top: 1.75rem;
}

/* textarea */
.form-label-inside textarea.form-input {
	max-width: calc(100% - 2px);
	min-height: 56px;
	padding-top: 0;
	padding-bottom: 7px;
	border-top-width: 27px;
	margin: 1px;
	box-shadow: 0 0 0 1px rgba(200, 200, 200, 1);
}

/* textarea hover */
.form-label-inside textarea.form-input:not([readonly], [disabled]):hover {
	box-shadow: 0 0 0 1px hsl(201deg 100% 35% / 0.3), 0 0 0 5px hsl(201deg 100% 35% / 0.1);
}

/* textarea focus */
.form-label-inside textarea.form-input:not([readonly], [disabled]):focus,
.form-label-inside textarea.form-input:not([readonly], [disabled]).focus {
	box-shadow: 0 0 0 1px rgba(16, 89, 250, 0.6), 0 0 0 5px hsl(201deg 100% 35% / 0.3);
}

/* 純文字顯示 form-plaintext */
.form-plaintext .form-label,
.form-plaintext.form-label-inside .form-label {
	padding: 0;
	color: rgba(0, 0, 0, 0.6);
}

.form-plaintext.form-label-inside .form-icon {
	padding-top: 0.75rem;
}

.form-plaintext.form-label-inside .form-icon~.form-label {
	padding-left: calc(0.75rem + 1rem + 0.75rem);
}

.form-plaintext .form-input,
.form-plaintext .form-select {
	padding-top: 0;
	padding-right: 0;
	padding-left: 0;
	padding-bottom: 0;
	border-color: transparent;
	background: transparent;
	box-shadow: 0 0 0 0 transparent;
}

.form-plaintext.form-label-inside .form-input,
.form-plaintext.form-label-inside .form-select {
	padding-top: 23px;
}

.form-plaintext.form-label-inside textarea.form-input {
	padding: 0;
	border-top-width: 23px;
	box-shadow: 0 0 0 0 transparent;
}

.form-plaintext:is(.dropdown .dropdown-toggle) {
	padding-right: unset;
	padding-left: unset;
	background: unset;
	cursor: auto;
}

:not(.fx-row)>.form-group+.form-group {
	margin-top: 2rem;
}

@media (max-width: 576px) {
	.form-group+.form-group {
		margin-top: 1.5rem;
	}
}

.form-input+.form-input,
.form-input+.form-select,
.form-select+.form-input,
.form-select+.form-select {
	margin-top: 1rem;
}

/* ------------------------------
	**checkbox **form-checkbox
	**radio **form-radio
--------------------------- uu */
input[type=checkbox],
input[type=radio] {
	display: none;
}

/*.form-checkbox input[type="checkbox"],
.form-radio input[type="radio"] {
	position: absolute;
	opacity: 0;
}*/

.form-checkbox,
.form-radio {
	position: relative;
}

/* .row>:is(.form-checkbox, .form-radio) {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
} */

:is(.form-checkbox, .form-radio) label {
	display: inline-block;
	position: relative;
	width: 100%;
	max-width: 100%;
	padding-left: 1.75rem;
	margin-bottom: 0;
	line-height: 1.5;
	cursor: pointer;
}

.form-group :is(.form-checkbox, .form-radio) label {
	line-height: 1.25;
}


:is(.form-checkbox, .form-radio)+[class*="form-"],
:is(.form-checkbox, .form-radio) label~label {
	margin-top: 0.5rem;
}

.row>:is(.form-checkbox, .form-radio) label {
	width: auto;
	max-width: none;
}

.row>:is(.form-checkbox, .form-radio) label~label  {
	margin-top: 0;
	margin-left: 1rem;
}

:is(.form-checkbox, .form-radio) label:before {
	content: "";
	box-sizing: border-box;
	position: absolute;
	left: 0;
	width: 1rem;
	height: 1rem;
	border: 1px solid rgba(0, 0, 0, 0.3);
	margin: 4px 0;
	transition: 0.3s;
}

.form-group :is(.form-checkbox, .form-radio) label:before {
	margin: 2px 0;
}

.form-checkbox label:before {
	border-radius: 4px;
}

.form-radio label:before {
	border-radius: 50%;
}

/* hover */
.form-checkbox label:not([readonly], [disabled]):hover:before,
.form-radio label:not([readonly], [disabled]):hover:before {
	border-color: hsl(201deg 100% 35% / 0.3);
	box-shadow: 0 0 0 0.25rem hsl(201deg 100% 35% / 0.1);
}

.form-checkbox label:after {
	content: "";
	box-sizing: border-box;
	position: absolute;
	top: 4px;
	left: 3px;
	width: 10px;
	height: 6px;
	border: 3px solid rgba(0, 0, 0, 0.9);
	border-top: none;
	border-right: none;
	margin: 4px 0;
	background: transparent;
	opacity: 0;
	transform: rotate(-45deg);
	transition: 0.3s;
}

.form-group .form-checkbox label:after {
	margin: 2px 0;
}

.form-radio label:after {
	content: "";
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	margin: 8px 4px;
	background-color: rgba(0, 0, 0, 0.9);
	opacity: 0;
	transition: 0.3s;
}

.form-group .form-radio label:after {
	margin: 6px 4px;
}

/*.form-checkbox label:hover:after,
.form-radio label:hover:after {
	opacity: 0.3;
}

@media (max-width: 576px) {

	.form-checkbox label:hover:after,
	.form-radio label:hover:after {
		opacity: 0;
	}
}*/

.form-checkbox input[type="checkbox"]:checked+label:after,
.form-radio input[type="radio"]:checked+label:after {
	opacity: 1;
}

/* smail */
.form-checkbox-sm,
.form-radio-sm {
	font-size: 0.75rem;
}

.form-checkbox-sm label:before,
.form-radio-sm label:before {
	margin: 1px 0.25rem;
}

.form-checkbox-sm label:after {
	margin: 1px 0.25rem;
}

.form-radio-sm label:after {
	margin: 5px 0.5rem;
}

/* ------------------------------
	**dropdown
--------------------------- uu */
.dropdown {
	position: relative;
}

.dropdown .dropdown-toggle {
	text-align: initial;
}

.dropdown .dropdown-toggle+ul,
.dropdown .dropdown-toggle+ul li {
	margin-bottom: 0;
}

.dropdown .dropdown-toggle+.dropdown-menu {
	z-index: 1;
	visibility: hidden;
	width: 100%;
	position: absolute;
	padding: 0.5rem 0;
	border: 0 solid transparent;
	border-radius: 0.5rem;
	background-color: #fff;
	opacity: 0;
	transition: margin 0.3s ease, opacity 0.1s ease;
	box-shadow: 0 0.15rem 0.625rem rgb(0 0 0 / 30%);
}

.dropdown .dropdown-toggle.active+.dropdown-menu {
	visibility: visible;
	margin-top: 0.5rem;
	opacity: 1;
}

.dropdown .dropdown-toggle+.dropdown-menu .dropdown-item {
	display: flex;
	align-items: center;
	padding: 0.25rem 0.75rem;
	transition: padding 0.2s ease, background-color 0.1s ease, color 0.1s ease;
}

.dropdown .dropdown-toggle.active+.dropdown-menu .dropdown-item {
	padding: 0.5rem 0.75rem;
}

.dropdown .dropdown-toggle+.dropdown-menu .dropdown-item:hover {
	background-color: rgba(0, 0, 0, 0.1);
	color: #000;
}

/* ci blue */
.dropdown .dropdown-toggle.btn-ci-bl {
	border-width: 0;
	background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3e%3cpath fill='none' fill-opacity='0' stroke='%23ffffff' stroke-opacity='1' stroke-miterlimit='10' stroke-width='1px' d='M17,10l-5,4l-5-4'/%3e%3c/svg%3e") no-repeat right 0.25rem center;
	background-color: var(--color-ci-bl);
	color: #fff;
	box-shadow: none;
}

.dropdown .dropdown-toggle.btn-ci-bl:hover {
	/*color: #fff;*/
	background-color: hsl(201deg 100% 30% / 1);
	/*border-color: hsl(201deg 100% 30% / 1);*/
}

.dropdown .dropdown-toggle+.dropdown-menu .dropdown-item:hover {
	background-color: hsl(201deg 100% 35% / 0.1);
}

/* ------------------------------
	**table
--------------------------- uu */
table {
	border-collapse: collapse
}

thead th,
tbody th,
tbody td {
	padding: 1rem 0.75rem;
	text-align: inherit
}

/*.table-grid>:not(caption)>*>*,*/
.table-grid>:not(caption) :is(th, td) {
	border: 1px solid rgb(227, 227, 232);
}

/* 條紋 */
.table-stripe {
	border-bottom: 2px solid rgb(227, 227, 232);
}

.table-stripe thead th {
	background-color: rgb(227, 227, 232);
}

/*.table-stripe thead th,
.table-stripe tbody td {
	padding-right: 0.75rem;
	padding-left: 0.75rem;
}*/

/* .table-stripe tbody tr:nth-child(even) {} */

.table-stripe tbody tr:nth-child(odd) {
	background-color: rgb(244, 244, 246);
}

/*table.table {
	border-collapse: separate;
	border-spacing: 0 4px;
}*/

table.table tr {
	transition: .3s;
}

table.table thead tr {
	background-color: hsla(220, 85%, 60%, 1);
	color: #fff;
}

table.table thead tr th:first-child {
	border-top-left-radius: .5rem;
}

table.table thead tr th:last-child {
	border-top-right-radius: .5rem;
}

table.table tbody tr {
	background-color: #fff;
}

table.table-hover tbody tr:hover {
	background-color: hsla(220, 85%, 90%, 1);
}

table.table-select tbody tr {
	cursor: pointer;
}

table.table-select tbody tr selected,
table.table-select tbody tr.selected {
	box-shadow: inset 4px 0 hsla(220, 85%, 60%, 1);
}

table.table input[type="checkbox"] {
	height: 1rem;
}

table.table input[type="checkbox"]+span {
	margin: 0;
}

.product-spec {
	width: 100%;
}

.product-spec .item {
	padding: 3rem 0;
	border-top: 1px solid rgba(204, 204, 204, 1);
}

@media (max-width: 768px) {

	.product-spec .item {
		/*padding: 2rem 0;*/
		border-top: 0;
	}

	.product-spec>div {
		padding: 2rem 0;
		border-top: 0;
	}
}

.product-spec .item.product-version {
	border-top: 0;
	color: #000;
}

.product-spec .item .fx-row+.fx-row {
	margin-top: 2rem;
}

.product-spec .item .fx-row p {
	margin-bottom: 0.75rem;
	color: #666;
}

.product-spec .item .fx-row [class*="col-"]>*:last-child {
	margin-bottom: 0;
}

.product-spec .table-title {
	font-size: 1.25rem;
	font-weight: 600;
	color: #333;
}

@media (max-width: 1024px) {}

@media (max-width: 768px) {

	.product-spec .table-title:after {
		content: "";
		display: block;
		width: 100%;
		height: 1px;
		margin: 1rem 0 1.5rem 0;
		background-color: rgba(204, 204, 204, 1);
	}
}

.product-spec .table-sub-title {
	font-weight: 600;
	color: #333;
}

.product-spec p+.table-sub-title {
	margin-top: 1.5rem;
}

/* ------------------------------
	**container 容器
	container
	container-auto
	container-xl
	container-lg
	container-md
	container-sm
	container-xs
	container-100
--------------------------- uu */
.container,
.container-xl,
.container-lg,
.container-md,
.container-sm,
.container-xs {
	width: 78%;
	max-width: 1920px;
	margin-right: auto;
	margin-left: auto;
	/*-webkit-transition: width 0.3s ease;*/
	/*transition: width 0.3s ease;*/
}

.container-auto {
	width: auto;
}

.container-full,
.container-100 {
	min-width: 100%;
}

.container-xl {
	max-width: 1440px;
}

.container-lg {
	max-width: 1280px;
}

.container-md {
	max-width: 1024px;
}

.container-sm {
	max-width: 768px;
}

.container-xs {
	max-width: 576px;
}

@media (max-width: 1440px) {

	.container,
	.container-xl,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xs,
	.xl-container,
	.xl-container-xl,
	.xl-container-lg,
	.xl-container-md,
	.xl-container-sm,
	.xl-container-xs {
		width: 81%;
	}

	.xl-container-full,
	.xl-container-100 {
		min-width: 100%;
	}

	.xl-container-xl {
		max-width: 1440px;
	}

	.xl-container-lg {
		max-width: 1280px;
	}

	.xl-container-md {
		max-width: 1024px;
	}

	.xl-container-sm {
		max-width: 768px;
	}

	.xl-container-xs {
		max-width: 576px;
	}
}

@media (max-width: 1280px) {

	.container,
	.container-xl,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xs,
	.lg-container,
	.lg-container-xl,
	.lg-container-lg,
	.lg-container-md,
	.lg-container-sm,
	.lg-container-xs {
		width: 84%;
	}

	.lg-container-full,
	.lg-container-100 {
		min-width: 100%;
	}

	.lg-container-xl {
		max-width: 1440px;
	}

	.lg-container-lg {
		max-width: 1280px;
	}

	.lg-container-md {
		max-width: 1024px;
	}

	.lg-container-sm {
		max-width: 768px;
	}

	.lg-container-xs {
		max-width: 576px;
	}
}

@media (max-width: 1024px) {

	.container,
	.container-xl,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xs,
	.md-container,
	.md-container-xl,
	.md-container-lg,
	.md-container-md,
	.md-container-sm,
	.md-container-xs {
		width: 87%;
	}

	.md-container-full,
	.md-container-100 {
		min-width: 100%;
	}

	.md-container-xl {
		max-width: 1440px;
	}

	.md-container-lg {
		max-width: 1280px;
	}

	.md-container-md {
		max-width: 1024px;
	}

	.md-container-sm {
		max-width: 768px;
	}

	.md-container-xs {
		max-width: 576px;
	}
}

@media (max-width: 768px) {

	.container,
	.container-xl,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xs,
	.sm-container,
	.sm-container-xl,
	.sm-container-lg,
	.sm-container-md,
	.sm-container-sm,
	.sm-container-xs {
		width: 90%;
	}

	.sm-container-full,
	.sm-container-100 {
		min-width: 100%;
	}

	.sm-container-xl {
		max-width: 1440px;
	}

	.sm-container-lg {
		max-width: 1280px;
	}

	.sm-container-md {
		max-width: 1024px;
	}

	.sm-container-sm {
		max-width: 768px;
	}

	.sm-container-xs {
		max-width: 576px;
	}
}

@media (max-width: 576px) {

	.container,
	.container-xl,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xs,
	.xs-container,
	.xs-container-xl,
	.xs-container-lg,
	.xs-container-md,
	.xs-container-sm,
	.xs-container-xs {
		width: calc(100% - 3rem);
	}

	.xs-container-full,
	.xs-container-100 {
		min-width: 100%;
	}

	.xs-container-xl {
		max-width: 1440px;
	}

	.xs-container-lg {
		max-width: 1280px;
	}

	.xs-container-md {
		max-width: 1024px;
	}

	.xs-container-sm {
		max-width: 768px;
	}

	.xs-container-xs {
		max-width: 576px;
	}
}

/* ------------------------------
	**header
	**nav
	**local-nav
	**tab-nav
--------------------------- uu */
header {
	z-index: 20;
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	width: 100%;
	transition:
		box-shadow 0.9s ease,
		transform 0.6s cubic-bezier(0, 0, 0, 1);
}

/* 畫面向上滾動顯示陰影 */
header.on-scroll,
.sticky-active {
	box-shadow: 0 0.75rem 0.75rem 0 rgba(29, 29, 31, 0.05), 0 0.125rem 0.125rem 0 rgba(29, 29, 31, 0.05);
}

header nav {
	z-index: 4;
	position: relative;
	height: 5rem;
	transition:
		height 0.3s ease;
}

@media (max-width: 1024px) {
	header nav {
		height: 3rem;
	}
}

/* 壓暗 & 分隔線 */
header nav:after {
	content: "";
	display: block;
	visibility: hidden;
	position: fixed;
	right: 0;
	left: 0;
	opacity: 0;
	transition:
		visibility 0.6s ease,
		top 0.3s ease,
		opacity 0.6s ease;
}

@media (min-width: 1025px) {
	header nav:after {
		top: 5rem;
		height: calc(100vh - 5rem);
		height: 100vh;
		background-color: rgba(0, 0, 0, .6);
		-webkit-backdrop-filter: blur(8px);
		backdrop-filter: blur(8px);
	}
}

@media (max-width: 1024px) {
	header nav:after {
		top: 3rem;
		height: 1px;
		background-color: rgba(0, 0, 0, .2);
	}
}

.menu-open header nav:after {
	visibility: visible;
	opacity: 1;
}

/* nav-block */
.nav-block {
	position: relative;
	min-height: 3rem;
	transition:
		height 0.3s ease,
		max-height 0.3s ease,
		box-shadow 0.3s ease;
}

@media (min-width: 1025px) {
	header nav .nav-block {
		height: 100%;
		max-height: 5rem;
	}
}

@media (max-width: 1024px) {
	header nav .nav-block {
		max-height: 3rem;
		overflow: hidden;
	}

	.menu-open header nav .nav-block {
		max-height: 100vh;
	}
}

@media (max-width: 576px) {
	.tab-nav .nav-block {
		max-height: 3rem;
		box-shadow: 0 1px 0 0 rgba(29, 29, 31, 0.2);
		overflow: hidden;
	}

	.tab-nav.sticky-active .nav-block {
		box-shadow: 0 0 0 0 rgba(29, 29, 31, 0.2);
	}

	.tab-nav.tab-nav-open .nav-block {
		max-height: 100vh;
		box-shadow: 0 1.5rem 1.5rem 0 rgba(29, 29, 31, 0.2);
	}
}

/* 背景模糊 */
.nav-block {
	background-color: rgba(255, 255, 255, 0.95);
}

@supports ((-webkit-backdrop-filter: none) or (backdrop-filter: none)) {
	.nav-block {
		background-color: rgba(255, 255, 255, 0.85);
		-webkit-backdrop-filter: blur(16px);
		backdrop-filter: blur(16px);
	}
}

/*.nav-block:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 255, 0.95);
	-webkit-transition: background-color 0.3s ease;
	transition: background-color 0.3s ease;
}

@supports ((-webkit-backdrop-filter: none) or (backdrop-filter: none)) {
	.nav-block:before {
		background-color: rgba(255, 255, 255, 0.85);
		-webkit-backdrop-filter: blur(16px);
		backdrop-filter: blur(16px);
	}
}*/

.local-nav,
.tab-nav {
	position: relative;
	min-height: 3rem;
	/*font-size: 0.875rem;*/
	line-height: 1.5rem;
}

.scroll-top-sticky {
	z-index: 10;
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	transition:
		box-shadow 0.6s ease;
}

/* nav-content */
.nav-content {
	position: relative;
}

.local-nav .nav-content {
	padding: 0.375rem 0;
}

@media (min-width: 1025px) {
	header nav .nav-content {
		display: flex;
		align-items: center;
	}
}

.nav-content-between {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

/* tab-title */
.tab-title {
	display: none;
	margin: 0;
	line-height: 3rem;
}

.burger-mode .tab-title {
	display: block;
}

.tab-title-item {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	line-height: 3rem;
	transition: 0.6s ease;
	opacity: 0;
}

.burger-mode .tab-title-item.active {
	opacity: 1;
}

/* tab-collapse-btn */
.tab-collapse-btn {
	display: none;
	position: absolute;
	top: 0;
	right: -0.75rem;
	transition: 0.3s ease;
}

.burger-mode .tab-collapse-btn {
	display: block;
}

/*tab-list*/
.tab-list {
	display: flex;
	margin-bottom: 0;
}

.float-mode .tab-list {
	position: relative;
	margin-right: -1rem;
	margin-left: -1rem;
}

.burger-mode .tab-list {
	visibility: hidden;
	display: block;
	/*height: 0;*/
	margin-bottom: 1rem;
	opacity: 0;
	transition:
		visibility 0.3s ease,
		/*height 0.3s ease,*/
		opacity 0.3s ease;
}

.burger-mode.tab-nav-open .tab-list {
	visibility: visible;
	/*height: auto;*/
	opacity: 1;
}

/* tab-list-item */
.tab-list-item {
	margin-bottom: 0;
	font-size: 0.875rem;
	font-weight: 500;
	line-height: 1.5rem;
	transition: color 0.3s;
}

.tab-list-item label {
	position: relative;
	padding: 0.75rem 1rem;
	margin-bottom: 0;
	cursor: pointer;
}

.burger-mode .tab-list-item label {
	width: 100%;
	padding: 0.25rem 1.5rem;
	text-transform: none;
	transition:
		padding 0.3s ease,
		line-height 0.3s ease;
}

.burger-mode.tab-nav-open .tab-list-item label {
	padding: 0.75rem 1.5rem;
}

.float-mode.tab-nav .tab-list-item label:after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	width: 0;
	height: 0.125rem;
	background-color: var(--color-ci-bl);
	opacity: 0;
	transition: 0.6s ease;
}

.float-mode.tab-nav .tab-list-item input:checked~label:after {
	width: calc(100% - 2rem);
	opacity: 1;
}

/* tab-toggle */
.tab-toggle .tab-list-item label {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 0.375rem 1.25rem;
	background-color: rgb(244, 244, 246);
	text-align: center;
	transition: background-color 0.6s;
}

.tab-toggle .tab-list-item input:checked+label {
	background-color: var(--color-ci-bl);
	color: #fff;
}

.tab-toggle .tab-list-item:first-child label {
	border-radius: 0.75rem 0 0 0.75rem;
}

.tab-toggle .tab-list-item:last-child label {
	border-radius: 0 0.75rem 0.75rem 0;
}

@media (max-width: 576px) {

	.tab-toggle .tab-list-item:first-child label {
		border-radius: 0.5rem 0 0 0.5rem;
	}

	.tab-toggle .tab-list-item:last-child label {
		border-radius: 0 0.5rem 0.5rem 0;
	}
}

.tab-toggle .fx-col .tab-list-item:first-child label {
	border-radius: 0.75rem 0.75rem 0 0;
}

.tab-toggle .fx-col .tab-list-item:last-child label {
	border-radius: 0 0 0.75rem 0.75rem;
}

@media (max-width: 768px) {

	.tab-toggle .sm-fx-col .tab-list-item:first-child label {
		border-radius: 0.75rem 0.75rem 0 0;
	}

	.tab-toggle .sm-fx-col .tab-list-item:last-child label {
		border-radius: 0 0 0.75rem 0.75rem;
	}
}

@media (max-width: 576px) {

	.tab-toggle .xs-fx-col .tab-list-item:first-child label {
		border-radius: 0.5rem 0.5rem 0 0;
	}

	.tab-toggle .xs-fx-col .tab-list-item:last-child label {
		border-radius: 0 0 0.5rem 0.5rem;
	}
}

.tab-toggle .tab-list-item label h6 {
	margin-top: 0.25rem;
	margin-bottom: 0.25rem;
}

/* tab-panel */
.tab-panel {
	position: relative;
}

.tab-panel-content {
	display: none;
	opacity: 0;
	transition: 0.6s ease;
}

.tab-panel-content.active {
	display: block;
	opacity: 1;
}

/* ------------------------------
	**section
	section-auto
	section-full
	section-hero
	section-lg
	section-md
	section-sm
--------------------------- uu */
section {
	position: relative;
	width: 100%;
}

.section-auto,
.section-auto .content-img {
	display: block;
	height: auto;
	min-height: 120px;
}

.section-full,
.section-full .section-bg {
	display: block;
	height: 100vh;
	min-height: 100%;
}

.section-hero,
.section-hero .section-bg,
.section-hero .content-img {
	display: block;
	height: calc(100vh - 10rem);
	min-height: 540px;
}

.section-lg,
.section-lg .section-bg,
.section-lg .content-img {
	display: block;
	min-height: 960px;
}

.section-md,
.section-md .section-bg,
.section-md .content-img {
	display: block;
	min-height: 720px;
}

.section-sm,
.section-sm .section-bg,
.section-sm .content-img {
	display: block;
	min-height: 540px;
}

.section-auto .fx-col .content-img,
.section-full .fx-col .content-img,
.section-hero .fx-col .content-img,
.section-lg .fx-col .content-img,
.section-md .fx-col .content-img,
.section-sm .fx-col .content-img {
	min-height: auto;
}

@media (max-width: 1440px) {

	.section-lg,
	.section-lg .section-bg,
	.section-lg .content-img {
		min-height: 720px;
	}

	.section-md,
	.section-md .section-bg,
	.section-md .content-img {
		min-height: 540px;
	}

	.section-sm,
	.section-sm .section-bg,
	.section-sm .content-img {
		min-height: 405px;
	}
}

@media (max-width: 1280px) {

	.section-hero,
	.section-hero .section-bg,
	.section-hero .content-img {
		height: 540px;
		min-height: auto;
	}

	.section-lg,
	.section-lg .section-bg,
	.section-lg .content-img {
		min-height: 480px;
	}

	.section-md,
	.section-md .section-bg,
	.section-md .content-img {
		min-height: 360px;
	}

	.section-sm,
	.section-sm .section-bg,
	.section-sm .content-img {
		min-height: 270px;
	}
}

@media (max-width: 768px) {

	.section-hero,
	.section-hero .section-bg,
	.section-hero .content-img,
	.section-lg,
	.section-lg .section-bg,
	.section-lg .content-img,
	.section-md,
	.section-md .section-bg,
	.section-md .content-img,
	.section-sm,
	.section-sm .section-bg,
	.section-sm .content-img {
		height: auto;
		min-height: auto;
		/*要固定最小高度，img 也要同時設定*/
		/*min-height: 120px;*/
	}
}

.section-hero .content-img .img-cover,
.section-lg .content-img .img-cover,
.section-md .content-img .img-cover,
.section-sm .content-img .img-cover {
	position: absolute;
}

@media (max-width: 768px) {

	.section-hero .content-img .img-cover,
	.section-lg .content-img .img-cover,
	.section-md .content-img .img-cover,
	.section-sm .content-img .img-cover {
		position: relative;
	}
}

.section-content {
	height: 100%;
	padding-top: 5rem;
	padding-bottom: 5rem;
	transition: padding 0.3s;
}

@media (max-width: 1440px) {

	.section-content {
		padding-top: 4.5rem;
		padding-bottom: 4.5rem;
	}
}

@media (max-width: 1280px) {

	.section-content {
		padding-top: 4rem;
		padding-bottom: 4rem;
	}
}

@media (max-width: 1024px) {

	.section-content {
		padding-top: 3.5rem;
		padding-bottom: 3.5rem;
	}
}

@media (max-width: 768px) {

	.section-content {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}
}

@media (max-width: 576px) {

	.section-content {
		padding-top: 2.5rem;
		padding-bottom: 2.5rem;
	}
}

.section-spacing,
.section-spacing-t {
	padding-top: 6rem;
}

.section-spacing,
.section-spacing-b {
	padding-bottom: 6rem;
}

@media (max-width: 1440px) {

	.section-spacing,
	.section-spacing-t,
	.xl-section-spacing,
	.xl-section-spacing-t {
		padding-top: 5.5rem;
	}

	.section-spacing,
	.section-spacing-b,
	.xl-section-spacing,
	.xl-section-spacing-b {
		padding-bottom: 5.5rem;
	}
}

@media (max-width: 1280px) {

	.section-spacing,
	.section-spacing-t,
	.xl-section-spacing,
	.xl-section-spacing-t,
	.lg-section-spacing,
	.lg-section-spacing-t {
		padding-top: 5rem;
	}

	.section-spacing,
	.section-spacing-b,
	.xl-section-spacing,
	.xl-section-spacing-b,
	.lg-section-spacing,
	.lg-section-spacing-b {
		padding-bottom: 5rem;
	}
}

@media (max-width: 1024px) {

	.section-spacing,
	.section-spacing-t,
	.xl-section-spacing,
	.xl-section-spacing-t,
	.lg-section-spacing,
	.lg-section-spacing-t,
	.md-section-spacing,
	.md-section-spacing-t {
		padding-top: 4.5rem;
	}

	.section-spacing,
	.section-spacing-b,
	.xl-section-spacing,
	.xl-section-spacing-b,
	.lg-section-spacing,
	.lg-section-spacing-b,
	.md-section-spacing,
	.md-section-spacing-b {
		padding-bottom: 4.5rem;
	}
}

@media (max-width: 768px) {

	.section-spacing,
	.section-spacing-t,
	.xl-section-spacing,
	.xl-section-spacing-t,
	.lg-section-spacing,
	.lg-section-spacing-t,
	.md-section-spacing,
	.md-section-spacing-t,
	.sm-section-spacing,
	.sm-section-spacing-t {
		padding-top: 4rem;
	}

	.section-spacing,
	.section-spacing-b,
	.xl-section-spacing,
	.xl-section-spacing-b,
	.lg-section-spacing,
	.lg-section-spacing-b,
	.md-section-spacing,
	.md-section-spacing-b,
	.sm-section-spacing,
	.sm-section-spacing-b {
		padding-bottom: 4rem;
	}
}

@media (max-width: 576px) {

	.section-spacing,
	.section-spacing-t,
	.xl-section-spacing,
	.xl-section-spacing-t,
	.lg-section-spacing,
	.lg-section-spacing-t,
	.md-section-spacing,
	.md-section-spacing-t,
	.sm-section-spacing,
	.sm-section-spacing-t,
	.xs-section-spacing,
	.xs-section-spacing-t {
		padding-top: 3.5rem;
	}

	.section-spacing,
	.section-spacing-b,
	.xl-section-spacing,
	.xl-section-spacing-b,
	.lg-section-spacing,
	.lg-section-spacing-b,
	.md-section-spacing,
	.md-section-spacing-b,
	.sm-section-spacing,
	.sm-section-spacing-b,
	.xs-section-spacing,
	.xs-section-spacing-b {
		padding-bottom: 3.5rem;
	}
}

.section-spacing .article-content.section-content:last-child {
	padding-bottom: 0;
}

/* ------------------------------
	**content-inside **content-outside
	content-inside
	xl~sm-content-inside-top
	xl~sm-content-inside-bottom
	content-outside
--------------------------- uu */
.content-inside {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.content-outside,
.content-outside-bottom {
	position: inherit;
	top: auto;
	right: auto;
	left: auto;
	height: auto;
}

.content.content-outside-bottom {
	padding: 1.5rem 0;
}

@media (max-width: 1440px) {

	.xl-content-outside,
	.xl-content-outside-bottom {
		position: inherit;
		top: auto;
		right: auto;
		left: auto;
		height: auto;
	}
}

@media (max-width: 1280px) {

	.lg-content-outside,
	.lg-content-outside-bottom {
		position: inherit;
		top: auto;
		right: auto;
		left: auto;
		height: auto;
	}
}

@media (max-width: 1024px) {

	.md-content-outside,
	.md-content-outside-bottom {
		position: inherit;
		top: auto;
		right: auto;
		left: auto;
		height: auto;
	}
}

@media (max-width: 768px) {
	.sm-content-inside-top {
		display: flex;
		flex-direction: column;
		height: auto;
		min-height: 50%;
		bottom: auto;
	}

	.sm-content-inside-bottom {
		display: flex;
		flex-direction: column;
		height: auto;
		min-height: 50%;
		top: auto;
	}

	.sm-content-outside,
	.sm-content-outside-bottom {
		position: inherit;
		top: auto;
		right: auto;
		left: auto;
		height: auto;
	}

	.content.sm-content-outside-bottom {
		padding-top: 1.5rem;
	}
}

@media (max-width: 576px) {

	.xs-content-outside,
	.xs-content-outside-bottom {
		position: inherit;
		top: auto;
		right: auto;
		left: auto;
		height: auto;
	}

	.content.xs-content-outside-bottom {
		padding: 1.5rem 0;
	}
}

/* ------------------------------
	**content
--------------------------- uu */
.content-full,
.content-top-left,
.content-top-center,
.content-top-right,
.content-center-left,
.content-center-center,
.content-center-right,
.content-bottom-left,
.content-bottom-center,
.content-bottom-right {
	display: flex;
	flex-wrap: wrap;
	flex-grow: 1;
	position: relative;
	width: 100%;
	height: 100%;
}

.content-top-left,
.content-top-center,
.content-top-right {
	align-items: flex-start;
}

.content-center-left,
.content-center-center,
.content-center-right {
	align-items: center;
}

.content-bottom-left,
.content-bottom-center,
.content-bottom-right {
	align-items: flex-end;
}

.content-top-left,
.content-center-left,
.content-bottom-left {
	justify-content: flex-start;
}

.content-top-center,
.content-center-center,
.content-bottom-center {
	justify-content: center;
}

.content-top-right,
.content-center-right,
.content-bottom-right {
	justify-content: flex-end;
}

@media (max-width: 1280px) {

	.lg-content-top-left,
	.lg-content-top-center,
	.lg-content-top-right {
		align-items: flex-start;
	}

	.lg-content-center-left,
	.lg-content-center-center,
	.lg-content-center-right {
		align-items: center;
	}

	.lg-content-bottom-left,
	.lg-content-bottom-center,
	.lg-content-bottom-right {
		align-items: flex-end;
	}

	.lg-content-top-left,
	.lg-content-center-left,
	.lg-content-bottom-left {
		justify-content: flex-start;
	}

	.lg-content-top-center,
	.lg-content-center-center,
	.lg-content-bottom-center {
		justify-content: center;
	}

	.lg-content-top-right,
	.lg-content-center-right,
	.lg-content-bottom-right {
		justify-content: flex-end;
	}
}

@media (max-width: 768px) {

	.sm-content-top-left,
	.sm-content-top-center,
	.sm-content-top-right {
		align-items: flex-start;
	}

	.sm-content-center-left,
	.sm-content-center-center,
	.sm-content-center-right {
		align-items: center;
	}

	.sm-content-bottom-left,
	.sm-content-bottom-center,
	.sm-content-bottom-right {
		align-items: flex-end;
	}

	.sm-content-top-left,
	.sm-content-center-left,
	.sm-content-bottom-left {
		justify-content: flex-start;
	}

	.sm-content-top-center,
	.sm-content-center-center,
	.sm-content-bottom-center {
		justify-content: center;
	}

	.sm-content-top-right,
	.sm-content-center-right,
	.sm-content-bottom-right {
		justify-content: flex-end;
	}
}

/* ------------------------------
	**content-wrapper
--------------------------- uu */
.content-wrapper {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
}

.content-wrapper [class*="content-"] {
	width: 100%;
}

.content-top-right .content-wrapper,
.content-center-right .content-wrapper,
.content-bottom-right .content-wrapper {
	justify-content: flex-end;
	text-align: right;
}

.content-top-center .content-wrapper,
.content-center-center .content-wrapper,
.content-bottom-center .content-wrapper {
	justify-content: center;
	text-align: center;
}

.content-top-left .content-wrapper,
.content-center-left .content-wrapper,
.content-bottom-left .content-wrapper {
	justify-content: flex-start;
	text-align: left;
}

@media (max-width: 768px) {

	.sm-content-top-left .content-wrapper,
	.sm-content-center-left .content-wrapper,
	.sm-content-bottom-left .content-wrapper {
		justify-content: flex-start;
		text-align: left;
	}
}

.content-wrapper>*:last-child {
	margin-bottom: 0;
}

/* ------------------------------
	**card
--------------------------- uu */
.card {
	display: block;
	height: 100%;
	background-color: #fff;
}

.card>* {
	height: 100%;
}

.card-radius {
	border-radius: 1rem;
	overflow: hidden;
}

.card-shadow {
	box-shadow: 0 2px 8px rgba(0, 0, 2, 0.2);
	transition: box-shadow 0.3s;
}

a:hover .card-shadow,
a.card-shadow:hover {
	box-shadow: 0 8px 24px rgba(0, 0, 2, 0.3);
}

.bg-color-lg .card-shadow {
	box-shadow: 0 2px 8px rgba(0, 0, 2, 0.1);
}

.bg-color-lg a:hover .card-shadow,
.bg-color-lg a.card-shadow:hover {
	box-shadow: 0 8px 24px rgba(0, 0, 2, 0.2);
}

/* ------------------------------
	**dialog
--------------------------- uu */
.dialog {
	display: none;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 30;
	min-width: 320px;
	background-color: rgba(0, 0, 0, .6);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}

/*.dialog:before {
	content: "";
	display: block;
	position: fixed;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, .6);
	-webkit-backdrop-filter: blur(8px);
	backdrop-filter: blur(8px);
}*/

.dialog-block {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.dialog-content {
	display: flex;
	flex-direction: column;
	position: relative;
	width: 100%;
	max-height: none;
	border-radius: 1rem;
	background-color: #fff;
	box-shadow: 0 0.5rem 1rem rgba(0, 0, 2, 0.3);
	overflow: hidden;
}

.dialog-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	/*padding: 2rem 0 1.5rem 0;*/
	padding: 2rem 3rem 1.5rem 3rem;
	transition: padding 0.3s;
}

.dialog-header .btn.ic-cross {
	padding: 0;
}

.dialog-body {
	position: relative;
	flex: 1 1 auto;
	/*padding: 1rem 0;*/
	padding: 1rem 3rem;
	transition: padding 0.3s;
	overflow-x: visible;
	overflow-x: auto;
}

.dialog-footer {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	/*padding: 1.5rem 0 2rem 0;*/
	/*padding: 1.5rem 3rem 2rem 3rem;*/
	/*margin: -0.25rem;*/
	padding: 1.25rem 2.75rem 1.75rem 2.75rem;
	transition: padding 0.3s;
}

@media (max-width: 1024px) {
	.dialog-header {
		padding: 2rem 2rem 1.5rem 2rem;
	}

	.dialog-body {
		padding: 0 2rem;
	}

	.dialog-footer {
		padding: 1.25rem 1.75rem 1.75rem 1.75rem;
	}
}

.dialog-footer>*,
.dialog-footer .btns>* {
	margin: 0.25rem;
}

/* 安排刪除 */
/* service-center.html */
.dialog-header>.container,
.dialog-body>.container,
.dialog-footer>.container {
	width: 100%;
}

/* ------------------------------
	**product page
--------------------------- uu */
/* .product-gallery {} */

.porduct-rating {
	width: 100%;
}

.porduct-rating-star {
	color: rgba(0, 0, 0, .2);
}

.porduct-rating-star.good {
	color: hsl(201deg 85% 55% / 1);
}

.product-features-icon {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	margin-right: auto;
	margin-left: auto;
}

.product-features-icon>div {
	flex-grow: 1;
	flex-basis: 136px;
	padding: 1rem;
}

.product-features-icon img {
	width: 100%;
	max-width: 6rem;
	margin: auto;
}

.product-features-icon span {
	width: 100%;
}

.product-video {
	max-height: 720px;
}

/* .product-news .news-list {} */

.product-news .news-item {
	width: 100%;
	margin-bottom: 1.5rem;
}

.product-news .news-item:last-child {
	margin-bottom: 0;
}

.product-news .news-item a:hover {
	color: inherit;
}

.product-news .news-date {
	font-family: "Noto Sans";
	margin-right: 2rem;
	margin-bottom: 0;
	opacity: .6;
}

@media (max-width: 576px) {

	.product-news .news-date {
		margin-right: 0;
		margin-bottom: 0.125rem;
		font-size: 0.75rem;
		opacity: .6;
	}
}

.product-news .news-title {
	margin-bottom: 0;
	font-weight: 500;
}

/* ------------------------------
	**ani **animation
--------------------------- uu */
.ani-x-in {
	-webkit-animation: x-in .5s ease-out forwards;
	animation: x-in .5s ease-out forwards;
}

@-webkit-keyframes x-in {
	from {
		transform: translateX(100vw);
	}

	to {
		transform: translateX(0);
	}
}

@keyframes x-in {
	from {
		transform: translateX(100vw);
	}

	to {
		transform: translateX(0);
	}
}

.ani-x-out {
	-webkit-animation: x-out .5s ease-out forwards;
	animation: x-out .5s ease-out forwards;
}

@-webkit-keyframes x-out {
	from {
		transform: translateX(0);
	}

	to {
		transform: translateX(-100vw);
	}
}

@keyframes x-out {
	from {
		transform: translateX(0);
	}

	to {
		transform: translateX(-100vw);
	}
}

.ani-y1 {
	-webkit-animation: y1 1s ease-out;
	animation: y1 1s ease-out;
}

.ani-y-1 {
	-webkit-animation: y-1 1s ease-out;
	animation: y-1 1s ease-out;
}

@-webkit-keyframes y1 {
	from {
		transform: translateY(1rem);
	}

	to {
		transform: translateY(0);
	}
}

@keyframes y1 {
	from {
		transform: translateY(1rem);
	}

	to {
		transform: translateY(0);
	}
}

@-webkit-keyframes y-1 {
	from {
		transform: translateY(-1rem);
	}

	to {
		transform: translateY(0);
	}
}

@keyframes y-1 {
	from {
		transform: translateY(-1rem);
	}

	to {
		transform: translateY(0);
	}
}

.ani-sacle {
	-webkit-animation: sacle 1s ease-out;
	animation: sacle 1s ease-out;
}

@-webkit-keyframes sacle {
	from {
		transform: scale(1);
	}

	to {
		transform: scale(1.1);
	}
}

@keyframes sacle {
	from {
		transform: scale(1);
	}

	to {
		transform: scale(1.1);
	}
}

/* ------------------------------
	**cookie
--------------------------- uu */
.cc-window {
	min-width: 320px;
	border-radius: 1rem;
	background-color: rgba(255, 255, 255, .95);
	-webkit-backdrop-filter: blur(16px);
	backdrop-filter: blur(16px);
	line-height: initial;
	box-shadow: 0 0.25rem 0.625rem rgba(0, 0, 0, 0.25);
}

@supports ((-webkit-backdrop-filter: none) or (backdrop-filter: none)) {
	.cc-window {
		background-color: rgba(255, 255, 255, .85);
		-webkit-backdrop-filter: blur(16px);
		backdrop-filter: blur(16px);
	}
}

.cc-floating .cc-compliance {
	justify-content: center;
}

.cc-floating .cc-compliance>.cc-btn {
	flex: none;
	padding: 0.375rem 1.125rem;
	border: 0;
	border-radius: 1.125rem;
	margin-bottom: 1.5rem;
	background-color: var(--color-ci-bl);
	font-size: 1rem;
	line-height: 1.25;
	color: rgba(255, 255, 255, 1);
}

@media (max-width: 414px) {

	.cc-revoke,
	.cc-window {
		border-radius: 0;
	}
}

/* ------------------------------
--------------------------- uu */