/* ==========================================================
 【 レイアウト用CSS 】

 base setting - if Over Write -
 container - if Over Write -
 breadcrumb
 wrap
 contents
 main
 keyvisual
 pagetitle
 pagenav
 pagetop
 sidebar
 snav

 ========================================================== */


/* ----------------------------------------
	base setting - Over Write -
---------------------------------------- */
body {
}
@media screen and (max-width: 767px)  {
}

/* link
---------------------------------------- */
a {
}
a:hover {
}


/* img
---------------------------------------- */
img {
}

/* other
---------------------------------------- */

/* trans_img */
.hover_opacity:hover {
}


/* ----------------------------------------
	container - Over Write -
---------------------------------------- */
.container {
}


/* ----------------------------------------
	header - Over Write -
---------------------------------------- */
.header {
}

/* ----------------------------------------
	gnav - Over Write -
---------------------------------------- */
.gnav_sublists {
	z-index: 9;
}


/* ----------------------------------------
	breadcrumbs
---------------------------------------- */
.breadcrumb {
	padding: 0;
}

.breadcrumb ol {
	padding-top: 15px;
	margin-bottom: 30px;
}
@media screen and (max-width: 767px)  {
	.breadcrumb  ol {
		padding-top: 2.34375%;
		margin-bottom: 5.46875%;
	}
}

/*  breadcrumbs_lists
---------------------------------------- */
.breadcrumb ol li {
	line-height: 1.2;
	font-size: .88em;
}
@media screen and (max-width: 767px)  {
	.breadcrumb ol li {
		line-height: 1.2;
		font-size: .70em;
	}
}

.breadcrumb ol li {
	display: inline;
}
/* .breadcrumb ol li:before {
	content: " >";
	display: inline;
	margin: 0 5px;
} */
.breadcrumb ol li:first-child:before{
	display: none;
}
@media screen and (max-width: 767px)  {
	.breadcrumbs ol li:before {
		margin: 0 2px;
	}
}

.breadcrumb ol li a {
	color: #595757;
}
.breadcrumb ol li span {
	color: #000;
}

/* skin */
@media screen and (max-width: 767px)  {
	.breadcrumbs.skin_staff {
		padding-top: 15px;
		margin-bottom: 30px;
	}
	.breadcrumbs.skin_staff .breadcrumbs_lists {
		font-size: .88em;
	}
	.breadcrumbs.skin_staff .breadcrumbs_lists .item_list:before {
		content: " >";
		display: inline;
		margin: 0 5px;
	}
	.breadcrumbs.skin_staff .breadcrumbs_lists .item_list:first-child:before{
		display: none;
	}
}


/* ----------------------------------------
	wrap
---------------------------------------- */
.wrap {
	width: 100%;
	overflow: hidden;
}
@media screen and (max-width: 767px)  {
	.wrap {
		padding-top: 57px;
	}
}

/*  skin
---------------------------------------- */
@media screen and (max-width: 767px)  {
	.wrap.skin_staff {
		padding-top: 0;
	}
}

/* anchor
---------------------------------------- */
@media screen and (max-width: 767px)  {
	#anchor_01,
	#anchor_02,
	#anchor_03,
	#anchor_04,
	#anchor_05 {
		padding-top: 57px;
		margin-top: -57px;
	}
}


/* ----------------------------------------
	contents
---------------------------------------- */
.contents {}

/* skin
---------------------------------------- */
/* staff */
.contents.skin_staff .contents_inner {
	padding: 43px 52px;
	overflow: hidden;
	border: 1px solid #d7d7d7;
	font-size: .94em;
	margin-top: 45px;
	margin-bottom: 45px;
}
@media screen and (max-width: 767px)  {
	.contents.skin_staff .contents_inner {
		box-sizing: border-box;
		width: 100%;
	}
}

