/*------------------------------------------------
	reset
------------------------------------------------*/
html,body,div,span,object,h1,h2,h3,h4,h5,h6,p,blockquote,abbr,address,cite,code,del,dfn,img,kbd,q,samp,small,sub,var,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,audio,video{
/*
	margin:0;
	padding:0;
*/
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent url(../img/transparent.gif);
}

/*---------------------------------------------------------------------------*/
/* tag
/*---------------------------------------------------------------------------*/

html{
  background:#EEEEEE;
}

body{
	margin:0; 
	padding:0;
	text-align:center;
	font-size:75%;
	color:#333333;
	font-family:Verdana, Arial, sans-serif;
	line-height:1.6em;
	background:transparent url(../img/html_bg.gif) repeat-y 50% 0;
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-size-adjust: 100%
}

h1{
  margin:0;
  padding:0;
}

h2{
  margin:0;
  padding:0;
}

p{
  margin:1.0em 0 1.0em 0;
}

a:link{
  text-decoration:none;
/*  color:#333333;*/
  color:#333399;
}

a:visited{
  text-decoration:none;
  color:#993366;
}

a:hover{
  text-decoration:underline;
/*  color:#000000;*/
/*  color:#0000FF;*/
}

a:focus{
	outline:none;
}

/*---------------------------------------------------------------------------*/
/* class
/*---------------------------------------------------------------------------*/

.float1{
  width:100%;
}

.float1:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

.float1_1{
  float:left;
  width:430px;
}

.float1_2{
  float:left;
  padding:0 0 0 10px;
}

.hide{
  display:none;
}

.align_right{
  text-align:right;
}

.margin1{
  margin:0 10px 0 10px;
}

.margin2{
  margin:10px 0 0 0;
}

.padding1{
  padding:10px 0 30px 0;
}

.font0{ /* font0:color = body:color */
  color:#333333;
  font-weight:normal;
}

.font1{
  color:#330000;
  font-weight:bold;
}

.font2{
  color:#0066CC;
}

.font3{
  color:#339900;
}

.font4{
  color:#CC0066;
}

.font5{
  font-size:100%;
  margin:10px 0 0 0;
}

.border0{
  border:none;
}

.headline{
  margin:0;
  padding:0 0 0 10px;
  font-size:100%;
  line-height:2.2em;
  background:#FFFFFF url(../img/headline_bg.gif) no-repeat;
  border-bottom:1px solid #999999;
}

.subheadline{
  margin:2.0em 0 0 0;
  background:#EEEEFF;
  background:#FFFFFF;
  border:1px solid #999999;
}

.subheadline h3{
  margin:1px;
  padding:0 0 0 10px;
  font-size:100%;
  line-height:1.8em;
  background:#EEEEFF;
  border-left:5px solid #6666FF;
}

.subheadline h3 span{
	font-weight:normal;
	margin-left:1.0em;
}

.menu_class{
  margin:10px 0 0 0;
  width:250px;
  background:#EAEAF5;
  border-top:1px solid #999999;
  border-bottom:1px solid #999999;
}

.menu_class h3{
  margin:0;
  padding:0 0 0 10px;
  font-size:100%;
  border:1px solid #EAEAF5;
}

.menu_item{
  margin:0;
  padding:0;
}

.menu_item li{
  margin:0;
  padding:0;
  list-style:none;
  border-bottom:1px solid #999999;
}

.menu_item li a{
  display:block;
  padding:0 0 0 20px;
  min-width:0;
  width:auto !important;
  width:250px;
  background:#FFFFFF url(../img/menu_item_bg_a.gif) no-repeat 0 50%;
  border:1px solid #FFFFFF;
}

.menu_item li a:hover{
  text-decoration:none;
  background:#FFFFFF url(../img/menu_item_bg_a.gif) no-repeat -250px 50%;
  border:1px solid #333399;
}

.menu_item li.select a{
  display:block;
  padding:0 0 0 20px;
  color:#FFFFFF;
  background:#FFFFFF url(../img/menu_item_bg_b.gif) no-repeat 0 50%;
  border:1px solid #FFFFFF;
}

