@charset "UTF-8";
/* トップ・求人一覧・分類ページ・検索フォーム・一覧カード・内部リンク（STEP5）専用。親テーマの部品（.container／.row／.col-*／.m_tag_list／a.color01／a.color02）は親 style.css のまま使う */

/* ページ全体 */
.kw_page {
	padding: 10px 0 40px;
}
.kw_page_ttl {
	font-weight: bold;
	font-size: 20px;
	color: #09314f;
	border-left: 6px solid #0090DD;
	padding: 6px 10px;
	margin: 10px 0 14px;
	text-align: left;
	line-height: 1.4;
}
.kw_page_num {
	display: inline-block;
	margin-left: 10px;
	font-size: 14px;
	color: #666;
	font-weight: normal;
}
.kw_sec_ttl {
	font-weight: bold;
	font-size: 18px;
	background: #003654;
	color: #fff;
	padding: 10px 12px;
	margin: 40px 0 12px;
	text-align: left;
	line-height: 1.4;
}
.kw_sec_ttl a {
	color: #fff;
	text-decoration: none;
}
.kw_sec_ttl .kw_page_num {
	color: #fff;
}

/* 検索フォーム */
.kw_search {
	margin: 0 0 20px;
	text-align: left;
}
.kw_search_text {
	display: flex;
	align-items: stretch;
	border: 1px solid #0090DD;
	border-radius: 4px;
	overflow: hidden;
	background: #fff;
}
.kw_search_text input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	border: 0;
	padding: 12px 12px;
	font-size: 16px;
	background: #fff;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
}
.kw_search_text input[type="search"]:focus {
	outline: none;
}
.kw_search_text button {
	flex: 0 0 52px;
	border: 0;
	background: #0090DD;
	color: #fff;
	font-size: 18px;
	cursor: pointer;
}
.kw_search_toggle {
	display: inline-block;
	margin: 10px 0 0;
	padding: 8px 14px;
	border: 1px solid #0090DD;
	border-radius: 4px;
	background: #fff;
	color: #0090DD;
	font-size: 14px;
	font-weight: bold;
	cursor: pointer;
}
.kw_search_toggle.is-open {
	background: #0090DD;
	color: #fff;
}
.kw_search_cond {
	margin: 10px 0 0;
	padding: 12px;
	border: 1px solid #ededed;
	background: #f7f9fb;
	border-radius: 4px;
}
.kw_search_cond[hidden] {
	display: none;
}
.kw_search_row {
	margin: 0 0 10px;
}
.kw_search_row label {
	display: block;
	font-weight: bold;
	color: #09314f;
	font-size: 14px;
	margin: 0 0 4px;
}
.kw_search_row select {
	width: 100%;
	padding: 8px 10px;
	font-size: 16px;
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #fff;
}
.kw_search_check label {
	display: inline-block;
	font-weight: normal;
	font-size: 16px;
}
.kw_search_check input[type="checkbox"] {
	width: 18px;
	height: 18px;
	vertical-align: middle;
	margin: 0 4px 0 0;
}
.kw_search_submit {
	margin: 4px 0 0;
}
.kw_btn_search {
	display: block;
	width: 100%;
	padding: 12px;
	border: 0;
	border-radius: 4px;
	background: #003654;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	cursor: pointer;
}
@media screen and (min-width: 769px) {
	.kw_search_cond {
		display: flex;
		flex-wrap: wrap;
		gap: 10px 16px;
		align-items: flex-end;
	}
	.kw_search_cond[hidden] {
		display: none;
	}
	.kw_search_row {
		flex: 1 1 180px;
		margin: 0;
	}
	.kw_search_check {
		flex: 0 0 auto;
		padding-bottom: 8px;
	}
	.kw_search_submit {
		flex: 0 0 160px;
	}
}

