body{
	background-color: #FFEFEB;
}
body::before{
	content:"";
	display:block;
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	background-repeat:no-repeat;
	background-image:url(../images/case_bg.png);
	background-position:center top;
	background-size:100% auto;
	pointer-events:none;
}


.sec1{
	padding: 17.6% 0 3.23%;
	color: #fff;
	background: linear-gradient(to bottom, #FF3129 20% ,#FFEFEB);
}
.sec1 .text-box{
	margin-bottom: 7.75em;
}
.sec1 h1{
	font-size: 3.75em;
	line-height: 1.33;
	margin-bottom: 0.35em;
}
.sec1 p{
	font-size: 1.125em;
	line-height: 1.55;
}
.sec1 .case-nav{
	background-color: #fff;
	border-radius: 0.9375em;
	padding: 0.5em;
	display: flex;
	align-items: center;
}
.sec1 .case-nav a{
	font-size: 1.125em;
	color: #4E545A;
	border-radius: 0.833em;
	transition: background-color 0.5s,color 0.5s;
	display: block;
	padding: 1.333em;
	margin-right: 0.44em;
	cursor:pointer;
}
.sec1 .case-nav a:last-child{
	margin-right: 0;
}
.sec1 .case-nav a.active{
	color: #fff;
	background-color: var(--theme-color);
}
.sec1 .text-box,.sec1 .case-nav{
	transform: translate(0,20vh);
	opacity: 0;
	transition: transform 0.75s,opacity 0.75s;
}
.sec1 .case-nav{
	transition-delay: 0.375s;
}
.sec1.actived .text-box,.sec1.actived .case-nav{
	transform: translate(0,0);
	opacity: 1;
}
.sec1 .case-nav .typebtn{
	width:3.125em;
	height:3.125em;
	border-radius:0.25em;
	fill:#000;
	background-color:var(--theme-color);
	cursor:pointer;
	display:flex;
	align-items:center;
	justify-content:center;
	margin-right:1em;
	flex-shrink:0;
}
.sec1 .case-nav .typebtn.image{
	margin-left:auto;
}
.sec1 .case-nav .typebtn.active{
	fill:#fff;
}
.sec1 .case-nav .typebtn svg{
	width:1.5em;
	transition:fill 0.3s;
}


.sec2{
	padding: 3.23% 0 10%;
	overflow:visible;
}
.sec2 .content{
	display: flex;
	align-items: stretch;
	justify-content: space-between;
	flex-direction: row;
	flex-wrap: wrap;
}
.sec2 .content::after{
	content: "";
	display: block;
	width: 30%;
}
.sec2 .content a{
	width: 30%;
	margin-bottom: 9.3%;
	transform: translateY(20vh);
	opacity: 0;
	transition: transform 0.75s,opacity 0.75s;
	position: relative;
	display: block;
}
.sec2 .content a.actived{
	transform: translateY(0);
	opacity: 1;
}
.sec2 .content a .img-box{
	overflow: hidden;
	position: relative;
	margin-bottom: 1.75em;
	border-radius: 0.625em;
}
.sec2 .content a .img-box::before{
	display: block;
	content: "";
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.7);
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	opacity: 0;
	transition: opacity 0.5s;
}
.sec2 .content a .img-box img{
	transition: transform 0.75s;
}
.sec2 .content a h4{
	line-height: 1.333;
	font-size: 1.5em;
	position: absolute;
	right: 1em;
	left: 1em;
	bottom: 1.5em;
	color: #fff;
	z-index: 2;
	transform: translateY(20vh);
	opacity: 0;
	transition: transform 0.75s,opacity 0.75s;
}
.sec2 .content .img-box h4{
	white-space: pre-wrap;
}
.sec2 .content .text-box h4{
	transform: translateY(0);
	opacity: 1;
	position: static;
	display: none;
	color: #666;
}
.sec2 .content a h5{
	font-size: 1.25em;
	color: #000;
	margin-right: 1em;
	display: inline-block;
	vertical-align: bottom;
}
.sec2 .content a p{
	font-style: 0.875em;
	color: #838383;
	margin-right: 1em;
	display: inline-block;
	vertical-align: bottom;
}
.sec2 .content a h5:last-child,.sec2 .content a p:last-child{
	margin-right: 0;
}