.menu_item li.select a:hover{
  text-decoration:none;
  background:#FFFFFF url(../img/menu_item_bg_b.gif) no-repeat 0 50%;
  border:1px solid #333399;
}

.top_menu_li1{
  padding:0;
  float:left;
  margin:10px 10px 0 0;

}

.top_menu_li2{
  padding:0;
  float:left;
  margin:10px 0 0 0;
}

.top_menu_li2:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

.m_add{
  cursor:pointer;
}

.concept{
  margin:10px 0 0 0;
  text-align:center;
}

.concept_exp1{
  float:left;
  margin:5px;
  padding:5px;
  width:180px;
  border:1px solid #999999;
}
.concept_exp1 div{
  text-align:center;
  margin:5px;
}

#concept_clear{
  clear:both;
}


.product{
  margin:10px 0 0 0;
  padding:0 0 10px 0;
  width:587px;
  background:#FFFFFF url(../img/line_dott.gif) repeat-x 0 100%;
}

.product:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

.product.last{
  background:none;
}

.product1{
  float:right;
  margin:0 0 0 10px;
  width:457px;
}

.product1 h3{
  margin:0;
  font-size:100%;
  color:#993333;
}

.product1 p{
  margin:0;
}

.product1_1{
  clear:both;
  float:right;
  margin:5px 0 0 0;
  white-space:nowrap;
  background:#FFFFFF url(../img/detail_link_bg.gif) repeat-x;
  border:1px solid #999999;
}

.product1_1 a{
  display:block;
  padding:0 10px 0 22px;
  min-width:0;
  width:auto !important;
  width:0;
  background:transparent url(../img/detail_link_arrow.gif) no-repeat 8px 50%;
  border:1px solid #FFFFFF;
}

.product2{
  float:left;
  width:120px;
}

.item{
  width:587px;
  margin:10px 0 0 0;
  border-bottom:0.1px solid transparent;
}

.item:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

.item1{
  float:left;
  width:140px;
}

.item2{
  float:left;
  margin:0 0 0 10px;
  width:437px;
}

.item2 p{
  margin:0 0 auto 0;
}

.classheadline{
  margin:10px 0 0 0;
  width:587px;
}

.classheadline h3{
  margin:0;
  padding:0 0 0 10px;
  font-size:100%;
  background:#FFFFEE;
  border:1px solid #999999;
}

.table1{
  margin:10px 0 0 0;
  font-size:100%;
  border-top:1px solid #999999;
  border-left:1px solid #999999;
  border-collapse:collapse;
  border-spacing:0;
  empty-cells:show;
}

.table1 th{
  padding:5px;
  width:120px;
  text-align:right;
  vertical-align: top;
  background:#E0E0FF url(../img/th_border.gif) no-repeat;
  border-right:1px solid #999999;
  border-bottom:1px solid #999999;
}

.table1 .td1{
  padding:5px;
  background:#FFFFFF;
  border-right:1px solid #999999;
  border-bottom:1px solid #999999;
  width:80%;
}

.table1 .td2{
  padding:5px;
  background:#F3F3F3;
  border-right:1px solid #999999;
  border-bottom:1px solid #999999;
  width:80%;
}

.table2{
  margin:10px 0 0 0;
  font-size:100%;
  border-top:1px solid #999999;
  border-left:1px solid #999999;
  border-right:1px solid #999999;
  border-collapse:collapse;
  border-spacing:0;
  empty-cells:show;
}

.table2 .th1{
  padding:5px;
  width:50%;
  text-align:left;
  vertical-align: top;
  background:#FFFFFF;
  border-bottom:1px solid #999999;
}

.table2 .th2{
  padding:5px;
  width:50%;
  text-align:left;
  vertical-align: top;
  background:#F3F3F3;
  border-bottom:1px solid #999999;
}

