@charset "UTF-8";
/*

CSS page.css */






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


#index


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

/* common */
#index {  }
@media screen and (max-width: 767px) {
}

/* #sec_1 */
#index #swrap_1 { background: #00428d; }
#index #sec_1 { color: #fff; padding-top: 140px }
#index #sec_1>.incnt>.inwrap{ display: flex; flex-direction: row; justify-content: center; }
#index #sec_1>.incnt>.inwrap .titlebox{ flex-shrink: 0; margin-right: 12%; }
#index #sec_1>.incnt>.inwrap .titlebox .en{ font-weight: bold; font-size: 1.8rem; margin-bottom: 10px }
#index #sec_1>.incnt>.inwrap .titlebox .title{ font-size: 6rem; line-height: 1.4 }
#index #sec_1>.incnt>.inwrap .mainbox{ padding-top: 50px }
#index #sec_1>.incnt>.inwrap .mainbox .txt{ font-weight: bold; font-size: 1.8rem }
#index #sec_1>.incnt>.inwrap .mainbox .link{ margin-top: 30px; }

#index #sec_1+.linebgicon{ position: absolute; right: 0; left: 140px; margin-left: auto; margin-right: auto; z-index: 10 }
@media screen and (max-width: 1150px) {
	#index #sec_1+.linebgicon{ left: 40px }
}
@media screen and (max-width: 1040px) {
	#index #sec_1 {  padding-top: 80px }
	#index #sec_1>.incnt>.inwrap{ display: block; }
	#index #sec_1>.incnt>.inwrap .titlebox{ margin-right: 0; }
	#index #sec_1>.incnt>.inwrap .titlebox .title{ font-size: 4rem; line-height: 1.6 }
	#index #sec_1>.incnt>.inwrap .mainbox{ padding-top: 0; margin-top: 30px }
	#index #sec_1>.incnt>.inwrap .mainbox .link{ margin-top: 30px; text-align: center; }

	#index #sec_1+.linebgicon{ position: absolute; right: 0; left: 190px; margin-left: auto; margin-right: auto;  }
}
@media screen and (max-width: 767px) {
	#index #sec_1 {  padding-top: 60px; margin-bottom: 0 }
	#index #sec_1>.incnt>.inwrap .titlebox .en{ font-size: 1.8rem; }
	#index #sec_1>.incnt>.inwrap .mainbox .txt{ font-size: 1.8rem }
}
@media screen and (max-width: 767px) {
	#index #sec_1>.incnt>.inwrap .titlebox .title{ font-size: 3rem; }
}

#index #sec_2{ background: url(../img/index/s2_bg1.png) no-repeat center; background-size: cover; padding-top: 200px; padding-bottom: 100px; position: relative; }
#index #sec_2:before{ content: ""; background: linear-gradient(to top left, rgba(255,255,255,0) 50%, #00428d 50.5%) no-repeat top right/100% 100%; position: absolute; top: 0; left: 0; width: 100%; height: 128px; }
#index #sec_2 .indexsectitle{ text-align: center; color: #fff }
@media screen and (max-width: 1750px) {
	#index #sec_2{ background: url(../img/index/s2_bg1.png) no-repeat center; background-size: auto 101%; }
}
@media screen and (max-width: 1040px) {
	#index #sec_2{ padding-top: 160px; padding-bottom: 80px }
	#index #sec_2:before{ content: none; }
}
@media screen and (max-width: 767px) {
	#index #sec_2{ padding-top: 130px; padding-bottom: 60px }
	#index #sec_2 .indexsectitle .en{ color: #00428d }
	#index #sec_2 .indexsectitle .title{ color: initial; }
}




#index #sec_3{ background: url(../img/index/s3_bg1.png) no-repeat center; background-size: cover; padding-top: 100px; padding-bottom: 80px; margin-bottom: 140px; position: relative; }
#index #sec_3 .linebgicon{ transform: rotateX(180deg); position: absolute; left: -270px; bottom: -40px; }
#index #sec_3 .linebgicon:before{ background: #00428d; }
#index #sec_3 .linebgicon:after{ background: #00428d; }
#index #sec_3>.incnt{  }
#index #sec_3>.incnt>.inwrap{ display: flex; flex-direction: row; justify-content: space-between; }
#index #sec_3>.incnt>.inwrap .titlebox{ flex-shrink: 0; margin-right: 6% }
#index #sec_3>.incnt>.inwrap .titlebox .indexsectitle{  }
#index #sec_3>.incnt>.inwrap .titlebox .indexsectitle .en{ color: #00428d; }
#index #sec_3>.incnt>.inwrap .titlebox .indexsectitle .title{  }
#index #sec_3>.incnt>.inwrap .titlebox .link{ margin-top: 70px }
#index #sec_3>.incnt>.inwrap .titlebox .link .btnlink{ width: 246px }
#index #sec_3>.incnt>.inwrap .mainbox{ width: 100% }
@media screen and (max-width: 1750px) {
	#index #sec_3{ background: url(../img/index/s3_bg1.png) no-repeat center; background-size: cover; }
}
@media screen and (max-width: 1040px) {
	#index #sec_3{ padding-top: 80px; padding-bottom: 80px; margin-bottom: 80px }
	#index #sec_3>.incnt>.inwrap{ display: block; }
	#index #sec_3>.incnt>.inwrap .titlebox{ margin-right: 0 }
	#index #sec_3>.incnt>.inwrap .mainbox+.link{ margin-top: 30px; text-align: center; }
}
@media screen and (max-width: 767px) {
	#index #sec_3{ padding-top: 60px; padding-bottom: 60px; margin-bottom: 70px }
}


