/* share
===============================================================*/

.clearfix:after {
content: " ";  
display: block; 
visibility: hidden; 
clear: both; 
height: 0.1px; 
font-size: 0.1em; to
line-height: 0; 
}
.clearfix { display: inline-block; }
/* exlude MacIE5 \*/
* html .clearfix { height: 1% }
.clearfix {display:block;}
/* end MacIE5 */


.clear{ clear:both;}


#main{
 width: 100%;
 overflow: hidden;
 box-sizing: border-box;
 padding-top: 90px;
 
}

#wideMain{
 width: 1100px;
 margin: -45px auto 0;
 position: relative;
 overflow: hidden;
 background: #fff;
 padding: 50px 50px 50px;
 box-sizing: border-box;
}

#wideMain.useDetail{
 margin: 0 auto 0;
}


#wideBottom{
 width: 1100px;
 margin: 0 auto 0;
 position: relative;
 overflow: hidden;
 background: #fff;
 padding: 100px 50px 100px;
 box-sizing: border-box;
}

.contents{
	width:1000px;
	margin:0 auto;
	text-align:left;
 padding: 0 0;
 box-sizing: border-box;
	}


.breadCrumb{
 width: 1000px;
 margin: 0 auto;
 padding: 25px 0 55px;
 text-align: left;
}

.breadCrumb li{
 display: inline-block;
 font-size: 12px;
}
.breadCrumb li:after{
 content: "＞";
 font-size: 12px;
 padding-left: 3px;
}
.breadCrumb li:last-child:after{
 content: "";
 font-size: 12px;
 padding-left: 3px;
}
.breadCrumb li a{
 color: #666;
}

#wideMain .breadCrumb{
 width: 1000px;
 margin: 0 auto 15px;
 padding: 0 0 0;
 text-align: left;
}



@media screen and (max-width: 768px) {
 
.breadCrumb{
 display: none;
 width: 100%;
 margin: 0 auto;
 padding: 18% 5% 0;
 text-align: left;
}

.breadCrumb li{
 display: inline-block;
 font-size: 10px;
}
.breadCrumb li:after{
 content: "＞";
 font-size: 10px;
 padding-left: 3px;
}
.breadCrumb li:last-child:after{
 content: "";
 font-size: 10px;
 padding-left: 3px;
}

#wideMain .breadCrumb{
 display: none;
}

 
}


#mainContents{
 float: left;
 width: 745px;
 text-align: left;
 padding-bottom: 80px;
}

#sideContents{
 width: 235px;
 float: right;
 text-align: left;
 padding-bottom: 80px;
}

#mainContents h1{
 font-size: 32px;
 color: #333333;
 border-left:4px solid #ed1c24;
 padding-left: 10px;
 letter-spacing: 2px;
 margin-bottom: 50px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}

#mainContents h1 span{
 font-size: 16px;
 display: block;
 letter-spacing: 1px;
}
#mainContents h1 em{
 font-size: 20px;
 font-style: normal;
 display: block;
 letter-spacing: 0;
}


#mainContents h2{
padding-top:5%;
 font-size: 22px;
 color: #ed1c24;
 letter-spacing: 1px;
 margin-bottom: 25px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
 position:relative;
 padding-left:1.2em;
}
#mainContents h2:before{
 content: "■";
 left:0;
 position:absolute;
}

#mainContents h2.newsTitle{
 font-size: 22px;
 color: #ed1c24;
 letter-spacing: 1px;
 margin-bottom: 25px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
 text-align:left;
 clear:both;
 padding-left:0;
}
#mainContents h2.newsTitle:before{
 content: "";
 padding-right: 0;
}

#mainContents h2 em{
font-style:normal;
display:block;
font-size:62%;
}


#mainContents .categoryDetail{
 position: relative;
}
#mainContents .categoryDetail .pLogo{
 position: absolute;
 right:0;
 bottom:0;
 width:135px;
}
#mainContents .categoryDetail.logoA{
 padding-right: 160px;
}

@media screen and (max-width: 768px) {
 
 #main{
  padding-top: 45px;
}

 #wideMain{
 width: 100%;
 margin: 0 auto 0;
 position: relative;
 overflow: hidden;
 background: #fff;
 padding: 5% 5% 10%;
 box-sizing: border-box;
}
 #wideBottom{
 width: 100%;
 margin: 0 auto 0;
 position: relative;
 overflow: hidden;
 background: #fff;
 padding: 5% 5% 10%;
 box-sizing: border-box;
}
 
 .contents{
	width:100%;
	margin:0 auto;
	text-align:left;
	}
 
 
 

#mainContents{
 float: none;
 display: block;
 width: 100%;
 padding: 10% 5% 15%;
 box-sizing: border-box;
}

#sideContents{
 width: 100%;
 float: none;
 display: block;
 padding: 5% 5% 15%;
 box-sizing: border-box;
}

#mainContents h1{
 font-size: 24px;
 border-left:3px solid #ed1c24;
 padding-left: 10px;
 letter-spacing: 2px;
 margin-bottom: 30px;
}

#mainContents h1 span{
 font-size: 10px;
 display: block;
}

#mainContents h2{
 font-size: 18px;
 letter-spacing: 1px;
 margin-bottom: 18px;
}
#mainContents h2.newsTitle{
 font-size: 18px;
 letter-spacing: 1px;
 margin-bottom: 18px;

}


#mainContents .categoryDetail h1{
 font-size: 25px;
 border-left: none;
 border-bottom:3px solid #ed1c24;
 padding-left: 0;
 letter-spacing: 2px;
 margin-bottom: 25px;
 padding-bottom: 25px;
}

#mainContents .categoryDetail h1 span{
 font-size: 12px;
}
#mainContents .categoryDetail h1 em{
 font-size: 13px;
 font-weight: normal;
 padding-top: 2%;
}
 
 #mainContents .categoryDetail .pLogo{
 position: relative;
 right:auto;
 bottom:auto;
 width:100px;
  margin: auto auto 20px;
}
#mainContents .categoryDetail.logoA{
 padding-right: 0;
}
 

 
}



.frame {
  overflow:hidden;
  overflow-x:hidden;
  overflow-y:hidden;
  height:100%;
  width:100%;
  position:relative;
  top:0px;
  left:0px;
  right:0px;
  bottom:0px;
}




/* title
-----------------------------------------------------------------*/

.title{
 height: 300px;
 width: 100%;
 padding: 70px 0 90px;
 box-sizing: border-box;
 position: relative;
 color: #333333;
}

.title.base{
 background: url(../images/wide_tit_01.jpg) no-repeat bottom center;
 background-size: cover;
}
.title.company{
 background: url(../images/wide_tit_02.jpg) no-repeat bottom center;
 background-size: cover;
}
.title.case{
 background: url(../images/wide_tit_03.jpg) no-repeat bottom center;
 background-size: cover;
}
.title.recruit{
 background: url(../images/wide_tit_04.jpg) no-repeat bottom center;
 background-size: cover;
}
.title h1{
 margin: 0 0 35px 0;
 font-size: 30px;
 line-height: 1.5;
}
.title h1 span{
 font-size: 16px;
 display: block;
 padding-left: .1em;
}

.title.company h1{
 margin: 0 0 35px 0;
}


.title p{
 margin: 0 0 35px 0;
 font-size: 20px;
 line-height: 1.5;
 text-align: left;
 position: absolute;
 top: 80px;
}
.title_posi{
 position: relative;
 width:1000px;
 margin: 0 auto;
}


#wideMain h2,
#wideBottom h2{
 font-size: 22px;
 font-weight: bold;
 text-align: center;
 margin-bottom: 25px; 
}



@media screen and (max-width: 768px) {
 
 .title{
 height: auto;
 width: 100%;
 padding: 10% 0 0;
}

.title.base{
 background: none;
}

.title.base h1{
 margin: 0;
 font-size: 22px;
 line-height: 1.5;
 padding: 0 0 15% 8%;
 background: url(../images/wide_tit_01.jpg) no-repeat bottom left; 
 background-size: cover;
}
 
.title h1{
 margin: 0;
 font-size: 22px;
 line-height: 1.5;
 padding: 0 0 8% 8%;
 background: none; 
 background-size: cover;
}
 .title h1 span{
  font-size: 12px;

 } 
 
 
.title p{
 margin: 0 0 0 0;
 font-size: 13px;
 line-height: 1.5;
 text-align: center;
 position: relative;
 background: #fff;
 top: auto;
 padding: 5%;
 box-sizing: border-box;
}
.title_posi{
 position: relative;
 width:100%;
 margin: 0 auto;
}

 #wideMain h2,
 #wideBottom h2{
 font-size: 15px;
 font-weight: bold;
 text-align: left;
 margin-bottom: 20px;
 
}
 
}






/* side nav
-----------------------------------------------------------------*/

#sideContents nav dl{
 margin-bottom: 60px;
}

#sideContents nav dd a{
 border-bottom: 1px solid #d0d0d0;
 width: 100%;
 height: 40px;
 display: block;
 font-size: 14px;
}

#sideContents nav dd a{
 border-bottom: 1px solid #d0d0d0;
 width: 100%;
 height: 40px;
 box-sizing: border-box;
 padding: 5px 0 5px 0;
 display: block;
 color: #666;
 text-decoration: none;
 transition: all .2s ease-in;
}

#sideContents nav dd  a span{
 padding: 0 0 0 12px;
 border-left: 2px solid #b5b5b5;
 line-height: 30px;
 height: 30px;
 display: block;
 box-sizing: border-box;


 transition: all .3s ease-in;
}
#sideContents nav dd li a span{
 border-left: 2px solid #f1f2f6;
}

#sideContents nav dd a:hover,
#sideContents nav dd a.cr{
 background: #f2f2f2;
}
#sideContents nav dd a:hover span,
#sideContents nav dd a.cr span{
 border-left: 2px solid #d80d23;
}

#sideContents nav dt a{
 background:#666666;
 width: 100%;
 height: 40px;
 box-sizing: border-box;
 padding: 5px 0 5px 0;
 display: block;
 color: #fff;
 text-decoration: none;
 transition: all .3s ease-in;
}

#sideContents nav dt em{
 background: #9e9e9e;
 width: 100%;
 box-sizing: border-box;
 padding: 10px 5px 10px 15px;
 display: block;
 color: #fff;
 font-style: normal;
 text-decoration: none;
 transition: all .3s ease-in;
}

#sideContents nav dt a span{
 padding: 0 0 0 12px;
 border-left: 2px solid #666666;
 line-height: 30px;
 height: 30px;
 display: block;
 box-sizing: border-box;
 transition: all .2s ease-in;
}

#sideContents nav dt a:hover,
#sideContents nav dt a.cr{
 background: #858585;
}
#sideContents nav dt a:hover span,
#sideContents nav dt a.cr span{
 border-left: 2px solid #d80d23;
}

#sideContents .ir_navi_down a{
 border:1px solid #b5b5b5;
 line-height: 40px;
 text-align: center;
 display: block;
 color: #666;
 transition: all .2s ease-in;
}

#sideContents .ir_navi_down a:hover{
 color: #fff;
 background: #666666;
 text-decoration: none;
}

#sideContents .products_navi_all a{
 border:1px solid #b5b5b5;
 line-height: 40px;
 text-align: center;
 display: block;
 color: #666;
 transition: all .2s ease-in;
 margin-bottom: 2px;
}
#sideContents .products_navi_all a:hover{
 color: #fff;
 background: #ed1c24;
 text-decoration: none;
 border:1px solid #ed1c24;
}


.acc{
position: relative;
display: inline-block;
vertical-align: middle;
text-decoration: none;
cursor:pointer;
}
.acc::before,
.acc::after{
position: absolute;
top: 0;
bottom: 0;
right: 10px;
margin: auto;
content: "";
vertical-align: middle;
}
#sideContents dd ul{
display:none;
}


.arrow-3::before{
width: 15px;
height: 15px;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #fff;
 border: 1px solid #666;
}
.arrow-3::after{
right: 14px;
 top: 5px;
box-sizing: border-box;
width: 6px;
height: 6px;
border: 4px solid transparent;
border-left: 5px solid #666;
transform: rotate(90deg);
 transition: all .2s ease-in;
}
.cr.arrow-3::after{
right: 14px;
 top: -5px;
box-sizing: border-box;
width: 6px;
height: 6px;
border: 4px solid transparent;
border-left: 5px solid #666;
transform: rotate(270deg);
}

#sideContents .btns_sns{
 display: block;
 text-align: right;
 padding-top: 30px;
 
}
#sideContents .btns_sns li{
 display: inline-block;
 vertical-align: top;
 
}





#sideContents nav.products dd a{
 border-bottom: 1px solid #d0d0d0;
 width: 100%;
 height: auto;
 display: block;
 font-size: 14px;
}

#sideContents nav.products dd a{
 border-bottom: 1px solid #d0d0d0;
 width: 100%;
 height: auto;
 box-sizing: border-box;
 padding: 5px 0 5px 0;
 display: block;
 color: #666;
 text-decoration: none;
 transition: all .2s ease-in;
}

#sideContents nav.products dd  a span{
 padding: 0 0 0 12px;
 border-left: 2px solid #b5b5b5;
 line-height: 1.5;
 height: auto;
 display: block;
 box-sizing: border-box;
 transition: all .3s ease-in;
}

#sideContents nav.products dd a:hover,
#sideContents nav.products dd a.cr{
 background: #f2f2f2;
}
#sideContents nav.products dd a:hover span,
#sideContents nav.products dd a.cr span{
 border-left: 2px solid #d80d23;
}



@media screen and (max-width: 768px) {
 
 #sideContents .btns_sns{
 text-align: center;
 
}


}





/* top page
-----------------------------------------------------------------*/

.top_visual{
 height: 500px;
}

.slide_wrap{
 height: 500px;
}
.slide_wrap li{
 position: relative;
}

.slide_01{
 height: 500px;
 background: url(../images/top/top_visual_back.jpg) no-repeat bottom center;
 background-size: cover;
 position: relative;
}
.visual_info{
 position: absolute;
 width: 1000px;
 margin: auto;
 right: 0;
 left: 0;
 text-align: left;
 box-sizing: border-box;
 opacity:0;
}

.visual_info h1{
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
font-size: 50px;
 font-weight:900;
 margin-bottom: 10px;
}
.visual_info h2{
font-size: 20px;
 font-weight: normal;
 padding-bottom: 20px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}

.slide_wrap li .slide_txt{
 position: absolute;
 top:0;;
 width: 1000px;
 margin: auto;
 right: 0;
 left: 0;
 text-align: left;
 opacity:0;
}
.slide_wrap li .slide_txt .in{
 font-size: 20px;
 padding: 12px 20px;
 display: inline-block;
 background: rgba(140,140,140,0.9);
 color: #fff;
 font-weight: normal;
 line-height: 1.5;
 transition:all .2s ease-in
}

.slide_wrap li .slide_txt .in a{
 color: #fff;
 text-decoration: none;
 padding-left: 1.2em;
}

.slide_wrap li .slide_txt .in a:hover{
 text-decoration: underline;
 
}


@media screen and (max-width: 768px) {
 
 
 
.top_visual{
 height: auto;
}

.slide_wrap{
 position: relative;
 height: auto;
}

.slide_01{
 height: auto;
 background: url(../images/top/top_visual_back.jpg) no-repeat bottom center;
 background-size: 150% auto;
 position: relative;
}
.visual_info{
 position: relative;
 top: auto;
 width: 100%;
 margin: auto;
 right: 0;
 left: 0;
 padding: 25% 10% 15%;
}

.visual_info h1{
font-size: 25px;
}
.visual_info h2{
font-size: 12px;
}

.slide_wrap li .slide_txt{
 position: relative;
 top:auto !important;
 width: 100%;
}
.slide_wrap li .slide_txt .in{
 font-size: 12px;
 padding: 5%;
 text-align: center;
 display: block;
}

.slide_wrap li .slide_txt .in a{
 padding-left: 1.5em;
}

 
}





.top_all{
 position: relative;
 background: url(../images/top/top_back_all.jpg) no-repeat top right;
 background-size: auto 100%;
}


.top_all_img{
 height: 100%;
 width: auto; 
 position: absolute;
 top: 0;
 right: 0;
 z-index: -1;
}
.top_all_img img{
 height: 100%;
 width: auto; 
}

.top_01{
 background:rgba(237,238,242,1) url(../images/top/top_back_01.png) no-repeat bottom center;
  mix-blend-mode:multiply;
 background-size: 100%;
}

.top_02{
 background:url(../images/top/top_back_02.png) no-repeat top center;
 background-size: 100%;
}

 .top_02.top-news-section{
 background:none;
 background-size: 100%;
display:block;

}

.top_03{
 background:rgba(237,238,242,1) url(../images/top/top_back_03.png) no-repeat bottom center;
  mix-blend-mode:multiply;
 background-size: 100%;
}

.top_04{
 background:url(../images/top/top_back_04.png) no-repeat top center;
 background-size: 100%;
}
.top_04.en{
 background:none;
 background-size: 100%;
}
.top_05{
 background: #edeef2;
}

.top_06{
 background:url(../images/top/top_back_05.jpg) no-repeat top center;
 background-size: cover;
 height: 638px;
 box-sizing: border-box;
}

.top_06.noGreeting{
height:auto;
background:#edeef2;
overflow:hidden;
padding-bottom:50px;
}
.top_06.noGreeting.white{
height:auto;
background:#fff;
overflow:hidden;
padding-bottom:50px;
}

@media all and (-ms-high-contrast: none){
 
.top_all{
 position: relative;
 background: url(../images/top/top_back_all_sp.jpg) no-repeat top right;
 background-size: cover;
}

 
 .top_01{
    background:rgba(228,228,235,0.5) url(../images/top/top_back_01.png) no-repeat bottom center;
 background-size: 100%;
  }
 .top_03{
 background:rgba(228,228,235,0.5) url(../images/top/top_back_03.png) no-repeat bottom center; 
  background-size: 100%;
}
 
}
@supports (-ms-ime-align:auto) {
 .top_01{
    background:rgba(228,228,235,0.5) url(../images/top/top_back_01.png) no-repeat bottom center;  
  background-size: 100%;
  }
  .top_03{
 background:rgba(228,228,235,0.5) url(../images/top/top_back_03.png) no-repeat bottom center; 
   background-size: 100%;
}
}


.top_sec_in{
 background: url(../images/top/top_16_ol_13.png) no-repeat top center;
 width: 1000px;
 margin: 0 auto;
 padding: 70px 0;
 overflow: hidden;
}

.top-news-section {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto 0;
    text-align: left;
}

.top-news-section .top_sec_in{
 background: none;
 width: 1000px;
 margin: 0 auto;
 padding: 70px 0;
 overflow: hidden;
}

.top_sec_in h2{
 text-align: center;
 margin-bottom: 30px;
 font-size: 22px;
 font-weight: bold;
 color: #666;
 letter-spacing: 2px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}


@media screen and (max-width: 768px) {
	
 .top_sec_in{
 background: url(../images/top/top_16_ol_13.png) no-repeat top center;
  background-size: 30%;
 width: 100%;
 margin: 0 auto;
 padding: 10% 5%;
 overflow: hidden;
  box-sizing: border-box;
}
 .top-news-section .top_sec_in{
 background: none;
 width: 100%;
 margin: 0 auto;
 padding: 10% 5%;
 overflow: hidden;
}
 
 .top_sec_in h2{
 text-align: center;
 margin-bottom: 20px;
 font-size: 18px;
 font-weight: bold;
 color: #666;
 letter-spacing: 2px;
}

 
 .top_01{
 background:rgba(237,238,242,1) url(../images/top/top_back_01_sp.png) no-repeat bottom center;
  mix-blend-mode:multiply;
 background-size: 100%;
}

.top_02{
 background:url(../images/top/top_back_02_sp.png) no-repeat top center;
 background-size: 100%;
}

.top_03{
 background:rgba(237,238,242,1) url(../images/top/top_back_03_sp.png) no-repeat bottom center;
  mix-blend-mode:normal;
 background-size: 100%;
}

.top_04{
 background:url(../images/top/top_back_04_sp.png) no-repeat top center;
 background-size: 100%;
}

.top_06{
 background-size: cover;
 height: auto;
 box-sizing: border-box;
}




@media all and (-ms-high-contrast: none){
 .top_01{
    background:rgba(228,228,235,0.5) url(../images/top/top_back_01_sp.png) no-repeat bottom center;
 background-size: 100%;
  }
 .top_03{
 background:rgba(228,228,235,1) url(../images/top/top_back_03_sp.png) no-repeat bottom center; 
  background-size: 100%;
}
 
}
@supports (-ms-ime-align:auto) {
 .top_01{
    background:rgba(228,228,235,0.5) url(../images/top/top_back_01_sp.png) no-repeat bottom center;  
  background-size: 100%;
  }
  .top_03{
 background:rgba(228,228,235,1) url(../images/top/top_back_03_sp.png) no-repeat bottom center; 
   background-size: 100%;
  }
 
 }
 
}