.table2 .td1{
  padding:5px;
  width:50%;
  text-align:right;
  vertical-align: top;
  background:#FFFFFF;
  border-bottom:1px solid #999999;
}

.table2 .td2{
  padding:5px;
  width:50%;
  text-align:right;
  vertical-align: top;
  background:#F3F3F3;
  border-bottom:1px solid #999999;
}

.table3{
  margin:10px 0 0 0;
  font-size:100%;
  border-top:1px solid #999999;
  border-left:1px solid #999999;
  border-collapse:collapse;
  border-spacing:0;
  empty-cells:show;
}

.table3 .td1{
  padding:5px;
  width:220px;
  font-weight:bold;
  background:#E0E0FF url(../img/th_border.gif) no-repeat;
  border-right:1px solid #999999;
  border-bottom:1px solid #999999;
}

.table3 .td2{
  padding:5px;
  width:60%;
  background:#FFFFFF;
  border-right:1px solid #999999;
  border-bottom:1px solid #999999;
}

.table3 .td3{
  padding:5px;
  width:60%;
  background:#F3F3F3;
  border-right:1px solid #999999;
  border-bottom:1px solid #999999;
}

.table4{
  margin:10px 0 0 0;
  font-size:100%;
  border-top:1px solid #999999;
  border-left:1px solid #999999;
  border-collapse:collapse;
  border-spacing:0;
  empty-cells:show;
  width:100%;
}

.table4 th{
  padding:5px;
  width:140px;
  text-align:right;
  vertical-align: top;
  background:#E0E0FF url(../img/th_border.gif) no-repeat;
  border-right:1px solid #999999;
  border-bottom:1px solid #999999;
}

.table4 td{
  padding:5px;
  background:#FFFFFF;
  border-right:1px solid #999999;
  border-bottom:1px solid #999999;
}

.table5{
  margin:10px 0 0 0;
  font-size:100%;
  border-top:1px solid #999999;
  border-left:1px solid #999999;
  border-collapse:collapse;
  border-spacing:0;
  empty-cells:show;
  width:100%;
}

.table5 th{
  padding:5px;
  background:#E0E0FF url(../img/th_border.gif) no-repeat;
  border-right:1px solid #999999;
  border-bottom:1px solid #999999;
}

.table5 td{
  padding:5px;
  background:#FFFFFF;
  border-right:1px solid #999999;
  border-bottom:1px solid #999999;
}

.required{
  font-weight:normal;
  color:#FF0000;
}

.submit{
  width: 20em;
  height: 3.2em;
  font-size: 120%;
}

.list1 li{
  margin-bottom:1.6em;
}

.up{
  float:right;
  white-space:nowrap;
}

.up a{
  display:block;
  padding:0 0 0 20px;
  min-width:0;
  width:auto !important;
  width:0;
  background:transparent url(../img/page_top.gif) no-repeat 0 50%;
}

.up span{
  display:block;
  padding:0 0 0 20px;
  min-width:0;
  width:auto !important;
  width:0;
  color:#333399;
  cursor:pointer;
  background:transparent url(../img/page_top.gif) no-repeat 0 50%;
}

/*---------------------------------------------------------------------------*/
/* id
/*---------------------------------------------------------------------------*/

#container{
  margin:0 auto;
  width:900px;
  text-align:left;
  background:#FFFFFF;
}

#container1{
  border-top:1px solid #999999;
  border-left:1px solid #999999;
  border-right:1px solid #999999;
}

#head{
  height:59px;
  background:transparent url(../img/head_bg.gif) repeat;
  border-bottom:1px solid #999999;
}

#head1{
  height:50px;
  background:#ffffff url(../img/head1_bg.gif) repeat-x;
  border-bottom:1px solid #999999;
}

#head1:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

#head1_1{
  float:left;
}

#head1_1 img{
  vertical-align: top;
  border:none;
}

#head1_2{
  margin:26px 0 0 0;
  padding:0 10px 0 0;
  height:0;
  float:right;
}

#head1_2:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

#image:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

#image1{
  float:left;
}

#image2{
  float:left;
}

