/* =======================================================================
						      Layout
======================================================================= */
html {scroll-behavior: smooth;}
body{
	width: 100%; margin: 0; padding: 0;
	background: #fff;
}
#wrapper{ width: 1000px; display: block; float: none; margin: 0 auto; position: relative;}
@media screen and (max-width: 1000px) {#wrapper{ width: 100%;}}

#header, #footer{display: block; overflow: hidden; clear: both; width:100%; float: none;}
#main{width: 100%; float: none; clear: both; }

.clearfix{clear:both;float:none; display:block;}
.clear{ clear: both; line-height: 0; height: 0; margin: 0; padding: 0; visibility: hidden; }
.clear:after { content: "."; visibility: hidden; height: 0; }

img, video, embed, object, iframe{max-width: 100%; }
img{height: auto !important;}

.screen{}
.print{display: none;}

#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
}
#page-top a {
	display: block;
	width: 70px;
   height: 70px;
   background: url(img/page-top.jpg)0 0 no-repeat;
   background-size: cover;
   overflow: hidden;
   text-indent: -9999px;
   -webkit-box-shadow:0px 0px 5px rgba(0,0,0,0.2);
   -moz-box-shadow:0px 0px 5px rgba(0,0,0,0.2);
   box-shadow:0px 0px 5px rgba(0,0,0,0.2);
}
#page-top a:hover {
    opacity: 0.6;
}
@media screen and (max-width: 700px) {#page-top a{width: 50px; height: 50px;}}

/* =======================================================================
						      font
======================================================================= */

body{
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	font-size:15px; color: #555;
	letter-spacing: 0.2px;
}
section{
	clear:both; 
	float:none; 
	display: block; 
	width: 100%;
	padding: 20px;
	box-sizing: border-box;
}
a,a:visited { 
	text-decoration: none;
	color: #555;
	-webkit-transition: 0.2s ease-in-out;
       -moz-transition: 0.2s ease-in-out;
         -o-transition: 0.2s ease-in-out;
            transition: 0.2s ease-in-out;
}
a:hover{text-decoration: underline}

h1, h2, h3, h4, h5, h6 { font-weight: 500; margin: 0;}
h1 { font-size: 2em; }
h2 { font-size: 1.7em; }
h3 { font-size: 1.4em; }
h4 { font-size: 1.25em; }
h5 { font-size: 1.125em; }
h6 { font-size: 1em; }
small { font-size: 0.7em; line-height: -50%;}

p, td, .main, #footer, .free, .date, .caution{margin: 0;}

ul, li{margin: 0; padding: 0;}

@media screen and (max-width: 700px) {section{padding: 20px 10px}}




/* =======================================================================
						      header
======================================================================= */

.head_nav{
	display: block;
	background: #113151;
	color: #fff;
	padding: 5px 10px;
	height: 35px;
}
.nav_com{
	display: block;
	float: left;
}
.nav_com a{
	display: block;
	margin: 4px 0 0 10px;
	padding-left: 5px;
	background: url(img/head_logo.png) 0 0 no-repeat;
	background-size: contain;
	width: 136px;
	height: 27px;
	overflow: hidden;
	text-indent: -9999px;
}
.nav_com a:hover{opacity: 0.5 }

ul.nav_link{margin: 0; list-style: none; padding-top: 10px;}
ul.nav_link li{
	display: block; 
	float: right;
	margin-left: 20px;
}
ul.nav_link li a{
	color: #fff;
	font-size: 14px;
	font-weight: 600;
}

.head_title {
   position: relative;
   width: 100%;
}
.head_title:before {
   content:"";
   display: block;
   padding-top: 30%; /* 300 / 1000 */
}
.head_title_inner {
   position: absolute;
   text-align: center;
   background: url(img/home_head_bg.jpg)0 0 no-repeat;
   background-size: cover;
   top: 0;
   left: 0;
   bottom: 0;
   right: 0;
   
   display: flex;
  justify-content: center;
  align-items: center;
}
.head_title h1{font-size: 55px; font-weight: 800; color: #fff; margin: 0 0 10px 0; line-height: 100%;text-shadow: 0px 0px 8px #000;}
.head_title p{font-size: 25px; font-weight: 500; color: #fff; text-shadow: 0px 0px 8px #000;}

@media screen and (max-width: 700px) {
.head_title h1{font-size: 45px; }
.head_title p{font-size: 20px; }
}

@media screen and (max-width: 500px) {
.head_title h1{font-size: 35px; }
.head_title p{font-size: 15px; }
.nav_com a{
	padding-left: 0px;
	width: 91px;
	height: 18px;
	margin: 8px 0 0 10px;
	}
}

@media screen and (max-width: 400px) {
	.head_title h1{font-size: 28px; }
	.head_title p{font-size: 14px; }
	.head_nav{
	padding: 5px 5px;
	height: 25px;
	}
	.nav_com a{
	width: 68px;
	height: 14px;
	margin: 5px 0 0 5px;
	}
	ul.nav_link{padding-top: 2px;}
	ul.nav_link li a{font-size: 12px;}
}


/* =======================================================================
						      MAIN
======================================================================= */

#main{}

#main h2{}

#main p{font-weight: 500; font-size: 15px; color: #fff; text-align: justify;}

/* =======================================================================
						      footer
======================================================================= */
#footer{margin-top: 0px; padding: 15px; background: #113151; color: #fff; text-align: center; box-sizing: border-box;}
#footer h4 {font-size: 20px;}
#footer p{font-size: 14px;}



.w400{display: none;}
@media screen and (max-width: 600px) {
	#footer h4 {font-size:16px; text-align: left}
	#footer p{font-size: 12px; text-align: left}
	.w400{display: inline;}
}

/* =======================================================================
						      HOME
======================================================================= */

#home_mission h2, #home_products h2, #home_features h2, #home_support h2{
	display: block;
	float: none;
	margin: 10px auto 30px auto;
	overflow: hidden;
	text-indent: -9999px;
	background-size: contain;
}
#home_mission h2{background: url(img/home_mission_logo.png) 0 0 no-repeat; width: 280px; height: 48px; background-size: contain;}
#home_products h2{background: url(img/home_products_logo.png) 0 0 no-repeat; width: 333px; height: 48px; background-size: contain;}
#home_features h2{background: url(img/home_feature_logo.png) 0 0 no-repeat; width: 454px; height: 48px; background-size: contain;}
#home_support h2{background: url(img/home_support_logo.png) 0 0 no-repeat; width: 291px; height: 48px; background-size: contain;}

@media screen and (max-width: 700px) {
	#home_mission h2{width: 187px; height: 32px; background-size: contain;}
	#home_products h2{width: 222px; height: 32px; background-size: contain;}
	#home_features h2{width: 303px; height: 39px; background-size: contain; }
	#home_support h2{width: 194px; height: 39px; background-size: contain;}
}

@media screen and (max-width: 400px) {
	#home_mission h2{width: 140px; height: 24px; background-size: contain;}
	#home_products h2{width: 167px; height: 24px; background-size: contain;}
	#home_features h2{width: 275px; height: 29px; background-size: contain; }
	#home_support h2{width: 176px; height: 29px; background-size: contain;}
}

.page_home h3{font-weight: 600;;font-size: 25px; color: #FFF100; margin-bottom: 10px;}
@media screen and (max-width: 550px) {.page_home h3{font-size: 22px}}
@media screen and (max-width: 450px) {.page_home h3{font-size: 18px}}
@media screen and (max-width: 350px) {.page_home h3{font-size: 16px}}

/* mission */
#home_mission{
	height: auto;
	background: #00B2ED; 
	padding: 40px;
}

#main #home_mission h3{margin-top: 30px;}
#main #home_mission p{margin-bottom: 0;}
.home_mission_img{
	display: block;
	float: left;
	width: 200px; height: 200px;
	-moz-border-radius:10px;
	border-radius:100px;
	margin-top: 0px;
	overflow: hidden;
	-webkit-box-shadow:0px 0px 10px rgba(0,0,0,0.2);
	-moz-box-shadow:0px 0px 10px rgba(0,0,0,0.2);
	box-shadow:5px 5px 10px rgba(0,0,0,0.2);
}
.home_mission_img img{width: 100%; height: 100%;}
.home_mission_text{
	display: block; 
	float: right;
	width: calc(100% - 250px);
	padding-top: 0px;
}
@media screen and (max-width: 700px) {
	#home_mission{padding: 20px 15px;}
	.home_mission_img{
		float: none;
		margin: 40px auto 0 auto;
	}
	.home_mission_text{
		float: none;
		width: 100%;
	}
}
@media screen and (max-width: 400px) {
#main #home_mission p{font-size: 13px;}
}

/* products */
#home_products{
	background: url("img/home_products_bg.jpg") 0 0 no-repeat;
	background-size: cover;
	background-position: center center;
}
#home_products > ul{
	list-style: none; 
	margin: 20px 0; 
	width: 100%; 
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	}
#home_products > ul > li{
	display: block;
	width: calc(33% - 40px);
	margin: 20px;
	padding: 20px;
	box-sizing: border-box;
	background: #FFFBCD;
	border: 2px solid #036EB8;
	-webkit-box-shadow:2px 2px 10px rgba(0,0,0,0.5);
	-moz-box-shadow:2px 2px 10px rgba(0,0,0,0.5);
	box-shadow:2px 2px 10px rgba(0,0,0,0.5);
}
#home_products > ul > li img{
	width: 100%; height: auto;
}
#home_products ul ul{
	display: block;
	margin: 20px 0 10px 0;
	list-style: none;
}
#home_products ul ul li{
	font-size: 15px;
	margin: 0 0 7px 0px;
	line-height: 140%;
}
@media screen and (max-width: 900px) {
	#home_products > ul > li{width: calc(33% - 10px); padding: 10px; margin: 5px;	}
	#home_products ul ul li{font-size: 13px;margin: 0 0 3px 16px;}}

@media screen and (max-width: 700px) {
	#home_products > ul > li{width: calc(50% - 10px);}
	#home_products ul ul{margin: 10px 0 0 0}
	#home_products ul ul li{font-size: 13px;margin: 0 0 3px 16px;}
}
@media screen and (max-width: 450px) {
	#home_products > ul > li{padding: 5px;}
	#home_products ul ul{margin: 5px 0}
	#home_products ul ul li{font-size: 11px; margin: 0 0 2px 15px}
}
@media screen and (max-width: 350px) {
	#home_products > ul > li{width: calc(100% - 10px);}
	#home_products ul ul{margin: 15px 0 0 0}
	#home_products ul ul li{font-size: 13px; margin: 0 0 5px 18px}
}
/* features */
#home_features{
	background: url("img/home_feature_bg.jpg") 0 0 no-repeat;
	background-size: cover;
	background-position: center center;
}
#home_features ul{list-style: none; margin: 30px 0; padding: 0;}
#home_features ul li{
	display: block;
	width: 700px;
	float: none;
	-moz-border-radius:10px;
	border-radius:10px;
	background: rgba(3, 110, 184, 0.8);
	border: 2px solid #fff;
	padding: 10px 20px;
	box-sizing: border-box;
	margin: 15px auto;
}
#home_features ul li h3{font-size: 25px; font-weight: 600; color: #FFF100; margin: 0 0 5px 0; line-height: 100%;}
#home_features ul li p{font-size: 18px; color: #fff; font-weight: 400; margin-bottom: 0;}
@media screen and (max-width: 800px) {
	#home_features ul li{width: 100%; margin}
	#home_features ul li h3{font-size: 20px;}
	#home_features ul li p{font-size: 14px;}
}
@media screen and (max-width: 400px) {
	#home_features ul li{padding: 10px;}
	
}

