@charset "UTF-8";
/* CSS Document */

/*
	00 layout
	01 index
	02 company
	03 service
	04 recruit
	05 contact
*/



/*	00 layout
------------------------------------------*/
html, body {
	height: 100%;
	}
body{ opacity:0; transition: opacity .2s linear }
@media print {
body{
	width: 1300px;
	display: block;
}
}

/*--- clearfix ---*/
header:after,
main:after,
section:after{
	content: ".";
	display: block;
	height: 0px;
	font-size: 0;
	clear: both;
	visibility: hidden;
	}

/*--- transition ---*/
header,
section.topics div.inner dl,
section.feature-topics div.inner,
section.service-topics div.inner{
	transition:.2s ease;
	-webkit-transition:.2s ease;
	-moz-transition:.2s ease;
	}

/*--- header ---*/
header{ height:57.5vh; min-height:510px; }
header section.navigation{
	width:100%;
	height:120px;
	border-bottom:3px solid rgba(205,224,220,1);
	background: rgba(255,255,255,.97);
	position:fixed;
	top:0;
	left:0;
	z-index:11;
	}
header section.navigation a:hover{ opacity:.75; }
header section.navigation div{
	width:233px;
	position:absolute;
	top:26px;
	left:3.8vw;
	}
header section.navigation div a:hover{ opacity:1; }
header section.navigation nav ul{}
header section.navigation nav ul li{ float:left; position:relative; }
nav.main-nav{
	position:absolute;
	left:25vw;
	top:54px;
	}
nav.main-nav ul.parent{}
nav.main-nav ul.parent li{ padding:0 2vw 66px; }
nav.main-nav ul.parent li.nav01 img{ width:81px; }
nav.main-nav ul.parent li.nav02 img{ width:56px; }
nav.main-nav ul.parent li.nav03 img{ width:56px; }
nav.main-nav ul.parent li.nav04 img{ width:56px; }
nav.main-nav ul.parent li.nav05 img{ width:56px; }
nav.main-nav ul.parent li.nav-inquiry img{ width:84px; }

nav.main-nav ul.parent li + li:after{
	content:"";
	width:1px;
	height:18px;
	background:url(/images/common/border.svg) repeat-y center center;
	background-size:1px;
	position:absolute;
	top:0;
	left:0;
	}
nav.info-nav{
	position:absolute;
	top:56px;
	right:3.5vw;
	}
nav.info-nav ul{
  top: -10px;
}
nav.info-nav ul li{ padding:0 0 66px 2.4vw; }
nav.info-nav ul li img{  }
/*nav.info-nav ul.parent li.nav06 img{ width:109px; position:relative; top:3px; }
nav.info-nav ul.parent li.nav07 img{ width:107px; }*/
/*nav.info-nav ul.parent li.nav07{ display:none; }*/

nav ul.parent li{
  line-height: 18px;
  font-family: "Futura LT W01 light";
}
nav.main-nav li a{
  color: #0c1e7d;
}


nav.info-nav ul:after{
  content: "";
  display: block;
  width: 0;
  height: 0;
  line-height: 0;
  visibility: hidden;
  clear: both;
}

nav.info-nav ul.parent li{
  height: 30px;
  font-size: 14px;
  line-height: 30px;
  color: #919191;
  padding: 0px 1.2vw;
}

nav.info-nav ul.parent li.active{
  color: #509e33;
}

nav.info-nav ul.parent li:not(:last-child):after{
  content: "";
  width: 1px;
  height: 20px;
  background-color: #b8b8b8;
  background-size: 1px;
  position: absolute;
  top: 5px;
  right: 0;
}


nav ul.parent{ position:relative; }
nav ul.child{
	display: none;
	width:195px;
	position: absolute;
	top:66px;
	left:0;
	background:rgba(96,193,61,.95);
	}
nav ul.child li{
	width:100%;
	padding:14px 0 14px 20px !important;
	border-bottom:1px dotted rgba(255,255,255,.7);
	position:relative;
	}
nav ul.child li:last-child{ border-bottom:none; }
nav ul.child li:after{ display:none; }
nav ul.child li:before{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 7px;
	border-color: transparent transparent transparent rgba(255,255,255,1);
	position:absolute;
	top:50%;
	right:10px;
	margin:-4px 0 0 0;
	}
nav ul.child li a{
	width:100%;
	display:block;
	color:rgba(255,255,255,1);
	font-size:12px;
	font-weight:bold;
	letter-spacing:0.05rem;
	}
nav li a:hover{}

header section.mainimg{ height:100%; }
header section.mainimg:before{
	content:"";
	width:100%;
	height:120px;
	background:rgba(255,255,255,1);
	position:absolute;
	top:0;
	left:0;
	}

header section.mainimg h1{
	color:rgba(255,255,255,1);
	font-size:14px;
	letter-spacing:0.05rem;
	position:absolute;
	top:48%;
	left:11vw;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	}
header section.mainimg h1 span{
	display:block;
	margin:0 0 10px -5px;
	letter-spacing:0rem;
	font-family:"Futura LT W01 Light";
	font-weight:100;
	font-size:56px;
	position:relative;
	}
header section.mainimg h1 span:after{
	content:"";
	height:75px;
	background:url(/images/common/bg-pagename.svg) repeat-x left bottom;
	position:absolute;
	bottom:-45px;
	left:0;
	}


/*--- common ---*/
.btn-viewmore{
	display:inline-block;
	padding:8px 55px;
	background:rgba(90,140,213,1);
	color:rgba(255,255,255,1);
	border-radius:4px;
	font-size:12px;
	}
.btn-viewmore-full{
	width: 100%;
	padding: 8px 40%;
}
.btn-viewmore.futura{
	padding:8px 40px;
	font-family: "Futura LT W01 Medium";
	font-size:11px;
	letter-spacing:0.05rem;
	}

/*--- main ---*/
main{ width:100%; position:relative; padding:45px 0 130px 0; }
section{ width:100%; position:relative; }

section h2{
	width:100%;
	text-align:center;
	color:rgba(90,145,210,1);
	font-size:14px;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	letter-spacing:0.03rem;
	position:relative;
	padding:0 0 45px 0;
	}
section h2 span{
	display:block;
	font-family:"Futura LT W01 Light";
	font-weight:100;
	font-size:50px;
	padding:0 0 18px 0;
	letter-spacing:-0.02rem;
	}
section h2 span small{ font-family:inherit; }
section h3{ color:rgba(80,80,80,1); }

/*intro*/
section.intro{}
section.intro h2{}
section.intro h2 span{}
section.intro h2:after{
	content:"";
	width:28px;
	height:15px;
	background:url(/images/common/arrow-blue.svg) no-repeat center center;
	background-size:28px;
	position:absolute;
	bottom:0;
	left:50%;
	margin:0 0 0 -14px;
	}

/*contactus*/
section.contactus{}
section.contactus div.inner{
	width:100%;
	margin:-10px 0 0 0;
	padding:50px 4vw 45px;
	background:rgba(245,245,245,1);
	position:relative;
	}
section.contactus div.inner div{
	width:100%;
	max-width:1300px;
	margin:auto;
	}
section.contactus div.inner:before{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 15px 0 15px;
	border-color: rgba(255,255,255,1) transparent transparent transparent;
	top:0;
	position:absolute;
	left:50%;
	margin:0 0 0 -15px;
	z-index:2;
	}
section.contactus div.inner div p{ line-height:1.8rem; }
section.contactus div.inner div ul{ width:100%; margin:20px 0 0 0; padding:20px 0; background:rgba(255,255,255,1); }
section.contactus div.inner div ul li{ width:32.0%; height:80px; display:inline-block; text-align:center; border-right:1px dotted rgba(170,170,170,1); vertical-align:middle; }
section.contactus div.inner div ul li:nth-child(1) img{ width:290px; margin:5px 0 0 0; }
section.contactus div.inner div ul li:nth-child(2) img{ width:260px; margin:11px 0 0 0; }
section.contactus div.inner div ul li:nth-child(3) img{ width:260px; margin:15px 0 0 0; }
section.contactus div.inner div ul li:last-child{ border-right:none; }
section.contactus span.notes{
	width:100%;
	max-width:1150px;
	padding:25px 4vw 0;
	margin:auto;
	display:block;
	line-height:1.7rem;
	}


/*--- footer ---*/
footer{
	width:100%;
	height:260px;
	background:rgba(14,81,119,1);
	position:relative;
	}
footer section{
	width:100%;
	height:45px;
	background:rgba(92,140,170,1);
	}
footer section ul{
	position:absolute;
	top:13px;
	left:5.75vw;
	}
footer section ul li{
	display:inline-block;
	padding:0 28px 0 14px;
	position:relative;
	color:rgba(255,255,255,.95);
	font-size:12px;
	letter-spacing:0.05rem;
	}
footer section ul li:before{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3px 0 3px 5px;
	border-color: transparent transparent transparent rgba(255,255,255,1);
	position:absolute;
	top:7px;
	left:0;
	}

footer address{
	font-style:normal;
	padding:45px 0 0 5.5vw;
	}
footer address img.footlogo{
	width:285px;
	}
footer address p{
	color:rgba(255,255,255,1);
	padding:18px 0 18px 5px;
	line-height:1.8rem;
	}
footer img.copyright{
	width:180px;
	position:absolute;
	bottom:25px;
	right:5.5vw;
	}
