﻿@charset "UTF-8";
body, html {
  -webkit-text-size-adjust: none;
}

body {
  /*display: none;*/
  opacity: 0;
  background-color: white;
  font-family: "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif;
}

@media screen and (max-width: 768px) {
  body {
    background-repeat: no-repeat;
  }
}
@media print, screen and (min-width: 769px) {
  body {
    background-repeat: repeat;
  }
}


@font-face {
  font-family: mplus-1p-regular;
  src: url("../font/mplus-1p-regular.ttf"); 
  format("truetype");
  }
@font-face {
  font-family: mplus-1p-bold;
  src: url("../font/mplus-1p-bold.ttf"); 
  format("truetype");
  }
  
  #container{
  position:relative;
  
  }
  
  
/* ------------------------------------------------------------------------ */
/* PAGE HEADER
/* ------------------------------------------------------------------------ */
.page-header {
  position: fixed;
  z-index: 100000;
  width: 100%;
  box-shadow: 0 0 10px rgba(4, 0, 0, 0.35);
  -moz-box-shadow: 0 0 10px rgba(4, 0, 0, 0.35);
  -webkit-box-shadow: 0 0 10px rgba(4, 0, 0, 0.35);
  display: inline-block;
  display: block;
  background-color:#464646 !important;
}
.page-header:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
* html .page-header {
  height: 1%;
}
.page-header h1 a {
  display: block;
  position: relative;
}
.page-header .side div, .page-header .side dl {
  display: inline-block;
  display: block;
}
.page-header .side div:after, .page-header .side dl:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
* html .page-header .side div, * html .page-header .side dl {
  height: 1%;
}
.page-header .side dt {
  color: #575757;
  font-size: 10px;
}
.page-header .side dd span,
.page-header .side dd a {
  display: inline-block;
  color: #fff;
  font-size: 10px;
  text-align: center;
}
.page-header .side dd span {
  background: #0068b7;
}
.page-header .side dd a {
  background: #a8a8a8;
  text-decoration: none;
}
.page-header .sp-gnav {
  display: none;
}

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

