@charset "UTF-8";
/*bottom*/
body{
	}
header{
	display: block;
	overflow: hidden;
	clear: both;
	}
header h1 a{
	width:400px;
	height:150px;
	background-size:400px 150px;
	}
.menu_wrap{ 
	background: #fff;
	height: 78px;
}
ul.gnav_menu{
	margin-top: 160px;
	}

/*title*/
#title{
	width: 100%;
	height: 280px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	background:#008ee1;
	z-index:1;
}

#title h2{
	width: 1200px;
	height: 260px;
	text-align:center;
	display: block;
	padding: 10px 0px;
	}

/*#menu_sub,#menu_products*/
#menu_sub,#menu_products{
	width: 100%;
	overflow: hidden;
}
#menu_sub{
	min-width: 1200px;
	background:#68c9f2;
}
#menu_products{
	min-width: 1000px;
	}
#menu_sub ul {
	margin: 0px auto;
	padding: 0px auto;
	overflow: hidden;
	text-align: center;
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-moz-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	justify-content: center;
	}
#menu_products ul {
	margin: 0px auto;
	padding: 0px auto;
	overflow: hidden;
	text-align: center;
	justify-content: center;
	align-items: center;
    display:flex;
    display: -webkit-flex;
    justify-content: space-between;
    -webkit-justify-content: space-between;
    flex-wrap: wrap;
    -webkit-flex-wrap:wrap;
	}

#menu_sub ul {
	width: 1200px;
	}
#menu_products ul {
	width: 1000px;
	}
#menu_sub li,#menu_products li{
	display: inline-block;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	list-style:none;
	padding: 10px;
	border-right: 1px solid #fff;
	background:#68c9f2;
	}
#menu_sub li {
	width: 25%;
	}
#menu_products li {
	width: 9%;
	}
#menu_sub li:first-child {
	border-left: 1px solid #fff;
	}
#menu_products li:last-child {
	border-right: none;
	}
#menu_sub li a,#menu_products li a {
	display:block;
	color: #fff;
	font-size: 1.43em;
	font-weight: normal;
	text-decoration:none;
	width: 100%;
	background:url('../../common/img/icon_arrow.png')  no-repeat right center;
	}
#menu_sub li:hover,#menu_products li:hover{
	opacity: 0.8;
	background:#98d2f1;
	}

/*main*/
main{
	width: 100%;
	min-width: 1200px;
	overflow: hidden;
	background:url('../../img/bottom_bg.jpg')  repeat-x center top;
	background-size: 100% 100%;
	background: -webkit-linear-gradient(to top, rgba(179,228,248,1) 0%,rgba(225,244,252,1) 100%);
	background: linear-gradient(to top, rgba(179,228,248,1) 0%,rgba(225,244,252,1) 100%);
	}

section{
	width: 1200px;
	margin: 0px auto;
	padding: 0px auto;
	margin-top: 100px;
	margin-bottom: 100px;
	overflow: hidden;
	background: #ffffff;
	}
section .inner{
	width: 1000px;
	overflow: hidden;
	margin: 0px auto;
	padding: 0px auto;
	margin-top: 100px;
	margin-bottom: 100px;
	}

h3{
	font-size: 3.571em;
	font-weight: bold;
	margin-bottom: 50px;
	text-align: center;
	}	

ol{
	text-align: left;
	line-height: 1.6;
	}

ol li{
	list-style-position: none;
	margin: 10px 0px 0px 1.4em;
	}

table {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}
th,td {
	line-height: 1.6;
	padding: 20px;
	text-align: left;
	vertical-align: top;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	}
th {
	width: 160px;
	font-weight: bold;
	border-top: 1px solid #68c9f2;
	border-bottom: 1px solid #68c9f2;
	border-right: 10px solid #fff;
	}
td{
	}
tr{
	border-top: 1px solid #cccccc;
	border-bottom: 1px solid #cccccc;
	}
tr:last-child {
	border-bottom: 1px solid #cccccc;
	}

h4{
	text-align: left;
	font-size: 1.43em;
	font-weight: bold;
	overflow: hidden;
	padding: 0px;
	color: #fff;
	background: -webkit-linear-gradient(to left, rgba(179,228,248,1) 0%,rgba(104,201,242,1) 100%);
	background: linear-gradient(to left, rgba(179,228,248,1) 0%,rgba(104,201,242,1) 100%);
	margin-bottom: 20px;
	margin-top: 50px;
	}
h4 span{
	padding: 20px;
	display: block;
	background:url('../../common/img/h_bg.png') top left no-repeat;
	background-size: auto 100%;
	}
h5{
	font-size: 1em;
	border-left: 5px solid #68c9f2;
	padding-left: 5px;
	margin-bottom: 5px;
	}

