@charset "utf-8";
/* CSS Document */
@import url("reset.css");
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@400;600&display=swap');

html{
	scroll-behavior:smooth;
}

body{
	font-family:'Noto Sans TC','微軟正黑體',sans-serif;
	font-size:17px;
	color:#222222;
	-webkit-text-size-adjust:none;
	image-rendering:-webkit-optimize-contrast;
}

a{
	color:#222222;
}

.webout{
	position:relative;
	max-width:2000px;
	margin:0 auto;
}

article{
	overflow:clip;
}

.out{
	max-width:1450px;
	position:relative;
	padding:0 20px;
	margin:0 auto;
}

input, select{
	font-family:'Noto Sans TC','微軟正黑體',sans-serif;
	font-size:17px;
}

@media print{
    body{
        print-color-adjust:exact;
    }
	
	header, footer, .s1, .tab{
		display:none !important;
	}
}

/*HOME-----------------------------------------*/

/*HOME_S1-----------------*/
.home .s1{
	background:url("../images/home_s1.jpg") bottom center no-repeat;
	background-size:cover;
	height:700px;
}

.home .s1 img{
	display:none;
}

.home .s1 .out{
	padding-top:190px;
	font-size:45px;
	text-shadow:3px 3px 5px rgba(0,0,0,0.2);
}

.home .s1 .t1{
	font-family:"Noto Serif TC", serif;
	line-height:1.3em;
	color:#FFFFFF;
	font-weight:600;
	margin-left:1em;
}

.home .s1 .t2{
	position:relative;
	max-width:19em;
	font-size:0.4em;
	color:#FFFFFF;
	background:#8EC21F;
	padding:1em;
	line-height:1.5em;
	border-radius:0.5em;
	margin:1em 0 0 2.5em;
}

.home .s1 .t2:before{
	content:"";
	position:absolute;
	top:1em;
	right:100%;
	width:2.5em;
	height:100%;
	background:url("../images/home_s1_img.png") no-repeat;
	background-size:90% auto;
}

/*HOME_S2-----------------*/
.home .s2,
.cart .s2{
	background:url("../images/home_s2.jpg") top center;
}

.home .s2 .out{
	top:-40px;
}

.home .s2 .list{
	background-color:#FFFFFF;
	background-image:url("../images/icon_ox.svg"),url("../images/icon_ox.svg"),url("../images/icon_ox.svg"),url("../images/icon_ox.svg");
	background-repeat:no-repeat;
	background-size:12px;
	background-position:top 20px left 20px, top 20px right 20px, bottom 20px left 20px, bottom 20px right 20px;
	border:#C89F63 2px solid;
	padding:45px;
	border-radius:30px;
	margin-bottom:40px;
}

.home .s2 .list li{
	position:relative;
	display:flex;
	align-items:flex-start;
	gap:50px;
	padding-bottom:35px;
	margin-bottom:35px;
	border-bottom:#F0E7D7 1px solid;
}

.home .s2 .list li:last-child{
	padding-bottom:0;
	margin-bottom:0;
	border-bottom:none;
}

.home .s2 .image{
	width:250px;
	min-width:250px;
	border-radius:15px;
}

.home .s2 .text{
	width:100%;
}

.home .s2 .list .title{
	font-size:30px;
	line-height:1.3em;
	font-weight:normal;
	border-bottom:#C89F63 1px solid;
	padding-bottom:20px;
	margin-bottom:20px;
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:0 1em;
}

.home .s2 .list .title span{
	font-size:0.6em;
	line-height:1.3em;
	text-indent:-0.7em;
	padding:0.5em 0 0.5em 0.7em;
}

.home .s2 .list .title span:before{
	font-family:'微軟正黑體',sans-serif;
	content:"• ";
	color:#C89F63;
}

.home .s2 .link{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
}

.home .s2 .link a{
	border:#B4B4B5 1px solid;
	padding:5px 15px;
	line-height:1.5em;
	border-radius:5px;
	transition:0.2s;
}

.home .s2 .link a:hover{
	color:#946134;
	border-color:#C89F63;
}

/*HOME_S2_CHOOSE*/
.home .s2 .choose{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	gap:10px;
	margin-top:15px;
	font-size:16px;
}

.home .s2 .choose b{
	font-weight:normal;
}

