/* CSS Document */
/*Reset*/

html{
	font-size:62.5%;
	height:100%;
	width:100%;
}
body{
	width:100%;
	max-width:640px;
	height:auto;
	margin: 0 auto;
	padding: 0  0;
	background:#fff;
	font-family: 'Noto Sans Japanese',"Hiragino Kaku Gothic ProN","游ゴシック",Yu Gothc, "メイリオ", sans-serif;
	color:#232323;
	font-size:18px;
	font-size:1.8rem;
	line-height: 1.9;
}

h1, h2, h3, h4, h5, h6, p, address,
ul, ol, li, dl, dt, dd,
table, caption, th, td, img, form {
	margin: 0;
	padding: 0;
	border: none;
	line-height:100%;
	font-style: normal;
	font-weight:normal;
	font-size: 100%;
	text-align:left;
	list-style-type:none;
	border-collapse:collapse;
	vertical-align:top;
}

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix {
	overflow:hidden;
	display: inline-block;
}
/* Hides from IE-mac \*/
* html .clearfix{height: 1%;}
*+html .clearfix{min-height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */


@media only screen and (max-width:768px){
	.pc {
		display:none !important;
	}
	.sp {
		display:block !important;
	}
}
@media only screen and (min-width:768px){
	.sp {
		display:none !important;
	}
	.pc {
		display:block !important;
	}
}
img,
input[type="image"]{
	width:100%;
	height:auto;
}

a{
	text-decoration:none;
}
p{
	line-height:1.6;
	padding-bottom:30px;
}

em{
	font-style:normal;
}
ul.radio{
	margin-top:15px;
}
ul.radio li{
	margin-right: 40px;
	display: inline-block;
	font-size:14px;
	font-size: 1.4rem;
}
ul.radio input{
	vertical-align: middle;
	line-height: 1;
}
/*ヘッダー*/
header{
	background:#3e403e;
	/*border-bottom:2px solid #C0BABA;*/
	position:fixed;
	top: 0;
	left: 0;
	width:100%;
	z-index:3;
	margin-bottom:30px;
}

h1{
	width:180px;
	padding-left:10px;
	padding-top:15px;
	padding-bottom:15px;
}

@media only screen and (max-width: 768px){
	h1{
		width:200px;
	}
}

header nav{
	width:100%;
	position:relative;
}

header nav ul{
	position:absolute;
	top:0;
	width:100%;
	background:#fafafa;
	max-height:0;
	overflow:hidden;
	-webkit-transition:all 500ms;
	transition:all 500ms;
}
header nav.open ul{
	max-height:100em;

}

header nav ul li{
	padding-top:17px;
	padding-bottom:17px;
	display:block;
	padding-left:15px;
	font-size:12px;
}
header nav ul li a{
	color:#3e403e;
	display:block;
}


header nav ul li+li{
	border-top:1px solid #3e403e;
}



/*ヘッダーメニュー----------------------------------------*/

#buttonmenu{
	position:absolute;
	top:13px;
	right:13px;
	width:30px;
	height:30px;
}
#buttonmenu span{
	height:4px;
	width:30px;
	display:block;
	background:#fff;
	position:absolute;
	top:13px;
	left:0;
	-webkit-transition:all 500ms;
	transition:all 500ms;
}
#buttonmenu span:before,
#buttonmenu span:after{
	content:"";
	height:4px;
	width:30px;
	display:block;
	background:#fff;
	position:absolute;
	-webkit-transition:all 500ms;
	transition:all 500ms;
}

#buttonmenu span:before{
	top:-13px;
}
#buttonmenu span:after{
	top:13px;
}

#buttonmenu.open span{
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}

#buttonmenu.open span:before{
	top:0;
	-webkit-transform:rotate(90deg);
	transform:rotate(90deg);
}
#buttonmenu.open span:after{
	top:0;
	-webkit-transform:rotate(-90deg);
	transform:rotate(-90deg);
}
p.firstview{
	padding-top:63px;
}

@media only screen and (max-width: 768px){
	#buttonmenu{
    top: 12px;
	}
}


/*Solutions　事業内容---------------------------*/
article#solutions{
	margin-top:0px;
	padding-top:62px;
}

article#solutions div.title{
	width:100%;
	height:250px;
	top:0;
	left:0;
	right:0;
	background:url("../images/solutions.jpg") no-repeat right top/cover;
}
article#solutions h2{
	margin:0px auto;
	width:85%;
	color:#ffffff;
	font-size:45px;
	font-size:4.5rem;
	font-weight:bold;
	line-height:0.7;
	text-align:center;
	padding-left:0;
	padding-right:0;
	padding-top:90px;
}

article#solutions h2 em{
	font-size:22px;
	font-weight:600;
}

article#solutions h3{
	width:60%;
	margin:0 auto;
	padding-top:50px;
	padding-bottom:40px;
}
div.padding{
	padding-left:20px;
	padding-right:15px;
	font-family: 'Noto Sans JP', sans-serif;
}
div.smallmenu ul{
	display:table;
	table-layout: fixed;
    width: 100%;
	background:#d50505;
	text-align:center;
}
div.smallmenu ul li {
	text-align:center;
	display: table-cell;
    vertical-align: middle;


}
div.smallmenu ul li a{
   color: #fff;
   display: block;
   font-size: 15px;
   text-decoration: none;
   padding: 20px 0;
}
div.smallmenu ul li + li {
  border-left: 2px solid #aa0009;
}


/*
.sankaku{
	width: 20px;
	height: 0;
	border: 20px solid transparent;
	border-bottom: 20px solid #f00;
	margin:auto;
}*/


.bprimg,
.hrimg{
	width:70%;
	margin:15px auto;
}

#solutions div.service:before{
	content: '';
	width:0;
	height:0;
	margin:0 0 0 -20px;
	display:block;
  border: 20px solid;
  border-top-color: transparent;
  border-right-color: transparent;
  border-bottom-color: #d50505;
  border-left-color: transparent;
	position: absolute;
	top:-40px;
	left:50%;
}
article#solutions div.service{
	padding: 15px 25px 15px 25px;
	position: relative;
	background:#d50505;
	line-height: 0;
}
article#solutions div.service dl{
	margin: 15px 0;
	display: table;
	width: 100%;
}
article#solutions div.service dt{
	display: table-cell;
	font-family: 'Teko', sans-serif;
	font-weight:100;
	font-size:50px;
	color:#ffffff;
	border-right:1px solid #ffffff;
	padding-right:20px;
}
article#solutions div.service dd{
	padding: 0 0 0 20px;
    display: table-cell;
    color: #fff;
    line-height: 1.6;
}

article#solutions div.service dd em{
	font-size:16px;
	line-height:0.7;
}


div.service dt em{
	letter-spacing: 2px;
}
article#solutions ul.servise:before{
	content:'';
	width:0;
	height:0;
	margin:0 auto;
	text-align:center;
	display:block;

  border: 20px solid;
  border-top-color: transparent;
  border-right-color: transparent;
  border-bottom-color: #d50505;
  border-left-color: transparent;
  right:0;
}

article#solutions ul.servise{
	background:#d50505;
	padding:17px;

	margin-top:0;

}
article#solutions ul.servise li{
	border: 1px solid #fff;
}