.cat_list{
 padding-bottom: 40px;
 overflow: hidden;
 
}



.cat_list li{
 float: left;
 margin:0 20px 20px 0;
 height:54px;
 width:235px;
}
.cat_list li:nth-child(4n){
 float: left;
 margin:0 0 20px 0;
}

.cat_list li a{
 width:235px;
 background: #fff;
 border-radius: 5px;
 display: table-cell;
 padding: 0 7px 0 77px;
 box-sizing: border-box;
 text-decoration: none;
 color: #666;
 height:54px;
 line-height: 1.5;
 vertical-align:middle;
}


@media screen and (max-width: 768px) {
 
 .cat_list li{
 float: left;
 width: calc(100% / 3);
 margin:0 0 0 0;
  box-sizing: border-box;
  padding: 0 1% 2%;
  font-size: 10px;
  height:auto;
}
.cat_list li a{
 width:100%;
 background: #fff;
 border-radius: 0;
 display: block;
 padding: 5%;
 box-sizing: border-box;
 text-decoration: none;
 text-align: center;
 color: #666;
  height:auto;
  overflow:hidden;
}
 
.cat_list li:nth-child(4n){
 float: left;
 margin:0 0 0 0;
}
 
 
 
}



.cat_list li.security a{
 background:#fff url(../images/top/cat_ico_01.svg) no-repeat 12px center; 
 background-size: 50px;
 transition: all .2s ease-in;
}
.cat_list li.security a:hover{
 background:#e8212f url(../images/top/cat_ico_01_on.svg) no-repeat 12px center; 
 background-size: 50px;
 color: #fff;
} 
.cat_list li.quality a{
 background:#fff url(../images/top/cat_ico_02.svg) no-repeat 12px center; 
 background-size: 50px;
 transition: all .2s ease-in;
}
.cat_list li.quality a:hover{
 background:#e8212f url(../images/top/cat_ico_02_on.svg) no-repeat 12px center; 
 background-size: 50px;
 color: #fff;
}

.cat_list li.car a{
 background:#fff url(../images/top/cat_ico_03.svg) no-repeat 12px center; 
 background-size: 50px;
 transition: all .2s ease-in;
}
.cat_list li.car a:hover{
 background:#e8212f url(../images/top/cat_ico_03_on.svg) no-repeat 12px center; 
 background-size: 50px;
 color: #fff;
}

.cat_list li.securitytools a{
 background:#fff url(../images/top/cat_ico_04.svg) no-repeat 12px center; 
 background-size: 50px;
 transition: all .2s ease-in;
}
.cat_list li.securitytools a:hover{
 background:#e8212f url(../images/top/cat_ico_04_on.svg) no-repeat 12px center; 
 background-size: 50px;
 color: #fff;
}

.cat_list li.network a{
 background:#fff url(../images/top/cat_ico_05.svg) no-repeat 12px center; 
 background-size: 50px;
 transition: all .2s ease-in;
}
.cat_list li.network a:hover{
 background:#e8212f url(../images/top/cat_ico_05_on.svg) no-repeat 12px center; 
 background-size: 50px;
 color: #fff;
}


.cat_list li.connect a{
 background:#fff url(../images/top/cat_ico_06.svg) no-repeat 12px center; 
 background-size: 50px;
 transition: all .2s ease-in;
}
.cat_list li.connect a:hover{
 background:#e8212f url(../images/top/cat_ico_06_on.svg) no-repeat 12px center; 
 background-size: 50px;
 color: #fff;
}

.cat_list li.wireless a{
 background:#fff url(../images/top/cat_ico_07.svg) no-repeat 12px center; 
 background-size: 50px;
 transition: all .2s ease-in;
}
.cat_list li.wireless a:hover{
 background:#e8212f url(../images/top/cat_ico_07_on.svg) no-repeat 12px center; 
 background-size: 50px;
 color: #fff;
}


.cat_list li.os a{
 background:#fff url(../images/top/cat_ico_08.svg) no-repeat 12px center; 
 background-size: 50px;
 transition: all .2s ease-in;
}
.cat_list li.os a:hover{
 background:#e8212f url(../images/top/cat_ico_08_on.svg) no-repeat 12px center; 
 background-size: 50px;
 color: #fff;
}


.cat_list li.storage a{
 background:#fff url(../images/top/cat_ico_09.svg) no-repeat 12px center; 
 background-size: 50px;
 transition: all .2s ease-in;
}
.cat_list li.storage a:hover{
 background:#e8212f url(../images/top/cat_ico_09_on.svg) no-repeat 12px center; 
 background-size: 50px;
 color: #fff;
}


.cat_list li.career a{
 background:#fff url(../images/top/cat_ico_10.svg) no-repeat 12px center; 
 background-size: 50px;
 transition: all .2s ease-in;
}
.cat_list li.career a:hover{
 background:#e8212f url(../images/top/cat_ico_10_on.svg) no-repeat 12px center; 
 background-size: 50px;
 color: #fff;
}


.cat_list li.video-ui{
 width:235px;
 padding: 0;
}
.cat_list li.video-ui a{
 background:#fff url(../images/top/cat_ico_11.svg) no-repeat 12px center; 
 background-size: 50px;
 transition: all .2s ease-in;
}
.cat_list li.video-ui a:hover{
 background:#e8212f url(../images/top/cat_ico_11_on.svg) no-repeat 12px center; 
 background-size: 50px;
 color: #fff;
}



.cat_list li.utility a{
 background:#fff url(../images/top/cat_ico_12.svg) no-repeat 12px center;
 background-size: 45px;
 transition: all .2s ease-in;
}
.cat_list li.utility a:hover{
 background:#e8212f url(../images/top/cat_ico_12_on.svg) no-repeat 12px center; 
 background-size: 45px;
 color: #fff;
}

.cat_list li.ai a{
 background:#fff url(../images/top/cat_ico_13.svg) no-repeat 12px center;
 background-size: 45px;
 transition: all .2s ease-in;
}
.cat_list li.ai a:hover{
 background:#e8212f url(../images/top/cat_ico_13_on.svg) no-repeat 12px center; 
 background-size: 45px;
 color: #fff;
}

@media screen and (max-width: 768px) {
 
 .cat_list li.security a{
 background:#fff url(../images/top/cat_ico_01.svg) no-repeat center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.security a:hover{
 background:#e8212f url(../images/top/cat_ico_01_on.svg) no-repeat center 10px; 
 background-size: 40%;
} 
.cat_list li.quality a{
 background:#fff url(../images/top/cat_ico_02.svg) no-repeat  center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.quality a:hover{
 background:#e8212f url(../images/top/cat_ico_02_on.svg) no-repeat center 10px; 
 background-size: 40%;
}

.cat_list li.car a{
 background:#fff url(../images/top/cat_ico_03.svg) no-repeat center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.car a:hover{
 background:#e8212f url(../images/top/cat_ico_03_on.svg) no-repeat center 10px; 
 background-size: 40%;
}

.cat_list li.securitytools a{
 background:#fff url(../images/top/cat_ico_04.svg) no-repeat center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.securitytools a:hover{
 background:#e8212f url(../images/top/cat_ico_04_on.svg) no-repeat center 10px; 
 background-size: 40%;
}

.cat_list li.network a{
 background:#fff url(../images/top/cat_ico_05.svg) no-repeat center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.network a:hover{
 background:#e8212f url(../images/top/cat_ico_05_on.svg) no-repeat center 10px; 
 background-size: 40%;
}


.cat_list li.connect a{
 background:#fff url(../images/top/cat_ico_06.svg) no-repeat center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.connect a:hover{
 background:#e8212f url(../images/top/cat_ico_06_on.svg) no-repeat center 10px; 
 background-size: 40%;
}

.cat_list li.wireless a{
 background:#fff url(../images/top/cat_ico_07.svg) no-repeat center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.wireless a:hover{
 background:#e8212f url(../images/top/cat_ico_07_on.svg) no-repeat center 10px; 
 background-size: 40%;
}


.cat_list li.os a{
 background:#fff url(../images/top/cat_ico_08.svg) no-repeat center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.os a:hover{
 background:#e8212f url(../images/top/cat_ico_08_on.svg) no-repeat center 10px; 
 background-size: 40%;
}


.cat_list li.storage a{
 background:#fff url(../images/top/cat_ico_09.svg) no-repeat center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.storage a:hover{
 background:#e8212f url(../images/top/cat_ico_09_on.svg) no-repeat center 10px; 
 background-size: 40%;
}


.cat_list li.career a{
 background:#fff url(../images/top/cat_ico_10.svg) no-repeat center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.career a:hover{
 background:#e8212f url(../images/top/cat_ico_10_on.svg) no-repeat center 10px; 
 background-size: 40%;
}


.cat_list li.video-ui{
 width: calc(100% / 3);
 margin:0 0 0 0;
  box-sizing: border-box;
  padding: 0 1% 2%;
  font-size: 10px;
}
.cat_list li.video-ui a{
 background:#fff url(../images/top/cat_ico_11.svg) no-repeat  center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.video-ui a:hover{
 background:#e8212f url(../images/top/cat_ico_11_on.svg) no-repeat center 10px; 
 background-size: 40%;
}



.cat_list li.utility a{
 background:#fff url(../images/top/cat_ico_12.svg) no-repeat center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.utility a:hover{
 background:#e8212f url(../images/top/cat_ico_12_on.svg) no-repeat center 10px; 
 background-size: 40%;
}

 .cat_list li.ai a{
 background:#fff url(../images/top/cat_ico_13.svg) no-repeat center 10px; 
 background-size: 40%;
  padding-top: 60%;
 line-height: 1.2;
 transition: all .2s ease-in;
}
.cat_list li.ai a:hover{
 background:#e8212f url(../images/top/cat_ico_13_on.svg) no-repeat center 10px; 
 background-size: 40%;
}
 
 
}




.btn_cat_all{
 width: 240px;
 height: 45px;
 margin: 0 auto;
 clear: both;
 
}

.btn_cat_all a{
 width: 100%;
 height: auto;
 border: 1px solid #666666;
 border-radius: 5px;
 line-height: 45px;
 display: block;
 text-align: center;
 font-size: 16px;
 color: #666;
 text-decoration: none;
 transition: all .2s ease-in;
}

.btn_cat_all a:hover{
 border: 1px solid #666666;
 background: #666;
 color: #fff;
}


@media screen and (max-width: 768px) {
 
 .btn_cat_all{
 width: 60%;
 height: 28px;
 margin: 0 auto;
 clear: both;
}

.btn_cat_all a{
 line-height: 28px;
 font-size: 12px;
}

 
}




.top_news{
 position: relative;
}

.top_news_l{
 float: left;
 width: 250px;
 text-align: left;
}
.top_news_l h2{
 text-align: left;
 margin-bottom: 10px;
}
.news_all{
 position: absolute;
 top:40px;
 left: 0;
}


.news_all a:before{
 content: ">";
 padding-right: 5px;
 font-size: 12px;
}
.news_all a{
 text-decoration: none;
 color: #666;
}
.news_all a:hover{
 text-decoration: underline
}

.top_news_r{
 float: left;
 width: calc( 100% - 250px);
 text-align: left;
 font-size: 14px;
}

.top_news_r li{
 border-bottom: 1px solid #eeeff3;
 padding: 14px 0;
 display: block;
}

.top_news_r li .date{
 width: 6em;
 display: inline-block;
font-family: 'Roboto', sans-serif;
 vertical-align: top;
}
.top_news_r li .cat{
 width: 8.5em;
 display: inline-block;
 background: #b1b1b1;
 border-radius: 2px;
 color: #fff;
 text-align: center;
 vertical-align: top;
 font-size: 12px;
 line-height:1;
 padding:3px;
 box-sizing:border-box;
}
.top_news_r li .txt{
 width: calc( 100% - 16em);
 display: inline-block;
 padding-left: 1em;
 word-break: break-all;
 vertical-align: top;
 line-height: 1.5;
}
.top_news_r li .txt a{
 color: #666;
 text-decoration: none;
 
}
.top_news_r li .txt a:hover{
 color: #666;
 text-decoration: underline;
 
}

@media screen and (max-width: 768px) {
	
 .top_news_l{
 float: none;
 width: 100%;
 text-align: center;
}
 .top_news_l h2{
 text-align: center;
 margin-bottom: 15px;
}
 .top_news_r{
 float: none;
 width: calc( 100% );
 text-align: left;
 font-size: 14px;
  margin-bottom: 30px;
}

 .top_news_r li .txt{
 width: calc( 100% );
 display: block;
  padding-top: .5em;
 padding-left: 0;
 word-break: break-all;
 vertical-align: top;
 line-height: 1.5;
}

.news_all{
 position: relative;
 top:auto;
 left: auto;
}


.news_all a:before{
 content: "";
 padding-right: 0;
 font-size: 12px;
}

 .news_all{
 width: 60%;
 height: 28px;
 margin: 0 auto;
 clear: both;
 position: relative;
 top:auto;
 left: auto;
}

.news_all a{
 width: 100%;
 height: auto;
 border: 1px solid #666666;
 border-radius: 5px;
 line-height: 28px;
 display: block;
 text-align: center;
 font-size: 12px;
 color: #666;
 text-decoration: none;
 transition: all .2s ease-in;
}

.news_all a:hover{
 border: 1px solid #666666;
 background: #666;
 color: #fff;
 text-decoration: none;
}

 
 
 
 
}






.top_reason{
 width: 245px;
 float: left;
 margin: 0 44px 0; 
 text-align: center;
 
}

.top_reason h3{
 font-size: 18px;
 line-height: 1;
 margin-bottom: 10px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}
.top_reason h3 strong{
 font-size: 52px;
 color: #e91c24;
 font-weight: normal;
 display: block;
}
.top_reason img{
 margin-bottom: 15px;
}
.top_reason p{
 font-size: 16px;
 line-height: 1.5;
 
}



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

.top_reason{
 width: 100%;
 float: none;
 margin: 0 0 25px; 
 text-align: left;
 clear: both;
 overflow: hidden;
}

.top_reason h3{
 text-align: center;
 font-size: 12px;
 display: inline-block;
 vertical-align: middle;
 width: 10%;
}
.top_reason h3 strong{
 font-size: 32px;
}
.top_reason img{
 margin-bottom: 15px;
 display: inline-block;
 vertical-align: middle;
 width: 30%;
 margin: 0 3%;
}
.top_reason p{
 font-size: 13px;
 line-height: 1.5;
 display: inline-block;
 vertical-align: middle;
 width: 50%;
}
 
}






ul.top_keywords{
 padding-bottom: 40px;
 overflow: hidden;
}


ul.top_keywords li{
 width: 320px;
 height: 45px;
 float: left;
 margin:0 20px 20px 0;
}
ul.top_keywords li:nth-child(3n){
 margin-right: 0;
}


ul.top_keywords li a{
 width: 320px;
 height: 45px;
 display: table-cell;
 vertical-align:middle;
 border: 1px solid #b1b1b1;
 border-radius: 5px;
 box-sizing: border-box;
 background: #b1b1b1;
 color: #fff;
 text-decoration: none;
 transition: all .2s ease-in;
}
ul.top_keywords li a:hover{
 border: 1px solid #b1b1b1;
 background: rgba(177,177,177,0.3);
 color: #666;
}


@media screen and (max-width: 768px) {
 
 ul.top_keywords{
 padding-bottom: 20px;
 overflow: hidden;
}
 
 ul.top_keywords li{
 width: 100%;
 height: 45px;
 float: left;
 margin:0 0 10px 0;
}
ul.top_keywords li a{
 width: 1000px;
 height: 45px;
 line-height: 45px;
}
 
 
}





ul.top_banner{
 padding: 70px 0 0 ;
 overflow: hidden;
}
.en ul.top_banner{
 padding: 70px 0 0;
 overflow: hidden;
 margin-bottom:50px;
}
ul.top_banner li{
 float: left;
 margin-right: 20px;
 width:235px;
}

ul.top_banner li:nth-child(4n){
 margin-right: 0;
}


@media screen and (max-width: 768px) {
 
 ul.top_banner{
 padding: 30px 0 0 ;
 overflow: hidden;
}

ul.top_banner li{
 float: left;
 width: 48%;
 margin: 0 1% 2%;
}

ul.top_banner li:nth-child(4n){
 margin-right: 0;
}
 
}



.top_result{
 padding-bottom: 60px;
 overflow: hidden;
}
.top_result li{
 float: left;
 width: 320px;
}

.top_result li:nth-child(2){
 margin: 0 20px;
}
/*
.top_result li img{
 margin-bottom: 25px;
}
*/

.top_result li .img{
 margin-bottom: 25px;
 display: block;
 border-radius: 5px;
 overflow: hidden;
 height: 200px;
 text-align: center;
 position: relative;
}
.top_result li .img img{
 width: 100%;
 height: auto;
 position: absolute;
 top: 0;
 bottom: 0;
 left:0;
 right: 0;
 margin: auto;
}

.top_result li p{
 line-height: 1.5;
 font-size: 16px;
}

.top_result li a{
 text-decoration: none;
 color: #666;
 
}



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

.top_result{
 padding-bottom: 5%;
 overflow: hidden;
 clear: both;
}
.top_result li{
 float: none;
 width: 100%;
 clear: both;
 overflow: hidden;
 padding-bottom: 5%;
}

.top_result li:nth-child(2){
 margin: 0 0;
}
.top_result li img{
 margin-bottom: 0;
 float: left;
}

.top_result li .img{
 margin-bottom: 0;
 height: 100px;
 width: 46%;
 float: left;
}


.top_result li p{
 line-height: 1.5;
 font-size: 14px;
 float: right;
 text-align: left;
 width: 50%;
}
.top_result li p br{
  display:none;
 }
 
.top_result li a{
 text-decoration: none;
 color: #666;
 
}
 
 
}



.top_greeting{
 height: 430px;
 box-sizing: border-box;
 padding: 75px 0 0;
 text-align: center;
}
.top_greeting h2{
 text-align: center;
 margin-bottom: 50px;
 font-size: 22px;
 font-weight: bold;
 color: #666;
 letter-spacing: 0;
 line-height: 1.5;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}

.top_agree_btn a{
 background: #4d8dc7;
 border-radius: 5px;
 padding: 10px 35px 10px 75px;
 font-size: 20px;
 color: #fff;
 text-decoration: none;
 transition: all .3s ease-in;
}
.top_agree_btn a:hover{
 background: rgba(77,141,199,0.7);
}



@media screen and (max-width: 768px) {
 
 
.top_greeting{
 height: 100%;
 padding: 10% 5%;
}
.top_greeting h2{
 margin-bottom: 25px;
 font-size: 18px;
}

.top_agree_btn a{
 padding: 8px 25px 8px 55px;
 font-size: 14px;
 text-align: left;
}
 
}




.top_btn_area{
 padding-top: 50px;
 letter-spacing:-.4em;
 text-align:center;
}

