/*** 每一列 ***/
.std_form .form-row {
	position: relative;
	display: table;
	border-collapse: collapse; 
	vertical-align: middle;
	width: 100%;
	padding: 0;
	margin: 0;
}

/* 單數行背景色 (淺藍) */
.std_form li:not(.action).form-row:nth-child(odd) {
	background: rgba(221,243,247,1);	/*#DDF3F7;*/
}

/* 偶數行背景色 (淺灰 ) */
.std_form li:not(.action).form-row:nth-child(even) {
	background: rgba(244,244,244,1);	/*#F4F4F4;*/
}

.std_form .form-row .label_box,
.std_form .form-row .input_box {
	position: relative;
	display: table-cell;
	border-bottom: 1px solid #FFF;
	vertical-align: middle;
	text-align: left;
	padding: 1.5%;
}

/*** 主標籤區 ***/
.std_form .form-row .label_box {
	width: 25%; 
	text-align: right;
	border-right: 1px solid #FFF;
}

/*** 主標籤 ***/
.std_form .form-row .label_box label {
	display: inline-block;
	font-weight: normal;
	margin: 0;
	padding: 0;
}

/*** 在資料輸入區內的 label ***/
.std_form .input_box label {
	font-weight: normal;
	display: inline-block;
	width: auto;
}

/*** 必填欄位 ***/
.std_form .label_box em {
	color: #900;
	opacity: 1;
}

/*********************
 各種訊息
**********************/
/**** 錯誤訊息 ***/
.std_form .input_box label.error,	/*** 預設的錯誤訊息 ***/
.std_form div.error {				/*** jQuery form validate 的錯誤訊息 ***/
/*	position: absolute;  */
	position: relative;
	bottom: 0;
/*	width: 100%; */
	min-width: 10em;
	font-size: .85em;
	color: #d70000;
	font-weight: 500;
}

/*** 輸入欄位後方的說明文字 ***/
.std_form .input_box .desc {
	display: inline-block;
	margin-left: 1em;
	font-size: 90%;
}

/*** CF7 錯誤訊息 ***/
span.wpcf7-not-valid-tip {
	font-size: 90%;
	display: none;
}

/*** 文字欄位 ***/
.std_form input[type=text],
.std_form input[type=email],
.std_form input[type=password],
.std_form input[type=url],
.std_form textarea {
 	width: 100%; 
	padding: 3px;
	line-height: 1.42857143;
	color: #555;
	background-color: rgba(255,255,255,.8);
	background-image: none;
	border: 1px solid #CACACA;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-o-border-radius: 3px;
	-ms-border-radius: 3px;
}

@media only screen and (max-width: 599px) {
	/*** 每一列 ***/
	.std_form .form-row:not(.action), 
	.std_form .form-row .label_box,
	.std_form .form-row .input_box {
		display: block;
		width: 100%;
		border: none;
		text-align: left;
	}

    .std_form .form-row {
		padding: 3% 0;	/** 上下空白 **/
    }

	.std_form .form-row .label_box,
	.std_form .form-row .input_box {
		padding: 0 2%;	/** 左右空白 **/
	}
}

.std_form input[type=text]:focus,
.std_form input[type=email]:focus,
.std_form input[type=password]:focus,
.std_form input[type=url]:focus,
.std_form textarea:focus {
	border-color: rgba(102,175,233,.7);

	box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 3px rgba(102, 175, 233, .6);
	-webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 3px rgba(102, 175, 233, .6);
	-moz-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 3px rgba(102, 175, 233, .6);
	-ms-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 3px rgba(102, 175, 233, .6);
	-o-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 3px rgba(102, 175, 233, .6);
}

input[type="text"][disabled] {
	cursor: not-allowed;
	color: #333;
	background-color: #EEEEEE;
	border-color: #c7c7c7;
}

