@charset "UTF-8";


/* for SP
-------------------------------------------------------------------------------------*/

@media only screen and (max-width: 900px) {

/* base contents
-------------------*/

body {
    font-size: 14px;
    font-size: 1.4rem;
}

/*header*/
#header, #gNav{
	display: none;
}
#spHeader{
	padding: 7px 3%;
	display: block;
	margin-bottom: 0;
	width: 100%;
	position: fixed;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
	z-index: 99999;
}
#spHeader .logo img{
	height: 30px;
	width: auto;
}
#spHeader ul{
	overflow: hidden;
	zoom: 1;
	position: absolute;
	right: 55px;
	top: 16px;
}
#spHeader li{
	float: left;
	margin: 0 5px;
	text-align: center;
}
#spHeader li a{
	color: #FFF;
	font-size:2.6rem;
	line-height: 1;
}
#spHeader li a i{
}

#spHeader.fixed {
background-color: rgba(255,255,255,0.9);
}

.spMenu{
    cursor: pointer;
    display: block;
    height: 40px;
    width: 50px;
    position: fixed;
    right: 0;
    top: 3px;
    z-index: 99999998;
}
.spMenu span {
	background: #FFF;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
	display: inline-block;
	vertical-align: top;
	zoom: 1; /* Fix for IE7 */
	*display: inline; /* Fix for IE7 */
    height: 2px;
    width: 23px;
    position: absolute;
    left: 14px;
	-webkit-transition: all 600ms cubic-bezier(0.19, 1, 0.22, 1);
	transition: all 600ms cubic-bezier(0.19, 1, 0.22, 1);
}
.spMenu.black span {
background: #000;
}

#spHeader .logo img.normal {
display: none;
}
#spHeader.fixed .logo img.normal {
display: block;
}
#spHeader.fixed .logo img.white {
display: none;
}



.spMenu small{
	display: block;
	color: #FFF;
	font-size: .9rem;
	font-weight: bold;
	font-family: 'Roboto Condensed', sans-serif;
	width: 100%;
	text-align: center;
	position: absolute;
	left: 0;
	bottom: 3px;
}
.spMenu span:nth-of-type(1) { top: 10px; }
.spMenu span:nth-of-type(2) { top: 19px; }
.spMenu span:nth-of-type(3) { top: 28px; }
.spMenu.active span{
	background: #000;
}
.spMenu.active span:nth-of-type(1) {
	-webkit-transform: translateY(10px) rotate(-45deg);
	transform: translateY(10px) rotate(-45deg);
	top: 8px;
}
.spMenu.active span:nth-of-type(2) {
	opacity: 0;
}
.spMenu.active span:nth-of-type(3) {
	-webkit-transform: translateY(-10px) rotate(45deg);
	transform: translateY(-10px) rotate(45deg);
}
.spMenu.active small{
	color: #000;
}


/*spNav*/
#spNav{
	background: #f9f9f9;
	height: 100%;
	display: block;
	transition: all 550ms ease 0.25s;
	visibility: hidden;
	padding-top: 50px;
	width: 80%;
    position: fixed;
	right: -100%;
    top: 0;
	z-index: 99999997;
}
#spNav.active{
	visibility: visible;
	right: 0;
}
#spNav #spBg{
	background: rgba(0,0,0,0.5);
    height: 100%;
    width: 500%;
    position: fixed;
	right: -50%;
    top: 0;
    z-index: -1;
    opacity: 0;
	transition: all 550ms ease 0.25s;
	pointer-events: none;
}
#spNav.active #spBg{
	right: 0;
    opacity: 1;
	pointer-events: auto;
}
#spNav::after {
	background: rgba(255,255,255,0.8);
	background: #f9f9f9;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: -1;
}
#spNav::before,
#spNav::after {
    opacity: 0;
	transition: all 550ms ease 0.25s;
}
#spNav.active::before,
#spNav.active::after {
    opacity: 1;
}
#spNav .closeBtn{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 15px 3%;
	text-align: right;
}
#spNav nav{
	border-top: 1px solid #FFF;
}
#spNav nav ul li{
	border-bottom: 1px solid #FFF;
	width: 100%;
	position: relative;
}
#spNav nav ul li:before {
font-family: 'icon';
content: "\e905";
position: absolute;
left: 10px;
    top: 15px;
}