/* recruit */
.contents.skin_recruit .contents_inner {
	padding: 43px 52px;
	overflow: hidden;
	border: 1px solid #d7d7d7;
	font-size: .94em;
	margin-top: 45px;
	margin-bottom: 45px;
}
@media screen and (max-width: 767px)  {
	.contents.skin_recruit .contents_inner {
		padding: 4.6875%;
		margin-top: 6.25%;
		margin-bottom: 6.25%;
	}
}

/* ----------------------------------------
	main
---------------------------------------- */
.main {
	float: right;
	width: 720px;
	padding: 25px;
	border: 1px solid #d7d7d7;
	font-size: .94em;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-top: 45px;
	margin-bottom: 45px;
}
@media screen and (max-width: 767px)  {
	.main {
		float: none;
		width: auto;
		padding: 3.125%;
		border: 0;
		font-size: 0.935em;
		margin-top: 6.25%;
		margin-bottom: 6.25%;
	}
}

/* main_with_title */
.main_with_title {
	float: right;
	width: 720px;
	border: 1px solid #d7d7d7;
	font-size: .94em;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-top: 45px;
	margin-bottom: 45px;
}
@media screen and (max-width: 767px)  {
	.main_with_title {
		float: none;
		width: auto;
		border: 0;
		font-size: .88em;
		margin-top: 6.25%;
		margin-bottom: 6.25%;
	}
}

/* main_noborder */
.main_noborder {
	float: right;
	width: 720px;
	font-size: .94em;
	margin-top: 45px;
	margin-bottom: 45px;
}
@media screen and (max-width: 767px)  {
	.main_noborder {
		float: none;
		width: auto;
		font-size: .88em;
		margin-top: 6.25%;
		margin-bottom: 6.25%;
	}
}

/* main_full */
.main_full {
	padding: 25px 60px;
	border: 1px solid #d7d7d7;
	font-size: .94em;
	margin-top: 45px;
	margin-bottom: 45px;
}
@media screen and (max-width: 767px)  {
	.main_full {
		padding: 3.125%;
		font-size: .75em;
		border: 0;
		margin-top: 6.25%;
		margin-bottom: 6.25%;
	}
	.main_full.container {
		margin-right: 4.6875%;
		margin-left: 4.6875%;
	}
}

.main_full_with_title {
	border: 1px solid #d7d7d7;
	font-size: .94em;
	margin-top: 45px;
	margin-bottom: 45px;
}
@media screen and (max-width: 767px)  {
	.main_full_with_title {
		font-size: .75em;
		border: 0;
		margin-top: 6.25%;
		margin-bottom: 6.25%;
	}
	.main_full_with_title.container {
		padding-left: 0;
		padding-right: 0;
		margin-right: 4.6875%;
		margin-left: 4.6875%;
	}
}

/* skin
---------------------------------------- */
/* recruit */
.main.skin_recruit {
	width: 650px;
	padding: 0;
	border: 0;
	margin-top: 0;
}
.main_full.skin_recruit {
	padding: 0;
	border: 0;
	margin-top: 0;
	margin-bottom: 0;
}
@media screen and (max-width: 767px)  {
	.main.skin_recruit {
		width: auto;
	}
}

/* staff */
.main.skin_staff {
	width: 650px;
	padding: 0;
	border: 0;
	margin-top: 0;
}
.main_full.skin_staff {
	padding: 0;
	border: 0;
	margin-top: 0;
	margin-bottom: 0;
}
@media screen and (max-width: 767px)  {
	.main.skin_staff {
		float: right;
		font-size: .94em;
		margin-bottom: 45px;
	}
	.main_full.skin_staff {
		font-size: .94em;
	}
}

/* ----------------------------------------
	keyvisual
---------------------------------------- */
.keyvisual {
	background: url(../../images/pc/common/bg_title.png) 0 0 repeat !important;
}

/* -- keyvisual sp_only -- */
.keyvisual.sp_only {
	display: none;
}
@media screen and (max-width: 767px)  {
	.keyvisual {
		background: #ffffff !important;
	}
	/* -- keyvisual pc_only -- */
	.keyvisual.pc_only {
		display: none;
	}
	/* -- keyvisual sp_only -- */
	.keyvisual.sp_only {
		display: block;
	}
	.keyvisual .container {
		padding-left: 0;
		padding-right: 0;
	}
}

