@charset "utf-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
@import url(https://fonts.googleapis.com/css?family=Oswald:400,500,600,700);
/* reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
table{border-collapse:collapse; width:100%;}
fieldset,img{border:0; vertical-align:top;}
address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal;}
li{list-style:none;}
caption,th{text-align:left;}
h1,h2,h3,h4,h5,h6,small{font-size:100%;font-weight:normal;}
q:before,q:after{content:'';}
abbr,acronym{border:0;font-variant:normal;}
sup{vertical-align:text-top;}
sub{vertical-align:text-bottom;}
input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;}
input,textarea,select{*font-size:100%;}
legend{color:#000;}
del,ins{text-decoration:none;}
section{display:block;}
figure,figcaption{margin:0; padding:0;}

.cf:after{content:".";display:block;height:0;clear:both;visibility:hidden;font-size: 0.1em;}
.cf	{display:inline-block;zoom:1;}
ul.col {
	letter-spacing:-0.4em;
}
ul.col li {
	display:inline-block;
	vertical-align:top;
	letter-spacing:0.06em;
}
.round {
	font-family: "Rounded Mplus 1c";
}
/* \*/
* html .cf	{height:1%;}
.cf	{display:block;}
/* */
a:link,a:visited {
	color: #374953;
	text-decoration: underline;
	font-weight:400;
	transition:ease-in-out .3s;
}
a:hover {
	text-decoration:none;
}

img {
	max-width: 100%;
    height: auto;
    width /***/: auto;
	backface-visibility:hidden;
-webkit-backface-visibility: hidden;  
}



/*-----------------共通----------------------------*/

body {
	font-family: 'Noto Sans Japanese',-apple-system, BlinkMacSystemFont, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN,"Helvetica Neue", "游ゴシック体","Yu Gothic", YuGothic, Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 14.7px;
	line-height: 2;
	letter-spacing: 0.05em;
	color: #374953;
	-webkit-text-size-adjust: 100%;
}

.inner {
	max-width:1180px;
	width:92%;
	margin:auto;
}

#head {
	position:fixed;
	top:0;
	left:0;
	right:0;
	z-index:10;
}

#head .head-inner  {
	max-width:1180px;
	width:92%;
	margin:auto;
	background-color:#374953;
	border-top:#81b537 6px solid;
	display:table;
}
#head .head-inner h1 {
	display:table-cell;
	width:23%;
	vertical-align:middle;
	text-align:center;
	padding-left:2%;
	padding-right:2%;
}
#head .head-inner h1 img {
	width:214px;
}
#head .head-inner nav {
	display:table-cell;
	width:78%;
	vertical-align:middle;
}
#head .head-inner nav ul {
	display:table;
	width:100%;
	table-layout:fixed;
}
#head .head-inner nav ul li {
	display:table-cell;
	text-align:center;
	vertical-align:middle;
	border-left:#879298 1px solid;
}
#head .head-inner nav ul li a {
	color:#fff;
	font-weight:500;
	font-size:95%;
	text-decoration:none;
	line-height:1;
	padding-top:35px;
	padding-bottom:35px;
	display:block;
}
#head.fixed .head-inner nav ul li a {
    padding-top: 17px;
    padding-bottom: 17px;
}
#head .head-inner nav ul li a:hover,
#head .head-inner nav ul li a.active {
	background-color:#202b31;
}
#head .head-inner nav ul li a span {
	font-family: 'Oswald', sans-serif;
	display:block;
	font-weight:500;
	color:#81b537;
	font-size:75%;
	line-height:1;
	margin-top:7px;
}
#head #sp-global {
	position:fixed;
	z-index:11;
	top:0;
	right:0;
	bottom:0;
	width:400px;
	background-color:#374953;
	-webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
	display:none;
	padding:25px;
	overflow:auto;
	padding-top:80px;
	margin-right:-460px;
	-webkit-transition: all 600ms cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition:         all 600ms cubic-bezier(0.785, 0.135, 0.15, 0.86);
}
#head #sp-global.active {
	margin-right:0;
}
#head #sp-global li {
	border-bottom: #879298 1px solid;
}
#head #sp-global li a {
	color:#fff;
	font-weight:500;
	text-decoration:none;
	padding:12px;
	padding-left:35px;
	padding-right:15px;
	display:block;
	position:relative;
}
#head #sp-global li a:hover:before {
}
#head #sp-global li a:before {
    position: absolute;
    top: 50%;
    left: 15px;
    display: block;
    content: '';
    width: 6px;
    height: 6px;
    margin-top: -3px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top-width: 2px;
    border-right-width: 2px;
    border-top-style: solid;
    border-right-style: solid;
    border-top-color: #fff;
    border-right-color: #fff;

}
#head #sp-global li a span {
	font-family: 'Oswald', sans-serif;
	font-weight: 500;
	color: #81b537;
	font-size: 70%;
	margin-left:10px;
	line-height: 1;
}
#head #sp-global li > ul {
	margin-left:25px;
	padding-bottom:25px;
}
#head #sp-global li > ul > li {
	width:45.9999%;
	margin-left:2%;
	margin-right:2%;
	border-bottom:none;
}
#head #sp-global li > ul > li a {
	font-size:90%;
	padding:0px;
	display:inline-block;
	padding-left:17px;
}
#head #sp-global li > ul > li a:before {
	left:0;
}
/* ---- sp-menu ---- */
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 40px;
  height: 20px;
  margin-top:25px;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 9px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