article#solutions ul.servise li.number{
	margin-top:10px;
	float:left;
	width:20%;
	height:auto;

}
article#solutions ul.servise li.text{
	margin-top:10px;
	float:right;
	width:76%;
	height:80px;
	color:#ffffff;
}
article#solutions ul.servise li.text strong{
	font-size:20px;
	line-height:1.2;
}
article#solutions ul.servise li.text em{
	font-size:15px;
	font-weight:400;
	line-height:1.5;
}


#item-list ul:after {
	content:'';
	clear:both;
	display:block;

}

#item-list ul li:nth-child(3n-1) {
	margin:0 2%;
}




article#top_service h2{
	margin:0 auto;
	width:85%;
	color:#ee7325;
	font-size:65px;
	font-size:6.5rem;
	font-weight:bold;
	letter-spacing: 0.5rem;
	line-height:1.5;
	text-align:center;
	padding-left:0;
	padding-right:0;
	padding-top:0;
	padding-bottom:0;
}
h2.service_orange,h2.company_white {
  margin: 40px auto 80px;
}
h2.service_orange img {
	width: 40%;
	height: auto;
	display: block;
	margin: 0 auto;
}

@media only screen and (max-width: 768px){
	h2.service_orange img {
	width: 60%;
}
}
h2.company_white img {
	width: 60%;
	height: auto;
	display: block;
	margin: 0 auto;
}
article#top_service p{
	font-size: 16px;
	padding-bottom: 15px;
	text-align: justify;
	font-weight: lighter;
}

p.morebutton{
	padding-top:20px;
	padding-bottom:50px;
}

article#business_contents{
	padding-bottom:70px;
}

article#business_contents ul{
	padding-top:50px;
	padding-bottom:20px;

}


article#business_contents ul li img{
	margin:auto;
	text-align:center;
}



article#business_contents ul li{
	width:83%;
	margin:0 auto;
	text-align:center;
}


article#business_contents ul li strong{
	font-size:25px;
	line-height:3;
	text-align:center;
	display:block;
}

article#business_contents ul li strong:after{
	content:'';
	background: #fb4830;
	height: 2px;
	width:50px;
	display:block;
	margin: -10px auto 15px auto;
}


article#business_contents ul li em{
	text-align:left;
	font-size:18px;
	line-height:1.4;
	margin-left:0;

}



article#merrit{
	background:#f4f4f4;
	padding-bottom:70px;
}

article#merrit ul{
	padding-top:50px;
	padding-bottom:20px;

}


article#merrit ul li img{
	margin:auto;
	text-align:center;
}



article#merrit ul li{
  width: 80%;
	margin:0 auto;
	text-align:center;
	text-align: justify;
}

article#merrit ul li img{
	width: 54.5%;
	display: block;
	margin: 0 auto;
}


article#merrit ul li strong{
	font-size:25px;
	line-height: 2;
	text-align: center;
	display: block;
	margin: 2rem 0 6rem;
}

article#merrit ul li strong span{
	display: block;
	font-size: 14px;
	font-weight: lighter;
}

article#merrit ul li strong:after{
	content: '';
	border: 2px solid #3e403e;
	width: 50px;
	display: block;
	margin: 30px auto -25px auto;
}


article#merrit ul li em{
	text-align:left;
	font-size:18px;
	line-height:1.8;
	margin-left:0;
	font-weight: lighter;
}



article#top_company{
	padding:3rem 40px 5rem;
	width:auto;
	height:100%;
}
article#top_company h2{
	padding-top:40px;
	padding-bottom:20px;
	margin:0 auto;
	padding-left:0;
	padding-right:0;
	color:#fff;
	display: inline-block;
	font-size:85px;
	font-size:8.5rem;
	font-weight:bold;
	letter-spacing: 0.5rem;
	line-height:1.5;
	width: auto;
}

article#top_company p{
	text-align:center;
	color:#ffffff;
}

@media only screen and (max-width:768px){
	article#merrit ul li{
		width: 90%;
	}
	article#merrit ul li strong span {
		    font-size: 16px;
	}
	article#merrit ul li em {
		width: 80%;
		margin: 0 auto;
		display: block;
	}
}
@media only screen and (min-width:768px){

	article#merrit ul li{
		height: 580px;
	}

}


/* Slider */

#slide_wrapp {
  position: relative;
  overflow: hidden;
}
#slide_wrapp .slide_item {
  opacity: 0;
  -webkit-transform: scale(1);
  transform: scale(1);
  -webkit-transition: opacity 2s linear, -webkit-transform 7.5s linear;
  transition: opacity 2s linear, -webkit-transform 7.5s linear;
  transition: opacity 2s linear, transform 7.5s linear;
  transition: opacity 2s linear, transform 7.5s linear, -webkit-transform 7.5s linear;
  position: relative;
}
#slide_wrapp .slide_item:not(:first-child) {
  position: absolute;
  top: 0;
  left: 0;
}
#slide_wrapp .slide_item.show_ {
  opacity: 1;
}
#slide_wrapp .slide_item.zoom_ {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}
#slide_wrapp .slide_item img {
  display: block;
}

.key_visual_container {
	position: relative;
}
.key_visual_text_box {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	z-index: 1;
}
.key_visual_text_box h2 {
	margin-bottom: 1rem;
	/* padding-bottom: 2rem; */
	padding-bottom: 0;
	font-size: 8.8rem;
  font-weight: 100;
  font-family: 'Lato', sans-serif;
  color: #fff;
}
.key_visual_text_box h2 {
	width: 100%;
	margin: 0 auto 1vw;
	display: block;
	height: 5vw;
}
.key_visual_text_box p {
	font-size: 17px;
	color: #fff;
	font-weight: 200;
	text-align: center;
}

@media only screen and (max-width:768px){
	.key_visual_text_box {
    width: 75%;
    top: 60%;
	}
	.key_visual_text_box h2 {
    height: 10vw;
		margin-bottom: 0;
    font-size: 13.6vw;
	}
	.key_visual_text_box p {
		font-size: 2.6vw;
		text-align: center;
		font-weight: 400;
		width: 100%;
	}
}

/* / Slider */


/*Vision＆Mission---------------------------*/
article#vision{
	margin-top:0px;
	padding-top:62px;
	padding-bottom:30px;
}

article#vision div.title{
	width:100%;
	height:250px;
	top:0;
	left:0;
	right:0;
	background:url("../images/vision.jpg") no-repeat right top/cover;
}
article#vision h2{
	margin:0px auto;
	width:85%;
	color:#ffffff;
	font-size:45px;
	font-size:4.5rem;
	font-weight:bold;
	line-height:1;
	text-align:center;
	padding-left:0;
	padding-right:0;
	padding-top:60px;
}

article#vision h2 em{
	font-size:22px;
	font-weight:600;
}
article#vision div.contents{
	margin:70px auto;
}
article#vision h4{
	text-align:center;
	font-size:28px;
	font-weight:bold;
	color:#d40505;
	margin-top:20px;
	margin-bottom:20px;
	line-height:1.3;

}
article#vision h3{
	text-align:center;
	line-height:1.3;
	font-size:26px;
	font-weight:bold;
}
article#vision p{
	padding:0;
}
section#vision{
	padding-bottom:70px;
}
section#mission{
	padding-top:70px;
	border-top:2px solid #D0CCCC;

}

/*アバウト--------------------------------------------------------------*/



