/* === ベース === */
.step .list {
	width: 100% !important;
	display: block !important;
}
/* === フィルター周り（そのまま） === */
.p-filter {
	margin-bottom: 1rem;
}
.pf-row {
	display: flex;
	gap: .6rem;
	flex-wrap: wrap;
}
.pf-input, .pf-select {
	padding: .5rem .7rem;
	font-size: .9rem;
}
.p-count {
	margin: .6rem 0;
}
/* =========================
   横長カードレイアウト（左右2カラム）
   ========================= */
/* 一覧は縦にカードを積む */
.p-list {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}
/* カード外枠：中央寄せはしない */
.p-card {
	display: flex;
	gap: 1rem;
	background: #fff;
	border: 1px solid #eee;
	border-radius: 10px;
	padding: 1rem;
	align-items: flex-start; /* ← 中央縦揃えをやめる */
	text-align: left; /* ← 右ブロックのテキスト左寄せ */
}
/* 左：画像カラムを固定幅に */
.p-img {
	flex: 0 0 260px; /* ← 左カラム幅を固定 */
}
.p-img img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 6px;
	object-fit: cover;
}
/* 右：本文カラム */
.p-body {
	flex: 1;
	display: flex;
	flex-direction: column;
	gap: .5rem;
}
/* テキスト類 */
.p-name {
	font-size: 1rem;
	font-weight: 700;
	color: #222;
	margin: 0;
	line-height: 1.35;
	text-align: left;
}
.p-price {
	color: #d30000;
	font-size: 120%;
	font-weight: 700;
	text-align: right;
	justify-content: flex-end;
}

.p-act {
	margin-top: .4rem;
	display: flex;
	gap: .5rem;
	align-items: center;
	justify-content: flex-end;
}
.p-act.p-meta-right {
	justify-content: flex-end
}
/* ボタン（既存と馴染む軽めのサイズ） */
.btn-sm {
	padding: .6rem 1rem;
	font-size: .85rem;
	border-radius: 8px
}
.btn-ghost {
	background: #fff;
	border: 1px solid #e5e7eb;
	color: var(--ink);
	text-decoration: none;
}


/* 空表示 */
.p-empty {
	border: 2px dashed #ccc;
	padding: 2rem;
	text-align: center;
}
/* ページング中央寄せ */
.p-pager {
	display: flex;
	justify-content: center;
	gap: 1rem;
	margin-top: 1.5rem;
}
/* === スマホ調整（任意） === */
@media (max-width:600px) {
	.p-card {
		gap: .8rem;
	}
	.p-img {
		flex-basis: 100px;
	}
}


/* 検索結果ヘッダ行 */
.p-head {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: .8rem;
	font-size: .9rem;
}

/* 左：検索条件 */
.p-search-label {
	font-weight: bold;
	color: #333;
	margin: 0;
}

/* 右：件数 */
.p-count {
	color: #666;
	margin: 0;
	white-space: nowrap;
}

/* スマホ時は縦に */
@media (max-width: 600px) {
	.p-head {
		flex-direction: column;
		align-items: flex-start;
		gap: .4rem;
	}
}