#index #sec_4{  }
#index #sec_4>.incnt{  }
#index #sec_4>.incnt>.inwrap{  }
#index #sec_4 .titlebox{ margin-bottom: 20px }
#index #sec_4 .titlebox .subtitle{ font-weight: bold; font-size: 2.4rem; text-align: center; color: #00428d; line-height: 1.4 }
#index #sec_4 .titlebox .title{ font-size: 6rem; line-height: 1.4; letter-spacing: 0.05em; color: #00428d; text-align: center; }
#index #sec_4 .txt{ text-align: center; line-height: 2.2 }
#index #sec_4 .link{ margin-top: 40px; text-align: center; }
#index #sec_4 .link .btnlink{ margin-left: auto; margin-right: auto; }
@media screen and (max-width: 1040px) {
	#index #sec_4 { margin-bottom: 20px }
	#index #sec_4 .titlebox{ margin-bottom: 20px }
	#index #sec_4 .titlebox .subtitle{ font-size: 1.8rem; margin-bottom: 10px }
	#index #sec_4 .txt{ text-align: left; }
	#index #sec_4 .titlebox .title{ font-size: 4rem; line-height: 1.6; }
}
@media screen and (max-width: 767px) {
	#index #sec_4 .titlebox .subtitle,
	#index #sec_4 .titlebox .title{ text-align: left; }
	#index #sec_4 .titlebox .subtitle{ font-size: 1.6rem }
}
@media screen and (max-width: 767px) {
	#index #sec_4 .titlebox .title{ font-size: 3rem; }
}

#index #sec_5{ background: url(../img/index/s5_bg1.png) no-repeat 80% center; background-size: cover; padding-top: 180px; padding-bottom: 120px; margin-bottom: 140px; color: #fff; position: relative; }
#index #sec_5:before{ content: ""; background: linear-gradient(to top left, rgba(255,255,255,0) 50%, #fff 50.5%) no-repeat top right/100% 100%; position: absolute; top: 0; left: 0; width: 100%; height: 128px; }
#index #sec_5>.incnt{  }
#index #sec_5 .indexsectitle{ text-align: center; margin-bottom: 20px }
#index #sec_5 .indexsectitle .en{  }
#index #sec_5 .indexsectitle .title{  }
#index #sec_5 .copy.style1{  }
#index #sec_5 .txt{ text-align: center; line-height: 2.2 }
#index #sec_5 .link{ margin-top: 40px; text-align: center; }
#index #sec_5 .link .btnlink{ margin-left: auto; margin-right: auto; }
@media screen and (max-width: 1650px) {
	#index #sec_5{ background: url(../img/index/s5_bg1.png) no-repeat 80% center; background-size: auto 101%; }
}
@media screen and (max-width: 1040px) {
	#index #sec_5:before{ content: none; }
	#index #sec_5{ padding-top: 160px; padding-bottom: 80px }
	#index #sec_5 .txt{ text-align: left; }
}
@media screen and (max-width: 767px) {
	#index #sec_5{ padding-top: 130px; padding-bottom: 60px }
}
@media screen and (max-width: 767px) {
	#index #sec_5 .copy.style1{ text-align: left; letter-spacing: 0em }
}










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


#about.mission


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

/* common */


/* #sec_1 */
#about.mission #sec_1 .txt{ margin-bottom:30px; letter-spacing:0.1em; font-size: 1.8rem; font-weight: bold; }
#about.mission #sec_1 .name{ letter-spacing:0.3rem; }
#about.mission #sec_1 .name .txt1{ margin-right:10px; font-size: 1.8rem; display: inline-block; vertical-align: 3px }
#about.mission #sec_1 .name .txt2{ font-size:2.8rem; display: inline-block; }
@media screen and (max-width: 767px) {
	#about.mission #sec_1 .txt{ margin-bottom:20px; font-size: 1.6rem; font-weight: normal; }
	#about.mission #sec_1 .name .txt1{ font-size: 1.6rem; vertical-align: 3px }
	#about.mission #sec_1 .name .txt2{ font-size:2.4rem; }
}


