
@import url("https://fonts.googleapis.com/css?family=Poppins:wght@300&display=swap");

/* reset --------------- */

@import url("https://fonts.googleapis.com/css?family=Poppins&display=swap");
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; }
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, img { display: block; }
ol, ul { list-style: none; }
blockquote, q { quotes: none; }
blockquote:before, blockquote:after { content: ""; content: none; }
q:before, q:after { content: ""; content: none; }
table { border-collapse: collapse; border-spacing: 0; }
:focus { outline: none; }
img { -moz-user-select: -moz-none; -ms-user-select: none; -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; }



/* style ---------------- */

body {
  font-family: 'Poppins','微軟正黑體', 'Microsoft JhengHei', Helvetica, sans-serif;
  font-size: 0.85em;
  letter-spacing: 0.1em;
  color: #333;
  background-color: #fbfbfb;
}

a {
  text-decoration: none;
  color: #333;
}

::selection {
  color: #fff;
  background: #c3bcb3;
}

::-moz-selection {
  color: #fff;
  background: #c3bcb3;
}

.wrapper {
  overflow: hidden;
}

.inner{
	width: 90%;
	max-width: 1100px;
	margin: auto;
}




/* kv ------------------- */

.kv{
	position: relative;
	width: 100vw;
	height: calc(100vw * 1150 / 1920);
	background-image: url(../images/kv_bg.jpg);
	background-position: center;
	background-size: cover;
	overflow: hidden;
}

.kv_top{
	width: 100%;
	position: absolute;
	top: 8%;
	left: 0;
}

.kv_logo{
	width: 10%;
	margin: auto;
}

.kv_slogn{
	width: 50%;
	margin: -3% auto 0;
}

.kv_text{
	text-align: center;
	font-size: 1.2em;
	margin: 10px 0 20px;
}

.kv_bt{
	display: block;
	width: 80px;
	font-size: 1.2em;
	text-align: center;
	color: #fff;
	background-color: #362e2b;
	-moz-transition: background .3s;
	-o-transition: background .3s;
	-webkit-transition: background .3s;
	transition: background .3s;
	padding: 5px 10px;
	margin: auto;
}

.kv_bt:hover{
	background-color: #cfc2ae;
}

.kv_box{
	width: 90%;
	position: absolute;
	left: 50%;
	bottom: -20px;
	display: flex;
	align-items: center;
	justify-content: center;
	-webkit-transform: translate(-50%, 0);
	-moz-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	-o-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	margin: auto;
}

.kv_c1,
.kv_c3{
	width: 32%;
}

.kv_c2{
	width: 36%;
}




/* design ------------------ */

.design{
	background-color: #615446;
	padding: 100px 0;
}

.design_inner{
	width: 95%;
	margin-left: calc((100vw - 1100px) / 2);
}

.design_box{
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}

.design_text{
	width: 40%;
	color: #fff;
	margin-right: 5%;
}

.design_pic{
	width: 60%;
	padding-right: 100px;
}

.design_list img{
	width: 100%;
}

.design_title{
	font-size: 2em;
	font-weight: 600;
}

.design_textin{
	font-size: 1.2em;
	margin: 40px 0 50px;
}

.design_bt{
	position: relative;
	width: 50px;
	height: 50px;
	background-color: #362e2b;
	border-top-left-radius: 10px;
	border-bottom-right-radius: 10px;
	-moz-transition: background .3s;
	-o-transition: background .3s;
	-webkit-transition: background .3s;
	transition: background .3s;
}

.design_bt:before{
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 50px;
	height: 1px;
	background-color: #fff;
	-moz-transition: width .3s;
	-o-transition: width .3s;
	-webkit-transition: width .3s;
	transition: width .3s;

}

.design_bt:after{
	content: '';
	position: absolute;
	top: 50%;
	right: -50%;
	width: 10px;
	height: 1px;
	background-color: #fff;
	transform-origin: top right;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-moz-transition: right .3s;
	-o-transition: right .3s;
	-webkit-transition: right .3s;
	transition: right .3s;
}