.home .s2 .choose div{
	background:#6E5D41;
	color:#FFFFFF;
	padding:5px 8px 5px 15px;
	border-radius:5px;
	line-height:1.5em;
	display:flex;
	align-items:center;
	gap:10px;
}

.home .s2 .choose a{
	display:flex;
	justify-content:center;
	align-items:center;
	width:1.5em;
	height:1.5em;
	border-radius:50%;
}

.home .s2 .choose a:hover{
	background:#4E422D;
}

.home .s2 .choose span{
    height:2px;
    width:13px;
	display:block;
    position:relative;
    transition:0.3s;
}

.home .s2 .choose span:before,
.home .s2 .choose span:after{
    content:"";
    height:2px;
    position:absolute;
    right:0;
    background:#FFFFFF;
    top:0;
    width:100%;
    transition:0.3s;
}

.home .s2 .choose span:before{
	transform:rotate(45deg);
}

.home .s2 .choose span:after{
	transform:rotate(-45deg);
}

/*HOME_S2_BT*/
.home .s2 .bt{
	display:flex;
	gap:15px;
	margin-top:30px;
}

.home .s2 .bt a,
.home_fancy .ok{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	width:180px;
	color:#FFFFFF;
	text-align:center;
	line-height:50px;
	background:#49B6B9;
	box-shadow:0 3px #3A9294;
	border-radius:30px;
	cursor:pointer;
	transition:0.2s;
}

.home .s2 .bt a:hover,
.home_fancy .ok:hover{
	background:#3C9B9E;
	box-shadow:0 3px #317D7F;
}

.home .s2 .bt a:nth-child(2),
.cart .s2 .right .price .bt{
	background:#E95514;
	box-shadow:0 3px #B31B2E;
}

.cart .s2 .right .price a{
	background:#EEEEEE;
	box-shadow:0 3px #AAAAAA;
}

.cart .s2 .left .again{
	background:#FFFFFF;
	box-shadow:0 3px #AAAAAA;
}

.home .s2 .bt a:nth-child(2):hover,
.cart .s2 .right .price .bt:hover{
	background:#CC4A11;
	box-shadow:0 3px #9C1728;
}

.cart .s2 .right .price a:hover{
	background:#DDDDDD;
	box-shadow:0 3px #999999;
}

.cart .s2 .left .again:hover{
	background:#EEEEEE;
	box-shadow:0 3px #999999;
}

.home .s2 .bt a img{
	height:27px;
}

/*HOME_FANCY*/
.fancybox-bg{
	background:#C89F63 !important;
}

.home_fancy,
.home_fancy .fancybox-button{
	display:none;
}

.home_fancy.fancybox-content{
	max-width:940px;
	padding:0;
	width:100%;
	border-radius:10px;
}

.home_fancy .box{
	max-width:840px;
	padding:60px 20px;
	margin:0 auto;
}

.home_fancy .t1{
	position:relative;
	font-size:23px;
	color:#FFFFFF;
	text-align:center;
	background:#6E5D41;
	padding:1em;
}

.home_fancy .t1:after{
	content:"";
	position:absolute;
	left:50%;
	bottom:-9px;
    border-style:solid;
    border-width:10px 15px 0 15px;
    border-color:#6E5D41 transparent transparent transparent;
	margin-left:-15px;
}

.home_fancy .top{
	list-style:disc;
	line-height:1.5em;
	margin:0 0 40px 1.2em;
}

.home_fancy .top li::marker{
	color:#C89F63;
}

.home_fancy .bm li{
	border-bottom:#C89F63 1px solid;
	line-height:1.5em;
}

.home_fancy .bm label{
	position:relative;
	display:block;
	padding:15px 0 15px 30px;
	cursor:pointer;
}

.home_fancy .bm span{
	position:absolute;
	top:18px;
	left:0;
	display:block;
	width:20px;
	height:20px;
	border:#49B6B9 2px solid;
}

.home_fancy .bm input[type="checkbox"]{
	display:none;
}

.home_fancy .bm input[type="checkbox"]:checked + span{
	background:#49B6B9;
}

.home_fancy .bm input[type="checkbox"]:checked + span:before{
	content:"";
	position:absolute;
	left:50%;
	top:50%;
	width:70%;
	height:30%;
	border-color:#FFFFFF;
	border-style:solid;
	border-width:0px 0px 3px 3px;
	transform:translate(-50%,-70%) rotate(-45deg);
}

.home_fancy .ok{
	margin:40px auto 0;
}