#spNav nav ul li a{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	color: #000;
	font-size: 1.4rem;
	font-weight: 500;
	display: block;
	padding: 15px 2em 15px 2.5em;
	position: relative;
}


#spNav nav ul li a:hover{
	background: #2aa53b;
	color: #FFF;
	text-decoration: none;
}
/*#spNav nav ul li a:hover::before{
	color: #FFF;
}*/
#spAction{
	display: block;
	margin: 0;
	padding: 0;
	position: fixed;
	left: 0;
	bottom: -100px;
	transition: all 550ms ease 0.25s;
	z-index: 300;
}
body.throughHd #spAction{
	bottom: 0;
	width: 100%;
}
#spAction li{
	border-right: 1px solid #888;
	float: left;
	height: 40px;
	display: table;
	width: 50%;
}
#spAction li a{
	background: rgba(0,0,0,.8);
	color: #FFF;
	display: table-cell;
	font-size: 1.2rem;
	vertical-align: middle;
	text-align: center;
	padding: 0 1em 0 2.5em;
	width: 100%;
	position: relative;
}
#spAction li a i{
	margin: auto;
	text-align: left;
	width: 85%;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 2;
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

/*breadChumbs*/
#breadChumbs {
	display: none;
}

/*mv*/

#mv {
    margin-bottom: 0px;
}

#mv div.mvInr {
	margin:0 3%;
	width:auto;
	padding-top: 0;
}
#mv .mvInr h1 {
    padding: 75px 0 40px;
    font-size: 2.2rem;
	font-weight: 400;
}


/*contents*/
#contents {
	margin:0 auto;
	padding-top: 40px;
	width:100%;
	display: inherit;
}
#main {
	margin: 0 3%;
	width:auto;
}
#sideNav {
	margin: 40px 3% 0;
	max-width: 100%;
	width:auto;
}
#sideNav h2 {
    font-size: 2.4rem;
}

/*footer*/

#footer .ftInr ul {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}
#footer .ftInr ul li {
width: 100%;
text-align: center;
}

#footer .ftInr ul li:nth-child(odd) {
margin-right: 0;
}

#footer .ftInr ul dl dd {
    font-size: 10px;
	display: none;
}
#footer .ftInr ul dl dd.under {
    font-size: 9px;
}
#footer .ftInr ul dl dd.under::before {
    top: 8px;
}

#footer .ftInr ul dl dt {
    font-size: 14px;
	border-bottom: none;
}

#footer .ftInr {
    padding: 30px 0;
}


small#copyright {
	font-size:1.0rem!important;
	padding:10px 0;
	text-align:center;
	width:100%;
}

/*newsList*/
.newsList li .img{
	height: 100px;
}
.newsList li .img span img{
	max-height: 100px;
}
.newsList li a {
    height: 102px;
}
.newsList li .tx {
	line-height: 1.5!important;
}
@media only screen and (max-width: 640px) {
	.newsList li .img{
		float: none;
		width: 100%;
	}
	.newsList li .img span img{
		max-height: 100px;
	}
	.newsList li a {
	    height: auto;
	}
	.newsList li a::before,
	.newsList li a::after{
		display: none;
	}
	.newsList li .tx {
		line-height: 1.5!important;
		display: block;
	    height: 60px;
	    overflow: hidden;
	    position: relative;
	}
	.newsList li .tx::before {
	    background: #fff;
	    bottom: 0;
	    content: "…";
	    position: absolute;
	    right: 0;
	}
	.newsList li .tx::after {
	    background: #fff;
	    content: "";
	    height: 100%;
	    position: absolute;
	    width: 100%;
	}
}