.h1_p{
font-size:0px;
color:#c0c0c0;
margin:0px;
}

  .page-header {
    height: 40px;
  }
  .page-header h1 {
    float: left;
  }
  .page-header h1 a {
    top: 1px;
    left: 1px;
  }
  .page-header h1 img {
    width: auto;
    height: 36px;
  }
  .page-header .pc-gnav {
    display: none;
  }
  .page-header .side {
    float: right;
  }
  .page-header .side div {
    float: left;
    padding: 0 22px 0 0;
  }
  .page-header .side dt {
    float: left;
    padding: 0 6px 0 0;
    line-height: 18px;
  }
  .page-header .side dd {
    float: left;
    width: 18px;
    height: 18px;
  }
  .page-header .side dd span,
  .page-header .side dd a {
    width: 18px;
    height: 18px;
    line-height: 18px;
    vertical-align: top;
  }
  .page-header .side p {
    display: none;
  }
  .page-header .side .btn-menu {
    display: inline-block;
    float: left;
    margin: 9px 16px 0 0;
  }
  .page-header .side .btn-menu img {
    width: 23px !important;
    height: auto;
  }
  .page-header .sp-gnav {
    position: absolute;
    right: 0;
    width: 65.625%;
    z-index: 3;
    background: #343434;
  }
  .page-header .sp-gnav li {
    background: url(../imgs/sp/bg_01.png) repeat-x 0 0;
    background-size: auto 2px;
    text-align: left;
  }
  .page-header .sp-gnav li:first-child {
    background: none;
  }
  .page-header .sp-gnav li.n0 span {
    margin: 0;
    padding: 0 22px 0 50px;
    background: url(../imgs/sp/ico_arr.png) no-repeat 100% 50%;
    background-size: auto 10px;
  }
  .page-header .sp-gnav li.n1 span {
    background: url(../imgs/sp/ico_00.png) no-repeat 0% 50%;
    background-size: auto 24px;
  }
  .page-header .sp-gnav li.n2 span {
    background: url(../imgs/sp/ico_01.png) no-repeat 0% 50%;
    background-size: auto 22px;
  }
  .page-header .sp-gnav li.n2 a,
  .page-header .sp-gnav li.n3 a {
    margin: 0 15px 0 0;
    background: url(../imgs/sp/ico_plus_w.png) no-repeat 100% 50%;
    background-size: auto 12px;
  }
  .page-header .sp-gnav li.n2 a + a,
  .page-header .sp-gnav li.n3 a + a {
    display: block;
    position: absolute;
    top: 2px;
    right: 0;
    width: 50px;
    height: 58px;
    margin: 0;
    padding: 0;
    background: none;
  }
  .page-header .sp-gnav li.n3 span {
    background: url(../imgs/sp/ico_02.png) no-repeat 0% 50%;
    background-size: auto 23px;
  }
    .page-header .sp-gnav li.n2 ul,
  .page-header .sp-gnav li.n3 ul {
    position: relative;
    display: none;
  }
  .page-header .sp-gnav li.n4 span {
    background: url(../imgs/sp/ico_03.png) no-repeat 0% 50%;
    background-size: auto 22px;
  }
   .page-header .sp-gnav li.n5 span {
    background: url(../imgs/sp/ico_04.png) no-repeat 0% 50%;
    background-size: auto 22px;
  }   
  .page-header .sp-gnav li p {
    position: relative;
    text-align: left;
  }
  .page-header .sp-gnav li a {
    display: block;
    padding: 18px 0;
    color: #fff;
    font-size: 12px;
    line-height: 12px;
    text-decoration: none;
    text-align: left;
  }
  .page-header .sp-gnav li span {
    display: inline-block;
    height: 24px;
    margin: 0 0 0 15px;
    padding: 0 0 0 35px;
    line-height: 24px;
  }
  .page-header .sp-gnav li li {
    background: none;
  }
  .page-header .sp-gnav li li a {
    margin: 0;
    padding: 0 0 18px 62px;
    background: none !important;
    font-size: 10px;
    line-height: 10px;
  }
  
  .page-header .side .header_r{
	 float:left;
	 width:20px;
	}
	   
      .page-header .side .header_r_l{
	 display:none;
	   } 
	 	.page-header .side .header_r_r{
	 float:none;
	 width:20px;
	 text-align:right;
	   }    
	   
  .page-header .sp-gnav .inq {
    padding: 26px 0 7px;
    background: url(../imgs/sp/bg_01.png) repeat-x 0 0;
    background-size: auto 2px;
  }
  
  
  .page-header .sp-gnav .inq .btn-inq {
    margin: 0 0 16px;
    text-align: center;
  }
  .page-header .sp-gnav .inq .btn-inq a {
    display: inline-block;
    padding: 14px 28px;
    background: #e60012;
    color: #fff;
    font-size: 14px;
    font-weight: bold;
    line-height: 14px;
    text-decoration: none;
  }
  .page-header .sp-gnav .inq p {
    text-align: center;
  }
  .page-header .sp-gnav .inq p img {
    width: 181px;
    height: auto;
  }
}