.top_btn_area li{
 display:inline-block;
 position:relative;
 width: 320px;
 height: 100px;
}
.top_btn_area li a{
 width: 320px;
 height: 100px;
 display: table-cell;
 vertical-align:middle;
 background:rgba(190,190,190,1) url(../images/top/top_btn_back.png) repeat-x center center;
 background-size: auto 100%;
 font-size: 26px;
 color: #fff;
 text-decoration: none;
 text-align: center;
 box-sizing: border-box;
 line-height: 1;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
 transition: all .3s ease-out;
 border: 1px solid rgba(102,102,102,0);
 letter-spacing:0;
 position:relative;
}
.top_btn_area li::before,
.top_btn_area li::after{
position: absolute;
top: 0;
bottom: 0;
 right: 12px;
margin: auto;
content: "";
vertical-align: middle;
}

.top_btn_area li.arrow-2::before{
top: 0;
bottom: 0;
width: 20px;
height: 20px;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #fff;
 border: 1px solid #666;
 z-index:10;
}
.top_btn_area li.arrow-2::after{
right: 12px;
box-sizing: border-box;
width: 10px;
height: 10px;
border: 5px solid transparent;
border-left: 8px solid #666;
 z-index:11;
}


.top_btn_area li a span{
 font-size: 18px;
 color: #666;
}
.top_btn_area li a:hover{
 background: none;
 background: rgba(190,190,190,.4);
 color: #666;
 border: 1px solid #666;
 box-sizing: border-box;
}
.top_btn_area li a:hover span{
 color: rgba(102,102,102,.7);
}

.top_btn_area li:nth-child(2){
 margin: 0 20px;
}

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

 
.top_btn_area{
 padding-top: 40px;
}
 .top_btn_area ul{
  padding-bottom: 20px;
 }
 
.top_btn_area li{
 float: none;
 display: block;
 width: 55%;
 height:auto;
 margin: 0 auto 2%;
}
.top_btn_area li a{
display:table-cell;
 width: 1000px;
 height: 50px;
 font-size: 13px;
}
.top_btn_area li a span{
 font-size: 10px;
}

.top_btn_area li:nth-child(2){
 margin: 0 auto 2%;
}
 
 
}





.arrow{
position: relative;
display: inline-block;
vertical-align: middle;
text-decoration: none;
}
.arrow::before,
.arrow::after{
position: absolute;
top: 0;
bottom: 0;
right: 10px;
margin: auto;
content: "";
vertical-align: middle;
}
.top_agree_btn .arrow::before,
.top_agree_btn .arrow::after{
position: absolute;
top: 0;
bottom: 0;
 right: auto;
left: 30px;
margin: auto;
content: "";
vertical-align: middle;
}
.slide_wrap .slide_txt .in .arrow::before,
.slide_wrap .slide_txt .in .arrow::after{
position: absolute;
top: 0;
bottom: 0;
 right: auto;
left: 0;
margin: auto;
content: "";
vertical-align: middle;
}

.arrow-2::before{
top: 0;
bottom: 0;
width: 20px;
height: 20px;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #fff;
 border: 1px solid #666;
}
.arrow-2::after{
right: 12px;
box-sizing: border-box;
width: 10px;
height: 10px;
border: 5px solid transparent;
border-left: 8px solid #666;
}

.arrow-5::before{
width: 20px;
height: 20px;
background: #d2e6ff;
}
.top_agree_btn .arrow-5::after{
left: 35px;
right: auto;
width: 5px;
height: 5px;
border-top: 1px solid #333;
border-right: 1px solid #333;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
 position: absolute;
}


.arrow-6::before{
width: 20px;
height: 20px;
background: #d2e6ff;
}
.slide_wrap .slide_txt .in .arrow-6::after{
left: 5px;
right: auto;
width: 5px;
height: 5px;
border-top: 1px solid #333;
border-right: 1px solid #333;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
 position: absolute;
}







@media screen and (max-width: 768px) {
 
 .top_agree_btn .arrow::before,
.top_agree_btn .arrow::after{
left: 15px;
content: "";
}
.arrow-5::before{
width: 15px;
height: 15px;
background: #d2e6ff;
}
.top_agree_btn .arrow-5::after{
left: 18px;
right: auto;
width: 3px;
height: 3px;
}
 
 .arrow-6::before{
width: 14px;
height: 14px;
background: #d2e6ff;
}
.slide_wrap .slide_txt .in .arrow-6::after{
left: 5px;
width: 3px;
height: 3px;
}

 
 
}



/* top new layout*/


.top-new-head{
 position: relative;
 max-width: 1000px;
 width: 1000px;
 margin: 0 auto;
}


.top-new-head .top-banner-left{
 position: absolute;
 left: 0;
 top: 0;
 width: 235px;
}
.top-new-head .top-banner-left li{
 margin-bottom: 3px;
}
.top-new-head .top-banner-left li:last-child{
 display:none;
}

.top-banner-right{
 width: 745px;
 float: right;
}

.top-banner-slide{
 margin-bottom: 11px;
 min-height: 190px;
 max-height: 190px;
 display: block;
 height: 190px;
}

.top-banner-slide li{
 display: block;
 height: 190px;
 width: 100%;
}
.top-banner-slide li a{
text-decoration:none;
}

.top-banner-slide .new-top-banner-slide-wrap{
 height: 100%;
 width: 100%;
 position: relative;
 display: flex;
 align-items: center;
 align-content:center;
}

.top-banner-slide .new-top-banner-slide-element{
 width: 100%;
 align-self: center;
 text-align: left;
 padding: 0 10%;
}
.top-banner-slide .new-top-banner-slide-element h1{
 font-size: 30px;
 margin-bottom: .3em;
}
.top-banner-slide .new-top-banner-slide-element p{
 font-size: 15px;
 font-weight: bold;
}



.top-banner-right .top-banner-bottom li{
 display: block;
 margin-right: 11px;
 float: left;
 max-width:178px;
}

.top-banner-right .top-banner-bottom li:last-child{
 margin-right: 0;
}


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

 .top-banner-right{
 width: 100%;
 float: none;
}

.top-banner-slide .new-top-banner-slide-element h1{
 font-size: 20px;
}
.top-banner-slide .new-top-banner-slide-element p{
 font-size: 11px;
}
 
.top-new-head{
 position: relative;
 max-width: 100%;
 width: 100%;
 margin: 0 auto;
}

.top-new-head .top-banner-left{
 position: relative;
 left: auto;
 top: auto;
 width: 90%;
 margin: 0 auto;
}
.top-new-head .top-banner-left li{
 width: 48%;
 margin: 0 1% 2%;
 float: left;
}
 .top-new-head .top-banner-left li:last-child{
 display:block;
}

 .top-banner-right .top-banner-bottom{
 width: 90%;
 margin: 0 auto;
}
 
.top-banner-right .top-banner-bottom li{
 width: 48%;
 margin: 0 1% 2%;
 float: left;
max-width: 48%;
}

.top-banner-right .top-banner-bottom li:last-child{
 width: 48%;
 margin: 0 1% 2%;
 float: left;
}
 .top-banner-right .top-banner-bottom li img{
  width:100%;
 }
 
 
 
 
}




.top-product-category{
 max-width: 1000px;
 width: 100%;
 margin: 0 auto 60px;
 text-align: left;
}

.top-product-category-search{
 margin-bottom: 30px;
}
.top-product-category-search label{
 font-size: 16px;
 margin-right: 25px;
}
.top-product-category-search input[type="text"]{
 height: 32px;
 box-sizing: border-box;
 border: none;
 background: #eeeeee;
 width: 310px;
}

.top-product-categry-wrap{
 background:#EDEEF2;
 
}

.product-category-head{
 background: #E2E2E2;
 position: relative;
 padding: .5em 1em;
 }
.product-category-head h3{
 font-size: 16px;
 font-weight:bold;
}

.product-category-head span{
 position:absolute;
 right: 1em;
 top:.5em;
 background: #B1B1B1;
 color: #fff;
 font-size: 14px;
 padding: .2% 1%;
 border-radius: 2px;
}
.product-category-head span:after{
 content: "CLOSE";
}
.product-category-head span.is-current:after{
 content: "OPEN";
}

.product-category-body{
 padding:30px 0 30px 30px;
 letter-spacing: -.5em;
}


.category-box{
 width:205px;
 display: inline-block;
 letter-spacing: 0;
 margin-right: 30px;
 vertical-align: top;
margin-bottom:3%;
}


.category-box .box-category-head{
 font-size: 13px;
 font-weight: bold;
 border-bottom: 1px solid #666666;
 padding: .6em 0 .9em 4.1em;
 margin-bottom: .9em;
 position: relative;
min-height:2.5em;
}

.category-box .box-category-head.security{
 background: url(../images/top/cat_ico_01.svg) no-repeat left center; 
 background-size: 40px;
}
.category-box .box-category-head.quality{
 background: url(../images/top/cat_ico_02.svg) no-repeat left center; 
 background-size: 40px;
}
.category-box .box-category-head.car{
 background: url(../images/top/cat_ico_03.svg) no-repeat left center; 
 background-size: 40px;
}
.category-box .box-category-head.securitytools{
 background: url(../images/top/cat_ico_04.svg) no-repeat left center; 
 background-size: 40px;
}
.category-box .box-category-head.network{
 background: url(../images/top/cat_ico_05.svg) no-repeat left center; 
 background-size: 40px;
}
.category-box .box-category-head.connect{
 background: url(../images/top/cat_ico_06.svg) no-repeat left center; 
 background-size: 40px;
}
.category-box .box-category-head.wireless{
 background: url(../images/top/cat_ico_07.svg) no-repeat left center; 
 background-size: 40px;
}
.category-box .box-category-head.os{
 background: url(../images/top/cat_ico_08.svg) no-repeat left center; 
 background-size: 40px;
}
.category-box .box-category-head.storage{
 background: url(../images/top/cat_ico_09.svg) no-repeat left center; 
 background-size: 40px;
}
.category-box .box-category-head.career{
 background: url(../images/top/cat_ico_10.svg) no-repeat left center; 
 background-size: 40px;
}
.category-box .box-category-head.video-ui{
 background: url(../images/top/cat_ico_11.svg) no-repeat left center; 
 background-size: 40px;
}
.category-box .box-category-head.utility{
 background: url(../images/top/cat_ico_12.svg) no-repeat left center;
 background-size: 40px;
}
.category-box .box-category-head.ai{
 background: url(../images/top/cat_ico_13.svg) no-repeat left center;
 background-size: 40px;
}


.box-category-body dt{
 margin-bottom: .5em;
 margin-top: .5em;
}
.box-category-body dd{
 font-size: 12px;
 margin-bottom: .5em;
 position: relative;
 padding-left: 1.3em;
}
.box-category-body dd:before{
 content: "＞";
 position: absolute;
 left: 0;
 top: 0;
 color: #4A6EA7;
}




@media screen and (max-width: 768px) {
 
 
.top-product-category{
 width: 90%;
 margin: 0 auto 5%;
 text-align: left;
}

.top-product-category-search{
 margin-bottom: 5%;
}
.top-product-category-search label{
 display: block;
 margin-right: 0;
 margin-bottom: .5em;
}
.top-product-category-search input[type="text"]{
 height: 32px;
 box-sizing: border-box;
 border: none;
 background: #eeee;
 width: calc(100% - 32px);
}

.top-product-categry-wrap{
 background:none;
 
}

.product-category-head{
 background: #E2E2E2;
 position: relative;
 padding: .8em 1em;
 margin-bottom: 5%;
 }
.product-category-head h3{
 font-weight:bold;
 text-align: center;
}

.product-category-head span{
 display: none;
}

.product-category-body{
 padding:0;
 letter-spacing: -.5em;
}


.category-box{
 width:100%;
 display: block;
 letter-spacing: 0;
 margin-right: 0;
 vertical-align: top;
 margin-bottom: 5%;
}


.category-box .box-category-head{
 font-size: 15px;
 font-weight: bold;
 background: #EDEEF2;
 border-bottom: none;
 padding: .5em 0 .5em 4em;
 margin-bottom: .9em;
 position: relative;
height:40px;
line-height:40px;
}
.box-category-head{
}

.category-box .box-category-head span{
 position:absolute;
 right: .5em;
 top:.5em;
 background: #B1B1B1;
 color: #fff;
 font-size: 14px;
 padding: .2% 1%;
 border-radius: 2px;
font-size:10px
}
.category-box .box-category-head span:after{
 content: "OPEN";
}
.category-box .box-category-head.is-current span:after{
 content: "CLOSE";
}


.category-box .box-category-head.security{
 background:#EDEEF2 url(../images/top/cat_ico_01.svg) no-repeat 5% center; 
 background-size: 35px;
}
.category-box .box-category-head.quality{
 background:#EDEEF2 url(../images/top/cat_ico_02.svg) no-repeat 5% center; 
 background-size: 35px;
}
.category-box .box-category-head.car{
 background:#EDEEF2 url(../images/top/cat_ico_03.svg) no-repeat 5% center; 
 background-size: 35px;
}
.category-box .box-category-head.securitytools{
 background:#EDEEF2 url(../images/top/cat_ico_04.svg) no-repeat 5% center; 
 background-size: 35px;
}
.category-box .box-category-head.network{
 background:#EDEEF2 url(../images/top/cat_ico_05.svg) no-repeat 5% center; 
 background-size: 35px;
}
.category-box .box-category-head.connect{
 background:#EDEEF2 url(../images/top/cat_ico_06.svg) no-repeat 5% center; 
 background-size: 35px;
}
.category-box .box-category-head.wireless{
 background:#EDEEF2 url(../images/top/cat_ico_07.svg) no-repeat 5% center; 
 background-size: 35px;
}
.category-box .box-category-head.os{
 background:#EDEEF2 url(../images/top/cat_ico_08.svg) no-repeat 5% center; 
 background-size: 35px;
}
.category-box .box-category-head.storage{
 background:#EDEEF2 url(../images/top/cat_ico_09.svg) no-repeat 5% center; 
 background-size: 35px;
}
.category-box .box-category-head.career{
 background:#EDEEF2 url(../images/top/cat_ico_10.svg) no-repeat 5% center; 
 background-size: 35px;
}
.category-box .box-category-head.video-ui{
 background:#EDEEF2 url(../images/top/cat_ico_11.svg) no-repeat 5% center; 
 background-size: 35px;
}
.category-box .box-category-head.utility{
 background:#EDEEF2 url(../images/top/cat_ico_12.svg) no-repeat 5% center;
 background-size: 35px;
}
.category-box .box-category-head.ai{
 background:#EDEEF2 url(../images/top/cat_ico_13.svg) no-repeat 5% center;
 background-size: 35px;
}

 .box-category-body dl{
  margin-left: .5em;
 }
.box-category-body dt{
 margin-bottom: .5em;
 font-size: 14px;
}

.box-category-body dd{
 font-size: 14px;
 margin-bottom: 1em;
}

}


@media screen and (max-width: 320px) {
 
.category-box .box-category-head{
 font-size: 12px;
 padding: .5em 0 .5em 4em;
height:34px;
line-height:34px;
}
.box-category-head{
}

.category-box .box-category-head span{
font-size:9px
}


.category-box .box-category-head.security{
 background:#EDEEF2 url(../images/top/cat_ico_01.svg) no-repeat 5% center; 
 background-size: 28px;
}
.category-box .box-category-head.quality{
 background:#EDEEF2 url(../images/top/cat_ico_02.svg) no-repeat 5% center; 
 background-size: 28px;
}
.category-box .box-category-head.car{
 background:#EDEEF2 url(../images/top/cat_ico_03.svg) no-repeat 5% center; 
 background-size: 28px;
}
.category-box .box-category-head.securitytools{
 background:#EDEEF2 url(../images/top/cat_ico_04.svg) no-repeat 5% center; 
 background-size: 28px;
}
.category-box .box-category-head.network{
 background:#EDEEF2 url(../images/top/cat_ico_05.svg) no-repeat 5% center; 
 background-size: 28px;
}
.category-box .box-category-head.connect{
 background:#EDEEF2 url(../images/top/cat_ico_06.svg) no-repeat 5% center; 
 background-size: 28px;
}
.category-box .box-category-head.wireless{
 background:#EDEEF2 url(../images/top/cat_ico_07.svg) no-repeat 5% center; 
 background-size: 28px;
}
.category-box .box-category-head.os{
 background:#EDEEF2 url(../images/top/cat_ico_08.svg) no-repeat 5% center; 
 background-size: 28px;
}
.category-box .box-category-head.storage{
 background:#EDEEF2 url(../images/top/cat_ico_09.svg) no-repeat 5% center; 
 background-size: 28px;
}
.category-box .box-category-head.career{
 background:#EDEEF2 url(../images/top/cat_ico_10.svg) no-repeat 5% center; 
 background-size: 28px;
}
.category-box .box-category-head.video-ui{
 background:#EDEEF2 url(../images/top/cat_ico_11.svg) no-repeat 5% center; 
 background-size: 28px;
}
.category-box .box-category-head.utility{
 background:#EDEEF2 url(../images/top/cat_ico_12.svg) no-repeat 5% center;
 background-size: 28px;
}
.category-box .box-category-head.ai{
 background:#EDEEF2 url(../images/top/cat_ico_13.svg) no-repeat 5% center;
 background-size: 28px;
}

}




.top-keyeords{
 display: table;
 max-width: 1000px;
 margin: 0 auto 12px;
 width: 100%; 
 border-radius: 3px;
}


.top-keywords-head{
 display:table-cell;
 width: 340px;
 background: url("../images/top/top-list-bac.jpg") no-repeat center center / cover;
 padding: 30px 0 25px 25px;
 text-align: left;
 border-radius: 3px 0 0 3px;
 position: relative;
 box-sizing: border-box;
}

.top-keywords-head h3{
 color: #fff;
 font-size: 16px;
 line-height: 1.6;
}

.top-keywords-head .all-list{
 position: absolute;
 bottom: 25px;
 left: 25px;
}
.top-keywords-head .all-list a{
 background: #fff;
 padding: .4em 1.3em;
 border-radius: 3px;
 display: block;
 font-size: 12px;
 color: #666666;
 transition: all ease-in .3s;
}
.top-keywords-head .all-list a:hover{
 background: #666666;
 padding: .4em 1.3em;
 border-radius: 3px;
 display: block;
 font-size: 12px;
 color: #fff;
 text-decoration: none;
}


.top-keywords-body{
 background: #EDEEF2;
 display: table-cell;
 width: calc(100% - 340px);
 padding: 22px 46px 22px 46px;
 text-align: left;
 border-radius: 0 3px 3px 0;
}

.top-keywords-body li{
 text-align: center;
 margin: 5px 5px 5px;
 display: inline-block;
 color: #fff;
}
.top-keywords-body li a{
 color: #fff;
 background: #666666;
 font-size: 12px;
 padding: .3em 2em; 
 border-radius: 3px;
 display: block;
 border: 1px solid #666666;
 transition: all .2s ease-in;
}
.top-keywords-body li a:hover{
 color: #666666;
 background: #d1d1d1;
 display: block;
 border: 1px solid #666666;
 text-decoration: none;
}


@media screen and (max-width: 768px) {
 
 
.top-keyeords{
 display: block;
 max-width: 1000px;
 margin: 0 auto 12px;
 width: 100%; 
 border-radius: 0;
 background: #EDEEF2;
 padding: 5% 0;
}


.top-keywords-head{
 display:block;
 width: 90%;
 background: url("../images/top/top-list-bac.jpg") no-repeat center center / cover;
 padding: 8% 5%;
 text-align: left;
 border-radius: 3px 3px;
 position: relative;
 box-sizing: border-box;
 margin: 0 auto;
}

.top-keywords-head .all-list{
 display: none;
}


.top-keywords-body{
 background: #EDEEF2;
 display: block;
 width: calc( 90% );
 padding: 0;
 text-align: left;
 border-radius: 0;
 margin: 0 auto;
 box-sizing: border-box;
}

.top-keywords-body li{
 background: #666666;
 font-size: 14px;
 text-align: center;
 border-radius: 3px;
 margin: 8px 0 8px;
 display: block;
 color: #fff;
 width: 100%;
 box-sizing: border-box;
}

 
 .top-keywords-body li a{
 color: #fff;
 background: #666666;
 padding: 1em; 
  font-size: 14px;
}

 
 
 
.news_all{
 width: 60%;
 height: 28px;
 margin: 0 auto;
 clear: both;
 position: relative;
 top:auto;
 left: auto;
}

.news_all a{
 width: 100%;
 height: auto;
 border: 1px solid #666666;
 border-radius: 5px;
 line-height: 28px;
 display: block;
 text-align: center;
 font-size: 12px;
 color: #666;
 text-decoration: none;
 transition: all .2s ease-in;
}

.news_all a:hover{
 border: 1px solid #666666;
 background: #666;
 color: #fff;
 text-decoration: none;
}

 
 
}







