@charset "utf-8";
/* CSS Document */

/* 共通 css開始  */
body{
	font-family: "微軟正黑體";
	line-height: 1.5em;
	margin:0;
	/* padding-top: 144px; */
}

a{
	text-decoration:none;
	outline: none;
	hlbr:expression(this.onFocus=this.blur());		
}

a img{
	border:none;
}

a:hover,a:focus{
	text-decoration: none;
}

:focus,button:focus{
    outline: none;
}

/* 首頁 */
#index_header {
	background: #5b315e;
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 3;
}

.index_header_container {
	max-width: 1815px;
	padding-right: 15px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.index_header_logo {
	background: #826083;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 370px;
	height: 100px;
	border-bottom-right-radius: 25px;
	flex-shrink: 0;
}


.index_header_logo_img {
	width: 260px;
}

.index_body {
	padding-top: 100px;
}

@media (max-width: 991px) {
	body {
		/* padding-top: 124px; */
	}

	.index_body {
		padding-top: 80px;
	}

	.index_header_logo {
		width: 300px;
		height: 80px;
	}

	.index_header_logo_img {
		width: 200px;
	}
}

@media (max-width: 767px) {
	body {
		/* padding-top: 104px; */
	}

	.index_body {
		padding-top: 60px;
	}

	.index_header_logo {
		width: 230px;
		height: 60px;
	}

	.index_header_logo_img {
		width: 150px;
	}
}

@media (max-width: 575px) {
	.index_header_logo {
		width: 100px;
		border-bottom-right-radius: 15px;
	}

	.index_header_logo_img {
		width: 80px;
	}
}

.header_space {
	height: 144px;
}

@media (max-width: 1300px) {
	.header_space {
		height: 186px;
	}
}

@media (max-width: 991px) {
	.header_space {
		height: 166px;
	}
}

@media (max-width: 767px) {
	.header_space {
		height: 146px;
	}
}

@media (max-width: 575px) {
	.header_space {
		height: 142px;
	}
}


.index_header_marquee_wrap,
.index_header_marquee_wrap_mobile {
	line-height: 1;
	flex-grow: 1;
}

.index_header_marquee_wrap_mobile {
	width: 0;
	height: 0;
	background: #5b315e;
}

.index_header_marquee {
	margin: 0 50px;
}

@media (max-width: 1300px) {
/* @media (max-width: 991px) { */
	.index_header_marquee_wrap {
		width: 0;
		height: 0;
		flex-grow: 0;
	}
	
	.index_header_marquee_wrap_mobile {
		width: 100%;
		height: auto;
		padding: 10px 0;
		position: fixed;
		top: 100px;
		z-index: 1;
	}
}

@media (max-width: 991px) {
	.index_header_marquee_wrap_mobile {
		top: 80px;
	}
}

@media (max-width: 767px) {
	.index_header_marquee_wrap_mobile {
		top: 60px;
	}
}

.index_header_marquee_link {
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	margin: 0 50px;
	transition: all 0.4s ease-in-out;
}

.index_header_marquee_span {
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	margin: 0 50px;
}

.index_header_marquee_link_text {
	color: #0071bc;
	transition: all 0.4s ease-in-out;
}

.index_header_marquee_link:hover,
.index_header_marquee_link:hover .index_header_marquee_link_text {
	color: #f5db68;
}

@media (max-width: 575px) {
	.index_header_marquee {
		margin: 0 20px;
	}

	.index_header_marquee_link {
		font-size: 16px;
	}

	.index_header_marquee_span {
		font-size: 16px;
	}
}

.index_header_header_content {
	display: flex;
	align-items: center;
}

.index_header_btn_group {
	display: flex;
}

.index_header_btn {
	color: #fff;
	cursor: pointer;
	margin-right: 50px;
	font-size: 30px;
	transition: all 0.4s ease-in-out;
}

.index_header_btn:hover {
	color: #f5db68;
}

.index_header_shopping_cart_btn {
	position: relative;
}

.index_header_shopping_cart_num {
	position: absolute;
	bottom: -8px;
	left: 50%;
	transform: translateX(-50%);
	min-width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #f5db68;
	color: #5b315e;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 12px;
	transition: all 0.4s ease-in-out;
}

.index_header_btn:hover .index_header_shopping_cart_num {
	background: #fff;
}

.index_header_search_btn {
	position: relative;
	z-index: 1;
}

.index_header_search_btn.active {
	color: #f5db68;
}

.index_header_search_bar_wrap {
	display: none;
	position: absolute;
	bottom: -50px;;
	right: -20px;
}

@media (max-width: 575px) {
	.index_header_search_bar_wrap {
		right: -60px;
	}
}

.index_header_search_bar {
	display: flex;
	align-items: center;
	background: #fff;
	padding: 5px 20px;
	border-radius: 20px;
	box-shadow: 0 0 3px rgba(0,0,0,.7);
	box-sizing: border-box;
}

.index_header_search_submit {
	font-size: 30px;
	padding: 0 5px 0 0;
	color: #826083;
	background: transparent;
	border: 0;
	cursor: pointer;
	transition: all 0.4s ease-in-out;
}

.index_header_search_submit:hover {
	opacity: 0.7;
}

.index_header_search_input {
	font-size: 16px;
	background: transparent;
	border: 0;
	border-bottom: 2px solid #826083;
	color: #826083;
	border-radius: 0;
	flex-shrink: 1;
}

@media (max-width: 575px) {
	
	.index_header_search_bar {
		padding: 5px 10px;
		padding-right: 20px;
	}

	.index_header_search_input {
		width: 150px;
	}
}

.index_header_search_input::-webkit-input-placeholder {
	color: rgb(130, 96, 131, .7);
	text-align: right;
}

.index_header_search_input:-ms-input-placeholder {
	color: rgb(130, 96, 131, .7);
	text-align: right;
}

.index_header_search_input::placeholder {
	color: rgb(130, 96, 131, .7);
	text-align: right;
}

.index_header_lang_select {
	margin-right: 30px;
	background: transparent;
	border: 0;
	color: #fff;
	font-size: 20px;
	cursor: pointer;
	padding-right: 25px;

	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	background: url('../img/select_icon.png') no-repeat right top 10px / 20px 8px;
}

.index_header_lang_select:hover {
	color: #f5db68;
	transition: all 0.4s ease-in-out;
}

.index_header_lang_select option {
	color: #212121;
	cursor: pointer;
}

@media (max-width: 767px) {
	.index_header_btn {
		font-size: 25px;
		margin-right: 30px;
	}

	.index_header_lang_select {
		margin-right: 0px;
		font-size: 16px;
		padding-right: 20px;
		background-size: 15px 6px;
	}

	.index_header_shopping_cart_num {
		width: 18px;
		height: 18px;
	}
}

@media (max-width: 575px) {
	.index_header_btn {
		font-size: 20px;
		margin-right: 20px;
	}
}

/* 選單按鈕 */
.ham {
	cursor: pointer;
	-webkit-tap-highlight-color: transparent;
	transition: transform 400ms 150ms;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.hamRotate.active {
	transform: rotate(45deg);
}
.hamRotate180.active {
	transform: rotate(180deg);
}
.line {
	fill:none;
	transition: stroke-dasharray 400ms 150ms, stroke-dashoffset 400ms 150ms;
	stroke:#fff;
	stroke-width:5.5;
	stroke-linecap:round;
}
.ham1 .top {
	stroke-dasharray: 40 139;
}
.ham1 .bottom {
	stroke-dasharray: 40 180;
}
.ham1.active .top {
	stroke-dashoffset: -98px;
}
.ham1.active .bottom {
	stroke-dashoffset: -138px;
}

.mobile_meun_btn svg {
	height: 60px;
}

.mobile_meun_btn:hover .line {
	stroke: #f5db68;
	transition: all 0.4s ease-in-out;
}

@media (max-width: 575px) {
	.index_header_container {
		padding-right: 10px;
	}

	.mobile_meun_btn svg {
		width: 40px;
		height: 40px;
	}
}

/* 側邊導覽列 */
.sidenav {
	position: fixed;
	top: 0;
	right: 0;
	width: 300px;
	height: 100vh;
	background: #fff;
	z-index: 10;
	box-shadow: 0 0 3px 3px rgba(0,0,0,.1);
	transform: translateX(calc(100% + 10px));
	transition: transform 0.3s;
}

.sidenav.active {
	transform: translateX(0);
}

.sidenav_menu_btn_wrap {
	padding: 20px 30px;
	display: flex;
	justify-content: flex-end;
}

.sidenav_menu_btn {
	height: 60px;
}

.sidenav_menu_btn .line {
	stroke:#5b315e;
}

.sidenav_container {
	height: calc(100vh - 135px);
	overflow-y: overlay;
}

.sidenav_container::-webkit-scrollbar {
    width: 5px;
}

.sidenav_container::-webkit-scrollbar-track {
    background: transparent; 
}
 
.sidenav_container::-webkit-scrollbar-thumb {
	background: #ebebeb; 
}

.sidenav_container::-webkit-scrollbar-thumb:hover {
	background: #d6d6d6;
}

.sidenav_link {
	text-align: center;
	font-weight: bold;
	color: #5b315e;
	font-size: 25px;
	margin-bottom: 50px;
	display: block;
	line-height: 1;
	transition: all 0.4s ease-in-out;
}

.sidenav_link:hover {
	color: #f5db68;
}

.sidenav_dropdown {
	margin-bottom: 50px;
}

.sidenav_dropdown_title, .sidenav_sub_dropdown_title {
	text-align: center;
	font-weight: bold;
	color: #5b315e;
	font-size: 25px;
	cursor: pointer;
	position: relative;
	transition: all 0.4s ease-in-out;
	margin-top: 30px;
}

.sidenav_sub_dropdown_title {
	font-size: 20px;
	display: flex;
	padding-left: 60px;
}

.sidenav_sub_dropdown_title i {
	position: absolute;
	right: 70px;
	top: 5px;
	transform: rotate(180deg);
	font-size: 16px;
	margin-left: 5px;
	transition: transform 0.4s ease-in-out, top 0.4s ease-in-out;
}

.sidenav_sub_dropdown_title.active i {
	transform: rotate(0);
	top: 3px;
}

.sidenav_dropdown_title:hover,
.sidenav_sub_dropdown_title:hover {
	color: #f5db68;
}

.sidenav_dropdown_title.active {
	color: #826083;
}

.sidenav_dropdown_title.active:before {
	content: '';
	width: 10px;
	height: 10px;
	border-radius: 50%;
	border: 2px solid #826083;
	position: absolute;
	left: 65px;
	bottom: -14px;
}

.sidenav_dropdown_title.active:after {
	content: '';
	position: absolute;
	left: 85px;
	bottom: -10px;
	width: 140px;
	height: 2px;
	background: #826083;
}

.product_navi_1_icon_wrap {
	position: relative;
    margin-right: 10px;
    width: 35px;
    height: 25px;
}

.sidenav_dropdown_content, .sidenav_sub_dropdown_content {
	display: none;
}

.sidenav_sub_dropdown_content {
	margin-top: 15px;
	padding: 15px 0;
	background: rgba(0,0,0,.02);
}

.sidenav_dropdown_link, .sidenav_sub_dropdown_link {
	display: block;
	margin-top: 30px;
	font-size: 20px;
	font-weight: bold;
	padding-left: 90px;
	color: #5b315e;
	transition: all 0.4s ease-in-out;
	display: flex;
}

.sidenav_sub_dropdown_link:first-child {
	margin-top: 0;
}

.product_navi_2_icon_wrap {
	position: relative;
	margin-right: 10px;
	width: 35px;
	height: 25px;
}

.product_navi_icon {
	width: 35px;
	height: 25px;
	object-fit: contain;
	transition-delay: 0.5s;
	display: block;
	transition: all 0.4s ease-in-out;
}

.product_navi_icon.hover {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}

.sidenav_sub_dropdown_title:hover .product_navi_icon.hover,
.sidenav_sub_dropdown_link:hover .product_navi_icon.hover {
	opacity: 1;
}

.sidenav_sub_dropdown_title:hover .product_navi_icon.origin,
.sidenav_sub_dropdown_link:hover .product_navi_icon.origin {
	opacity: 0;
}

.member_dropdown_link {
	padding-left: 0;
	justify-content: center;
}

.sidenav_dropdown_link:hover, .sidenav_sub_dropdown_link:hover {
	color: #f5db68;
}

/* 首頁 */
.index_body {
	background: #5b315e;
}

.index_content {
	display: flex;
	justify-content: center;
	align-items: flex-start;
	background: #5b315e;
	height: 875px;
	height: calc(100vh - 100px - 64px - 59px);
	position: relative;
	padding: 0 20px;
	min-height: 705px;
}

.index_content_img_wrap {
	position: relative;
}

.index_content_remind_block {
	position: absolute;
	top: 0px;
	right: -160px;
	opacity: 0;
	cursor: pointer;
}

.index_content_remind_block img {
	width: 255px;
}

.index_content_remind_block.show {
	animation: bounce-in-fwd 1.1s both;
	opacity: 1;
}

@keyframes bounce-in-fwd {
	0% {
	  -webkit-transform: scale(0);
			  transform: scale(0);
	  -webkit-animation-timing-function: ease-in;
			  animation-timing-function: ease-in;
	  opacity: 0;
	}
	38% {
	  -webkit-transform: scale(1);
			  transform: scale(1);
	  -webkit-animation-timing-function: ease-out;
			  animation-timing-function: ease-out;
	  opacity: 1;
	}
	55% {
	  -webkit-transform: scale(0.8);
			  transform: scale(0.8);
	  -webkit-animation-timing-function: ease-in;
			  animation-timing-function: ease-in;
	}
	72% {
	  -webkit-transform: scale(1);
			  transform: scale(1);
	  -webkit-animation-timing-function: ease-out;
			  animation-timing-function: ease-out;
	}
	81% {
	  -webkit-transform: scale(0.84);
			  transform: scale(0.84);
	  -webkit-animation-timing-function: ease-in;
			  animation-timing-function: ease-in;
	}
	89% {
	  -webkit-transform: scale(1);
			  transform: scale(1);
	  -webkit-animation-timing-function: ease-out;
			  animation-timing-function: ease-out;
	}
	95% {
	  -webkit-transform: scale(0.95);
			  transform: scale(0.95);
	  -webkit-animation-timing-function: ease-in;
			  animation-timing-function: ease-in;
	}
	100% {
	  -webkit-transform: scale(1);
			  transform: scale(1);
	  -webkit-animation-timing-function: ease-out;
			  animation-timing-function: ease-out;
	}
}

@media (max-width: 1400px) {
	.index_content_remind_block {
		top: -10px;
		right: -100px;
	}

	.index_content_remind_block img {
		width: 180px;
	}
}

@media (max-width: 575px) {
	.index_content_remind_block {
		top: -25px;
		right: -60px;
		animation: bounce-in-fwd 1.1s 1s both;
		opacity: 1;
	}

	.index_content_remind_block img {
		width: 150px;
	}
}

.index_content_img {
	cursor: pointer;
	width: 480px; /* 480*480 */
	height: 480px;
	object-fit: cover;
	display: none;
	margin-top: 30px;
}

.index_cat_img {
	position: absolute;
	object-fit: cover;
	height: auto;
	display: none;
}

#cat_left {
	bottom: -30px;
	left: 270px;
	width: 480px;

	left: 25%;
	transform: translateX(-240px);
}

#cat_mid {
	bottom: -20px;
	width: 320px;
	left: 50%;
	transform: translateX(-110px);
}

#cat_right {
	bottom: -15px;
	right: 260px;
	width: 420px;

	right: 25%;
	transform: translateX(210px);
}

