@charset "UTF-8";
/* CSS Document */

/*固定ページ（TOPページ）*/
.lead_sentence{
	width:100%;
	padding:20px;
	font-size:1.2em;
	font-weight:500;
}
.lead_sentence p{
	line-height:1.8em;
}
.lead_sentence span.red{font-size:1.6em;color:#BF0000;font-weight:700;}
.lead_sentence span.navy{font-size:1.6em;color:#184066;font-weight:700;}
.lead_sentence span.green{font-size:1.6em;color:#18531F;font-weight:700;}
.f_herose_box{
	width:100%;
	margin-bottom:100px;
	display:flex;
	flex-wrap:wrap;
}
.f_herose_box a,.f_herose_box a:visited{color:#000;}
.f_herose_box .hero_box{
	box-sizing: border-box;
	width: calc((100% - 5px) / 3);
	padding:10px;
} 
.f_herose_box .hero_box .inner_box{
	border:solid 3px gray;
	height:100%;
	border-radius:10px;
	/*! padding:20px; */
}
.f_herose_box .hero_box .co_name{
	font-size:1.2em;
	color:#163e64;
	text-shadow:1px 1px 1px #ccc;
	padding:5px;
}
.f_herose_box .hero_box .inner_box .hero_img img{
	width: 100% !important;
	margin:auto !important;
	object-fit: cover;
	height: 320px;
	transition:1s all;
}
.f_herose_box .hero_box .inner_box .hero_img{
	/*! max-width: 262px; */
	overflow:hidden;
}
.text_box{
	width:100%;
	padding:20px 10px;
	position:relative;
}
.text_box .cat{
	margin-bottom:10px;
	position:absolute;
	top:-40px;
	left:5px;
}
.text_box .cat span {
	color:#000;
	padding:5px 10px;
	border-radius:3px;
	font-size:0.85em;
	border:solid 5px #fff;
}
.text_box .cat[title="建設業"] span {
	background:#F5B090;
}
.text_box .cat[title="製造業"] span {
	background:#FCD7A1;
}
.text_box .cat[title="情報通信業"] span {
	background:#FFF9B1;
}
.text_box .cat[title="運輸業"] span {
	background:#D7E7AF;
}
.text_box .cat[title="卸売業"] span {
	background:#A5D4AD;
}
.text_box .cat[title="小売業"] span {
	background:#A2D7D4;
}
.text_box .cat[title="金融・保険業"] span {
	background:#9FD9F6;
}
.text_box .cat[title="不動産業"] span {
	background:#A3BCE2;
}
.text_box .cat[title="飲食・宿泊業"] span {
	background:#A59ACA;
}
.text_box .cat[title="医療、福祉"] span {
	background:#CFA7CD;
}
.text_box .cat[title="教育・学習支援業"] span {
	background:#F4B4D0;
}
.text_box .cat[title="その他サービス業"] span {
	background:#F5B2B2;
}
.text_box .cat[title="その他"] span {
	background:#F6AD3C;
}	
.text_box .posi{margin-bottom:2px; padding-left:20px;}
.text_box .representative{text-align:center;font-size:1.4em;}
.hero_box a{ overflow:hidden; }
.hero_box a img:hover{
	transform:scale(1.2,1.2);
	transition:1s all;
}

.pnavi .wp-pagenavi a,
.pnavi .wp-pagenavi span{
	display: flex;
	align-items: center!important;
	justify-content: center!important;
	font-size: 20px!important;
	color: #452157 !important;
	background-color: #fff!important;
	border: 3px solid #452157 !important;
	width: 50px!important;
	height: 50px!important;
	border-radius: 50%!important;
	margin: 0 8px!important;
	font-weight: 700;
}
.pnavi .wp-pagenavi span.extend{display:none;}
.wp-pagenavi a.prev,
.wp-pagenavi a.next,
.wp-pagenavi .dots {
	border: none;
	margin: 0;
	width: 100px!important;
	border: none!important;
}
.pnavi {
	display: flex;
	justify-content: center;
}
.pnavi .wp-pagenavi .current {
	color: #fff!important;
	background-color: #452157!important;
	border: 3px solid #452157 !important;
}
.free-box{
	position:relative;
	padding: 20px 5px 7px 5px;
	font-size:1.2rem;
	margin:30px 0 0;
	line-height:2rem;
	border-radius:5px;
}
.free-box::after{
	content: "ー求職者へのメッセージー";
	position: absolute;
	top: -18px;
	left: 10px;
	background: #fff;
	font-size: 1.2em;
	color: #4e86b7;
	padding: 0 10px;
	font-weight:800;
}
.free-box p{font-size:0.95em;}

.free-box p,.free-box ul,.free-box ol{font-size:0.85em;}

/*.free-box p::after {  content: "…";  color: #000;font-size:1.2em;font-weight:600;}*/
.x_display_none{display:none;}
.ins_display_none{display:none;}
.fb_display_none{display:none;}
.line_display_none{display:none;}

.link_box{
	width:100%;
	padding:20px;
	display:flex;
	flex-wrap:wrap;
	margin-bottom:100px
}
.link_box div.box_a{
	width: calc((100% / 4) - 5px); 
	padding:20px;
}
.link_box div a img{border:solid 2px #000;border-radius:10px;
	transition: filter 0.1s ease;
	filter: brightness(1.0); /* デフォルト値なのでこの一行は省略してもOK */
}
.link_box div a img:hover {
	filter: brightness(1.10); /* 明るくする */
}
.link_box div a img {
	transition: .3s ease-in-out;
}
.link_box div a:hover img {
	filter: brightness(80%);
}
.link_box div p{padding:10px;}
.ft_con_left_info ul li a {
	/*! background:#fff; */
	text-decoration: none;
	color: #fff;
	font-weight: bold;
	display: block;
	padding: 3px 20px 3px 30px;
	border: 1px solid #fff;
	position: relative;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
.ft_con_left_info ul li a::after {
	position: absolute;
	left: 10px;
	top: 10px;
	transform: rotate(45deg);
	content: "";
	width: 6px;
	height: 6px;
	border-right: 1px solid #fff;
	border-top: 1px solid #fff;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease; 
}
.ft_con_left_info ul li a:hover {
	background: #ffffff;
	color: #333; 
}
.ft_con_left_info ul li a:hover::after {
	border-right: 1px solid #ffffff;
	border-top: 1px solid #ffffff; 
}

/*投稿ページ（詳細ページ）*/
.contents-box1{
	position: relative;
	margin: 2em 0;
	padding: 1.2em 1.5em 0.9em;
	border: solid 3px #3d4d99;
}
.contents-box1 .box-title {
	position: absolute;
	display: inline-block;
	top: -35px;
	left: -3px;
	padding: 5px 25px;
	height: 35px;
	line-height: 25px;
	font-size: 20px;
	background: #3d4d99;
	color: #ffffff;
	font-weight: bold;
	border-radius: 5px 5px 0 0;
}
.contents-box1 p {
	margin: 0; 
	padding: 0;
}
#heroes_box .text_box{
	width:100%;
	display:flex;
	flex-wrap:wrap;
	margin-bottom:100px;
}

#heroes_box .text_box .cat{margin-bottom:10px;width:100%;padding:30px 0;}
#heroes_box .text_box .cat span {
	color:#000;
	padding:10px 20px;
	border-radius:3px;
	font-size:1.1em;
	/*border:solid 4px #000;*/
	margin-right:10px;	
}
#heroes_box .text_box .cat[title="建設業"] span {
	background:#F5B090;
}
#heroes_box .text_box .cat[title="製造業"] span {
	background:#FCD7A1;
}
#heroes_box .text_box .cat[title="情報通信業"] span {
	background:#FFF9B1;
}
#heroes_box .text_box .cat[title="運輸業"] span {
	background:#D7E7AF;
}
#heroes_box .text_box .cat[title="卸売業"] span {
	background:#A5D4AD;
}
#heroes_box .text_box .cat[title="小売業"] span {
	background:#A2D7D4;
}
#heroes_box .text_box .cat[title="金融・保険業"] span {
	background:#9FD9F6;
}
#heroes_box .text_box .cat[title="不動産業"] span {
	background:#A3BCE2;
}
#heroes_box .text_box .cat[title="飲食・宿泊業"] span {
	background:#A59ACA;
}
#heroes_box .text_box .cat[title="医療、福祉"] span {
	background:#CFA7CD;
}
#heroes_box .text_box .cat[title="教育・学習支援業"] span {
	background:#F4B4D0;
}
#heroes_box .text_box .cat[title="その他サービス業"] span {
	background:#F5B2B2;
}
#heroes_box .text_box .cat[title="その他"] span {
	background:#F6AD3C;
}
#heroes_box .text_box h6.title_s {
	position: relative;
	padding: 0 65px;
	text-align: center;
	width:280px;
}
#heroes_box .text_box h6.title_s:before {
	position: absolute;
	top: calc(50% - 1px);
	left: 0;
	width: 100%;
	height: 2px;
	content: '';
	background: #000;
}
#heroes_box .text_box h6.title_s span {
	position: relative;
	padding: 0 1em;
	background: #fff;
}
#heroes_box .text_box p .post{font-size:1.2em; color:gray; padding-right:50px;}
#heroes_box .representative{font-size:2em;}
#heroes_box .representative ruby{font-size:0.8em;}
#heroes_box .text_box .box70 dl{width:100%;display:flex;flex-wrap:wrap;}
#heroes_box .text_box .box70 dl dt{width:15%;border-bottom:dotted 2px gray;font-size:0.9em;padding:7px 10px 7px 0;margin:0!important;color:gray;}
#heroes_box .text_box .box70 dl dd{width:85%;border-bottom:dotted 2px gray;font-size:1em;font-weight:500;padding:7px 10px;margin:0!important;}
#heroes_box .box30 img.size-full {
border-radius: 10px;
width: 100% !important;
min-width: 100%; /* 強制的に幅を確保 */
object-fit: cover;
min-height: 280px;
max-height: 350px;
height: auto; /* 100%からautoに変更すると比率が安定することがあります */
max-width: none !important;
display: block;
}
#heroes_box .text_box .url{width:100%;text-align:center;font-weight:600;color:#ccc;}