/* indent
-------------------*/
body{
}
.bgFixed {
	position: fixed;
	width: 100%;
	height: 100%;
}
.is-sp{ display: block!important;}
.is-pc{ display: none!important;}
.spImg{ max-width: 100%;}
a.spTel{
	color: #2aa53b;
	pointer-events: auto;
	text-decoration: underline;
}


/* section
-------------------*/

section{
	margin-bottom: 50px;
}
.scInr, .scInrS, .scInrW{
	float:none;
	margin: 0 3%;
	width:auto;
}



/* compo parts
-------------------*/
/*head*/
.head01 {
font-size: 2.2rem;
font-weight: 500;
}
.head02 {
font-size: 2.0rem;
}
.head03 {
font-size: 1.8rem;
}
.head03::before {
    width: 18px;
    height: 3px;
    top: 12px;
}

.head04 {
font-size: 1.6rem;
}

/*btn*/



.bscBtn01 a {
	display: block;
	padding: 20px 5%;
	margin-bottom: 10px;
	text-align: center;
	width: 100%;
}

.bscBtn02 a {
	display: block;
	padding: 20px 5%;
	margin-bottom: 10px;
	text-align: center;
	width: 100%;
}


/*box*/
.bscBox01{
	padding:5%;
}
.bscBox02{
	padding:5%;
}

/*table*/
.tblScroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
.tblScroll table {
	-webkit-overflow-scrolling: touch;
	margin-bottom: 0;
	width: 1000px!important;
}

.bscTbl01 table th,
.bscTbl01 table td {
	display: block;
	font-size: 1.1rem;
	padding:10px 3%;
	width: 100%!important;
}
.bscTbl01.tblScroll table th,
.bscTbl01.tblScroll table td {
	display: table-cell;
}
.tblScroll {
	padding-bottom: 5px;
}
.tblScroll::before {
	content: '※横スクロールができます。';
	display: block;
	margin-bottom: 10px;
}


.executive .bscTbl01 table th,
.executive .bscTbl01 table td {
	display: table-cell;
	font-size: 1.1rem;
	padding:10px 3%;
}
.executive .bscTbl01 table th {
width: 60%!important;
}
.executive .bscTbl01 table td {
width: 40%!important;
}

/*float*/
.fltL, .fltR{
	float: none;
}
.fltImgL,
.fltImgR {
	float:none;
	margin:0;
	text-align: center;
}
.fltImgL img,
.fltImgR img{
	max-width: 100%;
	margin-bottom: 5px;
}

/*column*/
.clm4 li{
	float: left;
	margin-right: 0;
	width: 48.5%;
}
.clm4 li.even,
.clm4 li:nth-child(2n){
	float: right;
}
.clm4 li:nth-child(4n){
	margin-right: 0;
}

.clm3 li{
	float: left;
	margin-right: 0;
	width: 48.5%;
}
.clm3 li.even,
.clm3 li:nth-child(2n){
	float: right;
}

.clm4 li .img,
.clm3 li .img,
.clm2 li .img{
	height: 100px;
}
.clm4 li .img span img,
.clm3 li .img span img,
.clm2 li .img span img{
	max-height: 100px;
}

/*topcontrol*/
/*#topcontrol{
	display: none;
}
*/
#topcontrol{
bottom: 10px!important;
    right: 10px!important;
	}

/* pager
-------------------*/

.pager a::before,
.pager a::after {
	display: none;
}



/* form
-------------------*/

