@charset "utf-8";


header .page_title_bg01{
background-image: url("/images/main01.jpg");
}
header .page_title_bg02{
background-image: url("/images/main02.jpg");
}
header .page_title_bg03{
background-image: url("/images/main03.jpg");
}
header .slick-dots {
    position: absolute;
    right: 0;
    left: 0;
    bottom: 12px;
    text-align: center;
}

header .slick-dots li {
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
}

header .slick-dots li button {
    position: relative;
    overflow: hidden;
    width: 20px;
    height: 0;
    margin: 0;
    padding: 20px 0 0;
    border: 0;
    background: none;
    line-height: 20px;
    vertical-align: middle;
}

header .slick-dots li button:after {
    content: "";
    position: absolute;
    top: 3px;
    right: 3px;
    bottom: 3px;
    left: 3px;
    border: 1px solid #fff;
    border-radius: 100%;
    transition: border .5s, background .5s;
}

header .slick-dots li.slick-active button:after {
    background-color: #ffffff;
}


.wrap   {
width: 100%;
margin: 0;
padding: 100px 0;
}
.wrap.links   {
padding: 50px 0 40px;
}
.wrap.home_address   {
padding: 50px 0;
}
.wrap section	{
margin: 0 10px;
}
@media screen and (min-width:980px),
print{
	.wrap section   {
	width: 980px;
	margin: 0 auto;
	}
}


.index {
margin-bottom: 40px;
}
.index h1 {
font-size: 3.2rem;
line-height: 1.2;
color: #ccc;
position: relative;
display: inline-block;
margin-bottom: 15px;
}
.index h1.tit {
font-size: 2.8rem;
line-height: 1.2;
color: #747474;
position: relative;
display: inline-block;
margin-bottom: 15px;
}

.index h1:before {
content: '';
position: absolute;
bottom: -5px;
display: inline-block;
width: 100%;
height: 1px;
background-color: #65747c;
}
.index p	{
font-size: 1.3rem;
line-height: 1.5;
}
.copy h2	{
font-size: 2rem;
color: #65747c;
line-height: 1.5;
margin-bottom: 25px;
}
@media screen and (min-width:980px),
print{
.copy h2	{
font-size: 2.7rem;
}
}
.copy p	{
font-size: 1.6rem;
line-height: 2.2;
}

.about_us .index	{
text-align: center;
}
@media screen and (min-width:640px){
.about_us .index	{
text-align: left;
}
.wrap.about_us   {
padding: 0;
}
.about_us	{
background-color: #f7f7f7;
background-image: url(../images/us_bg.jpg);
background-repeat: no-repeat;
background-position: right center;
}
.about_us_inner	{
background:linear-gradient(90deg,White 0%,white 40%,transparent 40%,transparent 100%);
}
.about_us_shadow	{
width: 70%;
background-color: #fff;
box-shadow: 12px 0 12px 0 rgba(102,102,102,0.1);
padding: 100px 0;
}
.about_us .copy h2	{
margin-right: 30px;
}
.about_us .copy p	{
margin-right: 30px;
}
}

.service	{
position: relative;
}
.service .service_bg	{
position: absolute;
content: " ";
top: 0;
width: 100%;
height: 330px;
background-color: #566369;
}
.service section	{
position: relative;
}

.service_item ul	{
padding-left: 20px;
}
@media screen and (min-width:980px),
print{
.service_item ul	{
padding-left: 0;
}
.service_item	{
margin-right: -20px;
}
}

.service_item li	{
float: left;
margin-bottom: 30px;
}
.service_item li div.item_inner	{
text-align: center;
margin-right: 20px;
background-color: #ffffff;
box-shadow: 12px 12px 12px 0 rgba(102,102,102,0.1);
padding-bottom: 30px;
}
@media screen and (min-width:479px){
.service_item li	{
width: 50%;
}
.service_item li div.item_inner	{
height: 320px;
padding-bottom: 0;
}
}
@media screen and (min-width:768px){
.service_item li	{
width: 33%;
}
.service_item li div.item_inner	{
height: 300px;
}
}
@media screen and (min-width:980px),
print{
.service_item li	{
width: 25%;
}
.service_item li div.item_inner	{
height: 300px;
}
}