.design_bt:hover{
	background-color: #cfc2ae;
}

.design_bt:hover.design_bt:before{
	width: 60px;
}

.design_bt:hover.design_bt:after{
	right: calc(-50% - 10px);
}

/* info ------------------ */

.info{
	height: calc(100vw * 1080 / 1920);
	position: relative;
	background-color: #fff;
	background-image: url(../images/info_bg.jpg);
	background-size: cover;
	background-position: center;
}



.info_box{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 18%;
}

.info_list{
	width: 28%;
	font-size: 1.5em;
	color: #362e2b;
	font-weight: 600;
}

.info_square{
	width: 230px;
	height: 230px;
	text-align: center;
	background-color: #cfc2ae;
	border-top-left-radius: 20px;
	border-bottom-right-radius: 20px;
	box-sizing: border-box;
	padding: 30px 0;
	margin: auto;
}

.info_list img{
	width: 35%;
	margin: auto;
}

.info_itext{
	font-size: 1em;
	color: #362e2b;
	margin-top: 20px;
}

.info_bottom{
	color: #fff;
	font-weight: 500;
	text-align: center;
	margin-top: 30px;
}

/* end ------------------ */

.end{
	position: relative;
	height: calc(100vw * 1080 / 1920);
	position: relative;
	background-image: url(../images/end_bg.jpg);
	background-size: cover;
	background-position: right;
}

.end_box{
	position: absolute;
	top: 25%;
	right: 15%;
}

.end_title p{
	font-size: 2.4em;
	color: #362e2b;
	font-weight: 600;
	text-align: center;
}

.end_x{
	position: relative;
	width: 40px;
	height: 40px;
	margin: auto;
}

.end_x:before,
.end_x:after{
	content:'';
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #362e2b;
}