#sp-btn.active .menu-trigger span:nth-of-type(1) {
  -webkit-transform: translateY(9px) rotate(-45deg);
  transform: translateY(9px) rotate(-45deg);
}
#sp-btn.active .menu-trigger span:nth-of-type(2) {
  opacity: 0;
}
#sp-btn.active .menu-trigger span:nth-of-type(3) {
  -webkit-transform: translateY(-9px) rotate(45deg);
  transform: translateY(-9px) rotate(45deg);
}

#sp-btn {
    width: 74px;
    height: 74px;
    text-align: center;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 999;
    color: #fff;
    cursor: pointer;
	display:none;
}
#head #sp-btn p {
font-family: 'Oswald', sans-serif;
display: block;
letter-spacing: 0.2em;
font-size: 88%;
line-height: 1;
margin-top: -2px;
text-align: center;
margin-left: 1px;
}
@media screen and (max-width:860px){
#head .head-inner {
    max-width: inherit;
    width: 100%;
}
#head .head-inner h1 {
	padding-top:20px;
	padding-bottom:20px;
    width: 50%;
	text-align:left;
}
#head .head-inner nav {
	display:none;
}
#head #sp-global {
	display:block;
}
#sp-btn {
	display:block;
}
}
@media screen and (max-width:480px){
body {
	font-size:14px;
}
#head .head-inner h1 {
	padding-top:15px;
	padding-bottom:15px;
	padding-left: 10px;
}
#head .head-inner h1 img {
	width:150px;
}
.menu-trigger {
    width: 30px;
    margin-top: 20px;
	height:16px;
}
.menu-trigger span:nth-of-type(2) {
    top: 7px;
}
#head #sp-btn p {
    font-size: 70%;
    margin-top: -3px;
}
#sp-btn {
    width: 58px;
    height: 64px;
}
#sp-btn.active .menu-trigger span:nth-of-type(1) {
  -webkit-transform: translateY(7px) rotate(-45deg);
  transform: translateY(7px) rotate(-45deg);
}
#sp-btn.active .menu-trigger span:nth-of-type(3) {
  -webkit-transform: translateY(-7px) rotate(45deg);
  transform: translateY(-7px) rotate(45deg);
}
#head #sp-global {
	position:fixed;
	z-index:11;
	top:0;
	right:0;
	bottom:0;
	margin-right:-480px;
	box-sizing:border-box;
	padding:15px;
	padding-top:45px;
}
#head #sp-global > ul {
	margin-bottom:45px;
}
#head #sp-global.active {
	margin-right:0px;
	width:100%;
}
#head #sp-global li a {
    padding-left: 25px;
    font-size: 105%;
}
#head #sp-global li a::before {
    left: 5px;
}
#head #sp-global li > ul {
    margin-left: 15px;
}
}