@media (max-width: 1600px) {
	#cat_left {
		transform: translateX(-300px);
	}
	
	#cat_right {
		transform: translateX(300px);
	}
}

@media (max-width: 1400px) {
	.index_content {
		align-items: center;
		min-height: 500px;
	}

	.index_content_img {
		width: 300px;
		height: 300px;
	}

	#cat_left {
		width: calc(1400px / 1920 * 480);
		transform: translateX(-200px);
	}

	#cat_mid {
		width: calc(1400px / 1920 * 320);
		transform: translateX(-70px);
	}

	#cat_right {
		width: calc(1400px / 1920 * 420);
		transform: translateX(200px);
	}
}

@media (max-width: 1100px) {
	#cat_left {
		transform: translateX(0px);
		left: 30px;
	}

	#cat_right {
		transform: translateX(0px);
		right: 30px;
	}
}

@media (max-width: 991px) {
	#cat_left {
		width: calc(991px / 1920 * 480);
		bottom: -15px;
	}

	#cat_mid {
		width: calc(991px / 1920 * 320);
	}

	#cat_right {
		width: calc(991px / 1920 * 420);
	}
}

@media (max-width: 767px) {
	#cat_left {
		width: calc(767px / 1920 * 480);
		bottom: -15px;
	}

	#cat_mid {
		width: calc(767px / 1920 * 320);
		bottom: -10px;
		transform: translateX(-50px);
	}

	#cat_right {
		width: calc(767px / 1920 * 420);
		bottom: -5px;
	}
}

@media (max-width: 575px) {
	.index_content {
		height: calc(100vh - 60px - 137px - 107px);
	}

	.index_content_img {
		width: 200px;
		height: 200px;
	}

	#cat_left {
		width: calc(450px / 1920 * 480);
		left: 15px;
		bottom: -10px;
	}

	#cat_mid {
		width: calc(450px / 1920 * 320);
		transform: translateX(-50%);
		bottom: -5px;
	}

	#cat_right {
		width: calc(450px / 1920 * 420);
		right: 15px;
	}
}

/* 首頁頁腳 */
.index_footer_nav_wrap {
	background: #826083;
	display: flex;
	align-items: flex-end;
}

.index_footer_nav {
	width: 930px;
	max-width: 100%;
	padding: 20px 50px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
}

.index_footer_link {
	color: #fff;
	font-size: 20px;
	transition: all 0.4s ease-in-out;
	text-align: center;
}

.index_footer_link:hover {
	color: #f5db68;
}

.index_footer_bottom {
	background: #5b315e;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 15px 15px 20px;
}

.index_footer_bottom_text {
	margin: 0 10px;
	color: #fff;
	font-size: 14px;
	text-align: center;
}

.index_footer_bottom_link {
	color: #fff;
	transition: all 0.4s ease-in-out;
}

.index_footer_bottom_link:hover {
	color: #f5db68;
}

@media (max-width: 991px) {
	.index_footer_link {
		font-size: 18px;
	}
}

@media (max-width: 767px) {
	.index_footer_nav {
		flex-wrap: wrap;
		padding: 15px 15px 5px;
	}

	.index_footer_link {
		width: 50%;
		margin-bottom: 15px;
		text-align: center;
	}
}

@media (max-width: 575px) {
	.index_footer_link {
		font-size: 16px;
	}
}

/* 內頁頁腳 */
.footer_nav_wrap {
	background: #826083;
	display: flex;
	align-items: flex-end;
}

.footer_nav {
	width: 930px;
	max-width: 100%;
	padding: 20px 50px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
}

.footer_link {
	color: #fff;
	font-size: 20px;
	transition: all 0.4s ease-in-out;
}

.footer_link:hover {
	color: #f5db68;
}

.footer_bottom {
	background: #5b315e;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 15px 15px 20px;
}

.footer_bottom_text {
	margin: 0 10px;
	color: #fff;
	font-size: 14px;
	text-align: center;
}

.footer_bottom_link {
	color: #fff;
	transition: all 0.4s ease-in-out;
}

.footer_bottom_link:hover {
	color: #f5db68;
}

@media (max-width: 767px) {
	.footer_nav {
		flex-wrap: wrap;
		padding: 15px 15px 5px;
	}

	.footer_link {
		width: 50%;
		margin-bottom: 15px;
		text-align: center;
	}
}

@media (max-width: 575px) {
	.footer_link {
		font-size: 16px;
	}
}

#totop {
	position: fixed;
	right: 15px;
	bottom: 40px;
	display: none;
	z-index: 1;
}

@media (max-width: 991px) {
	#totop img {
		width: 80px;
	}
}

@media (max-width: 575px) {
	#totop {
		right: 10px;
		bottom: 15px;
	}
	
	#totop img {
		width: 65px;
	}
}

/* 共通項目 */
.gs_breadcrumb {
	background: #f0ebf0;
	position: fixed;
	top: 100px;
	width: 100%;
	z-index: 2;
}

@media (max-width: 1300px) {
	.gs_breadcrumb {
		top: 142px;
	}
}

@media (max-width: 991px) {
	.gs_breadcrumb {
		/* top: 80px; */
		top: 122px;
	}
}

@media (max-width: 767px) {
	.gs_breadcrumb {
		/* top: 60px; */
		top: 102px;
	}
}

@media (max-width: 575px) {
	.gs_breadcrumb {
		top: 98px;
	}
}

.gs_breadcrumb_inner_container {
	width: 1200px;
	margin: 0 auto;
	padding: 10px 50px;
	max-width: 100%;
	display: flex;
    align-items: center;
}

@media (max-width: 575px) {
	.gs_breadcrumb_inner_container {
		padding: 10px 15px;
		font-size: 14px;
	}
}

.gs_breadcrumb_link {
	color: #744779;
	line-height: 1;
	font-weight: bold;
	transition: all 0.4s ease-in-out;
	flex-shrink: 0;
}

.gs_breadcrumb_arrow {
	margin: 0 10px;
	color: #744779;
	flex-shrink: 0;
}

.gs_breadcrumb_current_link {
	color: #a27ea6;
	line-height: 1;
	font-weight: bold;
	transition: all 0.4s ease-in-out;
	flex-shrink: 1;
	text-overflow: ellipsis;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	word-break: break-all;
}

.gs_breadcrumb_link:hover {
	color: #744779;
	opacity: 0.7;
}

.gs_container {
	width: 1200px;
    margin: 0 auto;
}

@media (max-width: 1400px) {
	.gs_container {
		width: 1000px;
	}
}

@media (max-width: 1200px) {
	.gs_container {
		width: 850px;
	}
}

@media (max-width: 1020px) {
	.gs_container {
    	width: 720px;
	}
}

@media (max-width: 767px) {
	.gs_container {
		width: 540px;
	}
}

@media (max-width: 575px) {
	.gs_container {
		width: 100%;
	}
}

.gs_pagination {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.gs_pagination_link {
	width: 50px;
	height: 50px;
	border-radius: 50%;
	margin: 0 5px;
	color: #724577;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: bold;
	transition: all 0.4s ease-in-out;
}

.gs_pagination_link.prev,
.gs_pagination_link.next {
	font-size: 20px;
	width: 30px;
}

.gs_pagination_link:hover {
	color: #f5db68;
}

.gs_pagination_link.active {
	color: #fff;
	position: relative;
}

.gs_pagination_link.active i {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #724577;
	z-index: -1;
	font-size: 40px;
}

/* google 驗證 */
#RecaptchaField {
	display: flex;
	justify-content: center;
	margin-bottom: 30px;
	flex-grow: 1;
}

/* 商品影片 */
.product_video_container {
	min-height: 670px;
}

.product_video_title_wrap {
	display: flex;
	justify-content: flex-end;
	opacity: 0;
}

.product_video_title_wrap.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_video_title {
	width: 75%;
	text-align: center;
	color: #5b315e;
	font-weight: bold;
	font-size: 40px;
	line-height: 1;
	padding: 30px 0 20px;
}

.product_video_list_wrap {
	width: 100%;
	padding: 0 10px 30px;
	display: flex;
	flex-wrap: wrap;
}

.product_video_navi_block {
	width: 20%;
	padding-right: 30px;
	opacity: 0;
}

.product_video_navi_block.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_video_navi_title {
	font-size: 25px;
	font-weight: bold;
	color: #5b315e;
	border-bottom: 3px solid #5b315e;
	margin-bottom: 25px;
	padding: 20px 10px;
	line-height: 1;
}

.product_video_navi_title i {
	display: none;
}

.product_video_navi {
	font-size: 25px;
	font-weight: bold;
	color: #5b315e;
	margin-bottom: 25px;
	display: block;
	padding: 0 10px;
	transition: all 0.4s ease-in-out;
}

.product_video_navi:hover {
	color: #a27ea6;
}

.product_video_navi.active {
	color: #f5db68;
}

.product_video_list_area {
	width: 80%;
	opacity: 0;
}

.product_video_list_area.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_video_list_block_wrap {
	border-radius: 20px;
	border: 1px solid #b4b4b4;
	padding: 40px 40px 10px;
	margin-bottom: 80px;
}

.product_video_list_block {
	display: flex;
	flex-wrap: wrap;
	margin-left: -15px;
	margin-right: -15px;
}

.product_video_list {
	width: calc((100% - 6*15px) / 3);
	margin: 0 15px 30px;
	opacity: 0;
}

.product_video_list.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_video_list_href {
	display: block;
}

.product_video_list_img_wrap {
	display: block;
	height: calc(((1200px - 20px) * 0.8 - 2px - 80px - 60px) / 3 / 290 * 190);
	position: relative;
	margin-bottom: 10px;
	border: 1px solid transparent;
	transition: border 0.4s ease-in-out;
}

.product_video_list_img_wrap::after {
	content: '';
	background: url('../img/video_play_icon.png') no-repeat center / cover;
	width: 40px;
	height: 25px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.product_video_list_img {
	width: 100%; /* 290*190 */
	height: 100%;
	object-fit: cover;
}

.product_video_list_href:hover .product_video_list_img_wrap {
	border: 1px solid #5b315e;
	box-shadow: 0 0 10px 3px rgba(0,0,0,.1);
}

.product_video_list_title {
	text-align: center;
	color: #744779;
	font-size: 20px;
	font-weight: bold;
}

.product_video_list_title i {
	font-size: 16px;
	margin-right: 5px;
}

@media (max-width: 1400px) {
	.product_video_list_img_wrap {
		height: calc(((1000px - 20px)*0.8 - 2px - 80px - 60px) / 3 / 290 * 190 );
	}

	
	.product_video_navi_title {
		padding: 20px 0px;
	}

	.product_video_navi {
		font-size: 20px;
	}

	.product_video_list_title {
		font-size: 16px;
	}
}

@media (max-width: 1200px) {
	.product_video_list_img_wrap {
		height: calc(((850px - 20px)*0.8 - 2px - 60px - 60px) / 3 / 290 * 190 );
	}

	.product_video_list_block_wrap {
		padding: 30px 30px 0;
	}
}

@media (max-width: 1020px) {
	.product_video_list_img_wrap {
		height: calc(((720px - 20px)*0.8 - 2px - 60px - 60px) / 3 / 290 * 190 );
	}

	.product_video_list_title {
		font-size: 16px;
	}

	.product_video_list_title i {
		font-size: 12px;
	}


	.product_video_navi {
		padding: 0;	
	}
}

@media (min-width: 768px) {
	.product_video_navi_wrap {
		display: block !important;
	}
}

@media (max-width: 767px) {
	.product_video_title_wrap {
		margin-bottom: 30px;
	}

	.product_video_title {
		width: 100%;
	}
	
	.product_video_navi_block {
		width: 100%;
		padding-right: 0;
		margin-bottom: 30px;
		border: 1px solid #5b315e;
		border-bottom: 0;
	}

	.product_video_navi_title {
		text-align: center;
		margin-bottom: 0;
		padding: 10px 15px;
		border-bottom: 0;
		background: #5b315e;
		color: #fff;
		cursor: pointer;
		font-size: 20px;
		display: flex;
	}

	.product_video_navi_title i {
		display: block;
		margin-left: -15px;
		transition: all 0.4s ease-in-out;
	}

	.product_video_navi_title.active i {
		transform: rotate(90deg);
	}

	.product_video_navi_title_text {
		margin: 0 auto;
	}

	.product_video_navi_wrap {
		display: none;
	}

	.product_video_navi {
		margin-bottom: 0;
		padding: 10px 15px;
		text-align: center;
		border-bottom: 1px solid #5b315e;
	}

	.product_video_list_area {
		width: 100%;
	}

	.product_video_list {
		width: calc((100% - 4*15px) / 2);
		margin: 0 15px 30px;
	}

	.product_video_list_img_wrap {
		height: calc((540px - 20px - 2px - 60px - 30px) / 2 / 290 * 190 );
	}
}

@media (max-width: 575px) {
	.product_video_list_block_wrap {
		padding: 20px 10px 0;
	}

	.product_video_list_block {
		margin-left: -5px;
		margin-right: -5px;
	}

	.product_video_list {
		width: calc((100% - 4*5px) / 2);
		margin: 0 5px 20px;
	}

	.product_video_list_img_wrap {
		height: calc((100vw - 20px - 2px - 30px ) / 2 / 290 * 190 );
	}
}

/* 關於我們 */
.about_wrap {
	padding: 30px 10px 50px;
	display: flex;
	flex-wrap: wrap;
}

.about_navi_block {
	width: calc(100% / 6);
	position: -webkit-sticky;
	position: sticky;
	top: 150px;
	align-self: flex-start;
	opacity: 0;
}

.about_navi_block.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.about_navi_title {
	font-size: 25px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
	padding: 10px 0;
	position: relative;
}

.about_navi_title_bottom_line {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(calc(-50% - 5px));
	width: 65px;
	height: 2px;
	border-radius: 1px;
	background: #77497b;
}

.about_navi_title_bottom_line::after {
	content: '';
	display: block;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #77497b;
	transform: translate(70px, -1px);
}

.about_navi_title_mobile {
	background: #5b315e;
	color: #fff;
	font-weight: bold;
	text-align: center;
	font-size: 20px;
	padding: 10px 15px;
	cursor: pointer;
	display: none;
	align-items: center;
}

.about_navi_title_mobile_text {
	margin: 0 auto;
}

.about_navi_title_mobile i {
	margin-left: -15px;
	transition: all 0.4s ease-in-out;
}

.about_navi_title_mobile.active i {
	transform: rotate(90deg);
}

.about_navi {
	display: block;
	font-size: 20px;
	font-weight: bold;
	color: #77497b;
	text-align: center;
	margin-bottom: 30px;
	transition: all 0.4s ease-in-out;
}

.about_navi:hover {
	color: #a27ea6;
}

.about_navi.active {
	color: #f5db68;
}

@media (min-width: 768px) {
	.about_navi_wrap {
		display: block !important;
	}
}

@media (max-width: 767px) {
	.about_navi_block {
		margin-bottom: 30px;
		position: static;
	}

	.about_navi_title_mobile {
		display: flex;
	}

	.about_navi_wrap {
		border: 1px solid #5b315e;
		border-bottom: 0;
		display: none;
	}

	.about_navi {
		margin-bottom: 0;
		padding: 15px;
		border-bottom: 1px solid #5b315e;
	}
}

.about_content_block_wrap {
	width: calc(100% / 6 * 5);
}

.about_banner {
	width: 100%; /* 990*410 */
	height: calc((1200px - 20px) / 6 * 5 / 990 * 410);
	background: #000 no-repeat center / cover;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 40px;
	opacity: 0;
}

.about_banner.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.about_banner_wrap {
	width: 100%; /* 990*410 */
	background: #000 no-repeat center / cover;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 40px;
	opacity: 0;
}

.about_banner_wrap.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.about_banner_wrap iframe {
	width: 100%;
	height: 100%;
}

.about_title_block {
	display: flex;
	justify-content: center;
	align-items: center;
	opacity: 0;
}

.about_title_block.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.about_title_wrap {
	width: 560px;
	max-width: 100%;
	text-align: center;
	background: rgba(255,255,255,.7);
	border-radius: 10px;
	padding: 20px 10px 30px;
}

.about_title {
	font-size: 60px;
	line-height: 1;
	font-weight: bold;
	margin-bottom: 15px;
	padding-bottom: 15px;
	position: relative;
	color: #934b9a;
}

.about_title_bottom_line {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(calc(-50% - 5px));
	width: 270px;
	height: 3px;
	border-radius: 3px;
	background: #77497b;
}

.about_title_bottom_line::after {
	content: '';
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #77497b;
	transform: translate(280px, -5px);
}

.about_subtitle {
	font-size: 24px;
	font-weight: bold;
	color: #934b9a;
	line-height: 1.5;
}

.about_content {
	margin: 0 40px;
	background: #9a799d;
	color: #fff;
	padding: 30px 20px;
	white-space: pre-wrap;
	opacity: 0;
}

.about_content.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.company_title_wrap {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 10px 0;
	height: 270px;
	position: relative;
	opacity: 0;
}

.company_title_wrap.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.company_title_text {
	font-size: 45px;
	font-weight: bold;
	color: #9a799d;
	text-orientation: upright;
	width: 50%;
	line-height: 1;
	padding: 0 15px;
}

.company_title_text:nth-child(1) {
	writing-mode: vertical-lr;
	align-self: flex-end;
	text-align: left;
}

.company_title_text:nth-child(2) {
	writing-mode: vertical-rl;
	align-self: flex-start;
	text-align: right;
}

.company_title_line {
	width: 2px;
	height: 250px;
	background: #744779;
	position: absolute;
	top: 10px;
	left: 50%;
	transform: translateX(-50%);
}

.company_info_wrap {
	margin-top: -50px;
}

.company_info_item {
	display: flex;
	align-items: center;
	margin-bottom: 25px;
	opacity: 0;
}

.company_info_item.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.company_info_year {
	width: 140px;
	height: 140px;
	border-radius: 50%;
	background: #744779;
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
}

.company_info_content {
	color: #744779;
	font-weight: bold;
	position: relative;
}

.company_info_content:after {
	content: '';
	width: 100px;
	height: 1px;
	background: #744779;
	position: absolute;
	top: 50%;
}

.company_info_item:nth-child(even) {
	flex-direction: row-reverse;
}


.company_info_item:nth-child(odd) .company_info_content {
	margin-left: 110px;
}

.company_info_item:nth-child(even) .company_info_content {
	margin-right: 110px;
}

.company_info_item:nth-child(odd) .company_info_content:after {
	left: -110px;
}

.company_info_item:nth-child(even) .company_info_content:after {
	right: -110px;
}

@media (max-width: 1400px) {
	.about_banner {
		height: calc((1000px - 20px) / 6 * 5 / 990 * 410);
	}
}


@media (max-width: 1200px) {
	.about_banner {
		height: calc((850px - 20px) / 6 * 5 / 990 * 410);
	}
	
	.about_banner_content {
		width: 480px;
	}

	.about_title {
		font-size: 50px;
	}

	.about_subtitle {
		font-size: 20px;
	}

	.about_content {
		margin: 0 20px;
	}

	.company_info_wrap {
		margin-top: 0;
	}

	.company_info_year {
		width: 110px;
		height: 110px;
		font-size: 24px;
	}

	.company_info_content:after {
		width: 70px;
	}

	.company_info_item:nth-child(odd) .company_info_content {
		margin-left: 80px;
		margin-right: 30px;
	}
	
	.company_info_item:nth-child(even) .company_info_content {
		margin-right: 80px;
		margin-left: 30px;
	}

	.company_info_item:nth-child(odd) .company_info_content:after {
		left: -80px;
	}
	
	.company_info_item:nth-child(even) .company_info_content:after {
		right: -80px;
	}
}

@media (max-width: 1020px) {
	.about_banner {
		height: calc((720px - 20px) / 6 * 5 / 990 * 410);
	}
}

@media (max-width: 767px) {
	.about_navi_block {
		width: 100%;
	}

	.about_content_block_wrap {
		width: 100%;
	}

	.about_banner {
		height: calc((540px - 20px) / 6 * 5 / 990 * 410);
	}

	.about_banner_content {
		width: 400px;
	}

	.about_title {
		font-size: 40px;
	}

	.about_subtitle {
		font-size: 16px;
	}

	.about_content {
		margin: 0 10px;
		padding: 20px 15px;
	}

	.company_info_item {
		margin-bottom: 30px;
	}

	.company_info_year {
		width: 90px;
		height: 90px;
		font-size: 20px;
	}

	.company_info_content:after {
		width: 50px;
	}

	.company_info_item:nth-child(odd) .company_info_content {
		margin-left: 60px;
	}
	
	.company_info_item:nth-child(even) .company_info_content {
		margin-right: 60px;
	}

	.company_info_item:nth-child(odd) .company_info_content:after {
		left: -60px;
	}
	
	.company_info_item:nth-child(even) .company_info_content:after {
		right: -60px;
	}
}

@media (max-width: 575px) {
	.about_banner {
		height: calc((100vw - 20px) / 990 * 410);
	}
}

/* 購物商城 */
.product_recommend_block {
	padding: 30px 50px;
	position: relative;
/*	opacity: 0;*/
}

.product_recommend_block.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_recommend_slider.slick-slide {
	height: auto;
}

.product_recommend_slider_arrow_prev,
.product_recommend_slider_arrow_next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	cursor: pointer;
	font-size: 35px;
	color: #704575;
	transition: all 0.4s ease-in-out;
}

