
/******Google Fonts******/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
/* font-family: 'Montserrat', sans-serif; */
@import url('https://fonts.googleapis.com/css?family=Roboto+Condensed:300,300i,400,400i,700,700i&display=swap');
/* font-family: 'Roboto Condensed', sans-serif; */
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+TC:100,300,400,500,700,900&display=swap&subset=chinese-traditional');
/* font-family: 'Noto Sans TC', sans-serif; */

@import url('https://fonts.googleapis.com/css2?family=Shadows+Into+Light&display=swap');
/* font-family: 'Shadows Into Light', cursive; */
@import url('https://fonts.googleapis.com/css2?family=Kalam:wght@300;400;700&display=swap');
/* font-family: 'Kalam', cursive; */
@import url('https://fonts.googleapis.com/css2?family=Architects+Daughter&display=swap');
/* font-family: 'Architects Daughter', cursive; */

@import url('https://fonts.googleapis.com/css2?family=Archivo:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600;1,700&family=Montserrat&family=Open+Sans&family=Poppins&display=swap');
/* font-family: 'Archivo', sans-serif; */

/* Font Awesome */
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.10.2/css/all.css');
/* content: "\f0da"; font-family: "Font Awesome 5 Free"; font-weight: 400; font-weight: 900; */

/* SM */
@media (max-width: 767px) {
	:root {
		--reverseView_textAlign: left;
	}
}

/* MD */
@media (min-width: 768px) {
	:root {
		--reverseView_textAlign: left;
	}
}

/* LA */
@media (min-width: 992px) {
	:root {
		--reverseView_textAlign: right;
	}
}

/* XL */
@media (min-width: 1200px) {
	:root {
		--reverseView_textAlign: right;
	}
}

:root {
	--text: #1d1d1f; /*內文*/
	--text_dk: #828282;
	--bt_bd: #dee2e6;
	--light: #f2f2f2;
	--muted: #6c757d;
	--dark: rgb(50, 54, 57);
	--gray: #AAAAAA;
	--border: rgba(255, 255, 255, .25);
	--header: 60px;
}

html, body {
	width: 100%;
	height: 100%;
	margin: 0;
	font-family: 'Montserrat', sans-serif;
	font-weight: 300;
	font-size: 3vmin;
	font-size: min(max(3vmin, 14px), 16px);
	color: var(--text);
}

* {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	line-height: 1.5;
}


*:focus {
	outline: none !important;
	-webkit-box-shadow: unset !important;
	box-shadow: unset !important;
}

a, a:hover, a:visited, a:link, a:active {
	text-decoration: none;
	color: inherit;
}

ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

ol {
	padding: 0;
	margin: 0;
}

button {
	border: 0;
	padding: 0;
	cursor: pointer;
	background-color: transparent;
}

/*************** Template **************/
.template_header {
	position: fixed;
	z-index: 10;
	top: 0;
	left: 0;
	width: 100%;
	background-color: rgba(0,0,0,var(--nav_color_ap));
	/* border-bottom: red 1px solid; */
	transition: all .6s;
	/* backdrop-filter: saturate(180%) blur(var(--nav_bg_blur));
	-webkit-backdrop-filter: saturate(180%) blur(var(--nav_bg_blur)); */
	opacity: 1;
}
.template_header.is_hidden {
	transform: translateY(-101%);
}
.template_header nav {
	height: var(--header);
}
.template_header.mbMenuOpen {
	background-color: rgba(0,0,0,1);
}

.template_header #pc_head_menu li {
	height: 100%;
}
.template_header #pc_head_menu li a {
	color: var(--text_dk);
	font-size: 1.25rem;
	font-weight: 500;
	font-style: italic;
	padding: .25rem .5rem 0;
	display: flex;
	align-items: center;
	height: 100%;
	margin: 0 1rem;
	position: relative;
}
.template_header #pc_head_menu li a:hover {
	color: #FFFFFF;
}
.template_header #pc_head_menu li a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 0);
	border: 10px solid transparent;
    transition: all .3s;
}
.template_header #pc_head_menu li a:hover::after {
	border-bottom-color: red;
}