/*CART-----------------------------------------*/

/*CART_S1-----------------*/
.cart .s1{
	background:url("../images/cart_s1.jpg") bottom center;
	background-size:cover;
	height:460px;
}

.cart .s1 .out{
	max-width:1170px;
	font-size:46px;
	color:#FFFFFF;
	padding-top:230px;
}

.cart .s1 .t2{
	font-size:0.6em;
	margin-top:0.7em;
}

/*CART_S2-----------------*/
.cart .s2{
	padding:30px 0 130px;
}

.cart .s2 .out{
	max-width:1350px;
}

/*CART_S2_TAB*/
.cart .s2 .tab{
	max-width:1020px;
	margin:0 auto 55px;
	display:flex;
	border-radius:10px;
	background:#FFFFFF;
	box-shadow:7px 7px 9px rgba(0,0,0,0.2);
	overflow:hidden;
}

.cart .s2 .tab li{
	width:100%;
	border-right:#E4E4E4 2px solid;
	text-align:center;
	padding:1em 0;
}

.cart .s2 .tab li:last-child,
.cart .s2 .tab li.active{
	border-right:none;
}

.cart .s2 .tab li.active{
	color:#FFFFFF;
	background:#49B6B9 url("../images/tab_icon.svg") right 20px center no-repeat;
	background-size:24px;
}

.cart .s2 .tab li span{
	color:#49B6B9;
}

.cart .s2 .tab li.active span{
	color:#FFFFFF;
}

/*CART_S2_FORM*/
.cart .s2 form{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	gap:25px;
}

.cart .s2 .left{
	background:#FFFFFF;
	width:100%;
	padding:20px 30px;
	box-sizing:border-box;
	border-radius:15px;
	box-shadow:7px 7px 9px rgba(0,0,0,0.2);
}

.cart .s2 .left .t1,
header .topcart .top{
	font-size:20px;
	font-weight:normal;
	background:url("../images/icon_step_title.svg") no-repeat;
	background-size:19px;
	padding:0 0 1em 25px;
	border-bottom:#49B6B9 1px solid;
}

.cart .s2 .step1 .t1{
	display:flex;
}

.cart .s2 .step1 .t1 span:first-child{
	min-width:140px;
}

.cart .s2 .step1 .t1 .ps{
	font-size:17px;
	line-height:1.5em;
}

.cart .s2 .step1 .image{
	display:block;
	width:135px;
	min-width:135px;
}

.cart .s2 .step1 .image img{
	width:100%;
	border-radius:8px;
}

.cart .step1 .list{
	position:relative;
	padding:30px 40px 30px 0;
	display:flex;
	align-items:flex-start;
	gap:30px;
	border-bottom:#E9D9C1 1px solid;
}

.cart .step1 .list:last-child{
	border-bottom:none;
}

.cart .step1 .title{
	font-size:20px;
	font-weight:normal;
	line-height:1.5em;
	margin-bottom:0.5em;
}

.cart .step1 .choose{
	list-style:disc;
	margin-left:1.2em;
	line-height:1.5em;
}

.cart .step1 .choose li::marker{
	color:#C89F63;
}

.cart .step1 .del,
header .topcart .del{
	position:absolute;
	top:30px;
	right:0;
	width:38px;
	height:38px;
	background:url("../images/icon_del.svg") no-repeat;
	background-size:cover;
}

.cart .step1 .del:hover,
header .topcart .del:hover{
	background-image:url("../images/icon_del_hover.svg");
}

.cart .s2 .right{
	position:sticky;
	top:100px;
	width:370px;
	min-width:370px;
}

.cart .s2 .right > ul > li{
	background:#FFFFFF;
	margin-bottom:20px;
	border-radius:15px;
	box-shadow:7px 7px 9px rgba(0,0,0,0.2);
	padding:30px;
	overflow:hidden;
}

.cart .s2 .right .price .t1{
	font-size:20px;
	color:#FFFFFF;
	font-weight:normal;
	padding:1em;
	background:#49B6B9;
	margin:-30px -30px 0;
}

.cart .s2 .right .price ul{
	padding:30px 0;
}

.cart .s2 .right .price .nt span{
	color:#40A0A3;
}

.cart .s2 .right .price li{
	padding:8px 0;
}

.cart .s2 .right .price .nt:nth-child(2){
	margin-bottom:1.5em;
}