/*** 下拉選單 ***/
.std_form select {
	background: #FFF url(../images/icon/select-arrow.png) no-repeat 95% center;
	padding: 3px 35px 5px 5px;
	border: 1px solid #ccc;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

/* 拿掉 chrome 藍色框 */
.std_form select:focus {
/*	outline:0; */
}

/* 隱藏預設箭頭 ( for IE 11 ) */
.std_form select::-ms-expand { 
    display: none;
}

.std_form option {
 	padding-left: 5px;
	cursor: pointer ;
}

/*** checkbox & radio box ******************************************************************
 格式：
	<input type="radio" name="checkout_method" id="method_1" value="login_area" checked >
    <label for="method_1"><span></span>會員結帳</label>
*******************************************************************************************/
.std_form input[type="checkbox"],
.std_form input[type="radio"] {
	opacity: 0; 
}

.std_form input[type="radio"] {
	position: absolute;
	left: -999999px;
}

/*** 選項標籤 ***/
.std_form input[type="checkbox"] + label,
.std_form input[type="radio"] + label,
.std_form .wpcf7-list-item-label {
	position: relative;
	font-weight: normal;
	padding-left: .6em;
}

.std_form input[type="checkbox"] + label:hover ,
.std_form input[type="radio"] + label:hover,
.wpcf7-checkbox input[type="checkbox"] + .wpcf7-list-item-label:hover,
.wpcf7-list-item input[type="radio"] + .wpcf7-list-item-label:hover {
    cursor: pointer;
}

.std_form input[type="checkbox"] + label span:first-of-type:before,
.wpcf7-checkbox input[type="checkbox"] + .wpcf7-list-item-label:before {
	position: absolute;
	margin: 0;
	padding: 0;
	left: -0.8em;

	top: 50%;
	transform: translateY(-50%);

/*	top: 0.063em; */

	content: '';
	display: inline-block;
	width: 17px;
	height: 17px;
	vertical-align: middle;
	background: url(../images/icon/check_icon.png) left top no-repeat ;
	cursor: pointer;
}

.std_form input[type="checkbox"]:checked + label span:first-of-type:before,
.wpcf7-checkbox input[type="checkbox"]:checked + .wpcf7-list-item-label:before {
    background: url(../images/icon/check_icon.png) left bottom no-repeat;
}

.std_form input[type="radio"] + label span:first-of-type:before,
.wpcf7-list-item input[type="radio"] + .wpcf7-list-item-label:before {
	content: '';
	display: inline-block;
	width: 15px;
	height: 15px;
	margin: 0 5px 0 0;
	vertical-align: middle;
	background: url(../images/icon/radio_icon.png) left top no-repeat;
	cursor: pointer;
}

.std_form input[type="radio"]:checked + label span:first-of-type:before,
.wpcf7-list-item input[type="radio"]:checked + .wpcf7-list-item-label:before {
    background: url(../images/icon/radio_icon.png) left bottom no-repeat;
}

/*** 欄位 focus ***/
.std_form input[type="checkbox"]:focus + label span:first-of-type:before,
.wpcf7-checkbox input[type="checkbox"]:focus + .wpcf7-list-item-label:before,
.std_form input[type="radio"]:focus + label span:first-of-type:before,
.wpcf7-list-item input[type="radio"]:focus + .wpcf7-list-item-label:before {
    outline: 4px solid #FF9933 !important;
    outline-offset: 0 !important;
}

/*** for contact form 7 ***/
span.wpcf7-list-item {
	margin-left: 0;
}
span.wpcf7-list-item label {
	margin-bottom: 0;
}

/*** 每個選項 ***/
.std_form .wpcf7-list-item-label {
	margin-right: 1.5em;
}

/*** field & legend ***/
fieldset {
	border: 1px solid rgba(127,127,127,.3);
	padding: 10px 2%;

	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
}

legend {
	border: none;
	margin: 0;
	padding: 0 15px;
	display: inline-block;
	width: inherit;
	color: #093;
	font-weight: 500;
}

/************************************
	表單附加元件
*************************************/
/*** 表頭必填欄位說明 ***/
.require_note {
	text-align: right;
	margin-bottom: 5px;
	padding-right: 5px;
	color: #0E428E;
	font-size: 14px;
}
/* "*" icon */
.require_note span {
	color: #931313;
	font-weight: 700;
}

/*** 每欄必填 * icon ***/
.std_form abbr {
	color: #931313;
	padding-right: 3px;
	text-decoration: none;
	border-bottom: none;
}

/*** 表單驗證、送出表單 btn ***/
.std_form .form_action {
	position: relative;
	display: table;
	width: 100%;
	vertical-align: middle;
	text-align: left;
}

.std_form .captcha_box,
.std_form .submit_box {
	display: table-cell;
	vertical-align: middle;
	padding: .5em 0;
}

.std_form .captcha_box label {
	font-weight: normal;
	padding-right: .5em;
}

/* 表單驗證字樣：紅色 */
.std_form .captcha_box label:not(#quiz_label) {
	color: #D20000;
}

/* 答案輸入框 */
.std_form .captcha_box input {
	width: 4em !important; 
	text-align: center;
	border-color: rgba(255,128,64,1);
}

/*** 表單驗證欄位錯誤訊息 ***/
#quiz-error {
	display: inline-block;
	margin-left: .5em;
}

/* 傳送表單按鈕 Box */
.std_form .submit_box {
	text-align: right;
}

/*** ajax 動畫 icon ***/
.std_form .ajax-loader {
	position: absolute;
	right: 6em;
	bottom: 35%;
}

/*** 下拉選單 (所在地區) ***/
#twzipcode .country,
#twzipcode .area {
	display: inline-block;
}

#twzipcode .zipcode {
	display: none;
}

.tw-city:focus select {
    outline: 2px solid #FF9933 !important;
    outline-offset: -2px !important;
}

@media only screen and (max-width: 359px) {
	.std_form .form_action,
    .std_form .captcha_box,
    .std_form .submit_box {
        display: block;
		width: 100%;
        padding: 0;
		text-align: left;
    }
    /*** ajax 動畫 icon ***/
    .std_form .ajax-loader {
        left: 30%;
        bottom: 15%;
    }
}

/************************
表單預覽 
************************/
table.form_preview_table {
	max-width: 767px;
}

table.form_preview_table .field_label {
	width: 7.5em;
	color: #006100;
}

table.form_preview_table .field_label em {
	color: #AC1616;
}