.service_item li div.item_inner p img	{
margin: 12px 0 18px;
}
.service_item li dt	{
font-size: 1.6rem;
color: #65747c;
font-weight: 700;
position: relative;
display: inline-block;
margin-bottom: 10px;
}
.service_item li dt:before {
content: '';
position: absolute;
top: -5px;
display: inline-block;
width: 55px;
height: 1px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background-color: #65747c;
}
.service_item li dd	{
padding: 0 25px;
text-align: left;
font-size: 1.5rem;
line-height: 1.5;
}
@media screen and (min-width:479px)	{
.service_item li dd	{
line-height: 1.8;
}
}
@media screen and (min-width:980px),
print{
.service_item li dd	{
line-height: 1.8;
}
}
/*hover*/
.service_item li div.item_inner	{
position: relative;
}
.service_item li div.item_inner div.hover_border	{
position: absolute;
left: 3px;
right: 3px;
bottom: 0;
content: " ";
margin: 0;
height: 25px;
background-image: url(../images/box_hoverA.png);
background-position: right bottom;
background-repeat: no-repeat;
}
.service_item li div.item_inner:hover div.hover_border	{
background-image: url(../images/box_hoverB.png);
}




.info	{
background-image: url(../../images/info_bg.jpg);
background-size: cover;
}
.info h1	{
font-size: 3.2rem;
color: #fff;
}

.info_index li	{
border-top: solid 1px #fff;
font-size: 1.6rem;
}
.info_index li:last-child	{
border-bottom: solid 1px #fff;
}
.info_index li a	{
display: block;
width: 100%;
padding: 20px;
text-decoration: none;
color: #fff;
}
.info_index li a:hover	{
background-color: rgba(255,255,255,0.3);
}
.info_index li a div	{
display: inline-block;
}
.info_index li a div.date	{
width: 20%;
}
.info_index li a div.cat span	{
font-size: 1.2rem;
background-color: #2f557c;
display: inline-block;
padding: 0 20px;
white-space: nowrap;
}
@media screen and (min-width:768px),
print{
.info_index li a	{
display: table;
padding: 20px 0;
}
.info_index li a div,
.info_index li a p	{
display: table-cell;
}
.info_index li a div.date	{
width: 20%;
text-align: center;
}
.info_index li a p	{
width: 67%;
}
}





.gmap	{
width: 100%;
height: 500px;
}
@media screen and (min-width: 980px),
print {
.gmap	{
height: 350px;
}
}


.home_address p	{
font-size: 1.5rem;
}


.links	{
background-color: #f7f7f7;
}
.bnr li	{
float: left;
width: 100%;
margin-bottom: 10px;
}
.bnr li a	{
display: block;
background-size: cover;
text-align: center;
text-decoration: none;
color: #fff;
font-weight: 700;
font-size: 2rem;
height: 128px;
line-height: 128px;
}
@media screen and (min-width: 768px),
print {
.bnr li	{
width: 50%;
}
.bnr li a	{
height: 158px;
line-height: 158px;
}
.bnr li.to_company a	{
margin-right: 10px;
}
.bnr li.to_recruit a	{
margin-left: 10px;
}
}
.bnr li.to_company a	{
background-image: url(../images/bnr01.jpg);
}
.bnr li.to_recruit a	{
background-image: url(../images/bnr02.jpg);
}
.c_ccc   {
color: #ccc;
}


@media screen and (min-width:980px),
print{
.copy h2	{
font-size: 2.7rem;
}
}
.copy p	{
font-size: 1.6rem;
line-height: 2.2;
}

.setsubi_ph img	{
margin: 0 0 30px;
}
.setsubi_copy p	{
font-size: 1.6rem;
}
@media screen and (min-width:480px)	{
.setsubi_ph	{
width: 460px;
margin: 0 auto;
}
}
@media screen and (min-width:980px),
print{
.setsubi_ph	{
float: left;
width: 50%;
}
.setsubi_ph img	{
margin: 0 30px 30px 0;
}
}


.service_item ul	{
padding-left: 20px;
}
@media screen and (min-width:980px),
print{
.service_item ul	{
padding-left: 0;
}
.service_item	{
margin-right: -20px;
}
}