#font_size0{
  float:left;
  width:66px;
  height:19px;
  background:transparent url(../img/font_size.gif) no-repeat;
}

#font_size1{
  float:left;
  margin:0 0 0 5px;
  width:19px;
  height:19px;
  cursor:pointer;
  background:transparent url(../img/font_size1_b.gif) no-repeat;
}

#font_size2{
  float:left;
  margin:0 0 0 5px;
  width:19px;
  height:19px;
  cursor:pointer;
  background:transparent url(../img/font_size2_b.gif) no-repeat;
}

#font_size3{
  float:left;
  margin:0 0 0 5px;
  width:19px;
  height:19px;
  cursor:pointer;
  background:transparent url(../img/font_size3_b.gif) no-repeat;
}

#body{
  width:898px;
  background:#FFFFFF url(../img/menu_bg.gif) repeat-y;
  border-top:1px solid #999999;
  border-bottom:1px solid #999999;
}

#body:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

#main{
  padding:10px 0 20px 0;
  width:647px;
  text-align:left;
  float:right;
}

#main1{
  margin:0 10px 0 10px;
}

#news{
  background:#FFFFFF url(../img/news2_bg.gif) repeat-x 0 100%;
}

#news1{
  position:relative;
  width:627px;
  height:2.0em;
  line-height:2.0em;
  background:#FFFFFF url(../img/news1_bg.gif) no-repeat;
  border-bottom:1px solid #999999;
}

#news1:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

#news1_1{
  float:left;
}

#news1_1:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

#news1_1_1{
  float:left;
}

#news1_1_1 h3{
  margin:0 10px 0 10px;
  padding:0;
  font-size:100%;
}

#news1_1_2{
  float:left;
}

#news1_1_2 img{
  position:absolute;
  top:50%;
  margin:-8px 0 0 0;
  border:none;
}

#news1_2{
  float:right;
}

#news1_2 a{
  width:6.0em;
  text-align:center;
  display:block;
  background:transparent url(../img/partition.gif) no-repeat 0 50%;
}

#news2{
  width:627px;
}

#news2_1{
  overflow:auto;
/*  max-height:200px;*/
  max-height:400px;
  height:auto !important;
  height:200px;
  border-left:1px solid #999999;
  border-right:1px solid #999999;
  border-bottom:1px solid #999999;
}

#news2_1_1{
  margin:10px;
  padding:0;
  list-style:none;
}

#news2_1_1 li{
  margin:0 0 10px 0;
  padding:0 0 10px 0;
  background:transparent url(../img/line_dott.gif) repeat-x 0 100%;
}

#news2_1_1 li.last{
  margin:0;
  background:none;
}

#news2_1_1 img{
  margin:0 5px 0 0;
  vertical-align: middle;
}

#news2_1_1 .news_title{
  margin:5px 0 0 0;
  display:block;
}

#top_menu{
  margin:20px 0 0 0;
}

#top_menu img{
  display:block;
}

#top_menu_ul{
  margin:0;
  padding:0;
  list-style:none;
}

#top_menu_ul img{
  border:1px solid #CCCCCC;
}

#topic_path{
  margin:0px;
  padding:0px;
  list-style:none;
  background:#EEEEEE;
  border-bottom:1px solid #999999;
}

#topic_path li{
  margin:0 0 0 5px;
  padding:0 0 0 17px;
  line-height:1.8em;
  display:inline;
  background:transparent url(../img/topic_path.gif) no-repeat 0 50%;
}

#topic_path li.first{
  padding:0 0 0 5px;
  background:none;
}

#menu{
  width:250px;
  float:left;
}

#banner{
  margin:10px 0 10px 0;
  padding:0;
  list-style:none;
  text-align:center;
}

#banner li{
  margin:5px 0 5px 0;
}

#banner img{
  border-style:none;
}

#banner img.img_border{
  border:1px solid #999999;
}

#foot{
  width:898px;
  background:#FFFFFF url(../img/foot_bg.gif) repeat-x;
  border-bottom:1px solid #999999;
}