footer img.pagetop{
	width:80px;
	position:absolute;
	top:-45px;
	right:5.5vw;
	}

	.footer--recruit {
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 243px;
		height: 86px;
		padding-left: 22px;
		color: #fff;
		background-color: #1E2861;
		border-left: 6px solid #63C043;
		position: fixed;
		right: 10px;
		bottom: 10px;
		z-index: 10;
		transition: opacity .3s;
	}
	@media (hover: hover) {
		.footer--recruit:hover {
			opacity: 0.8;
		}
	}
	
	.footer--recruit::before {
		content: "";
		display: block;
		width: 2px;
		height: 100%;
		background-color: #63C043;
		position: absolute;
		top: 0;
		left: 3px;
	}

	.footer--recruit::after {
		content: "";
		display: block;
		width: 36px;
		height: 100%;
		background: #fff url(/images/common/ico-external.svg) center / auto no-repeat;
		border: 1px solid #1E2861;
		position: absolute;
		top: 0;
		right: 0;
		z-index: 1;
		box-sizing: border-box;
	}
	.footer--recruit__en {
		display: block;
		font-family: "font-family:'Futura LT W01 Bold" ,sans-serif;
		font-size: 20px;
		letter-spacing: 0.01em;
	}
	.footer--recruit__jp {
		display: block;
		font-size: 18px;
		letter-spacing: 0.01em;
	}

@media screen and (min-width: 1001px) {
	.footer--recruit.is-absolute {
		position: absolute;
		bottom: 65px;
	}
}
@media screen and (max-width: 1000px) {
	.footer--recruit {
		width: 100%;
		height: calc(66 / 390 * 100vw);
		padding-left: 0;
		border-left: 0;
		flex-direction: row;
		bottom: 0;
		right: 0;
	}
	.footer--recruit::before {
		display: none;
	}
	.footer--recruit::after {
		display: none;
	}
	.footer--recruit__en {
		width: calc(117 / 390 * 100vw);
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100%;
		background-color: #63C043;
		color: #fff;
		font-size: calc(20 / 390 * 100vw);
	}

	.footer--recruit__jp {
		flex: 1;
		display: flex;
		justify-content: center;
		align-items: center;
		gap: 0 calc(15 / 390 * 100vw);
		font-size: calc(18 / 390 * 100vw);
		letter-spacing: 0.01em;
	}
	.footer--recruit__jp::after {
		content: "";
		display: block;
		width: calc(12 / 390 * 100vw);
		height: calc(12 / 390 * 100vw);
		background: url(/images/common/ico-external-white.svg) center / contain no-repeat;
	}
}

/*	01 index
------------------------------------------*/
.page-index{}

/*header*/
header.page-index{ height:100%; min-height:640px; }
header.page-index section.mainimg{
	background:url(/images/index/slider/01.jpg) no-repeat center center;
	background-size:cover;
	}
header.page-index section.mainimg h1{
	width:450px;
	position:absolute;
	top:50%;
	left:8.0vw;
	margin:-140px 0 0 0;
	}
header.page-index section.mainimg h1 img{ max-height:100%; }
header.page-index section.mainimg img.btn-conceptpage{
	width:135px;
	position:absolute;
	left:8.25vw;
	bottom:16%;
	}
header.page-index section.mainimg img.btn-scroll{
	width:80px;
	position:absolute;
	bottom:20px;
	left:50%;
	margin:0 0 0 -40px;
	z-index: 10;
	}

/*--- main ---*/
main.page-index{}

/*intro*/
main.page-index section.intro,
main.about-service section.intro{
	padding:0 0 55px 0;
}
.lead-service{
	width:100%;
	padding:50px 2.5vw 0;
}
.lead-service div figure{
	width:100%;
	height:320px;
	position:relative;
}
.lead-service div:nth-child(1) figure{ background:url(/images/index/service03_180801.jpg) no-repeat center center; background-size:cover; }
.lead-service div:nth-child(2) figure{
	background: url(/images/index/service02_160831.jpg) center 0%;
	background-size: cover; }
.lead-service div:nth-child(3) figure{ background:url(/images/service/about/img04.jpg) no-repeat center center; background-size:cover; }
.lead-service div:nth-child(4) figure{ background:url(/images/index/service04.jpg) no-repeat center center; background-size:cover; }

.lead-service div figure h3{
	width:320px;
	height:75px;
	background:rgba(90,140,213,.9);
	color:rgba(255,255,255,1);
	position:absolute;
	bottom:0;
	left:0;
	text-align:center;
	padding:0 0 0 20px;
	}
.lead-service div figure h3 span{
	font-family: "Futura LT W01 Light";
	font-size:32px;
	letter-spacing:0.1rem;
	position:absolute;
	bottom:15px;
	left:30px;
	}
.lead-service div figure h3 strong{
	display:inline-block;
	padding:8px 5px 5px 5px;
	border-bottom:1px solid rgba(255,255,255,.6);
	letter-spacing:0.12rem;
	font-size:18px;
	font-weight:normal;
	}
.lead-service div figure h3 small{
	display:block;
	padding:5px 0 0 0;
	letter-spacing:0.05rem;
	font-family: "Futura LT W01 Medium";
	font-weight: 100;
	color:rgba(255,255,255,.7);
	}
.lead-service div p{
	/* height:80px; */
	padding:15px 5px;
	line-height:1.6rem;
	}
.page-index .btn-block{
	margin-top: 50px;
}
/*lead*/
main.page-index section.lead{
	height:500px;
	background:url(/images/index/bg-aboutus.jpg) no-repeat center center;
	background-size:cover;
	margin:0 0 55px 0;
	}
main.page-index section.lead div.inner{
	width:100%;
	height:100%;
	position:relative;
	}
main.page-index section.lead div.inner:before{
	content:"";
	width:65%;
	height:100%;
	background:rgba(255,255,255,.4);
	position:absolute;
	top:0;
	right:0;
	}
main.page-index section.lead div.inner:after{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 500px 425px;
	border-color: transparent transparent rgba(255,255,255,.4) transparent;
	position:absolute;
	top:0;
	right:65%;
	}
main.page-index section.lead div.inner div.frame{
	width:100%;
	max-width:1700px;
	height:100%;
	position:relative;
	margin:auto;
	}
main.page-index section.lead div.inner div.frame img{
	width:155px;
	position:absolute;
	top:50%;
	left:10vw;
	margin:-95px 0 0 0;
	z-index:2;
	}
main.page-index section.lead div.inner div.frame div{
	width:60%;
	position:absolute;
	top:65px;
	right:6.5vw;
	z-index:2;
	}
main.page-index section.lead div.inner div.frame div h3{
	padding:0 0 40px 0;
	color:rgba(90,145,210,.92);
	letter-spacing:0.08rem;
	font-size:20px;
	line-height:2.0rem;
	}
main.page-index section.lead div.inner div.frame div h3 small{
	display:block;
	padding:0 0 25px 0;
	color:rgba(90,145,210,.7);
	font-family: "Futura LT W01 Medium";
	font-size:12px;
	letter-spacing:0.1rem;
	}
main.page-index section.lead div.inner div.frame div p{ margin-bottom:42px; }

/*topics*/
section.topics{
	max-width:1700px;
	padding:0 5.5vw;
	margin:auto;
	text-align:center;
	}
section.topics div.inner{
	width:100%;
	float:left;
	border-bottom:1px solid rgba(220,220,220,1);
	margin:0 0 50px 0;
	}
section.topics div.inner dl{
	width:100%;
	float:left;
	padding:23px 8px 20px;
	border-top:1px solid rgba(220,220,220,1);
	background:url(/images/common/ico-play.svg) no-repeat right 15px center;
	background-size:18px;
	text-align:left;
	}
section.topics div.inner dl dt{
	width:10%;
	float:left;
	font-family:'Univers LT W01_65 Bold1475968';
	font-weight:bolder;
	letter-spacing:0.04rem;
	}
section.topics div.inner dl dd{
	width:90%;
	float:left;
	}
section.topics div.inner dl dd span{
	width:70px;
	float:left;
	display:block;
	margin:0 25px 0 0;
	}
section.topics div.inner dl dd a{ display:block; }