.subscribeBtn input{
	padding:15px 0 13px;
	margin-top: 5px;
	width: 100%;
}
input.wSS,
input.wS,
input.wM,
input.wL,
input.wLL {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.wSS { width: 30%;}
.wS { width: 50%;}
.wM { width: 100%;}
.wL { width: 100%;}
.wLL { width: 100%;}
.imeOn { ime-mode: active;}
.imeOff { ime-mode: disabled;}
textarea.txtarea {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	height: 200px;
	width: 100%;
}
select.timearea{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 50%;

}
option {
	font-size:1.4rem!important;
}
label {
	cursor: pointer;
}
label:hover {
	color:#999;
}
input[type="checkbox"], input[type="radio"] {
	margin-right:3px;
}
.formErr {
	color:#E54E52;
	font-weight:bold;
}
input.inputErr,
textarea.inputErr {
	background:#FADFDE;
}
.req {
	color:#FFF;
	font-size:10px;
	line-height:100%;
	margin-left:3px;
	padding:2px 5px;
	margin-right: 5px;
	vertical-align:middle;
}
.cauText{
	display: block;
}


/* for COMPANY
-------------------------------------------------------------------------------------*/

.bigList li {
    font-size: 1.8rem;
	line-height: 1.7;
}
.spLeft {
text-align: left!important;
}

.name img {
width: 30%;
}

.ancList ul li {
    width: 100%;
}

.historyList ul li dl {
    display: block;
	padding-bottom: 15px;
}

.historyList ul li dl dd {
    width: 100%;
}

.historyList ul li dl dt {
    width: 100%;
	font-weight: bold;
	font-size: 2.2rem!important;
	font-size: 22px!important;
}

.historyBox .img img {
width: 100%;
}
.historyList ul li {
line-height: 0;
}

.historyList ul li dl dt:before {
    font-size: 22px;
    left: -3px;
    top: -1px;
}

/* for TECHNOLOGY
-------------------------------------------------------------------------------------*/

#contents.index {
    margin: 0 3%;
    width: auto;
}

.pcBox h2 {
    font-size: 2.2rem;
    margin-bottom: 10px;

}

.pcBox {
    padding: 100px 20px;
}

.indexList ul li {
    width: 49%;
	margin-right: 0;
}

.indexList ul li:nth-child(even) {
margin-left:2%;
}

.indexList ul li dl dt {
    font-size: 1.4rem;
    margin-bottom: 10px;
	font-weight: 500;
}

.indexList ul li dl {
    padding: 5px 0;
}
.indexList ul li dl dd {
font-size: 1.0rem;
}

.categoryList li {
    width: 49%;
	margin-right: 0;
}

.categoryList li:nth-child(even) {
margin-left:2%;
}

.categoryList li .title {
    font-size: 1.4rem;
	font-weight: 500;
}

.concreteImg img{
width: 100%;
}

/* for TOP
-------------------------------------------------------------------------------------*/
#area01 {
    width: 95%;
    margin: 0 auto 40px;
}
.tabGroup {
justify-content: space-between;
}

.tabGroup li {
font-size: 1.3rem;
}
.newsList li a {
font-size: 1.3rem;
}

.newsList li .category {
    width: 70px;
    padding: 3px 0;
    font-size: 1.0rem;
}
.tab {
    width: 24%;
    margin-right: 0;
}
#area01 h2 {
font-size: 2.4rem;
}

.newsList li .date {
    display: inline-block;
}

.newsList li a {
margin-top: 10px;
width: 100%;
}


#area02 ul li {
display: block;
    margin-bottom: 40px;
}
#area02 ul li .img {
    width: 100%;
}
#area02 ul li .data {
    width: 90%;
	margin: 0 auto;
}
#area02 ul li .data .inr {
    padding: 20px 20px 40px 20px;
    left: 0;
	top: -30px;
}

#area02 ul li .data .inr .en:before {
    width: 16px;
    left: -20px;
}
.btmArrow i {
    bottom: -10px;
}
#area02 ul li:nth-child(even) .img {
    width: 100%;
}


#area02 ul li:nth-child(even) .data {
    width: 90%;
	margin: 0 auto;
}