.service_item li	{
float: left;
margin-bottom: 30px;
}
.service_item li div.item_inner	{
text-align: center;
margin-right: 20px;
background-color: #ffffff;
box-shadow: 12px 12px 12px 0 rgba(102,102,102,0.1);
padding-bottom: 30px;
}
@media screen and (min-width:479px),
print{
.service_item li	{
width: 50%;
}
.service_item li div.item_inner	{
height: 320px;
padding-bottom: 0;
}
}
@media screen and (min-width:768px),
print{
.service_item li	{
width: 33%;
}
.service_item li div.item_inner	{
height: 300px;
}
}
@media screen and (min-width:980px),
print{
.service_item li:nth-child(2),
.service_item li:nth-child(5)	{
width: 34%;
}
}


.service_item.icon_only li	{
width: 50%;
}
@media screen and (min-width:480px),
print{
.service_item.icon_only li	{
width: 33%;
}
}
@media screen and (min-width:980px),
print{
.service_item.icon_only li	{
width: 16%;
}
.service_item.icon_only li:nth-child(2n)	{
width: 17%;
}
}
.service_item.icon_only li div.item_inner	{
height: 150px;
}


.service_item li div.item_inner p img	{
margin: 12px 0 18px;
}
.service_item li dt	{
font-size: 1.8rem;
color: #65747c;
font-weight: 700;
position: relative;
display: inline-block;
margin-bottom: 10px;
}
.service_item li dt:before {
content: '';
position: absolute;
top: -5px;
display: inline-block;
width: 55px;
height: 1px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background-color: #65747c;
}
.service_item li dd	{
padding: 0 25px;
text-align: left;
font-size: 1.5rem;
line-height: 1.5;
}
@media screen and (min-width:479px),
print{
.service_item li dd	{
line-height: 1.8;
}
}

/*hover*/
.service_item li div.item_inner	{
position: relative;
}
.service_item li div.item_inner div.hover_border	{
position: absolute;
left: 3px;
right: 3px;
bottom: 0;
content: " ";
margin: 0;
height: 25px;
background-image: url(../images/box_hoverA.png);
background-position: right bottom;
background-repeat: no-repeat;
}
.service_item li div.item_inner:hover div.hover_border	{
background-image: url(../images/box_hoverB.png);
}



























.service_item li div.item_inner02	{
text-align: center;
margin-right: 20px;
background-color: #ffffff;
box-shadow: 12px 12px 12px 0 rgba(102,102,102,0.1);
padding-bottom: 30px;
}
@media screen and (min-width:479px){

.service_item li div.item_inner02	{
height: 320px;
padding-bottom: 0;
}
}
@media screen and (min-width:768px){

.service_item li div.item_inner02	{
height: 300px;
}
}
@media screen and (min-width:980px),
print{

.service_item li div.item_inner02	{
height: 300px;
}
}


.service_item li div.item_inner02 p img	{
margin: 12px 0 18px;
}


/*hover*/
.service_item li div.item_inner02	{
position: relative;
}
.service_item li div.item_inner02 div.hover_border	{
position: absolute;
left: 3px;
right: 3px;
bottom: 0;
content: " ";
margin: 0;
height: 25px;
background-image: url(../images/box_hoverA.png);
background-position: right bottom;
background-repeat: no-repeat;
}
.service_item li div.item_inner02:hover div.hover_border	{
background-image: url(../images/box_hoverB.png);
}



.service_item li div.item_inner02	{
text-align: center;
margin-right: 20px;
background-color: #ffffff;
box-shadow: 12px 12px 12px 0 rgba(102,102,102,0.1);
padding-bottom: 30px;
}
@media screen and (min-width:479px),

.service_item li div.item_inner02	{
height: 320px;
padding-bottom: 0;
}
}
@media screen and (min-width:768px),

.service_item li div.item_inner02	{
height: 300px;
}
}



.service_item.icon_only li div.item_inner02	{
height: 150px;
}


.service_item li div.item_inner02 p img	{
margin: 12px 0 18px;
}


/*hover*/
.service_item li div.item_inner02	{
position: relative;
}
.service_item li div.item_inner02 div.hover_border	{
position: absolute;
left: 3px;
right: 3px;
bottom: 0;
content: " ";
margin: 0;
height: 25px;
background-image: url(../images/box_hoverA.png);
background-position: right bottom;
background-repeat: no-repeat;
}
.service_item li div.item_inner02:hover div.hover_border	{
background-image: url(../images/box_hoverB.png);
}