#foot1{
  margin:0;
  padding:9px 10px 0 10px;
  line-height:2.0em;
}

#foot1:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

#foot1_1{
  float:left;
/*  white-space:nowrap;*/
}

#foot_link{
  margin:0;
  padding:0;
  list-style:none;
}

#foot_link li{
  margin:0 10px 0 0;
  padding:0 0 0 10px;
  list-style: none outside;
  display: inline;
  border-left:1px solid #333333;
}

#foot_link li.first{
  padding:0;
  border-style:none;
}

#foot1_2{
  float:right;
  white-space:nowrap;
}

#foot1_2 a{
  display:block;
  padding:0 0 0 20px;
  min-width:0;
  width:auto !important;
  width:0;
  background:transparent url(../img/page_top.gif) no-repeat 0 50%;
}

#foot1_2 span{
  display:block;
  padding:0 0 0 20px;
  min-width:0;
  width:auto !important;
  width:0;
  color:#333399;
  cursor:pointer;
  background:transparent url(../img/page_top.gif) no-repeat 0 50%;
}

#foot2{
  margin:0 10px 20px 10px;
  width:878px;
  font-style:normal;
  text-align:right;
}

/*---------------------------------------------------------------------------*/
/* 個別　consulting
/*---------------------------------------------------------------------------*/

#conmenu{
  margin:10px 0 0 0;
  width:607px;
  border:1px solid #999999;
}

#conmenu .conmenu1{
  float:left;
  width:120px;
  text-align:center;
}

#consul1{
  margin:10px 0 0 0;
  width:607px;
}

#consul1_1{
  float:left;
  width:150px;
}

#consul1_2{
  float:right;
  margin:0 0 0 10px;
  width:447px;
}

#consul1_2 p{
  margin:0 0 auto 0;
}

#consul1:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

#consul2{
  margin:10px 0 0 0;
  width:607px;
}

#consul2_1{
  float:right;
  margin:0 0 0 10px;
  width:110px;
}

#consul2_2{
  float:left;
  width:487px;
}

#consul2_2 p{
  margin:0 0 auto 0;
}

#consul2:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

.consul3{
  margin:10px 0 0 0;
  width:607px;
  border-bottom:0.1px solid transparent;
}

.consul3_1{
  float:left;
  width:80px;
}

.consul3_2{
  float:left;
  margin:0 0 0 10px;
  width:517px;
}

.consul3_2 h3{
  margin:0;
  font-size:100%;
}

.consul3_2 p{
  margin:0 0 auto 0;
}

.consul3:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

/*---------------------------------------------------------------------------*/
/* 個別　hardware
/*---------------------------------------------------------------------------*/

#hardware1{
  margin:10px 0 0 0;
  width:607px;
  text-align:center;
}

#hardware2{
  margin:10px 0 0 0;
  width:607px;
}

#hardware2_1{
  float:left;
  padding: 5px;
  width:180px;
  border:1px solid #CCCCCC;
}

#hardware2_2{
  float:right;
  margin:0 0 0 10px;
  width:405px;
}

#hardware2_2 p{
  margin:0 0 auto 0;
}

#hardware2:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

/*---------------------------------------------------------------------------*/
/* 個別　security,network　※共通に昇格
/*---------------------------------------------------------------------------*/

.sol_parts{
  padding:10px 0 0 0;
  width:607px;
}

.sol_parts:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

.sol_parts1{
  float:right;
  margin:0 0 0 10px;
  width:435px;
}

.sol_parts1 h3{
  margin:0;
  font-size:100%;
}

.sol_parts1 p{
  margin:0 0 auto 0;
}

.sol_parts2{
  float:left;
  width:160px;
  border:1px solid #CCCCCC;
}

.homepage1{
  margin:10px 0 10px 0;
  width:590px;
}

.homepage1 h3{
  margin:0;
  font-size:100%;
}

.homepage1 p{
  margin:0 0 auto 0;
}

.homepage1:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