article#about{
	margin-top:0px;
	padding-top:62px;
}
article#about div.title{
	width:100%;
	height:250px;
	top:0;
	left:0;
	right:0;
	background:url("../images/aboutsp.jpg") no-repeat center bottom/cover;
}
article#about h2{
	margin:0px auto;
	width:85%;
	color:#ffffff;
	font-size:35px;
	font-size:3.5rem;
	font-weight:bold;
	line-height:1.1;
	text-align:center;
	padding-left:0;
	padding-right:0;

	padding-top:90px;
}

article#about h2 em{
	font-size:22px;
	font-weight:600;
}

section#ict{
	margin-bottom:30px;
}
section#icthr h3{
    width:80%;
	margin:0 auto;
	padding-top:85px;
	padding-bottom:40px;
}

section#icthr h4{
	margin-left: auto;
	margin-right:auto;
	margin-top:50px;
	margin-bottom:30px;
	text-align:center;
	font-size:33px;
	font-weight:bold;
}
section#icthr div.pc p{
	font-size:16px;
	line-height:2;

}
p.slid{
	margin: 0;
  height: 100px;
  width: 100%;
  display: block;
  background:url(../images/job.jpg)  repeat-x center top / cover;
  -webkit-animation: head_back1 60s linear 0;
  animation: head_back1 60s linear 0;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-direction: normal;
  animation-direction: normal;

}

@-webkit-keyframes head_back1{
    0% { background-position: 0px top }
    100% { background-position: 2000px top }
}

@keyframes head_back1{
    0% { background-position: 0px top }
    100% { background-position: 2000px top }
}


.skew {
    background: #d40505;
    padding: 50px 0;
    -webkit-transform: skew(0deg, -5deg);
    transform: skew(0deg, -5deg);
    }
    .content {
        width: auto;
        margin: 0 auto;
        -webkit-transform: skew(0deg, 5deg);
        transform: skew(0deg, 5deg);
        }
        .inner-box {
            width: auto;
            margin: 0 auto;
            color: #fff;
            text-align: center;

            }
section#icthr div.padding{
	margin:30px auto;
}

section#logomark p.hhrlogo {
	text-align:center;
	margin:0 auto;
}

section#logomark{
	color:#ffffff;
	padding-top:30px;
}

section#logomark h3{
	margin:30px auto;
	text-align:center;
	font-size:30px;
}

section#greeting h3{
	padding-top:20px;
	margin:30px auto;
	text-align:center;
	font-size:25px;
	color:#d40505;
	font-weight:bold;
}
section#greeting h4{

/*font-family:"ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;*/
	font-weight:bold;
	font-size:30px;
	margin-top:20px;
	margin-bottom:20px;
	margin-left:0;
}
section#ceo{
	width:100%;
	background:url(../images/moriki_sp.jpg) no-repeat right top/contain;
	padding-bottom:60px;
}
section#ceo img{
	width:53%;
	margin-top:90px;
	margin-bottom:40px;
}

section#ceo h5{
	font-size:22px;
	font-weight:bold;
	border-left:3px solid #d40505;
	padding-left:13px;
	margin-bottom:10px;
	margin-top:10px;
}

section#ceo div.ryakureki{
	padding:5px 5px;
	margin-bottom:10px;
	background-color: rgba(255, 255, 255, 0.7)
}
section#greeting div.sp p{
	font-size:16px;
	padding-bottom:20px;
}
section#ceo div.ryakureki p{
	font-size:15px;
	padding-bottom:5px;
}
section#ceo div.keireki{
	padding:10px;
	background:#d40505;
	color:#ffffff;

}
section#ceo div.keireki p{
	padding-bottom:5px;
	font-size:12px;
}





/*プロフィール-----*/
section#companyprofile{
	width:auto;
	height:100%;
	background:url("../images/companyprofile.jpg") no-repeat right top/cover;
}
section#companyprofile h3{
	padding-top:40px;
	padding-bottom:20px;
	margin:0 auto;
	width:85%;
	color:#d40505;
	font-size:33px;
	font-size:3.3rem;
	font-weight:bold;
	line-height:1.5;
	text-align:center;
	padding-left:0;
	padding-right:0;
}



/*プロフィール------------------------------------------------------------*/

article#profile{
	margin-top:0px;
	padding-top:62px;

}

article#profile div.title{
	width:100%;
	height:250px;
	top:0;
	left:0;
	right:0;
	background:url("../images/about.jpg") no-repeat center top/cover;
}
article#profile h2{
	margin:0px auto;
	width:85%;
	color:#ffffff;
	font-size:35px;
	font-size:3.5rem;
	font-weight:bold;
	line-height:1.1;
	text-align:center;
	padding-left:0;
	padding-right:0;

	padding-top:90px;
}

article#profile h2 em{
	font-size:22px;
	font-weight:600;
}

article#profile h3{
	font-size:40px;
	font-weight:bold;
	margin:0 auto;
	padding-top:50px;
	padding-bottom:40px;
	color:#d30505;
	text-align:center;
}


article#profile table{
	width:100%;
}
article#profile div.profile table td p{
	padding-left: 1em;
    text-indent: -1em;
}
article#profile th{
	width:100%;
	display:block;
	font-weight:bold;
}

article#profile td{
	width:100%;
	display:block;
	padding-bottom:15px;
	text-align:left;
	line-height:1.2;
	margin-top:7px;
	margin-bottom:15px;
	border-bottom:1px solid #BDBBBB;

}

article#profile tr{
	display:inline;
}
article#profile td a{
	color:#000000;
}

article#profile div.padding{
	display:table;

}


article#access p{
	font-size:16px;
	margin-top:20px;
}

.ggmap {
	height:250px;
	overflow: hidden;
	width:100%;
}

.ggmap iframe{
	margin-top: -200px;
}


div.padding{
	padding-left: 100px;
	padding-right: 15px;
}

@media only screen and (max-width : 768px){
	div.padding{
		padding-left: 15px;
		padding-right: 15px;
	}
}


div.solutionsmenu ul{
	display:table;
	table-layout: fixed;
    width: 100%;
	background:#d50505;
	text-align:center;
}
div.solutionsmenu ul li {
	text-align:center;
	display: table-cell;
    vertical-align: middle;


}
div.solutionsmenu ul li a{
   color: #fff;
   display: block;
   font-size: 15px;
   text-decoration: none;
   padding: 20px 0;
}
div.solutionsmenu ul li + li {
  border-left: 2px solid #aa0009;
}



/*コンタクト------------------------------------------------*/

article#contact{
	margin-top:0px;
	padding-top:62px;
}
article#contact div.title{
	width:100%;
	height:250px;
	top:0;
	left:0;
	right:0;
	background:url("../images/contact.jpg") no-repeat center top/cover;
}

article#contact div.formbutton div.soushin p.sp{
	margin-top:-20px;
	margin-bottom:30px;

}
article#contact div.formbutton div.modoru p.sp{
	margin-top:30px;
}
article#contact h2{
	margin:0px auto;
	width:85%;
	color:#ffffff;
	font-size:35px;
	font-size:3.5rem;
	font-weight:bold;
	line-height:1.1;
	text-align:center;
	padding-left:0;
	padding-right:0;
	padding-top:90px;
}

article#contact h2 em{
	font-size:22px;
	font-weight:600;
}

