.photo {
	display:flex;
	flex-wrap:wrap;
	width:100%;
}

.photo a {
	display:flex;
	flex-direction:column;
	width:23%;
	margin-right:2.66666%;
	border:2px solid var(--cg1);
	transition:all .5s;
}

.photo a:hover {
	border:2px solid var(--theme-basic);
	box-shadow:5px 5px 10px var(--cg3);
}

.photo a:nth-child(4n) {
	margin-right:0;
}

.photo a:nth-child(n + 5) {
	margin-top:30px;
}

.photo a .imagebox {
	position:relative;
	display:block;
	width:100%;
	height:auto;
	padding-top:70%;
	overflow:hidden;
}

.photo a .imagebox img {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	object-fit:contain;
	transition:all .5s;
}

.photo a:hover .imagebox img {
	transform:scale(1.2);
}

.photo a p {
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	height:120px;
	padding:20px 10px 10px;
	border-top:2px solid var(--cg1);
	transition:all .5s;
}

.photo a:hover p {
	border-top:2px solid var(--theme-red);
}

.photo a p .photo__title strong {
	position:relative;
	display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    width:100%;
    font-size:18px;
	font-weight:500;
}

.photo a p .photo__title .photo__line {
	display:block;
	width:40px;
	height:5px;
	background-color:var(--theme-basic);
	margin-top:10px;
	transition:all .5s;
}

.photo a:hover p .photo__title .photo__line {
	width:100%;
	background-color:var(--cg2);
}

.photo a p .photo__date {
	font-size:15px;
	font-weight:500;
	color:var(--cg5);
}

/* 반응형 */
@media screen and (max-width:1350px) {}

@media screen and (max-width:1025px) {
	.photo a {
		width:32%;
		margin-right:2%;
	}
	
	.photo a:nth-child(4n) {
		margin-right:2%;
	}
	
	.photo a:nth-child(3n) {
		margin-right:0;
	}
	
	.photo a:nth-child(n + 4) {
		margin-top:30px;
	}
}

@media screen and (max-width:769px) {
	.photo a {
		width:100%;
		margin-right:0;
	}
	
	.photo a:nth-child(4n) {
		margin-right:0;
	}
	
	.photo a:nth-child(3n) {
		margin-right:0;
	}
	
	.photo a:nth-child(n + 2) {
		margin-top:30px;
	}
}



