/* skin */
@media screen and (max-width: 767px)  {
	.keyvisual.skin_staff {
		background: url(../../images/pc/common/bg_title.png) 0 0 repeat;
	}
}

/* keyvisual_slider
---------------------------------------- */
@media screen and (max-width: 767px)  {
	.keyvisual_slider .item_slide span {
		display: block;
	}
}

/* ----------------------------------------
	pagetitle
---------------------------------------- */
.page-title {
	width: 970px;
	padding-bottom: 30px;
	padding-left: 30px;
	border-bottom: 3px solid #e975ba;
	line-height: 1.3;
	font-size: 1.875em;
	letter-spacing: .1em;
	background: url(../../images/sp/common/icon_p_title.png) 0 9px no-repeat;
	-webkit-background-size: auto 20px;
	background-size: auto 20px;
}

@media screen and (max-width: 767px)  {
	.page-title {
		padding-left: 30px;
		padding-right: 10px;
		padding-bottom: 15px;
		border-bottom: 3px solid #e975ba;
		font-size: 1.25em;
		letter-spacing: .05em;
		background-position: 15px 3px;
	}
}



/*  skin
--------------------------------------------- */
@media screen and (max-width: 767px)  {
	.pagetitle.skin_staff {
		padding-bottom: 30px;
		padding-left: 30px;
		border-bottom: 3px solid #e975ba;
		line-height: 1.3;
		font-size: 1.875em;
		letter-spacing: .1em;
		background: url(../../images/sp/common/icon_p_title.png) 0 9px no-repeat;
		-webkit-background-size: auto 20px;
		background-size: auto 20px;
	}
}


/* ----------------------------------------
	pagenav
---------------------------------------- */
.pagenav {}

/* pagenav_lists
---------------------------------------- */
.pagenav_lists {}

/* item_list */
.pagenav_lists .item_list {}


/* ----------------------------------------
	pagetop
---------------------------------------- */
.pagetop_site {
	clear: both;
	text-align: right;
	margin-bottom: 25px;
}
/* skin */
.pagetop_site.mgt_40 {
	margin-top: 40px;
}
@media screen and (max-width: 767px)  {
	.pagetop_site {
		display: none;
	}
	.pagetop_site.skin_staff {
		display: block;
	}
}

/* a */
.pagetop_site a {
	display: inline-block;
	padding-left: 25px;
	background: url(../../images/sp/common/arrow_totop.png) 0 50% no-repeat;
	-webkit-background-size: 16px 16px;
	background-size: 16px 16px;
}



/* ----------------------------------------
	sidebar
---------------------------------------- */
.sidebar {
	float: left;
	width: 235px;
	padding: 0 20px;
	border: 5px solid #d7d7d7;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin-top: 45px;
	margin-bottom: 45px;
}
@media screen and (max-width: 767px)  {
	.sidebar {
		float: none;
		width: auto;
		padding: 0 0;
		border: 0;
		margin-top: 6.25%;
		margin-bottom: 6.25%;
	}
}

/* sidebar_titl
---------------------------------------- */
.sidebar_title {
	padding: 20px 10px 0;
	color: #008db8;
	font-size: 1.0625em;
	background: url(../../images/pc/common/line.png) 0 0 no-repeat;
	-webkit-background-size: 100% 5px;
	background-size: 100% 5px;
	margin-top: -5px;
	margin-bottom: 10px;
}
.sidebar_title a:hover{ text-decoration:none;}
@media screen and (max-width: 767px)  {
	.sidebar_title {
		padding: 0 3.125% 0;
		background: none;
		border-left: 2px solid #008db8;
		line-height: 1;
		font-size: 1.08em;
		font-weight: bold;
		margin-top: 10px;
	}
}

/* skin
---------------------------------------- */
/* staff */
.sidebar.skin_staff {
	width: 200px;
	padding: 1px;
	border: 1px solid #e8e8e8;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	margin-top: 0;
	margin-bottom: 0;
}