.top-result{
 display: table;
 max-width: 1000px;
 margin: 0 auto 60px;
 width: 100%;
 background: url("../images/top/top-result-back.jpg") no-repeat right 50%;
 border-radius: 3px;
 box-sizing: border-box;
}

.top-result-head{
 display:table-cell;
 width: 150px;
 background: rgba(0,0,0,0.6);
 padding: 50px 0 25px 25px;
 text-align: left;
 border-radius: 3px 0 0 3px;
 position: relative;
 box-sizing: border-box;
 vertical-align: top;
}

.top-result-head h3{
 color: #fff;
 font-size: 16px;
 line-height: 1.6;
}

.top-result-head .all-list{
 position: absolute;
 bottom: 12px;
 left: 12px;
}
.top-result-head .all-list a{
 background: #fff;
 padding: .4em 1.3em;
 border-radius: 3px;
 display: block;
 font-size: 12px;
 color: #666666;
 transition: all ease-in .3s;
}
.top-result-head .all-list a:hover{
 background: #666666;
 padding: .4em 1.3em;
 border-radius: 3px;
 display: block;
 font-size: 12px;
 color: #fff;
 text-decoration: none;
}

.top-result-body{
 background: rgba(240,245,250,0.9);
 display: table-cell;
 width: calc(100% - 150px);
 padding: 20px 0 20px 20px;
 text-align: left;
 border-radius: 0 3px 3px 0;
 overflow: hidden;
}
.top-result-box:last-of-type{
 margin-right: 0;
}


.top-result-box{
 width: 370px;
 margin-right: 40px;
 display: table;
 float: left;
}
.top-result-box figure{
 display: table-cell;
 vertical-align: middle;
 width: 168px;
}
.top-result-box h4{
 display: table-cell;
 vertical-align: middle;
 font-size: 14px;
 line-height: 1.5;
 padding: 0 0 0 15px;
 font-weight: normal;
}
.top-result-box a h4{
 color: #333333;
}




@media screen and (max-width: 768px) {
 
 
 
.top-result{
 display: block;
 margin: 0 auto 5%;
 width: 90%;
 background: url("../images/top/top-result-back.jpg") no-repeat right 50% / cover;
 border-radius: 3px;
 box-sizing: border-box;
}

.top-result-head{
 display:block;
 width: 100%;
 background: rgba(0,0,0,0.6);
 padding: 8% 0;
 text-align: center;
 border-radius: 3px 3px 0 0;
 position: relative;
 box-sizing: border-box;
 vertical-align: top;
}

.top-result-head h3{
 color: #fff;
 font-size: 16px;
 line-height: 1.6;
}

.top-result-head .all-list{
 display: none;
}


.top-result-body{
 background: rgb(240,245,250,0.9);
 display: block;
 width: calc(100%);
 padding: 4%;
 text-align: left;
 border-radius: 0 0 3px 3px;
 overflow: hidden;
box-sizing:border-box;
}
.top-result-box:last-of-type{
 margin-right: 0;
}


.top-result-box{
 width: 100%;
 margin-right: 0;
 margin-bottom: 10px;
 display: table;
 float: left;
}
.top-result-box figure{
 display: table-cell;
 vertical-align: middle;
 width: 40%;
 border-radius: 3px;
}
.top-result-box h4{
 display: table-cell;
 vertical-align: middle;
 font-size: 14px;
 line-height: 1.5;
 padding: 0 0 0 15px;
 font-weight: normal;
}
.top-result-box a h4{
 color: #333333;
}
 
 
}






.top-contact-area{
 background: #EDEEF2;
 border-radius: 3px;
 padding: 20px 24px;
 width: 100%;
 max-width: 1000px;
 margin: 0 auto 60px;
 text-align: left;
 box-sizing: border-box;
}

.top-contact-area h3{
 font-size: 16px;
 color: #666666;
 border-bottom: 1px solid #333333;
 padding-bottom: .5em;
 text-align: left;
 margin-bottom: .5em;
}
.top-contact-area h3 span{
 font-size: 11px;
}

.top-ontact-head{
 background: #fef5d7;
 color: #ED1C24;
 font-size: 13px;
 padding: 0 30px;
 display: inline-block;
 line-height: 45px;
 border-radius: 25px;
 text-align: left;
 margin-bottom: 18px;
}

.top-contact-upper span{
 color: #AFAFAF;
}
.top-contact-upper input{
 height: 45px;
 line-height: 45px;
 padding: 0 1em;
 border: none;
 width: 76%;
}

.top-contact-area h4{
 font-size:14px;
 margin-bottom: .8em;
 margin-left: 5px;
}
 
.top-contact-box{
 width: 170px;
 float: left;
 margin-right: 25px;
 margin-bottom: 10px;
 margin-left: 0;
} 
 .top-contact-box.lvl2{
 width: 355px;
} 
 .top-contact-box.lvl3{
 margin-right: 0;
} 

.top-contact-box:last-child{
 margin-right: 0;
}

.top-contact-box label{
 display:block;
 color: #666666;
 font-size: 13px;
 margin-bottom: .3em;
}

.privacy-confirm{
 clear:both;
}

.top-contact-box input{
 width: 170px;
 box-sizing: border-box;
 border: none;
 line-height: 30px;
 height: 30px;
 padding: 0 1em;
}
.top-contact-box input.lvl2{
 margin-right: 10px;
}

.privacy-confirm{
 color: #666;
 margin-bottom: 1em;
 margin-left: 5px;
}
.privacy-confirm label{
 margin-left: 2em;
margin-right:.4em;
}

.top-contact-area .send_btn{
 margin-bottom: 0;
}



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

.top-contact-area{
 background: #EDEEF2;
 border-radius: 3px;
 padding: 4%;
 width: 90%;
 max-width: 1000px;
 margin: 0 auto 5%;
 text-align: left;
 box-sizing: border-box;
}

.top-contact-area h3{
 font-size: 16px;
 color: #666666;
 border-bottom: 1px solid #333333;
 padding-bottom: .5em;
 text-align: left;
 margin-bottom: .5em;
}
.top-contact-area h3 span{
 display: block;
}

.top-ontact-head{
 font-size: 13px;
 padding: 0 0;
 display: block;
 line-height: 45px;
 border-radius: 25px;
 text-align: center;
 margin-bottom: 18px;
 width: 100%;
 box-sizing: border-box;
}

.top-contact-upper span{
 display: none;
}
.top-contact-upper input{
 color: #AFAFAF;
 height: 45px;
 line-height: 45px;
 padding: 0 1em;
 border: none;
 width: 100%;
 box-sizing: border-box;
 margin-bottom: 5%;
}

.top-contact-area h4{
 font-size:14px;
 margin-bottom: .8em;
 margin-left: 0;
}
 
.top-contact-box{
 width: 100%;
 float: none;
 margin-right: 0;
 margin-bottom: 3%;
 margin-left: 0;
} 
 .top-contact-box.lvl2{
 width: 100%;
} 

 

 

.privacy-confirm{
 clear:both;
}

.top-contact-box input{
 width: 100%;
 box-sizing: border-box;
 border: none;
 line-height: 30px;
 height: 30px;
 padding: 0 1em;
}
.top-contact-box input.lvl2{
 margin-right: 0;
 margin-bottom: 10px;
}

.privacy-confirm{
 color: #666;
 margin-bottom: 1em;
 margin-left: 0;
}
.privacy-confirm label{
 margin-left: 0;
}

.top-contact-area .send_btn{
 margin-bottom: 0;
}
 .privacy-confirm span{
  display: block;
  margin-top: .5em;
 }
 
 
}






/* ir 
-----------------------------------------------------------------*/




/* ir  top
--------------------------------*/

.ir_top_box_area{
 padding-bottom: 50px;
 overflow: hidden;
}

.ir_top_box {
 float: left;
}

.ir_top_box a{
 border:1px solid #e8e8e8;
 border-radius: 5px;
 padding: 10px 20px 10px 10px;
 box-sizing: border-box;
 width: 360px;
 display: block;
 text-decoration: none;
 color: #666;
 transition: all .2s ease-in;
 overflow: hidden;
}
.ir_top_box a:hover{
 background: #e8e8e8;
}
.ir_top_box:nth-of-type(2n){
 float: right;
}


.ir_top_box img{
 float: left;
 margin-right: 25px;
}

.ir_top_box h3{
 font-size: 16px;
 padding: 15px 0 10px;
}
.ir_top_box p{
 font-size: 14px;
 line-height: 1.5;
}



.ir_top_infoBox{
 background: #f1f2f6;
 border: 1px solid #e6e6e6;
 border-radius: 5px;
 padding: 30px 30px 20px;
 box-sizing: border-box;
 margin-bottom: 50px;
}

.ir_top_infoBox li{
 font-size: 14px;
 margin-bottom: 10px;
 line-height: 1.4;
}

.ir_top_infoBox li:before{
 content: "・";
 font-size: 14px;
}


.top_ir_titBox{
 position: relative;
 border-bottom: 1px solid #dadada;
 padding-bottom: 5px;
 margin-bottom: 15px;
}
.top_ir_titBox .ir_titEle{
 position: absolute;
 right: 0;
 bottom: 17px;
 font-size: 14px;
}
.top_ir_titBox .ir_titEle a{
 margin-left: 15px;
}

.ir_top_news{
 margin-bottom: 70px;
 
}

.ir_top_calendar{
 margin-bottom: 80px;
}



@media screen and (max-width: 768px) {
 
 
.ir_top_box_area{
 padding-bottom: 40px;
 width: 100%;
}

.ir_top_box {
 float: none;
 width: 100%;
 box-sizing: border-box;
 margin-bottom: 3%
}

.ir_top_box a{
 border:1px solid #e8e8e8;
 border-radius: 5px;
 padding: 3%;
 box-sizing: border-box;
 width: 100%;
 transition: all .2s ease-in;
 overflow: hidden;
}
.ir_top_box a:hover{
 background: #e8e8e8;
}
.ir_top_box:nth-of-type(2n){
 float: right;
}


.ir_top_box img{
 float: left;
 margin-right: 15px;
 width: 20%
}

.ir_top_box h3{
 font-size: 14px;
 padding: 10px 0 5px;
}
.ir_top_box p{
 font-size: 12px;
}



.ir_top_infoBox{
 padding: 5%;
 margin-bottom: 40px;
}

.ir_top_infoBox li{
 font-size: 12px;
 margin-bottom: 10px;
 line-height: 1.4;
}

.ir_top_infoBox li:before{
 content: "・";
 font-size: 12px;
}


.top_ir_titBox{
 position: relative;
 border-bottom: 1px solid #dadada;
 padding-bottom: 0;
 margin-bottom: 15px;
}
.top_ir_titBox .ir_titEle{
 position: absolute;
 right: 0;
 bottom: 5px;
 font-size: 12px;
}
.top_ir_titBox .ir_titEle a{
 margin-left: 15px;
 display: block;
 margin-bottom: 5px;
}

.ir_top_news{
 margin-bottom: 40px;
}
.ir_top_calendar{
 margin-bottom: 40px;
}

 
 
 
}



.ir_top_menu{
 padding-bottom: 80px;
 overflow: hidden;
 
}

.ir_top_menu dl{
 width: 360px;
 float: left;
}
.ir_top_menu dl:first-of-type{
 margin-right: 20px;
}

.ir_top_menu dt{
 margin-bottom: 20px;
}

.ir_top_menu dt a{
 padding: 10px;
 border: 1px solid #e8e8e8;
 border-radius: 5px;
 line-height: 60px;
 display: block;
 font-size: 16px;
 color: #333333;
 text-decoration: none;
 transition: all .2s ease-in
}

.ir_top_menu dt a.library{
 background: url(../images/ir/ir_top_ico_01.svg) no-repeat 10px 10px;
 background-size: 60px;
 padding: 10px 10px 10px 85px;
 line-height: 60px;;
}
.ir_top_menu dt a.library:hover{
 background: #ed1c24  url(../images/ir/ir_top_ico_01.svg) no-repeat 10px 10px;
  background-size: 60px;
 color: #fff;
}

.ir_top_menu dt a.highlight{
 background: url(../images/ir/ir_top_ico_02.svg) no-repeat 10px 10px;
 background-size: 60px;
 padding: 10px 10px 10px 85px;
 line-height: 60px;;
}
.ir_top_menu dt a.highlight:hover{
 background: #ed1c24  url(../images/ir/ir_top_ico_02.svg) no-repeat 10px 10px;
  background-size: 60px;
 color: #fff;
}

.ir_top_menu dt a.finance{
 background: url(../images/ir/ir_top_ico_03.svg) no-repeat 10px 10px;
 background-size: 60px;
 padding: 10px 10px 10px 85px;
 line-height: 60px;;
}
.ir_top_menu dt a.finance:hover{
 background: #ed1c24  url(../images/ir/ir_top_ico_03.svg) no-repeat 10px 10px;
  background-size: 60px;
 color: #fff;
}

.ir_top_menu dt a.faq{
 background: url(../images/ir/ir_top_ico_04.svg) no-repeat 10px 10px;
 background-size: 60px;
 padding: 10px 10px 10px 85px;
 line-height: 60px;;
}
.ir_top_menu dt a.faq:hover{
 background: #ed1c24  url(../images/ir/ir_top_ico_04.svg) no-repeat 10px 10px;
  background-size: 60px;
 color: #fff;
}



.ir_top_menu dd{
 font-size: 14px;
 margin-bottom: 30px;
 line-height: 1.5;
}
.ir_top_menu dd a{
 color: #666;
 text-decoration: none;
}
.ir_top_menu dd a:hover{
 color: #666;
 text-decoration: underline;
}
.ir_top_menu dd a:before{
 content: "▶ ";
 font-size: 9px;
 color: #666;
 text-decoration: none;
}


.ir_top_menu dd.down_link a{
 font-size: 14px;
 text-align: center;
 color: #ed1c24;
 border: 1px solid #ed1c24;
 display: block;
 border-radius: 5px;
 padding: 10px;
 transition: all .2s ease-in
}
.ir_top_menu dd.down_link a:hover{
 background: #ed1c24;
 color: #fff;
 text-decoration: none;
}
.ir_top_menu dd.down_link a:before{
 content: "";
 display: none;
}

@media screen and (max-width: 768px) {
 
 .ir_top_menu{
 padding-bottom: 40px;
 overflow: hidden;
 
}

.ir_top_menu dl{
 width: 100%;
 float: none;
}
.ir_top_menu dl:first-of-type{
 margin-right: 0;
}

.ir_top_menu dt{
 margin-bottom: 10px;
}

.ir_top_menu dt a{
 padding: 5px;
 line-height: 40px;
 font-size: 14px;
}
 
 
.ir_top_menu dt a.library{
 background: url(../images/ir/ir_top_ico_01.svg) no-repeat 5px 5px;
 background-size: 40px;
 padding: 5px 5px 5px 65px;
 line-height: 40px;
}
.ir_top_menu dt a.library:hover{
 background: #ed1c24  url(../images/ir/ir_top_ico_01.svg) no-repeat 5px 5px;
  background-size: 40px;
 color: #fff;
}

.ir_top_menu dt a.highlight{
 background: url(../images/ir/ir_top_ico_02.svg) no-repeat 5px 5px;
 background-size: 40px;
 padding: 5px 5px 5px 65px;
 line-height: 40px;
}
.ir_top_menu dt a.highlight:hover{
 background: #ed1c24  url(../images/ir/ir_top_ico_02.svg) no-repeat 5px 5px;
  background-size: 40px;
 color: #fff;
}

.ir_top_menu dt a.finance{
 background: url(../images/ir/ir_top_ico_03.svg) no-repeat 5px 5px;
 background-size: 40px;
 padding: 5px 5px 5px 65px;
 line-height: 40px;
}
.ir_top_menu dt a.finance:hover{
 background: #ed1c24  url(../images/ir/ir_top_ico_03.svg) no-repeat 5px 5px;
  background-size: 40px;
 color: #fff;
}

.ir_top_menu dt a.faq{
 background: url(../images/ir/ir_top_ico_04.svg) no-repeat 5px 5px;
 background-size: 40px;
 padding: 5px 5px 5px 65px;
 line-height: 40px;
}
.ir_top_menu dt a.faq:hover{
 background: #ed1c24  url(../images/ir/ir_top_ico_04.svg) no-repeat 5px 5px;
  background-size: 40px;
 color: #fff;
}


.ir_top_menu dd{
 font-size: 12px;
 margin-bottom: 15px;
 line-height: 1.5;
}
.ir_top_menu dd.down_link a{
 font-size: 12px;
 padding: 10px;
}

 
 
}







.ir_message_up{
 margin-bottom: 80px;
 font-size: 14px;
 line-height: 1.5;
}
.ir_message_up p{
 margin-bottom: 25px;
}
.ir_message_up p.right{
 text-align: right;
}
.ir_message_up img{
 float: right;
 margin-left: 15px;
 margin-bottom: 20px;
 
}



.txtArea{
 margin-bottom: 80px;
 font-size: 14px;
 line-height: 1.5;
}
.txtArea h3{
 color: #005caf;
 margin-bottom: 15px;
 font-size: 16px;
 line-height: 1.5;
}


.txtArea p{
 margin-bottom: 25px;
 line-height: 1.5;
}

.txtArea span img{
vertical-align:middle;
}

.txtAreaImg{
 width: 60%;
 margin-bottom: 50px;
 
}

.img_center{
 width:90%;
 margin:0 auto 30px;
 text-align: center;
}

.img_left{
 float: left;
 text-align: center;
 margin: 0 3% 30px 0;
 width:35%;
}
.img_right{
 float: right;
 margin: 0 0 30px 3%;
 width:35%;
 text-align: center;
}
.img_right_txt{
 float: left;
 width:calc(100% - 38%);
}
.img_left_txt{
 float: right;
 width:calc(100% - 38%);
}

.img_box{
 clear: both;
 overflow: hidden;
}

.txtArea h2{
 padding-top: 4%;
}
.txtArea h2:first-of-type{
 padding-top: 0;
}

.txtArea span strong{
 padding-top: 4%;
 font-size:22px;
 display:block;
}



.txtArea ul{
 list-style: none;
 margin: 0 0 30px .5em;
}



.txtArea li{
 line-height: 1.5;
 margin-bottom: .5em;;
 display: block;
 text-indent: -1.5em;
 margin-left: 1.5em;
}
.txtArea ul.col_2 li{
 width: 45%;
 display: inline-block;
}
.txtArea ul.col_3 li{
 width: 30%;
 display: inline-block;
}



.txtArea li:before{
 content: "■";
 margin-right: .5em
}

.txtArea li ul{
 list-style:none;
 margin: 5px 0 10px 0;
}

.txtArea li li{
 margin-bottom: .5em;
 text-indent: -1em;
 margin-left: 1em;
}

.txtArea li ul li:before{
 content: "■";
 font-size: 70%;
 margin-right: .5em
}


.txtArea ul.pageLink{
display:table;
width:100%;
margin:0 0 30px 0;
 box-sizing:border-box;
}
.txtArea ul.pageLink li{
display:table-row;
width:100%;
 box-sizing:border-box;
padding:0;
 text-indent: 0;
}


.txtArea ul.pageLink li a{
 display:table-cell;
 padding:1% 2% 1% 0;
 width:17em;
 box-sizing:border-box;
 position:relative;
 padding-left:1.5em;
}