#heroes_box .sns_box{widtht:100%;padding:20px 0px;display:flex;flex-wrap:wrap;}
#heroes_box .sns_box a{width: calc(100% / 5);padding:5px;}
#heroes_box .sns_box img{width: 100%;}

#heroes_box .text_box .box100 dl{width:100%;display:block;margin-bottom:50px;}
#heroes_box .text_box .box100 dl dt{border-bottom:dotted 2px gray;font-size:1.2em;padding:7px 10px;margin:0!important;color:gray;}
#heroes_box .text_box .box100 dl dt.orange:first-letter {
	font-size: 160%;
	color: #eb6100;
}
#heroes_box .text_box .box100 dl dt.pink:first-letter {
	font-size: 160%;
	color: #eb009c;
}
#heroes_box .text_box .box100 dl dt.blue:first-letter {
	font-size: 160%;
	color: #0075eb;
}
#heroes_box .text_box .box100 dl dd{width:100%;font-size:1em;font-weight:500;padding:20px 10px;margin:0 0 30px important;}
#heroes_box .contents-box1{
	position: relative;
	margin: 2.5em 0!important;
	padding: 1.5em!important;
	border: solid 3px #3d4d99;
	border-radius:0px 10px 10px 10px;
}
#heroes_box .contents-box1 .box-title {
	position: absolute;
	display: inline-block;
	top: -40px!important;
	left: -2px !important;
	padding: 5px 25px;
	height: 40px!important;
	line-height: 25px;
	font-size: 22px;
	background: #3d4d99;
	color: #ffffff;
	font-weight: bold;
	border-radius: 5px 5px 0 0;
}
.x_display_none,.fb_display_none,.ins_display_none,.line_display_none,.yt_display_none,.founding_display_none,.other1_display_none,.other2_display_none,.recruit_display_none{display:none!important;}