/* recruit */
.sidebar.skin_recruit {
	width: 200px;
	padding: 1px;
	border: 1px solid #e8e8e8;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	border-radius: 0;
	margin-top: 0;
}

/* ----------------------------------------
	snav
---------------------------------------- */
.snav {
}

/* snav_head
---------------------------------------- */
.snav_title {
	padding: 5px 20px;
	color: #fff;
	font-size: 1.07em;
	font-weight: bold;
	background-color: #80c6db;
}
@media screen and (max-width: 767px)  {
	.snav_title {
		padding: 3px 3.125%;
		font-size: 1.0em;
	}
	.snav_title.align_center {
		text-align: left!important;
	}
}

/* snav_lists
---------------------------------------- */
.snav_lists {
	padding-bottom: 5px;
	font-size: 1.0625em;
}
@media screen and (max-width: 767px)  {
	.snav_lists {
		padding-top: 5px;
		padding-bottom: 5px;
		font-size: .88em;
		overflow: hidden;
	}
}

/* item_list */
.snav_lists .item_list {
	padding: 17px 0 15px;
	border-top: 1px solid #c9c9c9;
	line-height: 1.2;
}
.snav_lists .item_list:first-child {
	border-top: 0;
}
.snav_lists .item_list a {
	display: block;
	padding: 0 10px 0 30px;
	background: url(../../images/pc/common/side_arrow_off.png) 10px 4px no-repeat;
}
.snav_lists .item_list a:hover {
	color: #595757;
	text-decoration: none;
	background-image: url(../../images/pc/common/side_arrow_on.png);
}
@media screen and (max-width: 767px)  {
	.snav_lists .item_list {
		float: left;
		width: 45%;
		padding: 10px 0 10px;
		border: 0;
		line-height: 1.2;
		margin-left: 5%;
	}
	.snav_lists .item_list a {
		display: block;
		padding: 0 10px 0 30px;
		border: 0;
		background-position: 10px 1px;
	}
}


/* skin
---------------------------------------- */
/* double */
.snav.skin_double {
	margin-bottom: 15px;
}
.snav.skin_double .snav_lists .item_list {
	border-top: 0;
	border-bottom: 1px solid #c9c9c9;
}
@media screen and (max-width: 767px)  {
	.snav.skin_double .snav_lists .item_list {
		border: 0;
	}
}

/* recruit */
.sidebar.skin_recruit {
	margin-bottom: 0;
}
.sidebar.skin_recruit .snav {
	padding: 8px;
	background-color: #f8f8f8;
}
.sidebar.skin_recruit .snav_lists {
	padding-bottom: 0;
	overflow: hidden;
	border: 1px solid #e3e3e3;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	background-color: #fff;
}
.sidebar.skin_recruit .item_list {
	padding: 0;
	border-top-color: #a8a8a8;
	border-top-style: dotted;
}
.sidebar.skin_recruit .item_list a {
	padding: 17px 18px 15px;
	background: none;
}
.sidebar.skin_recruit .item_list.skin_current a,
.sidebar.skin_recruit .item_list a:hover {
	color: #0391b7;
	background: #eef7fb url(../img/pc/recruit/common/arrow_sidemenu.png) 152px 20px no-repeat;
}

/* staff */
.sidebar.skin_staff .snav {
	padding: 8px;
	background-color: #f8f8f8;
}
.sidebar.skin_staff .snav_lists {
	font-size: 1.0625em;
	padding-bottom: 0;
	overflow: hidden;
	border: 1px solid #e3e3e3;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	background-color: #fff;
}
.sidebar.skin_staff .item_list {
	padding: 0;
	border-top-color: #a8a8a8;
	border-top-style: dotted;
}
.sidebar.skin_staff .item_list a {
	padding: 17px 18px 15px;
	background: none;
}
.sidebar.skin_staff .item_list.skin_current a,
.sidebar.skin_staff .item_list a:hover {
	color: #0391b7;
	background: #eef7fb url(../img/pc/recruit/common/arrow_sidemenu.png) 152px 20px no-repeat;
}
@media screen and (max-width: 767px)  {
	.sidebar.skin_staff .snav_lists {
		padding-top: 0;
	}
	.sidebar.skin_staff .snav_lists .item_list {
		float: none;
		width: auto;
		border-width: 1px;
		margin-left: 0;
	}
	.sidebar.skin_staff .snav_lists .item_list:first-child {
		border-top: 0;
	}
}