#mb_menu_toggle .line {
	position: absolute;
	z-index: 20;
	display: block;
	height: 1px;
	width: 45%;
	background-color: #FFFFFF;
	left: 50%;
	border-radius: 100px;
	transition: all .3s;
	transform: translate(-50%, -50%);
}
#mb_menu_toggle .line.top {
	top: 40%;
}
#mb_menu_toggle .line.bottom {
	top: 60%;
}
.template_header.mbMenuOpen #mb_menu_toggle .line.top {
	top: 50%;
	transform: translate(-50%, -50%) rotate(45deg);
}
.template_header.mbMenuOpen #mb_menu_toggle .line.bottom {
	top: 50%;
	transform: translate(-50%, -50%) rotate(-45deg);
}
#mb_menu_cont {
	position: absolute;
	z-index: 100;
	top: 61px;
	bottom: 0;
	left: 0;
	height: 0;
	width: 100vw;
	overflow: auto;
	transition: all .5s;
	background-color: #000000;
}
.template_header.mbMenuOpen #mb_menu_cont {
	height: calc(100vh - var(--header));
}
#mb_menu_cont li a {
	color: #FFFFFF;
	font-size: 1.5rem;
	font-weight: 500;
	display: block;
	font-style: italic;
	padding: 1rem .25rem .75rem;
	border-bottom: #666666 1px solid;
	text-align: center;
	transition: all .5s;
	transform: translateY(-100%);
	opacity: 0;
}
.template_header.mbMenuOpen #mb_menu_cont li a,
.template_header.mbMenuOpen #close_mb_menu {
	opacity: 1;
	transform: translateY(0);
}
#close_mb_menu {
	color: #FFFFFF;
	font-size: 1.25rem;
	font-weight: 300;
	margin: 0 auto;
	padding: 0 2rem;
	border: #FFFFFF 1px solid;
	border-radius: 100rem;
	letter-spacing: .5px;
	transition: all .5s;
	transform: translateY(-100%);
	opacity: 0;
}

.template_footer {
	background-color: #000000;
	border-top: rgba(255, 255, 255, .15) 1px solid;
}

.icon_store {
	position: relative;
	line-height: 1;
	padding: .6rem .5rem .5rem;
	margin: auto;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 600;
	border: #FFFFFF 1px solid;
	color: #FFFFFF;
}

/* 圖示選單 */
#menu_ui_category {
	background-color: #FFFFFF;
	padding-top: var(--header);
}
#menu_ui_category .swiper-container {
	width: 100%;
	height: 100%;
}
#menu_ui_category .swiper-button-next,
#menu_ui_category .swiper-button-prev {
	background-color: #FFFFFF;
	height: calc(100% - 1.5rem);
	width: 30px;
	top: 50%;
	transform: translateY(-50%);
	margin-top: 0;
}
#menu_ui_category .swiper-button-next {
	right: 0;
	border-left: var(--text) 1px solid;
}
#menu_ui_category .swiper-button-prev {
	left: 0;
	border-right: var(--text) 1px solid;
}
.swiper-button-next:after, .swiper-button-prev:after {
	color: var(--text);
	font-size: 15px;
}
#menu_ui_category .swiper-button-next.swiper-button-disabled,
#menu_ui_category .swiper-button-prev.swiper-button-disabled {
	opacity: 0;
	transition: .4s;
}
#menu_ui_category .swiper-slide {
	text-align: center;
	max-width: 100px;
	padding: 1rem 0;
	margin: 0 1rem;
}

#menu_ui_category .swiper-slide svg {
	height: 60px;
}
#menu_ui_category .swiper-slide path {
	fill: var(--text);
}
#menu_ui_category .swiper-slide div {
	line-height: 1.1 !important;
	padding-top: .5rem;
	font-weight: bold;
	color: var(--text);
}

/*************** Pages **************/
#page_product section {
	background-color: #000000;
}

#page_product * {
	color: #FFFFFF;
}

#page_product #product_item > div:nth-of-type(even) {
	background-color: #111111;
}
#page_product #product_item > div:nth-of-type(even) > div {
	flex-direction: row-reverse;
}

#page_product #product_SPEC {
	background-color: #000000;
	color: #FFFFFF;
}

#page_product #product_SPEC li {
	padding-bottom: 1rem;
	font-size: 1.25rem;
	font-weight: 300;
}

#page_product #product_SPEC li span {
	color: var(--border);
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.5;
	text-transform: uppercase;
	display: block;
}
#page_product.akit #product_SPEC li span {
	color: var(--border) !important;
}
#page_product #product_SPEC li strong {
	color: red;
}

#page_product #product_SPEC li span::after {
	content: " ";
}

#page_product #product_SPEC li ul {
	list-style-type: square;
}

#page_product #product_SPEC li li {
	padding-bottom: 0;
	margin-left: 1.5rem;
}

#page_product .main_title {
	text-align: center;
	font-weight: 700;
	line-height: 1.5;
	text-transform: uppercase;
}