#area02 ul li:nth-child(even) .data .inr {
    padding: 20px 20px 40px 20px;
    left: 0;
	top: -30px;
	width: 100%;
}
#area02 ul li .txt strong {
    font-size: 1.6rem;
    font-weight: 500;
}

#area03{
margin-bottom: 0;
}

#area03 h2 {
font-size: 4.0rem;
    top: -10px;
}

#area03 {
    padding: 50px 0 40px;
}

.slider .sliderTxt h3 {
    font-size: 1.8rem;
    margin-bottom: 10px;
    padding-top: 10px;
	font-weight: 600;
}
#area04 {
display: block;
background-size: cover;
padding-top: 20px;
padding-bottom: 20px;
}

#area04 .img {
    width: 90%;
	margin: 0 auto;
}

#area04 .txtArea {
    width: 90%;
	margin: 0 auto;
	padding: 0;
}

#area04 .txtArea .serif {
    font-size: 2.6rem;
}

#area04 .bscBtn01 {
    display: block;
    margin-right: 0px;
}
#area04 .txtArea .info {
    margin-bottom: 20px;
}

.topWrap #footer {
    margin-top: 0;
}
.videoMv {
    height: 50vh;
}
video {
display: none;
}

.spMv {
background:url("../../images/mv_sp.jpg") center center no-repeat;
background-size: cover;
width: 100%;
display: block;
height: 50vh;
}
.minTxt {
    font-size: 3.0rem;
    line-height: 0.7;
    margin-bottom: 20px;
}
.minTxt02{
	display: block;
}
.enTxt {
    font-size: 1.0rem;
}
.enTxt02{
	display: block;
}
#area02 ul li .data .inr h2, #area04 .inr h2 {
    font-size: 2.4rem;
}

/* for CONTACT US
-------------------------------------------------------------------------------------*/

.thanks .center{
text-align: left!important;
}

.policyBox {
padding: 20px;
}
.telBox {
    display: block;
}

.telBox .info {
    font-size: 1.4rem;
	margin-bottom: 20px;
}

.bscTbl01 th,
.bscTbl01 td {
	font-size: 1.5rem;
}

/* for NEWS & TOPICS
-------------------------------------------------------------------------------------*/

.nCategoryList {
width: 100%;
}

.nCategoryList ul li a {
font-size: 1.3rem;
}

/* for RECRUIT
-------------------------------------------------------------------------------------*/

.patrolWrap #mv .mvInr {
    height: 200px!important;
}

.titleImg {
    bottom: -57%!important;
	    width: 43%!important;
}

.patrolTxt {
    font-size: 1.4rem!important;
    margin-bottom: 30px!important;
}
.patrolWrap #contents {
        padding-top: 29%!important;
}
.patrolWrap.detail #contents {
    padding-top: 10%!important;
}
.patrolList li {
    width: 49%!important;
    margin-right: 0!important;
}
.patrolList li:nth-child(even) {
	margin-left: 2%!important;
}
.patrolWrap .boxList {
    display: block!important;
    width: 100%!important;
    margin: 0 auto!important;
}
.patrolWrap .boxList li {
    width: 100%!important;
    margin-bottom: 20px!important;
}


.patrolList li .title {
    font-size: 1.3rem!important;
	line-height: 1.3!important;
}
.bnrList{
padding-top: 20px;
}
.bnrList ul {
justify-content: space-between;
}

.bnrList ul li {
width: 49%!important;
margin-right:0;
}


/* for COMPANY
-------------------------------------------------------------------------------------*/
  .tbl-r05 {
    width: 80%;
  }
  .tbl-r05 .thead {
    display: none;
  }
  .tbl-r05 tr {
    width: 100%;
  }
  .tbl-r05 td {
    display: block;
    text-align: right;
    width: 100%;
  }
  .tbl-r05 td:first-child {
    background: #eee;
    font-weight: bold;
    text-align: center;
  }
  .tbl-r05 td:before {
    content: attr(data-label);
	display: block;
    font-weight: bold;
    margin-right: 10px;
	color: #2aa53b;
  }
  