.sec2 .content a.list{
	width: 100%;
	margin-bottom: 0;
	position:relative;
	padding:3.125em 0;
	border-bottom:1px solid #ccc;
}
.sec2 .content a.list:last-child{
	margin-bottom:5%;
}
.sec2 .content a.list .img-box{
	position: absolute;
	right:0;
	top:50%;
	margin-bottom: 0;
	width:20em;
	opacity:0;
	transition:opacity 0.3s;
	transform:translateY(-50%);
}
.sec2 .content a.list .img-box::before{
	display: none;
}
.sec2 .content a.list h4{
	display:none;
}
.sec2 .content a.list h5{
	font-size: 1.25em;
	color: #999;
	margin-right: 2em;
	display: inline-block;
	vertical-align: middle;
}
.sec2 .content a.list h5 b{
	font-size:2em;
	color:#000;
	font-weight:bold;
	margin-right:0.5em;
}
.sec2 .content a.list p{
	font-size: 1em;
	color: #fff;
	margin-right: 1.125em;
	display: inline-flex;
	align-items:center;
	vertical-align: text-top;
	padding:0 1.8575em;
	height:2.5em;
	border-radius:1.25em;
	background-color:var(--theme-color);
}

@media only screen and (min-width:1025px){
	.sec1 .case-nav a:hover{
		color: #fff;
		background-color: var(--theme-color);
	}
	.sec2 .content a:hover .img-box::before{
		opacity: 1;
	}
	.sec2 .content a:not(.list):hover .img-box img{
		transform: scale(1.1);
	}
	.sec2 .content a:hover h4{
		transform: translateY(0);
		opacity: 1;
	}
	.sec2 .content a:hover h5{
		color: var(--theme-color);
	}
	.sec2 .content a:not(.list):nth-child(3n-1){
		transition-delay: 0.25s;
	}
	.sec2 .content a:not(.list):nth-child(3n){
		transition-delay: 0.5s;	
	}
	.sec1 .case-nav .typebtn:hover{
		fill:#fff;
	}
	.sec2 .content a.list:hover{
		z-index:1;
	}
	.sec2 .content a.list:hover .img-box{
		opacity: 1;
	}
	.sec2 .content a.list:hover h5 b{
		color:inherit;
	}
}


@media only screen and (max-width:1024px){
	.sec1{
		padding: 30% 0 7.5%;
	}
	.sec1 .text-box{
		margin-bottom: 7.75em;
	}
	.sec1 h1{
		font-size: 2.4em;
	}
	.sec1 p{
		font-size: 1.2em;
	}
	.sec1 .case-nav{
		overflow-x: auto;
		background-color: transparent;
		padding-left: 0;
		padding-right: 0;
	}
	.sec1 .case-nav a{
		flex-shrink: 0;
	}


	.sec2{
		padding: 7.5% 0 15%;
	}
	.sec2 .content{
		display: block;
	}
	.sec2 .content::after{
		display: none;
	}
	.sec2 .content a{
		width: 100%;
		margin-bottom: 10%;
	}
	.sec2 .content .text-box h4{
		display: block;
		font-size: 1.3em;
		margin-top: 1em;
	}
	.sec2 .content a h5{
		font-size: 1.5em;
	}
	.sec2 .content a p{
		font-size: 1.2em;
	}



	.sec2 .content a.list{
		padding:2.5em 0;
	}
	.sec2 .content a.list:last-child{
		margin-bottom:10%;
	}
	.sec2 .content a.list .img-box{
		display:none;
	}
	.sec2 .content a.list h5{
		margin-right: 0;
		display: block;
		margin-bottom:0.5em;
	}
}