/* #sec_2 */
#about.mission #sec_2 .txtbig2{ margin-bottom: 25px; line-height: 1.8; }
#about.mission #sec_2 .boxlist_bgblue>ul{ display:flex; flex-direction: row; margin-top:40px;}
#about.mission #sec_2 .boxlist_bgblue>ul>li{ background:#00428d; width:32%; margin-right:2%; box-sizing:border-box }
#about.mission #sec_2 .boxlist_bgblue>ul>li:before{ content: ""; display: block; background: #c30c27; width: 3px; height: 30px; margin-bottom: 10px; margin-left: auto; margin-right: auto; }
#about.mission #sec_2 .boxlist_bgblue>ul>li:last-child{ margin-right:0%; }
#about.mission #sec_2 .boxlist_bgblue>ul>li{ padding: 30px 4% 40px; box-sizing: border-box; }
#about.mission #sec_2 .boxlist_bgblue>ul>li .title{ color:#ffffff; font-size:2.4rem; text-align:center; }
#about.mission #sec_2 .boxlist_bgblue>ul>li .txt{ color:#ffffff; }

@media screen and (max-width: 1040px) {
	#about.mission #sec_2 .boxlist_bgblue>ul{ display: block; margin-left: 0 }
	#about.mission #sec_2 .boxlist_bgblue>ul>li{ margin-left: 0; width: 100%; margin-bottom: 10px }
	#about.mission #sec_2 .boxlist_bgblue>ul>li:last-child{ margin-bottom: 0 }
	#about.mission #sec_2 .boxlist_bgblue>ul>li .txt{ text-align:center; }
}
@media screen and (max-width: 767px) {
	#about.mission #sec_2 .boxlist_bgblue>ul>li{ padding: 30px 6% 40px; }
}
@media screen and (max-width: 767px) {
	#about.mission #sec_2 .boxlist_bgblue>ul>li .txt{ text-align:left; }
}


/* #sec_3 */
#about.mission #sec_3 .imgbox {margin-right: auto; padding-bottom: 60px; position: relative; }
#about.mission #sec_3 .imgbox:before{content: "";position: absolute;left: 60px; top: 60px; bottom: 0; right: 0; z-index: -1; width: calc(100% - 60px); height: calc(100% - 60px); background: #f7f7f7;}
#about.mission #sec_3 .imgbox>.list{ display:flex; max-width: 1390px; width: 88% }
#about.mission #sec_3 .imgbox>.list>li { margin-right:20px; }
#about.mission #sec_3 .imgbox>.list>li img{ width: 100%; height:460px; object-fit: cover; font-family: 'object-fit: cover;'; }
#about.mission #sec_3 .imgbox>.list>li:nth-child(1){ width: 42%; flex-shrink: 0 }
#about.mission #sec_3 .imgbox>.list>li:last-child { margin-right:0px; }

@media screen and (max-width: 1040px) {
	#about.mission #sec_3 .imgbox>.list{ display:block;}
	#about.mission #sec_3 .imgbox>.list>li{ margin-right: 0; margin-bottom: 20px }
	#about.mission #sec_3 .imgbox>.list>li:last-child{ margin-bottom: 0 }
	#about.mission #sec_3 .imgbox>.list>li:nth-child(1){ width: 100%; }
	#about.mission #sec_3 .imgbox img{ width: 100%; height:360px; object-fit: cover; font-family: 'object-fit: cover;'; }
}
@media screen and (max-width: 767px) {
	#about.mission #sec_3 .imgbox{ padding-bottom: 30px }
	#about.mission #sec_3 .imgbox>.list>li{ margin-bottom: 10px }
	#about.mission #sec_3 .imgbox img{ width: 100%; height:300px; object-fit: cover; font-family: 'object-fit: cover;'; }
	#about.mission #sec_3 .imgbox:before{ left: 30px; top: 30px; width: calc(100% - 30px); height: calc(100% - 30px); }
	#about.mission #sec_3 .imgbox>.list{ width: 94% }
}
@media screen and (max-width: 479px) {
	#about.mission #sec_3 .imgbox img{ height: 250px }
}












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


#about.information


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