.product_recommend_slider_arrow_prev:hover,
.product_recommend_slider_arrow_next:hover {
	color: #f5db68;
}

.product_recommend_slider_arrow_prev {
	left: 10px;
}

.product_recommend_slider_arrow_next {
	right: 10px;
}

.product_recommend_slider_container {
	width: 100%;
}

.product_recommend_slider_container .slick-dots button:before {
	font-size: 50px;
}

.product_recommend_href {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	color: #000;
	transition: all 0.4s ease-in-out;
}

.product_recommend_href:hover {
	color: #000;
}

.product_recommend_content_wrap {
	width: 50%;
	padding-right: 50px;
	display: flex;
	padding-top: 30px;
	padding-bottom: 30px;
}

.product_recommend_content {
	width: 100%;
	display: flex;
	flex-direction: column;
}

.product_recommend_title {
	font-size: 45px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 5px;
}

.product_recommend_subtitle {
	font-size: 25px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 30px;
}

.product_recommend_info {
	font-size: 18px;
	line-height: 1.5;
	margin-bottom: 100px;
	white-space: pre-wrap;
}

.product_recommend_more_wrap {
	text-align: right;
	margin-top: auto;
}

.product_recommend_more_href {
	color: #552f59;
	font-weight: bold;
	transition: all 0.4s ease-in-out;
}

.product_recommend_more_href:hover {
	color: #9d7da6;
}

.product_recommend_video_href {
	position: relative;
	transition: all 0.4s ease-in-out;
	width: 100%;
	height: 100%;
}

.product_recommend_video_href:hover {
	opacity: 0.7;
}