#search-box {
    position: relative;
    max-width: 100%;
    margin: 1.9em auto 0;
    padding: 1em 1.5em;
    border: 4px solid #452157;
    border-radius: 3px;
}
 
#search-box span {
    position: absolute;
    top: -2em;
    left: -2px;
    padding: .2em .8em;
    border-radius: 5px 5px 0 0;
    background-color: #452157;
    color: #fff;
}
 
#search-box p {
    margin: 0;
    color: #333;
}

.search-table div{width:100%;
display:flex;}
.button-1 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 200px;
    margin:10px;
    padding: .5rem 1rem 0.6rem;
    border: none;
    border: solid 2px #452157;
    border-radius: 20px;
    background-color: #452157;
    color: #fff!important;;
    font-weight: 500;
    font-size: 1em;
}
 
.button-1::after {
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
}
 
.button-1:hover {
    background-color:#001f6026!important;
	color: #452157!important;;

}
.button-1:hover::after {
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #452157;
    border-right: 2px solid #452157;
    content: '';
}

.checkbox-1 {
    display: flex;
    flex-wrap: wrap;
    gap: .5em 2em;
    border: none;
}
 
.checkbox-1 label {
    display: flex;
    align-items: center;
    gap: 0 .5em;
    position: relative;
    cursor: pointer;
}
 
