@charset "UTF-8";
/************************************

入力欄設定

************************************/
input[type="text"],
input[type="password"],
input[type="number"],
input[type="email"],
textarea {
    width: 100%;
    box-sizing: border-box;
    padding: 2px;
    height: 32px;
    border: 1px solid #ccc !important;
}

textarea {
    height: auto;
}

input[name="zip"],
select[name="pfid"],
select[name="byear"],
select[name="bmonth"],
select[name="bday"] {
    width: 21%;
    box-sizing: border-box;
    padding: 2px;
    height: 32px;
    border: 1px solid #ccc;
    background-color: #fff;
}

input[name="zip"],
select[name="pfid"] {
    width: 50%;
    background-color: #fff;
}

input[name="age"] {
    display: inline-block;
    max-width: 76px;
    margin-right: 6px;
    background-color: #fff;
}

select {
    background-color: #fff;
}

/************************************

swiper

************************************/
.swiper-container {
    margin-bottom: 10px;
}

.swiper-pagination-bullet {
    margin: 0 4px;
}

/************************************

img youtube 文字制限

************************************/
.object-fit-img {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
	object-fit: contain;
    object-position: center;
    font-family: 'object-fit: cover; object-position: center;';
}
.youtube {
    display: block;
    margin: 0 auto 10px;
    padding-top: 56.25%;
    position: relative;
    width: 100%;
}

.youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.oneline {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
}

.twoline {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/************************************

絞込み検索

************************************/
.detail_rec_box .cd_tb {
    width: 100%;
    margin-bottom: 18px;
    border-collapse: collapse;
}

.detail_rec_box .srch_btn a {
    background-color: #d0d0d0;
    line-height: 41px;
    display: block;
    width: 300px;
    margin: auto;
    border-radius: 21px;
}

/************************************

その他共通

************************************/
body {
	margin: 0;
	padding: 0;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Verdana, sans-serif;
	font-size: 14px;
	color: #333;
	line-height: 1;
	word-break: break-all;
}

#container {
	width:100%;
}

#menu {
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 900px;
	height: 35px;
}

#content {
	width: 950px;
	margin: 0 auto;
	padding: 0 0 30px;
	background-color: #fff;
}

#col1 #main {
	float: none;
	width: 950px;
}

#pankuzu {
	margin: 0 0 40px;
}

#footer {
	padding: 5px 0 0;
	background:#ec1a21;
}

a {
	color: initial;
	text-decoration: none;
	cursor: pointer;
}

a:focus {
	outline: none;
}

:focus {
	outline: initial;
}