.product_recommend_video_href::after {
	content: '';
    background: url(../img/video_play_icon.png) no-repeat center / cover;
    width: 40px;
    height: 25px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.product_recommend_img_wrap {
	width: 50%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.product_recommend_img {
	width: 100%; /* 550 * 550 */
	height: 100%;
	object-fit: cover;
	/* margin-bottom: 10px; */
}

.product_recommend_img.object_fit_contain {
	object-fit: contain;
}

.product_recommend_video {
	width: 100%; /* 550*550 */
	height: 550px;
	margin-bottom: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.product_recommend_video iframe {
	width: 100%;
}

.product_recommend_img_descrip {
	padding: 0 40px;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 10px;
}

.product_recommend_size {
	padding: 0 40px;
	font-weight: bold;
	line-height: 1;
}

@media (max-width: 1400px) {
	/* .product_recommend_img {
		height: 450px;
	} */

	.product_recommend_video {
		height: 450px;
	}
}

@media (max-width: 1200px) {
	/* .product_recommend_img {
		height: 375px;
	} */

	.product_recommend_video {
		height: 375px;
	}
}

@media (max-width: 1020px) {
	.product_recommend_title {
		font-size: 30px;
		margin-bottom: 5px;
	}
	
	.product_recommend_subtitle {
		font-size: 20px;
		font-weight: bold;
		line-height: 1;
		margin-bottom: 30px;
	}

	.product_recommend_info {
		margin-bottom: 50px;
	}

	/* .product_recommend_img {
		height: 310px;
	} */

	.product_recommend_video {
		height: 310px;
	}

	.product_recommend_img_descrip,
	.product_recommend_size {
		padding: 0 20px;
	}
}

@media (max-width: 767px) {
	.product_recommend_block {
		padding: 30px 40px 0;
		margin-bottom: 30px;
	}

	.product_recommend_slider_arrow_prev,
	.product_recommend_slider_arrow_next {
		font-size: 30px;
	}

	.product_recommend_content_wrap {
		width: 100%;
		order: 2;
		padding-right: 0;
		/* min-height: 400px; */

		padding-top: 0;
		padding-bottom: 0;
	}

	.product_recommend_title {
		font-size: 25px;
	}

	.product_recommend_subtitle {
		font-size: 18px;
	}

	.product_recommend_info {
		font-size: 16px;
	}

	.product_recommend_img_wrap {
		width: 100%;
		margin-bottom: 30px;
	}

	/* .product_recommend_img {
		height: 460px;
	} */

	.product_recommend_video {
		height: 460px;
	}
}

@media (max-width: 575px) {
	/* .product_recommend_img {
		height: calc(100vw - 80px);
	} */

	.product_recommend_video {
		height: calc(100vw - 80px);
	}

	.product_recommend_img_descrip {
		padding: 0;
	}
}

.filter_navi_wrap {
	margin-bottom: 120px;
/*	opacity: 0;*/
	position: relative;
    z-index: 1;
}

.filter_navi_wrap.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.filter_navi {
	background: #744779;
	display: flex;
	padding: 10px 0;
}

.filter_navi_item {
	width: 240px;
	border-right: 2px solid #fff;
	position: relative;
	font-weight: bold;
}

.filter_navi_item_title {
	color: #fff;
	font-size: 20px;
	width: 100%;
	height: 100%;
	display: flex;
	cursor: pointer;
	padding: 10px 20px 10px 40px;
	justify-content: space-between;
	align-items: center;
	transition: all 0.4s ease-in-out;
}

.filter_navi_item_title:hover,
.filter_navi_item_title.active {
	color: #f5db68;
}

@media (max-width: 1400px) {
	.filter_navi_item {
		width: 200px;
	}
}

@media (max-width: 1020px) {
	.filter_navi_item {
		width: 160px;
	}

	.filter_navi_item_title {
		padding: 10px 20px;
	}
}

.filter_navi_item:last-child {
	margin-left: auto;
	border-right: 0;
	border-left: 2px solid #fff;
}

.filter_navi_item > i {
	font-size: 16px;
}

.filter_control {
	display: none;
	z-index: 1;
	padding: 10px 30px 10px 15px;
	border: 1px solid #000;
	position: absolute;
	top: 100%;
	left: 0;
	background: #fff;
	color: #212121;
	cursor: auto;
}

.price_filter_control {
	width: 640px;
}	

.size_filter_control {
	width: 320px;
}

.sequence_filter_control {
	right: 0;
	left: auto;
	padding: 10px 15px;
}

.color_filter_control {
	left: 50%;
	transform: translateX(-50%);
	padding: 10px 15px;
	width: 240px;
}

.filter_control_inner_wrap {
	margin-bottom: 15px;
}

.filter_control_text {
	font-size: 16px;
	margin-bottom: 10px;
}

.filter_submit_wrap {
	display: flex;
	justify-content: flex-end;
	margin-top: 20px;
}

.filter_submit {
	background: #744779;
	color: #fff;
	padding: 5px 10px;
	cursor: pointer;
	transition: all ease-in-out 0.4s;
}

.filter_submit:hover {
	background: #9d7da6;
}

/* 滑動條 - start */
.range_slider_wrap {
	position: relative;
	padding-top: 30px;
}

.range_slider {
	position: relative;
	height: 5px;
	margin: 0 10px;
}

.range_slider_track {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	border-radius: 5px;
	background-color: #c6aee7;
}

.range_slider_range {
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	border-radius: 5px;
	background-color: #844f8a;
}

.range_slider_thumb {
	position: absolute;
	width: 20px;
	height: 20px;
	background-color: #e9ecef;
	border: 1px solid #adb5bd;
	border-radius: 50%;
}

.range_slider_thumb.left {
	left: 0%;
	transform: translate(-10px, -8px);
}
.range_slider_thumb.right {
	right: 0%;
	transform: translate(10px, -8px);
}

.range_slider_input {
	position: absolute;
	pointer-events: none;
	-webkit-appearance: none;
	z-index: 2;
	height: 5px;
	width: 100%;
	opacity: 0;
}

.range_slider_input::-webkit-slider-thumb {
	pointer-events: all;
	width: 20px;
	height: 20px;
	border-radius: 0;
	border: 0 none;
	background-color: red;
	-webkit-appearance: none;
	cursor: pointer;
}

/* 滑動條 - end */

.slider_price {
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	line-height: 1;
	font-size: 14px;
	padding: 5px;
	border-radius: 5px;
	background: #95989b;
	color: #fff;
}

.slider_size {
	position: absolute;
	bottom: 30px;
	left: 50%;
	transform: translateX(-50%);
	line-height: 1;
	font-size: 14px;
	padding: 5px;
	border-radius: 5px;
	background: #95989b;
	color: #fff;
}

.sequence_navi {
	display: block;
	font-size: 16px;
	color: #744779;
	padding: 10px 15px;
	cursor: pointer;
}

.sequence_navi:hover, .sequence_navi.active {
	color: #f5db68;
}

.color_navi {
	font-size: 16px;
	color: #744779;
	cursor: pointer;
	padding: 0 15px;
	border: 1px solid transparent;
	margin-right: -15px;
	margin-left: -15px;
}

.color_navi:hover {
	border-color: gray;
}

.color_navi:first-child {
	/* height: 46px; */
	/* line-height: 46px; */
}

.color_navi_label {
	margin-bottom: 0;
	display: flex;
	align-items: center;
	cursor: pointer;
	padding: 5px 0;
}

.color_navi_check {
	margin-right: 5px;
}

.color_navi_code {
	width: 15px;
	height: 15px;
	border-radius: 50%;
	border: 1px solid #000;
	margin-left: auto;
}

.filter_navi_title {
	display: none;
	background: #744779;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	margin: 0 15px;
	padding: 10px 20px;
	text-align: center;
	cursor: pointer;
	transition: all 0.4s ease-in-out;
}

.filter_navi_title:hover {
	color: #f5db68;
}

@media (min-width: 767px) {
	.filter_navi {
		display: flex !important;
	}
}

@media (max-width: 767px) {
	.filter_navi_wrap {
		margin-bottom: 30px;
	}

	.filter_navi_title {
		display: block;
	}

	.filter_navi {
		display: none;
		padding: 0 15px;
		background: transparent;
	}

	.filter_navi_item {
		width: 100%;
		background: #fff;
		border: 1px solid #744779;
		border-top: 0;
	}

	.filter_navi_item_title {
		color: #744779;

	}

	.filter_navi_item:last-child {
		border: 1px solid #744779;
		border-top: 0;
	}

	.filter_control {
		position: relative;
		background: #fff;
		border: 0;
		width: 100%;
	}
}

.product_list_block_wrap {
	padding-bottom: 30px;
}

.product_list_block {
	display: flex;
	flex-wrap: wrap;
	margin-left: -10px;
	margin-right: -10px;
}

.no_product_lists {
	text-align: center;
	font-size: 40px;
	font-weight: bold;
	width: 100%;
	height: 400px;
/*	opacity: 0;*/
}

.no_product_lists.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_list {
	width: calc((1200px - 3*20px) / 4);
	margin: 0 10px 50px;
	transition: all 0.4s ease-in-out;
/*	opacity: 0;*/
	display: flex;
	flex-direction: column;
}

.product_list.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_list_href {
	display: block;
	color: #fff;
}

.product_list_img_wrap {
	width: 100%;
	height: calc((1200px - 3*20px) / 4 / 280 * 270);
	position: relative;
	margin-bottom: 20px;
}

.product_list:hover {
	box-shadow: 5px 5px 5px 5px rgb(0 0 0 / 5%);
}

.product_list_img {
	width: 100%; /* 280*270 */
	height: 100%;
	object-fit: cover;
}

.product_list_news_icon {
	position: absolute;
	top: 0;
	left: 0;
	width: 65px;
	height: 55px;
	color: #592f5c;
	background-image: linear-gradient(140deg, #f9e431 50%, transparent 50%); 
	text-transform: uppercase;
	font-size: 14px;
	font-weight: bold;
	padding-top: 5px;
	padding-left: 5px;
}

.product_list_info {
	padding-left: 20px;
	color: #000;
}

.product_list_category {
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 10px;
}

.product_list_name, .product_list_size {
	line-height: 1.5;
}

.product_list_size {
	font-weight: bold;
}

.product_list_color_qty {
	font-weight: bold;
	margin-bottom: 10px;
}

.product_list_price {
	font-size: 24px;
	font-weight: bold;
	color: #744779;
	margin-bottom: 20px;
}

.product_list_btn_group {
	margin-top: auto;
}

.product_list_btn {
	width: 100%;
	background: #744779;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10px 5px;
	border-radius: 10px;
	cursor: pointer;
	transition: all 0.4s ease-in-out;
}

.product_list_btn:hover {
	background: #ab7bb0;
	color: #fff;
}

.product_list_btn i {
	font-size: 14px;
	margin-right: 5px;
}

.product_list_video_wrap {
	width: calc((1200px - 3*20px) / 4 * 2 + 20px);
	margin: 0 10px 50px;
	display: flex;
	flex-direction: column;
	justify-content: center;
/*	opacity: 0;*/
}

.product_list_video_wrap.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_list_video_wrap iframe {
	width: 100%; /* 590*390 */
	height: calc(((1200px - 3*20px) / 4 * 2 + 20px) / 590 * 390);
}

.product_list_video_wrap .product_ad_img {
	object-fit: cover;
	width: 100%; /* 590*390 */
	height: calc(((1200px - 3*20px) / 4 * 2 + 20px) / 590 * 390);
}

.product_list_video_info {
	padding: 0 40px;
	font-weight: bold;
}

.product_list_video_wrap1_lg,
.product_list_video_wrap2_lg,
.product_list_video_wrap2_md {
	display: none;
}

@media (max-width: 1400px) {
	.product_list {
		width: calc((1000px - 3*20px) / 4);
	}

	.product_list_img_wrap {
		height: calc((1000px - 3*20px) / 4 / 280 * 270);
	}

	.product_list_btn {
		font-size: 16px;
	}

	.product_list_video_wrap {
		width: calc((1000px - 3*20px) / 4 * 2 + 20px);
	}

	.product_list_video_wrap iframe {
		height: calc(((1000px - 3*20px) / 4 * 2 + 20px) / 590 * 390);
	}

	.product_list_video_wrap .product_ad_img {
		height: calc(((1000px - 3*20px) / 4 * 2 + 20px) / 590 * 390);
	}

	.product_list_video_info {
		padding: 0 10px;
	}
}

@media (max-width: 1200px) {
	.product_list {
		width: calc((850px - 2*20px) / 3);
	}

	.product_list_img_wrap {
		height: calc((850px - 2*20px) / 3 / 280 * 270);
	}

	.product_list_video_wrap {
		width: calc((850px - 2*20px) / 3 * 2 + 20px);
	}

	.product_list_video_wrap1,
	.product_list_video_wrap2 {
		display: none;
	}

	.product_list_video_wrap1_lg,
	.product_list_video_wrap2_lg {
		display: flex;
	}

	.product_list_video_wrap iframe {
		height: calc(((850px - 2*20px) / 3 * 2 + 20px) / 590 * 390);
	}

	.product_list_video_wrap .product_ad_img {
		height: calc(((850px - 2*20px) / 3 * 2 + 20px) / 590 * 390);
	}
}

@media (max-width: 1020px) {
	.product_list {
		width: calc((720px - 2*20px) / 3);
	}

	.product_list_img_wrap {
		height: calc((720px - 2*20px) / 3 / 280 * 270);
	}

	.product_list_video_wrap {
		width: calc((720px - 2*20px) / 3 * 2 + 20px);
	}

	.product_list_video_wrap iframe {
		height: calc(((720px - 2*20px) / 3 * 2 + 20px) / 590 * 390);
	}

	.product_list_video_wrap .product_ad_img {
		height: calc(((720px - 2*20px) / 3 * 2 + 20px) / 590 * 390);
	}
}

@media (max-width: 767px) {
	.product_list {
		width: calc((540px - 20px) / 2);
	}

	.product_list_img_wrap {
		height: calc((540px - 20px) / 2 / 280 * 270);
	}

	.product_list_video_wrap {
		width: 540px;
	}

	.product_list_video_wrap iframe {
		height: calc(540px / 590 * 390);
	}
	
	.product_list_video_wrap .product_ad_img {
		height: calc(540px / 590 * 390);
	}

	.product_list_video_wrap1 {
		display: flex;
	}

	.product_list_video_wrap1_lg,
	.product_list_video_wrap2_lg {
		display: none;
	}

	.product_list_video_wrap2_md {
		display: flex;
	}
}

@media (max-width: 575px) {
	.product_list_block {
		margin-left: 0;
		margin-right: 0;
	}

	.product_list {
		width: calc((100% - 2*20px) / 2);
	}

	.product_list_img_wrap {
		height: calc((100vw - 2*20px) / 2 / 280 * 270);
	}

	.product_list_video_wrap {
		width: calc(100vw - 20px);
	}

	.product_list_video_wrap iframe {
		height: calc((100vw - 20px) / 590 * 390);
	}

	.product_list_video_wrap .product_ad_img {
		height: calc((100vw - 20px) / 590 * 390);
	}
}

/* 購物商城內頁 */
.product_container {
	width: 1230px;
	padding: 0 15px;
	margin: 70px auto 0;
}

@media (max-width: 1400px) {
	.product_container {
		width: 1170px;
	}
}

@media (max-width: 1200px) {
	.product_container {
		width: 990px;
	}
}

@media (max-width: 1100px) {
	.product_container {
		width: 750px;
	}
}

@media (max-width: 767px) {
	.product_container {
		width: 570px;
	}
}

@media (max-width: 600px) {
	.product_container {
		width: 100%;
	}
}

.product_top_block {
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 50px;
	border-bottom: 2px solid #592f5c;
	margin-bottom: 50px;
}

.product_top_left_block {
	width: 60%;
	display: flex;
	align-items: center;
	padding-left: 50px;
/*	opacity: 0;*/
}

.product_top_left_block.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_sm_img_wrap {
	display: flex;
	flex-direction: column;
	margin-right: 35px;
	height: 450px;
	overflow: auto;
}

.product_sm_img_wrap::-webkit-scrollbar {
    width: 5px;
	height: 5px;
}

.product_sm_img_wrap::-webkit-scrollbar-track {
    background: transparent; 
}
 
.product_sm_img_wrap::-webkit-scrollbar-thumb {
	background: #c6aee7; 
}

.product_sm_img_wrap::-webkit-scrollbar-thumb:hover {
	background: #b69cdb; 
}

.product_sm_img {
	flex-shrink: 0;
	object-fit: cover;
	border: 2px solid transparent;
	width: 66px;
	height: 66px;
	box-sizing: content-box;
	margin-bottom: 5px;
	cursor: pointer;
}

.product_sm_img.active {
	border-color: #744779;
}

.product_slider_container_wrap {
	width: calc(100% - 70px - 40px);
	padding: 0 50px;
	position: relative;
}

.product_slider_arrow_prev,
.product_slider_arrow_next {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	cursor: pointer;
	font-size: 50px;
	color: #704575;
	transition: all 0.4s ease-in-out;
}

.product_slider_arrow_prev:hover,
.product_slider_arrow_next:hover {
	color: #f5db68;
}

.product_slider_arrow_prev {
	left: 0;
}

.product_slider_arrow_next {
	right: 0;
}

.product_slider  {
	position: relative;
}

.product_slider_img {
	width: 100%; /* 250*250 */
	height: calc(1200px * 0.6 - 50px - 70px - 40px - 2*50px);
	object-fit: cover;
}

.product_slider_tag {
	background: rgba(116, 71, 121, 0.7);
	color: #fff;
	position: absolute;
	padding: 0px 10px;
	border-radius: 100px;
	bottom: 10px;
	left: 15px;
}


@media (max-width: 1400px) {
	.product_slider_img {
		height: calc(1140px * 0.6 - 50px - 70px - 40px - 2*50px);
	}
}

@media (max-width: 1200px) {
	.product_slider_img {
		height: calc(960px * 0.6 - 50px - 70px - 40px - 2*50px);
	}
}

@media (max-width: 1100px) {
	.product_top_left_block {
		padding-left: 0;
	}

	.product_slider_arrow_prev,
	.product_slider_arrow_next {
		font-size: 40px;
	}

	.product_slider_container_wrap {
		width: calc(100% - 70px - 30px);
		padding: 0px 30px;
	}

	.product_slider_img {
		height: calc(720px * 0.6 - 70px - 30px - 2*30px);
	}

	.product_sm_img_wrap {
		margin-right: 25px;
	}	
}

@media (max-width: 767px) {
	.product_top_left_block {
		width: 100%;
		flex-direction: column;
		margin-bottom: 30px;
	}

	.product_slider_arrow_prev,
	.product_slider_arrow_next {
		font-size: 30px;
	}

	.product_sm_img_wrap {
		order: 1;
		flex-direction: row;
		margin-right: 0;
		height: auto;
		width: 450px;
	}

	.product_sm_img {
		margin-bottom: 0;
		margin-right: 5px;
	}

	.product_sm_img:last-child {
		margin-right: 0;
	}

	.product_slider_container_wrap {
		width: 100%;
		margin-bottom: 20px;
	}

	.product_slider_img {
		height: calc(540px - 2*30px);
	}

}

@media (max-width: 575px) {
	.product_sm_img_wrap {
		width: 330px;
	}

	.product_sm_img {
		width: 46px;
		height: 46px;
	}

	.product_slider_img {
		height: calc(100vw - 2*15px - 2*30px);
	}

}

.product_top_right_block {
	width: 40%;
	padding-left: 50px;
/*	opacity: 0;*/
}

.product_top_right_block.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 1.1s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_category {
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 5px;
}

.product_name {
	font-size: 24px;
	color: #592f5c;
	line-height: 1;
	border-bottom: 2px solid #592f5c;
	padding-bottom: 10px;
	margin-bottom: 10px;
}

.product_price {
	color: #592f5c;
	font-size: 40px;
	font-weight: bold;
	margin-bottom: 40px;
	line-height: 1;
}

.product_info_title {
	color: #9b61a2;
	font-weight: bold;
	font-size: 18px;
	border-bottom: 2px solid #592f5c;
	padding-bottom: 5px;
	margin-bottom: 15px;
}

.product_info {
	display: flex;
	margin-bottom: 15px;
}

.product_info_item {
	color: #9b61a2;
	font-weight: bold;
	font-size: 18px;
	margin-right: 15px;
	flex-shrink: 0;
}

.product_info_content {
	font-size: 18px;
	color: #000;
	font-weight: bold;
}

.product_info_color_wrap {
	display: flex;
	flex-wrap: wrap;
	flex-grow: 1;
}

.product_info_color {
	width: calc((100% - 2*15px) / 3);
	margin-right: 15px;
	border: 2px solid #826083;
	border-radius: 5px;
	color: #826083;
	font-weight: bold;
	font-size: 18px;
	text-align: center;
	margin-bottom: 10px;
	padding: 5px 10px;
	line-height: 1;
	cursor: pointer;
	transition: all 0.4s ease-in-out;
}

.product_info_color:nth-child(3n) {
	margin-right: 0;
}

.product_info_color:hover {
	border-color: #ab7bb0;
	background: #ab7bb0;
	color: #fff;
}

.product_info_color.active {
	border-color: #826083;
	background: #826083;
	color: #fff;
}

.product_info_select {
	color: #9b61a2;
	width: 100%;
	border-radius: 0;
	border: 2px solid #9b61a2;
	font-weight: bold;
	padding: 5px 10px;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url(../img/select_icon2.png) no-repeat right 5px center;
}

.product_info_select optgroup {
	color: #000;
}

.product_info_select option {
	color: #9b61a2;
}

.product_info_qty {
	margin-left: 40px;
	display: flex;
}

#product_qty::-webkit-outer-spin-button,
#product_qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

#product_qty {
  -moz-appearance: textfield;
  text-align: center;
  border-radius: 0;
  border: 0;
  border-bottom: 1px solid #ab7bb0;
  font-size: 20px;
  font-weight: bold;
  width: 140px;
  color: #744779;
}

#product_qty_minus, #product_qty_add {
	color: #ab7bb0;
	font-size: 20px;
	cursor: pointer;
}

.product_info_btn_group {
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
}

.product_info_btn {
	width: calc(50% - 5px);
	background: #744779;
	color: #fff;
	font-weight: bold;
	font-size: 20px;
	border: 0;
	padding: 10px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: all 0.4s ease-in-out;
}

.product_info_btn:hover {
	background: #ab7bb0;
	color: #fff;
}

.product_info_btn i {
	font-size: 18px;
	margin-right: 10px;
}

@media (max-width: 1100px) {
	.product_info_qty {
		margin-left: 0;
	}

	#product_qty {
		width: 130px;
	}

	.product_info_btn {
		font-size: 16px;
	}

	.product_info_btn i {
		font-size: 14px;
		margin-right: 3px;
	}
}

@media (max-width: 767px) {
	.product_top_right_block {
		width: 100%;
		padding-left: 0;
	}

	.product_name {
		font-weight: bold;
	}

	.product_info_title {
		font-size: 24px;
	}
}

.product_content_title {
	text-align: center;
	color: #744779;
	font-size: 20px;
	font-weight: bold;
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 30px;
/*	opacity: 0;*/
}

.product_content_title.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_content_title_bottom_line {
	background: #744779;
	width: 60px;
	height: 2px;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(calc(-50% - 5px ));
}

.product_content_title_bottom_line:after {
	content: '';
	width: 5px;
	height: 5px;
	display: block;
	border-radius: 50%;
	background: #744779;
	transform: translate(65px , -1px);
}

.product_content_block1 {
	display: flex;
	margin-bottom: 50px;
/*	opacity: 0;*/
}

.product_content_block1.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_content_block1_left {
	width: 55%;
}

.product_content_block1_img {
	width: 100%; /* 660*660 */
	height: calc(1200px * 0.55);
	object-fit: cover;
}

.product_content_block1_right {
	width: 45%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-left: 50px;
}

.product_content_block2 {
/*	opacity: 0;*/
}

.product_content_block2.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}


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