.homepage1_1{
  float:left;
  margin:0 10px 0 0;
}

.homepage1_1 img{
  border:none;
	border:1px solid #666;
	box-sizing: border-box;
}

.homepage1_2{
  float:right;
  width:380px;
}

.homepage1_3{
	float:left;
	width:180px;
	margin-right:20px;
	margin-top:20px;
}

.homepage1_3 img{
	width:180px;
	height:auto;
	border:1px solid #666;
}

.homepage1_3:nth-child(3n){
	margin-right:0;
}

.page_move{
  width:607px;
}

.page_move:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

.page_move1{
  float:left;
  white-space:nowrap;
}

.page_move2{
  float:right;
  white-space:nowrap;
}

/*---------------------------------------------------------------------------*/
/* information
/*---------------------------------------------------------------------------*/

.info0_1{
  background:#FEF7D9;
  margin:10px 0 0 0;
  padding:5px;
  border:1px solid #CC9900;
}

.info0_1 p{
  margin:0;
  padding:0;
}

.info0_2 p{
  margin:0;
  padding:10px 0 10px 0;
}

.info0_3{
  margin:0;
  padding:10px 0 10px 0;
}

.info1:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

.info1_1{
  float:left;
  padding:15px 0 10px 0;
  width:300px;
  text-align:center;
}

.info1_2{
  float:right;
  padding:15px 0 10px 0;
  width:300px;
  text-align:center;
}

.info1_3{
  padding:15px 0 10px 0;
  text-align:center;
}

.info2{
  float:left;
  padding:0 15px 0 0;
}

.info2:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

.info2_1{
  padding:15px 0 10px 0;
  text-align:center;
}

.info3{
  float:right;
  padding:0 0 0 15px;
}

.info3:after{
  content:"";
  clear:both;
  height:0;
  display:block;
  visibility:hidden;
}

/*---------------------------------------------------------------------------*/
/* ■■■追加■■■　BlueOcean
/*---------------------------------------------------------------------------*/
.blueocean_exp1{
  float:left;
  margin:5px;
  padding:0;
  width:180px;
  border:1px solid #999999;
}

.blueocean_exp1 div{
  text-align:center;
  margin:5px;
}

.blueocean_exp1 span{
  letter-spacing:-1px;
}

.blueocean_exp1 img{
  margin:5px;
  padding:0;
}

.blueocean_clear{
  clear:both;
}

.blueocean_ex1{
  margin:1.5em 0 0.2em 0;
  padding:3px 5px 3px 10px;
  background:#EEEEFF;
  color:#330000;
  font-weight:bold;
}


/*---------------------------------------------------------------------------*/
/* ■■■追加■■■　メールフォームレイアウト
/*---------------------------------------------------------------------------*/

#company{
  width:99%;
/*  ime-mode: active;*/
}

#address{
  width:99%;
/*  ime-mode: active;*/
}

#post{
  width:99%;
/*  ime-mode: active;*/
}

#name{
  width:99%;
/*  ime-mode: active;*/
}

#tel{
  width:50%;
/*  ime-mode: inactive;*/
}

#fax{
  width:50%;
/*  ime-mode: inactive;*/
}

#mail{
  width:99%;
/*  ime-mode: inactive;*/
}

#policy{
  margin:1em 0 0.2em 0;
  padding:5px;
  border:1px solid #FF0000;
}

.title{
  text-align:center;
  font-weight:bold;
}

/*--clearfix-----------------------------------------------------------------*/

.clearfix:after { /*floatの解除*/
  display:block;
  clear:both;
  height:0px;
  visibility:hidden;
  content:".";
}

.clearfix {
  min-height: 1px; /*IE6、7対策*/
}

* html .clearfix{
  height: 1px;
  /*\*//*/ /*MAC IE5.x対策*/
  height: auto;
  overflow: hidden;
  /**/
}