div.btn_link {
	display: inline-block;
	margin: 0 5px;
	padding: 8px 12px;
	text-align: center;
	text-decoration: none;
	text-shadow: 0px 1px 0px #fff;
	line-height: 1;
	color: #333;
	border: 1px solid #999;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	box-shadow: 0px 1px 3px #999;
	-webkit-box-shadow: 0px 1px 3px #999;
	-moz-box-shadow: 0px 1px 3px #999;
	background: #e5e5e5;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #e5e5e5), color-stop(0.20, #ffffff));
	background: -webkit-linear-gradient(top, #ffffff 20%, #e5e5e5 100%);
	background: -moz-linear-gradient(top, #ffffff 20%, #e5e5e5 100%);
	background: -o-linear-gradient(top, #ffffff 20%, #e5e5e5 100%);
	background: -ms-linear-gradient(top, #ffffff 20%, #e5e5e5 100%);
	background: linear-gradient(top, #ffffff 20%, #e5e5e5 100%);
	cursor: pointer;
}

.header__logo {
	width: 303px;
	margin-right: 20px;
	float: left;
}

.header__content {
	width: 1100px;
	height: 124px;
	margin: 0 auto;
	box-sizing: border-box;
	position: relative;
}
.header__left {
	float: left;
	width: 64%;
}
.header__txt {
	margin: 7px 0 1px 14px;
	width: 519px;
	color: #666;
	font-size: 11px;
	font-weight: 400!important;
	line-height: 1.5;
}

.header__right {
	float: right;
	width: 341px;
	text-align: right;
}
.header-btn_date {
	position: absolute;
	right: 0;
	top: 42px;
}

.btn {
	position: relative;
	color: #fff;
	font-weight: bold;
}
.header-btn_date_state a span {
	color: #000;
	font-weight: bold;
	font-size: 17px;
	position: relative;
}
.header-btn_date>li {
	display: inline-block;
	text-decoration: none;
	background: #ec1a21;
	color: #FFF;
	font-size: 18px;
	width: 192px;
	line-height: 53px;
	text-align: center;
	font-weight: bold;
	overflow: hidden;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
	border-bottom: solid 3px #a64e4e;
	transition: .4s;
}
.header-btn_date .header-btn_date_state {
	width: 106px;
	background-color: #fff;
	border: .5px solid red;
	border-bottom: solid 3px #a64e4e;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
}
.header-btn_date>li:active {
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
    box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
    border-bottom: none;
}
.header-btn_date>li a:hover,
.header-btn_date .header-btn_date_state a:hover {
	color: initial;
	text-decoration: none;
	opacity: 0.9;
}
.header-bottom {
	background: #ec1a21;
}
.header-bottom_inner {
	width: 950px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.header-bottom_left {
	display: block;
}
.catchcopy {
	display: inline-flex;
	align-items: center;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
}
.header-bottom_right .nav {
	background-color: #ec1a21;
	margin-bottom: 0;
}
.nav_date {
	font-size: 0;
	margin-left: auto;
	margin-right: auto;
}
.nav_date>li {
	display: inline-block;
	border-top: none;
	position: relative;
}
.nav_date>li::before, .nav_date>li:last-child::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 1px;
	height: 30px;
	background-color: #fff;
}
.nav_date>li a {
	background: none;
	font-size: 19px;
	color: #fff;
	padding: 13px 24px;
	display: inline-flex;
	align-items: center;
	font-weight: bold;
	line-height: 1.2;
}
.nav_date a {
	padding: 0;
}
.nav_date>li a .nav_text {
	position: relative;
	display: inline-block;
}

.g-footer {
	position: relative;
	overflow: hidden;
	border-top: 4px solid #ec1a21;
}
.g-footer__logo {
	position: absolute;
}
.g-footer__logo img {
	width: 340px;
}

.g-footer__nav {
	padding: 50px 0 60px;
	width: 950px;
	margin: auto;
}
.g-footer__nav__inner {
	overflow: hidden;
	box-sizing: border-box;
}

.g-footer__nav__list {
	display: -webkit-flex;
	display: flex;
	float: right;
}
.g-footer__nav__item + .g-footer__nav__item {
	padding-left: 50px;
}
.g-footer__nav__item .outer {
	position: relative;
	padding-left: 17px;
	color: #000;
	font-size: 17px;
	font-weight: 700;
	line-height: 1;
	-webkit-transition: color .3s cubic-bezier(0.77, 0, 0.175, 1);
	transition: color .3s cubic-bezier(0.77, 0, 0.175, 1);
}
.g-footer__nav__item .outer:before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 0;
	height: 0;
	margin: auto;
	border-style: solid;
	border-width: 5px 0 5px 10px;
	border-color: transparent transparent transparent #ec1a21;
	-webkit-transition: -webkit-transform .4s cubic-bezier(0.77, 0, 0.175, 1);
	transition: transform .4s cubic-bezier(0.77, 0, 0.175, 1);
}

.g-footer__nav__item span:before {
	border-color: transparent transparent transparent #cbcbcb!important;
}

.g-footer__btm {
	border-top: 1px solid #e7e7e7;
}
.g-footer__btm__units {
	width: 950px;
	margin: auto;
	padding: 27px 0;
	text-align: center;
}

.g-footer__btm__anchor {
	position: absolute;
	bottom: 42px;
	right: 50px;
}
.g-footer__btm__anchor a {
	display: block;
	position: relative;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: #ec1a21;
	-webkit-transition: background .3s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition: background .3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.g-footer__btm__anchor a:before {
	content: '^';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 42px;
	height: 18px;
	margin: auto;
	font-size: 31px;
	color: #fff;
	text-align: center;
}
.g-footer__btm__anchor a:hover:before {
	color: #ec1a21;
}

.g-footer__btm__anchor a:hover {
	background: #fff;
	border: .5px solid #ec1a21;
	opacity: 1;
}

.footerMenuList {
	margin: 15px 0 0;
	padding: 0 0 0 15px;
}

.footerMenuList > li {
	margin: 15px 0;
	padding: 0;
}

#menu ul {
	width: 900px;
}

#menu ul li {
	float: left;
	padding-right: 5px;
}

#menu ul li.last {
	padding: 0;
}

#menu ul li a {
	display: block;
	width: 125px;
	height: 40px;
	margin: 0;
	overflow: hidden;
}

#menu ul li a:hover img,
#menu ul li a.now img {
	margin-top: -40px;
}