.txtArea ul.pageLink li a::before,
.txtArea ul.pageLink li a::after{
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto;
content: "";
vertical-align: middle;
}
.txtArea ul.pageLink li a.arrow11::before{
left: 3px;
width: 7px;
height: 1px;
background: #005caf;
}
.txtArea ul.pageLink li a.arrow11::after{
left: 3px;
width: 6px;
height: 6px;
border-top: 1px solid #005caf;
border-right: 1px solid #005caf;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

.txtArea ul.pageLink li span{
 display:table-cell;
 padding:1% 2% 1% 0;
 width:auto;
 box-sizing:border-box;
 width:calc(100% - 10em);
 
}


.txtArea ul.pageLink li:before{
 content: "";
 margin-right: 0;
}


a.pdf{
 background: url(../images/ir/pdf.gif) no-repeat left 2px;
 padding-left: 1.5em;
 
}



.txt_btn,
.btn_box{
 height: auto;
 margin: 0 auto 30px;
 clear: both;
 
}

.txt_btn a,
.btn_box a{
 width: auto;
 height: auto;
 border: 1px solid #666666;
 border-radius: 5px;
 line-height: auto;
 display: inline-block;
 text-align: center;
 font-size: 16px;
 color: #666;
 padding:1.5% 8%;
 text-decoration: none;
 transition: all .2s ease-in;
}

.txt_btn.noInline a,
.btn_box.noInline a{
 display: inline;
}

.txt_btn a:hover,
.btn_box a:hover{
 border: 1px solid #666666;
 background: #666;
 color: #fff;
}





.txtArea table{
 margin: 0 0 30px;
 word-break: break-all;
word-wrap: break-all;
}
.txtArea table.fixed{
table-layout: fixed !important;
}
.txtArea table.spec{
table-layout: fixed !important;
width:60%;
}
.txtArea table.spec_all{
table-layout: fixed !important;
width:100%;
}


.txtArea table th{
 width:auto;
 background: #f1f2f6;
 padding: 2%;
 text-align: center;
 font-weight: normal;
 border-bottom: 1px solid #fff;
 border-top: 1px solid #fff;;
 border-left: 1px solid #fff;
 box-sizing:border-box;
vertical-align:middle;
}

.txtArea table th.rightUp{
vertical-align:top;
 text-align: right;
}

 
.txtArea table td{
 width:auto;
 background: #fff;
 padding: 2%;
 text-align: left;
 font-weight: normal;
 border-bottom: 1px solid #f1f2f6;
 border-top: 1px solid #f1f2f6;
 border-left: 1px solid #f1f2f6;
 line-height: 1.5;
 white-space: normal;
vertical-align:middle;
}
.txtArea table tr td:first-child{
 border-left: none;
}

.txtArea table td ul{
margin-bottom:0;
}

.txtArea table th.left{
text-align:left;
}

.txtArea table th li{
text-align:left;
}
.txtArea table th li:before{
 content: "・";
 margin-right: .5em
}



.txtArea table td.center{
 text-align: center;
}
.txtArea table td.right{
 text-align: right;
}
.txtArea table td.left{
 text-align: left;
}

.youtube{
  position:relative;
  width:90%;
  padding-top:56.25%;
  margin:auto;
}
.youtube iframe{
  position:absolute;
  top:0;
  right:0;
  left:0;
  margin:auto;
  width:100%;
  height:100%;
}



@media screen and (max-width: 768px) {
 
 .ir_message_up{
 margin-bottom: 40px;
 font-size: 12px;
 line-height: 1.5;
}
.ir_message_up p{
 margin-bottom: 18px;
}

.ir_message_up img{
 float: right;
 margin-left: 15px;
 margin-bottom: 20px;
 width: 25%;
}



.txtArea{
 margin-bottom: 40px;
 font-size: 12px;
 line-height: 1.5;
}
 .txtArea h3{
 font-size: 14px;
}

 
.txtArea p{
 margin-bottom: 18px;
}

.txtAreaImg{
 width: 100%;
 margin-bottom: 25px;
}
 
.img_center{
 margin: 0 3% 30px 3%;
 width:94%;
} 
 
.img_left{
 float: none;
 text-align: center;
 margin: 0 3% 30px 3%;
 width:94%;
}
.img_right{
 float: none;
 text-align: center;
 margin: 0 3% 30px 3%;
 width:94%;
}
.img_right_txt{
 float: none;
 width:calc(100%);
}
.img_left_txt{
 float: none;
 width:calc(100%);
}
 
.txtArea ul{
 list-style: none;
 margin: 0 0 20px .5em;
}
.txtArea ul.col_2 li{
 width: 100%;
 display: block;
}
.txtArea ul.col_3 li{
 width: 42%;
 display: inline-block;
}

.txtArea table.spec{
table-layout: fixed !important;
width:100%;
}

.txt_btn a,
.btn_box a{
 font-size: 12px;
}

.txtArea table{
width:100%;
}

.txtArea table th{
 padding: 1%;
 font-size:11px;
}
.txtArea table td{
 padding: 1%;
 font-size:11px;
}

.txtArea table.inline{
width:100%;
}

.txtArea table.inline th{
 padding: 1%;
 display:inline-block;
 width:100% !important;
 font-size:11px;
 text-align:left;
}
.txtArea table.inline td{
 padding: 1% 1% 3%;
 display:inline-block;
 width:100%;
 font-size:11px;
 border:none;
}

.txtArea ul.pageLink li{
border:1px solid #f1f2f6;
border-radius:5px;
padding:.5%;
display:block;
 box-sizing:border-box;
 margin:0 0 1.5%;
}


.txtArea ul.pageLink li a{
 display:block;
 padding:0 2% 0 0;
 width:100%;
 box-sizing:border-box;
 position:relative;
 padding-left:1.5em;
}

.txtArea ul.pageLink li span{
 display:block;
 padding:0 2% 1% 0;
 box-sizing:border-box;
 width:calc(100%);
 padding-left:1.5em;
 
}



.scroll table{
width:745px !important;
}

.txtArea .scroll table{
width:745px !important;
}

.scroll{
overflow: auto !important;r
}
.scroll::-webkit-scrollbar{
 height: 5px;
}
.scroll::-webkit-scrollbar-track{
 background: #F1F1F1;
}
.scroll::-webkit-scrollbar-thumb {
 background: #BCBCBC;
}


}



table.faq{
 width: 670px;
}

table.faq th{
 width: 50px;
 border-bottom: 1px solid #fff;
 text-align: center;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
 padding: 10px;
 box-sizing: border-box;
 background: #e6e6e6;
 font-size: 20px;
}
table.faq th.faqA{
 border-bottom: 3px solid #fff;
}
table.faq td{
 border-bottom: 1px solid #e6e6e6;
 padding: 10px 10px 10px 25px;
 box-sizing: border-box;
 font-size: 14px;
 text-align: left;
 line-height: 1.5;
}
table.faq td.faqA{
 border-bottom: 3px solid #e6e6e6;
}



@media screen and (max-width: 768px) {
 
 table.faq{
 width: 100%;
 }
table.faq th{
 width: 30px;
 font-size: 16px;
}
 table.faq td{
 padding: 10px 10px 10px 15px;
 font-size: 12px;
}
 
}



/* table layout 
-----------------------------------------------------------------------*/


table.normal{
 width: 100%;
 border-top: 1px solid #e6e6e6;
}

table.normal th{
 border-bottom: 1px solid #fff;
 text-align: center;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
 padding: 10px 15px;
 box-sizing: border-box;
 background: #e6e6e6;
 font-size: 14px;
 white-space: nowrap;
 vertical-align: middle;
}

table.normal td{
 border-bottom: 1px solid #e6e6e6;
 padding: 10px 10px 10px 25px;
 box-sizing: border-box;
 font-size: 14px;
 text-align: left;
 line-height: 1.5;
}

table.free{
 width: auto;
 border-top: 1px solid #e6e6e6;
}
table.grid{
 width: 100%;
 border-top: 1px solid #e6e6e6;
 table-layout: fixed;
}

table.free th,
table.grid th{
 width:auto;
 background: #f1f2f6;
 padding: 2%;
 text-align: center;
 font-weight: normal;
 border-bottom: 1px solid #fff;
 border-top: 1px solid #fff;;
 border-left: 1px solid #fff;
 box-sizing:border-box;
vertical-align:middle;
 white-space: nowrap;
}

table.free td,
table.grid td{
 width:auto;
 background: #fff;
 padding: 2%;
 text-align: left;
 font-weight: normal;
 border-bottom: 1px solid #f1f2f6;
 border-top: 1px solid #f1f2f6;
 border-left: 1px solid #f1f2f6;
 line-height: 1.5;
 white-space: normal;
vertical-align:top;
}






@media screen and (max-width: 768px) {
 
 
table.normal{
 width: 100%;
 border-top: none;
}

table.normal th{
 display: inline-block;
 width: 100%;
 border-bottom: none;
 text-align: left;
 padding: 2% 5%;
 font-size: 14px;
}

table.normal td{
 border-bottom: none;
 padding: 4% 4% 7%;
 font-size: 12px;
 text-align: left;
 line-height: 1.5;
 display: inline-block;
 width: 100%;
}

 
}



ul.pdf_list{
 font-size: 14px;
}
ul.pdf_list li span.date{
 padding-right: 1em;
 
}

ul.pdf_list li a.pdf{
 padding-left: 1.5em;
 background: url(../images/ir/pdf.gif) no-repeat left 50%;
 color: #666;
}


@media screen and (max-width: 768px) {
 
ul.pdf_list{
 font-size: 12px;
}
 
 
}




/* use
-----------------------------------------------------------------*/


ul.use_list{
 letter-spacing: -.4em;
position:relative;
margin:0 -10px 0 -10px;
}

ul.use_list li{
 display:inline-block;
 letter-spacing: 0;
 vertical-align: middle; 
 text-align: left;
 margin:0 10px;
 height: 70px;
 margin-bottom: 20px;
}
/*
ul.use_list li:nth-child(3n){
 margin-right: 0;
}
*/

ul.use_list li a{
 width: 320px;
 height: 70px;
 display: table-cell;
 vertical-align: middle;
 border: 1px solid #5e86c0;
 border-radius: 5px;
 box-sizing: border-box;
 padding: 0 20px 0;
 font-size: 14px;
 color: #08469f;
 transition: all .2s ease-in;
}

ul.use_list li a:hover{
 background:#5e86c0;
 border: 1px solid #5e86c0;
 color: #fff;
 text-decoration: none;
}



@media screen and (max-width: 768px) {
 
ul.use_list{
margin:0 0;
}

 ul.use_list li{
 display:inline-block;
 letter-spacing: 0;
 vertical-align: middle; 
 text-align: left;
 margin: 0;
 height: 50px;
 margin-bottom: 10px;
}
/*
ul.use_list li:nth-child(3n){
 margin-right: 0;
 
}
*/
 

 ul.use_list li a{
 width: 900px;
 height: 50px;
 display: table-cell;
 vertical-align: middle;
 border: 1px solid #5e86c0;
 border-radius: 5px;
 box-sizing: border-box;
 padding: 0 5% 0;
 font-size: 12px;
 color: #08469f;
 transition: all .2s ease-in;
}

 
 
 
 
}



.useWrap{
 padding: 50px 80px;
 text-align: left;
 
}


.useWrap h1{
 font-size: 32px;
 color: #333333;
 border-left:4px solid #ed1c24;
 padding-left: 10px;
 letter-spacing: 2px;
 margin-bottom: 50px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}


.useWrap .txtArea{
 margin-bottom: 80px;
 font-size: 14px;
 line-height: 1.5;
}
.useWrap .txtArea h2{
 text-align: left !important;
 font-size: 22px;
 color: #ed1c24;
 letter-spacing: 1px;
 margin-bottom: 25px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}
.useWrap .txtArea h2:before{
 content: "■";
 padding-right: 5px;
}


.useWrap .txtArea h3{
 color: #005caf;
 margin-bottom: 15px;
 font-size: 16px;
 line-height: 1.5;
}

.useWrap .img_center{
 width:100%;
 margin:0 auto 30px;
 text-align: center;
}


.useWrap .img_left{
 float: left;
 text-align: center;
 margin: 0 3% 30px 0;
 width:47%;
}
.useWrap .img_right{
 float: right;
 margin: 0 0 30px 3%;
 width:47%;
 text-align: center;
}
.useWrap .img_right_txt{
 float: left;
 width:calc(100% - 50%);
}
.useWrap .img_left_txt{
 float: right;
 width:calc(100% - 50%);
}

.useWrap .txtArea p{
 margin-bottom: 40px;
}
.useWrap .txtArea.entry p{
 margin-bottom: 20px;
}
.useWrap .txtArea p.size18{
 font-size: 18px;
 line-height: 1.7;
 
}

.useWrap .txtArea p.indent{
 padding-left: 1.2em;
 
}



.useDetail a.usearrow:before{
 content: "▶";
 font-size: 6px;
 vertical-align: middle;
 padding-right: 3px;
 color: #ed1c24;
 text-align:left;

}



table.use_spec{
 table-layout: fixed;
 border: 1px solid #f2f2f2;
 text-align: left;
 width: 660px;
 margin: 0 auto 60px;
}
table.use_spec th{
 padding: 2%;
 text-align: left;
}
table.use_spec th.col_l,table.use_spec td.col_l{
 background: #f1f2f6;
}
table.use_spec th.col_r,table.use_spec td.col_r{
 background: rgba(214,234,255,0.3);
}
table.use_spec td{
 padding: 2%;
}


table.use_relate{
 table-layout: fixed;
 text-align: left;
 width: 100%;
 margin: 0 auto 60px;
}
table.use_relate th{
 padding: 1.5%;
 text-align: left;
 background: #b3b3b3;
 border: 1px solid #fff;
 color: #fff;
}

table.use_relate th span.rotate{
transform:rotate(90deg);
position:relative;
display: inline-block;

}


table.use_relate th.noCell{
 width: 3em !important;
 padding: 1.5%;
 text-align: left;
 background: #fff;
 border: 1px solid #fff;
 
}


table.use_relate th.col_l,table.use_relate td.col_l{
 background: #f1f2f6;
 width: 140px !important;
 border: 1px solid #fff;
}
table.use_relate th.col_r,table.use_relate td.col_r{
 background: rgba(214,234,255,0.3);
 width: 315px !important;
 border: 1px solid #fff;
}
table.use_relate th.col_l{
 background: #b3b3b3;
}
table.use_relate th.col_r{
 background: #b3b3b3;
}
table.use_relate td{
 padding: 1.5%;
 border:  solid #f2f2f2;
 border-width: 1px 0;
}


table.use_security{
border:1px solid #ed1c24;
border-collapse:collapse;
width:100%;
}
table.use_security th{
background:#666666;
text-align:center;
border-collapse:collapse;
font-size:12px;
color:#fff;
padding:1%;
border:solid #ed1c24;
border-width:0 1px 1px 1px;
position:relative;
}
table.use_security th span{
position:absolute;
right:10px;
}

table.use_security td{
border:1px solid #ed1c24;
font-size:12px;
padding:1.5%;
height:auto;
vertical-align:top;
}
table.use_security td a{
color:#333;
}
table.use_security td span a{
color:#666666;
}

table.use_security td span{
font-size:10px;
}
table.use_security td.w115{
width:115px !important;
}
table.use_security td.w130{
width:130px !important;
}
table.use_security td.w140{
width:140px !important;
}
table.use_security td.w145{
width:145px !important;
}
table.use_security td.w160{
width:150px !important;
}
table.use_security td.w190{
width:190px !important;
}
table.use_security td.w320{
width:320px !important;
}
.content_inq_btn{
 margin: 0 auto;
 width: 360px;
 height: 65px;
 border-radius: 5px;
 text-align:center;
}
.content_inq_btn a{
 margin: 0 auto;
 width: 360px;
 height: 65px;
 display: block;
 line-height: 65px;
 border-radius: 5px;
 background: #d50c24;
 color: #fff;
 font-size: 30px;
 font-weight: normal;
 position: relative;
 transition: all .2s ease-in;
}

.content_inq_btn a::before,
.content_inq_btn a::after{
position: absolute;
top: 0;
bottom: 0;
left: 20px;
margin: auto;
content: "";
vertical-align: middle;
}

.content_inq_btn a.arrow6::before{
box-sizing: border-box;
width: 30px;
height: 30px;
border: 1px solid #fff;
-webkit-border-radius: 50%;
border-radius: 50%;
}
.content_inq_btn a.arrow6::after{
left: 30px;
box-sizing: border-box;
width: 12px;
height: 12px;
border: 6px solid transparent;
border-left: 12px solid #fff;
}

.content_inq_btn a:hover{
 background: rgba(213,12,36,0.6);
 color: #fff;
 text-decoration: none;
}


@media screen and (max-width: 768px) {
 
.useWrap{
 padding: 5% 0;
 text-align: left;
 
}


.useWrap h1{
 font-size: 24px;
 border-left:3px solid #ed1c24;
 padding-left: 10px;
 letter-spacing: 2px;
 margin-bottom: 30px;
}


.useWrap .txtArea{
 margin-bottom: 40px;
 font-size: 14px;
 line-height: 1.5;
}
.useWrap .txtArea h2{
 font-size: 15px;
}

.useWrap .txtArea h3{
 font-size: 14px;
}

.useWrap .img_center{
 float: none;
 text-align: center;
 margin: 0 0 30px 0;
 width:100%;
}


.useWrap .img_left{
 float: none;
 text-align: center;
 margin: 0 3% 30px 3%;
 width:94%;
 box-sizing:border-box;
}
.useWrap .img_right{
 float: none;
 text-align: center;
 margin: 0 3% 30px 3%;
 width:94%;
 box-sizing:border-box;
}
.useWrap .img_right_txt{
 float: none;
 width:calc(100%);
}
.useWrap .img_left_txt{
 float: none;
 width:calc(100%);
}

.useWrap .txtArea p{
 margin-bottom: 20px;
 font-size: 12px;
 
}
.useWrap .txtArea.entry p{
 margin-bottom: 20px;
 font-size: 12px;
}
 
.useWrap .txtArea p.size18{
 font-size: 16px;
 line-height: 1.7;
 
}

.useWrap .txtArea p.indent{
 padding-left: 1.2em;
 
}

table.use_spec{
 table-layout: fixed;
 border: 1px solid #f2f2f2;
 text-align: left;
 width: 100%;
 margin: 0 auto 30px;
}

 
 
 .content_inq_btn{
 margin: 0 auto;
 width: 80%;
 height: 45px;
 border-radius: 5px;
}
.content_inq_btn a{
 margin: 0 auto;
 width: 100%;
 height: 45px;
 display: block;
 line-height: 45px;
 border-radius: 5px;
 background: #d50c24;
 color: #fff;
 font-size: 20px;
 font-weight: bold;
 position: relative;
 transition: all .2s ease-in;
}
 


table.use_security{
border:1px solid #ed1c24;
border-top:none;
border-collapse:collapse;
width:100%;
}
table.use_security th{
font-size:11px;
color:#fff;
padding:1%;
border:none;
position:relative;
display:inline-block;
width:100%;
text-align:left;
}
table.use_security th span{
position:relative;
float:right;
display:block;
font-size:10px;
}

table.use_security td{
border:none;
border-top:1px solid #ed1c24;
font-size:12px;
padding:1.5%;
height:auto;
vertical-align:top;
display:inline-block;
width:100%;
box-sizing:border-box;
}
.txtArea table.use_security tr td{
border-left:none;
}
.txtArea table.use_security tr td br{
display:none;
}
.txtArea table.use_security tr td span{
display:block;
}


table.use_security td a{
color:#333;
}
table.use_security td span a{
color:#666666;
}

table.use_security td span{
font-size:10px;
}
table.use_security td.w115{
width:100% !important;
}
table.use_security td.w130{
width:100% !important;
}
table.use_security td.w140{
width:100% !important;
}
table.use_security td.w145{
width:100% !important;
}
table.use_security td.w160{
width:100% !important;
}
table.use_security td.w190{
width:100% !important;
}
table.use_security td.w320{
width:100% !important;
}


 
}





/* keyword
-----------------------------------------------------------------*/


#wideMain.keyword_detail{
 text-align: left;
 padding-bottom: 40px;
}


