@charset "utf-8";
/* ==============================================================================
   common
============================================================================== */
.inner {
	width: 1148px;
	height: auto;
	margin: 0 auto;
	overflow: hidden;
}
.font-mincho {
	font-family:  "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
	line-height:1.8;
}
a {
	text-decoration: none;
	color: #000000;
}
a:hover {
	text-decoration: underline;
	color: #333;
}

.btn01 {
	
}
.btn01 a {
	display: block;
}

.btn01 img {
    -moz-transition: -moz-transform 0.2s linear;
    -webkit-transition: -webkit-transform 0.2s linear;
    -o-transition: -o-transform 0.2s linear;
    -ms-transition: -ms-transform 0.2s linear;
    transition: transform 0.2s linear;
}
.btn01 img:hover {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}
.sp{
	display: none;
}
@media screen and (max-width: 767px) {
.sp{
	display: block;
}	
}

/* ==============================================================================
   #top
============================================================================== */
#top {
}
/* ==============================================================================
   #mainimg
============================================================================== */

body, html, main {
	/* important */
	height: 100%;
}
.cd-fixed-bg {
	background-size: 100%;
	background-attachment: fixed;
	background-repeat: no-repeat;
}
.cd-no-bg {
	background-size: 100%;
	height: 400px;
	background-repeat: no-repeat;
	background-position: center center;
}
.cd-bg-1 {
	background-image: url("../images/mainimg_top01.jpg");
	height: 750px;
}
.cd-bg-2 {
	background-image: url("../images/bg_topcompany01.jpg");

}
.cd-bg-3 {
	background-image: url("../images/mainimg_top03.jpg");
	height: 531px;
}
.cd-bg-4 {
	background-image: url("../images/mainimg_top04.jpg");
	height: 530px;
}
.cd-bg-5 {
	background-image: url("../images/mainimg_top05.jpg");
	height: 590px;
}
.cd-bg-6 {
	background-image: url("../images/mainimg_top06.jpg");
	height: 183px;
}

.cd-scrolling-bg {
	min-height: 100%;
}
/* ==============================================================================
   header
============================================================================== */
#header {
	position: relative;
}
#header .inner {
	position: relative;
}
#header .logo {
	margin: 22px 0 0 0;
}

#header .mainlogo{
	position: absolute;
	width: 598px;
	height: 112px;
	top:0;
	bottom:0;
	left: 0;
	right: 0;
	margin: auto;
}

#header .mainlogoco{
	position: absolute;
	width: 285px;
	height: 75px;
	top:0;
	bottom:0;
	left: 0;
	right: 0;
	margin: auto;
}
#header .mainlogorec{
	position: absolute;
	width: 244px;
	height: 76px;
	top:0;
	bottom:0;
	left: 0;
	right: 0;
	margin: auto;
}

#header .mainarrow{
	position: absolute;
	width: 46px;
	height: 45px;
	bottom:135px;
	left: 0;
	right: 0;
	margin: auto;
}

#header .mainarrowco{
	position: absolute;
	width: 277px;
	height: 37px;
	bottom:135px;
	left: 0;
	right: 0;
	margin: auto;
}

/* ==============================================================================
   nav
============================================================================== */
.fixednav {
	position: fixed;
	width: 100%;
	height: 85px;
	z-index: 9999;
	background-color: rgba(255,255,255,0.3);
}
/* ==============================================================================
   nav
============================================================================== */
.nav {
	position: absolute;
	top: 44px;
	right: 0;
}
.nav li {
	float: left;
	margin: 0 0 0 38px;
	font-size:15px;
	line-height:1.4;
	text-align: center;
}
.nav li.dot::after {
	content: "●";
	display: block;
}


.nav li a {
	color: #FFFFFF;

}

.pagenav a {
	color: #000 !important;
}

/* ==============================================================================
   contents(TOP)
============================================================================== */
#contents {
}
.bg01 {
	background: #CCC;
}

.bggray{
	background: #9B9B9B;
}



.box01 {
	text-align: center;
	padding: 60px 0;
	clear: both;
}
.box02 {
	text-align: center;
	padding: 100px 0;
	clear: both;
}
.topservice01{
	font-size: 0;
}

.cd-bg-2 table{
	width: 335px;
	color: #FFFFFF;
	margin: 60px auto 0 auto;
	text-align: left;
}

.cd-bg-2 table th{
	padding: 0 0 35px 0;
	width: 100px;
	font-weight: normal;
}

.cd-bg-2 table td{
	padding: 0 0 35px 0;
	
}

.ceobox{
	width: 940px;
	margin: 40px auto 50px auto;
	text-align: left;
}