table.table_list{
border-collapse: collapse;
border-spacing: 0;
width: 100%;
}
table.table_list th,table.table_list td {
line-height: 1.6;
padding: 10px;
text-align: left;
vertical-align: top;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
table.table_list th {
width: 160px;
font-weight: bold;
}
table.table_list tr{
border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc;
}
table.table_list tr:last-child {
border-bottom: 1px solid #ccc;
}
.table_list tr{
border-left: 1px solid #ccc;
border-top: 1px solid #ccc;
}
.table_list td{
border-right: 1px solid #ccc;
	width: 50%;
}
.table_list td.td_none{ 
display:  none;
}


/*company*/
#company_01 h4{
	color: #00b4ed;
	background:none;
	margin-top: 0px;
	margin-bottom: 50px;
	}
#company_01 .box{
	float: left;
	width: 470px;
	}
#company_01 img{
	float: right;
	margin: 0px auto;
	padding:  0px auto;
	}
#company_01 p{
	line-height: 2;
	}

#company_02 th,#company_04 th{
	white-space: nowrap;
	}

/*products*/
#products h4{
	color: #00b4ed;
	font-weight: bold;
	font-size: 2.14em;
	background:none;
}
#products h4 span{
	color: #000;
	display: inline-block;
	font-weight: bold;
	font-size: 0.667em;
	background:none;
	padding: 0px;
	}

/*recruit*/
#recruit .box_l{
	float: left;
	width: 470px;
	}
#recruit .box_r{
	float: right;
	width: 470px;
	}
#recruit h4{
	margin-top: 0px;
	}

/* btn*/
.btn{
	overflow: hidden;
	margin: 0;
	padding: 0;
	margin-top: 20px;
	}
.btn a,.btn button{
	display: block;
	text-align:center;
	background: #5b636e;
	color: #fff;
	font-size: 1em;
	font-weight: bold;
	border-top: none;
	border-left: none;
	border-right: 4px solid #323740;
	border-bottom: 4px solid #323740;
	text-decoration:none;
	margin: 0px auto;
	padding: 0px auto;
	width: 200px;
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	outline:none;
	}
.btn a:hover,.btn button:hover{
	background: #7c828b;
	border-right:4px solid #7c828b;
	border-bottom:4px solid #7c828b;
	}

/*contact*/
#contact .box {
	background: #dcdcdc;
	padding-left:50px;
	padding-right:50px;
	}
table.table_form {
	border-collapse: separate;
	border-spacing: 0;
	width: 100%;
	margin: 0px auto;
	padding: 0px auto;
	background: #dcdcdc;
	padding-top: 40px;
	padding-bottom: 40px;
}
table.table_form th {
	padding: 10px 0px;
	}
table.table_form td {
	padding: 10px 0px;
	}
table.table_form th {
	width: 200px;
	border-top: none;
	border-bottom:none;
	border-right:none;
	}
table.table_form td{
	}
table.table_form tr{
	border-top: none;
	border-bottom:none;
	}
table.table_form tr:last-child {
	border-bottom:none;
	}

input,textarea{
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100% !important;
	padding: 0.5em;
	font-size: 1em;
	border: none;
	box-shadow: none;
	}

.select_wrap{
	overflow: hidden;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	padding: 0.5em;
                    background-color: #ffffff;
	background-image: none;
	box-shadow: none;
	position: relative;
	}

.select_wrap select{
	width: 100%;
	padding-right: 1em;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
	font-size: 1em;
	position: relative;
	}

.select_wrap select::-ms-expand {
	display: none;
	}

.select_wrap::before{
	content: '';
	position: absolute;
	top: 15px;
	right: 19px;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 8px solid #333333;
	pointer-events: none;
	}
input.half{
	width: 50% !important;
	}
input.quarter{
	width: 25% !important;
	}
input.w100{
	width: 100px !important;
	}
textarea{
	display: block;
	width: 100% !important;
	height: 10em !important;
	}
#contact .necessary{
	color: #cc3333;
	}
/*news*/
#news{
	width: 1200px;
	margin: 0px auto;
	padding: 0px auto;
	margin-top: 100px;
	margin-bottom: 100px;
	overflow: hidden;
	}
#news div.inner{
	width: 1000px;
	margin: 0px auto;
	padding: 0px auto;
	margin-top: 100px;
	margin-bottom: 100px;
	overflow: hidden;
	}

#news .news_list{
	width: 100%;
	float: none;
	}

#news .news_list ul li p.news_txt{
	width:730px;
	}
#news_bottom h4{
	border: 1px solid #ccc;
	padding: 20px;
	color: #000;
	background:none;
	margin-top: 0px;
	margin-bottom: 20px;
	}