.companyWrap .ancList ul li a {
font-size: 1.3rem;
font-weight: 500;
}
.companyWrap .ancList ul li a:after {
    right: 2px;
}

.companyWrap .imgBox {
    display: block;
}

.companyWrap .imgBox .Img {
    width: 100%;
}
.companyWrap .imgBox .infoBox {
    width: 100%;
}

/* for RESULTS
-------------------------------------------------------------------------------------*/
#accordion {
margin-bottom: 15px;
}
#accordion dt {
font-size: 1.6rem;
margin-top: 10px;
}

#accordion dt:after {
    right: 10px;
}
#accordion dd .acflex {
    display: block;
}

#accordion dd .sbInr {
    margin-right: 0;
}

#accordion dd {
    padding: 10px 5px 0 5px;
}

#accordion dd .sbInr .title {
    display: block;
    color: #2aa53b;
    margin-right: 0;
    font-weight: 500;
}

#accordion dd .sbInr {
margin-bottom: 20px;
}
#accordion dd .sbInr span{
display: inline-block;
line-height: 2;
}
.rList li {
    padding: 0;
}

.rList li a {
    display: block;
}


.rList li .img {
width: 100%;
}

.rList figcaption {
    font-size: 2.0rem;
}
.rList li {
margin-bottom: 20px;
padding-bottom: 20px;
}
.rList li:after {
display: none;
}

.infoList dl {
    display: block;
    margin-right: 0;
    margin-bottom: 10px;
}
.rList.awardBox li figure {
    display: block;
}
.aboutIndex ul li h2 {
    font-size: 1.8rem;
    font-weight: 500;
    padding: 13px 0;
}
.aboutIndex ul li p {
    padding: 0;
    font-size: 1.0rem;
}

.aboutIndex ul li {
margin-bottom: 20px;
width: 100%;
}



.aboutIndex ul li h2:before {
    right: -20px;
}
.companyWrap .minTxt {
    font-size: 2.4rem;
}
.companyWrap .minTxt small {
    font-size: 2.0rem;
}


/* for DOWNLOAD
-------------------------------------------------------------------------------------*/

.dlList ul li {
    width: 49%;
    margin-right: 0;
	margin-bottom: 20px;
}

.dlList ul li:nth-child(even) {
margin-left: 2%;
}



.dlList ul li a {
    padding: 20px 10px;
    border-radius: 10px;
}


/* for IR
-------------------------------------------------------------------------------------*/

.dataList ul li {
    width: 49%;
    margin-right: 0%;
}

.dataList ul li.fixW {
    width: 100%;
}

.dataList ul {
    justify-content: space-between;
}

.dataHead01 span {
    font-size: 22px;
    font-size: 2.2rem;
    border-bottom: 2px solid #000;
    margin-bottom: 15px;
}
.dlistHead {
    font-size: 1.4rem;
    font-size: 14px;
}
.dlistHead:before {
    width: 60px;
	}
.dlistHead small {
    font-size: 1.0rem;
    font-size: 10px;
}
.shadowHead {
text-align: center;
    background: #2aa53b;
	width: 90%;
	margin: 0 auto 20px;
}

.shadowHead span {
    font-size: 1.8rem;
    font-size: 18px;
	padding: 0;
    color: #fff;
	line-height: 1.7;
    background: none;
}

.shadowBox img {
width: 90%;
}
.ancHead {
    font-size: 2.0rem;
    font-size: 20px;
}

.ancHead strong {
    font-size: 4.0rem;
    font-size: 40px;
}

.ancList ul {
    display: block;
}
.mainImg img {
width: 182%!important;
}
.imgHead span {
    font-size: 1.0rem;
    font-size: 10px;
}

