@charset "utf-8";
body {background: #f8f8f8;}

h2{display: block;
text-align: center;
}
h2 span.title__sub{
display: block;
color: #888;	
}
/*ニュース
-------------------------------------------*/
.news{
background: #1b1b1b;
	
}
.news dl{	border-bottom: #444 solid 1px;
padding:12px 10px 10px;
	color: #fff;
}
.news dl dt{
font-size: 0.94em;
display: inline-block;
width: 98px;
vertical-align: top;line-height: 1.4;
}
.news dl dd{font-size: 0.94em;display: inline-block;
width:calc(100% - 105px);vertical-align: top;line-height: 1.4; }
.news p{
margin-top: 15px;
}
.news a{
	color: #f8f8f8;
}
.news a:hover{
	text-decoration: none;
	color: #fff;
	
}
#news{
		position: relative;
		z-index: 999;
	}
@media screen and (min-width:761px) {
	.news{
	max-height: 170px;
	overflow: hidden;
	overflow-y: scroll;
	}
	}
@media screen and (min-width:1101px) {
	.news{
	padding: 15px 25px 25px;
	margin-top: -55px;
	margin-left: auto;
	margin-right: auto;
	}
}
@media screen and (max-width:1100px) {
	.news{
	padding: 15px 25px 25px;
	margin-top: -50px;
	}
}
@media screen and (max-width:760px) {
	#news{padding-top: 25px;}
	.news{
	padding: 12px 15px 17px;
	margin-top: 0px;
	}
}
@media screen and (max-width:560px) {
	.news dl dt{
	display: block;
	width: auto;
	}
	.news dl dd{display:block;
	width:auto; }
}
/*コンセプト
-------------------------------------------*/
#concept{
padding-top: 90px;
padding-bottom: 95px;
}
.concept{
	margin-top:35px;
	margin-bottom: 50px;
}
.concept>div{
	width:320px;
	padding: 30px 20px 25px 20px;
	background: #fff;
	box-shadow: rgba(0, 0, 0, 0.1) 0px 20px 25px -5px, rgba(0, 0, 0, 0.04) 0px 10px 10px -5px;
}
.concept>div h3{
	font-size: 3em;
	padding-bottom: 0.4em;
	padding-top: 0.5em;
	color: #0a3fa7;
}
@media screen and (min-width:761px) {
.concept>div{
text-align: center;
}
.concept>div.left{margin-right: auto;
}
.concept>div.center{margin-left: auto;
margin-right: auto;}
.concept>div.right{margin-left: auto;}
}
@media screen and (max-width:1250px) {
.concept>div{
	width:26vw;
	padding: 30px 2vw 25px;
}
}
@media screen and (max-width:1100px) {
.concept>div{
	width:27.5vw;
	padding: 30px 1.5vw 25px;
}
}
@media screen and (max-width:760px) {
	#concept{
padding-top: 9.8vw;
padding-bottom: 12vw;
}
	#flex_box .flex_box{
display: -webkit-block;
		display: block;
	}
.concept>div{
	width:85%;
	padding: 30px 5% 25px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
}
.concept>div{display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
flex-wrap: wrap;
-webkit-flex-wrap: wrap;
-moz-flex-wrap: wrap;
	align-items: center;
-webkit-align-items: center;
-moz-align-items: center;
	}
.concept>div h3{
	font-size: 7vw;
	padding-bottom:2.6vw;
	padding-top: 0;
}	
.concept>div .img{width: 30%;}
.concept>div .text{width: 64%;padding-left: 6%;}
	
}
@media screen and (max-width:560px) {
.concept>div{
	width:87%;
	padding: 30px 4% 25px;
	
}
.concept>div .img{width: 33%;}
.concept>div .text{width: 64%;padding-left: 3%;}

}
/*サービス
-------------------------------------------*/
.service {
  width: 100%;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
}
.service__item {
  width: calc( 99.9% / 3);
  background-color: #0a3fa7;
}
.service__photo {
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% 50%;
}
.service__item__text--02{
	background: #1b1b1b;
}
.service__photo--01 {
  background-image: url(../img/index/service_img4.jpg);
}

.service__photo--02 {
  background-image: url(../img/index/service_img5.jpg);
}
.service__photo--03 {
  background-image: url(../img/index/service_img6.jpg);
}