.checkbox-1 label::before,

.checkbox-1 label:has(:checked)::after {
    content: '';
}
 
.checkbox-1 label::before {
    width: 17px;
    height: 17px;
    border-radius: 3px;
    background-color: #e6edf3;
}
 
.checkbox-1 label:has(:checked)::before {
    background-color: #2e7b28;
}

.checkbox-1 label:has(:checked)::after {
    position: absolute;
    top: 6px;
    left: 6px;
    transform: rotate(45deg);
    width: 4px;
    height: 8px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
}
 
.checkbox-1 input {
    display: none;
}
.tab-menu1 {
    display: flex;
    flex-wrap: wrap;
    gap: 0 10px;
    max-width: 100%;
}
 
.tab-menu1 > label {
    flex: 1 1;
    order: -1;
    opacity: .5;
    min-width: 70px;
    padding: .6em .7em;
    border-radius: 10px 10px 0 0;
    background-color: #452157;
    color: #fff;
    font-size: 1.2em;
    text-align: center;
    cursor: pointer;
    max-width: 50%;
    font-weight: 500;
}
 
.tab-menu1 > label:hover {
    opacity: .8;
}
 
.tab-menu1 input {
    display: none;
}
 
.tab-menu1 > div {
    display: none;
    width: 100%;
    padding: 1.5em 1em;
    background-color: #fff;
	border: solid 3px #452157; 
	border-radius:0 0 10px 10px;
	min-height: 280px;
}
 
.tab-menu1 label:has(:checked) {
    opacity: 1;
}
 
.tab-menu1 label:has(:checked) + div {
    display: block;
}
.tab-menu1 dl{margin-bottom:50px;}

.search-form {
	display: flex;align-items: center;overflow: hidden;border: 1px solid #452157;border-radius: 24px;
	font-size: 1.2em;

	background: #fff;
}
.search-form:hover {
	box-shadow: 0 1px 6px rgb(32 33 36 / 28%);
}
.search-form::before {
	width: 45px;height: 15px;background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%20%3Cpath%20d%3D%22M23.7%2020.8%2019%2016.1c-.2-.2-.5-.3-.8-.3h-.8c1.3-1.7%202-3.7%202-6C19.5%204.4%2015.1%200%209.7%200S0%204.4%200%209.7s4.4%209.7%209.7%209.7c2.3%200%204.3-.8%206-2v.8c0%20.3.1.6.3.8l4.7%204.7c.4.4%201.2.4%201.6%200l1.3-1.3c.5-.5.5-1.2.1-1.6zm-14-5.1c-3.3%200-6-2.7-6-6s2.7-6%206-6%206%202.7%206%206-2.6%206-6%206z%22%20fill%3D%22%234a1155%22%3E%3C%2Fpath%3E%20%3C%2Fsvg%3E');background-position: center;background-repeat: no-repeat;content: '';
}
.search-form input {
		width: 70%!important;height: 40px!important;padding: 5px 25px 5px 0;border: none;box-sizing: border-box;outline: none;
	display: block;
}

