/* =========================
   汎用の画像クラス: .c-image-group--2, .c-image-group--3
   ========================= */
.c-image-group--2 {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 20px;
}

.c-image-group--2 img {
    padding: 10px;
    width: calc(50% - 40px);
    max-width: 100%;
    height: auto;
}

.c-image-group--3 img {
	padding: 7px;
	width: 31%;
}


.c-image--pdf-cover {
    width: 300px;
    height: auto;
}

.c-image--border {
	border: #CCC solid 1px;
}



@media screen and (max-width:1024px) {
	.c-image--pdf-cover {
	    display: block;
	    margin-left: auto;
	    margin-right: auto;
	}
}

@media screen and (max-width:840px) {
	.c-image-group--2 {
	    gap: 10px;
	}

	.c-image-group--2 img {
	    padding: 3px;
	    width: calc(50% - 20px);
	}

	.c-image-group--3 img {
		padding: 3px;
	}
	
	.c-image-group--2.c-image-group--sp-1col {
		flex-direction: column;
	}
	.c-image-group--2.c-image-group--sp-1col img{
		width: 100%;
		max-width: 580px;
		height: auto;
		padding: 2px 0;
	}

}


@media screen and (max-width:540px) {
	.c-image-group--2 {
	    gap: 8px;
	}

	.c-image-group--2 img {
	    padding: 2px;
	    width: calc(50% - 16px);
	}

	.c-image-group--3 img {
		padding: 2px;
	}
}

.c-image {
	display: block;
	margin: 0 auto;
}
@media screen and (max-width:820px) {
	.c-image {
		width: 85%;
		height: auto;
	}
}
.c-image--nosizing {
	display: block;
	margin: 0 auto;
}

.c-image-block {
	text-align: center;
	max-width: 100%;
	margin: 0 auto;
}
.c-image-block img {
	width: 100%;
	max-width: 800px;
	height: auto;
	display: block;
	margin: 0 auto;
}
.c-image-block--small img {
	max-width: 560px;
}
.c-image-block--wide img {
	max-width: 1120px;
}

.c-image-caption {
	margin-top: 0.5em;
	font-size: 0.95em;
	color: #333;
	text-align: center;
}