/* support */
#home_support{
	background: url("img/home_support_bg.jpg") 0 0 no-repeat;
	background-size: cover;
	background-position: center center;
}
#home_support > ul{
	display: block;
	width: 800px;
	float: none;
	margin: 0 auto;
}
#home_support > ul > li{
	display: block;
	float: left;
	margin: 15px;
	width: calc(33% - 30px);
	-moz-border-radius:10px;
	border-radius:10px;
	background: rgba(3, 110, 184, 0.8);
	border: 2px solid #fff;
	box-sizing: border-box;
	position: relative;
	-webkit-box-shadow:2px 2px 10px rgba(0,0,0,0.5);
	-moz-box-shadow:2px 2px 10px rgba(0,0,0,0.5);
	box-shadow:2px 2px 10px rgba(0,0,0,0.5);
}
#home_support > ul > li:before {
   content:"";
   display: block;
   padding-top: 100%; 
}
.support_inner {
   position: absolute;
   top: 0;
   left: 0;
   bottom: 0;
   right: 0;
   padding: 15px;
}

#home_support ul > li ul{display: block; margin: 0; padding: 0;}
#home_support ul > li h3{font-size: 16px; text-align: center; color: #FFF100; font-weight: 600; margin-bottom: 10px;}
#home_support ul ul li, #home_support ul p{color: #fff; font-size: 14px;}