#main-top {
	background-image: url(../images/bg_compnay.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size:cover;
}
#company #main-top {
	background-image: url(../images/bg_compnay.jpg);
}
#service #main-top {
	background-image: url(../images/bg_service.jpg);
}
#results #main-top {
	background-image: url(../images/bg_results.jpg);
}
#recruit #main-top {
	background-image: url(../images/bg_recruit.jpg);
}
#staffing #main-top {
	background-image: url(../images/bg_staffing.jpg);
}
#contact #main-top {
	background-image: url(../images/bg_contact1.jpg);
}
#privacy #main-top {
	background-image: url(../images/bg_privacy.jpg);
}
#sitemap #main-top {
	background-image: url(../images/bg_sitemap.jpg);
}
#error #main-top {
	background-image: url(../images/bg_404.jpg);
}
#main-top h1 {
	padding-top:155px;
	text-align: center;
	color:#fff;
	font-weight:700;
	font-size:200%;
	letter-spacing:0.08em;
	line-height:1.2;
	padding-bottom:50px;
}
#main-top h1 span {
	font-family: 'Oswald', sans-serif;
	display:block;
	font-weight:500;
	color:#81b537;
	font-size:60%;
	margin-top:5px;
}
#main-top #anchor {
	background-color: rgba(32,43,49,0.92);
	text-align:center;
	padding-top:7px;
	padding-bottom:7px;
}
#main-top #anchor li {
	position:relative;
	margin-right:17px;
	padding-right:17px;
}
#main-top #anchor li:last-child {
	margin-right:0;
	padding-right:0;
}
#main-top #anchor li:last-child:after {
	display:none;
}
#main-top #anchor li:after {
	content:"";
	width:2px;
	top:8px;
	right:0;
	height:16px;
	position:absolute;
	background-color:#fff;
	transform: rotate(17deg);
-moz-transform: rotate(17deg);
-webkit-transform: rotate(17deg);
}
#main-top #anchor li a {
	color:#fff;
	text-decoration:none;
	font-size:95%;
}
#main-top #anchor li a:hover,
#main-top #anchor li a.active {
	color: #81b537;
}
#topic-path {
	font-size:80%;
	margin-top:10px;
	text-align:right;
	margin-bottom: 30px;
}
#topic-path li {
	position:relative;
	padding-right:12px;
	margin-right:5px;
}
#topic-path li:last-child {
	padding-right:0px;
	margin-right:0px;
}
#topic-path li:after {
	position: absolute;
	content:">";
	right:0;
	display:inline-block;
}
#topic-path li:last-child:after {
	display:none;
}

h2.main-ttl {
	font-size:220%;
	text-align:center;
	font-weight:700;
	position:relative;
	padding-bottom:5px;
	margin-bottom:60px;
}
h2.main-ttl:after {
	height:5px;
	width:100px;
	content:"";
	position:absolute;
	bottom:0;
	left:50%;
	margin-left:-50px;
	background-color:#81b537;
}
.w1000 {
	max-width:1000px;
}
#content section.mdb {
	margin-bottom:60px;
}
#content.index .lead-txt {
	max-width:1000px;
	margin:auto;
}
#content.index .lead-txt {
	margin-bottom:80px;
	margin-top:50px;
}
#content.index ul {
	margin-left:-2%;
	margin-right:-2%;
}
#content.pdb {
	    padding-bottom: 100px;
}
#content.index ul li {
	width:29.3333%;
	margin-left:2%;
	margin-right:2%;
	margin-bottom:6%;
}
#content.index ul li a {
	display:block;
	text-decoration:none;
}
#content.index ul li dt {
	background-image: url(../images/index_icon.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size:20px;
	padding-left:30px;
	font-weight:700;
	font-size:120%;
	margin-bottom:5px;
	margin-top:15px;
}
#content.index ul li dd {
	font-size:1.6;
	font-size:95%;
}
#content.index ul li .photo {
	overflow:hidden;
	padding:1px;
}
#content.index ul li .photo .img{
	position:relative;	
}
#content.index ul li .photo .img img {
    -webkit-transition: all 600ms cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition: all 600ms cubic-bezier(0.785, 0.135, 0.15, 0.86);
}
#content.index ul li a:hover .photo .img img {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}
#content.index ul li .photo .img:after,
#content.index ul li .photo .img:before,
#content.index ul li .photo .img span:after,
#content.index ul li .photo .img span:before {
	background-color:#374953;
	content: '';
	display: block;
	position: absolute;
	z-index: 10;
	-webkit-transition: all 600ms cubic-bezier(0.785, 0.135, 0.15, 0.86);
  transition:         all 600ms cubic-bezier(0.785, 0.135, 0.15, 0.86);
}
#content.index ul li .photo .img:after {
    height: 1px;
    left: -1px;
    top: -1px;
    width: 0px;
}
#content.index ul li .photo .img:before {
  bottom: -1px;
  height: 1px;
  right: -1px;
  width: 0px;
}
#content.index ul li .photo .img span:after {
  bottom: -1px;
  height: 0px;
  left: -1px;
  width: 1px;
}
#content.index ul li .photo .img span:before {
  height: 0px;
  right: -1px;
  top: -1px;
  width: 1px;
}