article#contact h3{
	text-align:center;
	font-size:20px;
	font-weight:bold;
	margin-top:50px;
	color:#d40505;
	line-height:1.5;
}


article#contact dl em{
	display:inline-block;
	vertical-align:middle;
	background: #d40505;
    font-size: 10px;
    padding: 3px 5px;
    margin-left: 10px;
	color:#ffffff;
}
article#contact p.text{
	margin-top:20px;
	font-size:14px;
}
article#contact form{
	padding:15px;
}
article#contact form dl{
	margin-bottom:40px;
}
article#contact form dd{
	margin-bottom:20px;
}
article#contact form dt{
	margin-bottom:5px;
	font-size:14px;
}


article#contact p.button{
	margin-top:20px;
}
input[type="text"], input[type="tel"], input[type="email"], input[type="url"], input[type="number"],select,input[type="age"], textarea {
	width:95%;
	background:#ffffff;
	padding:10px;
	font-size:14px;
	letter-spacing:0.1em;
	color:#636363;
	border:1px solid #AAA4A4;
}
dd select option{
	color:#636363;
}
.checkbox {
	margin:0 auto;
	text-align:center;
	padding-bottom:0;
}

div.thanks{
	margin-bottom:30px;
}
/*
.checkbox label {
    position: relative;
    line-height: 20px;
    padding: 2px 0 2px 32px;
    cursor: pointer;
}
.checkbox label:before {
    content: "";
    display: block;
    height: 20px;
    width: 20px;
    background: url(../images/checkbox.jpg) no-repeat left top;
    background-size: 20px;
    position: absolute;
    top: 1px;
    left: 0;
	vertical-align:middle;
}

.checkbox label:after {
      content: "個人情報保護方針に同意する";
      font-size:0.75em;
    }
.checkbox input[type=checkbox]:checked + label:before{
	background:url(../images/checkbox.jpg) no-repeat left bottom;
	background-size:20px;
}

*/



/*リクルート------------------------------------------------*/


article#recruit div.formbutton div.soushin p.sp{
	margin-top:-20px;
	margin-bottom:30px;

}
article#recruit div.formbutton div.modoru p.sp{
	margin-top:30px;
}
article#recruit{
	margin-top:0px;
	padding-top:62px;
}
article#recruit div.title{
	width:100%;
	height: auto;
	/*
	height:250px;
	*/
	top:0;
	left:0;
	right:0;
	background:url("../images/recruit.jpg") no-repeat center top/cover;
}
article#recruit h2{
	margin:0px auto;
	width:85%;
	color:#ffffff;
	font-size:35px;
	font-size:3.5rem;
	font-weight:bold;
	line-height:1.1;
	text-align:center;
	padding-left:0;
	padding-right:0;
	padding-top:60px;
}
article#recruit h2 em{
	font-size:22px;
	font-weight:600;
}
article#recruit dl em{
	display:inline-block;
	vertical-align:middle;
	background: #d40505;
    font-size: 10px;
    padding: 3px 5px;
    margin-left: 10px;
	color:#ffffff;
}
article#recruit form{
	margin-top:10px;
	padding:15px;
}
article#recruit form dl{
	margin-bottom:40px;
}
article#recruit form dd{
	margin-bottom:20px;
}

article#recruit form dt{
	margin-bottom:5px;
	font-size:14px;
}
article#recruit form .confirm dd{
	padding:8px 0 0 0;
	margin-bottom:5px;
	font-size:14px;
}

article#recruit p.button{
	margin-top:20px;
}
input[type="text"], input[type="tel"], input[type="email"], input[type="url"], input[type="number"],select,textarea {
	width:100%;
	background:#ffffff;
	padding:10px;
	font-size:14px;
	letter-spacing:0.1em;
	color:#636363;
	border:1px solid #AAA4A4;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
#age{
	width:calc( 100% - 2em );
}
.checkbox {
	margin:0 auto;
	text-align:center;
	padding-bottom:0;
}


article#recruit h3.entry{
	text-align:center;
	font-size:40px;
	font-weight:bold;
	margin-top:50px;
	color:#d40505;
	line-height:1.5;
}
article#recruit p.text{
	margin-top:20px;
	font-size:14px;
}
h3.kakunin{
	text-align:center;
	font-weight:bold;
	margin-top:50px;
	color:#d40505;
	line-height:1.5;
	font-size:24px;
}


/*プライバシーポリシー------------------------------------------------*/

article#privacy div.title  h2{
	margin:0px auto;
	color:#ffffff;
	font-size:28px;
	font-size:2.8rem;
	line-height:1.1;
	text-align:center;
	}
article#privacy div.title {
	padding-top:120px;
	padding-bottom:60px;
	background:#d40505;
	margin-bottom:0;
	}
article#privacy div.kiyaku{
	    margin:0 auto;
		margin-top:60px;
}
article#privacy h3{
	font-size:25px;
	margin-top:40px;
	margin-bottom:20px;
	padding-bottom:10px;
	border-bottom:2px solid #d40505;
}
article#privacy h4{
	font-size:20px;
	margin-top:35px;
	margin-bottom:10px;
	line-height:1.4;
}
article#privacy p{
	font-size:15px;
	line-height:1.2;
	padding-bottom:0;
	margin-bottom:15px;
}
article#privacy p a{
	color:#000000;
}
article#privacy p.seitei{
	margin-top:60px;
	margin-right:auto;
	padding-right:0;
}
article#privacy div.jyouhou{
	margin:50px auto;
	padding-bottom:30px;
}
article#privacy div.jyouhou p{
	padding-bottom:0;
	margin-bottom:10px;
}

/*ページトップへ---------------------------------------*/
div#pagetop {
	text-align:center;
}
div#pagetop p {
	padding-bottom:0;
}

/* div#pagetop img{
	width:30%;
} */
div#pagetop a {
	padding-top:25px;
	padding-bottom:20px;
	text-align:center;
	display:block;
	height:auto;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:0;
	background:#fafafa;
}
div#pagetop a:hover {
	opacity: 0.8;
	-webkit-transition: 0.3s linear;
	transition: 0.3s linear;
}
footer{
  background: #3e403e;
	color:#ffffff;
	margin-top:0;
	margin-bottom:0;
	padding-bottom:0;
}
footer img{
	width:35%;
	margin-left:20px;
	margin-top:0;
	padding-top:20px;
	padding-bottom:20px;
}
footer ul li{
	color:#ffffff;
	padding: 0 10px;
}
footer ul a{
	color:#ffffff;
}
footer address{
	margin:0;
	line-height: 1;
	font-size:16px;
	font-weight: normal;
	text-align:center;
	color: #fff;
	font-family: 'Lato', sans-serif;
}









/*  最小幅。768pxよりちち小さい場合に適用
--------------------------------------------*/

@media only screen and (max-width : 768px){


article#top_company h2{
  padding: 100px 0 80px;
	font-size: 11.5vw;
}




article#recruit div.title p.sp_rcomment{

	text-align: center;
	color: #fff;
	font-weight: bold;
	padding: 30px 0;
	letter-spacing: 0.1em;

}

	article#recruit div.title p.pc_rcomment{

		display: none;
	}

}

/*  最小幅。768pxより大きい場合に適用
--------------------------------------------*/