@media print, screen and (min-width: 769px) {

.h1_p{
font-size:6px;
color:#c0c0c0;
margin:-15px 0px 10px 20px;
}
  .page-header {
    min-width: 1280px;
    height: 96px;
    background: rgba(255, 255, 255, 0.9);
  }
  .page-header h1, .page-header .pc-gnav, .page-header .side {
    float: left;
  }
  .page-header h1 {
    position: relative;
    width: 198px;
  }
  .page-header h1 a {
    width: 198px;
    height: 96px;
  }
  .page-header h1 img {
    position: relative;
    top: 0px;
    left: 0px;
  }
  .page-header .pc-gnav {
    display: none;
    width: 811px;
    height: 96px;
  }
  .page-header .pc-gnav ul {
    width: 810px;
    margin: 36px 0 0;
    display: inline-block;
    display: block;
    border-right: 1px solid #818181;
  }
  .page-header .pc-gnav ul:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
  }
  * html .page-header .pc-gnav ul {
    height: 1%;
  }
  .page-header .pc-gnav li {
    float: left;
    width: 160px;
    height: 60px;
    border-left: 1px solid #818181;
    text-align: center;
  }
  .page-header .pc-gnav li.n0 a {
    background-image: url(../imgs/nav_ico_00.png);
  }
  .page-header .pc-gnav li.n1 a {
    background-image: url(../imgs/nav_ico_01.png);
  }
  .page-header .pc-gnav li.n2 a {
    background-image: url(../imgs/nav_ico_02.png);
  }
  .page-header .pc-gnav li.n3 a {
    background-image: url(../imgs/nav_ico_03.png);
  }
  .page-header .pc-gnav li.n4 a {
    background-image: url(../imgs/nav_ico_04.png);
  }
   .page-header .pc-gnav li.n5 a {
    background-image: url(../imgs/nav_ico_05.png);
  }   
  .page-header .pc-gnav a {
    display: block;
    width: 100%;
    height: 31px;
    padding: 25px 0 0;
    background-position: 50% 0%;
    background-repeat: no-repeat;
    color: #c0c0c0;
    font-size: 13px;
    line-height: 15px;
    text-decoration: none;
  }
  .page-header .pc-gnav a span {
    display: block;
    font-size: 9px;
    line-height: 9px;
  }
  .page-header .pc-gnav a.ac {
    border-bottom: 4px solid #e60012;
  }
  .page-header .pc-gnav a:hover {
    border-bottom: 4px solid #e60012;
  }
  .page-header .side {
    width: 385px;
    margin: 0 0 0 17px;
  }
  .page-header .side div {
    margin: 0 0 6px;
  }
  .page-header .side .btn-menu {
    display: none;
  }
  .page-header .side .btn-sitemap {
    float: left;
    width: 112px;
    padding: 0 18px 0 0;
    text-align: right;
  }
  .page-header .side .btn-sitemap a {
    padding: 2px 0 2px 18px;
    /background: url(../imgs/ico_00.png) no-repeat 0 50%;
    color: #575757;
    font-size: 10px;
    line-height: 10px;
    text-decoration: none;
  }
  .page-header .side dl {
    float: right;
    width: 90px;
  }
  .page-header .side dt, .page-header .side dd {
    float: left;
  }
  .page-header .side dt {
    width: 45px;
    line-height: 22px;
  }
  .page-header .side dd {
    width: 22px;
    height: 22px;
  }
  .page-header .side dd span,
  .page-header .side dd a {
    width: 22px;
    height: 22px;
    line-height: 22px;
  }
  
    .page-header .side .header_r{
	 float:left;
	 width:385px;
	   }
    .page-header .side .header_r_l{
	 float:left;
	 text-align:right;
	 width:219px;
	   } 
	
	
	.page-header .side .header_r_r{
	 float:left;
	 width:166px;
	   }  
	    
  .page-header .side .btn-inq {
    /*width: 220px;
    height: 25px;
    background: #0068b7;
    text-align: center;*/
  }
  .page-header .side .btn-inq a {
    /*display: block;
    width: 220px;
    background: url(../imgs/ico_01.png) no-repeat 0 0;
    color: #fff;
    font-size: 12px;
    line-height: 25px;
    text-decoration: none;*/
  }
  .page-header .side .btn-inq + p {
    margin: 8px 0 0;
    color: #000;
    font-size: 12px;
    line-height: 12px;
    text-align: right;
  }
  .page-header .side p + p {
    margin: 7px 0 0;
    font-size: 10px;
    line-height: 10px;
    text-align: right;
  }
}




