/* =========================================================
   社員紹介ページ STAFF
   ========================================================= */
.p-staff-intro {
	text-align: center;
	margin-top: 30px;
}

.p-staff-intro__catch {
	font-size: 38px;
	margin-bottom: 40px;
	line-height: 1.8;
}

.p-staff-intro__desc {
	line-height: 1.8;
}

.l-main .p-staff-title {
	font-size: 48px;
	color: #F79B3F;
	text-align: center;
	margin-bottom: 10px;
}

.p-staff-work__sub {
	text-align: center;
}

.p-staff {
    padding: 90px 0 180px;
}

.staff-container {
	margin-top: 50px;
}

/* カードを3列で並べる */
.p-staff__list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}
/* 各カード */
.p-staff__item {
    background: #fff;
    border-radius: 20px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    height: 100%;
}
/* 画像 */
.p-staff__img {
    position: relative;
    width: 100%;
    height: 240px;
}
.p-staff__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/* 名前（オレンジ帯・画像下端にかぶせる） */
.l-main .p-staff__name {
    position: absolute;
    bottom: 0;
    left: 30px;
    transform: translateY(50%);
    background: #F79B3F;
    color: #fff;
    padding: 8px 18px;
}
/* 情報リスト */
.p-staff__info {
    margin: 0;
    padding: 32px 30px 30px;
    border: 1px solid #002F34;
    border-top: none;
    border-radius: 0 0 20px 20px;
    flex: 1;
}
/* 各行（項目名＋内容を横並び） */
.p-staff__row {
    display: flex;
    align-items: flex-start;
    margin-bottom: 12px;
	line-height: normal;
}
.p-staff__row:last-child {
    margin-bottom: 0;
}
/* 項目名（左・オレンジ） */
.p-staff__term {
    flex: 0 0 80px;
    color: #F79B3F;
    font-weight: 700;
}
/* 項目名の後ろにコロン */
.p-staff__term::after {
    content: "：";
}
/* 内容（右） */
.p-staff__desc {
    flex: 1;
    color: #002F34;
    margin: 0;
}

@media screen and (max-width: 767px) {
	.p-staff-intro__catch {
		font-size: 26px;
		margin-bottom: 30px;
	}
	.p-staff-intro__desc {
		font-size: 14px;
	}
	.p-staff {
		padding: 80px 0 40px;
	}
	.l-main .p-staff-title {
		font-size: 30px;
		margin-bottom: 5px;
	}
	.p-staff-work__sub {
		font-size: 14px;
	}
	.staff-container {
		margin-top: 30px;
	}
	.p-staff__list {
		grid-template-columns: repeat(1, 1fr);
	}
	.p-staff__item {
		font-size: 14px;
	}
	.p-staff__info {
		padding: 32px 20px 30px;
	}
	.l-main .p-staff__name {
		left: 20px;
	}
}