@media only screen and (min-width : 768px){


article#recruit div.title p.pc_rcomment{

	text-align: center;
	color: #fff;
	font-weight: bold;
	padding: 30px 0;
	letter-spacing: 0.1em;

}

article#recruit div.title p.sp_rcomment{

	display: none;

	}


  .br_sp:before{
    display: none;
  }
  .br_pc:before{
    content: "\A" ;
    white-space: pre ;
    }
  .sp{
    display: none;
  }
  .pc{
    display: block;
  }

  ul.t{
    margin: 80px 10px;
    display: table;
  }
  ul.t li.t{
    display: table-cell;
    width: 64%;
  }
  ul.t.contrary{
    direction: rtl;
  }
  ul.t.contrary li.t{
    direction: ltr;
  }
  ul.t li.t.img{
    padding:80px 10px 0 0;
    width: auto;
  }
.wrapper_min{
	min-width:768px;
	margin:0 auto;
	overflow:hidden;
}


body{
	width:100%;
	max-width: 100%;
	height:auto;
	margin:0 auto;
	padding:0  0;
	background:#fff;
	font-family: 'Noto Sans Japanese',"Hiragino Kaku Gothic ProN","游ゴシック",Yu Gothic,"メイリオ", sans-serif;
	color:#232323;
	font-size:18px;
	font-size:1.8rem;
	line-height: 1.9;
}


ul.t{
	margin:0;
  display: table;
}

ul.t li.t{
  display: table-cell;
}
li{
	list-style-type:none;
}

em{
	font-style:normal;
}



p.morebutton{
	width:239px;
	margin:0 auto;
}

div#pagetop{
	margin:0 auto;
}
/* div#pagetop img{
	width:150px;
} */
article{
	padding-top:84px;
    padding-bottom:60px;
}



/*ヘッダー*/

#buttonmenu{
	display:none;
}

header{
	width:100%;
	position:fixed;
	top:0;
	left: 0;
	z-index: 3;
	height:84px;
	/*border-bottom:4px solid #c0c1c8;*/
	-webkit-box-shadow: 0 10px 10px rgba(0,0,0,0.3);
	box-shadow: 0 10px 10px rgba(0,0,0,0.3);
	background:#3e403e;
}



h1{
	width: 100%;
  max-width: 32rem;
  /* float: left; */
  line-height: 0;
  padding-left: 130px;

}


header nav ul{
	width:200px;
	height:auto;
	margin-right:120px;
  position:relative;
  top:0;
  max-height:100em;
  overflow:hidden;
	float:right;
	display:table;
	background:#FFFFFF;



}
header nav ul li{
	padding:33px 22px;
	font-weight:200;
	display:table-cell;
	right:0;
	margin-right:0;
	background:#3e403e;
	border-style:none;

}

header nav ul li+li{
	border-style:none;
}

header nav ul li a{
	color:#fff;
	font-size:18px;
	font-family: 'Lato', sans-serif;
}




/*小メニュ----------------------------------------------------*/

div.smallmenu{
    margin:0 auto;
    width:100%;
    background:#d50505;

  }
 div.smallmenu ul.t{
    margin:0 auto;
    width:1000px;
    display:table;
    table-layout:fixed;

  }
  div.smallmenu ul.t li.t{
    display:table-cell;
    font-size:20px;
    height:100%;
	border:#d50505;
  }
  div.smallmenu a{
    padding:20px 20px;
    display:block;
    color:#fff;
    position:relative;
    text-align:center;

  }

 div.smallmenu a:hover:before{
    top:0;
    left:0;
    content:'';
    position:absolute;
    display:block;
    height:100%;
    width:100%;
	background:#aa0009;
    -webkit-transform:skewX(-10deg);
    transform:skewX(-10deg)
  }
 div.smallmenu a span{
    position:relative;
    z-index:10;
  }















/*TOP SERVICE*/

article#top_service {
	width:850px;
	margin:0 auto;
	padding-top:60px;
}

article#top_service h2{
	margin:auto;
	font-size:85px;
	padding-top:0;
}
article#top_service h2.service_orange {
  margin: 40px auto 62px;
}




/*TOPメリット*/


article#merrit {
	padding-top:20px;
	padding-bottom:60px;

}
article#merrit div{
	display:table;
	table-layout:fixed;
	width:900px;
	margin:0 auto;
}

article#merrit div ul{
	width:70px;
	display:table-cell;
	vertical-align:middle;
}
article#merrit div ul li strong{
	font-size:24px;

}

article#merrit div ul li em{
	font-size:14px;
  line-height: 2.5;
}


/*TOPソリューション*/

article#top_company{
	padding:8rem 40px 14rem;
}
article#top_company h2{
	font-size:60px;
}

article#top_company div.padding{
	width:850px;
	margin:0 auto;
}

article#top_company h2.company_white {
  margin-bottom: 20px;
}

article#top_company div.padding p{
	margin:0 auto;
	text-align:center;
	line-height:2;
}




/*vision------------------------------------------------------------------------------------------------------------------*/
article#vision{
	margin-bottom:20px;
}
article#vision div.title{
	padding-top:110px;
	padding-bottom:110px;
}
article#vision div.title h2{
	margin-top:20px;
	font-size:72px;
	line-height:0.7;
	font-weight:bold;
}

article#vision div.title h2 em{
	font-size:28px;
	font-weight:100;
}

article#vision div.contents{
	width:900px;
	margin:60px auto;
	text-align:center;
	padding:50px auto;
}
article#vision h3{

	margin-bottom:20px;
}
section#vision p{
	margin:0 auto;
	text-align:center;
	padding-top:10px;
	padding-bottom:0;
}
section#mission p{
	margin:0 auto;
	text-align:center;
	padding-top:10px;
}
section#vision{
	     padding-top:30px;
		 padding-bottom:30px;
	margin:60px auto;
}
section#mission{
	margin:60px auto;
}
section#mission h3{
	margin-top:20px;
}
section#vision h4{

	margin:0 auto;
	width:616px;

}
section#mission h4{
	margin:0 auto;
	width:882px;

}
/*事業内容ページ------------------------------------------------------------------------------------------------------------------*/
/* article#solutions div.title{
	padding-top:110px;
	padding-bottom:110px;
}
article#solutions div.title h2.solutions{
	font-size:72px;
	line-height:0.7;
}

article#solutions div.title h2.solutions em{
	font-size:28px;
	font-weight:100;
}

article#solutions div.contents{
	width:900px;
	margin:0 auto;
}

article#solutions h3{
	width:350px;
	margin-top:50px;
	margin-bottom:20px;
}
/*ICT------*/
/* article#solutions section#ict{
	padding-bottom:30px;
}
article#solutions section#ict h3{
	padding-top:105px;
	width:337px;
} */

/* .minus{
	padding-top:85px;
	margin-top:-85px;
}
article#solutions section#ict div.padding p{
	margin:0 auto;
	text-align:center;
	padding-bottom:0;
	line-height:2;
}

article#solutions section#ict div.hikaku{
	display:table;
	margin-top:50px;
}
article#solutions section#ict div.hikaku p{
    display:table-cell;
} */