.search-form input::placeholder{color: #777777;}

 .checkbox-busi {
    border: none;
	 display: flex;
	 flex-wrap: wrap;
}
 
.checkbox-busi label {
    display: flex;
    align-items: center;
    gap: 0px 0.5em;
    position: relative;
    width: 200px;
    margin-bottom: 0.5em;
    margin-left: 10px;
    padding: 0.3em 0.5em;
    border: 1px solid #452157;
    border-radius: 25px;
    background-color: rgba(39, 0, 96, 0.06);
    cursor: pointer;
}
 
.checkbox-busi label:has(:checked) {
    background-color: #452157;
    color: #fff;
}
 
.checkbox-busi label::before {
    width: 14px;
    height: 14px;
    border-radius: 1px;
    background-color: #fff;
    content: '';
    border: solid 1px #999;
}
 
.checkbox-busi label:has(:checked)::after {
    position: absolute;
    top: 10px;
    left: 12px;
    transform: rotate(45deg);
    width: 4px;
    height: 8px;
    border: solid #452157;
    border-width: 0 2px 2px 0;
    content: '';
}
 
.checkbox-busi input {
    display: none;
}

.button-2 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 250px;
    margin:0 auto;
    padding: .5em 2em;
    border: solid 2px #452157;
    border-radius: 27px;
    background-color: #452157;
    color: #fff;
    font-weight: 500;
    font-size: 1.1em;
}
 
.button-2::after {
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
}
 
.button-2:hover {
    background-color: #001f6026;
	color: #452157;
}
.button-2:hover::after {
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #452157;
    border-right: 2px solid #452157;
    content: '';
}
@media screen and (max-width:769px) { 
/*　画面サイズが769pxまではここを読み込む　*/

/*固定ページ（TOPページ）*/
.f_herose_box {
	display: block;
	padding: 15px;
}
.f_herose_box .hero_box{
	box-sizing: border-box;
	width:100%;
	padding:10px;
} 
.free-box{
	padding: 25px 10px 10px 15px!important;
}
.free-box::after{
	content: "ー求職者へのメッセージー";
	position: absolute;
	top: -18px;
	left: 10px;
	background: #fff;
	font-size: 1.1em;
	color: #4e86b7;
	padding: 0 10px;
	font-weight:700;
}
.link_box div.box_a{
	width: calc((100% / 2) - 5px); 
	padding:20px;
}
.f_herose_box .hero_box .inner_box{padding-top:20px;}
.f_herose_box .hero_box .inner_box .hero_img {
	max-width: 262px;
	overflow: hidden;
	text-align: center!important;
	margin: 0 auto!important;
}
.f_herose_box .hero_box .inner_box .hero_img img{
	max-width: 75% !important;
	height: 200px;
	margin: 0 auto !important;
	text-align: center;
}


/*投稿ページ（詳細ページ）*/	
#heroes_box .box70,#heroes_box .box30,#heroes_box .box45 {
	box-sizing: border-box;
	width: 100%!important;
}
#heroes_box img.size-news_thumbnail {
	border-radius:10px;
	width: 70% !important;
	object-fit: cover;
}
#heroes_box .box30 img.size-full {
	border-radius:10px;
	width: 70% !important;
	max-width: 70% !important;
	min-width: 70% !important;
	max-height: 400px!important;
	min-height: 350px !important;
	object-fit: cover;
  margin: 0 auto 20px;
}
#heroes_box .sns_box{max-width:400px;margin:0 auto;}	
#heroes_box .sns_box img {
  width: 80%;
}
.contents-box1{
	padding: 38px 15px 10px!important;
}
	.search-table dd{margin-left: 0px;}
fieldset {
    margin: 0;
    padding: 0.35em 0em 0.75em;
}
.checkbox-busi label {
    display: flex;
    align-items: center;
    gap: 0px 0.5em;
    position: relative;
    width: 45%;
    margin-bottom: 1em;
    margin-left: 10px;
    padding: 0.3em 0.5em;
    border: 1px solid #452157;
    border-radius: 25px;
    background-color: rgba(0, 31, 96, 0.15);
    cursor: pointer;
}	
}