ul.keyword_list{
 letter-spacing: -.4em;
 text-align: left;
}

#categoryWrap ul.keyword_list{
margin-bottom:50px;
}


ul.keyword_list li{
 display:inline-block;
 letter-spacing: 0;
 vertical-align: middle; 
 text-align: left;
 margin-right: 20px;
 margin-bottom: 20px;
}

ul.keyword_list li a{
 display: table-cell;
 vertical-align: middle;
 border: 1px solid #537ebc;
 border-radius: 5px;
 box-sizing: border-box;
 padding: 12px 15px;
 font-size: 14px;
 color: #fff;
 background: #537ebc;
 transition: all .2s ease-in;
}

ul.keyword_list li a:hover,
ul.keyword_list li a.cr{
 background:#2159a9;
 border: 1px solid #2159a9;
 color: #fff;
 text-decoration: none;
}


.product_index_back h2{
 font-size: 22px;
 color: #333;
 margin-bottom: 30px;
}


.keyword_detail_list li a{
 background: #fff;
 border: 1px solid #e6e6e6;
 border-radius: 5px;
 margin-bottom: 30px;
 padding: 25px 35px;
 overflow: hidden;
 display: block;
 transition: all .2s ease-in;
}
.keyword_detail_list li a:hover{
 text-decoration: none;
 background: #e6e6e6;
}

.keyword_detail_list h3{
 border-left: 5px solid #ed1c24;
 padding-left: 10px;
 color: #ed1c24;
 font-size: 22px;
 margin-bottom: 25px;
 font-weight: bold;
 line-height: 1.2;
}
.keyword_detail_list li p{
 font-size: 14px;
 line-height: 1.5;
 display: table-cell;
 vertical-align: top;
 padding-right: 70px;
}
.keyword_detail_list li .img{
 width: 290px;
 height: 160px;
 border: 1px solid #f4f4f4;
 background: #fff;
 display: table-cell;
 vertical-align: middle;
 text-align: center;
 overflow: hidden;
}

.keyword_detail_list li a p{
 color: #666;
}


@media screen and (max-width: 768px) {
 
 ul.keyword_list li{
  margin: 0 10px 10px 0;
}
  ul.keyword_list li a{
 padding: 8px;
}

#wideMain.keyword_detail{
display:none;
}

.keyword_detail_list li a{
 margin-bottom: 15px;
 padding: 5%;
}
.keyword_detail_list h3{
 border-left: 3px solid #ed1c24;
 font-size: 18px;
 margin-bottom: 15px;
}

.keyword_detail_list li p{
 font-size: 12px;
 line-height: 1.5;
 display: block;
 vertical-align: top;
 padding-right: 0;
 margin-bottom:10px;
}
.keyword_detail_list li .img{
 width: 90%;
 height: auto;
 display: block;
 padding:5%;
 margin-bottom:10px;
}



}



/* products_index
-----------------------------------------------------------------*/

#wideMain.products_index{
 text-align: left;
 padding-bottom: 0;
}

.products_index .cat_list li a{
 border: 1px solid #dadada;
}


.product_index_back{
 background: #f1f2f6;
 width: 100%;
 padding: 88px 0;
}

.product_index_list li{
 background: #fff;
 border: 1px solid #e6e6e6;
 border-radius: 5px;
 margin-bottom: 30px;
 padding: 25px;
 overflow: hidden;
}

.product_index_list li dt{
 border-left: 5px solid #ed1c24;
 padding-left: 10px;
 color: #ed1c24;
 font-size: 22px;
 margin-bottom: 25px;
 font-weight: bold;
 line-height: 1.2;
}
.product_index_list li dd{
display: block;
}

.product_index_list li dd li{
 margin-left: 55px;
 float: left;
 width: 405px;
 margin-bottom: 25px;
 font-size: 14px;
 padding: 0;
 background: none;
 border: none;
}
.product_index_list li dd li a{
 color: #666;
 text-decoration: none;
 position: relative;
display: inline-block;
vertical-align: middle;
 padding-left: 30px;
}

.product_index_list li dd li a::before,
.product_index_list li dd li a::after{
position: absolute;
top: 0;
bottom: 0;
left: 0;
 right: auto;
margin: auto;
content: "";
vertical-align: middle;
}
.product_index_list li dd li a.arrow-pr::before{
width: 20px;
height: 20px;
background: #d6eaff;
}
.product_index_list li dd li a.arrow-pr::after{
 right: auto;
 left: 5px;
width: 5px;
height: 5px;
border-top: 1px solid #9199a1;
border-right: 1px solid #9199a1;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.product_index_list li dd li a:hover{
 text-decoration: underline;
 
}




@media screen and (max-width: 768px) {
 
#wideMain.products_index{
 display: none;
}
 
 .product_index_back{
 padding: 5%;
  box-sizing: border-box;
}

 .product_index_back h2{
 font-size:16px;
}
 
 
.product_index_list li{
 background: #fff;
 border: 1px solid #e6e6e6;
 border-radius: 5px;
 margin-bottom: 3%;
 padding: 5% 5% 0;
 overflow: hidden;
 position:relative;
}


 .product_index_list li dt{
 border-left: 3px solid #ed1c24;
 padding-left: 10px;
 font-size: 14px;
 margin-bottom: 5%;
 cursor:pointer;
 position:relative;
}


 .product_index_list li dt::before,
 .product_index_list li dt::after{
position: absolute;
top: 0;
bottom: 0;
right: 10px;
margin: auto;
content: "";
vertical-align: middle;
}

 .product_index_list li dt.arrow13::before{
width: 15px;
height: 15px;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #fff;
 border: 1px solid #666;
}
 .product_index_list li dt.arrow13::after{
right: 14px;
 top: 5px;
box-sizing: border-box;
width: 6px;
height: 6px;
border: 4px solid transparent;
border-left: 5px solid #666;
transform: rotate(90deg);
 transition: all .2s ease-in;
}
.product_index_list li dt.arrow13.cr::after{
right: 14px;
 top: -5px;
box-sizing: border-box;
width: 6px;
height: 6px;
border: 4px solid transparent;
border-left: 5px solid #666;
transform: rotate(270deg);
}


 .product_index_list li dd {
 display:none;
 }
 

.product_index_list li dd li{
 margin-left: 5%;
 float: none;
 display: block;
 width: 100%;
 margin-bottom: 5%;
 font-size: 12px;
}



.product_index_list li dd li a{
 color: #666;
 text-decoration: none;
 position: relative;
display: inline-block;
vertical-align: middle;
 padding-left: 2em;
}

.product_index_list li dd li a.arrow-pr::before{
width: 14px;
height: 14px;
background: #d6eaff;
}
.product_index_list li dd li a.arrow-pr::after{
 left: 2px;
}


 
 
 
}




.category_tit{
 background: url(../images/products/category_index_back.jpg) no-repeat bottom center;
 background-size: cover;
 height:245px;
 box-sizing: border-box;
 position: relative;
 margin-bottom: 90px;
}

.category_tit .security{
 background: url(../images/top/cat_ico_01.svg) no-repeat  center 0;
 background-size: 170px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
}
.category_tit .quality{
 background: url(../images/top/cat_ico_02.svg) no-repeat  center 0;
 background-size: 170px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
}
 .category_tit .car{
 background: url(../images/top/cat_ico_03.svg) no-repeat  center 0;
 background-size: 170px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
}
 .category_tit .securitytools{
 background: url(../images/top/cat_ico_04.svg) no-repeat  center 0;
 background-size: 170px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
}
 .category_tit .network{
 background: url(../images/top/cat_ico_05.svg) no-repeat  center 0;
 background-size: 170px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
}
 .category_tit .connect{
 background: url(../images/top/cat_ico_06.svg) no-repeat  center 0;
 background-size: 170px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
}
 .category_tit .wireless{
 background: url(../images/top/cat_ico_07.svg) no-repeat  center 0;
 background-size: 170px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
}
 .category_tit .os{
 background: url(../images/top/cat_ico_08.svg) no-repeat  center 0;
 background-size: 170px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
}
 .category_tit .storage{
 background: url(../images/top/cat_ico_09.svg) no-repeat  center 0;
 background-size: 170px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
}
 .category_tit .career{
 background: url(../images/top/cat_ico_10.svg) no-repeat  center 0;
 background-size: 170px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
}
 .category_tit .video-ui{
 background: url(../images/top/cat_ico_11.svg) no-repeat  center 0;
 background-size: 150px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
  width: 100%;
}
 .category_tit .utility{
 background: url(../images/top/cat_ico_12.svg) no-repeat  center 0;
 background-size: 150px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
}
 .category_tit .ai{
 background: url(../images/top/cat_ico_13.svg) no-repeat  center 0;
 background-size: 150px;
 height: 100%;
 padding: 55px 0 0 80px;
 opacity: 0.2;
}

 



#mainContents .category_tit h1{
 font-size: 30px;
 border-left:none;
 padding-left: 0;
 letter-spacing: 0;
 margin-bottom: 0;
 position: absolute;
 top: 55px;
 left: 80px;
}

.category_tit p{
 margin: 0 0 0 0;
 font-size: 20px;
 line-height: 1.5;
 text-align: left;
 position: absolute;
 top: 125px;
 left: 80px;
 color: #333333;
}




