/*--------------------------------------------------------*/

/*  制作実績　*/

/*--------------------------------------------------------*/

@media print, screen and (min-width: 768px){

.works_container{
	max-width:1600px;
	margin:0 auto;
	padding:0 80px;
}

.category_select{
	width:160px;
	margin:0 auto 80px;
}

.category_menu{
	width:100%;
	border: none;
	padding: 6px 7px 6px 10px;
	text-align:left;
	font-family: var(--font_eng);
	font-size:12px;
	color: var(--text_color);
	font-weight:300;
	line-height:1.5em;
	letter-spacing:0.15em;
	font-feature-settings : "palt";
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #FFF url("../img/arrow.svg") no-repeat right .6em center;
	background-size: 10px 5px;
}

.gallery{
	display: grid;
	gap: 70px;
	/* 最小の「ユニット幅」 */
	--unit: 70px;
	grid-template-columns: repeat(auto-fill, minmax(var(--unit), 1fr));
	grid-auto-flow: dense; /* 空きを詰めやすくする */
}

/* 通常カードは 2ユニットぶん → 基準幅 */
.gallery .galleryBox{
	position: relative;
	overflow: hidden;
	grid-column: span 2;
}

/* 横長カードは 3ユニットぶん → 1.5倍 */
.gallery .galleryBox.wide{
 	grid-column: span 3;
}

.galleryBox a {
	position: relative;
	display: block;
	overflow: hidden;
}

.galleryBox a::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.6);
	opacity: 0;
	transition: opacity 0.3s ease;
	pointer-events: none;
}

.gallery .galleryBox img{
	width: 100%;
	height: auto;
	display: block;
	object-fit: cover;
}

.works_name {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-family: var(--font_txt);
	font-size:13px;
	color:#FFF;
	font-weight:normal;
	line-height:1.5em;
	letter-spacing:0.12em;
	font-feature-settings : "palt";
	opacity: 0;
	transition: opacity 0.3s ease;
	text-align: center;
	pointer-events: none;
	z-index:10;
}

.galleryBox a:hover::after,
.galleryBox a:hover .works_name {
	opacity: 1;
}

}

@media screen and (max-width: 768px){

.works_container{
	padding:40px 20px 0;
}

.category_select{
	width:160px;
	margin:0 auto 60px;
}

.category_menu{
	width:100%;
	border: none;
	padding: 6px 7px 6px 10px;
	text-align:left;
	font-family: var(--font_eng);
	font-size:11px;
	color: var(--text_color);
	font-weight:300;
	line-height:1.5em;
	letter-spacing:0.15em;
	font-feature-settings : "palt";
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #FFF url("../img/arrow.svg") no-repeat right .6em center;
	background-size: 10px 5px;
}

.works_container .gallery{
}

.works_container .gallery .galleryBox{
	margin-bottom:20px;
}

.works_container .gallery .galleryBox img{
	width: 100%;
}

.works_container .gallery .galleryBox{
 	position: relative;
	overflow: hidden;
}

.galleryBox::after {
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0.6);
	opacity: 0;
	transition: opacity 0.3s ease;
	pointer-events: none;
}

.works_container .gallery .galleryBox img{
	width: 100%;
}

.works_name {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-family: var(--font_txt);
	font-size:12px;
	color:#FFF;
	font-weight:normal;
	line-height:1.5em;
	letter-spacing:0.12em;
	font-feature-settings : "palt";
	opacity: 0;
	transition: opacity 0.3s ease;
	text-align: center;
	pointer-events: none;
	z-index:10;
}

.galleryBox:hover::after,
.galleryBox:hover .works_name {
	opacity: 1;
}

}

/*--------------------------------------------------------*/

/*  ページャー　*/

/*--------------------------------------------------------*/

@media print, screen and (min-width: 768px){

.pagination-area{
	margin-top:120px;
	text-align:center;
}

.pagination-area a {
	text-align: center;
	font-size:18px;
	font-weight:400;
	color: #A5A5A5;
	line-height:1.5em;
	letter-spacing:0.08em;
	font-feature-settings : "palt";
	padding: 5px 3px;
	margin:0 3px;
	transition: 0.2s ease-in-out;
	text-decoration:underline;
}

.pagination-area a:hover{
	color: #A5A5A5;
	text-decoration:none;
}

.pagination-area a.current{
	color: #A5A5A5;
	text-decoration:none;
}

.pagination-area .current a,.pagination-area a:hover{
	color: #A5A5A5;
	text-decoration:none;
}

}

@media screen and (max-width: 768px){

.pagination-area{
	margin-top:60px;
	text-align:center;
}

.pagination-area a {
	text-align: center;
	font-size:16px;
	font-weight:400;
	color: #A5A5A5;
	line-height:1.5em;
	letter-spacing:0.08em;
	font-feature-settings : "palt";
	padding: 5px 3px;
	margin:0 3px;
	transition: 0.2s ease-in-out;
	text-decoration:underline;
}

.pagination-area a:hover{
	color: #A5A5A5;
	text-decoration:none;
}

.pagination-area a.current{
	color: #A5A5A5;
	text-decoration:none;
}

.pagination-area .current a,.pagination-area a:hover{
	color: #A5A5A5;
	text-decoration:none;
}

}