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

@font-face {
  font-family: jf-openhuninn;
  src: url(jf-openhuninn-1.1.ttf);
}


/**********************************/

*{
	margin:0;
	padding:0;	
	font-family: jf-openhuninn, 'Cabin', sans-serif;
	color: #444444;
}

button:hover{
	cursor: pointer;
}


/*header*/
header{
	width:100%;
	background: rgba(255, 255, 255, 1);
	box-sizing: border-box;
	margin: auto; /*中心置中*/
	
	/*position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 2000;*/
}

.h_box{
	margin: auto;
}

.h_box img{
	float: left;
	padding-top: .5%;
	padding-bottom: .5%;
	padding-left: 3%;
}

.h_box img:hover{
	cursor: pointer;
}


/*nav*/
nav{
	float: left;
	z-index: 10000;
	padding-left: 3%;
}

nav ul{
	list-style: none;
}

nav li{
	position:relative;
	display: inline-block;
	
	width: 15vh;
	margin-top: 15%;
	line-height:2em;
	text-align:center;
}

nav a{
	font-size:18px;
	text-decoration:none;
	color: #444444;
	transition: .5s;
}

nav a:hover{
	color: #F28322;
	cursor: pointer;
}

.shopping{
	position:relative;
	float: right;
	margin: 4% 5% 0% 0%;
}

.shopping img{
	
	padding-right: 10%;
	width: 50px;
}

.nav_box{
	display: none;
	clear: both;
	position:absolute;

	height: 100vh;
	width:95%;
	border-radius: 30px;
  	background-color: #fff;

	margin:2%;
	padding-top: 5%;
	text-align: center;
	
	z-index: 1000;
	
}

.nav_box a{
	text-decoration: none;
	color: #444444;
	line-height: 40px;
	font-size: 18px;
	transition: .5s;
}

.nav_box a:hover{
	color: #F28322;
}

.nav_box_logo img{
	float:left;
	margin: 1%;
}

.exit{
	float: right;
	margin: 5%;
}

.exit img{
	width: 45px;
}

.exit:hover{
	cursor: pointer;
}

.nav_box_shopping img{
	width: 50px;
}

.menu{
	position:absolute;
	right:12%;
	top:8%;
	width:30px;
	height:30px;
	display:block;
	font-size: 35px;
}

.menu img{
	width: 45px;
}

.menu:hover{
	cursor:pointer;
}

/*body*/
body{
	overflow-x: hidden;
}

/*section*/
section{
	width: 80%;
	margin: auto;
}

.box{
	box-sizing: border-box;
	width: 100%;
	background: rgba(255, 255, 255, 1);
	margin: 10% 0px 10%;
	z-index: 10;
	overflow: hidden;	
	
	box-shadow: 2px 2px 8px rgba(173, 181, 189, 1);
	border-radius: 15px;
}

.container{
    margin: 5%;
    color: #444;
    font-size: 18px;
}

.container span{
    color: #959495;
}

label{
	margin-bottom: 3%;
	margin-top: 25%;

	margin-left: 400%;
}

label p{
	margin-left: 10%;

	margin-top: 1%;
	margin-bottom: 2%;
}

label span{
	float: right;
}

.container_cart2 label{
	margin-left:0;
}

.container_cart2{
	padding-bottom: 10%;
}

.item_box{
	box-sizing: border-box;
	width: 100%;
	background: rgba(255, 255, 255, 1);
	margin: 10%;
	z-index: 10;
	overflow: hidden;	
}

.item_header{
    display: flex;
    width: 100%;
    margin: 0 auto;
    height: 30px;
    background-color: #fff;
    border-radius: 3px;
    padding-left: 10px;
}
.item_header div{
    width: 200px;
    line-height: 30px;
	margin-top: -300px;
}
.item_header .item_detail{
    width: 50%;
}
.item_body{
    margin-top: 5%;
    height: 400px;
    align-items: center;    
}
.item_detail img{
	float: left;
    width: 200px;
    height: 150px;
    border-radius: 5px;
	margin-top: 200px;
	margin-left: 20%;
}