/*---------------------------------------------------------------------------*/
/* モバイル対応レイアウト
/*---------------------------------------------------------------------------*/
@media screen and (max-width:900px) {/*480*/

	/*----- common -----*/
	#container{
		font-size:130%;
	}

	#head{
		height:85px;
	}

	#head1{
		height:75px;
		background-color:#f6f6f6;
		background-size:100% 75px;
	}

	#head1_1 img{
		height:75px;
		width:auto;
	}

	#head1_2{
		position:fixed;
		top:8px;
		right:8px;
		display:block;
		margin: 0;
		padding: 0;
		height: 60px;
		width: 60px;
		background-color: rgba(0,0,0,0.3);
		border-radius:5px;
		z-index:1;
	}

	#head1_2::before,
	#font_size0,
	#head1_2::after {
		content: '';
		position: absolute;
		left: 10px;
		height: 4px;
		width: 40px;
		background-color: #ffffff;
		border-radius: 2px;
		display: inline-block;
		box-sizing: border-box;
	}

	#head1_2::before{
		top: 14px;
	}

	#font_size0{
		top: 28px;
	}

	#font_size1,
	#font_size2,
	#font_size3{
		display:none;
	}

	#head1_2::after{
		bottom: 14px;
		clear: none;
		visibility: visible;
	}

	#container{
		width: 100%;
		min-width:480px;
	}

	#container1{
		border: none;
	}

	#image{
		max-width:100%;
		overflow:hidden;
	}

	#image1{
		float:none;
	}

	#image2{
		display: none;
	}

	#body{
		width: 100%;
		background: #ffffff;
	}

	#main{
		float: none;
		padding-top: 0;
		width: 100%;
	}

	#main1{
		margin: 0;
	}

	#main1 img{
		max-width:100%;
		height:auto;
	}

	#news1{
		width:100%;
		background: #eeeeee;
		height: 3em;
		line-height: 3em;
		z-index:0;
	}

	#news1_1_1{
		font-size:120%;
	}

	#news2{
		width: 100%;
	}

	#news2_1 {
		overflow: visible;
		max-height: 100%;
		max-height: 100%;
		height: 100%;
		border: none;
	}

	#top_menu > img{
		display:none;
	}

	#top_menu::before{
		content:'The best choice for IT Solutions!';
		display:block;
		padding:10px;
		font-size:120%;
		font-weight:bold;
		background:#eeeeee;
		border-top:solid 1px #999999;
		border-bottom:solid 1px #999999;
	}

	#top_menu_ul{
		padding:0 calc(50% - 311px);
		margin-left:10px;
	}

	#top_menu_ul::after{
		content:'';
		display:table;
		clear: both;
	}

	.top_menu_li1,
	.top_menu_li2{
		width:calc(50% - 10px);
	}

	.top_menu_li1 img,
	.top_menu_li2 img{
		width:100%;
		height:auto;
	}

	/* menu */
	#menu{
		position:fixed;
		float:none;;
		top:0;
		right:0;
		padding-top:75px;
		width:100%;
		height:calc(100% - 75px);
		line-height:3em;
		background:#ffffff;
		overflow-y:scroll;
		display:none;
		z-index:2;
	}

	#menu.open{
		display:block;
	}

	#menu::before{
		content:'× メニューを閉じる';
		position:fixed;
		display:block;
		padding:0 20px;
		width:100%;
		line-height:75px;
		top:0px;
		left:0px;
		color:#ffffff;
		background:#333;
	}

	.menu_class{
		margin-top:0;
		width:100%;
	}

	.menu_class:not(:first-child){
		border-top:none;
	}

	.menu_item li a{
		background-image:none;
	}

	.menu_item li.select a,
	.menu_item li.select a:hover{
		background-color:#6666cc;
	}

	#banner{
		margin:0;
		padding:20px 0;
	}


	#foot {
		width:100%;
		text-align:center;
	}

	#foot_link a{
		white-space: nowrap;
	}

	#foot1_1{
		float:none;
	}

	#foot1_2{
		float:none;
		width:100%;
	}

	#foot1_2 a{
		margin-top:20px;
		display:block;
		color:#ffffff;
		background:#66aaff;
		line-height:3em;
		border-radius:3em;
	}

	#foot2 {
		margin:0;
		margin-top:20px;
		margin-bottom:40px;
		width:100%;
		text-align:center;
	}

	.new_window{
		display:none;
	}

	/*----- sub -----*/
	.headline{
		padding:5px 10px;
		font-size:120%;
		background:#eeeeee;
		border-bottom:solid 1px #999999;
	}

	.margin1 .margin1{
		margin:0;
	}

	.subheadline h3{
		padding-top:5px;
		padding-bottom:5px;
		padding-right:5px;
		font-size:110%;
	}

	/* solution */
	.sol_parts{
		padding:0;
		width:100%;
	}

	.sol_parts1{
		float:none;
		margin:0;
		width:100%;
	}

	.sol_parts1 h3{
		margin:20px 0 10px 0;
		padding:5px 10px;
		font-size:120%;
		color:#ffffff;
		background:#993333;
	}

	.sol_parts2{
		float:none;
		margin-top:10px;
	}

	/* product */
	.product{
		width:100%;
	}

	.product1{
		float:none;
		margin:0;
		width:100%;
	}

	.product1 h3{
		padding-top:5px;
		padding-bottom:5px;
		font-size:110%;
	}

	.product1_1{
		float:none;
		display: inline-block;
		background:#66aaff;
		border:none;
		line-height:3em;
		border-radius:3em;
	}

	.product1_1 a{
		padding:0 3em;
		margin-left:auto;
		background:none;
		border:none;
		color:#ffffff;
	}

	.product2{
		float:none;
		margin:0;
		margin-top:10px;
		width:100%;
	}

	/* item */
	.item{
		width:100%;
	}

	.item2{
		width:calc(100% - 150px);
	}

	/* hardware */
	#hardware1{
		width:100%;
		text-align:left;
	}

	#hardware2{
		width:100%;
	}

	#hardware2_2{
		width:calc(100% - 210px);
	}

	.homepage1{
		width:100%;
	}

