/* ==========================================================================
	clear
 ========================================================================== */

button,
input,
select,
textarea {
	font-family: "微軟正黑體", Verdana, Heiti TC, Microsoft JhengHei;
	margin: 0;
}

button,
input {
	line-height: normal;
	outline: 0;
	font-size: 14px;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default
}

input[type="search"] {
	-webkit-appearance: textfield;
	-moz-box-sizing: content-box;
	nowhitespace: afterproperty;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

button {
	border: none;
	background: none;
	padding: 0;
	margin: 0;
	display: inline-block;
}

figure,
address {
	padding: 0;
	margin: 0;
}

* {
	outline: 0;
	-webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

*:before,
*:after {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

/* ==========================================================================
    public
 ========================================================================== */

html, body {
	margin: 0;
	padding: 0;
	height: 100.1%;
}

body {
	height: 100.1% !important;
	overflow-x: hidden;
	font-family: "微軟正黑體", Verdana, Heiti TC, Microsoft JhengHei;
	color: #8d8d8d;
	font-size: 15px;
	line-height: 1.6em;
	-webkit-font-smoothing: antialiased;
	-webkit-backface-visibility: hidden;
	text-size-adjust: none;
}

.safari body {
  -webkit-text-size-adjust: none;
}

body:after {
  display: block;
  content: "We're sorry! this website does not support your browser, please upgrade your browser, thank you.";
  position: fixed;
  z-index: 100000000000000;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  width: auto;
  height: auto;
  padding: 50px;
  background-color: #fff;
  text-align: center;
  font-size: 20px;
  color: #3f3f3f;
}

h1, h2, h3, h4 {
	line-height: 1.6em;
}

:root body:after {
  display: none;
}

.wp {
	min-width: 320px;
	overflow: hidden;
	background-color: #fff;
}

.wow {
	visibility: hidden;
}

.msie .wow, .msie .animated {
	visibility: visible !important;
	opacity: 1 !important;
	animation: none !important;
}

/* ==========================================================================
    public
 ========================================================================== */

/*不顯示外虛線*/
button, a {
	outline: none !important;
}

a, a:active {
	cursor: pointer;
	text-decoration:none;
	behavior:expression(this.onFocus=this.blur()); /* for IE */
}

a {
	-o-transition: color .50s ease-in-out;
	-webkit-transition: color .50s ease-in-out;
	-moz-transition: color .50s ease-in-out;
	transition: color .50s ease-in-out;
}

a.link, .editor a {
	color: #555555;
}

a.link:hover, .editor a:hover {
	color: #000;
}

.editor a {
	text-decoration: underline;
}

img {
	max-width: 100%;
	height: auto;
	border: none;
	-khtml-user-select: none;
  -o-user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  user-select: none;
}

.chrome img {
	image-rendering: -webkit-optimize-contrast;
}

.clearfix:after {
  display: block;
  content: '';
  clear: both;
}

.hidden {
	display: none !important;
}

ul.noneStyle {
	margin: 0;
	padding: 0;
}

ul.noneStyle > li {
	list-style: none;
}

/* ul {
	padding-left: 1.1em;
} */


/* form */

.form .group {
	margin-bottom: 15px;
}

.form .group:after {
	content: '';
	display: block;
	clear: both;
}

.form .group label.name {
	float: left;
	width: 100px;
	padding-top: 13px;
	color: #000;
}

.max-sm-size .form .group label.name {
	padding-top: 9px;
}

.max-xs-size .form .group label.name {
	display: block;
	float: none;
	width: 100%;
	padding-top: 0;
	padding-bottom: 5px;
}

.form .group .checkoutDivMsg{
    float:left;
    word-break: break-all;
    width: calc(100% - 120px);
}
.max-xs-size .form .group .checkoutDivMsg{
	width: 100%;
}

.form .group .right {
	float: right;
	width: -moz-calc(100% - 100px);
	width: -webkit-calc(100% - 100px);
	width: calc(100% - 100px);
}

.max-xs-size .form .group .right {
	float: none;
	width: 100%;
}

.form .group .right.paddingTop {
	padding: 13px 0;
}

.max-sm-size .form .group .right.paddingTop {
	padding: 9px 0;
}

.form .group.error .form-control,
.form .group.error .dk_toggle {
	border-color: #ed2323 !important;
}

.red {
	color: #ed2323 !important;
}

input, select, button, textarea {
	font-family: Arial, Verdana, "Heiti TC", "Microsoft JhengHei", 微軟正黑體;
	font-size: 15px;
}

textarea {
	resize: none;
}

select {
  -webkit-appearance: none; /*隱藏箭頭*/
  -moz-appearance: none; /*Firefox*/
  background: url("images/select-tri.png") center right 10px no-repeat;
}

/*IE 10 */
select::-ms-expand {
  display: none !important;
}

label.radio, label.checkbox {
	display: table;
	cursor: pointer;
}

.max-xs-size label input[type="radio"],
.max-xs-size label input[type="checkbox"] {
	transform: scale(1.3);
}

label.radio.inline,
label.checkbox.inline {
	display: inline-block;
	margin-right: 20px;
	margin-bottom: 5px;
}

.max-sm-size label.radio.inline,
.max-sm-size label.checkbox.inline {
	margin-right: 15px;
}

label.radio.inline:last-of-type,
label.checkbox.inline:last-of-type {
	margin-right: 0 !important;
}

.form-control {
	width: 100%;
	height: 45px;
	padding: 0 20px;
	border: 1px solid #c9c9c9;
	border-radius: 0;
	color: #000;
	transition: border 0.5s;
}

.max-sm-size .form-control {
	height: 40px;
}

textarea.form-control {
	padding: 20px;
	height: auto !important;
}

.form-control:hover {
  border-color: #595959;
}

.form-control:focus {
  border-color: #595959;
  outline: 0;
}

.inputNumber {
	font-size: 0;
}

.inputNumber button,
.inputNumber .form-control {
	display: inline-block;
	vertical-align: middle;
	height: 45px;
	background-color: #e8e8e8;
	text-align: center;
	transition: background 0.5s;
}

.inputNumber .form-control {
	margin: 0 4px;
}

.max-sm-size .inputNumber button,
.max-sm-size .inputNumber .form-control {
	height: 40px;
}

.inputNumber button:hover,
.inputNumber .form-control:hover,
.inputNumber .form-control:focus {
	background-color: #ddd;
}

.inputNumber button {
	width: 15px;
	font-size: 15px;
}

.max-md-size .inputNumber button {
	width: 30px;
}

.inputNumber .form-control {
	width: 50px;
	padding: 0;
	border: none;
}

.max-xs-size .inputNumber .form-control {
	width: -moz-calc(100% - 68px);
	width: -webkit-calc(100% - 68px);
	width: calc(100% - 68px);
}

.inputName .form-control {
	width: -moz-calc(100% - 160px);
	width: -webkit-calc(100% - 160px);
	width: calc(100% - 160px);
	margin-right: 20px;
}

.max-sm-size .inputName .form-control {
	margin-right: 15px;
}

.inputAddress .postal {
	float: left;
	width: 150px;
}

.max-md-size .inputAddress .postal {
	width: 110px;
}

.max-sm-size .inputAddress .postal {
	width: 100%;
}

.inputAddress .dropkick {
	float: left;
	width: -moz-calc(50% - 90px);
	width: -webkit-calc(50% - 90px);
	width: calc(50% - 90px);
	margin-left: 15px;
}

.max-md-size .inputAddress .dropkick {
	width: -moz-calc(50% - 70px);
	width: -webkit-calc(50% - 70px);
	width: calc(50% - 70px);
}

.max-sm-size .inputAddress .dropkick {
	width: 100%;
	margin-left: 0;
	margin-top: 15px;
}

.inputAddress .address {
	float: left;
	width: 100%;
	margin-top: 15px;
}

.inputVerification {
	position: relative;
}

.inputVerification .codepic {
	position: absolute;
	right: 1px;
	top: 1px;
	cursor: pointer;
}

.inputVerification .codepic img {
	display: block;
	width: 105px;
	height: 43px;
}

.max-sm-size .inputVerification .codepic img {
	width: 85px;
	height: 38px;
}

.selectBirth .dropkick {
	float: left;
	width: -moz-calc(33.3% - 13.5px);
	width: -webkit-calc(33.3% - 13.5px);
	width: calc(33.3% - 13.5px);
	margin-left: 20px;
}

.max-xs-size .selectBirth .dropkick {
	width: -moz-calc(33.3% - 7px);
	width: -webkit-calc(33.3% - 7px);
	width: calc(33.3% - 7px);
	margin-left: 10px;
}

.selectBirth .dropkick:nth-of-type(1) {
	margin-left: 0;
}

.inputUpdate .file {
	display: none;
}

.inputUpdate .update {
	display: block;
	float: left;
  width: -moz-calc(100% - 100px);
  width: -webkit-calc(100% - 100px);
  width: calc(100% - 100px);
  margin-right: 20px;
	cursor: pointer;
	color: #8d8d8d;
	line-height: 45px;
}

.max-sm-size .inputUpdate .update,
.max-sm-size .inputUpdate .no-invoice {
	line-height: 40px;
}

.inputUpdate .update .btn3 {
	margin-right: 10px;
	color: #8d8d8d;
	border-color: #8d8d8d;
}

.max-sm-size .inputUpdate .update .btn3 {
	line-height: 22px;
}

.inputUpdate .no-invoice {
	float: left;
	line-height: 45px;
}

.inputUpdate .notice {
	float: left;
	width: 100%;
}

.min-sm-size .selectPlace .dropkick {
	float: left;
	width: -moz-calc(50% - 10px);
	width: -webkit-calc(50% - 10px);
	width: calc(50% - 10px);
}

.min-sm-size .selectPlace .dropkick:first-of-type {
	margin-right: 20px;
}

.max-sm-size .selectPlace .dropkick:first-of-type {
	margin-bottom: 20px;
}

.selectPlace .note {
	float: left;
	width: 100%;
}

.buttonBlock {
	margin-top: 30px;
	text-align: center;
}

.buttonBlock .button,
.buttonBlock .button2 {
	margin: 10px;
}

.max-sm-size .buttonBlock .button,
.max-sm-size .buttonBlock .button2 {
	width: 100%;
	margin: 5px 0;
}

.button {
	display: inline-block;
	min-width: 220px;
	height: 45px;
	padding: 10px 20px;
	border-radius: 0;
	background-color: #383838;
	color: #fff;
	font-size: 15px;
	line-height: 21px;
	text-align: center;
	transition: background 0.5s, color 0.5s, border 0.5s;
}

.max-sm-size .button,
.max-sm-size .button2 {
	height: 40px;
	line-height: 17px;
}

.button:hover {
	background-color: #000;
}

.button2 {
	display: inline-block;
	vertical-align: middle;
	min-width: 220px;
	height: 45px;
	padding: 10px 20px;
	border-radius: 0;
	background-color: #fff;
	border: 2px solid #626262;
	color: #626262;
	font-size: 15px;
	line-height: 21px;
	text-align: center;
	transition: background 0.5s, color 0.5s, border 0.5s;
}

.button i, .button2 i {
	display: inline-block;
	vertical-align: bottom;
  margin-left: -10px;
	font-size: 25px;
}

.button2:hover {
	border-color: #000;
	background-color: #000;
	color: #fff;
}

.btn {
	min-width: 60px;
	padding: 0 15px;
	color: #fff;
	line-height: 35px;
	border-radius: 35px;
	text-align: center;
	background-color: #595959;
	transition: background 0.5s;
}

.btn:hover {
	background-color: #d82356;
}

.btn2 {
	display: inline-block;
	min-width: 100px;
	padding: 0 15px;
	border: 2px solid #626262;
	color: #626262;
	line-height: 31px;
	text-align: center;
	transition: background 0.5s, color 0.5s, border 0.5s;
}

.btn2:hover {
	color: #fff;
	border-color: #000;
	background-color: #000;
}

.btn3 {
	display: inline-block;
	padding: 0 10px;
	border: 1px solid #999999;
	color: #999999;
	line-height: 28px;
	text-align: center;
	transition: color 0.5s, border 0.5s;
}

.btn3:hover {
	color: #000;
	border-color: #000;
}

::-webkit-input-placeholder { /* WebKit browsers */
  color: #8d8d8d;
}

::-moz-placeholder { /* Mozilla Firefox 4 to 18 */
  color: #8d8d8d;
}

::-o-placeholder { /* Mozilla Firefox 19+ */
  color: #8d8d8d;
}

::-ms-placeholder { /* Internet Explorer 10+ */
  color: #8d8d8d;
}

::-ms-input-placeholder { /* Internet Explorer 10+ */
  color: #8d8d8d;
}


/**/

.scrollbar, .scrollbarX {
	-webkit-overflow-scrolling: touch;
}

.scrollbarX {
	overflow-x: auto;
}

.jqimgFill, .wp {
	opacity: 0;
	transition: opacity 1s;
}

.main > .inner {
	min-height: 500px;
	padding-top: 150px;
}

.max-md-size .main > .inner {
	padding-top: 60px !important;
}

.max-sm-size .main > .inner {
	min-height: 400px;
}

.container {
	max-width: 1700px;
	width: 100%;
	margin: auto;
	padding: 0 30px;
}

.max-ss-size .container {
	padding: 0 15px;
}

.full {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.middle {
	display: table-cell;
	vertical-align: middle;
}

table {
	-webkit-backface-visibility: visible;
}

.table {
	width: 100%;
	border-collapse: collapse;
}

.msie .table {
	table-layout: fixed;
}

.eng {
	font-family: 'Noto Sans', "微軟正黑體", Verdana, Heiti TC, Microsoft JhengHei;
}

.max-sm-size .barrating-show a {
	font-size: 14px !important;
}

.wow {
	visibility: visible;
}

.fb_reset {
	height: 0;
	overflow: hidden;
}

/* 贈品的通路下拉選單設定 -by Billy 2021-11-12 */
#giftMainForm #s2id_channelId a{
    height: 43px;
}
#giftMainForm #s2id_channelId a span{
    margin-top: 8px;
}