.item_detail_cart1 img{
	margin-top: 180%;
	margin-left: 0;
}

.item_detail_name .name{
	font-size: 24px;
	margin-top: 450%;
	margin-left: -100px;
	text-align: center;
}

.item_detail_name_cart1 .name{
	font-size: 24px;
	margin-top: 250%;
	margin-left: -65%;
	text-align: center;
}

.count button, .operate button{
	z-index: 10;/*不加這行的話rwd會點不了button*/
}

.count{
	position: relative;
	display: flex;
	padding-top: 230%;
	left: -80%;
}

.count_cart1{
	position: relative;
	display: flex;
	padding-top: 230%;
	left: -130%;
}

.amount{
	position: relative;
	padding-top: 230%;
	left: -120%;
}

.amount_cart4{
	left: -20%;
}

.operate{
	position: relative;
	display: flex;
	padding-top: 230%;
	left: -110%;
}

.operate button{
	width: 60px;
	height: 50px;
	font-size: 16px;
}

.line1{
	position: relative;
    width: 90%;
    height: 13%;
    border-bottom: 2px solid #959595;
	margin-left: 1%;
	margin-top: 10%;
}

.total_amount h1{
    color: #36D8CF;
    float: right;
    margin-bottom: 5%;
    margin-top: 10%;
    margin-right:8%;
    font-size: 130%;
}

.keep_shopping img{
    width: 50%;
    float: left;
    margin-left: 25%;

    transition: .3s;
	-webkit-transform: scale(1, 1); /*Safari*/ /*x, y*/
	-ms-transform: scale(1, 1); /*IE 9*/
	transform: scale(1, 1); /*Standard Syntax*/
}

.next_step img{
    width: 50%;
    float: left;
    margin-bottom: 5%;
    margin-left: 25%;

    transition: .3s;
	-webkit-transform: scale(1, 1); /*Safari*/ /*x, y*/
	-ms-transform: scale(1, 1); /*IE 9*/
	transform: scale(1, 1); /*Standard Syntax*/
}

.keep_shopping img:hover, .next_step img:hover{
    cursor: pointer;
    -webkit-transform: scale(1.1, 1.1); /*Safari*/ /*x, y*/
	-ms-transform: scale(1.1, 1.1); /*IE 9*/
	transform: scale(1.1, 1.1); /*Standard Syntax*/
}

.progress_bar{
    display: inline-flex;
    margin-top: 8%;
    margin-left: 2%;
    text-align: center;
}

.progress_bar img{
    width: 50%;
}

.thanks_cart3{
	margin-top: 5%;
}

.thanks_cart3 h2{
	color: #36D8CF;
	font-size: 30px;
	text-align: center;
}

.thanks{
	float: left;
	margin-top: 10%;
	margin-left: 20%;
	margin-bottom: 10%;
	text-align: center;
}

.thanks p{
	font-size: 30px;
	color: #959595;
}

.thanks span{
	font-size: 24px;
	color: #959595;
}

/*checkbox*/
:root {
    --form-control-color: #959595;
    --form-control-disabled: #959495;
  }
  
  *,
*:before,
*:after {
    box-sizing: border-box;
}
  
form {
    display: grid;
    place-content: center;
    min-height: 100vh;
}
  
.form-control {
    /*font-size: 2rem;
    font-weight: bold;*/
    line-height: 1.1;
    display: grid;
    grid-template-columns: 1em auto;
    gap: 0.5em;
  }
  
.form-control + .form-control {
    /*margin-top: 1em;*/
}
  
.form-control--disabled {
    color: var(--form-control-disabled);
    cursor: not-allowed;
}
  
input[type="checkbox"] {
    /* Add if not using autoprefixer */
    -webkit-appearance: none;
    /* Remove most all native input styles */
    appearance: none;
    /* For iOS < 15 */
    background-color: var(--form-background);
    /* Not removed via appearance */
    margin: 0;
  
    font: inherit;
    color: currentColor;
    width:1.5em;
    height: 1.5em;
    border: 0.15em solid currentColor;
    border-radius: 50%;
    transform: translateY(-0.075em);
  
    display: grid;
    place-content: center;
}
  