#menu ul li.top a {
	width: 120px;
}

/* _____ job tab menu _____ */
ul.tab_menu {
	margin: 0 15px;
	padding: 10px 0 0;
}

ul.tab_menu li {
	display: inline;
	margin: 0;
	padding: 0 1px;
}

ul.tab_menu li a {
	display: inline-block;
	margin: 0 0 0 5px;
	padding: 8px 12px;
	text-align: center;
	text-decoration: none;
	text-shadow: 0px 1px 0px #fff;
	line-height: 1;
	color: #333;
	border: 1px solid #999;
	border-bottom: none;
	border-radius: 5px 5px 0 0;
	-moz-border-radius: 5px 5px 0 0;
	-webkit-border-radius: 5px 5px 0 0;
	background: #e5e5e5;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #e5e5e5), color-stop(0.20, #ffffff));
	background: -webkit-linear-gradient(top, #ffffff 20%, #e5e5e5 100%);
	background: -moz-linear-gradient(top, #ffffff 20%, #e5e5e5 100%);
	background: -o-linear-gradient(top, #ffffff 20%, #e5e5e5 100%);
	background: -ms-linear-gradient(top, #ffffff 20%, #e5e5e5 100%);
	background: linear-gradient(top, #ffffff 20%, #e5e5e5 100%);
}

ul.tab_menu li a:hover,
ul.tab_menu li.now a {
	color: #fff;
	text-decoration: none;
	background: #10077a;
	text-shadow:none;
}

/*
==================================
	@ Pankuzu
==================================
*/
#pankuzu ul li {
	display: inline-block;
	margin: 0;
	padding: 5px 0 5px 10px;
	font-size: 12px;
}

#pankuzu ul li:after {
	font-size: 16px;
	line-height: 0px;
	content: " >";
	vertical-align: middle;
}

#pankuzu ul li.top {
	padding: 0;
	background: none;
}

header, footer, section, article, nav {
	display: block;
}

h1, h2, h3, h4, h5 {
	margin: 0;
	font-size: 26px;
}

p {
	margin: 0;
	padding: 0;
}

em {
	font-style: normal;
}

img {
	border: none;
    max-width: -webkit-fill-available;
}

table {
	border-collapse: collapse;
}

form {
	display: block;
	margin: 0;
	padding: 0;
	width: 100%;
}

ul {
	list-style: none;
}

ul, li {
	margin: 0;
	padding: 0;
}

ul.disc {
	margin-left: 20px;
	list-style-type: disc;
}

.txr {
	text-align: right;
}

.txl {
	text-align: left;
}

.txc {
	text-align: center;
}

.left {
	float: left;
}

.right {
	float: right;
}

img.left {
	margin: 0 20px 20px 0;
}

img.right {
	margin: 0 0 20px 20px;
}

.clr {
	clear: both;
}

hr {
	margin: 0;
	border: none;
	background-color: #fff;
	color: #fff;
}

hr.gray {
	background-color: #f2f2f2;
	color: #f2f2f2;
}

div.clr {
	font: 0/0 sans-serif;
}

button {
	border: none;
	margin: 0;
	padding: 0;
	cursor: pointer;
}

.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
* html .clearfix {
	zoom: 1;
}
/* IE6 */

*:first-child+html .clearfix {
	zoom: 1;
}
/* IE7 */

/*
==================================================================================================
	@ Font
==================================================================================================
*/
.fs {
	font-size: 0.83em;
}

.fb {
	font-size: 1.2em;
}

.fbx {
	font-size: 1.4em;
}

.fn {
	font-weight: normal;
}

.red {
	color: #c33;
}

.blue {
	color: #0f0f4c;
}

.gray {
	color: #666;
}

.his {
	margin-left: 5px;
	color: #c33;
}

.note {
	margin-left: 5px;
}

div.note {
	margin: 10px 0 0;
}

/*
==================================================================================================
	@　フォーム
==================================================================================================
*/
.fm_tb select {
	width: 112px;
	height: 27px;
}

.item_index {
	height: 30px;
	padding: 0 10px;
	color: #0f0f4c;
	font-size: 14px;
	line-height: 30px;
	border-radius: 5px 5px 0 0;
	-moz-border-radius: 5px 5px 0 0;
	-webkit-border-radius: 5px 5px 0 0;
}

#srch_box {
	margin: 0 0 10px;
}

h3.rec_title {
	margin: 10px 0;
	font-size: 1.4em;
	line-height: 1.6;
}

h1.rec_title {
	font-size: 20px;
}

.list_photo {
	float: left;
	text-align: center;
	width: 372px;
	margin: 0;
}

.list_photo .caption {
	padding: 5px;
	line-height: 1.3;
	font-size: 14px;
	background: #f1ecec;
}

.list_body {
	float: right;
}

.list_body.detail {
	width: 520px
}

.list_message {
	margin: 0;
	padding: 5px 0;
	line-height: 1.6;
}

.list_message p.cont {
	margin: 15px 0 0;
	text-align: right;
}

.detail_header {
	position: relative;
	padding: 0 0 15px;
}

.section {
	margin-bottom: 10px;
}

.list_btn {
	display: inline-block;
	height: 30px;
	margin: 0 15px 0 0;
	right: 1px;
	bottom: 17px;
}

.line_str {
	margin-left: 1em;
}

/*
=======================================
	@ Pager
=======================================
*/
.pager_box {
	position: relative;
	margin: 20px 0;
	padding: 0 10px 5px;
	height: 18px;
	border-bottom: 2px dotted #ccc;
}

.pager_box strong {
	font-size: 1.2em;
}

.pager_box em {
	margin:0 10px;
}

.pager_box p {
	position: absolute;
	top: 0;
	right: 10px;
	margin: 0;
	text-align: center;
}

/*
=======================================
	@ Box
=======================================
*/
.gray_box {
	padding: 4px;
	background: #fff;
}

.gray_box.detail {
	width: 960px;
	margin: 1rem auto;
}

.nophoto {
	width: 100px;
	height: 75px;
	line-height: 75px;
	background: #e5e5e5;
	color: #999;
	text-align: center;
	font-size: 10px;
}

a .nophoto,
a:hover .nophoto {
	color: #999;
	text-decoration: none;
}

/*
=======================================
	@ Title
=======================================
*/
.contents_title {
	line-height: 28px;
	font-size: 29px;
	text-align: center;
}
.contents_title.mtop {
	margin-top:20px;
}

.contents_title.posleft {
	margin: 0 0 10px;
}

.index_title {
	margin: 0 0 10px;
	font-size: 1.2em;
	line-height: 1;
}

.text_box .index_title p {
	margin: 0;
}

.job_title {
	margin: 0;
	font-size: 1.2em;
	color: #666;
	font-weight: bold;
}

.job_title p {
	display: inline-block;
	margin: 0;
	padding: 15px 0 0;
	min-height: 25px;
}

.job_title img {
	margin-right: 15px;
	margin-bottom: -5px;
}

.list_tb {
	border: 1px solid #efefef;
	margin: 0 0 5px;
	background: #fff;
}

.list_tb td {
    padding-left: 5px;
}

.list_tb td,
.list_tb th {
	border-bottom: 1px solid #efefef;
	line-height: 27px;
}

.list_tb tr:last-child td,
.list_tb tr:last-child th {
    border-bottom: none;
}

.list_tb th {
	width: 120px;
	font-weight: normal;
	text-align: center;
    background: #f2f2f2;
    color: #5a5a5a;
}

.fm_tb {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #999;
}

.fm_tb th, .fm_tb td {
	padding: 15px 10px;
	border: 1px solid #999;
	line-height: 1.5;
}

.fm_tb th {
	text-align: center;
	font-weight: normal;
	background: #f8f9fa;
	color: #333;
	width: 212px;
}

.fm_tb tr.txc th {
	text-align: center;
}

.fm_tb td.index {
	padding: 10px;
	color: #fff;
	background: #159915;
}

.cd_tb {
	width: 100%;
	margin: 5px 0 18px;
	border-collapse: collapse;
}

.cd_tb tr {
	border-bottom: 1px solid #eee;
}

.cd_tb th {
    width: 25%;
	text-align: left;
	font-weight: normal;
	color:#424242;
}

.cd_tb th:before {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 6px 10.4px;
    border-color: transparent transparent transparent #666;
    line-height: 0px;
    _border-color: #000000 #000000 #000000 #11077a;
    _filter: progid:DXImageTransform.Microsoft.Chroma(color='#000000');
    display: inline-block;
    padding-right: 10px;
}

.cd_tb th span {
    width: 175px;
    display: inline-flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
}

.cd_tb th span a {
    background-color: #afafaf;
    padding: 5px 6px;
    color: #fff;
}

.cd_tb td {
	padding: 10px;
	line-height: 1.5;
}

.cd_tb td span {
    color: #d8d8d8;
}

.check_clr a {
    margin-top: 9px;
    display: block;
    color: gray;
}

/* .bs_tb {
	width: 100%;
	margin: 5px 0;
	border-collapse: collapse;
	border: 1px solid #999;
}

.bs_tb th, .bs_tb td {
	padding: 15px 10px;
	border-bottom: 1px solid #999;
}

.bs_tb th {
	text-align: left;
	font-weight: normal;
	background: #f2f2f2;
} */

.srch_btn {
	text-align: center;
}
/*
------------------------------
	+ image
------------------------------
*/
.img_tb {
	margin: 0 auto;
}

.img_tb td {
	width: 220px;
	padding: 10px;
	vertical-align: top;
	border-bottom: 1px solid #ccc;
}

.img_tb td .photo {
	float: none;
	width: 220px;
	height: 165px;
	overflow: hidden;
	text-align: center;
}

/*
-------------------------------
	checkbox list
-------------------------------
*/
ul.ck_list {
	margin: 0 0 15px;
}

ul.ck_list:last-of-type {
	margin: 0;
}

ul.ck_list li {
	float: left;
	width: 200px;
	padding: 3px 0 0;
}

ul.ck_list.wide li {
	width: 250px;
}

ul.ck_list.double li {
	width: 400px;
}

ul.ck_list.small li {
	width: 170px;
}

ul.ck_list li.item_index {
	float: none;
	width: auto;
	padding: 3px;
	border-top: 1px dotted #ccc;
	border-bottom: 1px dotted #ccc;
	font-weight: bold;
}

ul.ck_list li.flat {
	float: none;
	width: auto;
}

/*
=======================================
	@ Formボタン
=======================================
*/
.fm_btn {
	margin: 20px 0;
	text-align: center;
}

.submit_btn {
	width: 200px;
	margin: 1rem auto 0;
	background: #ffa800;
	line-height: 42px;
	box-shadow: 0px 2px 2px #c7c7c7;
	border-bottom: solid 3px #ffa048;
	text-align: center;
	border: none;
	color: #fff;
	font-size: 19px;
	letter-spacing: 2px;
}

.retouch_btn {
	width: 200px;
	margin: 1rem auto 0;
	background: #666;
	line-height: 42px;
	box-shadow: 0px 2px 0px #999999;
	border-bottom: solid 3px #888686;
	text-align: center;
	border: none;
	color: #fff;
	font-size: 19px;
	letter-spacing: 2px;
}

.submit_btn:active,
.retouch_btn:active {
	-webkit-transform: translateY(2px);
	transform: translateY(2px);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
	border-bottom: none;
}

.submit_btn:focus,
.retouch_btn:focus {
	outline-color: initial;
}

/*
------------------
	error
------------------
*/
.alert-danger {
	text-align: center;
	background: #fcb7b7;
	color: #c20005;
	line-height: 30px;
}

.err {
	position: relative;
	margin: 3px;
}

.err em {
	color: #ff0000;
	text-shadow: none;
	font-size: 14px;
}

span.err em {
	top: 0;
	left: 2px;
}

/*
=======================================
	@ list & detail page
=======================================
*/
.sv_item_box {
	margin: 15px 0 3px;
}

ul.sv_item {
	margin-left: -10px;
}
.detail_box ul.sv_item {
	margin-left: -10px;
	width: 934px;
}

ul.sv_item li {
	float: left;
	margin: 0 0 5px 10px;
}

ul.sv_item li .noicon {
	display: inline-block;
	padding: 5px 10px;
	color: #fff;
	text-align: center;
	background: #4529b0;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

ul.sv_item li.rt {
	margin-right: 0;
}

.no_data {
	margin: 40px 20px 0;
	color: #666;
	padding-bottom: 200px;
	font-size: 14px;
	line-height: 1.6;
}

/*
------------------
	Thumbnail 1
------------------
*/
.thumb {
	width: 260px;
	margin: 0;
	padding: 14px;
	border: 1px solid #ccc;
}

.thumb .photo {
	width: 260px;
	max-height: 195px;
	margin: 0;
	overflow: hidden;
	text-align: center;
}

.thumb .title {
	margin: 10px 0 0;
	padding: 0 5px;
	line-height: 1.3;
	font-weight: bold;
}

.thumb .caption {
	margin: 10px 0 0;
	padding: 0 5px;
	line-height: 1.3;
	color: #666;
}

.map {
	margin: 20px 0;
	width: 100%;
	height: 400px;
}

/* TOP注目求人 */
.rec_title {
	margin-bottom: 7px;
	font-weight: bold;
}
.detail_rec_box {
	font-size: 15px;
	display: flex;
	flex-wrap: wrap;
}

.rec_area {
	font-size: 14px;
	font-weight: normal;
}

.detail_rec_box > a {
	display: flex;
	width: 46%;
	margin: 1%;
	padding: 6px;
    box-shadow: 0 2px 3px 0 #d6d6d6c9;
}

.rec_list {
	display: flex;
	margin: 0;
}

.rec_list dt {
	width: 42%;
}

.rec_list dd {
	width: 72%;
	margin: 0;
	padding-left: .5rem;
}

.rec_photo {
	width: 100%;
}

.rec_photo a:hover {
	text-decoration: none;
}

.detail_rec_box .rec_photo img {
	width: 100% !important;
	vertical-align: bottom;
}

/* mailform */
.form_error_msg {
	margin: 10px 0;
	padding: 10px 0;
	color: #fff;
	background: #ea0000;
	text-align: center;
}

/*
==================================
	@ Detail
==================================
*/
.detail_page {
	position: relative;
}

.info_box {
	padding: 15px 14px 0;
}

/*
=======================================
	@ normal page
=======================================
*/
.text_box {
	margin: 0 0 30px;
	padding: 5px 0;
	line-height: 1.5;
	font-size: 15px;
}

.text_box p {
	margin: 1.2em 0;
}

.text_box_bs {
	padding: 5px;
	line-height: 1.5;
	background: #f7f6f6;
	margin: 0 10px;
}

/*
=======================================
	@ Box , Parts etc.
=======================================
*/
.privacy_frame {
	height: 169px;
	padding: 10px 0;
	text-align: left;
	border-top: 1px solid #ccc;
	overflow: auto;
	border: 1px solid gray;
}

.radio_line label {
	margin-right: 20px;
}

.radio_line label:last-of-type {
	margin-right: 0;
}

.form_title {
	margin: 15px 0;
	text-align: center;
}

.send_msg {
	padding: 0 40px;
	line-height: 1.6;
}

/*
----------------------------
	rs_msg
----------------------------
*/
#rs_msg {
	display: none;
	position: absolute;
	border: 5px solid #fff;
	z-index: 200;
	box-shadow: 0px 5px 10px #666;
	-webkit-box-shadow: 0px 5px 10px #666;
	-moz-box-shadow: 0px 5px 10px #666;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}

#rs_msg p {
	margin: 0;
	padding: 30px;
	color: #333;
	border: 1px solid #999;
	background: #f2f2f2;
	font-size: 1.4em;
	font-weight: bold;
	text-align: center;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}

#rs_msg p em {
	color: #c33;
}

