.job-title h5 {
	line-height: 28px;
}

.job-title h5:nth-of-type(2) {
	color: rgb(116, 116, 116);
	font-weight: 400;
	letter-spacing: 1px;
}

.ellipsis {
	font-size: 3rem;
}

@media only screen and (min-width: 1200px) {
	/* 四欄合計 86%，留 14% 給 service-right circle button，並鎖定不壓縮 */
	.inner-list {
		width: 4%;
		flex-shrink: 0;
	}

	.service-title {
		width: 14%;
		flex-shrink: 0;
	}

	.service-content {
		width: 42%;
		flex-shrink: 0;
		min-width: 0;
	}

	.job-meta {
		width: 26%;
		flex-shrink: 0;
		min-width: 0;
	}

	.service-right {
		flex-shrink: 0;
		margin-left: 20px;
	}

	/* header 欄對齊 (18=4+14, 42, 26) */
	.service-th {
		width: 18%;
		flex-shrink: 0;
	}

	.service-th a {
		max-width: 200px;
	}

	.service-content-th {
		width: 42%;
		flex-shrink: 0;
	}

	.job-meta-th {
		width: 26%;
		flex-shrink: 0;
	}

	/* 桌機列頂端對齊，避免某欄特別高時其他欄浮到中間 */
	.job .service-single-inner {
		align-items: flex-start;
	}
}

.service-inner-wrapper span {
	color: var(--bd-primary);
	letter-spacing: 1px;
}

.service-content span {
	font-size: 1rem;
	font-weight: var(--bd-fw-medium)
}

@media (width<=1200px) {
	.service-title {
		width: 100%;
	}

	.service-title a {
		max-width: 200px;
	}

	.inner-list {
		width: 100%;
	}

	.service-content {
		width: 100%;
	}

	.job-meta {
		width: 100%;
	}

	.service-single-inner {
		flex-direction: column;
	}
}

.job-meta {
	display: flex;
	flex-direction: column;
	gap: 7px;
	padding-left: 20px;
}

.job-meta p {
	display: flex;
	gap: 12px;
	margin: 0;
	font-family: "Nunito", "Noto Sans TC", serif;
}

.job-meta i {
	width: 16px;
	display: flex;
	justify-content: center;
	flex-shrink: 0;
	padding-top: 5px;
}

.job-meta .text-wrapper {
	display: flex;
	flex-direction: column;
}

h5.service-title {
	font-size: 1rem;
}

.service-single-inner h5 {
	font-size: 0.95rem;
}

/* 名額標籤：不縮小、不換行，保持在職稱同一行 */
.per {
	flex-shrink: 0;
	white-space: nowrap;
	font-size: 0.85rem;
	margin-top: 2px;
}

/* 職稱：剩餘空間自適應，長文字自動換行 */
.job-title {
	flex: 1;
	min-width: 0;
}

.job-title h5 {
	word-break: break-word;
	overflow-wrap: break-word;
}

/* 長文字在欄內換行，不外溢 */
.describe p,
.description {
	word-break: break-word;
	overflow-wrap: break-word;
	font-size: 0.88rem;
	line-height: 1.55;
}

.gap-15 {
	gap: 15px;
}

h6.amount {
	color: rgb(87, 87, 87);
	letter-spacing: 1px;
}

.orange {
	color: var(--bd-primary);
}

@media(width<=1200px) {
	.service-single-inner {
		flex-direction: column;
	}

	.service-content {
		width: calc(100%);
	}

	.job-meta {
		width: calc(100%);
	}

	.service-single-inner {
		align-items: start;
		gap: 20px
	}

	.service-right {
		margin-left: 0;
	}
}

@media (width<=992px) {
	.ellipsis {
		font-size: 2rem;
	}
}

@media(width<=768px) {
	h6.amount {
		font-size: 1.1rem;
	}
}

.sticky-th {
	position: sticky;
	top: 60px;
}

/* 同一機構的後續職缺：縮小上下間距、邊框改淡色 */
.job-same-org {
	border-top-color: transparent;
	padding-top: 10px;
	padding-bottom: 10px;
}