/* ------------------------------------------------------------------------ */
/* PAGE FOOTER
/* ------------------------------------------------------------------------ */
.page-footer .footer-nav {
  background: rgb(0, 113, 188);
}
.page-footer .footer-nav p {
  color: #E8E8E8;
  font-size: 12px;
  font-weight: bold;
  line-height: 18px;
}
.page-footer .footer-nav li li {
  color: #E8E8E8;
  font-size: 12px;
  line-height: 18px;
  text-decoration: none;
}
.page-footer .footer-nav li li a {
  color: #E8E8E8;
  font-size: 12px;
  line-height: 18px;
  text-decoration: none;
}
.page-footer .footer-nav + div {
  width: 100%;
  display: inline-block;
  display: block;
}
.page-footer .footer-nav + div:after {
  content: ".";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
* html .page-footer .footer-nav + div {
  height: 1%;
}
.page-footer .footer-nav + div nav {
  color: #8e959b;
  font-size: 10px;
  line-height: 18px;
}
.page-footer .footer-nav + div nav a {
  color: #8e959b;
  font-size: 10px;
  line-height: 18px;
  text-decoration: none;
}
.page-footer .footer-nav + div nav a:hover {
  text-decoration: underline;
}
.page-footer .footer-nav + div .copyright {
  color: #7b8190;
  font-style: italic;
  font-weight: bold;
    clear:both;
}

@media screen and (max-width: 768px) {
  .page-footer .footer-nav {
    padding: 0 14px;
  }
  .page-footer .footer-nav li {
    padding: 0 0 8px;
  }
  .page-footer .footer-nav li div {
    display: none;
  }
  .page-footer .footer-nav li div ul {
    padding: 15px 0 0;
  }
  .page-footer .footer-nav li:first-child p {
    background: none;
  }
  .page-footer .footer-nav p {
    padding: 10px 0 0;
    background: url(../imgs/sp/bg_00.png) repeat-x 0 0;
    background-size: auto 2px;
  }
  .page-footer .footer-nav p span {
    display: block;
    width: 100%;
    padding: 2px 0;
    background: url(../imgs/sp/ico_plus.png) no-repeat 100% 50%;
    background-size: auto 12px;
  }
  .page-footer .footer-nav li li {
    margin: 0 0 8px;
    padding: 0 0 0 14px;
  }
  .page-footer .footer-nav + div nav, .page-footer .footer-nav + div .copyright {
    width: 100%;
  }
  .page-footer .footer-nav + div nav p,
  .page-footer .footer-nav + div .copyright {
    margin: 6px 0 0;
    font-size: 10px;
    line-height: 14px;
    text-align: center;
  }
}
@media print, screen and (min-width: 769px) {
  .page-footer {
    width: 100%;
  }
  .page-footer .footer-nav {
    margin: 0 0 11px;
    padding: 0 0 29px;
    text-align: center;
  }
  .page-footer .footer-nav ul {
    width: 1240px;
    margin: 0 auto;
    text-align: left;
    display: inline-block;
    display: block;
  }
  .page-footer .footer-nav ul:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
  }
  * html .page-footer .footer-nav ul {
    height: 1%;
  }
  .page-footer .footer-nav li {
    float: left;
  }
  .page-footer .footer-nav li.n0 {
    width: 900px;
  }
  .page-footer .footer-nav li.n0 ul {
    width: 300px;
    float:left;
  }
   .page-footer .footer-nav li.n0 ul:first-of-type {
    width: 350px;
    float:left;
  }
   .page-footer .footer-nav li.n0 ul:nth-of-type(2) {
    width: 250px;
    float:left;
  }  
  .page-footer .footer-nav li.n1 {
    width: 535px;
  }
  .page-footer .footer-nav li.n1 ul {
    width: 287px;
  }
  .page-footer .footer-nav li.n1 ul + ul {
    width: 228px;
  }
  .page-footer .footer-nav li.n2 {
    width: 298px;
  }
  .page-footer .footer-nav li div {
    display: inline-block;
    display: block;
  }
  .page-footer .footer-nav li div:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
  }
  * html .page-footer .footer-nav li div {
    height: 1%;
  }
  .page-footer .footer-nav li ul {
    float: left;
    width: auto;
  }
  .page-footer .footer-nav li p {
    margin: 0 0 16px;
    padding: 24px 0 0;
    font-style: italic;
  }
  .page-footer .footer-nav li li {
    float: none;
    margin: 0 0 10px;
  }
  .page-footer .footer-nav li li a {
    padding: 0 0 0 16px;
    background: url(../imgs/ico_02.png) no-repeat 0 50%;
  }
  .page-footer .footer-nav li li.indent a {
    padding: 0 0 0 16px;
    margin-left:16px;
    background: url(../imgs/ico_02.png) no-repeat 0 50%;
  }
  .page-footer .footer-nav li li a:hover {
    text-decoration: underline;
  }
  .page-footer .footer-nav + div nav, .page-footer .footer-nav + div .copyright {
    width: 640px;
  }
  .page-footer .footer-nav + div nav {
    float: left;
  }
  .page-footer .footer-nav + div nav p {
    padding: 0 0 0 20px;
  }
  .page-footer .footer-nav + div nav a:hover {
    text-decoration: underline;
  }
  .page-footer .footer-nav + div .copyright {
    float: right;
    font-size: 12px;
    line-height: 18px;
    text-align: right;
  }
  .page-footer .footer-nav + div .copyright span {
    padding: 0 8px 0 0;
  }
}