input[type="checkbox"]::before {
    content: "";
    width: 0.65em;
    height: 0.65em;
    clip-path: circle();
    transform: scale(0);
    transition: 120ms transform ease-in-out;
    box-shadow: inset 1em 1em var(--form-control-color);
}
  
input[type="checkbox"]:checked::before {
    transform: scale(2);
}
input[type="checkbox"]:disabled {
    --form-control-color: var(--form-control-disabled);
  
    color: var(--form-control-disabled);
    cursor: not-allowed;
}

.container_cart3 p{
	margin:3%;

	margin-top: 10%;
	margin-bottom: 10%;
	font-size: 16px;
}

.line3{
    width: 95%;
    height: 13%;
    border-bottom: 2px solid #959595;
    position: relative;
	margin-left: 3%;
}

.container_cart3 span{
	float: right;
	font-size: 16px;
	color: #959595;
}


/*footer*/
footer{
	clear: both; /*避免中間有奇怪的格式沒有清除*/
	padding: 30px 0px 0px 20px;
	text-align: center;
	background-color: #444444;
	color: #fff;
	font-size: 20px;
}

footer p{
	color: #fff;
}

footer a{
	padding: 0;
	text-decoration: none;
	color: #fff;
	font-size: 16px;
	font-family: jf-openhuninn, 'Cabin', sans-serif;
	line-height: 2em;
	transition: .3s;
}

footer a:hover{
	color: #F28322;
}

footer img{
	width: 180px;
}

.social img{
	width: 20%;
}

.social_phone img{
	width: 15%;
}

.social a{
	display: inline;
}

.social img:hover, .social_phone img:hover{
	transform: rotate(360deg);
	transition: transform 0.35s;
	-webkit-transition: transform 0.35s;
	
	transition-timing-function: ease-in-out;/*開始為慢速 結束為慢速*/
	-webkit-transition-timing-function: ease-in-out;/* Safari */
}
.pc{
    display: none;
}


/*for tablets*/
@media only screen and (min-width: 768px) {
	
	
}