.product_content_info {
	margin-bottom: 15px;
}

.product_content_info_title {
	color: #9b61a2;
    font-weight: bold;
    font-size: 18px;
    margin-right: 15px;
    flex-shrink: 0;
	display: inline;
}

.product_content_info_description {
	font-size: 18px;
    color: #000;
    font-weight: bold;
	display: inline;
}

.product_content_info_description_color {
	font-size: 18px;
    color: #000;
    font-weight: bold;
	display: inline;
	margin-right: 5px;
}

@media (max-width: 1400px) {
	.product_content_block1_img {
		height: calc(1140px*0.55);
	}
}

@media (max-width: 1200px) {
	.product_content_block1_img {
		height: calc(960px*0.55);
	}
}

@media (max-width: 1100px) {
	.product_content_block1_img {
		height: calc(720px*0.55);
	}
}

@media (max-width: 767px) {
	.product_content_block1_img {
		height: calc(540px*0.55);
	}

	.product_content_block1_right {
		padding-left: 15px;
	}
}

@media (max-width: 600px) {
	.product_content_block1_img {
		height: calc((100vw - 30px)*0.55);
	}

	.product_content_info_title,
	.product_content_info_description {
		font-size: 16px;
	}

	.product_content_info_title {
		margin-right: 5px;
	}
}

.product_bottom_btn_group {
	margin-top: 60px;
	margin-bottom: 100px;
	display: flex;
	justify-content: center;
/*	opacity: 0;*/
}

.product_bottom_btn_group.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.product_bottom_btn {
	width: 180px;
	font-size: 20px;
    background: #744779;
    color: #fff;
    font-weight: bold;
    border: 0;
    padding: 10px 0;
    display: flex;
    justify-content: center;
    align-items: center;
	margin: 0 5px;
	transition: all 0.4s ease-in-out;
}

.product_bottom_btn:hover {
	background: #ab7bb0;
}

.product_bottom_btn i {
	font-size: 18px;
    margin-right: 10px;
}

@media (max-width: 600px) {
	.product_bottom_btn {
		width: 140px;
		font-size: 16px;
	}
}

/* 合購優惠區 */
.discount_container	{
	padding: 90px 15px 30px;
}

.discount_banner {
	width: 100%; /* 1200*280 */
	height: 280px;
	background: no-repeat center / cover;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 40px;
	text-shadow: 0.1em 0.1em 0.1em rgb(0 0 0 / 30%);
	opacity: 0;
}

.discount_banner.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.discount_banner_text {
	color: #fff;
	font-size: 60px;
	font-weight: bold;
}

.discount_navi_wrap {
	display: flex;
	margin-bottom: 30px;
	flex-wrap: wrap;
	opacity: 0;
}

.discount_navi_wrap.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.discount_navi {
	display: block;
	width: 200px;
	border: 3px solid #826083;
	color: #826083;
	margin-right: 20px;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	padding: 10px 0;
	border-radius: 35px;
	margin-bottom: 10px;
	transition: all 0.4s ease-in-out;
}

.discount_navi:hover {
	color: #826083;
	background: #ab7bb0;
	border-color: #ab7bb0;
	color: #fff;
}

.discount_navi.active {
	background: #826083;
	border-color: #826083;
	color: #fff;
}

.discount_items_block {
	display: flex;
	flex-wrap: wrap;
	margin-left: -10px;
	margin-right: -10px;
	margin-bottom: 200px;
}

.discount_item_wrap {
	width: 50%;
	padding: 0 10px;
	margin-bottom: 30px;
}

.discount_item {
	display: flex;
	height: 300px;
	position: relative;
	opacity: 0;
}

.discount_item.animation {
	animation-name:ani_slideBottom;
    animation-duration:1s;
    animation-delay: 0.6s;
    animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}

.discount_item_bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	transition: all 0.4s ease-in-out;
}

.discount_item:hover .discount_item_bg {
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,.3));
}

.discount_item_left {
	width: 50%;
	padding: 15px;
	color: #fff;
	text-align: center;
	font-weight: bold;
	line-height: 1;
}

.discount_item_left_top {
	height: 200px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.discount_item_title {
	font-size: 50px;
	margin-bottom: 20px;
}

.discount_item_subtitle {
	font-size: 40px;
}

.discount_item_left_bottom {
	font-weight: bold;
	height: calc(100% - 200px);
	display: flex;
	justify-content: center;
	align-items: center;
}

.discount_item_title,
.discount_item_subtitle,
.discount_item_left_bottom span {
	white-space: nowrap;
  	text-overflow: ellipsis;
  	overflow: hidden;
	width: 100%;
}

.discount_item_right {
	width: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.discount_item_img {
	object-fit: cover;
	width: 250px;
	height: 250px;	
}


@media (max-width: 1400px) {
	.discount_item {
		height: 240px;
	}

	.discount_item_left_top  {
		height: 160px;
	}

	.discount_item_left_bottom {
		height: calc(100% - 160px);
	}

	.discount_item_title {
		font-size: 40px;
		margin-bottom: 10px;
	}

	.discount_item_subtitle {
		font-size: 30px;
	}

	.discount_item_img {
		width: 200px;
		height: 200px;
	}
}

@media (max-width: 1200px) {
	.discount_item {
		height: 210px;
	}

	.discount_item_left_top  {
		height: 135px;
	}

	.discount_item_left_bottom {
		height: calc(100% - 135px);
	}

	.discount_item_title {
		font-size: 35px;
		margin-bottom: 10px;
	}

	.discount_item_subtitle {
		font-size: 25px;
	}

	.discount_item_img {
		width: 170px;
		height: 170px;
	}
}

@media (max-width: 1020px) {
	.discount_item {
		height: 180px;
	}

	.discount_item_left_top  {
		height: 115px;
	}

	.discount_item_left_bottom {
		height: calc(100% - 115px);
		font-size: 14px;
	}

	.discount_item_title {
		font-size: 25px;
	}

	.discount_item_subtitle {
		font-size: 20px;
	}

	.discount_item_img {
		width: 145px;
		height: 145px;
	}
}

@media (max-width: 767px) {
	.discount_container {
		padding: 30px 15px;
	}

	.discount_navi {
		width: calc(50% - 10px);
		margin-right: 0;
		font-size: 18px;
	}

	.discount_navi:nth-child(odd) {
		margin-right: 20px;
	}
	
	.discount_item_wrap {
		width: 100%;
	}

	.discount_item {
		height: 250px;
	}

	.discount_item_left_top  {
		height: 165px;
	}

	.discount_item_left_bottom {
		height: calc(100% - 165px);
	}

	.discount_item_img {
		width: 210px;
		height: 210px;
	}
}

@media (max-width: 575px) {
	.discount_banner {
		height: 140px;
		margin-right: -15px;
		margin-left: -15px;
		width: calc(100% + 30px);
	}

	.discount_banner_text {
		font-size: 40px;
	}

	.discount_item {
		height: calc((50vw - 15px));
	}

	.discount_item_left_top  {
		height: 75%;
	}

	.discount_item_left_bottom {
		height: 25%;
	}

	.discount_item_left {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.discount_item_title {
		font-size: 30px;
	}

	.discount_item_subtitle {
		font-size: 20px;
	}

	.discount_item_img {
		width: calc((100vw - 2*15px) / 2 - 40px );
		height: calc((100vw - 2*15px) / 2 - 40px );
	}
}

@media (max-width: 450px) {
	.discount_item_img {
		width: calc((100vw - 2*15px) / 2 - 30px );
		height: calc((100vw - 2*15px) / 2 - 30px );
	}
}


/* 註冊會員 */
.member_outer_container {
	padding: 0 15px;
}

.member_container {
	width: 1200px;
	margin: 40px auto;
}

@media (max-width: 1400px) {
	.member_container {
		width: 1140px;
	}
}

@media (max-width: 1200px) {
	.member_container {
		width: 960px;
	}
}

@media (max-width: 991px) {
	.member_container {
		width: 720px;
	}
}

@media (max-width: 767px) {
	.member_container {
		width: 540px;
	}
}

@media (max-width: 575px) {
	.member_container {
		width: 100%;
	}
}

.member_main_title_wrap	 {
	display: flex;
	justify-content: center;
}

.member_main_title {
	margin: 0 20px;
}

.member_main_title_ch {
	color: #5b315e;
	font-size: 40px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	margin-bottom: 15px;
}

.member_main_title_en {
	color: #5b315e;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}

.member_main_title_left,
.member_main_title_right {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
}

.member_main_title_dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: #5b315e;
}

.member_main_title_line {
	background: #5b315e;
	width: 2px;
	height: calc(100% - 10px);
}

.member_regist_block {
	display: flex;
	flex-wrap: wrap;
	padding: 30px 0 50px;
}

.member_regist_block_left {
	width: 50%;
	border-right: 1px solid #777777;
	padding-right: 60px;
	padding-top: 30px;
	padding-bottom: 30px;
	min-height: 600px;
	display: flex;
	align-items: center;
}

.member_regist_block_right {
	width: 50%;
}

.member_regist_block_right_content {
	display: flex;
	flex-direction: column;
	align-items: center;
}

@media (max-width: 767px) {
	.member_regist_block_left,
	.member_regist_block_right {
		width: 100%;
	}

	.member_regist_block_left {
		padding-right: 0;
		border-right: 0;
		padding-bottom: 60px;
		border-bottom: 1px solid #777777;
		margin-bottom: 60px;
		min-height: 200px;
	}
}

.member_form {
	width: 100%;
}

.member_form_title {
	text-align: center;
	color: #5b315e;
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 40px;
}

.mobile_normal_login_wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 70px;
	display: none;
}

.mobile_normal_login_btn {
    text-align: center;
    color: #fff;
    font-weight: bold;
    font-size: 24px;
    background: #ab7bb0;
    padding: 15px 0;
    width: 260px;
    border: 0;
    transition: all 0.4s ease-in-out;
	cursor: pointer;
}

.mobile_normal_login_btn:hover {
	opacity: 0.7;
}

@media (max-width: 767px) {
	.mobile_normal_login_wrap {
		display: flex;
	}

	/* .mobile_member_form_container {
		display: none;
	} */
}

@media (min-width: 767px) {
	.mobile_member_form_container {
		display: block !important;
	}
}

.member_form_group {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	margin-bottom: 30px;
	position: relative;
}

.member_form_group2 {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	margin-bottom: 60px;
	position: relative;
}

.member_form_label {
	padding-top: 5px;
	padding-right: 10px;
	margin-right: 15px;
	position: relative;
	width: 130px;
	flex-shrink: 0;
	display: flex;
	align-items: flex-end;
	flex-direction: column;
}

.member_form_label_required {
	line-height: 1;
	color: #ff004e;
	font-size: 20px;
	position: absolute;
	top: 0;
	right: 0;
}

.member_form_label_fixed_length_text {
	display: flex;
	justify-content: space-between;
	color: #724577;
	font-size: 20px;
	font-weight: bold;
	/* width: 70px; */
	width: 80px;
}

.member_form_label_text {
	color: #724577;
	font-size: 20px;
	font-weight: bold;
}

.member_form_label_note {
	font-size: 14px;
	font-weight: bold;
	color: #724577;
	text-align: center;
}

.member_form_control {
	display: block;
	flex-grow: 1;
	border-radius: 0;
	border: 1px solid #724577;
	font-size: 20px;
	padding: 5px 10px;
	color: #724577;
	font-weight: bold;
	-webkit-appearance: none;
}

.member_form_control:focus {
	border-color: #f5db68;
}

.member_form_notify {
	color: #c1c2c2;
	width: 100%;
	padding-left: 145px;
}

@media (max-width: 991px) {
	.member_form_notify {
		padding-left: 0;
	}
}

.member_form_select {
	display: block;
	border: 1px solid #77497b;
	height: 45px;
	font-size: 20px;
	padding: 0 15px;
	font-weight: bold;
	border-radius: 0;
	background: #fff;
	margin-right: auto;
}

.member_form_select:focus {
	border-color: #f5db68;
}

.member_form_group_note {
	color: #c1c2c2;
	font-weight: bold;
	margin-top: 5px;
}

.mobile_confirm {
	position: absolute;
	top: 20px;
	right: 30px;
	color: #0048b4;
	font-size: 20px;
	transition: all 0.4s ease-in-out;
	cursor: pointer;
}

.mobile_confirm:hover {
	opacity: 0.7;
}

#verify_notify {
	color: #c1c2c2;
    font-weight: bold;
	margin-bottom: 30px;
	margin-left: 140px;
	margin-top: -30px;
}

@media (max-width: 991px) {
	.member_form_group, .member_form_group2 {
		justify-content: flex-start;
	}

	.member_form_label {
		width: auto;
	}

	.member_form_control {
		width: 100%;
	}

	.mobile_confirm {
		top: auto;
		bottom: 5px;
		right: 5px;
	}

	#verify_notify {
		margin-left: 0;
		margin-top: -25px;
	}
}

.member_form_check_group {
	margin-bottom: 30px;
}

.member_form_check_label {
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
}

.member_form_check {
	width: 20px;
	height: 20px;
	margin-right: 5px;
}

.member_check_content {
	font-weight: bold;
}

.member_check_href {
	color: #0048b4;
	transition: all 0.4s ease-in-out;
}

.member_check_href:hover {
	color: #0048b4;
	opacity: 0.7;
}

.member_form_submit_wrap {
	display: flex;
	justify-content: center;
}

.member_form_submit {
	font-size: 20px;
	font-weight: bold;
	color: #fff;
	background: #ab7bb0;
	padding: 10px 0;
	width: 170px;
	border: 0;
	border-radius: 0;
	transition: all 0.4s ease-in-out;
}

.member_form_submit:hover {
	opacity: 0.7;
}

.member_regist_block_right {
	display: flex;
	align-items: center;
	justify-content: center;
}

.member_regist_block_right_title {
	text-align: center;
    color: #5b315e;
    font-size: 30px;
    font-weight: bold;
    margin-bottom: 40px;
}

.member_regist_line_btn {
    margin-bottom: 40px;
	text-align: center;
	color: #fff;
	font-weight: bold;
	font-size: 24px;
	background: #5abe55;
	padding: 15px 0;
	width: 260px;
	border: 0;
	transition: all 0.4s ease-in-out;
}

.member_regist_line_btn:hover {
	opacity: 0.7;
}

.member_regist_block_right_text {
	text-align: center;
	font-weight: bold;
}

.regist_href {
	position: absolute;
	bottom: 0;
	left: 145px;
}

@media (max-width: 1199px) {
	.regist_href {
		position: relative;
		left: auto;
		right: 0;
		margin-left: auto;
	}
}

.member_regist_block_right_href {
	color: #0048b4;
	transition: all 0.4s ease-in-out;
}

.member_regist_block_right_href:hover {
	color: #0048b4;
	opacity: 0.7;
}

/* 登入會員 */
.forgot_password_href_wrap {
	text-align: right;
	width: 100%;
}

.forgot_password_href {
	color: #ff1616;
	font-weight: bold;
	margin-top: 5px;
	width: 100%;
	transition: all 0.4s ease-in-out;
}

.forgot_password_href:hover {
	color: #ff1616;
	opacity: 0.7;
}

/* 聯絡我們 */
.contact_note {
	font-size: 20px;
	font-weight: bold;
	color: #744779;
	text-align: center;
	padding: 30px 0;
}