#home_support ul ul li{ list-style-type: disc; margin-left: 15px; margin-bottom: 5px;}
#home_support ul p {margin: 0; padding: 0;}
#home_support ul > li.home_support_img .support_inner{
	background: url("img/home_support_img.png") 0 0 no-repeat;
	background-size: cover;
	background-position: center center;
}
@media screen and (max-width: 800px) {
	#home_support > ul{width: 100%;}
	#home_support > ul > li{
		margin: 10px;
		width: calc(33% - 20px)
	}
	#home_support ul ul li, #home_support ul p{font-size: 13px; line-height: 140%; text-align: left;}
}
@media screen and (max-width: 600px) {
	#home_support > ul > li{width: calc(50% - 20px)}
	#home_support ul ul li, #home_support ul p{font-size: 15px; line-height: 160%; text-align: left;}
}
@media screen and (max-width: 450px) {
	#home_support > ul > li{width: calc(50% - 10px); margin: 5px; padding: 0;} 
	.support_inner{padding: 10px;}
	#home_support ul > li h3{font-size: 14px;}
	#home_support ul ul li, #home_support ul p{font-size: 12px; line-height: 140%;}
	#home_support ul ul li{ margin-left: 12px; margin-bottom: 3px;}
}
@media screen and (max-width: 350px) {
	#home_support > ul > li{width: calc(100% - 10px); margin: 10px 5px;} 
	#home_support > ul > li:before {
	   content:"";
	   display: inline;
	   padding-top: 0; 
	}
	.support_inner{position: relative;}
	#home_support ul > li.home_support_img{display: none;}
	#home_support ul > li h3{font-size: 17px;}
	#home_support ul ul li, #home_support ul p{font-size: 14px; line-height: 140%;}
}
/* =======================================================================
						      会社概要
======================================================================= */