#rs_msg a {
	position: absolute;
	top: 5px;
	right: 5px;
	text-decoration: none;
	font-size: 0.83em;
}

/*
----------------------------
	search contents
----------------------------
*/
li.srchitem_li {
	list-style:none;
	float:left;
	padding-right:10px;
}

li.srchitem_li_w {
	list-style:none;
	float:left;
	margin-right: 17px;
}

/* CSS製三角 */
.triangle_pos {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 0 6px 10.4px;
	border-color: transparent transparent transparent #666;
	line-height: 0px;
	_border-color: #000000 #000000 #000000 #11077a;
	_filter: progid:DXImageTransform.Microsoft.Chroma(color='#000000');
	display: inline-block;
	padding-right: 10px;
}

.dashed_border {
	border-bottom: dashed 1px #979797;
}

.detail_btns {
	width: 510px;
	overflow: hidden;
	margin: 0 auto;
	padding: 30px 0;
}

.detail_apply_btn a {
	display: block;
	width: 242px;
	text-decoration: none;
	background: #ff9900;
	color: #FFF;
	font-size: 18px;
	line-height: 53px;
	text-align: center;
	font-weight: bold;
	overflow: hidden;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
	border-bottom: solid 3px #ec6d00;
	transition: .4s;
}

.detail_apply_btn a:active {
	-webkit-transform: translateY(2px);
	transform: translateY(2px);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
	border-bottom: none;
}

