/* =========================================
	 GRM Works / フロント表示
========================================= */

/* ---- チップ（参考：https://soraros.jp/products/） ---- */
.grm-works-chips{
	display:flex;
	flex-wrap:wrap;
	gap:10px;
	justify-content:center;
	margin:0 0 60px;
}

.grm-works-chip{
	display:inline-block;
	padding:10px 22px;
	border:1px solid #222;
	border-radius:999px;
	font-size:13px;
	font-weight:700;
	letter-spacing:.03em;
	color:#222;
	text-decoration:none;
	background:#fff;
	transition:.2s;
}

.grm-works-chip:hover{
	background:#f2f2f2;
}

.grm-works-chip.is-active{
	background:#222;
	color:#fff;
	border-color:#222;
}

/* ---- アーカイブ見出し ---- */
.grm-works-archive{
	padding:100px 0;
}

.grm-works-archive-header{
	text-align:center;
	margin-bottom:30px;
}

.grm-works-archive-current{
	margin-top:8px;
	font-size:14px;
	color:#666;
}

.grm-works-empty{
	text-align:center;
	color:#666;
}

/* ---- グリッド ---- */
.grm-works-grid{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:40px 30px;
}

@media(max-width:991px){
	.grm-works-grid{
		grid-template-columns:repeat(2, 1fr);
	}
}

@media(max-width:575px){
	.grm-works-grid{
		grid-template-columns:1fr;
	}
}

.grm-works-grid-card a{
	display:block;
	color:inherit;
	text-decoration:none;
}

.grm-works-grid-thumb{
	position:relative;
	aspect-ratio:4 / 3;
	overflow:hidden;
	background:#f2f2f2;
}

.grm-works-grid-thumb img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	transition:transform .4s;
}

.grm-works-grid-card:hover .grm-works-grid-thumb img{
	transform:scale(1.04);
}

.grm-works-grid-noimage{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:100%;
	color:#999;
	font-size:12px;
}

.grm-works-grid-body{
	padding-top:16px;
}

.grm-works-grid-company{
	font-size:12px;
	color:#666;
	margin-bottom:6px;
}

.grm-works-grid-catchcopy{
	font-size:14px;
	line-height:1.8;
}

.grm-works-grid-tags{
	display:flex;
	flex-wrap:wrap;
	gap:6px 12px;
	list-style:none;
	margin:10px 0 0;
	padding:0;
}

.grm-works-grid-tags li{
	font-size:11px;
	letter-spacing:.04em;
	color:#666;
	text-transform:uppercase;
}

/* ---- 詳細ページ ---- */
.grm-works-single{
	padding:100px 0;
}

.grm-works-single-main-photo{
	margin-bottom:40px;
}

.grm-works-single-main-photo img{
	display:block;
	width:100%;
	height:auto;
}

.grm-works-single-main-photo iframe{
	display:block;
	width:100%;
	aspect-ratio:16 / 9;
	height:auto;
	border:0;
	background:#000;
}

.grm-works-single-head{
	text-align:center;
	max-width:760px;
	margin:0 auto 60px;
}

.grm-works-single-company{
	font-size:13px;
	color:#666;
	margin-bottom:12px;
}

.grm-works-single-catchcopy{
	font-size:clamp(22px, 3.5vw, 34px);
	line-height:1.7;
	font-weight:500;
}

.grm-works-single-comment .grm-works-single-website{
	margin-top:16px;
}

.grm-works-single-website-standalone{
	max-width:760px;
	margin:0 auto 60px;
}

.grm-works-single-website-btn{
	display:inline-block;
	padding:7px 16px;
	border:1px solid #999;
	border-radius:999px;
	font-size:12px;
	font-weight:400;
	letter-spacing:.03em;
	color:#666;
	text-decoration:none;
	background:#fff;
	transition:.2s;
}

.grm-works-single-website-btn:hover{
	background:#f2f2f2;
	color:#222;
	border-color:#222;
}

.grm-works-single-gallery{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:20px;
	margin-bottom:60px;
}

@media(max-width:575px){
	.grm-works-single-gallery{
		grid-template-columns:1fr;
	}
}

.grm-works-single-gallery-item img,
.grm-works-single-gallery-item video{
	display:block;
	width:100%;
	height:auto;
}

/* 動画（縦長のショート動画等）：黒背景で読み込み前もサイズを確保 */
.grm-works-single-gallery-item.is-video video{
	background:#000;
}

.grm-works-single-comment{
	max-width:760px;
	margin:0 auto 60px;
	font-size:15px;
	line-height:2;
}

/* ---- 制作項目 ---- */
.grm-works-single-items{
	max-width:760px;
	margin:0 auto;
}

.grm-works-single-items-title{
	font-size:18px;
	font-weight:700;
	margin-bottom:24px;
	text-align:center;
}

.grm-works-item-block{
	margin-bottom:24px;
}

.grm-works-item-block-label{
	font-size:13px;
	font-weight:700;
	margin-bottom:10px;
	color:#666;
}

.grm-works-item-list{
	display:flex;
	flex-wrap:wrap;
	gap:8px 10px;
	list-style:none;
	margin:0;
	padding:0;
}

.grm-works-item-list li{
	padding:6px 14px;
	border:1px solid #ddd;
	border-radius:999px;
	font-size:12px;
	color:#bbb;
	background:#fafafa;
}

.grm-works-item-list li.is-checked{
	color:#fff;
	background:#222;
	border-color:#222;
	font-weight:700;
}