.box01 .btns{
	width: 25px;
	height: 36px;
	font-size: 14px;
	text-align: center;
	line-height: 1.1;
	margin: 0 auto;
}
.topAboutBox{
	width: 706px;
	height: 159px;
	background: url(../images/bk_topabout01.png) no-repeat;
	margin: 0 auto;
}

.topAboutBox ul{
	overflow: hidden;
	padding: 30px 0 0 0;
}
.topAboutBox li{
	margin: 0 0 4px 20px;
	font-size: 17px;
	text-align:left;
}


.toprecruit{
	width: 825px;
	height: 329px;
	background: url(../images/bk_toprecruit01.png) no-repeat;
	margin: 0 auto;
	position: relative;
}


.toprecruit .btns{
	position: absolute;
	top:0;
	bottom: 0;
	right: 20px;
	margin: auto;
	width: 25px;
	height: 36px;
	font-size: 10px;
	text-align: center;
	line-height: 1.1;
}

/* ==============================================================================
   #pagetop 
============================================================================== */
	
#pagetop {
	width: 41px;
	position: fixed;
	bottom: 10px;
	right: 10px;
}
/* ==============================================================================
   #footer
============================================================================== */	
#footer {
}
#footer .footerNav{
	background: #464242;
	height: 113px;

	border-top: #0081BA 10px solid;
}

#footer .footerNav ul{
	text-align: center;
	padding: 47px 0 0 0;
}

#footer .footerNav li{
	display: inline-block;
	margin: 0 0 0 40px;
}
#footer .footerNav li a{
	color: #FFFFFF
}
#footer .footerNav li:first-child{
	margin: 0 0 0 0px;
}

#footer .footerLogo{
	text-align: center;
	padding : 20px 0;
}


.copyright{
	background: #464242;
	font-size: 12px;
	text-align: center;
	padding : 8px 0;
	color: #FFFFFF;
}

/* ==============================================================================
   .page
============================================================================== */	

.page{
	padding: 87px 0 0 0;
}

.pagettl{
	padding: 60px 0;
	text-align: center;
}


.seviceBox01{
	clear: both;
	width: 830px;
	margin: 60px auto;
	overflow: hidden;
}

.seviceBox01 .ttl{
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 50px 0;
}

.seviceBox01 .fltL{
	width: 295px;
	
}
.seviceBox01 .fltR{
	width: 510px;
	text-align: left;
	
}


.seviceBox02{
	clear: both;
	width: 830px;
	margin: 60px auto;
	overflow: hidden;
}

.seviceBox02 .ttl{
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 50px 0;
}

.seviceBox02 .fltL{
	width: 510px;
	text-align: left;
	
}
.seviceBox02 .fltR{
	width: 295px;
	
}


.aboutBox{
	clear: both;
	width: 453px;
	margin: 60px auto;
	overflow: hidden;

}

.aboutBox .ttl{
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 50px 0;
	text-align: center;
}

.aboutBox th{
	width: 120px;
	padding: 10px 0;
	text-align: left;
}
.aboutBox td{
	padding: 10px 0;
	text-align: left;
}


.map{
	text-align: center;
	margin:40px auto;
	width: 600px;
}

.newsbox{
	margin: 55px auto;
	width: 820px;
	
}


.newslist{
	padding: 20px 34px;
	position: relative;
	margin: 0 auto 10px auto;
	overflow: hidden;
	width: 650px;

}

.newslist li{
	padding: 10px 0;
	border-bottom: 1px #666 dotted;
	clear: both;
	overflow: hidden;
	text-align: left;
}

.newslist .date{
	display: block;
	float: left;
	margin: 0 50px 0 0;
	padding: 2px 0 0 0;
}
.newslist .cat{
	float: left;
	width: 74px;
	background: #333333;
	text-align: center;
	color: #FFF;
	font-size: 12px;
	padding: 4px 0px;
	display: block;
	margin: 0px 50px 0 0;
}
.newslist .txt{
	display: block;
	float: left;
	padding: 2px 0 0 0;
	width: 350px;
	overflow: hidden;
}

.newslist .arrow{
	float: right;
	padding: 5px 0 0 0;
	margin: 0px 0px 0 10px;
}

.newslist .btns{
	position: absolute;
	top:15px ;
	right: 15px ;
	width: 25px;
	height: 36px;
	font-size: 14px;
	text-align: center;
	line-height: 1.1;
	padding: 0px 0 0 0;
}


.wp-pagenavi{
	margin: 40px 0;
	text-align: center;
}
.fullimg img{
	width: 100%;
	height: auto;
}


.privacyInner{
	width:600px;
	margin:0 auto;
	}