/* ------------------------------------------------------------------------ */
/* submenu
/* ------------------------------------------------------------------------ */


@media screen and (max-width: 768px) {
 .pc{ display:none;}

  #subMenu{  font-size:14px;padding:0; height:40px; padding-top:40px;}
  #subMenu ul{position:absolute;background:#343434; width:100%;  height:40px; overflow:hidden; z-index:2;}
  #subMenu li{ height:40px;font-size:14px; line-height:1em; border-top:1px solid #202020; border-bottom:1px solid #6d6d6d;background:#343434; cursor:pointer;}
  #subMenu li a{ color:#fff; text-decoration:none; padding:12px 16px; display:block;}
  #subMenu li a:hover{ color:#fff; text-decoration:none;}
  #subMenu li span{ color:#fff; text-decoration:none; padding:12px 16px; display:block; cursor:pointer;}
  #subMenu li span:hover{ color:#fff; text-decoration:none;}
  
  #subMenu li.now span{text-decoration:none; background-repeat:no-repeat; background-position:95% center;
  color:#fff;
  background-image:url(../imgs/submenu_icon_plus.png); background-size:16px; }
 
  #subMenu li.now.open span{color:#888;background-image:url(../imgs/submenu_icon_minus.png); background-size:16px;}
  
  #subMenu li a{ color:#fff; text-decoration:none; padding:12px 16px; display:block; cursor:pointer;}
  #subMenu li a:hover{ color:#fff; text-decoration:none;}
  
  #subMenu li.now a{text-decoration:none; background-repeat:no-repeat; background-position:95% center;
  color:#fff;
  background-image:url(../imgs/submenu_icon_plus.png); background-size:16px; }
 
  #subMenu li.now.open a{color:#888;background-image:url(../imgs/submenu_icon_minus.png);}

}

@media print, screen and (min-width: 769px) {
 .smp{ display:none;}
   #subMenu {
    padding: 96px 0 0 !important;
    background:#f2f2f2;
    width:100%;
  }
  #subMenu ul{ font-size:12px;padding:25px 35px;  width:890px;
  z-index:2;
  margin:0 auto;}
  #subMenu li{ background:url(../imgs/submenu_icon.png) no-repeat left top; display:inline-block; padding:0 35px 0 30px;}
  #subMenu li a{ color:#000; text-decoration:none;}
  #subMenu li a:hover{ color:#0068b7; text-decoration:underline;}
  #subMenu li span{ color:#000; text-decoration:none;}
  #subMenu li span:hover{ color:#0068b7; text-decoration:underline;}
  #subMenu li.now a{ color:#0068b7; text-decoration:underline;}
  #subMenu li.now span{ color:#0068b7; text-decoration:underline;}
 
  #subMenu.solution{  
  width:100%;
  font-size:12px;
  padding:10px 0;
 background:#f2f2f2; 
  }
  
  #subMenu.solution ul{
  width:890px;
  z-index:2;
  margin:0 auto;
  }
  #subMenu.solution li{ 
  width:25%;
  float:left;
  box-sizing:border-box;
  margin-bottom:20px;
  }

  #subMenu.company{  
  width:100%;
  font-size:12px;
  padding:10px 0;
 background:#f2f2f2; 
  }
  
  #subMenu.company ul{
  width:890px;
  z-index:2;
  margin:0 auto;
  }
  #subMenu.company li{ 
  width:33%;
  float:left;
  box-sizing:border-box;
  margin-bottom:20px;
  }

}


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


.secom{
padding-left:10px;
float:left;
}
.jpx{
padding-left:10px;
float:left;
}
.jpx img{
height:66px;
width:auto;
}


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

.secom{
float:right;
margin-right:10px;
padding-top:10px;
margin-bottom:10px;
}
.jpx{
float:right;
margin-right:10px;
padding-top:10px;
margin-bottom:10px;
}

table{
font-size:11px;
width:auto;
}
td{border:5px #fff solid;}

}