.cart .s2 .right .price .tax{
	display:flex;
	align-items:center;
	justify-content:space-between;
}

.cart .s2 .right .price .tax:nth-child(3){
	border-bottom:#49B6B9 1px solid;
}

.cart .s2 .right .price .tax span:last-child{
	font-size:20px;
}

.cart .s2 .right .price .bt,
.cart .s2 .right .price a,
.cart .s2 .left .again{
	border:none;
	height:60px;
	width:100%;
	cursor:pointer;
	font-size:20px;
	color:#FFFFFF;
	border-radius:10px;
	transition:0.2s;
}

.cart .s2 .left .again{
	max-width:300px;
	margin:0 auto -60px !important;
	position:relative;
	top:50px;
}

.cart .s2 .right .price a,
.cart .s2 .left .again{
	display:block;
	color:#222222;
	line-height:60px;
	text-align:center;
	margin-bottom:10px;
}

.cart .s2 .right .price a{
	margin:10px 0 0;
	color:#FFF;
	background-color:#49B6B9;
	box-shadow:0 3px #3C9597;
}

.cart .s2 .right .price a:hover{
	color:#FFF;
	background:#42AAAC;
	box-shadow:0 3px #358688;
}

.cart .s2 .right .ps ul{
	list-style:disc;
	margin-left:1.2em;
}

.cart .s2 .right .ps li{
	position:relative;
	line-height:1.7em;
	margin-bottom:0.5em;
}

.cart .s2 .right .ps li::marker{
	color:#49B6B9;
}

.cart .s2 .right .ps li:last-child{
	margin-bottom:0;
}

/*CART_S2_STEP2*/
.cart .step2 .t1:first-child{
	margin-top:0;
}

.cart .step2 .t1{
	margin:50px 0 30px;
}

.cart .step2 .enter{
	max-width:730px;
	margin:0 auto;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	gap:15px;
}

.cart .step2 .enter li{
	display:flex;
	align-items:center;
}

.cart .step2 input[type="text"]{
	width:270px;
	font-size:17px;
	border:#9E9F9F 1px solid;
	padding:10px;
	background:#FFFFFF;
	box-sizing:border-box;
	border-radius:5px;
	margin-left:1em;
}

.cart .step2 .ship li{
	width:321px;
}

.cart .step2 .ship li:last-child{
	width:100%;
}

.cart .step2 .ship li:last-child input[type="text"],
.cart .step3 .step2 .ship li:last-child div{
	width:calc(100% - 3em);
}

.cart .step2 .ship .select_box{
	display:inline-block;
	position:relative;
	border:#9E9F9F 1px solid;
	border-radius:5px;
	width:180px;
	margin-left:1em;
}

.cart .step2 .ship .select_box:after{
	content:"";
	border-style:solid;
	border-width:8px 4px 0 4px;
	border-color:#888888 transparent transparent transparent;
	position:absolute;
	top:50%;
	right:10px;
	transform:translateY(-50%);
	pointer-events:none;
}

.cart .step2 .ship .select_box select{
	width:100%;
	border:none;
	padding:10px 25px 10px 15px;
	font-size:18px;
	color:#333333;
	background:#FFFFFF;
	cursor:pointer;
	box-sizing:border-box;
	border-radius:5px;
}

.cart .step2 .txt{
	padding-left:25px;
}

.cart .payinfo{
	border:#C89F63 2px solid;
	max-width:320px;
	padding:30px;
	border-radius:15px;
	line-height:1.5em;
	overflow:hidden;
}

.cart .payinfo li{
	margin-bottom:0.7em;
}

.cart .payinfo li:first-child{
	background:#F1E7D8;
	margin:-30px -30px 20px;
	padding:20px 30px;
}

.cart .payinfo li:last-child{
	margin-bottom:0;
}

.cart .step2 .lastno{
	display:flex;
	align-items:center;
	margin:35px 0 25px;
}

.cart .step2 .lastno input[type="text"]{
	width:200px !important;
}

.cart .step2 .ps{
	list-style:disc;
	line-height:1.3em;
}

.cart .step2 .ps li::marker{
	color:#C20D23;
}

.cart .step2 .ps a,
.cart .step4 .ps a{
	display:inline-block;
	background:url("../images/icon_line.png") right center no-repeat;
	background-size:20px;
	padding-right:25px;
	border-bottom:#22AB38 1px solid;
	transition:0.2s;
}