/* recruit staff sidebar
-------------------------------------*/
.staff_sidebar {
	position: relative;
	width: 207px;
	margin-top: 22px;
}
.staff_sidebar .item_lists {
	position: relative;
	z-index: 10;
}
.staff_sidebar .item_lists:before,
.staff_sidebar .item_lists:after {
	content: "";
	position:absolute;
	z-index: 100;
	display: block;
	width: 100%;
	height: 7px;
	overflow: hidden;
	background-position: 0 0;
	background-repeat: no-repeat;
}
.staff_sidebar .item_lists:before {
	top: -1px;
	background-image: url(../img/pc/recruit/staff/common/nav_bg_top.gif);
}
.staff_sidebar .item_lists:after {
	bottom: 0;
	background-image: url(../img/pc/recruit/staff/common/nav_bg_bottom.gif);
}
.staff_sidebar .item_list {
	padding: 0;
	margin: 0;
}
.staff_sidebar .item_list a {
	display: block;
	background-position: 0 center;
	background-repeat: no-repeat;
	font-size: 105%;
	color: #333;
	text-decoration: none;
	line-height: 1.2em;
}
.staff_sidebar .item_list a:hover,
.staff_sidebar .item_list .skin_current {
	background-position: 100% center;
	color:#fff;
}
.staff_sidebar .item_list .skin_blue {
	background-image: url(../img/pc/recruit/staff/common/nav_bg_01.gif);
}
.staff_sidebar .item_list .skin_pink {
	background-image: url(../img/pc/recruit/staff/common/nav_bg_02.gif);
}
.staff_sidebar .item_list .skin_orange {
	background-image: url(../img/pc/recruit/staff/common/nav_bg_03.gif);
}
.staff_sidebar .item_list .item_link_inner {
	display: block;
	padding: 10px 10px 10px 22px;
	margin: 0 11px 0 2px;
	border-bottom:dotted 1px #999;
}
.staff_sidebar .item_list .item_position {
	display: block;
	font-size: 1.015em;
}
.staff_sidebar .item_list .item_year {
	display: block;
	font-size: 0.76em;
}
/*  renewal recruit2019 sidebar
--------------------------------------------- */
.sidebar.skin_recruit_renewal {
	border: none;
	width: 202px;
	padding: 0;
	margin: 0;
}
@media screen and (max-width: 767px)  {
	.sidebar.skin_recruit_renewal {
		width: 100%;
	}
}

