body{
	background-color:#E9F4FF;
}


.sec1{
	padding:8% 0 11.71875%;
}
.sec1 li{
	margin-bottom:6.2%;
	display:flex;
	align-items:stretch;
	justify-content:flex-start;
	flex-direction:row;
	background-color:#fff;
	border-radius:0.75em;
	overflow:hidden;
}
.sec1 .text-box{
	width:60.975%;
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	flex-direction:column;
	padding:3.1%;
	margin-right:3%;
}
.sec1 .text-box h4{
	font-weight: normal;
	font-size: 2em;
	line-height: 1.3125;
	letter-spacing: -0.02em;
	margin-bottom:0.5em;
	text-overflow: ellipsis;
	overflow: hidden;
	-webkit-line-clamp: 2;
	display: -webkit-box;
	-webkit-box-orient: vertical;
}
.sec1 .text-box p{
	font-size:1.125em;
	color:#999;
	line-height: 1.22;
	margin-bottom:2em;
}
.sec1 .text-box h5{
	font-weight: normal;
	font-size: 1.125;
	line-height: 1.67;
	letter-spacing: -0.02em;
	text-overflow: ellipsis;
	overflow: hidden;
	-webkit-line-clamp: 3;
	display: -webkit-box;
	-webkit-box-orient: vertical;
}
.sec1 .text-box a{
	color:#fff;
	background-color:var(--theme-blue);
	width:12em;
	height:3.25em;
	line-height:calc(3.25em - 2px);
	border:1px solid var(--theme-blue);
	text-align:center;
	border-radius:1.625em;
	transition:color 0.3s,background-color 0.3s;
}
.sec1 .img-box{
	width:36.025%;
	position:relative;
	border-radius:0.75em;
	overflow:hidden;
}
.sec1 .img-box .link-btn{
	position:absolute;
	right:0;
	bottom:0;
	padding-left:0.5625em;
	padding-top:0.5625em;
	background-color:#E9F4FF;
	border-top-left-radius:0.75em;
}
.sec1 .img-box .link-btn::before,.sec1 .img-box .link-btn::after{
	background-repeat:no-repeat;
	background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 1024 1024' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1024 1024H0A1024 1024 0 0 0 1024 0v1024z' fill='%23E9F4FF'/%3E%3C/svg%3E");
	background-size:contain;
	position:absolute;
	width:0.75em;
	height:0.75em;
	content:"";
	display:block;
}
.sec1 .img-box .link-btn::before{
	right:0;
	bottom:100%;
}
.sec1 .img-box .link-btn::after{
	right:100%;
	bottom:0;
}
.sec1 .img-box a{
	width:4.25em;
	height:4.25em;
	border-radius:0.75em;
	background-color:#000;
	text-align:center;
	line-height:4.25;
	display:block;
}
.sec1 .img-box a svg{
	width:10.3%;
}
@media only screen and (min-width:1025px){
	.sec1 .text-box a:hover{
		color:var(--theme-blue);
		background-color:#fff;
	}
}
@media only screen and (max-width:1024px){

	.sec1{
		padding:15% 0 20%;
	}
	.sec1 li{
		margin-bottom:10%;
		display:block;
	}
	.sec1 .text-box{
		width:100%;
		padding:5%;
		margin-right:0;
		margin-bottom: 5%;
		margin-top: 5%;
	}
	.sec1 .text-box a{
		margin-top: 1em;
	}
	.sec1 .img-box{
		width:100%;
	}
}