@charset "utf-8";

/* ==========================================================
   新入社員の声 詳細ページ
   ========================================================== */

/* ----------------------------------------------------------
   パンくず / c-page-title 前後余白 (archive と同じ)
   ---------------------------------------------------------- */
.newemployee-single .c-breadcrumb {
	padding-top: 26px;
}

.newemployee-single .c-page-title {
	margin-top: 160px;
}
@media (max-width: 767px) {
	.newemployee-single .c-page-title {
		margin-top: 60px;   /* お知らせ一覧と揃える */
	}
}

/* c-page-title カラーを緑系に上書き */
.newemployee-single .c-page-title__jp,
.newemployee-single .c-page-title__en {
	color: var(--color-accent-green);
}

.newemployee-single .c-page-title__line {
	background: var(--color-accent-green);
}

/* ----------------------------------------------------------
   ラッパー (コンテンツ幅 1260px ／ 左右余白 30px)
   ---------------------------------------------------------- */
.nes-wrap {
	max-width: 1320px;
	margin: 0 auto;
	padding: 0 30px;
}

/* ----------------------------------------------------------
   プロフィール帯
   ---------------------------------------------------------- */
.nes-band {
	position: relative;          /* 人物画像の絶対配置基準として維持 */
	display: flex;
	align-items: center;         /* 上下中央 */
	justify-content: space-between;
	gap: 40px;                   /* 所属とラベルの最小間隔 */
	height: 92px;
	padding: 0 30px 0 400px;     /* 左400px = 所属の開始位置 / 右30px = 最小余白 */
	/* 見出し下端から帯上端まで203px */
	margin-top: 203px;
	margin-bottom: 55px;
	background: url(../../images/newemployee/newemployee_profile_bg.jpg) no-repeat center center / cover;
}
@media (max-width: 767px) {
	.nes-band {
		justify-content: flex-start;
		gap: 0;
		height: auto;              /* 2行対応: height 固定を解除 */
		min-height: 53px;
		padding: 8px 20px 8px 119px;   /* 左119px = 11 + 90(photo) + 18 */
		margin-top: 100px;         /* 仮 (PC 203 × 0.5) */
		margin-bottom: 28px;       /* PC 55 × 0.5 */
		/* SP: 単色 + Mマーク + マイクを疑似要素で重ねる方式
		   マイクは透過なしのため人物より下に配置、テキストを最前面へ
		   人物画像を帯上部にはみ出させるため overflow は指定しない */
		background-image: none;
		background-color: #82BFA3;
	}
	.nes-band::before {
		content: "";
		position: absolute;
		left: 0;
		top: -8px;
		width: 53px;
		height: 54px;
		background: url(../../images/newemployee/newemployee_profile_mark.png) no-repeat left bottom / contain;
		z-index: 0;              /* 最背面: Mマーク */
	}
	.nes-band::after {
		content: "";
		position: absolute;
		left: 11px;
		bottom: 0;
		width: 130px;
		height: 53px;
		background: url(../../images/newemployee/newemployee_profile_mic.png) no-repeat left bottom / contain;
		z-index: 1;              /* Mマークの上、人物の下 */
	}
}

/* 人物画像: 帯の下端に揃えて上にはみ出させる
   幅のみ固定。高さは投稿ごとの画像比率に応じて可変 */
.nes-band__photo {
	position: absolute;
	left: 54px;
	bottom: 0;
	width: 243px;
	height: auto;
}
@media (max-width: 767px) {
	.nes-band__photo {
		left: 11px;
		width: 90px;
		z-index: 2;              /* マイク(::after 1)より上 */
		/* bottom: 0 は PC から継承、下端揃え維持 */
	}
}

/* 所属テキスト */
.nes-band__dept {
	color: var(--color-white);
	font-size: 25px;
	font-weight: 400;
}
@media (max-width: 767px) {
	.nes-band__dept {
		position: relative;        /* z-index を効かせるため */
		z-index: 3;                /* 最前面: テキスト */
		font-size: 16px;
		line-height: 1.4;          /* 2行になったときの詰まり防止 */
		letter-spacing: 0;
	}
}

/* Q&A Interviewラベル (縮めない) */
.nes-band__label {
	flex-shrink: 0;
	color: var(--color-white);
	font-family: var(--font-heading);
	font-size: 22px;
	font-weight: 500;
}
@media (max-width: 767px) {
	.nes-band__label {
		display: none;             /* SPカンプに無いため非表示 */
	}
}

/* ----------------------------------------------------------
   Q&Aブロック
   ---------------------------------------------------------- */
.nes-qa__item {
	padding-bottom: 44px;
	border-bottom: 2px solid var(--color-accent-green);
}
@media (max-width: 767px) {
	.nes-qa__item {
		padding-bottom: 24px;
	}
}

/* ブロック間の上余白 (仮: 下余白と同値) */
.nes-qa__item + .nes-qa__item {
	padding-top: 44px;
}
@media (max-width: 767px) {
	.nes-qa__item + .nes-qa__item {
		padding-top: 24px;
	}
}

.nes-qa__row {
	display: flex;
	align-items: flex-start;
	gap: 8px;
}
@media (max-width: 767px) {
	.nes-qa__row {
		gap: 6px;
	}
}

/* Q行 → A行の距離 */
.nes-qa__row--a {
	margin-top: 16px;
}
@media (max-width: 767px) {
	.nes-qa__row--a {
		margin-top: 12px;
	}
}

/* Q・Aの丸アイコン */
.nes-qa__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: var(--color-accent-green);
	color: var(--color-white);
	font-family: var(--font-heading);
	font-size: 33px;
	font-weight: 500;
	line-height: 1;
}
@media (max-width: 767px) {
	.nes-qa__icon {
		width: 32px;
		height: 32px;
		font-size: 24px;
	}
}

.nes-qa__q {
	color: var(--color-text);
	font-size: 28px;
	font-weight: 400;
	line-height: 1.5; /* 仮 */
}
@media (max-width: 767px) {
	.nes-qa__q {
		font-size: 15px;
	}
}

.nes-qa__a {
	color: var(--color-text);
	font-size: 21px;
	font-weight: 400;
	line-height: 1.8; /* 仮 */
}
@media (max-width: 767px) {
	.nes-qa__a {
		font-size: 12px;
		/* line-height: 1.8 は PC から継承 */
	}
}

/* ----------------------------------------------------------
   一覧へ戻るボタンの配置 (お知らせ詳細と同じ余白)
   ---------------------------------------------------------- */
.nes-back {
	margin-top: 60px;
	text-align: center;
}
@media (max-width: 767px) {
	.nes-back {
		margin-top: 30px;
	}
}
