/* Cgmap */
#Cgmap { position: relative; margin-bottom: -5%; z-index: -1; }
#Cgmap:before { position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 2; content: ""; }
#Cgmap iframe { width: 100vw; height: 350px; }

/* contact_page */
#contact_page { background: white; box-shadow: 0 0 0.8em 0 rgba(2, 2, 2, .16); display: flex; flex-wrap: wrap; justify-content: space-between; align-items: stretch; }

/* contact_information */
.contact_information { padding: 2em; }
.contact_information .title { margin-bottom: 1.5em; color: white; }
.contact_information a { margin-bottom: 1em; display: flex; align-items: center; }
.contact_information a font { position: relative; margin-right: 1em; width: 2.3em; aspect-ratio: 1/1; border: 1px var(--primary) solid; display: flex; justify-content: center; align-items: center; border-radius: 50%; }
.contact_information a font svg { width: 50%; height: 100%; fill: var(--primary); }
.contact_information a.map font svg { width: 45%; }
.contact_information a.line font svg { width: 65%; }
.contact_information a span { width: 1%; flex: 1 1 auto; font-size: .9em; color: white; }

/* form_box */
.form_box {padding: 2em 0;display: grid;grid-template-columns: repeat(1, 1fr);grid-gap: 1.2em;align-items: center;}
.form_box.large_item { padding: 0; }
.form_box .form_item label {color: var(--g_600);/* font-size: 14px; */}
.form_box .form_item input{font-size: 15px;padding: .7em;background: none;}
.form_box .form_item input::placeholder{font-size:14px;color:#a9a9a9;font-weight:300}
.form_box .form_item select{font-size:15px;}
.form_box .flex_style {display: flex;flex-wrap: wrap;align-items: center;}
.form_box .flex_style label.large { margin-right: 1em; width: 7em; }
.form_box .flex_style >input , .form_box .flex_style >font {font-size: 15px;width: 100%;}
.form_box .flex_style >font .bind { margin-left: 1em; }
.form_box .flex_style >font .bind svg { margin: 0 .6em; width: 30px; height: 30px; fill: #fff; }
.form_box .flex_style >font .btn { padding: 0; border-radius: .37em; display: inline-flex; justify-content: space-between; align-items: center; }
.form_box .flex_style >font .btn font { padding: .2em 0; width: 150px; border-left: 1px rgb(0 0 0 / 10%) solid; display: flex; justify-content: center; align-items: center; flex: 1 1 auto; color: #fff; }
.form_box .flex_style >font .btn.line { background: #06C755; }
.form_box .flex_style >font .bind .isbind svg { fill: #06C755; }
.form_box .flex_style .groud { overflow: hidden; display: flex; align-items: center; background-color: white; background-clip: padding-box; border: 1px solid var(--g_200); border-radius: .2em; }
.form_box .flex_style .groud >input { width: 1%; flex: 1 1 auto; border: 0; }
.form_box .flex_style .groud >button { padding: .5em; width: 10em; background: var(--red); text-align: center; color: white; }
.form_box  span.words {width: 100%;display: flex;justify-content: flex-end;align-items: center;font-size: .9em;color: var(--g_600);}
.form_box span.words b { margin: 0 .2em; font-size: 1em; }

.form_box .sex_box { padding: .3em 0; width: 100%; display: flex; align-items: center; }
.form_box .sex_box *{font-size:14px;}
.form_box .sex_box >span { margin-right: 1em; }
.form_box .sex_box >span input { margin-right: .2em; }
.form_box .address_box { width: 100%; display: grid; grid-template-columns: 8em 8em 1fr; grid-gap: .6em 1em; align-items: center; }
.form_box .calendar { position: absolute; width: 1em; height: 1em; top: 51%; right: 1em; fill: var(--g_500); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.form_box .note_txt span { font-size: .9em; color: var(--g_600); }
.form_box .check_box font { display: flex; align-items: center; }
.form_box .check_box font input { width: 1%; flex: 1 1 auto; }
.form_box .check_box font img { margin-left: .5em; cursor: pointer; }
.form_box .send_box {display: flex;justify-content: end;margin-top: 20px;}
.form_box .large_item.send_box { flex-direction: column; justify-content: center; }
.form_box .send_btn {padding: .4em .5em;width: 10em;background: #444;display: block;text-align: center;color: white;cursor: pointer;}
.form_box .send_btn.large_btn { width: 100%; }
.form_box .agree_box {margin-bottom: 1.2em;display: flex;align-items: center;}
.form_box .agree_box label[for="IsAgree"] { margin-left: .3em; width: 1%; flex: 1 1 auto; line-height: 1; }
.form_box .quit_login { display: flex; flex-direction: column; justify-content: center; align-items: center; }
.form_box .quit_login .line_link { padding: 0; width: min(100%, 350px); border-radius: .37em; background: #06C755; display: inline-flex; justify-content: space-between; align-items: stretch; }
.form_box .quit_login .line_link svg { margin: .2em .6em; width: 40px; height: 40px; fill: #fff; }
.form_box .quit_login .line_link font { width: 1%; border-left: 1px rgb(0 0 0 / 10%) solid; display: flex; justify-content: center; align-items: center; flex: 1 1 auto; font-size: 1.2em; color: #fff; }

/* member_page */
#member_page {margin: 0 auto;width: min(650px, 95vw);}
#member_page .login_btns {display: grid;grid-template-columns: repeat(2, 1fr);grid-gap: 1em;background: #f5f5f5;}
#member_page .login_btns a {margin-bottom: -1px;padding: .8em 1em;text-align: center;font-size: 1.1em;}
#member_page .login_btns a.acion {background: var(--primary);color: white;}
#member_page .other_btns .join {margin: 1em 0 .3em;display: flex;justify-content: center;align-items: baseline;}
#member_page .other_btns .join * {font-weight: 300;color: var(--g_500);}
#member_page .other_btns .join a {margin-left: .4em;padding: .5em .2em;display: block;border-bottom: 1px var(--info) solid;line-height: 1;color: var(--info);}
#member_page .other_btns .askpass { text-align: center; }
#member_page .other_btns .askpass a { font-weight: 300; color: var(--g_500); }

/* notice_box */
.notice_box h3 { margin-bottom: .5em; display: flex; align-items: baseline; font-weight: 300; font-size: 1.2em; color: var(--g_500); }
.notice_box h3 i { margin-right: .2em; color: var(--g_300); }
.notice_box ol { margin-left: 1.5em; list-style: decimal; }
.notice_box ol li { list-style: decimal; }

/* member_rule */
#member_rule { overflow: hidden; width: 0; max-height: 0; display: none; opacity: 0; }
#member_rule::-webkit-scrollbar { width: 13px; }
#member_rule::-webkit-scrollbar-track { background: none; }
#member_rule::-webkit-scrollbar-thumb { border-radius: 8px; border: 4px solid transparent; background-clip: content-box; background-color: var(--g_200); }
#member_rule::-webkit-scrollbar-thumb:hover { background-color: var(--g_300); }
#member_rule * { font-size: inherit; }
#member_rule ol.rulelist { padding-left: 20px; list-style: decimal; }
#member_rule ol.rulelist li { padding: 0 0 10px 10px; }
.fancybox-slide--current #member_rule { overflow-y: scroll; width: min(95vw, 800px); max-height: 55vh; opacity: 1; }

/* order_box */
.order_box {border: 1px solid #ededed;margin: 2em 0;}
.order_box h5 {font-weight: 500;background: #f6f6f6;margin: 0;padding: 10px 20px;font-size: 17px;letter-spacing: 1px;}
.order_box h5 b { margin-right: .5em; color: var(--red); }
.order_box h5.order_title {display: flex;align-items: center;px; */}
.order_box h5.order_title strong { margin: 0 .5em; font-weight: 400; font-size: 1em; }
.order_box h5 .icheck { margin-left: .5em; display: inline-flex; align-items: center; }
.order_box h5 .icheck label { margin-left: .2em; font-weight: 400; font-size: .75em; color: var(--g_800); }
.order_box>div {background: white;grid-gap: .8em;}
.order_box >.form_box{padding:2em 20px}

/* order_list */
.order_list .row_item {padding: .5em 1em;border-bottom: 1px solid #ededed;display: grid;grid-template-columns: 80px repeat(6, 1fr) 25px;grid-gap: 0 .5em;align-items: center;}
.order_list .row_item *{font-size:15px;font-family: "Open Sans", "Noto Sans TC", sans-serif;}
.order_list .row_item i{font-family: 'FontAwesome';color: #666;}
.order_list .row_item.title {padding: .8em 1em;}
.order_list .row_item.title *{font-size: 13px;color: #666;}
.order_list .row_item.list .img a { padding: .2em; border: 1px var(--g_100) solid; width: 70px; aspect-ratio: 1/1; display: block; }
.order_list .row_item.add_item .item.name a { display: flex; flex-direction: column; align-items: flex-start; }
.order_list .row_item.add_item .item.name .add_txt { padding: .3em .5em; background: var(--g_500); line-height: 1em; font-size: .8em; color: var(--g_100); }

/* q_control */
.q_control { border: 1px var(--g_200) solid; display: inline-flex; align-items: stretch; }
.q_control button { position: relative; width: 2em; cursor: pointer; }
.q_control button:before { position: absolute; width: 30%; height: 1px; background: var(--g_500); display: block; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); content: ""; }
.q_control button.plus:after { position: absolute; width: 30%; height: 1px; background: var(--g_500); display: block; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%) rotate(90deg); transform: translate(-50%, -50%) rotate(90deg); content: ""; }
.q_control input { padding: .3em 0; width: 3em; border: 0; border-radius: 0; text-align: center; }

/* other_box */
#order .other_box {margin-top: 2em;padding: 0 2em;}
#order .other_box >* { margin-left: auto; width: 20em; }
#order .other_box p {margin-bottom: .5em;display: flex;justify-content: flex-end;align-items: center;gap: .3em 1em;}
#order .other_box p label { min-width: 5em; }
#order .other_box p font { width: 1%; flex: 1 1 auto; font-size: .9em; }
#order .other_box p font input { padding: .2em .5em; font-size: 1em; }
#order .other_box p.point_txt { margin-bottom: 0; }
#order .other_box p.point_txt font{color: #666;font-size: 13px;text-align: left;margin-bottom: 10px;}
#order .other_box p.tt font {color: #666;font-size: 13px;text-align: left;margin: 10px;}
#order .other_box p.tt{background-color: #f5f5f5;margin-top: 20px;}

/* btns */
#order .btns {margin: 2em 2em;display: flex;justify-content: center;align-items: center;}
#order .btns .btn {margin: 0 .5em;padding: .3em .5em;width: 10em;text-align: center;font-size: 14px;color: #666;}
#order .btns #btnClean {background: var(--primary);border-color: var(--primary);color: white;font-size: 15px;}

/* order_bottom_txt */
.order_bottom_txt {position: absolute;width: 100%;bottom: 0;left: 0;opacity: 0;z-index: 998;}
.order_bottom_txt .workframe_s {padding: 1em 0;display: flex;flex-wrap: wrap;justify-content: space-around;align-items: center;margin: 0 auto;}
.order_bottom_txt.fixed { position: fixed; background: white; box-shadow: 0 0 .5em var(--g_200); opacity: 1; }
.order_bottom_txt.absolute-bt { opacity: 1; }
.order_bottom_txt.absolute-bt .workframe_s { padding-bottom: 2em; }
.order_bottom_txt .item_row { width: 45%; }
.order_bottom_txt .total_box , .order_bottom_txt p {display: flex;align-items: center;flex-wrap: wrap;}
.order_bottom_txt .total_box label { min-width: 6em; }
.order_bottom_txt .total_box #totaltxt {margin-left: .5em;min-width: 6em;font-weight: 500;font-size: 1.3em;color: var(--g_700);font-family: 'Open Sans';}
.order_bottom_txt .send { display: flex; justify-content: flex-end; align-items: center; }
.order_bottom_txt .send #btnOK {padding: .5em;width: min(20em, 100%);text-align: center;background: var(--primary);color: white;font-size: 15px;}

/* bot_note */
#bot_note {position: relative;width: 1%;display: flex;flex-wrap: wrap;align-items: center;gap: .2em;flex: 1 1 auto;line-height: 1;color: var(--g_700);font-family: "Open Sans", "Noto Sans TC", sans-serif;}
#bot_note span {line-height: 1.2;font-size: .9em;color: var(--g_700);font-family: "Open Sans", "Noto Sans TC", sans-serif;}
#bot_note #opendis { margin: 0 .2em; line-height: 1; font-size: .9em; color: var(--red); cursor: pointer; }
#bot_note #opendis * { font-size: 1em; color: currentColor; }
#bot_note b { position: absolute; min-width: 7em; background: white; border: 1px var(--g_200) solid; border-radius: .2em; box-shadow: 0 0 .5em var(--g_200); right: 0; bottom: 120%; opacity: 0; }
#bot_note b span { overflow: hidden; height: 0; display: block; font-weight: 400; font-size: .9em; }
#bot_note b[data-type="2"] { padding: 5px 10px; opacity: 1; }
#bot_note b[data-type="2"]:before, #bot_note b[data-type="2"]:after { position: absolute; width: 0; height: 0; border-style: solid; border-width: 10px 8px 0 8px; border-color: #d6d6d6 transparent transparent transparent; display: inline-block; bottom: -10px; left: 20px; content: ""; }
#bot_note b[data-type="2"]:after { border-width: 10px 8px 0 8px; border-top-color: #fff; bottom: -9px; }
#bot_note b[data-type="2"] span { margin: .2em 0; height: 1.1em; }

@media screen and (min-width: 1161px){
}
@media screen and (min-width: 981px){
	.form_box { grid-template-columns: repeat(2, 1fr); }
	.form_box .large_item, .form_box span.words { grid-column: 1/3; }
	.order_list .row_item .item { text-align: center; }
	.order_list .row_item .item.img_name { grid-column: 1/4; text-align: left; }
	.order_list .row_item.list .item.name { grid-column: 2/4; text-align: left; }
	.order_list .row_item.add_item .item.name { grid-column: 2/5; }
	.order_list .row_item.add_item .item.price { grid-column-start: 7; }
	#order .btns { justify-content: flex-end; }
	#order .btns #btnClean { margin-right: 0; }
}
@media screen and (max-width: 980px) and (min-width: 641px){
	.contact_information { display: grid; grid-template-columns: repeat(2, 1fr); grid-gap: 1.5em 1em; align-items: center; }
	.contact_information .title { grid-column: 1/3; }
}
@media screen and (max-width: 980px) {
    .order_bottom_txt .item_row{width:100%;justify-content: flex-start;}
	.order_list .row_item.title , .order_list .row_item.list .price { display: none; }
	.order_list .row_item.list {position: relative;padding: .5em;grid-template-columns: 80px 1fr 150px;grid-template-areas:
"img name quantity"
"img format quantity"
"img amount quantity";grid-gap: 0 .3em;align-items: end;}
	.order_list .row_item.list .img { grid-area: img; }
	.order_list .row_item.list .name { grid-area: name; }
	.order_list .row_item.list .format { grid-area: format; line-height: 1; font-size: .8em; color: var(--g_600); }
	.order_list .row_item.list .format:before { content: attr(data-tit)":"; }
	.order_list .row_item.list .quantity { grid-area: quantity; display: flex; justify-content: flex-end; }
	.order_list .row_item.list .amount { grid-area: amount; font-weight: 500; }
	.order_list .row_item.list .operate { position: absolute; top: .5em; right: .5em; }
}
@media screen and (max-width: 640px){
    .order_box h5{padding:10px;}
    .order_box >.form_box{padding: 2em 10px;}
    .order_bottom_txt .item_row{margin-bottom:5px;}
    .order_bottom_txt .item_row.send{display:block;}
    .order_bottom_txt .send #btnOK{width:100%;padding: .5em 0;}
    .order_bottom_txt p{width:100%}
    #order .btns{margin: 2em 0;justify-content: flex-end;}
    #order .other_box{padding: 0 .5em;}
    .order_list .row_item.list{grid-template-columns: 80px 1fr 70px;}
    .q_control input{width: 2em;}
    .q_control button{width: 1.5em;}
	.form_box { padding: 2em 3%; }
	.form_box .address_box { grid-template-columns: repeat(2, 1fr); grid-template-areas: "city area" "inp inp"; }
	.form_box .address_box .address_inp { grid-area: inp; }
	.order_box>div {padding: 1.5em 0;}
}
@media screen and (min-width: 551px){
	.form_box .flex_style label {margin-right: 3em;padding: .5em 0;width: 5em;text-align: justify;text-align-last: justify;}
	.form_box .flex_style >input , .form_box .flex_style >font { width: 1%; flex: 1 1 auto; }
}