.contact_block {
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 50px;
}

.contact_block_left {
	width: 50%;
	border-right: 1px solid #777777;
	padding: 30px 0;
	min-height: 600px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.contact_block_right {
	width: 50%;
}

@media (max-width: 767px) {
	.contact_block_left,
	.contact_block_right {
		width: 100%;
	}

	.contact_block_left {
		padding-right: 0;
		border-right: 0;
		padding-bottom: 60px;
		border-bottom: 1px solid #777777;
		margin-bottom: 60px;
	}
}

.contact_block_left_content {
	padding: 0 10px;
}

.contact_block_left_img {
	margin: 0 auto 60px;
	display: block;
	width: 420px;
	height: 220px;
	object-fit: cover;
}

.contact_block_left_title_wrap {
	text-align: center;
	color: #744779;
	font-weight: bold;
	font-size: 25px;
	margin-bottom: 30px;
}

.contact_methods_wrap {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 30px;
}

.contact_service_time {
	color: #744779;
	margin-bottom: 30px;
	font-weight: bold;
}

.contact_method_href,
.contact_method {
	color: #744779;
	font-weight: bold;
	margin-right: 20px;
	display: flex;
	align-items: center;
	margin-bottom: 5px;
	transition: all 0.4s ease-in-out;
}

.contact_method_href:last-child {
	margin-right: 0;
}

.contact_method_href i,
.contact_method i {
	margin-right: 5px;
	font-size: 20px;
}

.contact_method_href:hover {
	color: #f5db68;
}

.contact_address_href {
	color: #744779;
	font-weight: bold;
	transition: all 0.4s ease-in-out;
}

.contact_address_href:hover {
	color: #f5db68;
}

@media (max-width: 991px) {
	.contact_block_left_img {
		width: 300px;
		height: calc(300px / 420 * 220);
		margin-bottom: 40px;
	}
}


@media (max-width: 575px) {
	.contact_note {
		font-size: 16px;
	}

	.contact_block_left_title_wrap {
		font-size: 20px;
	}

	.contact_block_left_img {
		width: 100%;
		height: calc((100vw - 30px - 40px) / 420 * 220);
	}

	.contact_methods_wrap {
		flex-direction: column;
	}
}

.contact_block_right_content {
	padding: 30px 20px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.contact_textarea {
	flex-grow: 1;
	border: 1px solid #5b315e;
	border-radius: 0;
	color: #744779;
	font-weight: bold;
	font-size: 20px;
	padding: 5px 10px;
	height: 140px;
	resize: none;
	-webkit-appearance: none;
}

.contact_textarea:focus {
	border-color: #f5db68;
}

.contact_RecaptchaField_wrap {
	padding-left: 145px;
}

@media (max-width: 991px) {
	.contact_RecaptchaField_wrap {
		padding-left: 0;
	}
}

.contact_form_submit_wrap {
	display: flex;
    justify-content: center;
	padding-left: 130px;
}

.contact_form_submit {
	font-size: 20px;
    font-weight: bold;
    color: #fff;
    background: #ab7bb0;
    padding: 10px 0;
    width: 170px;
    border: 0;
    border-radius: 0;
	transition: all 0.4s ease-in-out;
}

.contact_form_submit:hover {
	background: #f5db68;
}

@media (max-width: 991px) {
	.contact_form_submit_wrap {
		padding-left: 0;
	}
}

@media (max-width: 767px) {
	.contact_textarea {
		width: 100%;
	}
}

/* 訂單查詢 */
.member_inner_container {
	display: flex;
	flex-wrap: wrap;
}

.member_navi_block {
	width: 15%;
}

.member_content_block {
	width: 85%;
	min-height: 700px;
}

.member_navi_title {
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 30px;
	padding: 10px 0;
	position: relative;
}

.member_navi_title_bottom_line {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(calc(-50% - 5px));
	width: 65px;
	height: 2px;
	border-radius: 1px;
	background: #77497b;
}

.member_navi_title_bottom_line::after {
	content: '';
	display: block;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #77497b;
	transform: translate(70px, -1px);
}

.member_current_navi_title {
	background: #5b315e;
	color: #fff;
	font-weight: bold;
	text-align: center;
	font-size: 20px;
	padding: 10px 15px;
	cursor: pointer;
	display: none;
	align-items: center;
}

.member_current_navi_title_text {
	margin: 0 auto;
}

.member_current_navi_title i {
	margin-left: -15px;
	transition: all 0.4s ease-in-out;
}

.member_current_navi_title.active i {
	transform: rotate(90deg);
}

.member_navi {
	display: block;
	font-size: 20px;
	font-weight: bold;
	color: #77497b;
	text-align: center;
	margin-bottom: 30px;
	transition: all 0.4s ease-in-out;
}

.member_navi:hover {
	color: #a27ea6;
}

.member_navi.active {
	color: #d8a6de;
}

@media (min-width: 768px) {
	.member_navi_wrap {
		display: block !important;
	}
}

@media (max-width: 767px) {
	.member_current_navi_title {
		display: flex;
	}

	.member_navi_wrap {
		border: 1px solid #5b315e;
		border-bottom: 0;
		display: none;
	}

	.member_navi {
		margin-bottom: 0;
		padding: 15px;
		border-bottom: 1px solid #5b315e;
	}
}

.order_tracking_block {
	padding-top: 50px;
	padding-left: 35px;
	margin-bottom: 80px;
}

.order_tracking_header {
	display: flex;
	color: #fff;
	font-weight: bold;
	font-size: 20px;
	background: #5b315e;
	padding: 15px 0;
	height: 50px;
	text-align: center;
	margin-bottom: 5px;
}

.order_tracking_header > *:not(:last-child) {
	border-right: 1px solid #fff;
}

.order_tracking_header_num,
.order_tracking_header_date,
.order_tracking_header_item,
.order_tracking_header_total,
.order_tracking_header_state {
	display: flex;
	align-items: center;
	justify-content: center;
}

.order_tracking_header_num {
	width: 160px;
}

.order_tracking_header_date {
	width: 160px;
}

.order_tracking_header_item {
	width: calc(100% - 3*160px - 140px);
}

.order_tracking_header_total {
	width: 160px;
}

.order_tracking_header_state {
	width: 140px;
}

.order_list_wrap {
	margin-bottom: 5px;
}

.order_list_header {
	display: flex;
	background: #ebd3f4;
	color: #592f5c;
	font-size: 16px;
	padding: 5px 0;
	height: 40px;
	text-align: center;
	line-height: 30px;
	cursor: pointer;
	transition: all 0.4s ease-in-out;
}

.order_list_header:hover {
	opacity: 0.7;
}
 
.order_list_header > *:not(:last-child) {
	border-right: 1px solid #592f5c;
}

.order_list_header_num {
	width: 160px;
}

.order_list_header_date {
	width: 160px;
}

.order_list_header_item {
	width: calc(100% - 3*160px - 140px);
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
	padding: 0 15px;
}

.order_list_header_total {
	width: 160px;
}

.order_list_header_state {
	width: 140px;
}


@media (max-width: 991px) {
	.order_tracking_header_num {
		width: 100px;
	}
	
	.order_tracking_header_date {
		width: 100px;
	}
	
	.order_tracking_header_item {
		width: calc(100% - 3*100px - 90px);
	}
	
	.order_tracking_header_total {
		width: 100px;
	}
	
	.order_tracking_header_state {
		width: 90px;
	}

	.order_list_header_num {
		width: 100px;
	}
	
	.order_list_header_date {
		width: 100px;
	}
	
	.order_list_header_item {
		width: calc(100% - 3*100px - 90px);
	}
	
	.order_list_header_total {
		width: 100px;
	}
	
	.order_list_header_state {
		width: 90px;
	}
}

@media (max-width: 767px) {
	.order_tracking_header_item,
	.order_list_header_item {
		display: none;
	}

	.order_tracking_header_num,
	.order_tracking_header_date,
	.order_tracking_header_total,
	.order_tracking_header_state {
		width: calc(100% / 4);
	}

	.order_list_header_num,
	.order_list_header_date,
	.order_list_header_total,
	.order_list_header_state {
		width: calc(100% / 4);
		white-space: nowrap;
		text-overflow: ellipsis;
		overflow: hidden;
	}
}

@media (max-width: 575px) {
	.order_tracking_header {
		font-size: 16px;
	}
	.order_list_header {
		font-size: 14px;
	}

	.order_list_header_item {
		padding: 0;
	}

	.order_product_list_name_text {
		font-size: 14px;
	}
}

.order_list_content {
	display: none;
}

.order_list_content_header {
	display: flex;
	background: #f9f9f9;
	color: #592f5c;
	font-size: 16px;
	padding: 5px 0;
	height: 40px;
	text-align: center;
	line-height: 30px;
}

.order_list_content_header_name {
	width: calc(100% - (60px + 80px + 100px + 110px + 65px));
}

.order_list_content_header_qty {
	width: 60px;
}

.order_list_content_header_color {
	width: 80px;
}

.order_list_content_header_price {
	width: 100px;
}

.order_list_content_header_subtotal {
	width: 110px;
}

.order_list_content_header_state {
	width: 65px;
}

.order_product_list {
	display: flex;
	text-align: center;
	font-weight: bold;
	padding: 10px 0;
	border-bottom: 1px solid #592f5c;
}

.order_product_list:last-child {
	border-bottom: 0;
	
}

.order_product_list > * {
	border-right: 1px solid #592f5c;
	display: flex;
	justify-content: center;
	align-items: center;
}

.order_product_list_name {
	width: calc(100% - (60px + 80px + 100px + 110px));
	display: flex;
	line-height: 1.5;
	align-items: center;
	justify-content: flex-start;
	text-align: left;
}

.order_product_list_name_text {
	text-overflow: ellipsis;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	word-break: break-all;
}

.order_product_list_img {
	width: 50px; /* 50*50 */
	height: 50px;
	width: 90px; /* 90*90 */
	height: 90px;

	object-fit: cover;
	margin: 0 15px;
	flex-shrink: 0;
}

.order_product_list_qty {
	width: 60px;
}

.order_product_list_color {
	width: 80px;
}

.order_product_list_price {
	width: 100px;
}

.order_product_list_subtotal {
	width: 110px;
}

.order_product_list_block {
	display: flex;
}

.order_product_list_wrap {
	width: calc(100% - 65px);
}

.order_product_list_state {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 15px;
	font-weight: bold;
	width: 65px;
}

.order_product_list_contact {
	display: flex;
	flex-direction: column;
	align-items: center;
	cursor: pointer;
}

.order_product_list_contact i {
	font-size: 25px;
	margin-bottom: 5px;
	color: #5b315e;
	transition: all 0.4s ease-in-out;
}

.order_product_list_contact:hover i {
	color: #9d7da6;
}

.order_product_list_info_block {
	margin: 10px 0;
	border-right: 1px solid #592f5c;
    display: flex;
    /* justify-content: center; */
}

.order_product_list_info {
	width: 50%;
	font-weight: bold;
}

.order_product_list_info_title {
	font-size: 20px;
	margin-bottom: 10px;
	color: #5b315e;
}

.logistics_state_block {
	position: relative;
}

.logistics_state_refresh {
	position: absolute;
	top: 0;
	right: calc(100% + 5px);
	cursor: pointer;
	transition: color 0.5s ease-in-out;
	color: #d5bddd;
}

.logistics_state_refresh:hover {
	color: #592f5c;
}

.logistics_search_loading {
	padding: 10px 15px;
	text-align: center;
	color: #826083;
	display: none;
}

.logistics_search_loading i {
	transform: rotate(0);
	animation-name: rotate;
	animation-duration: 2s;
	animation-iteration-count: infinite;
	animation-timing-function: linear;
}

@keyframes rotate {
	0% {
		transform: rotate(0);
	}

	100% {
		transform: rotate(360deg);
	}
}

.no_logistics_info {
	padding: 10px 15px;
	text-align: center;
	color: #592f5c;
}

.order_logistics_info {
	margin-top: 15px;
	margin-bottom: 15px;
}

.logistics_info_item {
	padding-left: 40px;
	position: relative;
	color: #ebd3f4;
}

.logistics_info_item::after {
	content: '';
	width: 15px;
	height: 15px;
	background: #ebd3f4;
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
	border-radius: 50%;
}

.logistics_info_item:first-child {
	color: #592f5c;
	font-weight: bold;
}

.logistics_info_item:first-child::after {
	background-color: #592f5c;
}

.logistics_info_item:not(:last-child) {
	margin-bottom: 20px;
}

.logistics_info_item:not(:last-child)::before {
	content: '';
	width: 1px;
	height: 70px;
	background: #ebd3f4;
	position: absolute;
	left: calc(12px + 7px);
	top: 20px;
}

.logistics_info_item_text {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 165px;
}

.order_product_list_bottom {
	width: 100%;
	height: 5px;
	background: #ebd3f4;
}

@media (max-width: 1200px) {
	.order_product_list {
		height: auto;
	}

	.order_product_list_name {
		flex-direction: column;
	}
}

@media (max-width: 991px) {
	.order_list_content_header_name {
		width: calc(100% - (40px + 80px + 80px + 90px + 65px));
	}
	
	.order_list_content_header_qty {
		width: 40px;
	}
	
	.order_list_content_header_color {
		width: 80px;
	}
	
	.order_list_content_header_price {
		width: 80px;
	}
	
	.order_list_content_header_subtotal {
		width: 90px;
	}

	.order_product_list_wrap {
		width: calc(100% - 65px);
	}

	.order_product_list_name {
		width: calc(100% - (40px + 80px + 80px + 90px));
	}

	.order_product_list_img {
		margin: 0;
		width: 50px;
		height: 50px;
	}

	.order_product_list_qty {
		width: 40px;
	}
	
	.order_product_list_color {
		width: 80px;
	}
	
	.order_product_list_price {
		width: 80px;
	}
	
	.order_product_list_subtotal {
		width: 90px;
	}

	.order_product_list_state {
		flex-direction: column;
		justify-content: center;
	}

	.order_product_list_state_item_wrap {
		margin-bottom: 15px;
	}
}

@media (max-width: 767px) {
	.member_navi_block, .member_content_block {
		width: 100%;
	}

	.member_navi_block {
		margin-bottom: 50px;
	}

	.order_tracking_block {
		padding-left: 0;
	}

	.order_list_content_header_name {
		width: calc(100% - (40px + 80px + 70px + 70px));
	}
	
	.order_list_content_header_color {
		width: 80px;
	}
	
	.order_list_content_header_price {
		width: 70px;
	}
	
	.order_list_content_header_subtotal {
		width: 70px;
	}
	
	.order_list_content_header_state {
		width: 0px;
	}

	.order_product_list_block {
		flex-direction: column;
	}

	.order_product_list_wrap {
		width: 100%;
	}

	.order_product_list:last-child {
		border-bottom: 1px solid #592f5c;
	}

	.order_product_list_name {
		width: calc(100% - (40px + 80px + 70px + 70px));
	}

	.order_product_list_color {
		width: 80px;
	}

	.order_product_list_price {
		width: 70px;
	}

	.order_product_list_subtotal {
		width: 70px;
	}

	.order_product_list_state {
		width: 100%;
		flex-direction: row;
		justify-content: center;
		padding: 10px 0;
	}

	.order_product_list_info_block {
		flex-direction: column;
		border-right: 0;
	}

	.order_product_list_info {
		width: 100%;
		margin-bottom: 25px;
		border-bottom: 1px solid #592f5c;
	}

	.order_product_list_info:last-child {
		margin-bottom: 0;
	}
}

/* 訂單查詢 - 聯絡我們表單 */
.order_contact_form_outer_container {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: rgba(0,0,0,.4);
	z-index: 3;

}

.order_contact_form_inner_container {
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0 15px;
	overflow: auto;
}

.order_contact_form {
	background: #fff;
	width: 800px;
	max-width: 100%;
	padding: 30px 15px;
	position: relative;
}

.order_contact_form_close_btn {
	position: absolute;
	top: 0px;
	right: 0px;
	color: #5b315e;
	font-size: 50px;
	cursor: pointer;
	transition: all 0.4s ease-in-out;
}

.order_contact_form_close_btn:hover {
	opacity: 0.7;
}

.order_contact_form_container {
	max-width: 650px;
	margin: 0 auto;
}

.contact_main_title_wrap	 {
	display: flex;
	justify-content: center;
	margin-bottom: 30px;
}

.contact_main_title {
	margin: 0 20px;
}

.contact_main_title_ch {
	color: #5b315e;
	font-size: 30px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	margin-bottom: 5px;
}

.contact_main_title_en {
	color: #5b315e;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}

.contact_main_title_left,
.contact_main_title_right {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
}

.contact_main_title_dot {
	width: 4px;
	height: 4px;
	border-radius: 50%;
	background: #5b315e;
}

.contact_main_title_line {
	background: #5b315e;
	width: 2px;
	height: calc(100% - 10px);
}

.order_contact_form_group {
	display: flex;
	align-items: center;
	margin-bottom: 20px;
	position: relative;
}

.same_mobile {
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translateY(-50%);
	color: #fff;
	font-weight: bold;
	cursor: pointer;
	transition: all 0.4s ease-in-out;
	background: #5b315e;
	padding: 0 15px;
    height: 30px;
    display: flex;
    align-items: center;
}

.same_mobile:hover {
	background: #9d7da6;
}

@media (max-width: 767px) {
	.same_mobile {
		height: 25px;
		right: 5px;
	}
}

.order_contact_form_label {
	font-weight: bold;
	color: #5b315e;
	margin-bottom: 0;
	margin-right: 30px;
	line-height: 1;
	width: 65px;
}

.order_contact_form_control {
	flex-grow: 1;
	border: 2px solid #5b315e;
	border-radius: 0;
	padding: 10px 15px;
	line-height: 1;
	-webkit-appearance: none;
}

.order_contact_textarea {
	flex-grow: 1;
	border: 2px solid #5b315e;
	border-radius: 0;
	padding: 10px 15px;
	height: 140px;
	margin-bottom: 20px;
	resize: none;
	-webkit-appearance: none;
}

.order_contact_form_submit_wrap {
	display: flex;
	justify-content: center;
}

.order_contact_form_submit {
	color: #fff;
	background: #b28cbe;
	font-size: 20px;
	font-weight: bold;
	padding: 15px 0;
	width: 200px;
	border: 0;
	border-radius: 0;
	transition: all 0.4s ease-in-out;
}

.order_contact_form_submit:hover {
	background: #f5db68;
}

@media (max-width: 767px) {
	.order_contact_form {
		padding: 20px 15px;
	}

	.contact_main_title_wrap {
		margin-bottom: 20px;
	}

	.contact_main_title_ch {
		font-size: 25px;
	}

	.contact_main_title_en {
		font-size: 14px;
	}

	.order_contact_form_label {
		margin-right: 20px;
	}

	.order_contact_form_control {
		padding: 5px 10px;
	}

	.order_contact_textarea {
		height: 100px;
	}
}

/* 會員修改資料 */
.member_info_block {
	padding-top: 40px;
}

.member_info_form {
	width: 800px;
	max-width: 100%;
	margin: 0 auto;
}

.member_info_row {
	margin-right: -30px;
	margin-left: -30px;
	display: flex;
	flex-wrap: wrap;
}

.member_info_col_12 {
	padding: 0 30px;
	width: 100%;
}

.member_info_col_9 {
	padding: 0 30px;
	width: calc(100% / 12 * 9);
}

.member_info_col_6 {
	padding: 0 30px;
	width: calc(100% / 12 * 6);
}

.member_info_col_3 {
	padding: 0 30px;
	width: calc(100% / 12 * 3);
}

@media (max-width: 1200px) {
	.member_info_form {
		width: 700px;
	}
}

@media (max-width: 991px) {
	.member_info_form {
		width: 550px;
	}
}

@media (max-width: 767px) {
	.member_info_row {
		margin-right: -10px;
		margin-left: -10px;
	}

	.member_info_col_12,
	.member_info_col_9,
	.member_info_col_6,
	.member_info_col_3 {
		padding: 0 10px;
	}
}

.member_info_form_group {
	width: 100%;
	margin-bottom: 20px;
	position: relative;
}

.member_info_form_label {
	display: block;
	font-size: 20px;
	color: #77497b;
	font-weight: bold;
	margin-bottom: 5px;
	height: 25px;
	padding-left: 15px;
}

.member_info_form_control {
	display: block;
	width: 100%;
	font-size: 20px;
	padding: 10px 15px;
	border: 1px solid #77497b;
	border-radius: 0;
	font-weight: bold;
	color: #212121;
	-webkit-appearance: none;
}

.member_info_form_control::-webkit-input-placeholder {
	color: #d1d1d1;
}

.member_info_form_control:-ms-input-placeholder {
	color: #d1d1d1;
}

.member_info_form_control::placeholder {
	color: #d1d1d1;
}

.member_mobile_confirm {
	position: absolute;
	bottom: 10px;
	right: 30px;
	color: #0048b4;
	font-weight: bold;
	font-size: 20px;
}

.member_info_form_select {
	display: block;
	width: 100%;
	border: 1px solid #77497b;
	height: 45px;
	font-size: 20px;
	padding: 0 15px;
	font-weight: bold;
	border-radius: 0;
	background: #fff;
}

.change_password_btn {
	width: 100%;
	height: 45px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	background: #744779;
	cursor: pointer;
	transition: all 0.4s ease-in-out;
}

.change_password_btn:hover {
	background: #9d7da6;
}

.member_info_submit_wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 40px 0 20px;
}

.member_info_submit {
	font-weight: bold;
	color: #fff;
	width: 180px;
	background: #77497b;
	border: 0;
	font-size: 20px;
	padding: 10px 0;
	border-radius: 0;
	transition: all 0.4s ease-in-out;
}

.member_info_submit:hover {
	background: #9d7da6;
}

@media (max-width: 767px) {
	.member_info_form_control {
		font-size: 16px;
	}

	.member_info_form_select {
		font-size: 16px;
	}

	.change_password_btn {
		font-size: 16px;
	}

	.member_mobile_confirm {
		font-size: 16px;
	}
}

/* 購物車 */
.cart_outer_container {
	padding: 0 15px;
}

.cart_container {
	width: 1200px;
	margin: 40px auto;
}

@media (max-width: 1400px) {
	.cart_container {
		width: 1140px;
	}
}

@media (max-width: 1200px) {
	.cart_container {
		width: 960px;
	}
}

@media (max-width: 991px) {
	.cart_container {
		width: 720px;
	}
}

@media (max-width: 767px) {
	.cart_container {
		width: 540px;
	}
}

@media (max-width: 575px) {
	.cart_container {
		width: 100%;
	}
}

.cart_left {
	width: calc(100% / 6);
}

.cart_right {
	width: calc(100% / 6 * 5);
}

.cart_main_title_wrap	 {
	display: flex;
	justify-content: center;
	margin-bottom: 40px;
}

.cart_product_container {
	display: flex;
	margin-bottom: 120px;
}

.cart_product_navi_wrap {
	width: calc(100% / 6);
	padding-right: 50px;
	position: relative;
}

.cart_product_navi_wrap:after {
	content: '';
	position: absolute;
	top: 180px;
	left: 75px;
	width: 1px;
	height: calc(100% - 180px + 60px);
	background: #623a63;
}

.cart_product_container:last-child .cart_product_navi_wrap:after {
	width: 0;
	height: 0;
}

.cart_product_navi {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.cart_product_navi_img {
	width: 100%;
	height: auto;
	margin-bottom: 5px;
}

.cart_product_navi_text {
	font-size: 20px;
	font-weight: bold;
	color: #582e59;
	text-align: center;
	margin-bottom: 5px;
}

.cart_product_navi_bottom_line {
	width: 60px;
	height: 2px;
	background: #582e59;
}

.cart_product_navi_bottom_line:after {
	content: '';
	display: block;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #582e59;
	transform: translate(65px, -1px);
}

.cart_product_content {
	width: calc(100% / 6 * 5);
	position: relative;
}

.cart_product_header {
	display: flex;
	background: #744779;
	padding: 5px 0;
}

.cart_product_header_item {
	color: #fff;
	padding: 5px 0;
	font-size: 20px;
	border-right: 1px solid #fff;
	display: flex;
	justify-content: center;
	align-items: center;
}

.cart_product_row {
	display: flex;
	padding: 15px 0;
	border-bottom: 3px solid #674469;
}

.cart_product_row_item {
	border-right: 2px solid #674469;
}

.cart_product_header_item:nth-child(n+4),
.cart_product_row_item:nth-child(n+4) {
	border-right: 0;
}

.cart_product_header_item:nth-child(1),
.cart_product_row_item:nth-child(1) {
	width: 40%;
}

.cart_product_header_item:nth-child(2),
.cart_product_row_item:nth-child(2) {
	width: 15%;
}

.cart_product_header_item:nth-child(3),
.cart_product_row_item:nth-child(3) {
	width: 20%;
}

.cart_product_header_item:nth-child(4),
.cart_product_row_item:nth-child(4) {
	width: 15%;
}

.cart_product_header_item:nth-child(5),
.cart_product_row_item:nth-child(5) {
	width: 10%;
}

.cart_product_img_wrap {
	display: flex;
	align-items: center;
	padding: 0 15px;
}

.cart_product_img {
	width: 110px;
	height: 110px;
	object-fit: cover;
	margin-right: 15px;
}

.cart_product_name {
	font-size: 20px;
	font-weight: bold;
	color: #674469;
}

.cart_product_color {
	display: flex;
	height: 100%;
	justify-content: center;
	align-items: center;
	font-size: 20px;
	font-weight: bold;
	color: #674469;
	text-align: center;
}

.cart_product_price {
	display: flex;
	height: 100%;
	justify-content: flex-end;
	align-items: center;
	font-size: 30px;
	font-weight: bold;
	color: #674469;
}

.cart_product_qty {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.cart_product_qty_input::-webkit-outer-spin-button,
.cart_product_qty_input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.cart_product_qty_input {
  -moz-appearance: textfield;
  text-align: center;
  border-radius: 0;
  border: 0;
  border-bottom: 1px solid #744779;
  font-size: 25px;
  font-weight: bold;
  width: 70px;
  color: #744779;
  line-height: 1.3;
}

.cart_product_qty_minus, .cart_product_qty_add {
	color: #744779;
	font-size: 25px;
	cursor: pointer;
}

.cart_product_del_btn_wrap {
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.cart_product_del_btn {
	background: transparent;
	border: 0;
	font-size: 25px;
	color: #953e8c;
	cursor: pointer;
	transition: all 0.4s ease-in-out;
}

.cart_product_del_btn:hover {
	color: #953e8c;
	opacity: 0.7;
}

.cart_product_bottom {
	background: #ededed;
	padding: 20px 30px;
}

.cart_product_bottom_inner_container {
	/* max-width: 600px; */
	margin: 0 auto;
	position: relative;
}

.cart_product_bottom_item {
	width: 200px;
	width: 40%;
	display: flex;
	justify-content: space-between;
	margin-bottom: 20px;
}

#discount_info_wrap {
	display: none;
}

#discount_amount_wrap {
	display: none;
}

.cart_product_bottom_item_text {
	font-size: 20px;
}

.cart_product_bottom_item_remind {
	font-size: 16px;
	color: red;
}

@media (max-width: 767px) {
	.cart_product_bottom_item_remind {
		font-size: 14px;
	}
}

.cart_product_bottom_item_strong {
	color: #674469;
	font-size: 20px;
	font-weight: bold;
}

.cart_product_bottom_text {
	margin-bottom: 20px;
}

.cart_product_bottom_total_item {
	display: flex;
	justify-content: space-between;
	position: absolute;
	right: 0;
	top: 40px;
	margin-bottom: 20px;
	width: 40%;
}

.cart_product_bottom_total_item_text {
	font-size: 20px;
}

.cart_product_bottom_total_item_strong {
	color: #f22121;
	font-weight: bold;
	font-size: 35px;
	letter-spacing: 5px;
}

@media (max-width: 1400px) {
	.cart_product_navi_wrap:after {
		left: 70px;
	}
}

@media (max-width: 1200px) {
	.cart_product_navi_wrap:after {
		left: 55px;
	}
}

@media (max-width: 991px) {
	.cart_product_navi_wrap:after {
		top: 140px;
		left: 35px;
		height: calc(100% - 140px + 60px);
	}

	.cart_product_price {
		font-size: 18px;
	}

	.cart_product_bottom_item {
		width: 80%;
	}

	.cart_product_bottom_total_item {
		width: 80%;
		position: static;
	}
}

@media (max-width: 767px) {
	.cart_product_header_item:nth-child(1),
	.cart_product_row_item:nth-child(1) {
		width: 30%;
	}

	.cart_product_header_item:nth-child(2),
	.cart_product_row_item:nth-child(2) {
		width: 15%;
	}

	.cart_product_header_item:nth-child(3),
	.cart_product_row_item:nth-child(3) {
		width: 25%;
	}

	.cart_product_header_item:nth-child(4),
	.cart_product_row_item:nth-child(4) {
		width: 20%;
	}

	.cart_product_header_item:nth-child(5),
	.cart_product_row_item:nth-child(5) {
		width: 10%;
	}

	.cart_product_navi_wrap {
		padding-right: 20px;
	}

	.cart_product_img_wrap {
		flex-direction: column;
	}

	.cart_product_img {
		margin-right: 0;
		margin-bottom: 5px;
	}

	.cart_product_name {
		font-size: 16px;
	}

	.cart_product_color {
		font-size: 16px;
	}

	.cart_product_qty_minus,
	.cart_product_qty_add {
		font-size: 20px;
	}

	.cart_product_qty_input {
		width: 50px;
		font-size: 16px;
	}

	.cart_product_bottom_total_item {
		width: 100%;
	}

	.cart_product_bottom_item {
		width: 100%;
	}

	.cart_product_bottom_item_text {
		font-size: 16px;
	}

	.cart_product_bottom_text {
		font-size: 16px;
	}

	.cart_product_bottom_total_item_text {
		font-size: 16px;
	}

	.cart_product_bottom_total_item_strong {
		font-size: 25px;
	}
}

@media (max-width: 575px) {
	.cart_product_header_item:nth-child(1),
	.cart_product_row_item:nth-child(1) {
		width: 25%;
	}

	.cart_product_header_item:nth-child(2),
	.cart_product_row_item:nth-child(2) {
		width: 20%;
	}

	.cart_product_header_item:nth-child(3),
	.cart_product_row_item:nth-child(3) {
		width: 25%;
	}

	.cart_product_header_item:nth-child(4),
	.cart_product_row_item:nth-child(4) {
		width: 20%;
	}

	.cart_product_container {
		flex-wrap: wrap;
	}

	.cart_product_navi_wrap {
		padding-right: 0;
		width: 100%;
		margin-bottom: 15px;
	}

	.cart_product_navi_wrap:after {
		width: 0;
		height: 0;
	}

	.cart_product_navi_img {
		width: 150px;
	}

	.cart_product_content {
		width: auto;
		flex-grow: 1;
	}

	.cart_product_header_item {
		font-size: 16px;
	}

	.cart_product_img_wrap {
		padding: 0;
	}

	.cart_product_img {
		width: 50px;
		height: 50px;
	}

	.cart_product_qty_input {
		width: 40px;
	}

	.cart_product_price {
		font-size: 16px;
	}
}

.cart_form_show_btn_wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	padding-left: calc(100% / 6);
	margin-bottom: 40px;
	margin-top: -80px;
}

.cart_form_show_btn {
	color: #fff;
    width: 180px;
    background: #552f59;
    font-size: 20px;
    font-weight: bold;
    padding: 15px 0;
	text-align: center;
	cursor: pointer;
	transition: background-color 0.4s ease-in-out;
}

.cart_form_show_btn:hover {
	background: #9d7da6;
}

@media (max-width: 575px) {
	.cart_form_show_btn_wrap {
		padding-left: 0;
	}
}

.cart_form_container {
	display: none;
}

.cart_form {
	border: 1px solid #744779;
	padding: 30px;
}

.cart_form_header {
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	background: #744779;
	padding: 20px;
}

.cart_form_group {
	margin-bottom: 40px;
}

.cart_form_label {
	display: block;
	color: #744779;
	font-weight: bold;
	font-size: 20px;
	margin-bottom: 10px;
}

.cart_form_control {
	display: block;
	width: 100%;
	border: 0;
	border-radius: 0;
	border-bottom: 2px solid #744779;
	color: #744779;
	font-weight: bold;
	font-size: 20px;
	line-height: 1.5;
	-webkit-appearance: none;
}

.cart_form_control:focus {
	border-color: #f5db68;
}

.cart_form_multiple_check_container {
	display: flex;
	flex-wrap: wrap;
}

.cart_form_check_container {
	display: block;
	position: relative;
	padding-left: 35px;
	cursor: pointer;
	font-size: 20px;
	color: #744779;
	font-weight: bold;
	margin-bottom: 15px;
	margin-right: 20px;
}

.cart_form_check_container input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.cart_form_check_mark {
	position: absolute;
	top: 2px;
	left: 0;
	height: 20px;
	width: 20px;
	background-color: #fff;
	border: 1px solid #744779;
	border-radius: 50%;
}

.cart_form_check_container input:checked ~ .cart_form_check_mark {
	background-color: #744779;
}

select.frequently_orderer_select {
	line-height: 1;
	color: #744779;
	font-size: 18px;
	font-weight: bold;
	width: 140px;
	border: 2px solid #744779;
	border-radius: 5px;
	cursor: pointer;
	margin-left: 10px;
	background: #fff;
}

.cart_payment_block {
	margin-bottom: 40px;
}

.cart_payment_header {
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	background: #744779;
	padding: 20px;
}

.cart_payment_item, .cart_payment_text {
	border: 1px solid #744779;
	border-top: 0;
	color: #744779;
	font-size: 20px;
	padding: 15px 20px;
}

.cart_payment_text {
	cursor: pointer;
	background: url(../img/select_icon2.png) no-repeat right 15px center;
}

.cart_payment_text:hover {
	background-color: #f0ebf0;
}

.payment_type_select {
	opacity: 0;
	pointer-events: none;
	position: absolute;
}

.cart_payment_item_container {
	display: none;
}

.cart_payment_item_wrap {
	position: relative;
}

.cart_payment_item_wrap:hover .cart_payment_item {
	background: #744779;
	color: #fff;
}

.cart_payment_item {
	cursor: pointer;
}

.cart_payment_item.active {
	background: #744779;
	color: #fff;
	font-weight: bold;
}

/* 
input[name=payment_type] {
	opacity: 0;
	position: absolute;
	top: 50%;
	left: 100px;
	transform: translateY(-50%);
}

input[name=payment_type]:checked + .cart_payment_item {
	background: #744779;
	color: #fff;
	font-weight: bold;
}
*/

.cart_invoice_header {
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	background: #744779;
	padding: 20px;
}

.cart_invoice_item {
	border: 1px solid #744779;
	border-top: 0;
}

.cart_invoice_item_header {
	color: #744779;
	font-size: 20px;
	padding: 15px 20px;
	cursor: pointer;
	background: url(../img/select_icon2.png) no-repeat right 15px top 17px;
}

.cart_invoice_item_header:hover {
	background-color: #f0ebf0;
}

.cart_invoice_detail_block {
	padding: 15px 20px;
	display: none;
}

.cart_invoice_radio_label {
	display: flex;
	align-items: center;
	cursor: pointer;
	font-weight: bold;
}

.cart_invoice_radio {
	cursor: pointer;
	position: relative;
	width: 20px;
	height: 20px;
	-webkit-appearance: none;
	margin-right: 5px;
}

.cart_invoice_radio::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	border: 1px solid #744779;
	border-radius: 50%;
}

.cart_invoice_radio:checked::before {
	background: #744779;
}

.cart_carrier_block {
	padding-left: 30px;
	margin-bottom: 20px;
	border-bottom: 1px solid #744779;
}

@media (max-width: 575px) {
	.cart_carrier_block {
		padding-left: 20px;
	}
}

.cart_carrier_form_group {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-bottom: 15px;
}

.cart_carrier_label {
	display: flex;
	align-items: center;
	cursor: pointer;
	margin-bottom: 0;
	margin-right: 5px;
}

.cart_carrier_radio {
	cursor: pointer;
	position: relative;
	width: 20px;
	height: 20px;
	-webkit-appearance: none;
	margin-right: 5px;
}

.cart_carrier_radio::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	border: 1px solid #744779;
	border-radius: 50%;
}