/*BPR------*/
/* article#solutions section#bpr h3{
	width:362px;
}


article#solutions section#bpr li.t{
	vertical-align: middle;
	width: 450px;
}
article#solutions section#bpr li.pc img{
	width:400px;
	margin-top:-80px;
	margin-left:-40px;
	padding:0;
	left:0;
}
#solutions div.service:before{
	display:none;
}
article#solutions section#bpr div.service {
	background:none;
	padding-top:0;
}
article#solutions section#bpr div.padding p{
	font-size:16px;
	line-height:2;
	padding-bottom:5px;
}
article#solutions section#bpr div.service dl dd,
article#solutions section#bpr div.service dl dt{
	color:#989898;
}
article#solutions section#bpr div.service dl dt{
	width:13%;
	padding-right:0;
	border-right:1px solid #989898;
}
article#solutions section#bpr div.service dl dd{
	padding-left:10px;
}
article#solutions section#bpr div.service dl dd strong{
	font-size:16px;
	font-weight:100;
}
article#solutions section#bpr div.service dl dd em{
	font-size:14px;
}
div.service dt em{
	letter-spacing: 2px;
} */





/*HR------*/
/* article#solutions section#hr h3{
	width:280px;
}
article#solutions section#hr li.t{
	vertical-align: middle;
	width: 450px;
}
article#solutions section#hr li.pc img{
	width:400px;
	margin-top:-80px;
	margin-left:-40px;
	padding:0;
	left:0;
}
#solutions div.service:before{
	display:none;
}
article#solutions section#hr div.service {
	background:none;
	padding-top:0;
}
article#solutions section#hr div.padding p{
	font-size:16px;
	line-height:2;
	padding-bottom:5px;
}
article#solutions section#hr div.service dl dd,
article#solutions section#hr div.service dl dt{
	color:#989898;
}
article#solutions section#hr div.service dl dt{
	width:13%;
	padding-right:0;
	border-right:1px solid #989898;
}
article#solutions section#hr div.service dl dd{
	padding-left:10px;
}
article#solutions section#hr div.service dl dd strong{
	font-size:16px;
	font-weight:100;
}
article#solutions section#hr div.service dl dd em{
	font-size:14px;
}
div.service dt em{
	letter-spacing: 2px;
}



article#solutions section#hr ul.t.contrary{
    direction: ltr;
  }
article#solutions section#hr ul.t.contrary li.t{
    direction: ltr;
  } */

/*article#solutions section.bpr div.matome{
	margin:0 auto;
	display:table;
}
article#solutions section.bpr p.bprimg{
	width:400px;
	display:table-cell;
	padding-top:0;
	margin-top:0;
	padding:0 20px;
	margin-right:10px;
	border:1px solid #000000;
}
article#solutions section.bpr p.sp{
	display:none;
}
article#solutions section.bpr div.text{
	width:430px;
	display:table-cell;
	border:1px solid #c30;
	padding:0;
	margin:0;
	right:0;
	font-size:16px;
	line-height:2;
}
div.service dt em{
	letter-spacing: 3px;
}


#solutions div.service{
	display:none;
	background:#ffffff;
	border:1px solid #000000;
}


article#solutions section#bpr li.t{
	vertical-align: middle;
	width: 440px;
}*/




/*アバウト------------------------------------------------------------------*/
/* article#about{
	padding-bottom:0;
}


article#about div.title{
	padding-top:110px;
	padding-bottom:110px;
	background:url("../images/about.jpg") no-repeat center top/cover;
}
article#about div.title h2.about{
	font-size:72px;
	line-height:0.7;
}

article#about div.title h2.about em{
	font-size:28px;
	font-weight:100;
}

section#icthr h3{
	width:450px;
	margin-bottom:20px;
	margin-top:30px;
}

section#icthr div.padding{
	width:900px;
}

p.slid{
  margin: 0;
  height: 245px;
  width: 100%;
  display: block;
  background:url(../images/job.jpg)  repeat-x center top / cover;
  animation: head_back1 60s linear 0;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-direction: normal;

}

@keyframes head_back1{
    0% { background-position: 0px top }
    100% { background-position: 2000px top }
} */
/*section#logomark{
	-webkit-transform: skewY(10deg);
  -ms-transform: skewY(10deg);
  transform: skewY(10deg);
}

*/
/*
section#logomark{
	-webkit-transform: skew(0deg, -10deg);
}*/


/* .skew {
    background: #d40505;
    padding: 70px 0;


    }
    .content {
        width: 900px;
        margin: 0 auto;


        }
        .inner-box {
            width: 900px;
            margin: 0 auto;
            color: #fff;
            text-align: center;

            }


section#logomark{
	margin-top:60px;
			}
section#logomark h3{
	width:900px;
	text-align:left;
	padding-bottom:0;
}

section#logomark div.padding{
	width:900px;
	padding-left:0;
	padding-right:0;
	margin:0 auto;
	padding-bottom:0;
	padding-top:0;
	display:table;
}


section#logomark img{
	width:430px;
	height:75px;
	text-align:right;
	margin-right:0;
	padding-top:0;
	margin-top:0;
	display:table-cell;
	float:right;
	padding-left:0;
	padding-right:0;
}
section#logomark p.hhrlogo{
	display:table-cell;
	float:right;
	padding-left:0;

}
section#logomark p.text{
	width:450px;
	padding-top:0;
	margin-top:0;
	display:table-cell;
	float:left;
} */


/*会社概要---------------------------*/

/* section#companyprofile{
	height:350px;
	padding-top:30px;
	padding-bottom:0;
	margin-bottom:0;
	background:url(../images/companyprofile.jpg) no-repeat center/auto;
}
section#companyprofile h3{
	font-size:50px;
}
section#companyprofile h2{
	font-size:60px;
}

section#companyprofile div.padding{
	width:850px;
	margin:0 auto;
}

section#greeting div.padding{
	width:1000px;
	margin:0 auto;
}
section#greeting div.pc2{
	width:495px;
}

section#greeting h3{
	font-size:35px;
	text-align:center;
	margin-bottom:45px;
}
section#greeting h4{

	text-align:left;
	font-size:30px;
	font-weight:bold;
	margin-left:0;
	padding-left:0;

}
section#greeting div.pc2{
	font-size:15px;
	padding:0;


}
section#greeting div.pc2 p{
	padding-bottom:15px;

}
section#greeting h4.moriki_name{
	width:495px;
	text-align:right;
	margin-top:15px;
	margin-right:10px;
	margin-bottom:70px;
	padding-right:0;
}

section#greeting h4.moriki_name img{
	width:160px;
	margin-top:0;
	text-align:right;
	padding-right:10px;
}
section#ceo h4{
	width:260px;
}
section#moriki{
	background:#f5f7f9;
}

section#ceo{
	width:900px;
	margin:0 auto;
}

 div.ryakureki_waku{
	 width:900px;
	 margin:0 auto;
 }

 section#greeting h5{
	font-size:22px;
	font-weight:bold;
	border-left:3px solid #d40505;
	padding-left:5px;
	margin-bottom:10px;
	margin-top:10px;
}

div.ryakureki{
	width:725px;
	padding:15px;
	margin-bottom:10px;
	background-color: rgba(255, 255, 255, 0.7)
}
div.ryakureki h5{
	padding-left:100px;
}
div.ryakureki p{
	font-size:15px;
	padding-bottom:5px;
}
div.keireki_waku{
	width:900px;
	margin:0 auto;
	text-align:right;
	margin-left: auto;
}
div.keireki{
	text-align:right;
	padding-right:0;
	margin-right:0;
}
div.keireki p{
	margin-left: auto;
	width:320px;
	padding-bottom:15px;
	font-size:14px;
	background:#d40505;
	color:#ffffff;
	line-height:1.7;
	padding-top:15px;
	margin-top:-40px;
	right:0;
	padding-left:20px;
	margin-bottom:50px;
}
section#moriki{
	width:1100px;
	margin:0 auto;
	background:url(../images/moriki_pc.png) no-repeat right top ;
	padding-bottom:60px;
}
div.color{
	background:#f6f7f9;
	padding-top:150px;
	margin-top:-90px;
} */