/*	02 feature
------------------------------------------*/
/*mainimg*/
header.page-feature section.mainimg{
	background:url(/images/feature/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.page-feature section.mainimg h1{}
header.page-feature section.mainimg h1 span{}
header.page-feature section.mainimg h1 span:after{ width:270px; }

/*feature-text*/
section.intro div.feature-text{
	width:100%;
	max-width:1300px;
	display:table;
	margin:auto;
	padding:0 4.5vw;
	}
section.intro div.feature-text div{
	float: left;
	display:table-cell;
	}
section.intro div.feature-text div:nth-child(1){
	width:52%;
	}
section.intro div.feature-text div:nth-child(2){
	width:48%;
	text-align:center;
	}
section.intro div.feature-text div h3{ padding:60px 0 40px; line-height:2.2rem; }
section.intro div.feature-text div p{ padding:0 15px 20px 0; }
section.intro div.feature-text img{ min-width:400px; max-width:460px; margin:0 0 0 50px; }

/*feature-topics*/
section.feature-topics{ margin:55px 0 75px 0; }
section.feature-topics div.inner{
	width:100%;
	height:425px;
	float:left;
	background:rgba(245,246,247,1);
	border-bottom:2px solid rgba(255,255,255,1);
	position:relative;
	}
section.feature-topics div.inner:before,
section.feature-topics div.inner:after{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	position:absolute;
	left:50%;
	margin:0 0 0 -15px;
	z-index:2;
	}
section.feature-topics div.inner:before{
	border-width: 15px 15px 0 15px;
	border-color: rgba(255,255,255,1) transparent transparent transparent;
	top:0;
	}
section.feature-topics div.inner:after{
	border-width: 0 15px 15px 15px;
	border-color: transparent transparent rgba(255,255,255,1) transparent;
	bottom:0;
	}
section.feature-topics div.inner div{
	width:50%;
	height:100%;
	float:left;
	padding:0 95px;
	display:table;
	}
section.feature-topics div.inner div span{ display:table-cell; vertical-align:middle;}
section.feature-topics div.inner div h3{
	padding:0 0 35px 0;
	line-height:1.8rem;
	}
section.feature-topics div.inner div p{ line-height:1.7rem; }
section.feature-topics div.inner div.frame:after{
	content:"";
	width:50%;
	height:100%;
	position:absolute;
	top:0;
	right:0;
	}
section.feature-topics div.inner div.feature-num{ position:relative; }
section.feature-topics div.inner div.feature-num figure{
	width:72px;
	height:72px;
	display:block;
	background:rgba(90,140,213,1);
	border-radius:100%;
	color:rgba(255,255,255,1);
	position:absolute;
	top:50%;
	margin:-36px 0 0 0;
	text-align:center;
	}
section.feature-topics div.inner div.feature-num figure figcaption{
	padding:21px 0 0 0;
	color:rgba(255,255,255,1);
	font-family: "Futura LT W01 Light";
	font-size:27px;
	letter-spacing:0.03rem;
	}
section.feature-topics div.inner div.num01{ background:url(/images/feature/img01_180417.jpg) no-repeat right center; background-size:cover; }
section.feature-topics div.inner div.num01 figure{ left:-36px; }
section.feature-topics div.inner div.num02{ background:url(/images/feature/img02.jpg) no-repeat right center; background-size:cover; }
section.feature-topics div.inner div.num02 figure{ right:-36px; }
section.feature-topics div.inner div.num03{ background:url(/images/feature/img03_180417.jpg) no-repeat right center; background-size:cover; }
section.feature-topics div.inner div.num03 figure{ left:-36px; }

/*feature-link*/
section.feature-link{
	width:100%;
	max-width:1400px;
	display:table;
	margin:auto;
	padding:0 4.5vw;
	}
section.feature-link h3{
	font-size:17px;
	line-height:2.1rem;
	}
section.feature-link p{
	padding:40px 0 50px 0;
	line-height:1.8rem;
	}
section.feature-link ul{
	width:100%;
	float:left;
	}
section.feature-link ul li{
	width:31%;
	height:120px;
	float:left;
	margin:0 3% 30px 0;
	}
section.feature-link ul li:nth-child(3n){
	margin:0 0 30px 0;
	}
section.feature-link ul li a{
	width:100% ;
	height:100%;
	display:block;
	border:1px solid rgba(200,200,200,1);
	border-radius:4px;
	position:relative;
	}
section.feature-link ul li a span{
	width:70%;
	font-size:14px;
	font-weight:bold;
	letter-spacing:0.03rem;
	position:absolute;
	top:45%;
	left:27.5%;
	text-align:center;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	}
section.feature-link ul li a span small{
	font-size:15px;
	font-family: "Futura LT W01 Light";
	letter-spacing:0.05rem;
	padding:0 0 0 12px;
	color:rgba(85,85,85,.7);
	}
section.feature-link ul li a img{
	width:90px;
	height:90px;
	position:absolute;
	top:15px;
	left:15px;
	}
section.feature-link .btn-viewmore.futura{ display:none; }


/*	03 service
------------------------------------------*/
/*mainimg*/
header.about-service section.mainimg{
	background:url(/images/service/about/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.about-service section.mainimg h1{}
header.about-service section.mainimg h1 span{}
header.about-service section.mainimg h1 span:after{ width:320px; }

header.steel section.mainimg{
	background:url(/images/service/steel/mainimg.jpg) no-repeat center center;
	background-size:cover;
	}
header.steel section.mainimg h1{}
header.steel section.mainimg h1 span{}
header.steel section.mainimg h1 span:after{ width:250px; }

header.construction section.mainimg{
	background:url(/images/service/construction/mainimg_180801.jpg) no-repeat center center;
	background-size:cover;
	}
header.construction section.mainimg h1{}
header.construction section.mainimg h1 span{}
header.construction section.mainimg h1 span:after{ width:300px; }

header.industry section.mainimg{
	background:url(/images/service/industry/mainimg.jpg) no-repeat center center;
	background-size:cover;
	}
header.industry section.mainimg h1{}
header.industry section.mainimg h1 span{}
header.industry section.mainimg h1 span:after{ width:250px; }
header.life section.mainimg{
	background:url(/images/service/life/mainimg_160831.jpg) no-repeat center center;
	-webkit-background-size: cover;
	background-size: cover;
	}
header.life section.mainimg:before{
	content: none;
}
@media screen and (min-width:1000px){
	header.life{
		height: calc(57.5vh - 120px);
	}
	header.life section.mainimg h1{
		top:calc(48% - 60px);
	}
	header.life section.mainimg{
		margin-top:120px;
	}
}
header.life section.mainimg h1 span{}
header.life section.mainimg h1 span:after{ width:270px; }

header.service-contact section.mainimg{
	background:url(/form/images/service/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.service-contact section.mainimg h1{}
header.service-contact section.mainimg h1 span{}
header.service-contact section.mainimg h1 span:after{ width:505px; }

/*common*/
main.page-service section.intro > p{
	width:100%;
	text-align:center;
	padding:35px 0 0 0;
	}

/*about service*/
section.service-topics{
	width:100%;
	max-width:1430px;
	padding:60px 4vw 60px;
	margin:auto;
	}
section.service-topics div.inner{
	background:rgba(90,140,213,1);
	position:relative;
	}
section.service-topics div.inner{
	height:460px;
	}
section.service-topics div.inner div{
	height:100%;
	color:rgba(255,255,255,1);
	position:absolute;
	top:0;
	border-bottom:2px solid rgba(255,255,255,1);
	}
section.service-topics div.inner div.service01{ background:url(/images/service/about/img01.jpg) no-repeat center center; background-size:cover; }
section.service-topics div.inner div.service02{ background:url(/images/service/about/img02_160831.jpg) center center; background-size:cover; }
section.service-topics div.inner div.service03{ background:url(/images/service/about/img03_180417.jpg) no-repeat center center; background-size:cover; }
section.service-topics div.inner div.service04{ background:url(/images/service/about/img04.jpg) no-repeat center center; background-size:cover; }
section.service-topics div.inner div:nth-child(1){ width:50%; left:0; padding:45px 60px 0 100px; }
section.service-topics div.inner div:nth-child(2){ width:50%; right:0; }

section.service-topics div.inner div h3{
	position:relative;
	color:rgba(255,255,255,1);
	font-size:18px;
	letter-spacing:0.05rem;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	}
section.service-topics div.inner div h3 small{
	color:rgba(255,255,255,.7);
	position:absolute;
	top:7px;
	right:0;
	letter-spacing:0.02rem;
	}
section.service-topics div.inner div p{
	color:rgba(255,255,255,1);
	border-top:1px solid rgba(255,255,255,1);
	line-height:1.6rem;
	padding:25px 0 0 0;
	margin:25px 0 0 0;
	}
section.service-topics div.inner div strong{
	position:absolute;
	top:36px;
	left:31px;
	color:rgba(255,255,255,1);
	font-family: "Futura LT W01 Light";
	font-size:35px;
	letter-spacing:0.04rem;
	}
section.service-topics div.inner p.item-head{
	width:100%;
	float:left;
	border:1px solid rgba(255,255,255,1);
	border-radius:5px;
	position:relative;
	padding:18px 15px;
	margin:35px 0 0 0;
	text-align:center;
	}
section.service-topics div.inner:nth-child(1) p{ padding:40px 0 0 0; margin:40px 0 0 0; }
section.service-topics div.inner:nth-child(1) p.item-head{ padding:18px 15px; margin:55px 0 0 0; }
section.service-topics div.inner p.item-head strong{
	position:absolute;
	top:-13px;
	left:10px;
	background:rgba(90,140,213,1);
	padding:0 5px;
	font-family :YuGothic, '游ゴシック',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
	font-size:13px;
	font-weight:normal;
	letter-spacing:0;
	}
section.service-topics figure{
	width:100%;
	height:100%;
	display:block;
	position:relative;
	}
section.service-topics figure a{
	position:absolute;
	bottom:25px;
	right:25px;
	}
section.service-topics figure a span{
	width:100px;
	height:100px;
	border-radius:100%;
	display:inline-block;
	padding:25px 80px;
	vertical-align:middle;
	background:rgba(255,255,255,.95);
	color:rgba(90,140,213,1);
	font-size:12px;
	position:relative;
	}
section.service-topics figure a span small{
	font-size:13px;
	font-family:inherit;
	white-space:nowrap;
	display:inline;
	position:absolute;
	top:33.5%;
	left:12.5%;
	}
section.service-topics figure a span small:after{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 8px;
	border-color: transparent transparent transparent rgba(90,140,213,1);
	position:absolute;
	bottom:-20px;
	left:50%;
	margin:0 0 0 -4px;
	}


/*product-detail*/
section.product-list{
	max-width:1300px;
	margin:auto;
	padding:65px 4.5vw 0;
	}
section.product-list div{ padding:0 0 60px 0; }
section.product-list div h3,
section.area .area_mapBlock_title h3{
	padding:12px 0 12px 40px;
	color:rgba(255,255,255,1);
	background:rgba(90,140,213,1);
	letter-spacing:0.08rem;
	font-size:15px;
	font-weight:normal;
	position:relative;
	}
section.product-list div h3:before,
section.area .area_mapBlock_title h3:before{
	content:"";
	width:0;
	height:0;
	border-style:solid;
	border-width:7px 4px 0 4px;
	border-color:rgba(255,255,255,1) transparent transparent transparent;
	position:absolute;
	top:20px;
	left:22px;
	}
section.product-list div h3 span{
	font-size:12px;
	position:absolute;
	top:15px;
	right:22px;
	}
section.product-list div ul{
	width:100%;
	display:table;
	border:1px solid rgba(220,220,220,1);
	border-top:none;
	}
section.product-list div ul li{
	width:25%;
	display:table-cell;
	vertical-align:middle;
	border-right:1px solid rgba(220,220,220,1);
	background:rgba(250,250,250,1);
	padding:15px 25px;
	}
section.product-list div ul li:nth-child(4n){ border-right:none; }

section.product-list div dl{
	width:100%;
	display:table;
	border:1px solid rgba(220,220,220,1);
	border-top:none;
	}
section.product-list div dl dt{
	width:17.5%;
	display:table-cell;
	vertical-align:middle;
	padding:15px 15px 15px 15px;
	font-weight:bold;
	border-right:1px solid rgba(220,220,220,1);
	background:rgba(240,240,240,1);
	position:relative;
	text-align:center;
	}
section.product-list div dl dt:after{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 6px;
	border-color: transparent transparent transparent rgba(220,220,220,1);
	position:absolute;
	top:50%;
	right:-6px;
	margin:-5px 0 0 0;
	}
section.product-list div dl dd{
	width:82.5%;
	display:table-cell;
	vertical-align:middle;
	background:rgba(250,250,250,1);
	padding:15px 35px 15px 45px;
	}
section.product-list div dl dd small{ font-size:12px; }


/*	04 company
------------------------------------------*/
/*mainimg*/
header.philosophy section.mainimg{
	background:url(/images/company/philosophy/mainimg_180801.jpg) no-repeat center center;
	background-size:cover;
	}
header.philosophy section.mainimg h1{}
header.philosophy section.mainimg h1 span{}
header.philosophy section.mainimg h1 span:after{ width:270px; }

header.greeting section.mainimg{
	background:url(/images/company/greeting/mainimg.jpg) no-repeat center center;
	background-size:cover;
	}
header.greeting section.mainimg h1{}
header.greeting section.mainimg h1 span{}
header.greeting section.mainimg h1 span:after{ width:200px; }

header.history section.mainimg{
	background:url(/images/company/history/mainimg.jpg) no-repeat center center;
	background-size:cover;
	}
header.history section.mainimg h1{}
header.history section.mainimg h1 span{}
header.history section.mainimg h1 span:after{ width:250px; }

header.outline section.mainimg{
	background:url(/images/company/outline/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.outline section.mainimg h1{}
header.outline section.mainimg h1 span{}
header.outline section.mainimg h1 span:after{ width:400px; }

header.access section.mainimg{
	background:url(/images/company/access/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.access section.mainimg h1{}
header.access section.mainimg h1 span{}
header.access section.mainimg h1 span:after{ width:270px; }

/*philosophy*/
main.philosophy{}
main.philosophy section{
	max-width:1300px;
	margin:auto;
	padding:0 7.5vw 0 7.5vw;
	}
main.philosophy section h2{
	width:100%;
	text-align:center;
	font-size:45px;
	font-family: "Futura LT W01 Light";
	font-weight:100;
	letter-spacing:0.04rem;
	line-height:4.8rem;
	z-index:2;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	}
main.philosophy section h2 span{
	display:inline;
	background:rgba(90,140,213,1);
	padding:8px 25px;
	font-family :YuGothic, '游ゴシック',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
	font-size:13px;
	color:rgba(255,255,252,1);
	line-height:1.3rem;
	letter-spacing:0.08rem;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-font-smoothing: subpixel-antialiased;
	}
main.philosophy section div.box{
	background:rgba(245,246,247,.6);
	border-radius:15px;
	position:relative;
	top:-75px;
	}
main.philosophy section:nth-child(1) div.box{padding:85px 15% 30px 15%;}
main.philosophy section:nth-child(2) div.box{padding:85px 7.5% 30px 7.5%;}
main.philosophy section:nth-child(1) div.box:after{
	content:"";
	width:25%;
	height:300px;
	background:url(/images/company/philosophy/view.png) no-repeat center center;
	background-size:100%;
	position:absolute;
	top:105px;
	right:15%;
	}
main.philosophy section div.box h3{
	text-align:left;
	}
main.philosophy section div.box h3 img{ width:350px; }
main.philosophy section div.box p{
	padding:50px 0;
	}
main.philosophy section div.box div.symbol-text{
	width:100%;
	display:flex;
	background:rgba(255,255,255,1);
	position:relative;
	margin:15px 0 0 0;
	}
main.philosophy section div.box div.symbol-text:after{
	content:"";
	width:16px;
	height:100%;
	position:absolute;
	top:0;
	left:50%;
	margin:0 0 0 -8px;
	background:rgba(245,246,247,1);
	}
main.philosophy section div.box h4{
	font-size:15px;
	}
main.philosophy section div.box div.symbol-text div{
	width:50%;
	display:inline-block;
	vertical-align:top;
	}
main.philosophy section div.box div.symbol-text div:nth-child(1){
	padding:20px 45px 20px 35px;
	}
main.philosophy section div.box div.symbol-text div:nth-child(2){
	padding:20px 35px 20px 45px;
	}
main.philosophy section div.box div.symbol-text div img{
	width:90%;
	padding:25px 0 0 10%;
	}
main.philosophy section div.box div.symbol-text div h4{
	padding:20px 0 0;
	}
main.philosophy section div.box div.symbol-text div p{
	padding:30px 0 25px;
	}

/*greeting*/
main.greeting section{
	width:100%;
	max-width:1300px;
	margin:auto;
	padding:0 5vw;
	}
main.greeting section h2{
	width:100%;
	float:left;
	padding:35px 0 70px 0;
	text-align:left;
	font-size:20px;
	}
main.greeting section p{
	width:100%;
	float:left;
	}
main.greeting section ul{ width:100%; float:left; padding:45px 0; white-space:nowrap; }
main.greeting section ul li{ display:table-cell; padding:0 2.5vw 0 0; }
main.greeting section ul li:last-child{ padding:0 0 0 0; }
main.greeting section ul li img{ width:100%; }
main.greeting section img.symbol{
	width:300px;
	position:absolute;
	bottom:-132px;
	right:1.5vw;
	opacity:.20;
	z-index:-1;
	}

/*history*/
main.history{}
main.history section{}
main.history section div.inner{
	width:100%;
	max-width:1400px;
	margin:auto;
	padding:0 4.5vw;
	}
main.history section div.inner div.frame{
	width:100%;
	float:left;
	position:relative;
	}
main.history section div.inner div.frame time.year{
	height:100%;
	padding:5px 0 5px 0;
	display:inline-block;
	color:rgba(90,140,213,1);
	position:absolute;
	top:0;
	left:0;
	}
main.history section div.inner div.frame time.year span{
	height:100%;
	position:relative;
	padding:0 3vw 0 0;
	display:block;
	font-family:"Futura LT W01 Light";
	font-weight:100;
	font-size:38px;
	letter-spacing:0.05rem;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	}
main.history section div.inner div.frame time.year span:before{
	content:"";
	width:100%;
	height:55px;
	background:rgba(255,255,255,1);
	position:absolute;
	top:-5px;
	left:0;
	z-index:-1;
	}
main.history section div.inner div.frame time.year span:after{
	content:"";
	width:1px;
	height:100%;
	background:rgba(90,140,213,1);
	position:absolute;
	top:0;
	left:48px;
	z-index:-2;
	}
main.history section div.inner div.frame:last-child time.year span:after{ display:none; }

main.history section div.inner div.frame article{
	width:85%;
	float:left;
	margin:20px 0 5px 15%;
	}
article + article{ margin:0 0 5px 13% !important; }
main.history section div.inner div.frame article time.jpyear{
	width:12.5%;
	float:left;
	display:inline-block;
	color:rgba(90,140,213,1);
	padding:3px 0 0 0;
	}
main.history section div.inner div.frame article time.jpyear span{
	padding:0 1px 0 1px;
	font-family:Arial, Helvetica, sans-serif;
	font-size:15px;
	}
main.history section div.inner div.frame article div{
	width:87.5%;
	float:left;
	}
main.history section div.inner div.frame article div h3{
	font-size:15px;
	color:rgba(90,140,213,1);
	padding:0 0 10px 0;
	}
main.history section div.inner div.frame article div h4{ font-size:15px; padding:0 0 10px 0; }
main.history section div.inner div.frame article div p{ padding:0 0 10px 0; }
main.history section div.inner div.frame article div p small{ font-size:11px; }
main.history section div.inner div.frame article div ul{
	width:100%;
	display:table;
	border-collapse:separate;
	padding:0 0 20px 0;
	}
main.history section div.inner div.frame article div ul li{
	display:table-cell;
	padding:0 15px 0 0;
	}
main.history section div.inner div.frame article div ul li img{ width:100%; }

/*outline*/
main.outline{}
main.outline section{
	width:100%;
	max-width:1400px;
	margin:auto;
	padding:0 5vw;
	}
main.outline section dl{
	width:100%;
	float:left;
	padding:22px 0;
	border-bottom:1px dotted rgba(210,210,210,1);
	line-height:1.8rem;
	}
main.outline section dl dt{
	width:15%;
	float:left;
	padding:0 0 0 20px;
	letter-spacing:0.05rem;
	}
main.outline section dl dd{
	width:85%;
	float:left;
	padding:0 15px 0 0;
	letter-spacing:0.02rem;
	}
main.outline section dl em{
	font-family:Arial, Helvetica, sans-serif;
	font-size:13px;
	font-style:normal;
	letter-spacing:0.05rem;
	}
main.outline section dl b{ font-family:inherit; font-size:inherit; font-weight:inherit; font-style:normal; }
main.outline section dl dd small{ font-size:12px; }
main.outline section dl dd.posit p{}
main.outline section dl dd.posit p span{ width:115px; display:inline-block; }

/*access*/
main.access{}
main.access section{
	width:100%;
	max-width:1400px;
	margin:auto;
	padding:20px 5vw 0;
	}
main.access section div{
	width:47%;
	display:inline-block;
	margin:0 1.5% 35px 0;
	padding:0 0 30px 0;
	border-bottom:2px solid rgba(96,193,61,.45);
	}
main.access section div:nth-child(2n){
	margin:0 0 0 1.5%;
	}
main.access section div h3{
	font-size:15px;
	letter-spacing:0.1rem;
	padding:0 0 15px 15px;
	position:relative;
	}
main.access section div h3:after{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 5px 0 5px;
	border-color: rgba(90,140,213,1) transparent transparent transparent;
	position:absolute;
	top:9px;
	left:0;
	}
main.access section div p{ }
main.access section div p em{
	font-family:Arial, Helvetica, sans-serif;
	font-size:13px;
	font-style:normal;
	letter-spacing:0.05rem;
	}
main.access section div iframe{
	width:100%;
	height:370px;
	border:none;
	margin:18px 0;
	}


/*	05 recruit
------------------------------------------*/
/*mainimg*/
header.about-recruit section.mainimg{
	background:url(/images/recruit/about/mainimg_180801.jpg) no-repeat center center;
	background-size:cover;
	}
header.about-recruit section.mainimg h1{}
header.about-recruit section.mainimg h1 span{}
header.about-recruit section.mainimg h1 span:after{ width:320px; }

header.faq section.mainimg{
	background:url(/images/recruit/faq/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.faq section.mainimg h1{}
header.faq section.mainimg h1 span{}
header.faq section.mainimg h1 span:after{ width:200px; }

header.voice section.mainimg{
	background:url(/images/recruit/voice/list/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.voice section.mainimg h1{}
header.voice section.mainimg h1 span{}
header.voice section.mainimg h1 span:after{ width:320px; }

header.application section.mainimg{
	background:url(/images/recruit/application/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.application section.mainimg h1{}
header.application section.mainimg h1 span{}
header.application section.mainimg h1 span:after{ width:320px; }

header.recruit-contact section.mainimg{
	background:url(/form/images/recruit/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.recruit-contact section.mainimg h1{}
header.recruit-contact section.mainimg h1 span{}
header.recruit-contact section.mainimg h1 span:after{ width:485px; }

/*common*/
main.page-recruit section.contactus h2{}
main.page-recruit section.contactus h2 span{}
main.page-recruit section.contactus h2:after{
	content:"";
	width:28px;
	height:15px;
	background:url(/images/common/arrow-blue.svg) no-repeat center center;
	background-size:28px;
	position:absolute;
	bottom:0;
	left:50%;
	margin:0 0 0 -14px;
	}
main.page-recruit section.contactus div.inner{
	margin:0 0 0 0;
	padding:20px 4vw 20px;
	background:none;
	}
main.page-recruit section.contactus div.inner div{}
main.page-recruit section.contactus div.inner div p{ padding:15px 0 5px 0; line-height:1.9rem; text-align:center; }
main.page-recruit section.contactus div.inner div ul{ background:rgba(245,245,245,1); }
main.page-recruit section.contactus div.inner div ul li{}
main.page-recruit section.contactus span.notes{
	padding:10px 0 0 0;
	text-align:center;
	}

/*recruit-text*/
main.about-recruit section.intro h2{ margin:0 0 20px 0; }
section.intro div.recruit-text{
	max-width:1350px;
	margin:auto;
	}
section.intro div.recruit-text div.frame{
	width:100%;
	float:left;
	}
section.intro div.recruit-text div.frame div{
	width:50%;
	float:left;
	margin:0 0 20px 0;
	}
section.intro div.recruit-text div.frame div:nth-child(1){ padding:0 3.5vw 0 4.0vw; }
section.intro div.recruit-text div.frame div:nth-child(2){ padding:0 4.0vw 0 2.5vw; }
section.intro div.recruit-text div.frame div:nth-child(2) small{ font-size:12px; text-align:right; display:block;}
section.intro div.recruit-text div.frame div h3{
	height:48px;
	margin:35px 0 0 0;
	background:rgba(96,193,61,1);
	color:rgba(255,255,255,1);
	text-align:center;
	line-height:48px;
	letter-spacing:0.06rem;
	position:relative;
	}
section.intro div.recruit-text div.frame div h3:after{
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 24px 0 24px 20px;
	border-color: transparent transparent transparent rgba(96,193,61,1);
	position: absolute;
	top:50%;
	right:-20px;
	margin:-24px 0 0 0;
	}
section.intro div.recruit-text div.frame div h3 small{ padding:0 20px 0 0; }
section.intro div.recruit-text div.frame div h4{
	padding:48px 0 38px 5px;
	font-size:15px;
	}
section.intro div.recruit-text div.frame div p{ height:180px; padding:0 5px; line-height:2.0rem; }
section.intro div.recruit-text div.frame div img{ width:100%; padding:35px 0 0 0px; }

/*recruit-info*/
section.recruit-info{
	width:100%;
	margin:30px 0 65px 0;
	}
section.recruit-info div.inner{
	width:100%;
	background:rgba(245,245,245,1);
	padding:60px 0 50px 0;
	}
section.recruit-info div.inner div.frame{
	width:100%;
	max-width:1300px;
	margin:auto;
	padding:0 2vw;
	}
section.recruit-info div.inner div.frame div{
	width:33.0%;
	display:inline-block;
	padding:0 1vw;
	position:relative;
	}
section.recruit-info div.inner div.frame h3{
	width:100%;
	font-family: "Futura LT W01 Light";
	font-size:38px;
	font-weight:100;
	letter-spacing:0.05rem;
	color:rgba(90,145,210,1);
	position:absolute;
	top:-32px;
	left:0;
	text-align:center;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	}
section.recruit-info div.inner div.frame h3 small{ padding:0 7px; }
section.recruit-info div.inner div.frame div img{
	width:100%;
	}
section.recruit-info div.inner div.frame h4{
	padding:18px 0 15px 0;
	}
section.recruit-info div.inner div.frame p{ line-height:1.5rem; }


/*Q and A*/
section.faq{
	width:100%;
	max-width:1400px;
	margin:auto;
	padding:0 4.5vw 80px;
	}
section.faq div.box{
	width:100%;
	float:left;
	border-bottom:1px dotted rgba(155,168,199,.7);
	}
section.faq div.box div{
	width:100%;
	float:left;
	padding:30px;
	position:relative;
	}
section.faq div.box div strong{
	width:40px;
	height:40px;
	float:left;
	margin:0 25px 0 0;
	display:inline-block;
	text-align:center;
	line-height:40px;
	color:rgba(255,255,255,1);
	border-radius:100%;
	font-family: "Futura LT W01 Light";
	font-size:22px;
	font-weight:100;
	}
section.faq div p{ width:90%; float:left; }
section.faq div.question{
	background:url(/images/common/ico-plus.svg) no-repeat right 20px top 40px;
	background-size:24px;
	cursor:pointer;
	}
section.faq div.question.active{background:url(/images/common/ico-minus.svg) no-repeat right 20px top 40px; background-size:24px; }
section.faq div.question strong{ background:rgba(90,140,213,1); }
section.faq div.question p{
	margin:5px 0 0 0;
	font-size:16px;
	font-weight:bold;
	color:rgba(90,140,213,1);
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	}
section.faq div.answer{
	background:rgba(234,244,242,.8);
	display:none;
	}
section.faq div.answer:after{
	content:"";
	width:0;
	height:0;
	border-style:solid;
	border-width:18px 20px 0 20px;
	border-color:rgba(255,255,255,1) transparent transparent transparent;
	position:absolute;
	top:0;
	left:30px;
	}
section.faq div.answer strong{ background:rgba(96,193,61,1); }
section.faq div.answer p{
	margin:8px 0 0 0;
	line-height:1.5rem;
	}

/*recruit-voice*/
main.voice{}
main.voice section.intro{ padding:0 0 60px 0; }
section.intro div.recruit-voice{
	max-width:1350px;
	margin:auto;
	}
section.intro div.recruit-voice div.box{
	width:50%;
	float:left;
	margin:0 0 25px 0;
	}
section.intro div.recruit-voice div.box:nth-child(1){ padding:0 1.5vw 0 4.5vw; }
section.intro div.recruit-voice div.box:nth-child(2){ padding:0 4.5vw 0 1.5vw; }
section.intro div.recruit-voice div.box h3{
	margin:45px 0 0 0;
	padding:40px 0 25px 0;
	text-align:center;
	font-size:17px;
	line-height:2.3rem;
	letter-spacing:0.12rem;
	border-top:2px solid rgba(96,193,61,.45);
	position:relative;
	}
section.intro div.recruit-voice.withline div.box div{ padding:0 0 75px 0; border-bottom:2px solid rgba(96,193,61,.45); }
section.intro div.recruit-voice div.box h3 small{ width:100%; display:block; font-size:12px; letter-spacing:0.05rem; }
section.intro div.recruit-voice div.box p{ height:135px; padding:0 5px; line-height:1.8rem; display:table; }
section.intro div.recruit-voice div.box p span{ height:100%; display:table-cell; vertical-align:middle; }
section.intro div.recruit-voice div.box img{ width:100%; margin:0 0 5px 0; }
section.intro div.recruit-voice div.box a{ margin:15px 0 0 5px; }


/*voicedetail*/
header.voicedetail section.mainimg h1{
	width:50%;
	height:100%;
	background:rgba(90,145,210,.85);
	position:absolute;
	top:0;
	left:0;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-font-smoothing: subpixel-antialiased;
	text-align:center;
	}
header.voicedetail section.mainimg h1 figure{
	position:relative;
	top:50%;
	}
header.voicedetail section.mainimg h1 span{
	font-family :YuGothic, '游ゴシック',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
	font-size:13px;
	font-weight:bold;
	display:inline;
	padding:5px 25px;
	color:rgba(90,140,213,1);
	background:rgba(255,255,255,1);
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	}
header.voicedetail section.mainimg p{
	font-size:20px;
	letter-spacing:0.2rem;
	margin:30px 0 0 0;
	color:rgba(255,255,255,1);
	}
header.voicedetail section.mainimg p em{
	letter-spacing:0rem;
	padding:0 0 0 20px;
	font-family:"Futura LT W01 Light";
	font-weight:100;
	font-size:20px;
	font-style:normal;
	color:inherit;
	}
header.voicedetail section.mainimg p small{
	display:block;
	font-size:13px;
	font-weight:normal;
	letter-spacing:0.06rem;
	padding:25px 0 0 0;
	}
header.voicedetail section.mainimg  h1 span:after{ display:none; }

/*voice-text*/
section.intro div.voice-text{
	width:100%;
	max-width:1400px;
	margin:auto;
	padding:50px 7.5vw 0;
	}
section.intro div.voice-text h3{
	width: 100%;
	padding: 15px 0 15px 45px;
	margin:0 0 35px 0;
	position: relative;
	font-size: 15px;
	letter-spacing: 0.08rem;
	background:rgba(90,140,213,1);
	color: rgba(255,255,255,1);
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	}
section.intro div.voice-text h3:before{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 4px 0 4px;
	border-color: rgba(255,255,255,1) transparent transparent transparent;
	position: absolute;
	top: 24px;
	left: 25px;
	}
section.intro div.voice-text  p{
	padding:0 20px;
	}
section.intro div.voice-text div.backlist{ padding:75px 0 15px 0; }

header.detail01 section.mainimg{
	background:url(/images/recruit/voice/detail01/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.detail01 section.mainimg h1{}
header.detail01 section.mainimg h1 span{}
header.detail01 section.mainimg h1 span:after{ width:320px; }

header.detail02 section.mainimg{
	background:url(/images/recruit/voice/detail02/mainimg.jpg) no-repeat center center;
	background-size:cover;
	}
header.detail02 section.mainimg h1{}
header.detail02 section.mainimg h1 span{}
header.detail02 section.mainimg h1 span:after{ width:320px; }

header.detail03 section.mainimg{
	background:url(/images/recruit/voice/detail03/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.detail03 section.mainimg h1{}
header.detail03 section.mainimg h1 span{}
header.detail03 section.mainimg h1 span:after{ width:320px; }

header.detail04 section.mainimg{
	background:url(/images/recruit/voice/detail04/mainimg.jpg) no-repeat center center;
	background-size:cover;
	}
header.detail04 section.mainimg h1{}
header.detail04 section.mainimg h1 span{}
header.detail04 section.mainimg h1 span:after{ width:320px; }

header.detail05 section.mainimg{
	background:url(/images/recruit/voice/detail05/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.detail05 section.mainimg h1{}
header.detail05 section.mainimg h1 span{}
header.detail05 section.mainimg h1 span:after{ width:320px; }

header.detail06 section.mainimg{
	background:url(/images/recruit/voice/detail06/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.detail06 section.mainimg h1{}
header.detail06 section.mainimg h1 span{}
header.detail06 section.mainimg h1 span:after{ width:320px; }

header.detail07 section.mainimg{
	background:url(/images/recruit/voice/detail07/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.detail07 section.mainimg h1{}
header.detail07 section.mainimg h1 span{}
header.detail07 section.mainimg h1 span:after{ width:320px; }

header.detail08 section.mainimg{
	background:url(/images/recruit/voice/detail08/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.detail08 section.mainimg h1{}
header.detail08 section.mainimg h1 span{}
header.detail08 section.mainimg h1 span:after{ width:320px; }

header.detail09 section.mainimg{
	background:url(/images/recruit/voice/detail09/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.detail09 section.mainimg h1{}
header.detail09 section.mainimg h1 span{}
header.detail09 section.mainimg h1 span:after{ width:320px; }

/*application*/
main.application{}
main.application section.intro p{
	width:100%;
	text-align:center;
	padding:35px 0 0 0;
	}
main.application section.app-list{
	width:100%;
	max-width:1400px;
	margin:auto;
	padding:50px 5vw 0;
	}
main.application section.app-list div{
	width:100%;
	float:left;
	margin:0 0 50px 0;
	}
main.application section.app-list div h3{
	width:100%;
	padding:20px 0 20px 45px;
	position:relative;
	font-size:15px;
	letter-spacing:0.08rem;
	background:rgba(90,140,213,1);
	color:rgba(255,255,255,1);
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	}
main.application section.app-list div h3:after{
	content:"";
	width:0;
	height:0;
	border-style:solid;
	border-width: 7px 5px 0 5px;
	border-color: rgba(255,255,255,1) transparent transparent transparent;
	position:absolute;
	top:30px;
	left:25px;
	}
main.application section.app-list div dl{
	width:100%;
	float:left;
	padding:20px 0;
	border-bottom:1px dotted rgba(210,210,210,1);
	border-left:1px dotted rgba(210,210,210,1);
	border-right:1px dotted rgba(210,210,210,1);
	line-height:1.8rem;
	}
main.application section.app-list div dl dt{
	width:17.5%;
	float:left;
	padding:0 0 0 25px;
	letter-spacing:0.05rem;
	}
main.application section.app-list div dl dd{
	width:82.5%;
	float:left;
	padding:0 15px 0 0;
	letter-spacing:0.02rem;
	}
main.application section.app-list div dl dd em{
	font-family:Arial, Helvetica, sans-serif;
	font-style:normal;
	letter-spacing:0.08rem;
	}
main.application section.app-list div dl dd small{
	font-size:12px;
	}
/*	06 news
------------------------------------------*/
/*mainimg*/
header.page-news section.mainimg{
	background:url(/images/news/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.page-news section.mainimg h1{}
header.page-news section.mainimg h1 span{}
header.page-news section.mainimg h1 span:after{ width:150px; }

/*list*/
main.page-news section{
	width:100%;
	max-width:1400px;
	margin:auto;
	padding:0 5vw;
	}
main.page-news section dl{
	width:100%;
	float:left;
	padding:22px 0;
	border-bottom:1px dotted rgba(210,210,210,1);
	line-height:1.8rem;
	position:relative;
	}
main.page-news section dl:after{
	content:"";
	width:0;
	height:0;
	border-style:solid;
	border-width:4px 0 4px 7px;
	border-color:transparent transparent transparent rgba(90,140,213,.6);
	position:absolute;
	top:50%;
	right:20px;
	margin:-4px 0 0 0;
	}
main.page-news section dl dt{
	width:10%;
	float:left;
	padding:0 0 0 20px;
	letter-spacing:0.05rem;
	}
main.page-news section dl dd{
	width:90%;
	float:left;
	padding:0 15px 0 0;
	letter-spacing:0.02rem;
	}
main.page-news section dl dd span{
	width:70px;
	float:left;
	display:block;
	margin:4px 25px 0 0;
	}
main.page-news section dl em{
	font-family:'Univers LT W01_65 Bold1475968';
	font-size:13px;
	font-style:bolder;
	font-style:normal;
	letter-spacing:0.05rem;
	}
main.page-news section div.pagination{
	width:100%;
	display:inline-block;
	}
main.page-news section div.pagination ul{
	padding:40px 0 30px 0;
	display:block;
	text-align:center;
	}
main.page-news section div.pagination ul li{
	margin:0 5px;
	display:inline-block;
	}
main.page-news section div.pagination ul li a {
	line-height:22px;
	padding:0 7px;
	display: inherit;
	font-family:'Univers LT W01_55 Roman1475956';
	color:inherit;
	transition:0.2s;
	-webkit-transition:0.2s;
	-moz-transition:0.2s;
	}
main.page-news section div.pagination ul li a:hover{ color:#8D8D8D; }
main.page-news section div.pagination ul .curpage {
	line-height:22px;
	padding:0 6px;
	display: inherit;
	background:#8D8D8D;
	color: #FFFFFF;
	border-radius: 2px;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	}

/*details*/
section.details{}
section.details h3{
	font-size:19px;
	padding:10px 0 25px 0;
	letter-spacing:0.06rem;
	}
section.details time{
	display:inline-block;
	font-family:Arial, Helvetica, sans-serif;
	font-size:13px;
	padding:0 0 40px 0;
	}
section.details p{}
div.backlist{ padding:60px 0 30px 0; }
div.backlist a{
	border:1px solid rgba(210,210,210,1);
	display:inline-block;
	padding:10px 40px;
	}
div.backlist a small{
	font-size:10px;
	padding:0 12px 0 0;
	}


/*	07 contact
------------------------------------------*/
/*mainimg*/
header.whole-contact section.mainimg{
	background:url(/form/images/contact/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.whole-contact section.mainimg h1{}
header.whole-contact section.mainimg h1 span{}
header.whole-contact section.mainimg h1 span:after{ width:250px; }

main.page-contact {}
main.page-contact section.intro{
	text-align:center;
	}
main.page-contact section.intro p{
	padding:10px 0 45px 0;
	}

/*	08 sitemap
------------------------------------------*/
/*mainimg*/
header.page-sitemap section.mainimg{
	background:url(/images/sitemap/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.page-sitemap section.mainimg h1{}
header.page-sitemap section.mainimg h1 span{}
header.page-sitemap section.mainimg h1 span:after{ width:200px; }

main.page-sitemap section{
	width:100%;
	max-width:1400px;
	margin:auto;
	padding:0 5vw;
	}
main.page-sitemap section dl{
	width:100%;
	float:left;
	padding:12px 0;
	border-bottom:1px dotted rgba(210,210,210,1);
	line-height:1.8rem;
	position:relative;
	}
main.page-sitemap section dl dt{
	width:15%;
	float:left;
	padding:0 0 0 30px;
	margin:10px 0;
	letter-spacing:0.05rem;
	position:relative;
	}
main.page-sitemap section dl dt:before{
	content:"";
	width:6px;
	height:6px;
	background:rgba(85,85,85,1);
	position:absolute;
	top:10px;
	left:10px;
	}
main.page-sitemap section dl dd{
	width:85%;
	float:left;
	padding:0 15px 0 0;
	letter-spacing:0.02rem;
	}
main.page-sitemap section dl dd a{
	padding:0 2vw;
	margin:10px 0;
	border-left:1px dotted rgba(210,210,210,1);
	display:inline-block;
	}

/*	09 catalog
------------------------------------------*/
/*mainimg*/
header.page-catalog section.mainimg{
	background:url(/images/catalog/mainimg.jpg) no-repeat center center;
	background-size:cover;
	}
header.page-catalog section.mainimg h1{}
header.page-catalog section.mainimg h1 span{}
header.page-catalog section.mainimg h1 span:after{ width:200px; }





/*	10 privacy
------------------------------------------*/
/*mainimg*/
header.privacy section.mainimg{
	background:url(/images/privacy/main_190219.jpg) no-repeat center center;
	background-size:cover;
	}
header.privacy section.mainimg h1{}
header.privacy section.mainimg h1 span{}
header.privacy section.mainimg h1 span:after{ width:270px; }

header.greeting section.mainimg{
	background:url(/images/company/greeting/mainimg.jpg) no-repeat center center;
	background-size:cover;
	}
header.greeting section.mainimg h1{}
header.greeting section.mainimg h1 span{}
header.greeting section.mainimg h1 span:after{ width:200px; }

header.history section.mainimg{
	background:url(/images/company/history/mainimg.jpg) no-repeat center center;
	background-size:cover;
	}
header.history section.mainimg h1{}
header.history section.mainimg h1 span{}
header.history section.mainimg h1 span:after{ width:250px; }

header.outline section.mainimg{
	background:url(/images/company/outline/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.outline section.mainimg h1{}
header.outline section.mainimg h1 span{}
header.outline section.mainimg h1 span:after{ width:400px; }

header.access section.mainimg{
	background:url(/images/company/access/mainimg_180417.jpg) no-repeat center center;
	background-size:cover;
	}
header.access section.mainimg h1{}
header.access section.mainimg h1 span{}
header.access section.mainimg h1 span:after{ width:270px; }

/*philosophy*/
main.privacy{}
main.privacy section{
	max-width:1300px;
	margin:auto;
	padding:0 7.5vw 0 7.5vw;
	}
main.privacy section h2{
	width:100%;
	text-align:center;
	font-size:45px;
	font-family: "Futura LT W01 Light";
	font-weight:100;
	letter-spacing:0.04rem;
	line-height:4.8rem;
	z-index:2;
	-webkit-font-smoothing: antialiased;
	-moz-font-smoothing: antialiased;
	}
main.privacy section h2 span{
	display:inline;
	background:rgba(90,140,213,1);
	padding:8px 25px;
	font-family :YuGothic, '游ゴシック',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
	font-size:13px;
	color:rgba(255,255,252,1);
	line-height:1.3rem;
	letter-spacing:0.08rem;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-font-smoothing: subpixel-antialiased;
	}
main.privacy section div.box{
	background:rgba(245,246,247,.6);
	border-radius:15px;
	position:relative;
	top:-75px;
	}
main.privacy section:nth-child(1) div.box{padding:85px 15% 30px 15%;}
main.privacy section:nth-child(2) div.box{padding:85px 15% 30px 15%;}
main.privacy section:nth-child(1) div.box:after{
	content:"";
	width:25%;
	height:300px;

	}
main.privacy section div.box h3{
	text-align:left;
	}
main.privacy section div.box h3 img{ width:350px; }
main.privacy section div.box p{
	padding:50px 0;
	}
main.privacy section div.box div.symbol-text{
	width:100%;
	display:flex;
	background:rgba(255,255,255,1);
	position:relative;
	margin:15px 0 0 0;
	}
main.privacy section div.box div.symbol-text:after{
	content:"";
	width:16px;
	height:100%;
	position:absolute;
	top:0;
	left:50%;
	margin:0 0 0 -8px;
	background:rgba(245,246,247,1);
	}
main.privacy section div.box h4{
	font-size:15px;
	}
main.privacy section div.box div.symbol-text div{
	width:50%;
	display:inline-block;
	vertical-align:top;
	}
main.privacy section div.box div.symbol-text div:nth-child(1){
	padding:20px 45px 20px 35px;
	}
main.privacy section div.box div.symbol-text div:nth-child(2){
	padding:20px 35px 20px 45px;
	}
main.privacy section div.box div.symbol-text div img{
	width:90%;
	padding:25px 0 0 10%;
	}
main.privacy section div.box div.symbol-text div h4{
	padding:20px 0 0;
	}
main.privacy section div.box div.symbol-text div p{
	padding:30px 0 25px;
	}
main.privacy section div.box ul li{
	padding:20px 0px;
	list-style: decimal;
}




/*adjust
------------------------------------------*/
/*--- stretch ---*/
@media screen and (max-width:1250px){
section.service-topics div.inner{ height:535px; }
}
@media screen and (max-width:1200px){
section.service-topics div.inner div:nth-child(1){ padding:95px 50px 0 50px; }
section.service-topics div.inner div strong { top:25px; left: 50px; }
main.history section div.inner div.frame article{
	width:82.5%;
	margin:20px 0 5px 17.5%;
	}
}
@media screen and (max-width:1150px){
nav.main-nav ul li{ padding:0 2.1vw; }
header section.navigation div{ left:3.6vw; }
nav.info-nav{ right:2.4vw; }
nav.main-nav ul.parent li{ padding:0 1.8vw 65px; }
section.topics div.inner dl dt{ width:12.5%; }
section.topics div.inner dl dd{ width:87.5%; }
}
@media screen and (max-width:1080px){
nav.main-nav ul li{ padding:0 1.9vw; }
header section.navigation div{ left:2.8vw; }
nav.main-nav ul.parent li{ padding:0 1.5vw 65px; }
nav.main-nav ul.parent li:last-child:after{ display:none; }
nav.info-nav{ right:1.8vw; }
}

@media screen and (min-width:1300px){
section.intro div.feature-text img{ width:480px; }
section.feature-topics div.inner div{ padding:0 100px; }
}
@media screen and (min-width:1450px){
section.feature-topics div.inner div{ padding:0 125px; }
}
@media screen and (min-width:1600px){
section.feature-topics div.inner div{ padding:0 150px; }
}


p.underconstruction{
	width:100%;
	font-size:14px;
	text-align:center;
	padding:120px 0;
	}




/* Fonts

font-family:'Futura LT W01 Light';
font-family:'Futura LT W01 Light Oblique';
font-family:'Futura LT W01 Book';
font-family:'Futura LT W01 Book Oblique';
font-family:'Futura LT W01 Medium';
font-family:'Futura LT W01 Medium Oblique';
font-family:'Futura LT W01 Bold';
font-family:'Futura LT W01 Bold Oblique';
font-family:'Futura LT W01 Extra Bold';
font-family:'Futura LT W01 Extra Bold Obl';
font-family:'Futura LT W01 Heavy';
font-family:'Futura LT W01 Heavy Oblique';
font-family:'Futura LT W01 Light Condensed';
font-family:'Futura LT W01 Light Cond Obl';
font-family:'Futura LT W01 Medium Condensed';
font-family:'Futura LT W01 Medium Cond Obl';
font-family:'Futura LT W01 Bold Condensed';
font-family:'Futura LT W01 Bold Cond Obl';
font-family:'Futura LT W01 X Bold Condensed';
font-family:'Futura LT W01 X Bold Cond Obl';
font-family:'Futura W01 Display';
font-family:'Futura W01 Black';

font-family:'Univers LT W01_45 Light1475944';
font-family:'Univers LT W01_45 Light1475950';
font-family:'Univers LT W01_55 Roman1475956';
font-family:'Univers LT W01_55 Obliq1475962';
font-family:'Univers LT W01_65 Bold1475968';
font-family:'Univers LT W01_65 Bold_1475974';
font-family:'Univers LT W01_75 Black1475980';
font-family:'Univers LT W01_75 Black1475986';
font-family:'Univers LT W01_85 Extra Black';
font-family:'Univers LT W01_85 X Black Obl';
font-family:'Univers LT W01_47 Light1475998';
font-family:'Univers LT W01_47 Light Cn Obl';
font-family:'Univers LT W01_57 Condensed';
font-family:'Univers LT W01_57 Conde1476010';
font-family:'Univers LT W01_67 Bold_1476016';
font-family:'Univers LT W01_67 Bold Cn Obl';
font-family:'Univers LT W01_39 Thin Ult Cn';
font-family:'Univers LT W01_49 Light Ult Cn';
font-family:'Univers LT W01_59 Ult Cond';
font-family:'Univers LT W01_53 Extended';
font-family:'Univers LT W01_53 Extended Obl';
font-family:'Univers LT W01_63 Bold_1476034';
font-family:'Univers LT W01_63 Bold Ext Obl';
font-family:'Univers LT W01_73 Black Ext';
font-family:'Univers LT W01_73 Black1476052';
font-family:'Univers LT W01_93 X Black Ext';
font-family:'Univers LT W01_93 X Blk Ex Obl';

*/
/* 201906 追加 */
/* toppage: .intro */
.lead-service .service_eachBlock{
	display: flex;
	border: solid 1px rgba(90,145,210,1);
	margin-bottom: 40px;
}
.lead-service .service_textBlock{
	width: 50%;
	padding: 50px;
	position: relative;
}
.lead-service .service_textBlock h1{
	letter-spacing: .1em;
	line-height: 1.6em;
	border-bottom: solid 1px rgba(90,145,210,1);
	padding-bottom: 20px;
	margin-bottom: 20px;
	font-size: 1.4em;
	color: rgba(90,145,210,1);
}
.lead-service  .service_textBlock h1::before{
	font-size: 1.6em;
	margin-right: 25px;
}
.lead-service .service_eachBlock:nth-child(1) .service_textBlock h1::before{
	content: "01";
}
.lead-service .service_eachBlock:nth-child(2) .service_textBlock h1::before{
	content: "02";
}
.lead-service .service_eachBlock:nth-child(3) .service_textBlock h1::before{
	content: "03";
}
.lead-service .service_textBlock h1 span{
	font-size: .6em;
	margin-left: 15px;
	letter-spacing: normal;
}
.lead-service .service_textBlock p{
	padding: 0;
	width: 100%;
	text-align: unset;
}
.lead-service .service_textBlock .item-head{
	position: relative;
	border: 1px solid rgba(90,145,210,1);
	border-radius: 5px;
	padding: 18px 15px;
	margin: 55px 0 30px;
}
.lead-service .service_textBlock .item-head strong{
	color: rgba(90,145,210,1);
	position: absolute;
	top: -13px;
	left: 10px;
	background: #fff;
	padding: 0 5px;
	font-family: YuGothic, '游ゴシック',"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, sans-serif;
	font-size: 1em;
	font-weight: normal;
	letter-spacing: 0;
}
.lead-service .service_textBlock_dl{
	display: flex;
	margin-bottom: 15px;
}
.lead-service .service_textBlock_dl:last-of-type{
	margin-bottom: 30px;
}
.lead-service .service_textBlock_dl > dt{
	margin-right: 20px;
	color: rgba(90,145,210,1);
}
.lead-service .service_eachBlock .service_figureBlock{
	width: 50%;
	height: auto;
	margin: 0;
}
@media all and (max-width: 1000px){
	.lead-service .service_eachBlock{
		height: auto;
		padding: 0;
		margin-bottom: 7vw;
		flex-direction: column-reverse;
	}
	.lead-service .service_textBlock{
		width: 100%;
		padding: 5vw 3vw;
	}
	.lead-service .service_textBlock h1{
		padding-bottom: 2.2vw;
		margin-bottom: 2.2vw;
		font-size: 1.2em;
	}
	.lead-service  .service_textBlock h1::before{
		font-size: 1.3em;
		margin-right: 2vw;
	}
	.lead-service .service_textBlock h1 span{
		margin-left: 2vw;
	}
	.service_textBlock .btn-block{
		position: relative;
		text-align: center;
		padding: 0;
	}
	.btn-block{
		text-align: center;
	}
	.lead-service .service_textBlock .item-head strong{
		top: -12%;
	}
	.lead-service .service_textBlock_dl{
		display: block;
	}
	.service_textBlock .btn-viewmore{
		bottom: 5.5vw;
	}
	.lead-service .service_eachBlock .service_figureBlock{
		width: 100%;
		height: 80vw;
	}
}
/* /.toppage: .intro */
/* service/steel.html .area */
.page-service.steel #product_construction{
	padding-top: 0;
}
section.area{
	max-width: 1300px;
	margin: auto auto 100px;
	padding: 65px 4.5vw 0;
}
.service_anchor{
	display: flex;
	max-width: 1100px;
	margin: auto;
	width: 100%;
	margin-top: 65px;
}
.service_eachanchor{
	max-width: 400px;
	width: 100%;
	border: solid 1px rgba(90,145,210,1);
	display: block;
}
.service_eachanchor h1{
	height: 100%;
	padding: 20px 0 20px 25px;
	color: rgba(90,140,213,1);
	letter-spacing: 0.08rem;
	font-size: 15px;
	font-weight: bold;
	line-height: 28px;
	display: flex;
	position: relative;
}
.service_eachanchor h1:after{
	content: url(/images/common/anchor_arrow.svg);
	width: 18px;
	height: 18px;
	display: block;
	align-self: center;
	position: absolute;
	right: 15px;
	top: 25px;
}
.service_eachanchor:nth-child(1){
	margin: 0 20px 0 140px;
}
.service_eachanchor:nth-child(2){
	margin: 0 140px 0 0;
}
section.area .inner{
	display: flex;
}
.area_eachContent{
	width: 50%;
}
.area_eachContent:nth-child(1){
	padding-right: 10px;
}
.area_eachContent:nth-child(2){
	padding-left: 10px;
}
.area_mapBlock_title span{
	margin-left: 25px;
	font-size: .95em;
}
.area_mapBlock_map div{
	height: 0;
	padding-bottom: 92%;
	background-repeat: no-repeat;
	background-size: cover;
}
.area_textBlock_title dt{
	color: #5a91d2;
	line-height: 1.9rem;
}
.area_textBlock span{
	margin-left: 10px;
}

/* 追加　20210301 */
.area_textBlock .sp{
	display: none;
}	

.input_captcha dd input{
	width: 50%;
}


@media screen and (max-width: 1000px){
	.area_textBlock .sp{
		display: block;
	}	
	.area_textBlock .sp+span{
		margin-left: 0;
	}
}

/* ここまで */

.area_textBlock dl{
	display: flex;
	background-color: #fafafa;
	padding: 20px 25px;
}
.area_textBlock dl:not(:first-child){
	border-top: 1px solid #e0e0e0;
}
.area_textBlock dt{
	min-width: 23%;
}
@media screen and (max-width: 1000px){
	section.area {
		max-width: initial;
		margin-bottom: 7.5vw;
		padding: 0 5vw 0;
	}
	.service_anchor{
		display: block;
		margin: 7.5vw 0;
		padding: 0 5vw;
	}
	.service_eachanchor h1{
		line-height: normal;
	}
	.service_eachanchor h1:after{
		width: 4.5vw;
		height: 4.5vw;
		right: 4vw;
		top: 4.5vw;
	}
	.service_anchor{
		margin-top: 10vw;
	}
	.service_eachanchor{
		max-width: none;
		height: auto;
	}
	.service_eachanchor:nth-child(1),
	.service_eachanchor:nth-child(2){
		margin: 0;
	}
	.service_eachanchor:nth-child(1){
		margin-bottom: 3.5vw;
	}
	.service_eachanchor h1{
		font-size: 4.5vw;
		padding: 4vw 5vw;
	}
	section.area .inner{
		display: block;
	}
	.area_eachContent{
		width: 100%;
		padding: 0;
	}
	.area_eachContent:nth-child(1){
		margin-bottom: 7.5vw;
	}
	.area_eachContent:nth-child(1),
	.area_eachContent:nth-child(2){
		padding: 0;
	}
	.area_mapBlock_title span{
		margin-left: 6.5vw;
	}
	.area_textBlock_title dt{
		line-height: 7.5vw;
	}
	.area_textBlock dt{
		min-width: 25%;
	}
}
/* /.service/steel.html .area */