@media screen and (max-width: 768px) {
 
 
.category_tit{
 background: url(../images/products/category_index_back.jpg) no-repeat bottom center;
 background-size: cover;
 height:170px;
 box-sizing: border-box;
 position: relative;
 margin-bottom: 0;
 margin: -10% -6% 30%;
}

.category_tit .security{
 background: url(../images/top/cat_ico_01.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
.category_tit .quality{
 background: url(../images/top/cat_ico_02.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
 .category_tit .car{
 background: url(../images/top/cat_ico_03.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
 .category_tit .securitytools{
 background: url(../images/top/cat_ico_04.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
 .category_tit .network{
 background: url(../images/top/cat_ico_05.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
 .category_tit .connect{
 background: url(../images/top/cat_ico_06.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
 .category_tit .wireless{
 background: url(../images/top/cat_ico_07.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
 .category_tit .os{
 background: url(../images/top/cat_ico_08.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
 .category_tit .storage{
 background: url(../images/top/cat_ico_09.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
 .category_tit .career{
 background: url(../images/top/cat_ico_10.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
 .category_tit .video-ui{
 background: url(../images/top/cat_ico_11.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
 .category_tit .utility{
 background: url(../images/top/cat_ico_12.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
 .category_tit .ai{
 background: url(../images/top/cat_ico_13.svg) no-repeat  center 0;
 background-size: 130px;
 height: 100%;
 padding: 0 0 0 0;
 opacity: 0.2;
}
 

#mainContents .category_tit h1{
 font-size: 22px;
 border-left:none;
 padding-left: 0;
 letter-spacing: 0;
 margin-bottom: 0;
 position: absolute;
 top: 40%;
 left: 10%;
}

.category_tit p{
 margin: 0 0 0 0;
 font-size: 13px;
 line-height: 1.5;
 text-align: center;
 position: relative;
 top: auto;
 left: auto;
 color: #333333;
 background: #fff;
 padding: 5%;
}

 
}





#mainContents .category_index h2{
 font-size: 22px;
 letter-spacing: 0;
 margin-bottom: 18px;
}

#mainContents .category_index h3{
 font-size: 18px;
 line-height: 1.5;
 margin-bottom: 25px;
}



@media screen and (max-width: 768px) {
 
 
#mainContents .category_index h2{
 font-size: 18px;
 letter-spacing: 0;
 margin-bottom: 12px;
}

#mainContents .category_index h3{
 font-size: 15px;
 line-height: 1.5;
 margin-bottom: 18px;
}


 
}




ul.category_index_list{
 padding-bottom: 60px;
 overflow: hidden;
}

ul.category_index_list li{
 width: 360px;
 float: left;
 margin:0 20px 20px 0;
 box-sizing: border-box;
 border: 1px solid #e6e6e6;
 border-radius: 5px;
 overflow: hidden;
}
ul.category_index_list li:nth-child(2n){
 margin:0 0 20px 0;
}

ul.category_index_list li a{
 display: block;
 width: 100%;
 padding: 25px;
 box-sizing: border-box;
 text-decoration: none;
 transition: all .2s ease-in;
}
 
#mainContents ul.category_index_list li a h3{
 border-left: 5px solid #ed1c24;
 padding-left: 10px;
 font-size: 16px;
 color: #333;
 margin: 0;
}
ul.category_index_list li a p{
 font-size: 14px;
 color: #666;
 line-height: 1.5;
 padding-top: 20px;
}

ul.category_index_list li a:hover{
 background: #e6e6e6;
 box-sizing: border-box;
 width: 100%;
}



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

ul.category_index_list{
 padding-bottom: 30px;
 overflow: hidden;
}


ul.category_index_list li{
 width: 100%;
 float: none;
 margin:0 0 5% 0;
 box-sizing: border-box;
 border: 1px solid #e6e6e6;
 border-radius: 5px;
 overflow: hidden;
} 
ul.category_index_list li:nth-child(2n){
 margin:0 0 5% 0;
}
 
 ul.category_index_list li a{
 padding: 5%;
}
 
 
}



.product_tab{
 margin-bottom: 40px;
 overflow: hidden;
 
}
.product_tab li{
 width: 140px;
 float: left;
 margin-right: 10px;
 margin-bottom: 15px;
}
.product_tab li:nth-child(5n){
 margin-right: 0;
}


.product_tab li a{
 width: 140px;
 height: 40px;
 display: table-cell;
 vertical-align: middle;
 text-align: center;
 border: 1px solid #b5b5b5;
 transition: all .2s ease-in;
 font-size: 14px;
 color: #333333;
 box-sizing: border-box;
 padding: 0 2%;
}
.product_tab li a:hover,
.product_tab li a.cr{
 width: 140px;
 height: 40px;
 display: table-cell;
 vertical-align: middle;
 text-align: center;
 border: 1px solid #b5b5b5;
 background: #ed1c24;
 color: #fff;
 text-decoration: none;
}


.product_tab li.over{
 width: 240px;
}
.product_tab li.over a{
 width: 240px;
 }



@media screen and (max-width: 768px) {
 
 
.product_tab{
 margin-bottom: 30px;
 overflow: hidden;
 
}
.product_tab li{
 width: 48%;
 float: left;
 margin-right: 1%;
 margin-bottom: 2%;
}
.product_tab li.over{
 width: 48%;
}
.product_tab li.over a{
 width: 48%;
 }
 
.product_tab li:nth-child(2n){
 margin-right: 0;
 margin-left: 1%;
}
.product_tab li:nth-child(5n){
 margin-right: 1%;
 margin-left: 0;
}

.product_tab li a{
 width:400px;
 height: 40px;
}
.product_tab li a:hover,
.product_tab li a.cr{
 width:400px;
 height: 40px;
}

 
 
}




.ly-b{
width:calc(100% / 5.5);
box-sizing:border-box;
padding:0 5px 10px;
display:inline-block;
text-align:center;
vertical-align:top;
}


.download{
 text-align: left;
}



#wideMain .download h2{
 text-align: left;
 font-size: 22px;
 color: #ed1c24;
 letter-spacing: 1px;
 margin-bottom: 25px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}
.download h2:before{
 content: "■";
 padding-right: 5px;
}

.download ul{
 padding-bottom: 40px;
 overflow: hidden;
}


.download li{
 float: left;
 margin: 0 20px 20px 0;
}
.download li:nth-child(3n){
 float: left;
 margin: 0 0 20px 0;
}

.download li a{
 width: 320px;
 padding: 15px 10px;
 border: 1px solid #e6e6e6;
 box-sizing: border-box;
 border-radius: 5px;
 display: block;
 text-decoration: underline;
 transition: all .2s ease-in;
 
}
.download li img{
 margin-bottom: 10px;
 
}

.download li a p{
 margin: 0;
}

.download li a:hover{
 background: #e6e6e6;
 text-decoration: none;
}


@media screen and (max-width: 768px) {
 
 #wideMain .download h2{
 font-size: 18px;
 margin-bottom: 20px;
}
.download ul{
 padding-bottom: 25px;
 overflow: hidden;
}


.download li{
 float: left;
 width: 48%;
 margin: 0 1% 2% 1%;
}
.download li:nth-child(2n){
 float: left;
 margin: 0 1% 2% 1%;
}
 .download li:nth-child(3n){
 margin: 0 1% 2% 1%;
 }
 
 
.download li a{
 width: 100%;
 padding: 5% 4%;
 border: 1px solid #e6e6e6;
 box-sizing: border-box;
 border-radius: 5px;
 display: block;
 text-decoration: underline;
 transition: all .2s ease-in;
 
}
 
 
}




/* company
-----------------------------------------------------------------*/


.company_tab{
 margin-bottom: 60px;
 overflow: hidden;
 letter-spacing: -.4em;
}
.company_tab.recruit{
 margin-bottom: 15px;
 overflow: hidden;
 letter-spacing: -.4em;
}
.company_tab.recruit.index{
 margin-bottom: 60px;
 overflow: hidden;
 letter-spacing: -.4em;
}
.company_tab li{
 width: 270px;
 display: inline-block;
 margin: 0 6px;
 border: 1px solid #b5b5b5;
}

.company_tab.recruit li{
 width: 200px;
 display: inline-block;
 margin: 0 6px;
 border: 1px solid #b5b5b5;
}


.company_tab li a{
 width:100%;
 height: 40px;
 display: block;
 line-height: 40px;
 color: #333333;
 letter-spacing: 0;
 transition: all .2s ease-in;
}
.company_tab li a:hover,
.company_tab li a.cr{
 background: #ed1c24;
 color: #fff;
 text-decoration: none;
}



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

.company_tab li{
 width: 90%;
 display: inline-block;
 margin: 0 6px 6px;
 border: 1px solid #b5b5b5;
}



}



.company_greeting{
 padding: 0 90px 80px;
}


.company_greeting h2{
 color: #333;
 line-height: 1.5;
 margin-bottom: 30px;
}
.company_greeting p{
 line-height: 1.5;
 margin-bottom: 25px;
 text-align: left;
}



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

.company_greeting{
 padding: 0 5% 30px;
}



}



table.companyTb{
 width: 100%;
 color: #333;
 line-height: 1.5;
 font-size: 14px;
}

table.companyTb th{
 width: 380px;
 border:solid #fff;
 border-width: 1px 0 1px;
 background: #f1f2f6;
 padding: 2%;
 text-align: center;
 font-weight: normal;
 vertical-align: middle;
}
table.companyTb th.place{
 width: 135px;
}
table.companyTb th.place2{
 width: 240px;
}
table.companyTb td{
 padding: 2% 4%;
 text-align: left;
 vertical-align: middle;
 border:solid #f1f2f6;
 border-width: 1px 0 1px;
}

table.companyTb td .map_txt{
 display: table-cell;
}

table.companyTb td .map{
 padding-left: 3em;
 display: table-cell;
 vertical-align: top;
}
table.companyTb td .map a{
 padding: 1px 4px;
 color: #fff;
 font-size: 13px;
 background: #ed1c24;
 border-radius: 5px;
 display: inline-block;
 border:1px solid #ed1c24;
 transition: all .2s ease-in;
}
table.companyTb td .map a:hover{
 text-decoration: none;
 border:1px solid #ed1c24;
 background: #fff;
 color: #ed1c24;
 
}


table.companyTb td dl{
 display: table;
 margin-bottom: 20px;
 
}
table.companyTb td dl dt{
 display: table-cell;
 vertical-align: middle;
 
}
table.companyTb td dl dd{
 display: table-cell;
 padding-left: 35px;
 vertical-align: middle;
}

table.companyTb td dl dd span.class{
 display: block;
}

table.companyTb td dl.noImg dd{
 padding-left: 0;
}

table.companyTb td dl.noImg dd span.class{
 display: inline-block;
 padding-right: 25px;
 width: 8em;
}



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


table.companyTb{
 width: 100%;
 color: #333;
 line-height: 1.5;
 font-size: 12px;
 box-sizing:border-box;
}

table.companyTb th{
 width: 100%;
 display:inline-block;
 border: none;
 padding: 2%;
 box-sizing:border-box;
 text-align:left;
}
table.companyTb th.place{
 width: 100%;
}
table.companyTb th.place2{
 width: 100%;
 background: #fff;
 border:none;
 text-align:left;
 font-weight:bold;
 padding-bottom:0;
}
table.companyTb td{
 width: 100%;
 display:inline-block;
 padding: 3% 4% 5%;
 text-align: left;
 vertical-align: middle;
 border:none;
 box-sizing:border-box;
}

table.companyTb td dl dt{
 display: table-cell;
 vertical-align: middle;
 width:30%;
 
}
table.companyTb td dl.noImg dt{
display:none;
}

table.companyTb td dl dd{
 display: table-cell;
 padding-left: 15px;
 vertical-align: middle;
}

}








.access_wrap{
 padding: 0 90px;
 text-align: left;
}
#wideMain .access_wrap h2{
 text-align: left;
 font-size: 22px;
 color: #ed1c24;
 letter-spacing: 1px;
 margin-bottom: 25px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}
.access_wrap h2:before{
 content: "■";
 padding-right: 5px;
}


.access_wrap dl{
 display: table;
 margin-bottom: 30px;
 
}
.access_wrap dl dt{
 display: table-cell;
 vertical-align: top;
 text-align: right;
}
.access_wrap dl dd{
 display: table-cell;
 padding-left: 20px;
}
.findus{
 width: 405px !important;
 height: 305px !important;
 min-height: 305px !important;
}

.access_wrap dl dd p{
 margin-bottom: 25px;
 line-height: 1.5;
 
}

.access_wrap dl dt .partnerlogo{
 width: 200px !important;
 min-width: 200px;
 height: 110px;
 display: table-cell;
 border: 1px solid #ececec;
 border-radius: 5px;
 vertical-align: middle;
 text-align: center;
 box-sizing: border-box;
 padding: 10px;
}


.access_wrap dl dd h3{
 font-size: 16px;
 margin-bottom: 5px;
}
.access_wrap dl dd h3 a{
 color: #4a6ea7;
 text-decoration: underline;
}
.access_wrap dl dd h3 a:hover{
 color: #4a6ea7;
 text-decoration: none;
}



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


.access_wrap{
 padding: 0 5%;
 text-align: left;
}
#wideMain .access_wrap h2{
 font-size: 18px;
 margin-bottom: 20px;
}


.access_wrap dl{
 display: block;
 width:100%;
 margin-bottom: 30px;
 
}
.access_wrap dl dt{
 display: block;
 text-align: right;
 width:100%;
 margin-bottom: 15px;
}
.access_wrap dl dd{
 display: block;
 padding-left: 0;
 width:100%;
}
.findus{
 width: 100% !important;
 height: 250px !important;
 min-height: 250px !important;
}

.access_wrap dl dd p{
 margin-bottom: 25px;
 line-height: 1.5;
 
}

.access_wrap dl dt .partnerlogo{
 width: 150px !important;
 min-width: 150px;
 height: 80px;
 display: table-cell;
 border: 1px solid #ececec;
 border-radius: 5px;
 vertical-align: middle;
 text-align: center;
 box-sizing: border-box;
 padding: 10px;

}


.access_wrap dl dd h3{
 font-size: 14px;
 margin-bottom: 5px;
}




}






/* case
--------------------------------------------------------------------*/

.case_list li{
 width:235px;
 margin-right: 20px;
 margin-bottom: 55px;
 float: left;
 text-align: left;
}
.case_list li:nth-child(4n){
 margin-right: 0;
}

.case_list li .img{
 margin-bottom: 15px;
 display: block;
 border-radius: 5px;
 overflow: hidden;
 height: 115px;
 text-align: center;
 position: relative;
}
.case_list li .img img{
 width: 100%;
 height: auto;
 position: absolute;
 top: 0;
 bottom: 0;
 left:0;
 right: 0;
 margin: auto;
}



.case_list li h3{
 font-size: 14px;
 line-height: 1.5;
 margin-bottom: 15px;
}
.case_list li dl{
 font-size: 14px;
 line-height: 1.5;
}
.case_list li dt{
 text-indent: -.5em;
}
.case_list li dd a{
 text-decoration: underline;
}
.case_list li dd a:hover{
 text-decoration: none;
}

.case_list li a h3{
 color: #666;
}


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


.case_list li{
 width:48%;
 margin: 0 1% 5%;
 float: left;
 text-align: left;
}

.case_list li:nth-child(4n){

 margin: 0 1% 5%;
}

.case_list li .img{
 margin-bottom: 5px;
 display: block;
 border-radius: 5px;
 overflow: hidden;
 height: 100px;
 text-align: center;
 position: relative;
}


.case_list li h3{
 font-size: 12px;
 line-height: 1.5;
 margin-bottom: 15px;
}
.case_list li dl{
 font-size: 10px;
 line-height: 1.5;
}

}



/* recruit
-----------------------------------------------------------------*/

.recruit_tab{
 width: 840px;
 margin: 0 auto 20px;
 border-bottom: 1px solid #b5b5b5;
 overflow: hidden;
}
.recruit_tab:last-of-type{
 margin: 0 auto 80px;
}


.recruit_tab li{
 width: 160px;
 float: left;
 margin: 0 10px 0 0;
 border: 1px solid #b5b5b5;
 margin-bottom: -1px;
 box-sizing: border-box;
}
.recruit_tab li:nth-child(5n){
 margin-right: 0;
}

.recruit_tab li a{
 width:200px;
 height: 40px;
 display: table-cell;
 color: #333333;
 letter-spacing: 0;
 box-sizing: border-box;
 padding: 2%;
 transition: all .2s ease-in;
 vertical-align:middle;
}
.recruit_tab li a:hover,
.recruit_tab li a.cr{
 background: #ed1c24;
 color: #fff;
 text-decoration: none;
}





.recruitWrap{
 padding: 0 0 80px;
}


#wideMain .recruitWrap h2{
 color: #333;
 line-height: 1.5;
 margin-bottom: 60px;
}
.recruitWrap p{
 line-height: 1.5;
 margin-bottom: 25px;
 text-align: left;
}



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

 
.company_tab.recruit{
 margin-bottom: 15px;
 overflow: hidden;
 letter-spacing: -.4em;
}
.company_tab.recruit.index{
 margin-bottom: 15px;
 overflow: hidden;
 letter-spacing: -.4em;
}
.company_tab.recruit li{
 width: 48%;
 float: left;
 margin: 0 1% 2% 0;
}
 .company_tab.recruit li:nth-child(2n){
 margin: 0 0 2% 1%;
 }

 .company_tab.recruit li a:hover{
 color: #fff; 
 }
 
 
.recruitWrap{
 padding: 0 0 30px;
}
#wideMain .recruitWrap h2{
 color: #333;
 text-align: center;
 line-height: 1.5;
 margin-bottom: 15px;
}

.recruit_tab{
width:100%;
}



.recruit_tab dl{
width:100%;
box-sizing:border-box;
 background: #fff;
 border: 1px solid #e6e6e6;
 border-radius: 5px;
 margin-bottom: 3%;
 padding: 5% 5% 0;
 overflow: hidden;
}
 
.recruit_tab dl dt{
 padding-left: 10px;
 font-size: 14px;
 margin-bottom: 5%;
 cursor:pointer;
 text-align:left;
 position: relative;
}

.recruit_tab dl dd {
 display:none;
 }
 

.recruit_tab dl dd li{
 margin-left: 0;
 float: none;
 display: block;
 width: 100%;
 margin-bottom: 2%;
 font-size: 12px;
 border:none;
 text-align:left;
 line-height:1;
}
.recruit_tab dl dd li a{
 color: #666;
 text-decoration: none;
 position: relative;
display: inline-block;
vertical-align: middle;
height:auto;
padding:3%;
 width: 100%;
 line-height:1;
}


.recruit_tab dl dt::before,
.recruit_tab dl dt::after{
position: absolute;
top: 0;
bottom: 0;
right: 10px;
margin: auto;
content: "";
vertical-align: middle;
}

.recruit_tab dl dt.arrow12::before{
width: 15px;
height: 15px;
-webkit-border-radius: 50%;
border-radius: 50%;
background: #fff;
 border: 1px solid #666;
}
.recruit_tab dl dt.arrow12::after{
right: 14px;
 top: 5px;
box-sizing: border-box;
width: 6px;
height: 6px;
border: 4px solid transparent;
border-left: 5px solid #666;
transform: rotate(90deg);
 transition: all .2s ease-in;
}
.recruit_tab dl dt.arrow12.cr::after{
right: 14px;
 top: -5px;
box-sizing: border-box;
width: 6px;
height: 6px;
border: 4px solid transparent;
border-left: 5px solid #666;
transform: rotate(270deg);
}



}



table.recruitTb{
 width: 100%;
 color: #333;
 line-height: 1.5;
 font-size: 14px;
 margin-bottom: 100px;
 table-layout: fixed;
}

table.recruitTb th{
 width: 270px !important;
 border:solid #fff;
 border-width: 1px 0 1px;
 background: #f1f2f6;
 padding: 1.5% 2%;
 text-align: center;
 font-weight: normal;
 vertical-align: middle;
 box-sizing: border-box;
}

table.recruitTb td{
 padding: 1.5% 4%;
 text-align: left;
 vertical-align: middle;
 border:solid #f1f2f6;
 border-width: 1px 0 1px;
}

table.recruitTb td input,
table.recruitTb td select{
 background: #fff;
 border: 1px solid #b5b5b5;
 padding: 1%;
 font-size: 16px;
 box-sizing: border-box;
 line-height:1.5;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}
table.recruitTb td input.inp1{
 width: 50%;
}
table.recruitTb td input.inp2{
 width: 100%;
}
table.recruitTb td input.inp3{
 width: 75%;
}
table.recruitTb td span{
 font-size: 12px;
 display: block;
 padding-bottom: 5px
}




table.recruitTb td ul{
 list-style: none;
 margin: 10px 0 20px 0;
}


table.recruitTb td li{
 line-height: 1.5;
 margin-bottom: .5em;;
 display: block;
 text-indent: -1.5em;
 margin-left: 1.5em;
}

table.recruitTb td li:before{
 content: "■";
 margin-right: .5em
}

table.recruitTb td li ul{
 list-style:none;
 margin: 5px 0 10px 0;
}

table.recruitTb td li li{
 margin-bottom: .5em;
 text-indent: -1em;
 margin-left: 1em;
}

table.recruitTb td li ul li:before{
 content: "■";
 font-size: 70%;
 margin-right: .5em
}

table.recruitTb ul:last-of-type{
 margin: 10px 0 0 0;
}
table.recruitTb p:last-of-type{
 margin: 0 0 0 0;
}

.recruitEntry{
 padding: 40px 0 0;
 text-align: left;
}

.recruitEntry p{
 line-height: 1.5;
 margin-bottom: 50px;
}


.recruitEntry h1{
 font-size: 32px;
 color: #333333;
 border-left:4px solid #ed1c24;
 padding-left: 10px;
 letter-spacing: 2px;
 margin-bottom: 50px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}
.recruitEntry h1 span{
 font-size: 16px;
 display: block;
 letter-spacing: 1px;
}

.privacy{
 text-align: right;
}

.send_btn{
 height: 60px;
 margin: auto;
 margin-bottom: 80px;
 text-align:center;
}

.send_btn input{
 margin: 0 2%;
 width: 320px;
 height: 60px;
 display: inline-block;
 line-height: 60px;
 border-radius: 5px;
 background: #d50c24;
 color: #fff;
 font-size: 22px;
-webkit-appearance : none;
appearance : none;
 font-weight: normal;
 position: relative;
 transition: all .2s ease-in;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
 border: none;
 cursor:pointer;
}

.send_btn input:hover{
 background: rgba(213,12,36,0.6);
 color: #fff;
 text-decoration: none;
}

.send_btn input.send_back{
 width: 280px;
 background: #b5b5b5;
 font-size: 18px;
}

.send_btn input.send_back:hover{
 background: rgba(181,181,181,0.6);
 color: #fff;
 text-decoration: none;
}


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

.recruitEntry h1{
 font-size:24px;
 border-left:3px solid #ed1c24;
 padding-left: 10px;
 letter-spacing: 2px;
 margin-bottom: 30px;
}
.recruitEntry h1 span{
 font-size: 10px;
 display: block;
 letter-spacing: 1px;
}
 
 
table.recruitTb{
 width: 100%;
 color: #333;
 line-height: 1.5;
 font-size: 12px;
 box-sizing:border-box;
 margin-bottom: 30px;
}

table.recruitTb th{
 width: 100% !important;
 display:inline-block;
 border: none;
 padding: 2%;
 box-sizing:border-box;
 text-align:left;
}

table.recruitTb td{
 width: 100%;
 display:inline-block;
 padding: 3% 4% 5%;
 text-align: left;
 vertical-align: middle;
 border:none;
 box-sizing:border-box;
}

 table.recruitTb td input,
table.recruitTb td select{
 font-size: 12px;
}
 
 table.recruitTb td input.inp1{
 width: 100%;
}
table.recruitTb td input.inp2{
 width: 100%;
}
table.recruitTb td input.inp3{
 width: 100%;
}
 table.recruitTb td select{
 width: 100%;
}
 
.send_btn input.send_back{
 width: 90%;
 margin-bottom: 20px;
}

.send_btn{
 width: 90%;
 height: 50px;
 margin: auto;
 margin-bottom: 40px;
}

.send_btn input{
 margin: 0 auto;
 width: 90%;
 height: 50px;
 display: block;
 line-height: 50px;
 border-radius: 5px;
 background: #d50c24;
 color: #fff;
 font-size: 18px;
 font-weight: normal;
 position: relative;
 transition: all .2s ease-in;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}
 
 

}




/* greeting
-------------------------------------------------------*/




.greeting_title{
 height: 500px;
 background: url(../images/top/top_visual_back.jpg) no-repeat bottom center;
 background-size: cover;
 position: relative;
}
.greeting_titleIn{
 position: relative;
 width: 1000px;
 margin: auto;
 text-align: left;
}


.greeting_titleIn h1{
 position: absolute;
 left: 0;
 top: 85px;
font-family: 'Roboto', sans-serif !important;
font-size: 66px;
 font-weight:900;
 margin-bottom: 10px;
 color: #333333;
}
.greeting_titleIn h1 span{
 font-size: 27px;
 font-weight: bold;
 display: block;
 padding-bottom: 4px;
}
.greeting_titleIn h1 em{
 font-size: 38px;
 font-weight: bold;
 font-style: normal;
 display: block;
}

.greeting_titleIn h1 strong:first-of-type{
 display: inline-block;
 text-indent: -.51em;
}

@media screen and (max-width: 768px) {
 
 
 
.top_visual{
 height: auto;
}

.slide_wrap{
 position: relative;
 height: auto;
}

.greeting_title{
 height: auto;
 background: url(../images/top/top_visual_back.jpg) no-repeat bottom center;
 background-size: 150% auto;
 position: relative;
}
 
 .greeting_titleIn{
 position: relative;
 top: auto;
 width: 100%;
 margin: auto;
 right: 0;
 left: 0;
 padding: 25% 10% 15%;
}

.greeting_titleIn h1{
font-size: 25px;
 top: 20%;
 left:5%;
}

 .greeting_titleIn h1 span{
 font-size: 12px;
}
.greeting_titleIn h1 em{
 font-size: 16px;
}
 

 
}




.gr01{
 background: url(../images/greeting/tougou_10_ol-01_02.jpg) no-repeat bottom center;
 background-size: 100%;
 text-align: center;
 padding: 80px 0;
}
.gr01 h2{
 font-size: 32px;
 color: #005caf;
}


.gr01 h2.gr01One{
 color: #666;
 font-size: 24px;
 line-height: 1.7;
 margin-bottom: 60px;
}

.gr01 p{
 font-size: 16px;
 line-height: 1.7;
 margin-bottom: 35px;
}
.gr01 .txtArea{
 padding-bottom: 50px;
}



@media screen and (max-width: 768px) {
 
 
.gr01{
 background: url(../images/greeting/tougou_10_ol-01_02.jpg) no-repeat bottom center;
 background-size: 100%;
 text-align: center;
 padding: 5% 5%;
 box-sizing: border-box;
}
.gr01 h2{
 font-size: 20px;
 color: #005caf;
}


.gr01 h2.gr01One{
 color: #666;
 font-size: 18px;
 line-height: 1.7;
 margin-bottom: 30px;
}

.gr01 p{
 font-size: 14px;
 line-height: 1.7;
 margin-bottom: 20px;
}
.gr01 .txtArea{
 padding-bottom: 30px;
}

 
 
 
}




.gr02{
 height: 500px;
 overflow: hidden;
 position: relative;
 background: url(../images/greeting/tougou_10_ol-01_03.jpg) no-repeat top center;
 background-size: cover;
}
.gr02.kato{
 height: 500px;
 overflow: hidden;
 position: relative;
 background: url(../images/greeting/tougou_10_ol-01_07.jpg) no-repeat top center;
 background-size: cover;
}


.gr02In{
 width: 1000px;
 height: 500px;
 margin: 0 auto;
 position: relative;
 z-index: 2;
}

.gr02In .name{
 position: absolute;
 left: 0;
 bottom: 160px;
 text-align: left;
 font-size: 17px;
 z-index: 2;
 line-height: 1.5;
}

.grIn2 .name{
 position: relative;
 left: auto;
 bottom: auto;
 text-align: left;
 font-size: 17px;
 z-index: 2;
 line-height: 1.5;
}

.name span{
 font-size: 16px;
 display: block;
}
.name strong{
 font-size: 22px;
 display: block;
 font-weight: normal;
}


@media screen and (max-width: 768px) {
 
 .gr02{
 height: 250px;
 overflow: hidden;
 position: relative;
 background: url(../images/greeting/tougou_10_ol-01_03_sp.jpg) no-repeat top right;
 background-size: cover;
}
.gr02.kato{
 height: 250px;
 overflow: hidden;
 position: relative;
 background: url(../images/greeting/tougou_10_ol-01_07_sp.jpg) no-repeat top right;
 background-size: cover;
}


.gr02In{
 width: 100%;
 height: 250px;
 margin: 0 auto;
 position: relative;
 z-index: 2;
}

.gr02In .name{
 position: absolute;
 left: 5%;
 bottom: 20%;
 text-align: left;
 font-size: 12px;
 z-index: 2;
 line-height: 1.5;
}

.grIn2 .name{
 position: relative;
 left: auto;
 bottom: auto;
 text-align: left;
 font-size: 12px;
 z-index: 2;
 line-height: 1.5;
}

.name span{
 font-size: 11px;
 display: block;
}
.name strong{
 font-size: 16px;
 display: block;
 font-weight: normal;
}
 
}




.gr03{
 background: url(../images/greeting/tougou_10_ol-01_05.jpg) no-repeat bottom center;
 background-size: cover;
 position: relative;
 margin-bottom: -80px;
}
.gr04{
 background: url(../images/greeting/tougou_10_ol-01_08.jpg) no-repeat bottom center;
 background-size: cover;
 position: relative;
 margin-bottom: -80px;
 z-index: 3;
}

@media screen and (max-width: 768px) {
 
 .gr03{
 position: relative;
 margin-bottom: -40px;
}
.gr04{
 position: relative;
 margin-bottom: -40px;
 z-index: 3;
}
 
 
}



.grIn{
 width: 1000px;
 margin: 0 auto 0;
 background: #fff;
 padding: 80px;
 box-sizing: border-box;
 z-index: 4;
 position: relative;
 top: -80px;
 text-align: left;
 
}
.grIn h3{
 font-size: 24px;
 color: #cd1f31;
 line-height: 1.6;
 margin-bottom: 40px;
}
.grIn p{
 margin-bottom: 25px;
 line-height: 1.7;
}


@media screen and (max-width: 768px) {
 
 
.grIn{
 width: 90%;
 margin: 0 auto 0;
 background: #fff;
 padding: 5%;
 box-sizing: border-box;
 z-index: 4;
 position: relative;
 top: -40px;
 text-align: left;
 
}
.grIn h3{
 font-size: 16px;
 color: #cd1f31;
 line-height: 1.6;
 margin-bottom: 30px;
}
.grIn p{
 margin-bottom: 20px;
 line-height: 1.7;
 font-size: 12px;
}
 
}



.gr05{
 background: url(../images/greeting/tougou_10_ol-01_10.gif) repeat-x top center;
 padding-top: 80px;
 overflow: hidden;
 z-index: 5;
 position: relative;
}
.grIn2{
 width: 1000px;
 margin: 0 auto 0;
 background: #fff;
 padding: 40px;
 box-sizing: border-box;
 z-index: 4;
 position: relative;
 text-align: left;
 overflow: hidden;
}

.grIn2 h3{
 padding-top: 25px;
 font-size: 24px;
 color: #cd1f31;
 line-height: 1.6;
 margin-bottom: 40px;
}
.grIn2 p{
 margin-bottom: 25px;
 line-height: 1.7;
}



.grInBox{
 margin: 0 30px;
 float: left;
 width: 400px;
}

.grLast img{
 width: 100%;
 height: auto;
}

.grLastGree{
 padding: 50px 0 80px;
 font-size: 24px;
 line-height: 2;
}



@media screen and (max-width: 768px) {
 
 .gr05{
 padding-top: 40px;
 overflow: hidden;
 z-index: 5;
 position: relative;
}
.grIn2{
 width: 90%;
 margin: 0 auto 0;
 background: #fff;
 padding: 5%;
 box-sizing: border-box;
 z-index: 4;
 position: relative;
 text-align: left;
 overflow: hidden;
}

.grIn2 h3{
 padding-top: 15px;
 font-size: 16px;
 color: #cd1f31;
 line-height: 1.6;
 margin-bottom: 20px;
}
.grIn2 p{
 font-size: 12px;
 margin-bottom: 25px;
 line-height: 1.7;
}



.grInBox{
 margin: 0 0 15px;
 float: none;
 width: 100%;
 display: block;
}

.grLastGree{
 padding:5% 0 10%;
 font-size: 16px;
 line-height: 2;
}
 
 
 
}



/* contact
---------------------------------------------------------------*/

.eventform-wrap{
}
.useWrap .txtArea .eventform-wrap p{
margin-bottom:1.3em;
font-size:14px;
}
.useWrap .txtArea .eventform-wrap .event-privacy{
margin-bottom:5%;
}
.useWrap .txtArea .eventform-wrap .event-privacy p{
line-height:2.5;
}
.event-privacy span.req{
font-size:10px;
 color: #fff;
 background: #d80c24;
 border-radius: 3px;
 padding: 2px 5px;
 margin-left: 10px;
}


.event-tit{
font-size:22px;
margin-bottom:20px;
}

.event-subtit{
font-size:16px;
color:#005CAF;
}



table.event-tb{
 width: 100%;
 color: #333;
 line-height: 1.5;
 font-size: 14px;
 margin-bottom: 30px;
}

table.event-tb th{
 border:solid #fff;
 border-width: 1px 0 1px;
 background: #f1f2f6;
 padding: 1.5% 1.5%;
 text-align: center;
 font-weight: normal;
 vertical-align: middle;
 box-sizing: border-box;
 white-space:nowrap;
}

table.event-tb td{
 padding: 1.5% 4%;
 text-align: left;
 vertical-align: middle;
 border:solid #f1f2f6;
 border-width: 1px 0 1px;
}



table.contactTb{
 width: 100%;
 color: #333;
 line-height: 1.5;
 font-size: 14px;
 margin-bottom: 10px;
 table-layout: fixed;
}

table.contactTb th{
 width: 310px !important;
 border:solid #fff;
 border-width: 1px 0 1px;
 background: #f1f2f6;
 padding: 1.5% 1.5%;
 text-align: center;
 font-weight: normal;
 vertical-align: middle;
 box-sizing: border-box;
}
table.contactTb.r2 th{
 text-align: left;
 vertical-align: top;
 font-size: 16px;
}
table.contactTb th span.any{
font-size:10px;
 color: #fff;
 background: #0f58a3;
 border-radius: 3px;
 padding: 2px 5px;
 margin-right: 10px;
}
table.contactTb th span.req{
font-size:10px;
 color: #fff;
 background: #d80c24;
 border-radius: 3px;
 padding: 2px 5px;
 margin-right: 10px;
}


table.contactTb th span{
font-size:12px;
}
table.contactTb th span.ast{
color:#f3352f;
}
span.ast{
color:#f3352f !important;
}
table.contactTb td{
 padding: 1.5% 4%;
 text-align: left;
 vertical-align: middle;
 border:solid #f1f2f6;
 border-width: 1px 0 1px;
}


table.contactTb.r2 td p{
 margin-bottom: 15px;
}

table.contactTb.r2 td dl{
 letter-spacing: -.4em;
}


table.contactTb.r2 td dt{
 background: #b1c8e1;
 padding: 5px 10px;
 font-size: 14px;
 letter-spacing: 0;
}
table.contactTb.r2 td dd{
 padding: 15px 10px;
 font-size: 14px;
 display: inline-block;
 width: 50%;
 box-sizing: border-box;
 border-bottom: 1px solid #f1f2f6;
 letter-spacing: 0;
}

table.contactTb.r2 td input[type="checkbox"]{
 vertical-align: middle;
 margin: 0 5px 0;
}


table.contactTb.r2 td .inp_all{
 letter-spacing: -.4em;
}
table.contactTb.r2 td .inp_all .inp_1{
 letter-spacing: 0;
 padding: 15px 10px;
 font-size: 14px;
 display: inline-block;
 width: calc(100% / 3);
 box-sizing: border-box;
}
table.contactTb.r2 td .inp_all .inp_2{
 letter-spacing: 0;
 padding: 15px 10px;
 font-size: 14px;
 display: inline-block;
 width: 100%;
 box-sizing: border-box;
}
table.contactTb.r2 td dd label{
 display: block;
 padding-left: 2em;
 margin-top: -1.4em;
}


table.contactTb td input,
table.contactTb td select{
 background: #fff;
 border: 1px solid #b5b5b5;
 padding: 1%;
 font-size: 16px;
 box-sizing: border-box;
}
table.contactTb td input.inp1{
 width: 50%;
}
table.contactTb td input.inp2{
 width: 100%;
}
table.contactTb td input.inp3{
 width: 75%;
}
table.contactTb td input.inp4{
 width: 40%;
 margin-right: 2%;
}
table.contactTb td input.inp5{
 width: 30%;
 margin-right: 2%;
}
table.contactTb td span{
 font-size: 12px;
 display: block;
 padding-bottom: 5px
}

table.contactTb td textarea{
 background: #fff;
 border: 1px solid #b5b5b5;
 padding: 1%;
 width:100%;
 font-size: 16px;
 box-sizing: border-box;
}
table.contactTb td input.req{
 background: #fde9db;
}
table.contactTb td input.req,
table.contactTb td select.req{
 background: #fde9db;
}

table.contactTb td select{
 margin-right: 1%;
}


@media screen and (max-width: 768px) {
 
 
table.contactTb{
 width: 100%;
 color: #333;
 line-height: 1.5;
 font-size: 12px;
 box-sizing:border-box;
 margin-bottom: 30px;
}

table.contactTb th{
 width: 100% !important;
 display:inline-block;
 border: none;
 padding: 2%;
 box-sizing:border-box;
 text-align:left;
}

table.contactTb td{
 width: 100%;
 display:inline-block;
 padding: 3% 4% 5%;
 text-align: left;
 vertical-align: middle;
 border:none;
 box-sizing:border-box;
}

 table.contactTb td input,
table.contactTb td select{
 font-size: 12px;
}
 
 table.contactTb td input.inp1{
 width: 100%;
}
table.contactTb td input.inp2{
 width: 100%;
}
table.contactTb td input.inp3{
 width: 100%;
}
 table.contactTb td select{
 width: 100%;
}
 table.contactTb td input.inp5{
 width: 100%;
 margin-right:0;
margin-top:2%;
}

table.contactTb.r2 td .inp_all .inp_1{
 letter-spacing: 0;
 padding: 15px 10px;
 font-size: 14px;
 display: inline-block;
 width: calc(100%);
 box-sizing: border-box;
}

 
} 
 



/* LP 
----------------------------------------------------------- */


.lpTitleArea h1{
 font-size: 32px;
 color: #333333;
 border-left:4px solid #ed1c24;
 padding-left: 10px;
 letter-spacing: 2px;
 margin-bottom: 50px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}

.lpTitleArea h1 span{
 font-size: 16px;
 display: block;
 letter-spacing: 1px;
}
.lpTitleArea h1 em{
 font-size: 20px;
 font-style: normal;
 display: block;
 letter-spacing: 0;
}


.lpTitleArea .categoryDetail{
 position: relative;
}
.lpTitleArea .categoryDetail .pLogo{
 position: absolute;
 right:0;
 bottom:0;
 width:150px;
}
.lpTitleArea .categoryDetail.logoA{
 padding-right: 120px;
}

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

.lpTitleArea h1{
 font-size: 24px;
 border-left:3px solid #ed1c24;
 padding-left: 10px;
 letter-spacing: 2px;
 margin-bottom: 30px;
}

.lpTitleArea h1 span{
 font-size: 10px;
 display: block;
}


.lpTitleArea h1 em{
 font-size: 13px;
 font-weight: normal;
 padding-top: 2%;
}
 
.lpTitleArea .categoryDetail .pLogo{
 position: relative;
 right:auto;
 bottom:auto;
 width:100px;
  margin: auto auto 20px;
}
.lpTitleArea .categoryDetail.logoA{
 padding-right: 0;
}
 

 
}


/* News 
-------------------------------------------------------------------------*/


ul.news_list{
 border-top:1px solid #e6e6e6;
}
ul.news_list li{
 border-bottom:1px solid #e6e6e6;
 padding: 20px 0;
 font-size: 14px;
 line-height: 1.5;
 clear: both;
 overflow: hidden;
}

ul.news_list li .date{
 width: 7em;
 display: inline-block;
 color: #ed1c24;
 vertical-align: top;
}

ul.news_list li .cat{
 width: 10em;
 display: inline-block;
 background: #b1b1b1;
 border-radius: 2px;
 color: #fff;
 text-align: center;
 vertical-align: top;
 font-size: 12px;
 line-height:1;
 padding:3px;
 box-sizing:border-box;
}


ul.news_list li .txt{
 width: calc(100% - 7.5em);
 display: inline-block;
 vertical-align: top;
 float: right;
}
ul.news_list.index li .txt{
 width: calc(100% - 18em);
 display: inline-block;
 vertical-align: top;
 float: right;
}

ul.news_list.index li.seminar .txt{
 width: calc(100%);
 display: block;
 vertical-align: top;
 float: none;
}


ul.news_list li .txt a{
 position: relative;
 padding-right: 3em;
 color: #666666;
 display:block;
 
}
ul.news_list.index li.seminar .txt a{
color:#ed1c24;
}
ul.news_list.index li.seminar .txt a span{
color:#666;
}


ul.news_list li .txt a::before,
ul.news_list li .txt a::after{
position: absolute;
top: 0;
bottom: 0;
right: 0;
margin: auto;
content: "";
vertical-align: middle;
}
ul.news_list li .txt a.arrow::before{
width: 20px;
height: 20px;
background: #d6eaff;
 transition: all .2s ease-in;
}
ul.news_list li .txt a.arrow::after{
right: 8px;
width: 5px;
height: 5px;
border-top: 1px solid #666666;
border-right: 1px solid #666666;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

ul.news_list li .txt a:hover.arrow::before{
width: 20px;
height: 20px;
background: #b2d7f9;
}


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

ul.news_list li{
 padding: 10px 0;
 font-size: 12px;
}

ul.news_list li .txt{
 width: calc(100%);
 display: block;
 vertical-align: top;
 float: none;
 font-size:13px;
 line-height:1.5;
 padding-top:5px;
}
ul.news_list.index li .txt{
 width: calc(100%);
 display: block;
 vertical-align: top;
 float: none;
 font-size:13px;
 line-height:1.5;
 padding-top:5px;
}

ul.news_list li .cat{
 width: 10em;
 font-size: 10px;
}



}





.news_head{
text-align:right;
margin-bottom:15px;
position:relative;
}
.news_head .news_logo{
width:180px;
float:right;
display:inline-block;
margin-bottom:5px;
}

.news_head .news_logo:nth-of-type(3){
padding-top:2em;
position:absolute;
left:0;
top:0;
text-align:left;
}

.news_head p{
clear:both;
line-height:1.5;
}

.news_head .pdf{
margin-bottom:10px;
}

.news_head .pdf a{
display:inline-block;
background:#ed1c24;
border-radius:5px;
padding:2px 10px;
color:#fff;
textalign:center;
border:1px solid #ed1c24;
transition:all .2s ease-in;
}
.news_head .pdf a:hover{
display:inline-block;
background:#fff;
border-radius:5px;
padding:2px 10px;
color#ed1c24;
textalign:center;
color:#ed1c24;
border:1px solid #ed1c24;
text-decoration:none;
}


.list_title{
font-weight: bold;
}

.center{
text-align:center;
}
.flo_right{
float:right;
margin-left:5%;
}
.flo_left{
float:left;
margin-right:5%;
}



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

.news_head p{
font-size:11px;
}

.news_head .news_logo{
width:100px;
}



}



/* Searh
-------------------------------------------------------------------------*/


.searchList a{
 background: #fff;
 border: 1px solid #e6e6e6;
 border-radius: 5px;
 margin-bottom: 15px;
 padding: 25px 35px;
 overflow: hidden;
 display: block;
 transition: all .2s ease-in;
}
.searchList a:hover{
 text-decoration: none;
 background: #e6e6e6;
}

.searchList h3{
 border-left: 5px solid #ed1c24;
 padding-left: 10px;
 color: #ed1c24;
 font-size: 18px;
 margin-bottom: 15px;
 font-weight: bold;
 line-height: 1.2;
}
.searchList p{
 font-size: 14px;
 line-height: 1.5;
 vertical-align: top;
}

.searchList a p{
 color: #666;
}

.l-pagination-list{
text-align:center;
padding-top:20px;
}
.l-pagination-list li{
display:inline-block;
margin:0 5px;
vertical-align:top;
line-height:30px;
}
.l-pagination-list li a{
display:block;
width:30px;
height:30px;
line-height:30px !important;
border:1px solid #e6e6e6;
background:#fff;
transition:all .2s ease-in;
box-sizing:border-box;
}
.l-pagination-list li span,
.l-pagination-list li a:hover{
display:block;
width:30px;
height:30px;
line-height:30px !important;
background:#ed1c24;
border:1px solid #ed1c24;
box-sizing:border-box;
color:#fff;
text-decoration:none;
}

.fs-loading{
text-align:center;
display:block;
width:40px;
margin:0 auto;
}


@media screen and (max-width: 768px) {
 
.searchList{
  margin: 0 0 10px 0;
}
.searchList a{
 padding: 8px;
}
.searchList h3{
 font-size: 14px;
}
.searchList p{
 font-size: 10px;
}

.fs-loading{
text-align:center;
display:block;
width:25px;
margin:0 auto;
}


svg{
max-width:100%;
height:auto;
}

}




.fakeframe{
height:300px;
overflow:auto;
padding:2%;
border:1px solid #e6e6e6
}




.pdd_tb30{padding-top:30px !important;}
.pdd_tb10{padding-top:10px !important;}
.pdd_tb20{padding-top:20px !important;}

.size10{ font-size:10px !important;} .size11{font-size:11px !important;} .size12{font-size:12px !important;}
.w30{width:30px !important}.w50{width:50px !important}.w80{width:80px !important}.w100{width:100px !important}.w150{width:150px !important}.w200{width:200px !important}.w250{width:250px !important}.w300{width:300px !important}.w350{width:350px !important}.w400{width:400px !important}.w450{width:450px !important}.w500{width:500px !important}


sup{
font-size: 72%;
vertical-align: top;
position: relative;
top: -0.1em;
}
small{
font-size: 72%;
}

/* IR hack
------------------------------------------------------------------------*/

#br table.brTable td.title {
    height:auto !important;
}


#br table.segTable th.title{
    height:auto !important;
}