.cart .step2 .ps a:hover,
.cart .step4 .ps a:hover{
	color:#22AB38;
}

.cart .back{
	position:relative;
	display:block;
	width:180px;
	line-height:45px;
	background:#EEEEEE;
	text-align:center;
	border-bottom:#C89F63 2px solid;
	border-radius:8px;
	margin:50px 0;
	transition:0.2s;
}

.cart .back:hover{
	width:200px;
}

.cart .back:before{
	content:"";
	position:absolute;
	top:50%;
	left:15px;
	width:8px;
	height:8px;
	border-style:solid;
	border-color:#595757;
	border-width:0 0 2px 2px;
	transform:rotate(45deg);
	margin-top:-5px;
}

.cart .step2 .nofill:before{
	position:absolute;
	top:-2px;
	right:5px;
	color:#FFFFFF;
	padding:8px 10px;
	background-color:#CC0000;
	border-radius:5px 5px 0px 0px;
	font-size:12px;
	line-height:1em;
	white-space:nowrap;
	pointer-events:none;
}

.cart .step2 .city.nofill:before,
.cart .step2 .area.nofill:before{
	right:95px;
}

.cart .step2 .nofill:before{
	content:"此欄為必填";
}

.cart .step2 .nofill{
	position:relative;
	padding-top:25px !important;
}

.cart .step2 .nofill input,
.cart .step2 .nofill .select_box{
	border:#CC0000 1px solid !important;
	box-shadow:0px 0px 5px #CC0000;
}

/*CART_S2_STEP3*/
.cart .step3 .step2 .enter li{
	align-items:flex-start;
}

.cart .step3 .step2 li{
	line-height:1.5em;
}

.cart .step3 .step2 li div{
	display:inline-block;
	width:270px;
	margin-left:1em;
	padding-bottom:5px;
	border-bottom:#C89F63 1px solid;
}

/*CART_S2_STEP4*/
.cart .step4{
	text-align:center;
	overflow:hidden;
}

.cart .step4 .top{
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
}

.cart .step4 .top .t1{
	border-bottom:none;
}

.cart .step4 .top a{
	display:flex;
	align-items:center;
	gap:5px;
}

.cart .step4 .plane{
	display:block;
	width:70px;
	margin:20px auto 0;
}

.cart .step4 .t2{
	font-size:27px;
	margin:20px 0 50px;
}