/* 一覧カード */
.kw_list {
	margin: 0 0 10px;
}
/* 親テーマの .row は左右 -15px、.col-* の内側は 10px のため、列の中に入れ子にした .row が左右 5px ずつはみ出しスマホで横スクロールが出る。ここだけ列の内側と同じ 10px にそろえる（2026-09-04） */
.kw_list > .row {
	margin-left: -10px;
	margin-right: -10px;
}
.kw_card_col {
	margin: 0 0 20px;
}
.kw_card {
	background: #fff;
	border: 1px solid #ededed;
	border-radius: 4px;
	padding: 12px;
	text-align: left;
	height: 100%;
}
.kw_card_title {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	margin: 0 0 10px;
	color: #09314f;
	text-align: left;
}
.kw_card_title a {
	color: #09314f;
	text-decoration: none;
}
.kw_card_image {
	display: block;
	margin: 0 0 10px;
}
.kw_card_image img {
	display: block;
	width: 100%;
	height: auto;
	max-height: 220px;
	object-fit: cover;
}
.kw_card_table {
	width: 100%;
	border-collapse: collapse;
	margin: 0 0 8px;
	font-size: 14px;
}
.kw_card_table th,
.kw_card_table td {
	border-top: 1px solid #ededed;
	padding: 6px 4px;
	vertical-align: top;
	text-align: left;
	line-height: 1.5;
}
.kw_card_table th {
	width: 6.5em;
	color: #003654;
	font-weight: bold;
	white-space: nowrap;
}
.kw_card_table th .fa {
	margin-right: 2px;
	color: #0090DD;
}
.kw_card_table td p {
	margin: 0;
}
.kw_card .kw_card_features {
	margin: 0;
}
.kw_card .kw_card_features ul {
	padding: 4px 0;
}
.kw_card .kw_card_features ul li.m_on {
	border: 1px solid #0090DD !important;
	color: #0090DD !important;
	background: #fff;
}
.kw_card_lead {
	font-size: 14px;
	line-height: 1.6;
	margin: 6px 0 10px;
	color: #333;
}
.kw_card_btns {
	display: flex;
	gap: 8px;
	margin: 8px 0 0;
}
.kw_card_btns a {
	flex: 1 1 50%;
	display: block;
	text-align: center;
	padding: 10px 6px;
	border-radius: 4px;
	font-size: 15px;
	font-weight: bold;
	text-decoration: none;
	line-height: 1.3;
}
.kw_card_btns a.kw_card_more {
	background: #003654;
	color: #fff;
}
.kw_card_btns a.kw_card_more img {
	width: 10px;
	margin: 0 0 3px 8px;
}
.kw_card_btns a.kw_card_apply img {
	width: 20px;
	height: auto;
	margin: 0 6px 0 0;
	vertical-align: middle;
}

/* ページ送り（paginate_links の type=list） */
.kw_pager {
	margin: 10px 0 20px;
	text-align: center;
}
.kw_pager ul.page-numbers {
	list-style: none;
	margin: 0;
	padding: 0;
	display: inline-flex;
	flex-wrap: wrap;
	gap: 6px;
	justify-content: center;
}
.kw_pager ul.page-numbers li:before {
	content: none !important;
	background-image: none !important;
}
.kw_pager .page-numbers {
	display: inline-block;
	min-width: 36px;
	padding: 8px 10px;
	border: 1px solid #0090DD;
	border-radius: 4px;
	color: #0090DD;
	text-decoration: none;
	font-size: 14px;
	line-height: 1.2;
	background: #fff;
}
.kw_pager .page-numbers.current {
	background: #0090DD;
	color: #fff;
}
.kw_pager .page-numbers.dots {
	border: 0;
}

/* 内部リンク（職種一覧・地域一覧・他の求人） */
.kw_links {
	margin: 0 0 10px;
	text-align: left;
}
.kw_links_pref {
	font-size: 16px;
	font-weight: bold;
	color: #09314f;
	margin: 14px 0 6px;
	padding: 0 0 0 4px;
	text-align: left;
}
.kw_links_pref a {
	color: #09314f;
	text-decoration: underline;
}
ul.kw_links_ul {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 6px 14px;
}
ul.kw_links_ul li {
	margin: 0;
	padding: 0;
}
ul.kw_links_ul li:before {
	content: none !important;
	background-image: none !important;
}
ul.kw_links_ul li a {
	color: #0090DD;
	text-decoration: none;
	font-size: 15px;
	line-height: 1.8;
}
ul.kw_links_ul li a .fa {
	margin-right: 4px;
}
.kw_links_num {
	font-size: 12px;
	color: #666;
	margin-left: 3px;
}
.kw_related {
	margin: 20px 0 0;
}
.kw_related .kw_list .kw_card {
	height: auto;
}

/* 職種が複数のときの給与（職種名＋金額を1行ずつ） */
.kw_card_multi {
	margin: 0 0 4px;
}
.kw_card_jobname {
	display: inline-block;
	font-size: 12px;
	color: #fff;
	background: #0090DD;
	border-radius: 3px;
	padding: 1px 6px;
	margin: 0 6px 2px 0;
}

/* トップの地域一覧（ヘッダー下＝ボタン型、フッター上＝紺帯。lounge-tapioca.com/boy/ と同じ見せ方。部品 .top_pickup_title／.area_btn_box／#chamo_category は親 style.css）2026-09-04 */
.kw_area_top {
	margin: 0 0 10px;
}
.kw_area_top .kw_area_top_pref span {
	font-size: 20px;
	text-decoration: underline;
	margin: 0 0 20px;
}
.kw_area_top .kw_area_top_pref a {
	color: #09314f;
}
.kw_area_top .area_btn_box {
	width: 100%;
	padding: 0;
	list-style: none;
}
.kw_area_bottom .chamo_category_nav h2.kw_area_bottom_pref {
	font-size: 18px;
	padding: 30px 0 0 14px;
	text-align: left;
	text-decoration: underline;
}
.kw_area_bottom .chamo_category_nav ul {
	list-style: none;
	padding-left: 10px;
}