/* size hack
------------------------------------------------------------------------*/

iframe.sqlForm{
height:1700px;
}

iframe.prdForm{
height:1800px;
}
iframe.prdFormEn{
height:1000px;
}


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

iframe.sqlForm{
height:1700px;
}

iframe.prdForm{
height:2400px;
}
iframe.prdFormEn{
height:1300px;
}

.nOscroll .w250{
width:35% !important;
}
.nOscroll .w350{
width:50% !important;
}

}


.case_int{
overflow:hidden;
margin-bottom:60px;
}


.case_int_l{
float:left;
width:calc( 100% - 280px);
}



.case_int_r{
float:right;
width:260px;
margin-left:20px;
}



.useWrap .txtArea .case_int_l h2{
 text-align: left !important;
 font-size: 28px;
 color: #ed1c24;
 letter-spacing: 1px;
 margin-bottom: 25px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}
.useWrap .txtArea .case_int_l h2:before,
.useWrap .txtArea h2.int_read:before{
 content: "";
 padding-right: 0;
}

.useWrap .txtArea h2.int_read{
 text-align: left !important;
 font-size: 32px;
 color: #000;
 letter-spacing: 1px;
 margin-bottom: 25px;
 font-family: 'Roboto','Noto Sans JP',"sans-serif" !important;
}



.case_int_r figure{
position:relative;
}

.case_int_r figure figcaption{
position:absolute;
bottom:0;
right: 280px;
font-size:16px;
line-height:1.8;
width:calc( 100% + 100px);
display:block;
text-align:right;
}

.case_int_r figure figcaption em{
font-weight:normal;
font-style:normal;
font-size:22px;
}


.int_caption{
background:#e6e5e5;
padding:15px;
font-size:13px;
margin-top:-15px;
}


p.int_read{
font-size:112%;
line-height:1.8;
margin-bottom:0 !important;
}
.int_read_area{
padding:20px 20px;
background:#e5eef8;
margin-bottom:60px;
}



dl.int_item{
margin-top:50px;
border:1px solid #e6e5e5;
padding:15px;
font-size:16px;
}



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


.case_int{
overflow:hidden;
margin-bottom:30px;
}


.case_int_l{
float:none;
width:calc( 100%);
}



.case_int_r{
float:none;
width:260px;
margin:0 auto 30px;
}


#wideMain .useWrap .txtArea .case_int_l h2{
 font-size: 16px;
 margin-bottom: 18px;
}
.useWrap .txtArea .case_int_l h2:before,
.useWrap .txtArea h2.int_read:before{
 content: "";
 padding-right: 0;
}
.useWrap .txtArea .case_int_l h2 br{
display:none;
}

#wideMain .useWrap .txtArea h2.int_read{
 font-size: 18px;
 color: #000;
 margin-bottom: 18px;
}

.case_int_r figure{
position:relative;
}

.case_int_r figure figcaption{
position:relative;
bottom:0;
right: 0;
font-size:14px;
line-height:1.8;
width:calc( 100%);
display:block;
text-align:right;
}

.case_int_r figure figcaption em{
font-weight:normal;
font-style:normal;
font-size:19px;
}


.int_caption{
background:#e6e5e5;
padding:15px;
font-size:10px;
margin-top:-15px;
}


dl.int_item{
margin-top:30px;
border:1px solid #e6e5e5;
padding:10px;
font-size:14px;
}



}