#news_bottom p.news_date{
	font-weight: bold;
	text-align: right !important;
	margin-bottom: 50px;
}
#news_bottom div.news_txt img{
	max-width: 100%;
}

/*environment*/
#environment .mgt1em{
                                margin-top: 1em;
                                }
#environment .txt_18{
                                font-size: 1.285em;
                                }
#environment .txt_50{
                                font-size: 3.571em;
                                }
#environment .txt_bold{
                                font-weight: bold;
                                }
#environment .h_company{
                                margin: 50px 0 0;
                                padding: 15px;
                                border: 5px solid #b3e4f8;
                                text-align: center;
                                font-size: 1.428em;
                                }
#environment .btn a{
	font-size: 1.428em;
	width: 300px;
	height: 60px;
                                font-weight: normal;
	}
#environment .btn a span.small{
	font-size: 0.8em;
	}

#environment #intro p{
                                line-height: 2;
                                }
#environment p.copy{
                                font-size:  1.428em;
                                color: #00b4ed;
                                font-weight: bold;
                                }

#environment .item{
	display: flex;
	justify-content: space-between;
	align-items: start;
                                padding: 50px 0;
                                border-bottom: 1px solid #cccccc;
                                }

#environment .item.nobd{
                                padding: 50px 0 0;
                                border-bottom: none;
                                }

#environment .detail{
                                width: 550px;
                                }

#environment .detail h3{
                                font-size: 1.875em;
                                text-align: left;
                                }

#environment .detail h3 span.small{
                                font-size: 0.6em;
                                }
#environment .detail .btn a{
	margin: 40px 0 0;
	}
#environment ul.detail_list li{
	list-style-type: none;
	margin: 0px 0px 10px 0;
	padding-left: 20px;
	position: relative;
                                line-height: 1.6;
	}

#environment ul.detail_list li::before{
	content: "";
	width: 14px;
	height: 14px;
	border-radius: 100%;
	background-color: #68c9f2;
	position: absolute;
	top: 3px;
	left: 0;
	}
#environment ul.disc{
                                margin-top: 0.5em;
                                }
#environment ul.disc li{
                                list-style-type: disc;
                                margin-left: 1em; 
                                padding-left: 0;
                                }
#environment ul.disc li::before{
                                content: none;
                                }
#environment ul.att_list li{
	list-style-type: none;
	margin: 0px 0px 10px 1em;
                                line-height: 1.6;
	}

#environment ul.att_list li::before{
	content: "※";
                                display:inline-block;
	margin-left: -1em;
	width: 1em;
	}

#environment figure{
                                width: 400px;
                                }

#environment figure img{
                                display: block;
                                width: 100%;
                                height: auto;
                                margin: 0 auto;
                                }

#environment figure img.img_environment_09{
                                width: 180px;
                                }

#environment .box_inquiry{
	-js-display: flex;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-box-align: start;
	-ms-flex-align: start;
	-webkit-align-items: start;
	align-items: start;
                                }

#environment .box_inquiry h3{
                                display: block;
                                color: #000000;
                                font-weight: bold;
                                font-size: 2.142em;
                                background:none;
                                text-align: left;
                                }

#environment .box_inquiry .btn{
                                margin-top: 0;
                                }


#environment .box_inquiry .col_3399cc{
	color: #3399cc;
                                font-size: 2.857em;
                                }
/* Media Queries
==========================================================================*/

@media screen and (max-width:1200px) {
body{
}

/*title*/
#title{
	width: 100%;
	height: auto;
}

#title h2{
	width: 98%;
	height: auto;
	}

/*#menu_sub,#menu_products*/
#menu_sub,#menu_products{
	width: 100%;
}
#menu_sub{
	min-width: 100%;
}
#menu_products{
	min-width: 100%;
	}
#menu_sub ul,#menu_products ul {
	}
#menu_sub ul {
	width: 100%;
	}
#menu_products ul {
	width: 100%;
	}
#menu_products ul:after{
  content:"";
  display: block;
  width:16.6666%;
}
#menu_products li{
	border-bottom: 1px solid #fff;
	}
/*main*/
main{
	width: 100%;
	min-width: 100%;
	overflow: hidden;
	}

section{
	width: 100%;
	margin-top: 50px;
	margin-bottom: 50px;
	}
section .inner{
	width: 100%;
	margin-top: 50px;
	margin-bottom: 50px;
	}
h3{
	margin-bottom: 20px;
	}
h4{
	margin-bottom: 10px;
	margin-top: 20px;
	}
h4 span{
	padding: 10px;
	}

/*company*/
#company_01 h4{
	margin-bottom: 20px;
	}
#company_01 .box{
	float:none;
	width: 100%;
	}
#company_01 img{
	float:none;
	margin-top: 10px;
	}
#menu_products li {
	width: 16.666%;
	}