#page_product .sub_title {
	text-align: center;
	line-height: 1.5;
	text-transform: capitalize;
	font-style: italic;
}

#page_product #product_item .sub_title {
	font-family: 'Architects Daughter', cursive;
}

#page_product .sub_title + * {
	color: var(--text_dk);
	line-height: 1.5;
	font-family: 'Kalam', cursive;
	font-weight: 300;
}

#page_product button[data-target="#modal_RimProfile"] {
	margin-left: .5rem;
	font-style: italic;
	text-decoration: underline;
	color: red;
}

#page_support li a:hover div:nth-of-type(2) div:last-of-type {
	color: #FF0000;
}
#page_support li a:hover div:nth-of-type(2) div:last-of-type,
#page_support li a  div:nth-of-type(3) div {
	transition: all .2s;
}
#page_support li a:hover div:nth-of-type(3) div {
	width: 100% !important;
}

/*************** Public **************/
.fill_vh {
	--js: calc(var(--vh_100, 1vh) * 100);
	min-height: calc(var(--js) + 1px);
}

.fill_vh_min {
	--js: calc(var(--vh_100, 1vh) * 100);
	min-height: calc(var(--js) + 1px - var(--footer));
}

/*************** Function **************/
.max_w {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

.max_wd {
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
}

.bg_cover {
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.bg_size {
	width: 100%;
	padding-bottom: calc(100% / 16 * 10);
}

.reverse_view > div:nth-of-type(even) {
	background-color: var(--light);
	flex-direction: row-reverse;
	text-align: var(--reverseView_textAlign);
}

.center {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.center_x {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
}

.center_y {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.bg_bk {
	background-color: #000000;
}

.bg_gy {
	background-color: var(--light);
}

.bg_dk {
	background-color: var(--dark);
}

.color_inherit, .color_inherit_this * {
	color: inherit;
}

.text_bk {
	color: #000000;
}

.text_gy {
	color: var(--gray);
}

.text_lt {
	color: var(--light);
}

.text_ArchitectsDaughter {
	font-family: 'Architects Daughter', cursive;
}

.text_Kalam {
	font-family: 'Kalam', cursive;
}

.trans {
	transition: all .3s;
}

.btn_bk:hover {
	background-color: #000000 !important;
	border-color: #000000 !important;
	color: #FFFFFF !important;
}

.btn_wh:hover {
	background-color: #FFFFFF !important;
	border-color: #FFFFFF !important;
	color: #000000 !important;
}

.b_shadow {
	box-shadow: 1px 1px 4px rgba(0,0,0,.25);
}

.d_shadow {
	filter: drop-shadow(1px 1px 4px rgba(0,0,0,.25));
	-webkit-filter: drop-shadow(1px 1px 4px rgba(0,0,0,.25));
}

.font_Architects {
	font-family: 'Architects Daughter', cursive;
}

.text_2x {
	font-size: 4.5vmin;
	font-size: min(max(4.5vmin, 24px), 40px);
}
.text_xl {
	font-size: 4vmin;
	font-size: min(max(4vmin, 18px), 30px);
}
.text_lg {
	font-size: 3.5vmin;
	font-size: min(max(3.5vmin, 16px), 24px);
}
.text_md {
	font-size: 3vmin;
	font-size: min(max(3vmin, 14px), 16px);
}
.text_sm {
	font-size: 3vmin;
	font-size: min(max(3vmin, 10px), 14px);
}

.lh_1 {
	line-height: 1 !important;
}

.lh_125 {
	line-height: 1.25 !important;
}

.lh_15 {
	line-height: 1.5 !important;
}

.link_type {
	font-style: italic !important;
	font-weight: normal !important;
    text-decoration: underline !important;
	color: red !important;
}

.dark_mode {
	background-color: #000000;
	color: #FFFFFF;
}

.ci_mode {
	background-color: #e94720;
	color: #FFFFFF;
}

/*************** Bootstrap **************/
.modal-backdrop {
	background-color: #000000;
	opacity: 0.8 !important;
}
.h1, .h2, .h3, .h4, .h5, .h6 {
	margin-bottom: 0;
}

/*************** Jquery.zoom.js **************/
.zoom {
	border: transparent 1px solid;
	position: relative;
}

.zoom:hover {
	border-color: var(--gray);
}

.zoom:hover::after {
	content: "";
	display: none;
}

.zoom::after {
	content: "\f00e";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 1.5rem;
	position: absolute;
	bottom: 0;
	right: 0;
	padding: 0 .5rem;
	color: #AAAAAA;
}