.cart .step4 .payinfo{
	max-width:400px;
	margin:0 auto;
	background:linear-gradient(#F1E7D8 66px, #FFFFFF 0);
}

.cart .step4 .amount li:first-child{
	position:relative;
	background:none;
	margin:2em 0 1em;
	padding:0;
}

.cart .step4 .payinfo ul{
	max-width:270px;
	margin:0 auto;
	text-align:left;
}

.cart .step4 .bm{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	gap:30px;
	background:#F5EEE3;
	margin:60px -30px -20px -30px;
	padding:30px;
}

.cart .step4 .bm li{
	line-height:1.5em;
	text-align:left;
}

.cart .step4 .bm li .green{
	color:#22AB38;
}

.cart .step4 .bm li .red{
	color:#C20D23;
}

/*COMMON--------------------------------------------------------------------*/

/*HEADER-----------------------------------------*/
header{
	position:fixed;
	top:0;
	left:0;
    width:100%;
	z-index:1000;
	transition:0.2s;
}

header.active{
    background:#FFFFFF;
    box-shadow:0px 2px 2px rgba(0,0,0,0.1);
}

header .mb_bt,
header .mb{
	display:none;
}

header .logo{
	display:block;
	position:absolute;
	top:50%;
	left:20px;
	z-index:1;
	width:60%;
	max-width:390px;
	transform:translateY(-50%);
	transition:0.2s;
}

header.active .logo{
	max-width:280px;
}

header .logo img{
	width:100%;
}

header .pc{
	display:flex;
	justify-content:flex-end;
	align-items:center;
	gap:15px;
	height:200px;
	transition:0.2s;
}

header.active .pc{
	height:100px;
}

header .pc .menu{
	display:flex;
	align-items:center;
	gap:35px;
	background:#FFFFFF;
}

header .pc .menu,
header .pc .cart{
	padding:12px 30px;
	border-radius:50px;
	transition:0.2s;
}

header .pc .cart{
	padding:17px 25px;
}

header .menu img{
	height:35px;
}

header .menu li:last-child img,
header .cart img{
	height:25px;
	transition:0.2s;
}

header .menu li:last-child a:hover img{
	opacity:0.7;
}

header .menu a{
	display:flex;
	align-items:center;
	gap:10px;
	font-size:18px;
	transition:0.2s;
}

header .menu a:hover{
	color:#3D9BE9;
}

header .cart{
	display:none;
}

header .pc .cart{
	position:relative;
	background:#49B6B9;
	display:flex;
	align-items:center;
	gap:5px;
	font-size:18px;
	color:#FFFFFF;
	transition:0.2s;
}

header .cart:hover{
	background:#3FA1A4;
}

header .cart span{
	position:absolute;
	top:-15px;
	right:20px;
	background:#C20D23;
	font-size:13px;
	padding:0.3em 0.7em;
	border-radius:2em;
	border:#E95514 0.3em solid;
	transition:transform 0.2s;
}

header .cart span.active{
	transform:scale(1.2);
}

@media only screen and (max-width:1250px){
    header .logo{
        max-width:280px;
    }
	
    header .pc .menu{
        gap:20px;
    }
	
    header .pc .menu{
        padding:15px 20px;
    }
	
    header.active .pc .menu{
        padding:10px 20px;
    }

    header .pc .cart{
        padding:20px 20px;
    }

    header.active .pc .cart{
        padding:15px 20px;
    }
}

/*HEADER_TOPCART-----------------*/
header .topcart{
	display:none;
	position:absolute;
	top:129px;
	width:370px;
	padding:25px;
	background:#FFFFFF;
	box-shadow:0 0 5px rgba(0,0,0,0.2);
	border-radius:10px;
	transition:top 0.2s;
}

header.active .topcart{
	top:80px;
}

header .topcart .top{
	display:flex;
	gap:30px;
	font-size:17px;
}

header .topcart .top span{
	color:#49B6B9;
}

header .topcart .added{
	max-height:calc(80vh - 170px);
	overflow:auto;
	margin:0 -25px;
}

header .topcart .list{
	position:relative;
	padding:30px 25px;
	display:flex;
	align-items:flex-start;
	gap:20px;
}

header .topcart .list:after{
	content:"";
	position:absolute;
	left:25px;
	right:25px;
	bottom:0;
	height:1px;
	background:#E9D9C1;
}

header .topcart .list:last-child:after{
	display:none;
}

header .topcart .title{
	font-size:18px;
	line-height:1.3em;
	font-weight:600;
	margin-bottom:1em;
	padding-right:30px;
}

header .topcart img{
	width:50px;
	min-width:50px;
	border-radius:5px;
}

header .topcart .choose{
	display:none;
	list-style:disc;
	font-size:14px;
	line-height:1.5em;
	margin:0 0 1em 1.2em;
}

header .topcart .choose li::marker{
	color:#C89F63;
}

header .topcart .more{
	display:inline-block;
	position:relative;
	font-size:14px;
	padding-right:1em;
	cursor:pointer;
}

header .topcart .more:before{
	content:"更多詳細資訊";
}

header .topcart .more.active:before{
	content:"較少詳細資訊";
}

header .topcart .more:after{
	content:"";
	position:absolute;
	top:50%;
	right:0;
    border-style:solid;
    border-width:6px 3px 0 3px;
    border-color:#49B6B9 transparent transparent transparent;
	margin-top:-3px;
}

header .topcart .more.active:after{
    border-width:0 3px 6px 3px;
    border-color:transparent transparent #49B6B9 transparent;
}

header .topcart .del{
	top:10px;
	right:20px;
}

header .topcart .bt{
	padding-top:25px;
}

header .topcart .bt a{
	display:block;
	font-size:20px;
	color:#FFFFFF;
	text-align:center;
	line-height:55px;
	background:#6E5D41;
	border-bottom:#40220F 3px solid;
	border-radius:10px;
	transition:0.2s;
}

header .topcart .bt a:hover{
	background:#605138;
	border-color:#311A0B;
}

/*BOOKMARK-----------------------------------------*/
.bookmark{
	position:absolute;
	top:-145px;
	pointer-events:none;
}

/*FOOTER-----------------------------------------*/

/*FOOTER_TOP-----------------*/
footer .out{
	display:flex;
	justify-content:space-between;
}

footer .top{
	padding:45px 0 65px;
}

footer .top .logo{
	max-width:205px;
}

footer .top .logo img{
	width:100%;
}

footer .top li li{
	margin-bottom:15px;
	line-height:1.7em;
}

footer .top li li:first-child{
	font-size:1.2em;
	color:#49B6B9;
	margin-bottom:30px;
}

footer .top li img{
	width:25px;
	vertical-align:middle;
	margin-right:10px;
}

footer .top li a{
	transition:0.2s;
}

footer .top li a:hover{
	color:#49B6B9;
}

footer .top .contact{
	max-width:350px;
}

footer .top .contact li:last-child{
	font-size:0.95em;
	padding:1em;
	border:#49B6B9 1px solid;
	border-radius:8px;
}

footer .top .info{
	max-width:295px;
}

footer .top .info ul{
	list-style:disc;
	margin-left:20px;
}

footer .top .info li{
	margin-bottom:0;
}

footer .top .info li::marker{
	color:#49B6B9;
}

footer .top .info li:first-child{
	text-indent:-1em;
}

footer .top .info li:first-child::marker{
	font-size:0;
}

@media screen and (max-width:1300px) and (min-width:1001px){
    footer .top{
		font-size:1.3vw;
    }
	
    footer .top .logo{
        width:17%;
    }
	
    footer .top .contact{
		width:29%;
    }
	
    footer .top .info{
        width:25%;
    }
}

/*FOOTER_BM-----------------*/
footer .bm{
	color:#FFFFFF;
	font-size:15px;
	padding:1em 0;
	background:#B18147;
}

footer .bm a{
	color:#FFFFFF;
	transition:0.2s;
}

footer .bm a:hover{
	opacity:0.8;
}

@media only screen and (max-width:390px){
	footer{
		font-size:4.3vw;
	}
}

/*MOBILE----------------------------------------------------------------------------*/
@media only screen and (max-width:1000px){
	/*HOME-----------------------------------------*/
	
    /*HOME_S1-----------------*/
    .home .s1{
        height:auto;
    }
	
	.home .s1 .out{
		display:none;
	}

    .home .s1 img{
        display:block;
		width:100%;
    }
	
	/*HOME_S2-----------------*/
	.home .s2 .list{
		padding:45px 30px;
	}
	
    .home .s2 .list li{
        display:block;
    }
	
    .home .s2 .image{
		display:block;
		margin:0 auto 30px;
		width:100%;
		max-width:250px;
		min-width:0;
    }
	
	/*HOME_S2_CHOOSE*/
    .home .s2 .choose b{
		width:100%;
    }
	
	/*HOME_S2_BT*/
    .home .s2 .bt a img{
		display:none;
    }
	
	/*CART-----------------------------------------*/
	
	/*CART_S1-----------------*/
    .cart .s1{
		background-image:url("../images/cart_s1_mb.jpg");
        height:300px;
    }
	
    .cart .s1 .out{
        padding-top:100px;
		text-shadow:3px 3px 5px rgba(0,0,0,0.2);
    }
	
	/*CART_S2-----------------*/
    .cart .s2{
        padding:30px 0 60px;
    }
	
	/*CART_S2_TAB*/
    .cart .s2 .tab{
        max-width:255px;
    }
	
    .cart .s2 .tab li{
		display:none;
    }
	
	.cart .s2 .tab li.active{
		display:block;
	}
	
	/*CART_S2_FORM*/
    .cart .s2 form{
		display:block;
    }
	
    .cart .s2 .left{
		margin-bottom:20px;
    }
	
	.cart .s2 .left .again{
		display:none;
	}
	
    .cart .s2 .step1 .t1{
        display:block;
    }

    .cart .s2 .step1 .t1 span:first-child{
        min-width:140px;
    }
	
	.cart .s2 .step1 .t1 .ps{
		display:block;
		margin-top:1em;
	}
	
    .cart .step1 .list{
        display:block;
    }
	
    .cart .s2 .step1 .image{
		margin-bottom:15px;
    }
	
    .cart .s2 .right{
		position:static;
		width:auto;
        max-width:370px;
		min-width:0;
		margin:0 auto;
    }
	
	/*CART_S2_STEP2*/
    .cart .step2 .enter{
        max-width:none;
    }
	
	.cart .step2 .enter li{
		width:100%;
	}
	
    .cart .step2 input[type="text"],
	.cart .step2 .ship .select_box,
	.cart .step3 .step2 li div{
        width:calc(100% - 3em);
		box-sizing:border-box;
    }
	
    .cart .step2 .city.nofill:before,
    .cart .step2 .area.nofill:before{
        right:5px;
    }
	
	.cart .step2 .lastno{
		display:block;
	}
	
	.cart .step2 .lastno input[type="text"],
	.cart .step2 .lastno li div{
		display:block;
		margin:2em 0 0;
	}
	
    .cart .step2 .lastno .nofill:before{
        top:auto;
		bottom:47px;
		right:auto;
		left:115px;
    }
	
	.cart .step3 .step2 .lastno li div{
		width:220px;
	}
	
    /*COMMON--------------------------------------------------------------------*/
	article{
		margin-top:60px;
	}
	
    /*HEADER-----------------------------------------*/
	header{
		background:#FFFFFF;
	}
	
	header .out{
		height:60px;
	}
	
    header .logo,
	header.active .logo{
        max-width:200px;
		transition:0s;
    }
	
    header .pc{
		display:none;
    }
	
	/*HEADER_MB_BUTTON-----------------*/
    header .mb_bt,
    header .mb{
        display:block;
    }
	
	header .mb_bt{
		position:absolute;
		top:50%;
		right:20px;
		width:40px;
		height:40px;
		margin-top:-20px;
		text-align:left;
		cursor:pointer;
	}
	
	header .mb_bt span{
		height:2px;
		width:40px;
		position:absolute;
		top:0;
		right:0;
		bottom:0;
		margin:auto;
		background:#49B6B9;
		transition:0.3s;
		display:block;
	}
	
	header .mb_bt span:before,
	header .mb_bt span:after{
		content:"";
		height:2px;
		position:absolute;
		right:0;
		background:#49B6B9;
		transition:0.3s;
	}
	
	header .mb_bt span:before{
		top:-8px;
		width:30px;
	}
	
	header .mb_bt span:after{
		top:8px;
		width:20px;
	}
	
	header .mb_bt:hover span,
	header .mb_bt:hover span:before,
	header .mb_bt:hover span:after{
		width:40px;
	}
	
	header .mb_bt.active span:before{
		width:40px;
		top:0;
		transform:rotate(45deg);
	}
	
	header .mb_bt.active span:after{
		width:40px;
		top:0;
		transform:rotate(-45deg);
	}
	
	header .mb_bt.active:hover span{
		width:40px;
		transform:rotate(-90deg);
	}
	
	header .mb_bt.active span{
		background:none;
	}
	
	/*HEADER_CART-----------------*/
	header .cart{
		position:absolute;
		top:7px;
		right:100px;
		display:block;
		background:#49B6B9;
		font-size:0;
		padding:10px;
		border-radius:50%;
		transition:0.2s;
	}
	
    header .cart span{
		font-size:12px;
		color:#FFFFFF;
		top:-5px;
		right:auto;
		left:35px;
    }
	
    /*HEADER_MENU-----------------*/
	header .mb{
		position:fixed;
		top:60px;
		left:0;
		width:100%;
		overflow-y:auto;
		background:#FFFFFF;
		transform:scaleY(0);
		transform-origin:top;
		transition:0.3s;
		-webkit-overflow-scrolling:touch;
		border-radius:0 0 30px 30px;
		box-shadow:inset 0px 2px 2px rgba(0,0,0,0.1);
	}
	
	header .mb.active{
		transform:scaleY(1);
	}
	
	header .mb .menu{
		padding:40px;
	}
	
	header .mb .menu a{
		font-size:20px;
		padding:1em 0;
		position:relative;
		cursor:pointer;
		border-bottom:#F0E7D8 1px solid;
	}
	
	/*FOOTER-----------------------------------------*/
	
    /*FOOTER_TOP-----------------*/
    footer .out{
        display:block;
    }
	
    footer .top{
        padding:40px 0 1px;
    }
	
	footer .top .out{
		max-width:350px;
	}
	
	footer .top .out > li{
		max-width:none;
		margin-bottom:40px;
	}
	
	footer .top .logo{
		text-align:center;
		margin-bottom:20px !important;
	}
	
    footer .top .logo img{
        width:50%;
    }
	
    footer .top li li:first-child{
        margin-bottom:15px;
    }
	
	/*FOOTER_BM-----------------*/
	footer .bm{
		text-align:center;
	}
	
	footer .bm li:first-child{
		margin-bottom:10px;
	}
}