.end_x:before{
	transform-origin: center;
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.end_x:after{
	transform-origin: center;
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.end_text{
	font-size: 1.2em;
	text-align: center;
	margin-top: 20px;
}

/* animation ------------------ */


.kv_logo{
	opacity: 0;
	-moz-transform: translateY(-50px);
	-ms-transform: translateY(-50px);
	-webkit-transform: translateY(-50px);
	transform: translateY(-50px);
	-moz-transition: -moz-transform 1s, opacity 0.5s;
	-o-transition: -o-transform 1s, opacity 0.5s;
	-webkit-transition: -webkit-transform 1s, opacity 0.5s;
	transition: transform 1s, opacity 0.5s;
}
.kv_logo.show{
	opacity: 1;
	-moz-transform: translateY(0px);
	-ms-transform: translateY(0px);
	-webkit-transform: translateY(0px);
	transform: translateY(0px);
}

.kv_slogn {
	opacity: 0;
	-moz-transition: opacity 0.8s .5s;
	-o-transition: opacity 0.8s .5s;
	-webkit-transition: opacity 0.8s .5s;
	transition: opacity 0.8s .5s;
}
.kv_slogn.show {
	opacity: 1;
}

.kv_text {
	opacity: 0;
	-moz-transition: opacity 0.8s 1s;
	-o-transition: opacity 0.8s 1s;
	-webkit-transition: opacity 0.8s 1s;
	transition: opacity 0.8s 1s;
}
.kv_text.show {
	opacity: 1;
}

.kv_bt {
	opacity: 0;
	-moz-transition: opacity 0.8s 1.3s;
	-o-transition: opacity 0.8s 1.3s;
	-webkit-transition: opacity 0.8s 1.3s;
	transition: opacity 0.8s 1.3s;
}
.kv_bt.show {
	opacity: 1;
}

.kv_c1,
.kv_c2,
.kv_c3{
	opacity: 0;
	-moz-transform: translateY(50px);
	-ms-transform: translateY(50px);
	-webkit-transform: translateY(50px);
	transform: translateY(50px);
	-moz-transition: -moz-transform 1s, opacity 0.5s;
	-o-transition: -o-transform 1s, opacity 0.5s;
	-webkit-transition: -webkit-transform 1s, opacity 0.5s;
	transition: transform 1s, opacity 0.5s;
}
.kv_c1.show,
.kv_c2.show,
.kv_c3.show{
	opacity: 1;
	-moz-transform: translateY(0px);
	-ms-transform: translateY(0px);
	-webkit-transform: translateY(0px);
	transform: translateY(0px);
}

.kv_c2{
	-moz-transition-delay: 2s;
	-o-transition-delay: 2s;
	-webkit-transition-delay: 2s;
	transition-delay: 2s;
}

.kv_c1,
.kv_c3{
	-moz-transition-delay: 2.2s;
	-o-transition-delay: 2.2s;
	-webkit-transition-delay: 2.2s;
	transition-delay: 2.2s;
}



.mp {
	opacity: 0;
	-moz-transition: opacity 0.3s;
	-o-transition: opacity 0.3s;
	-webkit-transition: opacity 0.3s;
	transition: opacity 0.3s;
	-moz-transition-delay: 0.5s;
	-o-transition-delay: 0.5s;
	-webkit-transition-delay: 0.5s;
	transition-delay: 0.5s;
}
.mp.show {
	opacity: 1;
}

.mtp {
	opacity: 0;
	-moz-transform: translateY(50px);
	-ms-transform: translateY(50px);
	-webkit-transform: translateY(50px);
	transform: translateY(50px);
	-moz-transition: -moz-transform 0.5s, opacity 0.5s;
	-o-transition: -o-transform 0.5s, opacity 0.5s;
	-webkit-transition: -webkit-transform 0.5s, opacity 0.5s;
	transition: transform 0.5s, opacity 0.5s;
}
.mtp.show {
	opacity: 1;
	-moz-transform: translateY(0px);
	-ms-transform: translateY(0px);
	-webkit-transform: translateY(0px);
	transform: translateY(0px);
}



@media screen and (max-width: 1200px) {
	.info_square{
		width: 180px;
		height: 180px;
		padding: 30px 0;
		margin: auto;
	}
	
	.info_list{
		font-size: 1.2em;
	}
	
	.info_list img{
		width: 28%;
		margin: auto;
	}
	
	.info_itext{
		font-size: 1em;
		color: #362e2b;
		margin-top: 20px;
	}
}
	



@media screen and (max-width: 1100px) {
	.design_inner{
		width: 90%;
		margin-left: 5%;
	}
	
	.end_box{
		top: 20%;
		right: 12%;
	}
}


@media screen and (max-width: 768px) {
	.kv{
		height: calc(100vw * 1500 / 1920);
		background-image: url(../images/kv_768.jpg);
	}

	.kv_logo{
		width: 15%;
	}

	.kv_slogn{
		width: 60%;
	}

	.design{
		padding: 50px 0;
	}

	.design_inner{
		width: 100%;
		margin: 0;
	}


	.design_box{
		display: block;
	}

	.design_text{
		width: 90%;
		margin: 0 5% 30px;
	}

	.design_textin{
		margin: 20px 0 30px;
	}

	.design_pic{
		width: 100%;
		box-sizing: border-box;
		margin-left: 5%;
	}

	.info{
		height: unset;
	}

	.info_box{
		display: block;
		padding: 50px 0 20px;
	}

	.info_list{
		width: 100%;
		margin-bottom: 30px;
	}

	.end{
		height: calc(100vw * 4 / 3);
		background-image: url(../images/end_43.jpg);
	}

	.end_box{
		top: 55%;
		left: 0;
		right: 0;

	}



}

@media screen and (max-width: 576px) {
	.kv{
		height: calc(100vw * 4 / 3);
		background-image: url(../images/kv_43.jpg);
	}

	.kv_logo{
		width: 20%;
	}

	.kv_slogn{
		width: 70%;
	}

	.kv_c1,
	.kv_c3{
		display: none;
	}

	.kv_c2{
		width: 100%;
	}
	
	
	.end_x{
		width: 25px;
		height: 25px;
	}

}


@media screen and (max-width: 460px) {
	.end_box{
		top: 52%;

	}
	
	.end_title p{
		font-size: 1.8em;	
	}
}