.detail_btns_l {
	width: 242px;
	margin: 0 auto;
	float: left;
}

.detail_btns_l .keep_btn a {
	display:block;
	width:242px;
	text-decoration: none;
	background: #f0d817;
	color: #FFF;
	font-size: 18px;
	line-height: 53px;
	text-align: center;
	font-weight: bold;
	overflow: hidden;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
	border-bottom: solid 3px #c2ba79;
	transition: .4s;
}

.detail_btns_l .keep_btn a:active {
	-webkit-transform: translateY(2px);
	transform: translateY(2px);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
	border-bottom: none;
}

.detail_btns_l .save_btn a {
	display:block;
	width:242px;
	text-decoration: none;
	background: #edbb02;
	color: #FFF;
	font-size: 18px;
	line-height: 53px;
	text-align: center;
	font-weight: bold;
	overflow: hidden;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
	border-bottom: solid 3px #af9d5b;
	transition: .4s;
}

.detail_btns_l .save_btn a:active {
	-webkit-transform: translateY(2px);
	transform: translateY(2px);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
	border-bottom: none;
}

.detail_btns_r {
	width: 242px;
	margin: 0 auto;
	float: right;
}

.job-pc .detail_btns_r .keep_btn a {
	display:block;
	width:242px;
	text-decoration: none;
	background: #f0d817;
	color: #FFF;
	font-size: 18px;
	line-height: 53px;
	text-align: center;
	font-weight: bold;
	overflow: hidden;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
	border-bottom: solid 3px #c2ba79;
	transition: .4s;
}