/* common */
.boxlist_bggray>ul>li>.link{ color: #00428d; font-weight: bold; font-size: 1.8rem; font-family: 'Montserrat', sans-serif; letter-spacing: 0.1em; text-align: center; margin-top: 15px; transition: .3s }



/* #sec_1 */
#about.information #sec_1 .list{ display:flex; flex-direction: row; justify-content: space-between;}
#about.information #sec_1 .list li { border-bottom: 1px solid #0d0d0d; letter-spacing: 0.1em;  }
#about.information #sec_1 .list li{ display:block; justify-content: space-between; padding: 15px 0; }
#about.information #sec_1 .list li:first-child { border-top: 1px solid #0d0d0d; }
#about.information #sec_1 .list dt{ font-weight:bold; }
#about.information #sec_1 .list1{ width:47%; }
#about.information #sec_1 .list2{ width:47%; }
@media screen and (max-width: 1040px) {
	#about.information #sec_1 .list{ display:block; }
	#about.information #sec_1 .list1,
	#about.information #sec_1 .list2{ width:100%; }
	#about.information #sec_1 .list2 li:first-child{ border-top:0px; }
}
@media screen and (max-width: 767px) {
	#about.information #sec_1 .dllist li { flex-direction: column; padding: 20px 5px; }
}

/* #sec_2 */
#about.information #sec_2 .boxlist_bggray .title{ font-size:2.4rem; text-align:center; }
#about.information #sec_2 .boxlist_bggray>ul{ display:flex; flex-direction:row; }
#about.information #sec_2 .boxlist_bggray>ul>li{ background:#f7f7f7; margin-right:2%; box-sizing:border-box; }
#about.information #sec_2 .boxlist_bggray>ul>li:last-child{ margin-right:0%; }
#about.information #sec_2 .boxlist_bggray>ul>li{ padding: 50px 50px; }
#about.information #sec_2 .copytitle{ font-size:2.8rem; margin-bottom:25px; line-height: 1.6 }
#about.information #sec_2 .box .subtxt{ font-size:2.0rem; }
#about.information #sec_2 .box{ margin-bottom:80px;}
#about.information #sec_2 .box:last-child{ margin-bottom:0px;}

@media screen and (max-width: 1040px) {
	#about.information #sec_2 .boxlist_bggray>ul{ display: block; margin-left: 0 }
	#about.information #sec_2 .boxlist_bggray>ul>li{ margin-left: 0; width: 100%; margin-bottom: 10px }
	#about.information #sec_2 .boxlist_bggray>ul>li:last-child{ margin-bottom: 0 }
	#about.information #sec_2 .boxlist_bggray>ul>li .txt{ text-align:center; }
}
@media screen and (max-width: 767px) {
	#about.information #sec_2 .boxlist_bggray>ul>li .title{ font-size: 2rem; }
	#about.information #sec_2 .boxlist_bggray>ul>li .link{ font-size: 1.6rem;  }
	#about.information #sec_2 .boxlist_bggray>ul>li{ padding: 30px 8%; }
	#about.information #sec_2 .copytitle{ font-size: 2rem; margin-bottom: 15px }
	#about.information #sec_2 .box .subtxt{ font-size:1.8rem; }
}

/* #sec_3 */
#about.information #sec_3 .txtbox{ margin-bottom:40px;}
#about.information #sec_3 .txtbox .txt{ margin-bottom:30px;}
#about.information #sec_3 .accessbox{ margin-bottom:40px;}
#about.information #sec_3 .accessbox .txt1{ font-size:1.8rem; }
#about.information #sec_3 .accesslist{ display:flex; justify-content:space-between; }
#about.information #sec_3 .accesslist>li{ width:45%; margin-right:5%; }
#about.information #sec_3 .accesslist>li:last-child{ margin-right:0%; }

@media screen and (max-width: 1040px) {
	#about.information #sec_3 .accesslist{ display: block; margin-left: 0 }
	#about.information #sec_3 .accesslist>li{ margin-left: 0; width: 100%; margin-bottom: 10px }
	#about.information #sec_3 .accesslist>li:last-child{ margin-bottom: 0 }
}
@media screen and (max-width: 767px) {
	#about.information #sec_3 .map>iframe{ height: 400px }
}









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


#service.general


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

/* common */

/* #sec_1 */
#service.general #sec_1 .elist{ margin-bottom:50px; }
#service.general .elist li{ margin-bottom:40px;}
#service.general #sec_1 .btn{ text-align:center; }






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


#service.construction


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

/* common */
#service.construction .copytitle{ font-size:2.8rem; margin-bottom:15px; }
@media screen and (max-width: 1040px) {
	#service.construction .copytitle{ font-size: 2.4rem }
}

/* #sec_1 */
#service.construction #sec_1 .mainbox1{ display:flex; justify-content:space-between; max-width: 1390px; width: 96% }
#service.construction #sec_1 .mainbox1 .imgbox{ width:58%; flex-shrink: 0; margin-right: 4%; position: relative; }
#service.construction #sec_1 .mainbox1 .imgbox>img{ height: 100%; width: 100%; object-fit: cover; font-family: 'object-fit: cover;'; position: absolute; bottom: 0; top: 0; left: 0; right: 0; }
#service.construction #sec_1 .mainbox1 .txtbox ul.boxlist_bggray_tate>li{ background:#f7f7f7; box-sizing:border-box; margin-bottom:5%; padding:30px 12%; box-sizing: border-box; }
#service.construction #sec_1 .mainbox1 .txtbox ul.boxlist_bggray_tate>li:last-child{ margin-bottom:0%; }
#service.construction #sec_1 .mainbox1 .txtbox ul.boxlist_bggray_tate>li .title{ font-size:2.4rem; text-align:center; }
#service.construction #sec_1 .mainbox1 .txtbox ul.boxlist_bggray_tate>li .link{ text-align: center; margin-top: 15px; }
#service.construction #sec_1 .mainbox1 .txtbox ul.boxlist_bggray_tate>li .link .txtlink:after{ content: ""; display: inline-block; background: url(../img/common/arrunder.svg) no-repeat; width: 20px; height: 14px; margin-left: 5px }
@media screen and (max-width: 1040px) {
	#service.construction #sec_1 .mainbox1{ display: block; margin-left: 0; width: 88%; margin-left: auto; margin-right: auto; }
	#service.construction #sec_1 .mainbox1 .imgbox{ width:100%; margin-bottom:5%; }
	#service.construction #sec_1 .mainbox1 .txtbox { width:100%;}
	#service.construction #sec_1 .mainbox1 .txtbox ul.boxlist_bggray_tate>li{ margin-bottom: 20px }
}

/* #sec_2 */
#service.construction #sec_2 .box{ display:flex; justify-content:space-between; margin-bottom: 100px; }
#service.construction #sec_2 .box:last-child { margin-bottom:0px; }
#service.construction #sec_2 .box .txtbox{ width:45%; margin-right:5%;  }
#service.construction #sec_2 .box .imgbox{ width:50%; }
#service.construction #sec_2 .box_bggray{ background:#f7f7f7; padding:50px 6% 30px; margin-bottom:100px; display:flex; justify-content:space-between; }
#service.construction #sec_2 .box_bggray:last-child{ margin-bottom:0px; }
#service.construction #sec_2 .box_bggray .txtbox{ width:55%; margin-right:5%; }
#service.construction #sec_2 .box_bggray .txtbox .title{ font-size:1.8rem; margin-bottom:10px; }
#service.construction #sec_2 .box_bggray .txtbox>.box1{ margin-bottom:20px; }
#service.construction #sec_2 .box_bggray .imgbox{ width:40%; }
#service.construction #sec_2 .btn{ text-align:center; }
#service.construction #sec_2 .link .btnlink{ text-align: center; }
@media screen and (max-width: 767px) {
	#service.construction #sec_2 .box{ display:block; }
	#service.construction #sec_2 .box .txtbox{ width:100%; margin-bottom:20px; }
	#service.construction #sec_2 .box .imgbox{ width:100%; }
	#service.construction #sec_2 .box_bggray{ display:block; padding:30px 8% 260px; position: relative; }
	#service.construction #sec_2 .box_bggray .txtbox{ width:100%; margin-bottom:20px; }
	#service.construction #sec_2 .box_bggray .imgbox{ width:100%;}
	#service.construction #sec_2 .box_bggray .imgbox img{ height: 250px; width: 100%; object-fit: cover; font-family: 'object-fit: cover;'; position: absolute; bottom: 0; left: 0; right: 0; }
}

/* #sec_3 */
#service.construction #sec_3 .box_bggray{ background:#f7f7f7; padding:50px 6% 30px; margin-bottom: 40px; display:flex; justify-content:space-between; }
#service.construction #sec_3 .box_bggray:last-child{ margin-bottom:0px; }
#service.construction #sec_3 .box_bggray .txtbox{ width:55%; margin-right:5%; }
#service.construction #sec_3 .box_bggray .txtbox .title{ font-size:1.8rem; margin-bottom:10px; }
#service.construction #sec_3 .box_bggray .txtbox>.box1{ margin-bottom:20px; }
#service.construction #sec_3 .box_bggray .imgbox{ width:40%; }
#service.construction #sec_3 .btn{ text-align:center; }
#service.construction #sec_3 .link .btnlink{ text-align: center; }
@media screen and (max-width: 767px) {
	#service.construction #sec_3 .box_bggray{ display:block; padding:30px 8% 260px; position: relative; }
	#service.construction #sec_3 .box_bggray .txtbox{ width:100%; margin-bottom:20px; }
	#service.construction #sec_3 .box_bggray .imgbox{ width:100%;}
	#service.construction #sec_3 .box_bggray .imgbox img{ height: 250px; width: 100%; object-fit: cover; font-family: 'object-fit: cover;'; position: absolute; bottom: 0; left: 0; right: 0; }
}






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


#service.measurement


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

/* common */
#service.measurement .elist li{ margin-bottom:40px;}
#service.measurement .elist li:last-child{ margin-bottom:0px;}


/* #sec_1 */
#service.measurement #sec_1{  }
#service.measurement #sec_1 .mainbox1{ display:flex; justify-content:space-between; max-width: 1390px; width: calc(100% - 120px); position: relative; padding-bottom: 60px; padding-right: 60px }
#service.measurement #sec_1 .mainbox1:before{ content: ""; background: #f7f7f7; position: absolute; top: 60px; left: 60px; max-width: 1410px; width: 96%; display: block; bottom: 0; z-index: -1 }
#service.measurement #sec_1 .mainbox1 .imgbox{ width:57.5%; margin-right:4.5%; flex-shrink: 0; }
#service.measurement #sec_1 .mainbox1 .imgbox img{  height: 100%; width: 100%; object-fit: cover; font-family: 'object-fit: cover;'; }
#service.measurement #sec_1 .mainbox1 .txtbox{ width: 100%;padding-top: 120px; padding-bottom: 135px; display: flex; align-items: center; }
@media screen and (max-width: 1340px) {
	#service.measurement #sec_1 .mainbox1{ margin-right:6%; }
}
@media screen and (max-width: 1040px) {
	#service.measurement #sec_1 .mainbox1{ flex-direction: column-reverse; margin:0 auto; width:88%; position: relative; padding-right: 0; padding-bottom: 0 }
	#service.measurement #sec_1 .mainbox1:before{ top: 0; left: 0; width: 100%;  }
	#service.measurement #sec_1 .mainbox1 .imgbox{ width:100%; margin:0; }
	#service.measurement #sec_1 .mainbox1 .txtbox { width:100%; padding-top: 30px; padding-bottom: 30px; display: flex; align-items: center;  padding-left: 6%; padding-right: 6%; box-sizing: border-box; }
	#service.measurement #sec_1 .mainbox1 .txtbox .copy br { display:block; }
}
@media screen and (max-width: 767px) {
	#service.measurement #sec_1 .mainbox1 .txtbox{ padding-left: 8%; padding-right: 8% }

}
@media screen and (max-width: 500px) {
	#service.measurement #sec_1 .mainbox1 .txtbox .copy br { display:none; }
}

/* #sec_3 */
#service.measurement #sec_3 .box_bggray{ background:#f7f7f7; padding:40px 4% 35px; margin-bottom:40px; display:flex; justify-content:space-between; }
#service.measurement #sec_3 .box_bggray:last-child{ margin-bottom:0px; }
#service.measurement #sec_3 .box_bggray .txtbox{ width:55%; margin-right:5%; }
#service.measurement #sec_3 .box_bggray .txtbox .title{ font-size:1.8rem; margin-bottom:10px; }
#service.measurement #sec_3 .box_bggray .txtbox>.box1{ margin-bottom:20px; }
#service.measurement #sec_3 .box_bggray .txtbox>.box1:last-child{ margin-bottom: 0 }
#service.measurement #sec_3 .box_bggray .imgbox{ width:40%; }
#service.measurement #sec_3 .link { text-align:center; }
@media screen and (max-width: 767px) {
	#service.measurement #sec_3 .box_bggray{ display:block; padding-left: 8%; padding-right: 8%; padding-bottom: 230px; position: relative; }
	#service.measurement #sec_3 .box_bggray .txtbox{ width:100%; margin-bottom:0; }
	#service.measurement #sec_3 .box_bggray .imgbox{ width:100%; position: absolute; bottom: 0; left: 0; right: 0; }
	#service.measurement #sec_3 .box_bggray .imgbox img{  height: 200px; width: 100%; object-fit: cover; font-family: 'object-fit: cover;'; }
	#service.measurement #sec_3 .link{ text-align: center; }
}





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


#partner


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

/* common */

/* copystyle3 */
.copy.style3 { font-size: 4.2rem; line-height: 1.35; letter-spacing: 0.14em; font-feature-settings : "palt";
font-family: yu-mincho-pr6n,"游明朝体",YuMincho,"Yu Mincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","ＭＳ Ｐ明朝","MS PMincho",serif; margin-bottom: 30px;  } /* editor - Style-A */
@media screen and (max-width: 767px) {
	.copy.style3 { font-size:2em; margin-bottom:20px; }
}

/* maillink */
.maillink{ font-family: 'Montserrat', sans-serif; color: #fff; font-weight: bold; font-size: 2.4rem; line-height:1; text-align:center; background: #00428d; border: none; position: relative;
display: inline-block; padding: 65px 0;text-decoration: none; letter-spacing: 0.05em; overflow: hidden; width: 100%; box-sizing: border-box; margin-bottom:30px; }
.maillink:after{ content: ""; background: #c30c27; width: 30px; height: 3px; display: inline-block; position: absolute;
top: 0; bottom: 0; right: 0; margin-top: auto; margin-bottom: auto; transition: .3s; z-index: 10 }
.maillink._border{ color: #00428d; background: transparent; border: 1px solid #00428d }
.maillink._white{ background: #fff; color: #00428d; border: none; }
.maillink:hover{ color: #fff!important; background: #c30c27; }
.maillink:hover:after{ background: #fff!important }
.maillink._border:hover{ border: 1px solid #c30c27 }
@media screen and (max-width: 767px) {
	.maillink{ padding: 40px 0; font-size: 1.6rem; }
}


/* telbox */
.telbox .teltxt{ font-size: 4rem; line-height: 1; margin-top:20px; margin-bottom: 10px; }
.telbox .teltxt .tel{ color: #00428d; letter-spacing: 0.1em; }
@media screen and (max-width: 767px) {
	.telbox{ margin-right: 0; margin-bottom: 30px }
	.telbox .teltxt{ font-size: 3rem; }
}


/* #sec_1 */
#partner #sec_1 .copy.style3{ text-align:center; }
#partner #sec_1 .txt.msg{ margin-bottom:60px; }
#partner #sec_1 .img{ position: relative; padding-top: 60px; padding-bottom: 60px;  }
#partner #sec_1 .img:before{ content: ""; background: #f7f7f7; top: 0; height: calc(100% - 60px); width: calc(100% - 60px); display: block; left: 0; position: absolute; z-index: -1 }
#partner #sec_1 .img:after{ content: ""; background: #f7f7f7; bottom: 0; height: calc(100% - 60px); width: calc(100% - 60px); display: block; right: 0; position: absolute; z-index: -1 }
#partner #sec_1 .img>ul{ display:flex; }
#partner #sec_1 .img>ul>li{ width:100%;}
#partner #sec_1 .img>ul>li>img{ object-fit: cover; font-family: 'object-fit: cover;'; /*IE対策*/ width: 100%; height: 100% }
#partner #sec_1 .boxlist_bggray>ul{ display:flex; flex-direction:row; margin-bottom:2%; text-align: center; }
#partner #sec_1 .boxlist_bggray>ul>li{ background:#f7f7f7; width:32%; margin-right:2%; padding: 45px 4%; box-sizing:border-box; }
#partner #sec_1 .boxlist_bggray>ul>li:last-child{ margin-right:0%; }
#partner #sec_1 .boxlist_bggray>ul>li>.list>li{ display:inline-block; }
#partner #sec_1 .box_bggray{ background:#f7f7f7; padding:50px 4%; text-align:center; }
#partner #sec_1 .box_bggray .boxtitle{ font-size:1.8rem; }
#partner #sec_1 .box_bggray .txt_blue{ color:#00428d; font-size:2.4rem; }

@media screen and (max-width: 1040px) {
	#partner #sec_1 .boxlist_bggray>ul{ display: block; margin-left: 0; margin-bottom:0px; }
	#partner #sec_1 .boxlist_bggray>ul>li{ margin-left: 0; width: 100%; margin-bottom: 10px }
	#partner #sec_1 .boxlist_bggray>ul>li .txt{ text-align:center; }
}
@media screen and (max-width: 767px) {
	#partner #sec_1 .copy.style3{ text-align: left; }
	#partner #sec_1 .imgbox>ul{ display:block; }
	#partner #sec_1 .box_bggray{ padding-left: 6%; padding-right: 6% }
	#partner #sec_1 .boxlist_bggray>ul>li .link{ font-size: 1.6rem; }
	#partner #sec_1 .boxlist_bggray>ul>li{ padding: 30px 8%; }
	#partner #sec_1 .img{ padding-top: 30px; padding-bottom: 30px;  }
	#partner #sec_1 .img:before{ height: calc(100% - 30px); width: calc(100% - 30px); }
	#partner #sec_1 .img:after{ height: calc(100% - 30px); width: calc(100% - 30px); }
	#partner #sec_1 .img>ul{ display:block; }
	#partner #sec_1 .img>ul>li>img{ height: 200px }
}
@media screen and (max-width: 479px) {
	#partner #sec_1 .box_bggray .txt_blue{ text-align: left; line-height: 1.6; margin-top: 5px }
}


/* #sec_2 */
#partner #sec_2 .box{ display:flex; justify-content:space-between; }
#partner #sec_2 .box .imgbox{ width:46%; margin-right:4%; flex-shrink: 0;  }
#partner #sec_2 .box .txtbox{ width: 100% }
#partner #sec_2 .box .txtbox .txtbig2 { margin-bottom:20px; }
#partner #sec_2 .box .txtbox .txt { margin-bottom:30px; }
#partner #sec_2 .box .txtbox .txt:last-child { margin-bottom:0px; }
@media screen and (max-width: 1040px) {
	#partner #sec_2 .incnt{ width: 88%; margin: 0 auto; }
}
@media screen and (max-width: 767px) {
	#partner #sec_2 .box{ flex-direction: column-reverse; }
	#partner #sec_2 .box .imgbox{ width:100%; margin-top:30px;}
	#partner #sec_2 .box .txtbox{ width:100%; }
}










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


#recruit


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

/* common */


/* #sec_1  */
#recruit #sec_1 .mainbox1{ display:flex; justify-content:space-between; align-items:center; margin-left: calc(50% - 590px); }
#recruit #sec_1 .mainbox1 .imgbox{ width:57.1%; margin-left:6%; flex-shrink: 0 }
#recruit #sec_1 .mainbox1 .txtbox{ width: 100% }
@media screen and (max-width: 1340px) {
	#recruit #sec_1 .mainbox1{ margin-left:6%; }
	#recruit #sec_1 .mainbox1 .txtbox .copy br { display:none; }
}
@media screen and (max-width: 1040px) {
	#recruit #sec_1 .mainbox1{ display: block; margin:0 auto; width:88%; }
	#recruit #sec_1 .mainbox1 .imgbox{ width:100%; margin:30px 0 0; }
	#recruit #sec_1 .mainbox1 .imgbox img{ object-fit: cover; font-family: 'object-fit: cover;'; /*IE対策*/ width: 100%; height: 500px }
	#recruit #sec_1 .mainbox1 .txtbox { width:100%; }
	#recruit #sec_1 .mainbox1 .txtbox .copy br { display:block; }
}
@media screen and (max-width: 767px) {
	#recruit #sec_1 .mainbox1 .imgbox img{ height: 300px }
}
@media screen and (max-width: 500px) {
	#recruit #sec_1 .mainbox1 .txtbox .copy br { display:none; }
}


/* #sec_2  */
#recruit #sec_2 .box{ display:flex; justify-content:space-between; }
#recruit #sec_2 .imgbox{ width:45%; margin-right:60px;}
#recruit #sec_2 .txtbox{ flex:1; }
#recruit #sec_2 .dllist { margin-bottom:20px; }
#recruit #sec_2 .dllist li { border-bottom: 2px solid #0d0d0d; letter-spacing: 0.1em;  }
#recruit #sec_2 .dllist li{ display:block; justify-content: space-between; }
#recruit #sec_2 .dllist li:first-child { border-top: 2px solid #0d0d0d; }
#recruit #sec_2 .dllist li{display:flex; justify-content: space-between; padding: 15px 0;}
#recruit #sec_2 .dllist li>dt{ font-weight:bold; width: 140px; }
#recruit #sec_2 .dllist li>dd{ flex: 1; }
@media screen and (max-width: 1040px) {
	#recruit #sec_2 .box{ flex-direction: column-reverse; }
	#recruit #sec_2 .box .imgbox{ width:100%; margin-top:30px; }
	#recruit #sec_2 .box .txtbox{ width:100%;}
	#recruit #sec_2 .dllist li { display: flex; flex-direction: column; padding: 20px 5px }
	#recruit #sec_2 .dllist li>dd{ flex: auto; }
	#recruit #sec_2 .dllist li>dt { width: 100%; }
}
@media screen and (max-width: 767px) {
}



/* #sec_3 */
#recruit #sec_3 .txt{ margin-bottom:30px; }
#recruit #sec_3 .txtbig2 { margin-bottom:15px; }
@media screen and (max-width: 767px) {
	#recruit #sec_3 .txtbig2 { margin-bottom:10px; }
}

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


#news


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

/* common */
#news {  }
@media screen and (max-width: 767px) {
}

/* #sec_1 */
#news #sec_1 {  }
@media screen and (max-width: 767px) {
}











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


.news


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

/* common */
.news { }
.news .txtstyle1 { text-align: center; }
.news .date { margin-bottom: 60px; font-family: yu-mincho-pr6n, "游明朝体", YuMincho, "Yu Mincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif; text-align: center; color: #004680; }
.news .date span:after { content: "/"; padding: 0 10px; }
.news .date a { color: #004680; }
.news .date a:hover { opacity: 0.6; }
.news .inside .date { margin-bottom: 20px; }
.news .inside .cat { margin-bottom: 20px; }
.news .inside .tags { text-align: left; }
.news .inside .tags ul { display:inline; font-size: 0;}
.news .inside .tags ul li { display:inline-block; font-size: 1.6rem; }
.news .inside .tags ul li:after { content: "/"; margin: 0 5px; }
@media screen and (max-width: 1040px) {
	.news .num { margin-bottom: 30px; }
	.news .inside .date,
	.news .inside .cat { margin-bottom: 0px; }
	.news .inside .tags { margin-bottom: 40px; }
}












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


#faq


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

/* common */
#faq .acdbox { background: #f7f7f7; padding: 60px; margin-bottom: 20px; }
@media screen and (max-width: 767px) {
	#faq .acdbox { padding: 8%; margin-bottom: 10px; }
}

#faq .question { font-size: 2rem; font-weight: bold; line-height: 1.7; position: relative; cursor: pointer; padding-right: 30px; }
#faq .question:after,
#faq .question:before { content: ""; display: block; position: absolute; top : 50%; right: 10px; width: 12px; height: 1px; line-height: 0; transition : 0.3s; background: #142d58; }
#faq .question:after { -webkit-transform:translateY(0px) translateX(0) rotate(-45deg); transform:translateY(0px) translateX(0) rotate(-45deg); }
#faq .question:before { -webkit-transform:translateY(0px) translateX(-8px) rotate(45deg); transform:translateY(-0px) translateX(-8px) rotate(45deg); }
#faq .question.open:after { -webkit-transform:translateY(0px) translateX(0) rotate(45deg); transform:translateY(0px) translateX(0) rotate(45deg); }
#faq .question.open:before { -webkit-transform:translateY(0px) translateX(-8px) rotate(-45deg); transform:translateY(-0px) translateX(-8px) rotate(-45deg); }
#faq .answer { margin-top: 20px; }
@media screen and (max-width: 1040px) {
}
@media screen and (max-width: 767px) {
	#faq .question:after,
	#faq .question:before { right: 0px; }
	#faq .question { font-size: 1.5rem; padding-right: 30px; }
}

















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


#contact


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

/* #sec_intro */
#contact.index #sec_1 .telbox { margin-left: -5px; margin-top: 10px }
#contact.index #sec_1 .telbox .teltxt{ display: inline-block; vertical-align: -10px; margin-left: 5px }
#contact.index #sec_1 .telbox .opentime{ display: inline-block; vertical-align: middle; margin-left: 5px }
@media screen and (max-width: 767px) {
}