/*  sidenav-recruit-upper
--------------------------------------------- */
.sidenav-recruit-upper {
	margin-bottom: 20px;
}
.sidenav-recruit-upper_title {
	font-size: 1.333333em;
	letter-spacing: .2em;
	text-align: center;
	border-bottom: 4px solid #0086b1;
	padding-bottom: 5px;
	margin-bottom: 25px;
}
.sidenav-recruit-upper_lists {
	padding: 0 10px;
}
.sidenav-recruit-upper_lists .item_list {
	font-size: 1.066em;
}
.sidenav-recruit-upper_lists .item_list:nth-child(n+2) {
	margin-top: 8px;
}
.sidenav-recruit-upper_lists .item_list a {
	position: relative;
	display: inline-block;
	letter-spacing: .15em;
	padding-left: 1em;
}
.sidenav-recruit-upper_lists .item_list a:before {
	content: "";
	position: absolute;
	left: 0;
	top: 7px;
	width: 9px;
	height: 12px;
	background: url(../../images/pc/recruit/common/icon_arrow_blue.png) 0 0 no-repeat;
	-webkit-background-size: 100%;
	background-size: 100%;
}
@media screen and (max-width: 767px)  {
	.sidenav-recruit-upper {
		margin-bottom: 10px;
	}
	.sidenav-recruit-upper_title {
		width: 100%;
		font-size: 1.333333em;
		border-bottom: 2px solid #0086b1;
		padding-bottom: 2.5px;
		margin-bottom: 25px;
	}
	.sidenav-recruit-upper_lists {
		padding: 0;
		overflow: hidden;
	}
	.sidenav-recruit-upper_lists .item_list {
		float: left;
		font-size: 0.67em;
		box-sizing: border-box;
		width: calc((100% - 13px) / 2);
		border: 1px solid #80c6db;
	}
	.sidenav-recruit-upper_lists .item_list:nth-child(n+2) {
		margin-top: 0;
	}
	.sidenav-recruit-upper_lists .item_list:nth-child(even) {
		float: right;
	}
	.sidenav-recruit-upper_lists .item_list:nth-child(n+3) {
		margin-top: 1.7%;
	}
	.sidenav-recruit-upper_lists .item_list a {
		box-sizing: border-box;
		display: block;
		font-size: 11px !important;
		padding: 3.125% 6.25%;
	}
	.sidenav-recruit-upper_lists .item_list a:before {
		content: "";
		position: relative;
		top: 2px;
		display: inline-block;
		width: 13px;
		height: 13px;
		background: url(../../images/pc/recruit/common/arrow_sidemenu.png) 0 0 no-repeat;
		margin-right: 7px;
	}
}

@media screen and (max-width: 319px)  {
   	.sidenav-recruit-upper_lists .item_list {
		width: calc((100% - 5px) / 2);
	}
	
	.sidenav-recruit-upper_lists .item_list a {
		padding: 2px;
		letter-spacing: 0.1em;
		font-size: 10px !important;
     }

    .sidenav-recruit-upper_lists .item_list a:before {
        margin-right: 0;
     }

}

/*  sidenav-recruit-lower
--------------------------------------------- */
.sidenav-recruit-lower {
	width: 175px;
	margin-right: 0;
	margin-left: auto;
}
.sidenav-recruit-lower_cassette:nth-child(n+2) {
	margin-top: 25px;
}
.sidenav-recruit-lower_title {
	font-size: .93333333em;
	font-weight: bold;
	border-bottom: 3px solid #000;
	padding-bottom: 3px;
	margin-bottom: 10px;
}
.skin_mr .sidenav-recruit-lower_title {
	color: #eb8ba9;
	border-bottom-color: #eb8ba9;
}
.skin_research .sidenav-recruit-lower_title {
	color: #609edb;
	border-bottom-color: #609edb;
}
.skin_monitor .sidenav-recruit-lower_title {
	color: #f09140;
	border-bottom-color: #f09140;
}
.skin_quality .sidenav-recruit-lower_title {
	color: #9185d6;
	border-bottom-color: #9185d6;
}
.skin_developer .sidenav-recruit-lower_title {
	color: #66bd80;
	border-bottom-color: #66bd80;
}
.sidenav-recruit-lower_lists .item_list {
	font-size: 0.92em;
}
.sidenav-recruit-lower_lists .item_list:nth-child(n+2) {
	margin-top: 12px;
}
.sidenav-recruit-lower_lists .item_list a {
	position: relative;
	display: inline-block;
	padding-left: 1.5em;
}
.sidenav-recruit-lower_lists .item_list a:before {
	content: "";
	position: absolute;
	top: 2px;
	left: 0;
	display: block;
	width: 11px;
	height: 15px;
	-webkit-background-size: 100%;
	background-size: 100%;
	background-position: 0 0;
	background-repeat: no-repeat;
}
.sidenav-recruit-lower_lists .item_list.skin_male a:before {
	background-image: url(../../images/pc/recruit/common/icon_male.png);
}
.sidenav-recruit-lower_lists .item_list.skin_female a:before {
	background-image: url(../../images/pc/recruit/common/icon_female.png);
}