/*プロフィール----------------------------------------------------------------*/

/* article#profile div.title{
	padding-top:120px;
	padding-bottom:120px;
}
article#profile div.title h2.about{
	font-size:72px;
	line-height:0.7;
}
article#profile div.title h2.about em{
	font-size:28px;
	font-weight:100;
} */

/*会社概要----------------------------------------------------------------*/
/* article#company{
	width:1000px;
	text-align:left;
	margin:0 auto;
}
article#company h3{
	padding-top:25px;
	font-size:62px;
	font-weight:bold;
	color:#d40505;
	margin:0 auto;
	text-align:center;
}
#company .padding{
	display: block;
	width: 100%;
}
article#company div.profile{
	margin-right:auto;
	margin-left:auto;
	margin-top:50px;
	width:900px;
	display:table;
	background:url(../images/companyimg.png) no-repeat right;
}
article#company div.profile img{
	width:380px;
	height:auto;
	display:table-cell;
	padding-right:0;
}
article#company table{
	width:520px ;
	display:table-cell;
}
article#company table tr{
	display:table-row;
}
article#company table th{
	padding:10px 5px;
	display:table-cell;
	text-align: left;
	width: 130px;
}
article#company table td{
	padding:10px 5px;
	display:table-cell;
	text-align: left;
	width: auto;
	border-style: none;
	line-height:1.5;
	font-weight:100;
}
article#profile h3{
	font-size:60px;
} */


/*アクセス-----------------------------*/
/* article#access {
	padding-top:0;
	margin:0 auto;
	padding-bottom:0;
}
article#access div{
	margin:0 auto;
}
article#access h3{
	padding:0;
	font-size:62px;
	font-weight:bold;
	color:#d40505;
	margin:30px auto;
	text-align:center;
}
article#access p{
	width:900px;
	margin-right:auto;
	margin-left:auto;
	margin-top:20px;
	margin-bottom:20px;
}
.ggmap {

height: 400px;
}

.ggmap iframe{
	margin-top: -140px;
}
article#privacy div.kiyaku{
	width:900px;
	margin-top:100px;
}
article#privacy h4{
	margin-bottom:20px;
}
article#privacy p{
	margin-bottom:0;
}
article#privacy div.jyouhou{
	border-top:2px solid #d40505;
	padding-top:30px;
} */


/*コンタクト------------------------------------------------*/


/* article#contact div.title{
	padding-top:110px;
	padding-bottom:110px;
	background:url(../images/contact.jpg)no-repeat center/cover;
}
article#contact div.title h2{
	font-size:72px;
	line-height:0.7;
}
article#contact div.title h2 em{
	font-size:28px;
	font-weight:100;
}
article#contact div{
	width:850px;
	margin:0 auto;
}
article#contact dl{
	width:850px;
	padding:10px;
	vertical-align:middle;
}
article#contact dt{
	padding-top:10px;
	width:160px;
	float:left;
	clear:both;
	margin-right:0;
	padding-right:0;
	font-size:16px;
}
article#contact dd{
	float:right;
	width:600px;
	padding-right:35px;
	margin-right:35px;
}
article#contact div.padding p.text{
	text-align:center;
	font-size:16px;
	margin-top:30px;
}
article#contact p.button{
	width:270px;
	text-align:center;
	margin:0 auto;
	padding-top:20px;
}

article#contact h3{
	font-size:30px;
	margin-top:80px;
}
article#contact div.formbutton{
	width:600px;
	display:block;
	margin-top:50px;

}
article#contact div.formbutton div.soushin{
	display:table-cell;
}

article#contact div.formbutton div.modoru{
	display:table-cell;
}
article#contact div.contact_top{
	margin-top:70px;
}
.checkbox {
	margin:0 auto;
	text-align:center;
	padding-bottom:0;
} */

/*リクルート------------------------------------------------------------------*/

/* article#recruit div.formbutton{
	width:600px;
	display:block;
	margin-top:50px;

}
article#recruit div.formbutton div.soushin{
	display:table-cell;
}

article#recruit div.formbutton div.modoru{
	display:table-cell;
}
article#recruit form{
	margin-top:10px;
} */
/* article#recruit div.title{
	padding-top:110px;
	padding-bottom:110px;
	background:#D40505; */
	/*
	background:url(../images/recruit.jpg)no-repeat center/cover;
	*/
/* } */
/* article#recruit div.title h2{
	font-size:60px;
	line-height:0.7;
}
article#recruit div.title h2 em{
	font-size:28px;
	font-weight:100;
}

article#recruit h3.kakunin{
	font-size:30px;
	margin-top:80px;
}
article#recruit p.text{
	text-align:center;
	font-size:16px;
}

article#recruit div{
	width:850px;
	margin:0 auto;
}
article#recruit dl{
	width:850px;
	padding:10px;
	vertical-align:middle;
}
article#recruit dt{
	padding-top:10px;
	width:160px;
	float:left;
	clear:both;
	margin-right:0;
	padding-right:0;
	font-size:16px;
}
article#recruit dd{
	float:right;
	width:600px;
	padding-right:35px;
	margin-right:35px;
}

article#recruit p.button{
	width:270px;
	text-align:center;
	margin:0 auto;
	padding-top:20px;
}

#age{
	width:auto;
}

article#recruit h3.entry{
	margin-top:70px;
	font-size:50px;
} */
/*
article#recruit div.title{
	padding-top:110px;
	padding-bottom:110px;
}
article#recruit div.title h2.recruit{
	font-size:72px;
	line-height:0.7;
}

article#recruit div.title h2.recruit em{
	font-size:28px;
	font-weight:100;
}*/



/*フッター----------------------------------------------------------------------*/
footer{
	background-color:#3e403e;
	width:100%;
	height:auto;
	margin-bottom:0;
}



footer img{
	width:250px;
}
footer p{
	width:1000px;
	margin:0 auto;
	padding-top:20px;
	padding-bottom:10px;
	text-align:left;
}

div#footer_menu{
	width:1000px;
	margin:0 auto;
	padding-top:30px;
	padding-bottom:60px;
	background-color:#1b1b1b;
	border-top:2px solid #fff;
	text-align:center;
}
div#footer_menu img{
	width:150px;
	padding:0;
	margin-top:-10px;
	margin-left:0;
	margin-bottom:20px;
}
div#footer_menu dl{
	height:auto;
    display: inline-block;
	margin-left:11px;
	margin-right:11px;
	vertical-align:top;
	padding:0;
	}
div#footer_menu dl dt{
	padding-left:0;
	color:#fff;
	font-size:18px;
	font-size:1.8rem;
	font-weight:400;
	text-align:left;
}