.job-pc .detail_btns_r .keep_btn a:active {
	-webkit-transform: translateY(2px);
	transform: translateY(2px);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
	border-bottom: none;
}

.job-pc .detail_btns_r .save_btn a {
	display:block;
	width:242px;
	text-decoration: none;
	background: #edbb02;
	color: #FFF;
	font-size: 18px;
	line-height: 53px;
	text-align: center;
	font-weight: bold;
	overflow: hidden;
	box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
	border-bottom: solid 3px #af9d5b;
	transition: .4s;
}

.job-pc .detail_btns_r .save_btn a:active {
	-webkit-transform: translateY(2px);
	transform: translateY(2px);
	box-shadow: 0 0 1px rgba(0, 0, 0, 0.15);
	border-bottom: none;
}

.detail_box {
	margin-bottom: 25px;
}

.detail_index1 {
	color: #454545;
	font-size: 20px;
	text-align: center;
	margin-bottom: 10px;
}

.page_contents2 {
	padding: 20px 15px;
	font-size: 13px;
}

.detail_box {
	background-color: #fff;
}

.top-box {
	border: 1px solid #efefef;
    border-top: 4px solid #fa7563;
    padding: 5px 8px 13px;
}

/*
----------------------------
	追加CSS　footer
----------------------------
*/
.g-footer{
	background: #F8F8F8;
	border-top: none!important;
}
.footer_inner{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.list_box{
	display: flex;
	gap: 60px;
    line-height: 2.5em;
	margin-top: 20px;
}
.company_info{
	display: grid;
}
.company_info p{
	font-size: 22px;
	font-weight: bold;
	display: inline-block;
	/* margin-top: 20px; */
	display: flex;
	align-items: baseline;
}
.company_info ul{
	/* margin-top: 80px; */
	line-height: 1.5em;
}
.company_info p::before{
	content: 'Tel.';
	display: block;
	font-size: 14px;
}

/*
----------------------------
	astate追加CSS　header
----------------------------
*/
.header_inner{
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 65px;
}
.header_list{
	display: flex;
    gap: 12px;
    font-size: 14.5px;
	font-weight: bold;
}
.header__content {
	height: 65px!important;
}
.header_list li{
	padding: 10px;
}
.header_list li:last-of-type{
	background: #878686;
}
.header_list li:last-child{
	color:#fff;
}

/* あわジョブから輸入　求人詳細・画像レイアウト Slick */
.job__main-image a {
    display: block;
    margin: 0;
    padding: 0;
}
.job__main-image a:hover {
    opacity: 0.65;
}

.job__main-image img {
    max-width: 480px;
    max-height: 266px;
    vertical-align: middle;
}

.job__main-image {
	width: 410px;
}


.job__main-image .nav_slider img {
	width: 94px;
	min-width: 94px;
	margin: 3px;
}

.slick-prev:before,
.slick-next:before {
    color: #000;
}

@media screen and (min-width: 1650px) {
	.joblist_main aside {
		right: 15vw!important;
	}
}

/************************************

ミライトーチ・バナー

************************************/
.hop-banner {
	display: block;
	width: 35%;
	margin: 0 auto;
}