body{
	background-color:#E9F4FF;
}


.sec1{
	padding:6.7% 0 3%;
}
.sec1 li{
	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:51.6%;
	display:flex;
	align-items:flex-start;
	justify-content:space-between;
	flex-direction:column;
	padding:3.7% 3.1%;
	margin-right:1.5%;
}
.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.125em;
	line-height: 1.67;
	letter-spacing: -0.02em;
	text-overflow: ellipsis;
	overflow: hidden;
	-webkit-line-clamp: 2;
	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:46.9%;
	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%;
}




.sec2{
	padding:3% 0 11.4%;
}
.sec2 .list{
	display:flex;
	align-items:stretch;
	justify-content:space-between;
	flex-direction:row;
	flex-wrap:wrap;
	margin-bottom:0.8%;
}
.sec2 .list::after{
	content:"";
	display:block;
	width:31.056%;
}
.sec2 .list li{
	display:block;
	width:31.056%;
	margin-bottom:4.1%;
}
.sec2 .list a{
	background-color:#fff;
	border-radius:0.75em;
	display:block;
	height:100%;
	transition:box-shadow 0.5s,transform 0.5s;
}
.sec2 .list .img-box{
	border-radius:0.75em;
	overflow:hidden;
}
.sec2 .list .text-box{
	color:#333;
	padding:7.36% 6.624% 6%;
}
.sec2 .list h3{
	font-size:1.375em;
	line-height:1.32;
	font-weight:normal;
	min-height:2.64em;
	text-overflow: ellipsis;
	overflow: hidden;
	-webkit-line-clamp: 2;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	margin-bottom:0.6em;
}
.sec2 .list h5{
	text-overflow: ellipsis;
	overflow: hidden;
	-webkit-line-clamp: 2;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	font-weight:normal;
	line-height:1.875;
	min-height:3.75em;
	margin-bottom:1.6875em;
}
.sec2 .list p{
	line-height:1.625;
	color:#666;
	
}



@media only screen and (min-width:1025px){
	.sec1 .text-box a:hover{
		color:var(--theme-blue);
		background-color:#fff;
	}
	.sec2 .list li:nth-child(3n - 1){
		transition-delay:0.2s,0.2s;
	}
	.sec2 .list li:nth-child(3n){
		transition-delay:0.4s,0.4s;
	}
	.sec2 .list a:hover{
		box-shadow:0 0 1em rgba(0,0,0,0.5);
		transform:scale(1.05);
	}
}
@media only screen and (max-width:1024px){
	.sec1{
		padding:15% 0 5%;
	}
	.sec1 li{
		display:block;
	}
	.sec1 .text-box{
		width:100%;
		padding:10% 5%;
		margin-right:0;
	}
	.sec1 .text-box a{
		margin-top: 1em;
	}
	.sec1 .img-box{
		width:100%;
	}



	.sec2{
		padding:5% 0 25%;
	}
	.sec2 .list{
		display:block;
	}
	.sec2 .list::after{
		display:none;
	}
	.sec2 .list li{
		width:100%;
		margin-bottom:10%;
	}
	.sec2 .list h3{
		font-size:2em;
	}
	.sec2 .list h5{
		font-size:1.125em;
	}
	.sec2 .list p{
		font-size:1.125em;
	}
}



.pager li{
  background-color:#fff;
}
.pager li:first-child, .pager li:last-child{
  background-color:#E9F4FF;
}
@media only screen and (min-width:1025px){
  .pager li:first-child:hover, .pager li:last-child:hover{
    background-color:unset;
    color:inherit;
  }
}