.imgHead {
    font-size: 1.8rem;
    font-size: 18px;
    padding: 15px 10px;
}
.bgW span {
    padding: 6px 10px;
    font-size: 1.3rem;
    font-size: 13px;
}


.pointList {
    display: block;
    width: 100%;
}
.pointList li {
    width: 100%;
}

.pointList li dl dd span {
    font-size: 1.5rem;
    font-size: 15px;
}


.pointList li dl dd {
    margin-bottom: 10px;
}


.pointList li dl {
    width: 95%;
}

.pointList li dt {
    width: 40%;
}

.pointList li dd {
width: 60%;
padding: 15px;
}

.pointList li dt .circle .txt01 {
    font-size: 1.2rem;
    font-size: 12px;
	width: 85%;
}
.pointList li dl dd span {
    font-size: 1.2rem;
    font-size: 12px;
}

.pointList li dd:before {
    left: -5px;
    border-right: 5px solid #eee;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
}

.pointImg {
    width: 95%;
}
.pointList li {
    margin-bottom: 30px;
}

.pointList li dd h3 span {
    padding: 8px 13px;
}



/* for CSR
-------------------------------------------------------------------------------------*/

.diversityWrap #mv .mvInr {
    height: 200px;
}

.diversityWrap #mv .mvInr h1 {
    padding: 14px 0;
    font-size: 2.0rem;
    left: 50%;
    top: inherit;
    transform: translateX(-50%);
    -webkit- transform: translateX(-50%);
    bottom: -10px;
    width: 70%;
    text-align: center;
}

.diversityTxt {
    width: 140px;
    left: 50%;
    top: inherit;
    bottom: 24px;
    transform: translateX(-50%);
    -webkit- transform: translateX(-50%);
}
.peopleList ul{
	justify-content: space-between;
}
.peopleList ul li {
    width: 47%;
    margin-bottom: 30px;
}
.peopleList ul li:nth-child(2n){
	margin-right: 0;
}

.peopleList ul li p span {
    padding: 2px 5px;
    font-size: 1.0rem;
    font-size: 10px;
    font-weight: 600;
	border-radius: 5px;
}


.qaList {
    width: 100%;
}

.qaBox {
    display: block;
}
.qaImg {
    margin-bottom: 10px;
}
.nameBox {
    width: 100%;
    font-size: 16px;
    font-size: 1.6rem;
	margin-bottom: 20px;
}

.nameBox br {
display: none;
}

.nameBox span {
   padding: 5px 5px;
    font-size: 1.0rem;
    font-size: 10px;
    font-weight: 600;
	border-radius: 5px;
	margin-left: 5px;
	vertical-align: middle;
	margin-top: 0;
}
.qaInfo {
    width: 100%;
}

.qaInfo dt {
    font-size: 16px;
    font-size: 1.6rem;
	padding-left: 1.7em;
    text-indent: -0.9em;
}


.flap img {
width: 100%!important;
}
.csrWrap .aboutIndex.clm3List ul {
display: block;
}

.aboutIndex.clm3List ul li {
    width: 100%;
    margin-right: 0;
}

.aboutIndex.clm3List ul li h2 {
    font-size: 1.4rem;
	font-weight: 500;
}

.aboutIndex ul li h3 {
text-align: center;
display: block;
}
.csrWrap .spImg img {
width: 100%!important;

}
.stakeholderImg img {
width: 70%;
}
.movieWrap {
    width: 100%;
}
.mp4Box {
width: 100%;
}
.mp4Box video {
display: block;
}

.slick-list {
padding: 0px 5%!important;
}
.historyBox .info {
font-size: 1.4rem;
}

.pcBox .bscBtn01 a {
    padding: 15px 5%;
    width: 74%;
    margin: 0 auto;
}

.pcBox {
    background: url("/technology/images/bg_pc_sp.jpg") center center no-repeat;
	    background-size: 100% auto;
}
.spFont {
font-size: 1.1rem;
}