.homepage1_1{
	width:33.33%;
	margin-right:20px;
}

.homepage1_1 img{
	width:100%;
}


	.homepage1_2{
		width:calc(100% - 210px);
		width:calc(66.66% - 20px);
	}

.homepage1_3{
	float:left;
	width:calc(33.33% - 20px);
	margin-right:20px;
	margin-top:20px;
}

.homepage1_3 img{
	width:100%;
	height:auto;
	border:1px solid #666;
}

.homepage1_3:nth-child(3n){
	margin-right:0;
}




	/* consul */
	#consul1,
	#consul2{
		float:none;
		width:100%;
	}

	.consul3{
		margin-top:20px;
		width:100%;
	}

	#consul1 p,
	#consul2 p{
		margin:10px 0;
	}

	#consul1_1,
	#consul2_1{
		float:none;
		margin:0;
		width:100%;
		text-align:center;
	}

	#consul1_2,
	#consul2_2{
		float:none;
		margin:0;
		width:100%;
	}

	.consul3_2{
		width:calc(100% - 90px);
	}

}

/*▼2021-07-20*/
.item2 > span{
	display: inline-block;
	padding:3px 10px;
	margin-bottom: 0.5em;
	font-weight: bold;
	color: #ffffff;
	background-color:#990000;
}
/*▲2021-07-20*/

/*▼2021-09-16*/
#image > img{
	width: 100%;
	object-fit: cover;
}

.aeroshield img{
	display:block;
	margin:auto;
}

.aeroshield .td2 img{
	display:block;
	margin:0;
}

.point{
	display:block;
	padding:5px 10px;
	background:#eee;
}

.aeroshield-f-r{
	float:right;
	margin-left:20px;
	margin-bottom:10px;
}
.aeroshield .movie-wrap{
	position: relative;
	padding-bottom: 56.1%;
	height: 0;
	overflow: hidden;
	border:1px solid #666;
}

.aeroshield .movie{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
/*▲2021-09-16*/