div#footer_menu dl dd{
	vertical-align: top;
	text-align:left;
	font-size:13px;
	font-size:1.3rem;
	font-weight:200;
	margin-top:10px;
	color:#fff;
	line-height:2;
}
div#footer_menu a{
	color:#fff;
}

}


/***************************************

	 Bokuravo

***************************************/

.all_wrap{
	overflow: hidden;
}

.head_inner{
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

/***************************************

first view

***************************************/

.fv_box{
	padding-bottom: 0;
	position: relative;
	width: 100%;
}

.fv_text{
	color: #fff;
	font-size: 4.5vw;
	font-weight: bold;
	letter-spacing: 0.3rem;
	line-height: 1.5;
	text-align: center;
	position: absolute;
	top: 58%;
	left: 50%;
	-webkit-transition:0.3s ease-in-out;
	transition:0.3s ease-in-out;
	-webkit-transform: translate(-50%, -60%);
	transform: translate(-50%, -60%);
}

.fv_text_catch{
	white-space: nowrap;
}

.fv_text--small{
	display: block;
	font-size: 2.3vw;
	margin-top: 2rem;
	text-align: center;
}

@media only screen and (min-width:960px){
	.fv_text{
		font-size: 70px;
	}

	.fv_text--small{
		font-size: 18px;
	}
}

@media only screen and (max-width:768px){
	.head_inner{
		display: block;
	}
	.fv_box{
		padding-top: 55px;
	}
}

/***************************************

SERVICE

***************************************/

@media only screen and (max-width:768px){
	article#top_service{
		padding-top: 68px;
		padding-bottom: 38px;
	}

	h1{
		padding: 18px 0 18px 10px;
	}

	article#top_service h2{
		font-size: 11.5vw;
		line-height: 2;
	}

	article#top_service h2.service_orange{
    margin: 20px auto 50px;
	}

	article#top_service p{
		padding-bottom: 14px;
	}
}

/***************************************

facebook_pageplugin

***************************************/
.fb_plugin_container {
	width: 55%;
  height: 55rem;
	margin: 0 auto;
	display: block;
	border: none;
	overflow: hidden;
}

.facebook-wrapper {
    max-width: 500px;
    margin: 0 auto;
}
.facebook-wrapper > .fb-page {
    width: 100%;
}
.facebook-wrapper > .fb-page > span,
.facebook-wrapper iframe {
    width: 100% !important;
}

@media only screen and (max-width: 768px){
	.fb_plugin_container {
		width: 90%;
	}
}

/***************************************

COMPANY

***************************************/

article#top_company{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	height: 668px;
	overflow: hidden;
	padding: 0;
	background: #3e403e;
}

.company_prof_box{
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	max-width: 524px;
	margin: 0 auto;
	text-align: center;
	width: 100%;
}

.top_company_left{
	background: url("../images/company_img.jpg")no-repeat center / cover;
	height: 100%;
	width: 50%;
}

.top_company_right{
	background: #3e403e;
	height: 100%;
	padding: 60px 0 75px;
	text-align: center;
	width: 50%;
}

.company_prof_list{
	width: 100%;
	margin: 0 auto;
	padding-top: 5rem;
	padding-bottom: 5rem;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	border-bottom: 1px solid #fff;
  border-top: 1px solid #fff;
}


@media only screen and (max-width: 768px){
	.company_prof_list{
	padding-top: 3rem;
	padding-bottom: 3rem;
    padding-left: 0%;
}
	.company_prof_list {
		width: 90%;
	}

}

.company_prof_dt,
.company_prof_dd{
	color: #fff;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.1rem;
	margin: 1rem 0;
	font-weight: normal;
	font-family: 'Noto Sans JP', sans-serif;
}

.company_prof_dt{
	margin-right: 3%;
	text-align: right;
	width: 23%;
}

.company_prof_dd{
	width: 74%;
}

.company_prof_dd a{
	color: #fff;
}

div#pagetop img{
	vertical-align: baseline;
	width:auto;
}

@media only screen and (max-width:1100px){
	article#top_company{
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		height:auto;
	}

	.top_company_left{
		padding-top: 100%;
		background-position: center bottom;
	}

	.top_company_right{
		padding: 0;
	}

	.top_company_left,
	.top_company_right{
		width: 100%;
	}
}

@media only screen and (max-width:768px){
	.company_prof_list{
		margin: 0 auto;
		max-width: 100%;
				margin-bottom: 4em;

	}
}

@media only screen and (max-width:640px){
	.company_prof_list{
		display: block;
	}

	.company_prof_dt,
	.company_prof_dd{
		width: 100%;
	}

	.company_prof_dt{
		margin-right: 0;
		text-align: left;
	}

	.company_prof_dd{
		margin-bottom: 30px;
	}
}


/***************************************

footer

***************************************/

footer ul{
	padding: 100px 0;
	text-align: center;
	width: 100%;
}

footer ul li{
	display: block;
	line-height: 1.8;
	text-align: center;
}

footer ul li a{
	display: block;
	font-size: 16px;
}

footer ul li a:hover{
	text-decoration: underline;
}

@media only screen and (min-width:768px){

	footer ul li{
		border-right: 1px solid #fff;
		display: inline-block;
		vertical-align: middle;
	}

	footer ul li:last-child{
		border-right: none;
	}

	footer li .fnav_item {
		font-family: 'Lato', sans-serif;
	}

	footer li .fnav_link {
		font-family: 'Noto Sans JP', sans-serif;
	}

}

@media only screen and (max-width:768px){

	footer address{
		font-size: 18px;
		font-weight: lighter;
		display: inline-block;
	}

	footer ul li{
    line-height: 2;
	}

	footer li .fnav_item {
		font-family: 'Lato', sans-serif;
	}

	footer li .fnav_link {
		font-family: 'Noto Sans JP', sans-serif;
	}

}


/*---------- 問い合わせフォーム ----------*/
.mailform {
	padding: 50px 20px;
}

.mailform-inner {
    max-width: 900px;
	margin: 0 auto;
}

.mailform__title {
    font-size: 20px;
    padding: 15px 10px;
    border-bottom: 1px solid #3e403e;
    margin-bottom: 10px;
}

.formTable {
    font-size: 15px;
    line-height: 1.75;
	width: 100%;
	margin: 0 auto;
	border-collapse: collapse;
}

.formTable tr {
    border-bottom: 1px solid #ccc;
}

.formTable th, .formTable td {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.formTable th {
    white-space: nowrap;
    vertical-align: top;
    padding: 30px 10px;
}

.formTable th .required {
    color: red;
    margin-left: 0.5em;
}

.formTable td {
    padding: 25px 10px;
}

.formTable td .radio {
    display: inline-block;
    margin: 3px 15px 3px 0;
}

input[type="text"], textarea {
    line-height: 1.75;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px;
    border: 1px solid #bfbfbf;
    border-radius: 5px;
}

textarea {
    width: 100%;
}

.mailform .button {
    text-align: center;
    margin-top: 50px;
}

.mailform .button input {
    padding: 10px 20px;
    margin: 15px;
    cursor: pointer;
}

@media screen and (min-width: 768px) {
    .mailform {
        padding: 100px 20px;
    }
}

@media screen and (max-width: 767px) {
    .formTable th, .formTable td {
        display: block;
        width: 100%;
    }
    
    .formTable td {
        margin-top: -25px;
    }
}