.slick-prev, .slick-next {
z-index: 2;
}

.videoTxt {
    position: absolute;
    top: 72%;
}
.dataHead01 span strong {
    font-size: 32px;
    font-size: 3.2rem;
}

.spBnrImg {
width: 100%!important;
}

.newsWrap .newsList li:nth-child(4){
display: none;
}

.newsWrap .newsList li:nth-child(5){
display: none;
}
.pcBox h2 {
display: none;
}
.pcBox p.pcTxt {
display: none;
}
.pcBox .bscBtn01 {
display: none
}

.is-sp h2 {
font-size: 1.5rem;
font-weight: 500;
padding: 10px 5px;
}

.is-sp .pcTxt {
font-size: 1.2rem;
line-height: 1.3;
letter-spacing: 0;
padding:0 5px 10px;
}

.recHead {
font-size: 1.8rem;
}
.spBtm30 {
margin-bottom: 30px;
}

.companyWrap .readTxt {
    font-size: 2.0rem;
    line-height: 1.4!important;
}

.head01.fixSize {
    font-size: 1.7rem;
    letter-spacing: 0;
}
#area05 h2 {
    font-size: 2.0em;
    font-size: 20px;
}


.remodal {
    width: 90%!important;
	padding: 20px!important;
	min-height: 66%!important;

}
.cityImg {
margin-bottom: 20px;
}
.cityImg .pin {
display: none;
}
#area05 .circle {
  color: #fff;
  background-color:#D40003;
  padding: 0;
  margin: 0 5px 0 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  display: inline-block;
  border-radius: 50%;
  letter-spacing: 0;
}

.pin i {
display: none;
}

.spPin {
display: block;
}

.modalspBtn li{
    width: 48%;
	margin-left: 1%;
	margin-bottom: 10px;
	border: 1px solid #ccc;
	padding: 10px 8px;
	font-size: 12px;
	font-weight: bold;
	border-radius: 5px;
	display: inline-block;
}

.newsList li span.title {
    margin-top: 10px;
    width: 100%;
	font-size: 1.3rem;
}

}
/*SP END*/


@media only screen and (max-width: 1100px) {
.flap img {
width: 90%!important;
}

}




/* for iPad
-------------------------------------------------------------------------------------*/

.patrolWrap.ipad_view #contents,
.patrolWrap.Android_view #contents{
    padding-top: 16%!important;
}

.patrolWrap.ipad_view .boxList {
    display: flex!important;
    justify-content: space-between;
    margin: 0 auto 60px;
}

.patrolWrap.ipad_view .boxList li {
    width: 49%!important;
}

.ipad_view .newsList li a {
    height: auto;
}

.ipad_view .mdd_wrap .mdd_inner dd ul li a {
    font-size: 10px!important;
}

.ipad_view .mdd_wrap .mdd_inner dd {
    width: 79%;
}

.ipad_view .mdd_wrap .mdd_inner dt {
    font-size: 14px;
}

.ipad_view .aboutIndex ul li {
    width: 48%;
    margin-bottom: 30px;
}

.ipad_view .aboutIndex.clm3List ul{
display: flex;
justify-content: flex-start;
}

.ipad_view .aboutIndex.clm3List ul li:nth-child(even) {
margin-left: 4%;

}

.ipad_view #gNav ul li a {
    font-size: 13px;
}

.ipad_view .aboutIndex.clm3List ul li{
margin-right: 0;
}

.ipad_view #header.fixed #gNav {
    width: 76%;
}


.ipad_view .peopleList ul li {
    width: 22%;
    margin-bottom: 40px;
}

.ipad_view .peopleList ul li p {
    font-size: 11px!important;
}


.ipad_view .titleImg {
    width: 26%!important;
}


@media only screen and (max-width: 640px) {
#area04 .txtArea .serif {
width: 100%!important;
margin-bottom: 10px;
}

}