.service__item__text__inner__title {
  margin-bottom: 25px;
  font-size:2.25em;
  line-height: 1.01em;
  color: #fff;
 white-space: nowrap;
 
}
.service__item__text__inner__title span.item{
	color: #8f8f8f;
	font-size: 0.4em;
	display: block;
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
    margin-bottom: 5px;

}
.service__item__text__inner__title span.line{
	width: 27px;
	border-bottom: #fff solid 1px;
	display: block;
	margin-top: 15px;
}
.service__item__text__inner__text {
  font-size: 0.94em;
  line-height: 1.6;
  color: #fff;
	padding-right: 2em;

	
}
.service__item__text__inner__text p{
	margin-bottom: 30px;
}

.service__item__text{
	position: relative;


}
  .service__item__text__inner {
	  position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
	  	padding-left: 3em;
	padding-right: 1.5em;
  }
.service__item__text,.service__photo{height: 320px;}
@media screen and (max-width: 1250px) {
	.service__item__text,.service__photo{height: 300px;}
	
	
}
@media screen and (max-width: 1100px) {
	.service__item__text,.service__photo{height: 280px;}
	
	.service__item__text__inner__title {
  margin-bottom: 2vw;
  font-size:3.4vw;
 
}
.service__item__text__inner__title span.item{
    margin-bottom: 0.5vw;
	 font-size:1.5vw;
}
.service__item__text__inner__title span.line{
	margin-top: 1vw;
}
	.service__item__text__inner {
	  	padding-left: 3.2vw;
	padding-right: 1vw;
  }
	.service__item__text__inner__text p{
	margin-bottom: 2.5vw;
}
}
@media screen and (max-width: 760px) {
	.service {display: -webkit-block;
		display: block;}
	.service__item{width:100%;
	display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
	
	}
  .service__item__text,.service__photo {
    width: 50%;
  }
		.service__item__text,.service__photo{height: 40vw;}
	
	.service__item__text__inner__title {
  margin-bottom: 2vw;
  font-size:4.2vw;
 
}
.service__item__text__inner__title span.item{
    margin-bottom: 0.5vw;
	 font-size:1.5vw;
}
.service__item__text__inner__title span.line{
	margin-top: 1.2vw;
}
	.service__item__text__inner {
	  	padding-left: 3.2vw;
	padding-right: 0vw;
  }
	.service__item__text__inner__text p{
	margin-bottom: 2.5vw;
		font-size:2.4vw;
}
}
/*company
-------------------------------------------*/
#company{
padding-top: 90px;
padding-bottom: 95px;
	background: #fff;
}
.company{
padding-top: 40px;
}
.company>div.left{
	width: 47%;
	padding-right:3%;

}
.company>div.right{
	width: 47%;
	padding-left:3%;
}
.company dl{
	margin-bottom: 1em;
}
.company dl dt{
	display: inline-block;
	vertical-align: top;
	width: 110px;
font-size: 0.88em;
text-align: center;
	
	padding-bottom: 0.5em;
}
.company dl dd{
	display: inline-block;
	vertical-align: top;
	padding-left: 20px;
	width: calc(99% - 130px);
	font-size: 0.94em;
	padding-bottom: 0.5em;
}
.company dl dt span{
	display: block;
	
	text-align: center;
	padding: 2px;
		border: #0a3fa7 solid 1px;
	box-sizing: border-box;
	
}
.company dl dt span.branch{background: #dde1f0;}

.gmap {
position: relative;
width: 100%;
padding-top: 75%; /* = height ÷ width × 100 */
/*	border: #1b1b1b solid 1px;
box-sizing: border-box;*/
}
.gmap iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
@media screen and (max-width: 1100px) {
.company>div.left{
	width: 48%;
	padding-right:2%;

}
.company>div.right{
	width: 48%;
	padding-left:2%;
}	
	
}
@media screen and (max-width: 760px) {
	#company{
padding-top: 9.8vw;
padding-bottom: 12vw;
}
	
	.flex_box.company{
		display: -webkit-block;
		display: block;
	}
	.company>div.left{
	width: 98%;
	padding-right:1%;
	padding-left:1%;
		padding-bottom:40px;

}
.company>div.right{
	width: 98%;
	padding-right:1%;
	padding-left:1%;
}	
	.company p.logo img{height:11.6vw;width: auto;  }
}