/* hover */
#content.index ul li a:hover .photo .img:after,
#content.index ul li a:hover .photo .img:before {
  width: 100%;
  width: calc(100% + 1px);
}
#content.index ul li a:hover .photo .img span:after,
#content.index ul li a:hover .photo .img span:before {
  height: 100%;
  height: calc(100% + 1px);
}
#content #sp-anchor {
	margin-bottom:40px;
	display:none;
}
#content #sp-anchor li {
	width:31.333%;
	margin-left:1%;
	margin-right:1%;
	margin-bottom:2%;
}
#content #sp-anchor li a {
	display:block;
	border:#EBF0F2 1px solid;
	text-decoration:none;
	font-weight:500;
	padding:8px;
	text-align:center;
	font-size:95%;
}
#content #sp-anchor li a.active {
	background-color:#374852;
	color:#fff;
}
a.link-btn {
	border: #374953 2px solid;
    display: block;
    font-weight: 500;
    padding: 12px;
    font-size: 110%;
    position: relative;
	color:#fff;
	background-color:#374953;
	text-decoration:none;
	text-align:center;
	max-width:320px;
	margin:auto;
}
a.link-btn:hover {
	background-color:#fff;
	color:#374953;
}
a.link-btn:after {
    position: absolute;
    top: 50%;
    right: 15px;
    display: block;
    content: '';
    width: 8px;
    height: 8px;
    margin-top: -5px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top-width: 3px;
    border-right-width: 3px;
    border-top-style: solid;
    border-right-style: solid;
    border-top-color: #fff;
    border-right-color: #fff;
}
a.link-btn:hover:after {
    border-top-color: #374953;
    border-right-color: #374953;
}
@media screen and (max-width:860px){
#main-top {
	margin-top:75px;
}
#main-top #anchor {
	display:none;
}
#main-top h1 {
    padding-top: 70px;
    font-weight: 700;
}
#content.index ul li {
	width:45.9999%;
}
}
@media screen and (max-width:480px){
#topic-path {
    margin-bottom: 20px;
	font-size: 65%;
	margin-top: 5px;
}
#main-top {
    margin-top: 60px;
}
#main-top h1 {
    padding-top: 50px;
    font-size: 165%;
    padding-bottom: 50px;
}
h2.main-ttl {
    font-size: 165%;
    margin-bottom: 30px;
}
#content section.mdb {
	margin-bottom:40px;
}
#content.index ul{
	margin-left:0;
	margin-right:0;
}
#content.index ul li {
	width:100%;
	display:block;
	margin-left:0;
	margin-right:0;
	margin-bottom:10%;
}
#content.index ul li dt {
    background-size: 16px;
    padding-left: 24px;
    font-size: 110%;
    margin-bottom: 3px;
    margin-top: 12px;
}
#content #sp-anchor li {
	width:47.9999%;
}
#content #sp-anchor li a {
	padding:5px;
	font-size:90%;
	
}
#content #sp-anchor {
	margin-bottom:30px;
}
#content.pdb {
	    padding-bottom: 50px;
}
}
#foot #pagetop {
	position:fixed;
	right:10px;
	bottom:100px;
	z-index:5;
}
#foot #pagetop a {
	background-color:#374953;
	width:60px;
	height:60px;
	display:block;
	border-radius:50%;
}
#foot #pagetop a img {
	transition:ease-in-out .3s;
}
#foot #pagetop a:hover img {
	margin-top:-5px;
}
#foot #contact {
	background-image: url(../images/bg_contact.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	padding-top:60px;
	padding-bottom:60px;
	color:#fff;
	text-align:center;
}
#foot #contact .blk {
	max-width: 1000px;
	box-sizing: border-box;
	margin: auto;
	border: 8px solid rgba(255,255,255,0.2);
	padding: 25px;
	width:92%;
}
#foot #contact .blk p {
	margin-bottom:30px;
}
#foot #contact .blk li {
	width:47.9999%;
	margin-left:1%;
	margin-right:1%;
}
#foot #contact .blk li a {
	color:#fff;
	text-decoration:none;
}
#foot #contact .blk li.tel a {
	font-family: 'Oswald', sans-serif;
	font-size:250%;
	font-weight:500;
}
#foot #contact .blk li.form a {
	border:#fff 2px solid;
	display:block;
	font-weight:500;
	padding:15px;
	font-size:120%;
	position:relative;
}
#foot #contact .blk li.form a:hover {
	background-color: rgba(255,255,255,0.33);
}
#foot #contact .blk li.form a:after {
position: absolute;
top: 50%;
right: 15px;
display: block;
content: '';
width: 8px;
height: 8px;
margin-top: -5px;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
border-top-width: 3px;
border-right-width: 3px;
border-top-style: solid;
border-right-style: solid;
border-top-color: #fff;
border-right-color: #fff;
}
#foot #middle {
	background-color: #81b537;
	background-image: url(../images/bg_foot.png);
	background-repeat: no-repeat;
	background-position: left top;
	padding-top:40px;
	padding-bottom:40px;
	color:#fff;
	text-align:center;
}
#foot #middle .w1000 {
	max-width:900px;
}
#foot #middle ul {
	text-align:center;
	margin-bottom:45px;
}
#foot #middle li {
	margin-left:10px;
	margin-right:15px;
	margin-bottom:10px;
}
#foot #middle li a {
	color:#fff;
	text-decoration:none;
	font-size:98%;
	position:relative;
	padding-left:15px;
}
#foot #middle li a:hover {
	text-decoration:underline;
}
#foot #middle li a:before {
	position: absolute;
	top: 50%;
	left: 0px;
	display: block;
	content: '';
	width: 6px;
	height: 6px;
	margin-top: -3px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	border-top-width: 2px;
	border-right-width: 2px;
	border-top-style: solid;
	border-right-style: solid;
	border-top-color: #fff;
	border-right-color: #fff;
}
#foot .w1000 {
	max-width:1000px;
	margin:auto;
	width:92%;
}
#foot #middle dt {
	margin-bottom:10px;
}
#foot #middle dt img {
	width:214px;
}
#foot #middle dd {
	margin-bottom:30px;
}
#foot #middle p {
	font-size:90%;
	line-height:1.7;
}
#foot #bottom {
	text-align:center;
	padding-top:30px;
	padding-bottom:30px;
}
#foot #bottom .copy {
	font-size: 78%;
	color: #5A676F;
	margin-top: 20px;
}
@media screen and (max-width:860px){
#foot #contact .blk li {
	display:block;
	width:100%;
	margin:auto;
	margin-bottom:15px;
}
#foot #contact .blk li.tel a {
    font-size: 190%;
}
#foot #contact .blk li.form {
	margin-bottom:0;
}
#foot #contact .blk li.form a {
    padding: 8px;
    font-size: 110%;
}
#foot #contact .blk p {
    margin-bottom: 0px;
}
#foot #middle ul {
	display:none;
}
}
@media screen and (max-width:480px){
#foot #contact .blk {
	border:none;
	padding:0;
}
#foot #contact {
    padding-top: 30px;
    padding-bottom: 30px;
}
#foot #contact .blk p {
    font-size: 95%;
    line-height: 1.5;
}
#foot #contact .blk li {
    margin-bottom: 10px;
}
#foot #contact .blk li.form a {
    font-size: 105%;
}
#foot #contact .blk li.tel a {
    font-size: 165%;
}
#foot #contact .blk li.form {
}
#foot #middle {
    padding-top: 25px;
    padding-bottom: 25px;
	background-size: 260px;
}
#foot #middle dd {
    margin-bottom: 20px;
}
#foot #bottom p img{
	width:70px;

}
#foot #bottom {
    padding-top: 15px;
    padding-bottom: 15px;
}
#foot #bottom .copy {
    font-size: 72%;
    margin-top: 10px;
}
#foot #pagetop {
	position:fixed;
	right:10px;
	bottom:50px;
	z-index:5;
}
#foot #pagetop a {
	background-color:#374953;
	width:40px;
	height:40px;
	display:block;
	border-radius:50%;
	opacity:0.7;
}
}