#company h2{
	display: block;
	float: none;
	margin: 10px auto 30px auto;
	overflow: hidden;
	text-indent: -9999px;
	background-size: contain;
}
#company h2{background: url(img/company_logo.png) 0 0 no-repeat; width: 517px; height: 66px; background-size: contain;}
@media screen and (max-width: 700px) {#company h2{width: 345px; height: 44px; background-size: contain;}}
@media screen and (max-width: 400px) {#company h2{width: 259px; height: 33px; background-size: contain;}}

#company{
	background: #00B2ED; 
	padding: 40px 100px;
}
.logo_jp{
	font-size: 20px;
	color: #fff;
	font-weight: 600;
	text-align: center;
}
@media screen and (max-width: 700px) {.logo_jp{font-size: 18px;}}
#company h3, #case_maker h3, #case_study h3{
	font-size: 30px;
	font-weight: 400;
	text-align: center;
	color: #fff;
	margin: 40px 0 15px 0;
	border-bottom: 4px solid #FFF100;
}
#company p{font-size: 20px; padding: 0 30px;}
.com_table{
	display: block;
	width: 600px;
	float: none;
	margin: 40px auto;
}
.com_table table{
	width: 100%;
	border-collapse: collapse; 
}
.com_table table td{
	padding: 5px 10px; 
	
	border-bottom: 2px solid #555; 
	border-top: 2px solid #555; 
	color: #555;
	font-size: 18px;
	vertical-align: top;
}
td.com_table_left{background: #CEEBFB;}
td.com_table_right{background: #fff;}

@media screen and (max-width: 900px) {
	#company{padding: 40px 10px;}
}
@media screen and (max-width: 650px) {
	#company{padding: 40px 10px;}
	#company h3, #case_maker h3, #case_study h3{font-size: 24px;}
	#company p{font-size: 15px; padding: 0 0px;}
	.com_table{width: 100%; margin: 40px 0;}
	.com_table table td{font-size: 14px;}
}
@media screen and (max-width: 400px) {
	
	.com_table table td{font-size: 13px; padding: 5px}
	#company h3, #case_maker h3, #case_study h3{font-size: 20px;}
}


/* =======================================================================
						      取扱メーカー・導入事例
======================================================================= */

#case_maker, #case_study{
	background: #00B2ED; 
	padding: 40px 100px;
}

#case_maker h2, #case_study h2{
	display: block;
	float: none;
	margin: 10px auto 30px auto;
	overflow: hidden;
	text-indent: -9999px;
	background-size: contain;
}
#case_maker h2{background: url(img/maker_maker_logo.png) 0 0 no-repeat; width: 208px; height: 51px; background-size: contain;}
#case_study h2{background: url(img/maker_case_logo.png) 0 0 no-repeat; width: 342px; height: 65px; background-size: contain;}
@media screen and (max-width: 700px) {
	#case_maker h2{width: 139px; height: 34px; background-size: contain;}
	#case_study h2{width: 228px; height: 43px; background-size: contain;}
}
@media screen and (max-width: 400px) {
	#case_maker h2{width: 104px; height: 26px; background-size: contain;}
	#case_study h2{width: 171px; height: 33px; background-size: contain;}
}
#case_maker ul{display: block; padding: 10px 40px; list-style: none;}
#case_maker ul li{
	display: block;
	float: none;
	clear: both;
	width: 100%;
	padding: 15px;
	box-sizing: border-box;
	margin: 30px 0;
	background: #fff;
}
.case_maker_title{
	display: block; 
	border-bottom: 2px solid #555; 
	width: 100%; 
	height: 40px; 
	clear: both; 
	float: none;
	padding: 0 10px;
	box-sizing: border-box;
}
.case_maker_name{display: block; float: left; font-size: 20px; font-weight: 600;}
.case_maker_maker{display: block; float: right; font-size: 15px;}
.case_maker_maker .maker_axiomtek{font-size: 18px; font-weight: 600; color: #a40b5d}
.case_maker_contents{display: block; clear: both; width: 100%; float: none; height:220px; padding-top: 20px; box-sizing: border-box;}
.case_maker_contents img{
	width: 300px; 
	height: 200px; 
	display: block; 
	float: left; 
/*
	-webkit-box-shadow:0px 0px 10px rgba(0,0,0,0.2);
	-moz-box-shadow:0px 0px 10px rgba(0,0,0,0.2);
	box-shadow:0px 0px 10px rgba(0,0,0,0.2);
*/
}
.case_maker_text{
	display: block;
	float: left;
	width: calc(100% - 320px);
	height: 200px;
	margin-left: 20px;
	position: relative
}
.case_maker_text h5{font-size: 20px; font-weight: 600;margin-bottom: 10px}
#main .case_maker_text p{color: #444; font-size: 14px; font-weight: 200;}
.case_maker_text a{position: absolute; bottom: 0px; font-size: 12px;}
@media screen and (max-width: 900px) {
	#case_maker, #case_study{
	background: #00B2ED; 
	padding: 40px 10px;
	}
	#case_maker ul{padding: 20px 10px;}
}
@media screen and (max-width: 700px) {
	.case_maker_contents{height:153px; }
	.case_maker_contents img{
		width: 200px; 
		height: 133px; 
	}
	.case_maker_text{
		width: calc(100% - 220px);
		height: 133px;
		margin-left: 20px;
	}
	.case_maker_text h5{font-size: 16px; margin-bottom: 5px}
	#main .case_maker_text p{font-size: 12px;}
}
@media screen and (max-width: 600px){
	.case_maker_contents{padding: 0;}
	.case_maker_contents{height: auto; margin-bottom: 20px;}
	.case_maker_contents img{width: 100%; height: auto; float: none;}
	.case_maker_text{width: 100%; height: auto; float: none; margin: 0;}
	.case_maker_text a{position: relative; margin: 15px 0 0 0; display: block;}
	#case_maker ul{padding: 0px 0px;}
	.case_maker_title{height: 30px; padding: 0;}
	.case_maker_name{font-size: 14px;}
	.case_maker_maker{font-size: 12px;}
	.case_maker_maker .maker_axiomtek{font-size: 13px;}
	.case_maker_text h5{font-size: 15px;}
}
@media screen and (max-width: 400px) {
	
}

/* Case Study */
#case_study ul{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	list-style: none;
}
#case_study ul li{
	display: block;
	width: calc(33% - 20px);
	margin: 10px;
}
#case_study ul li img{width: 100%; height: auto;}
.case_study_title{
	display: block; 
	width: 100%;
	padding: 3px 0;
	background: #113151;
	color: #fff;
	text-align: center;
	font-size: 15px;
}
@media screen and (max-width: 600px){
	#case_study ul li{width: calc(50% - 10px); margin: 5px;}
}
@media screen and (max-width: 400px){.case_study_title{font-size: 12px}}
@media screen and (max-width: 350px){#case_study ul li{width: calc(100% - 20px);}}
@media print{

}	