/*for desktops*/
@media only screen and (min-width: 1200px) {
	.pc{
		display: block;
	}

	.phone{
		display: none;
	}
	
	.social img{
		padding-top: 150px;
	}

	.container{
		margin: 5%;
		color: #444;
		font-size: 20px;
	}

	.container span{
		color: #959495;
	}

	.container_cart2{
		padding-bottom: 0;
	}
	
	label{
		margin-bottom: 3%;
		margin-left: 0;
	
		margin-top: 0;
	}
	
	label p{
		margin-left: 10%;
	
		margin-top: 0;
		margin-bottom: 0;
	}
	
	label span{
		float: right;
	}
	
	.item_box{
		box-sizing: border-box;
		width: 100%;
		background: rgba(255, 255, 255, 1);
		margin: 10%;
		z-index: 10;
		overflow: hidden;	
	}
	
	.item_header{
		display: flex;
		width: 100%;
		margin: 0 auto;
		height: 30px;
		background-color: #fff;
		border-radius: 3px;
		padding-left: 10px;
	}
	.item_header div{
		width: 200px;
		line-height: 30px;
		margin-top: 0;
	}
	.item_header .item_detail{
		width: 50%;
	}
	.item_body{
		margin-top: 5%;
		height: 100px;
		align-items: center;    
	}
	.item_detail img{
		width: 200px;
		height: 130px;
		border-radius: 5px;
		margin-top: 0;
		float: left;

		margin-left: -10%;
	}

	.item_detail_cart4 img{
		margin-left: 10%;
	}
	.item_detail_name .name{
   		margin-top: 0;
	}

	.count{
		position: relative;
		padding-top: 0;
		left: -10%;
	}

	.count_cart4{
		margin-left: 30%;
		margin-right: -10%;
	}

	.price{
		margin-left: 10%;
		margin-right: -10%;
	}

	.amount{
		padding-top: 0;
		left: 0;
	}

	.amount_cart4{
		left:0;
	}
	

	.operate{
		padding-top: 0;
		left: 0;
	}
	
	.line1{
		float: left;
		width:95%;
		height: 13%;
		border-bottom: 2px solid #959595;
		margin-left: 1%;
		margin-top: 10%;
	}
	
	.total_amount h1{
		color: #36D8CF;
		float: right;
		margin-bottom: 5%;
		margin-top: 8%;
		margin-right:5%;
		font-size: 180%;
	}
	
	.keep_shopping img{
		width: 15%;
		float: left;
		margin-bottom: 5%;
		margin-left: 10%;
	
		transition: .3s;
		-webkit-transform: scale(1, 1); /*Safari*/ /*x, y*/
		-ms-transform: scale(1, 1); /*IE 9*/
		transform: scale(1, 1); /*Standard Syntax*/
	}
	
	.next_step img{
		width: 15%;
		float: right;
		margin-bottom: 5%;
		margin-right: 10%;
	
		transition: .3s;
		-webkit-transform: scale(1, 1); /*Safari*/ /*x, y*/
		-ms-transform: scale(1, 1); /*IE 9*/
		transform: scale(1, 1); /*Standard Syntax*/
	}
	
	.keep_shopping img:hover, .next_step img:hover{
		cursor: pointer;
		-webkit-transform: scale(1.1, 1.1); /*Safari*/ /*x, y*/
		-ms-transform: scale(1.1, 1.1); /*IE 9*/
		transform: scale(1.1, 1.1); /*Standard Syntax*/
	}
	
	.progress_bar{
		display: inline-flex;
		margin-top: 8%;
		margin-left: 12%;
		text-align: center;
	}
	
	.progress_bar img{
		width: 30%;
	}
	
	.thanks{
		float: left;
		margin-top: 5%;
		margin-left: 45%;
		margin-bottom: 5%;
		text-align: center;
	}
	
	.thanks p{
		font-size: 40px;
		color: #959595;
	}
	
	.thanks span{
		font-size: 28px;
		color: #959595;
	}
	
	/*checkbox*/
	:root {
		--form-control-color: #959595;
		--form-control-disabled: #959495;
	  }
	  
	  *,
	*:before,
	*:after {
		box-sizing: border-box;
	}
	  
	form {
		display: grid;
		place-content: center;
		min-height: 100vh;
	}
	  
	.form-control {
		/*font-size: 2rem;
		font-weight: bold;*/
		line-height: 1.1;
		display: grid;
		grid-template-columns: 1em auto;
		gap: 0.5em;
	  }
	  
	.form-control + .form-control {
		margin-top: 1em;
	}
	  
	.form-control--disabled {
		color: var(--form-control-disabled);
		cursor: not-allowed;
	}
	  
	input[type="checkbox"] {
		/* Add if not using autoprefixer */
		-webkit-appearance: none;
		/* Remove most all native input styles */
		appearance: none;
		/* For iOS < 15 */
		background-color: var(--form-background);
		/* Not removed via appearance */
		margin: 0;
	  
		font: inherit;
		color: currentColor;
		width:1.5em;
		height: 1.5em;
		border: 0.15em solid currentColor;
		border-radius: 50%;
		transform: translateY(-0.075em);
	  
		display: grid;
		place-content: center;
	}
	  
	input[type="checkbox"]::before {
		content: "";
		width: 0.65em;
		height: 0.65em;
		clip-path: circle();
		transform: scale(0);
		transition: 120ms transform ease-in-out;
		box-shadow: inset 1em 1em var(--form-control-color);
	}
	  
	input[type="checkbox"]:checked::before {
		transform: scale(2);
	}
	input[type="checkbox"]:disabled {
		--form-control-color: var(--form-control-disabled);
	  
		color: var(--form-control-disabled);
		cursor: not-allowed;
	}
	
	.container_cart3 p{
		margin:3%;

		margin-top: 3%;
		margin-bottom: 3%;
		font-size: 20px;
	}
	
	.line3{
		width: 95%;
		height: 13%;
		border-bottom: 2px solid #959595;
		position: relative;
		margin-left: 3%;
	}
	
	.container_cart3 span{
		float: right;
		font-size: 16px;
		color: #959595;
	}	
}