#menu_products li:last-child {
	margin-right: none;
	width: 33.333%;
	}
#menu_products li:nth-first-child(6):nth-child(odd){
	border-right: none;
}
/*recruit*/
#recruit .box_l{
	width: 49%;
	}
#recruit .box_r{
	width: 49%;
	}

/*news*/
#news{
	width: 100%;
	min-width: 100%;
	margin-top: 50px;
	margin-bottom: 50px;
	}
#news div.inner{
	width: 100%;
	margin-top: 50px;
	margin-bottom: 50px;
	}
#news .news_list ul li p.news_txt{
	width: 100%;
	}


/*environment*/
#environment .detail{
                    width: calc(60% - 20px);
                    }
#environment figure{
                    width: 40%;
                    }
}
@media screen and (max-width:699px) {
h3{
	font-size: 2.57em;
	}	
header h1 a{
	width:200px;
	height:75px;
	background-size:200px 75px;
	}
.menu_wrap{ 
	height: 59px;
}
ul.gnav_menu{
	margin-top: 95px;
	}
#menu_sub li{
	display: inline-block;
	list-style:none;
	padding: 10px;
	border-left:none;
	border-bottom: 1px solid #fff;
	}
#menu_sub li {
	width: 50%;
	}
#menu_sub li:last-child {
	border-right: none;
	}
#menu_sub li:nth-child(odd) {
	border-left: none;
	border-right: 1px solid #fff;
	}
#menu_sub li:nth-child(even) {
	border-right: none;
	border-left: none;
	}
#menu_sub li:last-child,#menu_sub li:nth-last-child(2):nth-child(odd) {
	border-bottom:none;
}

#menu_products li a {
	font-size: 1.2em;
	padding-right: 1em;
	width: calc(100% - 1em);
	}

th {
	width: 100px;
	}

th,td {
	padding: 10px;
	}
table.table_list tr{
border-top:none;
border-bottom: none;
border-right: 1px solid #ccc;
}
.table_list td {
display: list-item;
width: 100%;
border-top:1px solid #ccc;
border-right: none;
}


/*recruit*/
#recruit .box_l{
	float:  none;
	width: 100%;
	margin-bottom: 20px;
	}
#recruit .box_r{
	float:  none;
	width: 100%;
	}
/*contact*/
#contact .box {
	padding-left:20px;
	padding-right:20px;
	}
table.table_form {
	width: 100%;
	padding-top: 20px;
	padding-bottom: 0px;
}
table.table_form th {
	width: 100%;
	display: inline-block; 
	padding: 0px 0px 0px;
	}
table.table_form td {
	width: 100%;
	display: inline-block; 
	padding: 0px 0px 20px;
	}
input,textarea{
	font-size: 1.142857em;
	}
input.half{
	width: 100% !important;
	}
input.quarter{
	width: 50% !important;
	}
input.w100{
                    margin-top: 10px;
	width: 100px;
	}

/*environment*/
#environment .txt_50{
                                font-size: 2.5em;
                                }
#environment .txt_18{
                                font-size: 1.166em;
                                }
#environment .h_company{
                                margin: 25px 0 0;
                                padding: 5px;
                                border: 2.5px solid #b3e4f8;
                                font-size: 1.25em;
                                }
#environment .btn a{
                                margin: 0 auto;
	font-size: 1.25em;
	width: 200px;
	height: 40px;
	}

#environment p.copy{
                                font-size:  1.25em;
                                }
#environment .item{
	display: block;
                                padding: 25px 0;
                                }
#environment .item.nobd{
                                padding: 25px 0 0;
                                }
#environment .detail{
                                width: 100%;
                                }
#environment .detail h3{
                                font-size: 1.666em;
                                }
#environment .detail .btn a{
	margin: 0 auto 20px;
	}

#environment ul.detail_list li{
	margin: 0px 0px 5px 0;
	padding-left: 20px;
	}

#environment ul.detail_list li::before{
	width: 12px;
	height: 12px;
	top: 3px;
	}
#environment ul.disc li{
                                list-style-type: disc;
                                margin-left: 1em; 
                                padding-left: 0;
                                }
#environment figure{
                                width: 100%;
                                }
#environment figure img.img_environment_09{
                                width: 125px;
                                }


#environment .box_inquiry{
                                display: block;
                                text-align: center;
                                }

#environment .box_inquiry h3{
                                text-align: center;
                                }

#environment .box_inquiry .btn{
	margin-top: 25px;
	}


#environment .box_inquiry .col_3399cc{
                                font-size: 2.083em;
                                }
}

@media screen and (max-width:320px) {
#menu_products li a {
	font-size: 1em;
	padding-right: 1.8em;
	width: calc(100% - 1.8em);
	}
}