.cart_carrier_radio:checked::before {
	background: #744779;
}

@media (max-width: 575px) {
	.cart_carrier_input {
		margin-left: 25px;
	}
}

.cart_carrier_input_tip {
	width: 100%;
	font-size: 14px;
	color: #989b9b;
	padding-left: 25px;
}

.tax_id_block {
	padding: 15px 20px;
	display: flex;
	flex-wrap: wrap;
	margin-right: -20px;
	margin-left: -20px;
}

.tax_id_form_group {
	width: 50%;
	margin-bottom: 15px;
	padding: 0 20px;
	display: flex;
	align-items: center;
}

@media (max-width: 767px) {
	.tax_id_form_group {
		width: 100%;
	}
}

.tax_id_label {
	margin-bottom: 0;
	margin-right: 10px;
	flex-shrink: 0;
}

.tax_id_input {
	flex-grow: 1;
}

.cart_submit_wrap {
	display: flex;
	justify-content: center;
	margin-top: 100px;
}

.cart_submit {
	color: #fff;
	width: 180px;
	background: #552f59;
	border: 0;
	font-size: 20px;
	font-weight: bold;
	padding: 15px 0;
	border-radius: 0;
	transition: all 0.4s ease-in-out;
}

.cart_submit:hover {
	background: #9d7da6;
}

/* 購物須知 */
.shopping_notice_block {
	padding-top: 40px;
	padding-left: 30px;
	margin-bottom: 80px;
}

@media (max-width: 767px) {
	.shopping_notice_block {
		padding-left: 0;
	}
}

/* 我的最愛 */
.favorite_block {
	padding-top: 50px;
	padding-left: 35px;
	margin-bottom: 80px;
}

.favorite_header {
	display: flex;
	background: #5b315e;
	font-size: 20px;
	color: #fff;
	padding: 10px 0;
	height: 50px;
}

.favorite_header_product, .favorite_header_product_info {
	border-right: 1px solid #fff;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}

.favorite_header_product {
	width: 265px;
}

.favorite_header_product_info {
	flex-grow: 1;
}

.favorite_header_manipulate {
	width: 140px;
}

.favorite_no_item {
	text-align: center;
    padding: 20px 0px;
    font-size: 20px;
    font-weight: bold;
}

.favorite_list {
	display: flex;
	align-items: center;
	font-weight: bold;
	padding: 10px 0;
	border-bottom: 1px solid #5b315e;
}

.favorite_list:last-child {
	border-bottom: 0;
}

.favorite_list_product {
	flex-grow: 1;
	display: flex;
	align-items: center;
	padding: 0 15px;
	color: #212121;
}

.favorite_list_product_img_wrap {
	display: flex;
	align-items: center;
	width: 250px;
	margin-right: 15px;
}

.favorite_list_product_img {
	width: 100px;
	height: 100px;
	object-fit: cover;
	margin-right: 10px;
}

.favorite_list_product_name {
	text-overflow: ellipsis;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	word-break: break-all;
}

.favorite_list_product_info {
	flex-grow: 1;
}

.favorite_list_product_info_item {
	width: 100%;
	margin-bottom: 10px;
	display: flex;
}

.favorite_list_product_info_item span:first-child {
	flex-shrink: 0;
}

.favorite_list_product_info_item span:last-child {
	text-overflow: ellipsis;
	overflow: hidden;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	word-break: break-all;
}

.favorite_list_manipulate {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 140px;
}

.favorite_list_add_cart,
.favorite_list_del {
	text-align: center;
	color: #fff;
	cursor: pointer;
	background: #744779;
	padding: 5px;
	width: 120px;
	transition: all 0.4s ease-in-out;
	border: 0;
}

.favorite_list_add_cart {
	margin-bottom: 15px;
}

.favorite_list_add_cart i,
.favorite_list_del i {
	font-size: 20px;
}

.favorite_list_add_cart:hover,
.favorite_list_del:hover {
	background: #ab7bb0;
	color: #fff;
}

@media (max-width: 991px) {
	.favorite_header_product {
		width: 130px;
	}

	.favorite_list_product_img_wrap {
		flex-direction: column;
		align-items: flex-start;
		width: auto;
		border-right: 1px solid #5b315e;
		padding-right: 15px;
		margin-right: 10px;
	}

	.favorite_list_product_img {
		margin-right: 0;
		margin-bottom: 10px;
	}

	.favorite_list_product_name {
		width: 100px;
	}
}
 
@media (max-width: 767px) {
	.favorite_block {
		padding-left: 0;
	}

	.favorite_list {
		flex-direction: column;
		align-items: flex-start;
	}

	.favorite_header {
		display: none;
	}

	.favorite_list_product {
		align-items: flex-start;
		margin-bottom: 10px;
	}

	.favorite_list_manipulate {
		flex-direction: row;
		justify-content: flex-end;
		width: 100%;
		margin-top: 20px;
	}

	.favorite_list_add_cart {
		margin-bottom: 0;
		margin-right: 10px;
	}

	.favorite_list_del {
		align-self: flex-end;
	}
}

/* 購物須知 */
.shopping_notice_container	{
	padding: 90px 15px;
	min-height: 670px;
}

.shopping_notice_banner {
	width: 100%; /* 1200*280 */
	height: 280px;
	background: no-repeat center / cover;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 40px;
	text-shadow: 0.1em 0.1em 0.1em rgb(0 0 0 / 30%);
}

.shopping_notice_banner_text {
	color: #fff;
	font-size: 60px;
	font-weight: bold;
}

@media (max-width: 767px) {
	.shopping_notice_container {
		padding: 30px 15px;
	}
}

@media (max-width: 575px) {
	.shopping_notice_banner {
		height: 140px;
		margin-right: -15px;
		margin-left: -15px;
		width: calc(100% + 30px);
	}

	.shopping_notice_banner_text {
		font-size: 40px;
	}
}

/* 隱私權條款 */
.privacy_container	{
	padding: 90px 15px;
	min-height: 670px;
}

.privacy_banner {
	width: 100%; /* 1200*280 */
	height: 280px;
	background: no-repeat center / cover;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 40px;
	text-shadow: 0.1em 0.1em 0.1em rgb(0 0 0 / 30%);
}

.privacy_banner_text {
	color: #fff;
	font-size: 60px;
	font-weight: bold;
}

@media (max-width: 767px) {
	.privacy_container {
		padding: 30px 15px;
	}
}

@media (max-width: 575px) {
	.privacy_banner {
		height: 140px;
		margin-right: -15px;
		margin-left: -15px;
		width: calc(100% + 30px);
	}

	.privacy_banner_text {
		font-size: 40px;
	}
}

/* 會員中心 - 訂購人資訊 */
.orderer_info_container {
	margin-bottom: 40px;
}

.orderer_info_header {
	display: flex;
	background: #5b315e;
	padding: 15px 0;
	height: 50px;
}

.orderer_info_header_sm {
	display: none;
	background: #5b315e;
	text-align: center;
	color: #fff;
	padding: 5px 10px;
	font-size: 20px;
	/* font-weight: bold; */
}

.orderer_info_header_item {
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	border-right: 1px solid #fff;
}

.orderer_info_header_item:last-child {
	border-right: 0;
}

.orderer_info_header_item:nth-child(1),
.orderer_info_header_item:nth-child(2),
.orderer_info_header_item:nth-child(3) {
	width: calc((100% - 120px) / 3);
}

.orderer_info_header_item:nth-child(4) {
	width: 120px;
}

.orderer_info_row {
	display: flex;
	border-bottom: 1px solid #744779;
}

.orderer_info_row_item {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 10px 0;
}

.orderer_info_row_item:nth-child(1),
.orderer_info_row_item:nth-child(2),
.orderer_info_row_item:nth-child(3) {
	width: calc((100% - 120px) / 3);
}

.orderer_info_row_item:nth-child(4) {
	width: 120px;
	justify-content: space-around;
}

.orderer_info_row_href {
	background: #744779;
	color: #fff;
	padding: 5px 10px;
	transition: all 0.4s ease-in-out;
	cursor: pointer;
}

.orderer_info_row_href:hover {
	color: #fff;
	background: #9d7da6;
}

.orderer_info_btn_wrap {
	display: flex;
	justify-content: flex-end;
}

.orderer_info_add_form_href {
	color: #fff;
	background: #77497b;
	padding: 5px 15px;
	font-size: 20px;
	transition: all 0.4s ease-in-out;
}

.orderer_info_add_form_href:hover {
	color: #fff;
	background: #9d7da6;
}

.orderer_info_row_item_title {
	display: none;
	font-weight: bold;
	margin-right: 15px;
}

@media (max-width: 575px) {
	.orderer_info_header {
		display: none;
	}

	.orderer_info_header_sm {
		display: block;
	}

	.orderer_info_row {
		flex-direction: column;
		position: relative;
	}

	.orderer_info_row_item:nth-child(1),
	.orderer_info_row_item:nth-child(2),
	.orderer_info_row_item:nth-child(3) {
		width: auto;
		justify-content: flex-start;
		padding: 5px 10px;
	}

	.orderer_info_row_item:nth-child(4) {
		width: auto;
		position: absolute;
		right: 0;
		bottom: 0;
	}

	.orderer_info_row_item_title {
		display: inline;
	}

	.orderer_info_row_del_href {
		margin-left: 10px;
	}
}

.orderer_info_form_header {
	background: #5b315e;
	padding: 10px 15px;
	color: #fff;
	font-weight: bold;
	font-size: 20px;
	text-align: center;
}

.orderer_info_submit_wrap {
	display: flex;
	justify-content: center;
	margin-top: 100px;
}

.orderer_info_submit {
	color: #fff;
	width: 180px;
	background: #552f59;
	border: 0;
	font-size: 20px;
	font-weight: bold;
	padding: 15px 0;
	border-radius: 0;
	transition: all 0.4s ease-in-out;
	margin: 0 5px;
	text-align: center;
}

.orderer_info_submit:hover {
	background: #9d7da6;
	color: #fff;
}

@media (max-width: 767px) {
	.orderer_info_submit {
		width: 150px;
		padding: 10px 0;
		font-size: 16px;
	}
}

/* 網站維護頁面 */
.web_maintenance_page {
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 100vh;
	padding: 30px 15px;
}