@charset "Shift_JIS";
/* �����R�[�h�Z�b�g */

/* reset
---------------------------------------------------- */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, /*sup*/, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}
body {
	line-height:1;
}

article, aside, dialog, figure, footer, header,
hgroup, nav, section {
	display:block;
}


blockquote, q {
	quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}

a {
	margin:0;
	padding:0;
	border:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}

ins {
	background-color:#ff9;
	color:#000;
	text-decoration:none;
}

mark {
	background-color:#ff9;
	color:#000;
	font-style:italic;
	font-weight:bold;
}

del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom:1px dotted #000;
	cursor:help;
}

table {
	border-collapse:collapse;
}

hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #ccc;
    margin:1em 0;
    padding:0;
}

input, select, textarea {
	vertical-align:middle;
	font-family:"�q���M�m�p�SPro W3", "Hiragino Kaku Gothic Pro", Osaka, "���C���I", "�l�r �o�S�V�b�N", Meiryo, sans-serif;
	margin-right:5px;
}

/* �S�̍\��
---------------------------------------------------- */
*{margin:0;padding:0;}
html{
	overflow-y:scroll;
}
body{
	font-size:90%;/* ��{�̃t�H���g�T�C�Y */
	line-height:175%;/* ��{�̍s�� */
	font-family:"�q���M�m�p�SPro W3", "Hiragino Kaku Gothic Pro", Osaka, "���C���I", "�l�r �o�S�V�b�N", Meiryo, sans-serif;
	color:#333;
	background:#f5f5f5;
	overflow-x: hidden;/*main�p*/
	overflow-y: hidden;/*main�p*/
	-webkit-text-size-adjust: 100%; /*�X�}�z�ŏ���ɕ������傫���Ȃ�΍�*/ 
}

table th,
table td {
	text-align:left;
}

.clearfix{
    zoom:1;/*for IE 5.5-7*/
	overflow:hidden;
}
.clearfix:after {
    content:".";
    display: block;
    height:0px;
    clear:both;
    visibility:hidden;
}

ol,
ul{
	list-style:none;
}

/* link
---------------------------------------------------- */
a{outline:none;}
a:link,a:visited{
	color:#3058cc;
	text-decoration:underline;
}
a:hover,a:active{
	color:#3058cc;
	text-decoration:none;
}


/* hanyo
---------------------------------------------------- */
img {border:0; vertical-align:bottom;}

.clear {clear:both;}

.f-left{float:left;}
.f-right{float:right;}

.tac{text-align:center;}
.tar{text-align:right;}
.large{font-size:120%;line-height:normal;}
.small{font-size:80%;line-height:normal;}


.img-filter a:hover img {
	opacity:0.8;
	filter: alpha(opacity=80);
}
.img-filter2 a:hover {
	opacity:0.8;
	filter: alpha(opacity=80);
}

.ln {line-height:normal;}


.bold {font-weight:bold;}
.normal {font-weight:normal;}

.kome{
	text-indent:-1em;
	margin-left:1em;
}
.img-circle {border-radius:50%;}
.img-rounded {border-radius:4px;}

/* margin-padding
----------------------------------------------------------*/
.mb05{margin-bottom:5px;}
.mb10{margin-bottom:10px;}
.mb15{margin-bottom:15px;}
.mb20{margin-bottom:20px;}
.mb25{margin-bottom:25px;}
.mb30{margin-bottom:30px;}
.mb35{margin-bottom:35px;}
.mb40{margin-bottom:40px;}
.mb50{margin-bottom:50px;}
.mb55{margin-bottom:55px;}
.mb60{margin-bottom:60px;}
.mb65{margin-bottom:65px;}

.mr01{margin-right:1px;}
.mr06{margin-right:6px;}
.mr08{margin-right:8px;}
.mr10{margin-right:10px;}
.mr15{margin-right:15px;}
.mr20{margin-right:20px;}
.mr22{margin-right:22px;}
.mr25{margin-right:25px;}
.mr30{margin-right:30px;}
.mr35{margin-right:35px;}
.mr40{margin-right:40px;}
.mr42{margin-right:42px;}
.mr45{margin-right:45px;}

.mt-15{margin-top:-15px;}
.mt30{margin-top:30px;}
.mt40{margin-top:40px;}

.ml10{margin-left:10px;}
.ml20{margin-left:20px;}
.ml25{margin-left:25px;}

.pt05 {padding-top:5px;}
.pt10 {padding-top:10px;}
.pt15 {padding-top:15px;}
.pt20 {padding-top:20px;}
.pt25 {padding-top:25px;}
.pt35 {padding-top:35px;}
.pt40 {padding-top:40px;}
.pt50 {padding-top:50px;}
.pt100 {padding-top:100px;}
.pb30 {padding-bottom:30px;}
.pb50 {padding-bottom:50px;}

.pl30 {padding-left:30px;}

.pd15 {padding-left:15px; padding-right:15px;}
.pd20 {padding-left:20px; padding-right:20px;}

/* color
----------------------------------------------------------*/
.red {color:#c33;}

/* table
----------------------------------------------------------*/
.nw {width:1%; white-space:nowrap;}

.table1{
	width:100%;
	border-collapse:collapse;
	border-top:1px solid #d0d0d0;
}
.table1 th,.table1 td{
	padding:5px 13px;
	border-bottom:1px solid #d0d0d0;
	border-right:1px solid #d0d0d0;
}
.table1 th{
	background-color:#dfdfdf;
	text-align:center;
	font-size:105%;
}
.table1 th.blue{
	background-color: #bcd2ff;
	color: #3058cc;
}

.table1 th:last-child {border-right: none;}
.table1 td:last-child {border-right: none;}
.table1 .w20 {width: 20%;}
.table1 .w25 {width: 25%;}


/* list
----------------------------------------------------------*/
ul.list_ul{
	list-style:disc;
	margin-left:20px;
}
ol.list_ol{
	list-style:decimal;
	margin-left:25px;
}

/*
.check_list{  padding: 0; margin:0xp;list-style-type: none;}
.check_list li{ list-style:none;text-indent: -1.5em; padding-left:1.5em; margin-bottom:5px; width:17%; float:left;}
.check_list li:before{content: " \f00c";font-family: FontAwesome;text-align: center; margin-right:8px; color:#f7c50e;}
*/

/* midashi
----------------------------------------------------------*/
h3 {font-size:120%;}
h4 {font-size:110%;}
h5 {font-size:110%;}
h6 {font-size:100%;}

.fs60 {font-size:60%; line-height:120%;}
.fs80 {font-size:80%;}
.fs90 {font-size:90%;}
.fs110 {font-size:110%; line-height:140%;}
.fs120 {font-size:120%; line-height:140%;}
.fs130 {font-size:130%; line-height:140%;}
.fs140 {font-size:140%; line-height:140%;}
.fs190 {font-size:190%; line-height:100%;}
.fs200 {font-size:200%; line-height:140%;}

.midashi1{
	background-color: #3366cc;
	color: #fff;
	line-height: 1.4em;
	font-size: 130%;
	padding: 5px 10px;
}

.midashi2{
	color: #3366cc;
	font-size: 120%;
	line-height: 1.4em;
	margin-bottom: 5px;
}
.midashi2_sen{
	color: #3366cc;
	font-size: 120%;
	line-height: 1.4em;
	border-collapse: collapse;
	border-left: 5px solid #3366cc;
	padding-left: 10px;
}


/* dl
---------------------------------------------------- */
.dl_list dt{
	color:#0697cc;
	font-weight:bold;
	font-size:105%;
}

	  	
/* �w�i
---------------------------------------------------- */

/* text_btn
----------------------------------------------------------*/
.text_btn{
	background-color:#fff;
	color:#3058cc;
	padding:10px 25px;
	text-align:center;
	display:inline-block;
	border-radius:6px;
	font-size: 140%;
	line-height: 1.4em;
}
.text_btn:link,
.text_btn:visited,
.text_btn:hover{ color:#3058cc; text-decoration:none;}
.text_btn i {padding-right:8px;}



/* mawarikomi
----------------------------------------------------------*/
.mawarikomi_l .image{
	float:left;
	margin-right:30px;
}
.mawarikomi_l .text{overflow:hidden;zoom:1;}

.mawarikomi_r .image{
	float:right;
	margin-left:30px;
}
.mawarikomi_r .text{overflow:hidden;zoom:1;}


/* header
---------------------------------------------------- */
h1 {float: left;}
.bg_head{
	background: url(../images/bg_head.jpg) repeat-x top;
}
.head_in{
	width: 1000px;
	margin: 0 auto;
	padding: 0 20px;
}

#head_right{
	width: 475px;
	float: right;
	height: 90px;
}

/* mainimage
---------------------------------------------------- */
#mainimage{
	width: 100%;
	/*background: url(../images/new/bg_main.jpg) repeat-x top;*/
	background-color: #f5f5f5;
	min-width: 1040px;
}

#mainimage .in{
	width: 1000px;
	margin: 0 auto;
	padding: 25px 20px;
}

/* navigation
---------------------------------------------------- */
nav {
	width:100%;
	background: url(../images/new/bg_navi.jpg) repeat-x top;
	min-width: 1040px;
}
nav ul {
	list-style: none;
	width: 1000px;
	margin: 0 auto;
	padding: 0 20px;
	height:60px;
	line-height:12px;
}
nav li {float:left;}
nav ul img{ vertical-align:top;}


/* content
---------------------------------------------------- */
main {
	font-size: 103%;
	letter-spacing: 0.05em;
	line-height: 1.6em;
}

.content{
	width:1000px;
	margin:0 auto;
	padding:0 20px;
}
.content.mt30 {margin-top: 20px;}


/* 01-index
---------------------------------------------------- */
#top_bg{
	width: 100%;
	background: url(../images/top_bg.jpg) no-repeat center top #3058cc;
}
#top_bg .in{
	width: 1000px;
	margin: 0 auto;
	padding: 25px 20px 15px 20px;
	text-align: center;
	color: #fff;
}
#top_bg .in .title{
	font-size: 260%;
	line-height: 1.4em;
	font-weight: normal;
	margin-bottom: 12px;
}


.top_box{
	width: 464px;
	background-color: #bdd7ff;
	padding: 14px;
	letter-spacing: 0;
	line-height: 1.4em;
	margin-bottom: 15px;
}
.top_box.bg2 {background-color: #bcd2ff;}
.top_box .title{
	height: 35px;
	margin-bottom: 15px;
}


#top_news{
	width: 100%;
	background-color: #e1e1e1;
}
#top_news .in{
	width: 1000px;
	margin: 0 auto;
	padding: 15px 20px;
}

#news {
	width:100%;
}
.news_scroll{
	width:990px;
	overflow-y:scroll;
	height:150px;
	padding-right:10px;
	overflow:auto;/*�ǉ����Ă݂�*/
}
#news th,
#news td {
	vertical-align:top;
}
#news th {
	font-weight:normal;
	width:1%;
	white-space:nowrap;
	padding:3px 30px 3px 0;
}
#news td {
	padding:3px 0;
}
#news td img {
	vertical-align:middle;
}

/* 02-technology
---------------------------------------------------- */
.technology_box{
	width: 485px;
}

/* 03-products
---------------------------------------------------- */
.products_photo{
	width: 1020px;
	margin-right: -20px;
	overflow: hidden;
}
.products_photo .box{
	width: 320px;
	float: left;
	margin-right: 18px;
	margin-bottom: 20px;
	text-align: center;
}
.products_photo .box img {
	margin-bottom: 5px;
	border: 1px solid #ccc;
}

/* 04-facility
---------------------------------------------------- */
.facility_box{
	width: 485px;
	margin-bottom: 20px;
}
.facility_box img{
	float: left;
	margin-right: 15px;
}
.facility_box .text{
	overflow: hidden;
	zoom:1;
	padding-top: 20px;
}
.facility_box .text.pt0 {padding-top: 0;}
.facility_box .midashi2 {font-size: 100%; margin-bottom: 10px;}


.facility_box .table1 td {text-align: center;}

/* 05-company
---------------------------------------------------- */
.company_tablelist{
	display: table;
}
.company_tablelist li{
	display: table-cell;
	list-style: none;
}
.company_tablelist li.ginkou{
	width: 140px;
	padding-right: 15px;
}


.company_box1{
	width: 680px;
	float: left;
	margin-bottom: 20px;
}
.company_box2{
	width: 280px;
	float: right;
	margin-bottom: 20px;
}

.company_box2 .box {
	border-collapse: collapse;
	border-bottom: 1px solid #ccc;
	padding-bottom: 15px;
	margin-bottom: 15px;
}

.company_box1 .table1 .list_ul li{
	width: 49%;
	float: left;
}


/* 06-contact
---------------------------------------------------- */
#contact_bg{
	width: 100%;
	background: url(../images/contact_bg.jpg) no-repeat center top;
	min-width: 1040px;
}
#contact_bg .in{
	width: 1000px;
	margin: 0 auto;
	padding: 20px 20px;
}
#contact_bg .title{
	font-size: 150%;
	color: #3058cc;
	line-height: 1.4em;
	text-align: center;
}

.contact_otoiawase{
	font-family: 'Ubuntu', sans-serif;
	font-size: 200%;
	text-align: center;
}
.contact_otoiawase i {margin-right: 5px;}

#contact_bg2{
	width: 100%;
	background-color: #bcd2ff;
	min-width: 1040px;
}
#contact_bg2 .in{
	width: 1000px;
	margin: 0 auto;
	padding: 20px 20px;
}


.table_form{
	width:100%;
	border-collapse:collapse;
	border-top:1px solid #dfdfdf;
}
.table_form th,.table_form td{
	padding:5px 13px;
	border-bottom:1px solid #dfdfdf;
	border-right:1px solid #dfdfdf;
}
.table_form th{
	background-color:#f5f5f5;
	width:25%;
	text-align:left;
	font-size: 110%;
}

.table_form th:last-child {border-right: none;}
.table_form td:last-child {border-right: none;}

.table_form .need:after { content: "\5FC5\9808"; background-color:#cc3333; color:#fff; font-size:75%; line-height:normal; padding:2px 5px; border-radius:3px; display:block; float:right}

.form-s{width:150px}
.form-m{width:250px}
.form-l{width:450px}
.form100{width:95%}
.form-h{ height:50px; width:95%}

input{font-size:100%;vertical-align:middle; padding:6px}
input[type="text"], select{ border:1px solid #ddd;padding:6px; border-radius:4px}
input:focus[type="text"]{border:1px solid #999; padding:6px;}
input[type="checkbox"], input[type="radio"] {vertical-align:middle}

.required input[type="text"], .required input[type="password"], .required select, .required textarea{ border:1px solid #fcc;padding:6px;}
.required input[type="text"]:focus, .required input[type="password"]:focus, .required textarea:focus{border:1px solid #f66; }

textarea{font-size:100%;border:1px solid #ccc;padding:6px;width:99%; border-radius:4px}
/*
input,textarea{ 
  display: inline-block; 
  font-family: FontAwesome; 
  font-style: normal; 
  font-weight: normal; 
  line-height: 1; 
  -Webkit-font-smoothing: antialiased; 
  -moz-osx-font-smoothing: grayscale;
} 
*/
.contact_privacy{
	margin-top:40px;
	padding:27px;
	font-size:90%;
	border:3px solid #ccc;
	border-radius:10px;
}
.contact_privacy h4{
	font-size:30px;
	text-align:center;
	line-height:normal;
	color:#2166a9;
	margin-bottom:10px;
}
.contact_privacy h4 span{ display:block; margin-top:5px; font-size:12px}
.contact_privacy h5{
	margin-top:15px;
	font-size:110%;
	margin-bottom:10px;
	position: relative;
}
.contact_privacy h5 span {
	position: relative;
	z-index: 2;
	display: inline-block;
	margin-right:2.5em;
	padding-right:1em;
	background-color: #fff;
	text-align: left;
}
.contact_privacy h5::before {
	position: absolute;
	top: 50%;
	z-index: 1;
	content: '';
	display: block;
	width: 100%;
	height: 1px;
	background-color: #ccc;
}
.contact_privacy ol{ margin-left:20px;margin-bottom:15px}

.submit{
	background-color:#3058cc;
    color: #fff;
	border:none;
	border-radius:5px;
	cursor:pointer;
	padding:10px 50px;
}
input[type="submit"] {
  -webkit-appearance: none;�@/*�X�}�z�̃O���f����*/
}


/*��������*/
.form-control::-moz-placeholder {
  color: #999;
  opacity: 1;
}
.form-control:-ms-input-placeholder {
  color: #999;
}
.form-control::-webkit-input-placeholder {
  color: #999;
}


.contact_waku{
	border-collapse:collapse;
	border:1px solid #dfdfdf;
	border-radius:5px;
	padding:30px 10px 30px 30px;
	margin-bottom:40px;
}
.contact_scroll{
	width:940px;
	overflow-y:scroll;
	height:300px;
	padding-right:10px;
	overflow:auto;/*�ǉ����Ă݂�*/
}

/* kabu_otoiawase
---------------------------------------------------- */
#kabu_otoiawase{
	width: 100%;
	background-color: #bcd2ff;
	min-width: 1040px;
}
#kabu_otoiawase .in{
	width: 1000px;
	margin: 0 auto;
	padding: 20px 20px;
}
#kabu_otoiawase .title{
	color: #3058cc;
	text-align: center;
	margin-bottom: 10px;
}

#kabu_otoiawase .otoiawase{
	text-align: center;
}

#kabu_otoiawase .tel{
	font-family: 'Ubuntu', sans-serif;
	font-size: 150%;
	display: inline-block;
	margin-right: 15px;
}
#kabu_otoiawase .tel i {margin-right: 5px;}

#kabu_otoiawase .mail{
	display: inline-block;
	font-size: 90%;
}

/* footer
---------------------------------------------------- */
.foot_logo{
	border-collapse: collapse;
	border-top: 1px solid #e1e1e1;
	padding-top: 15px;
}
.foot_logo .in{
	width: 1000px;
	margin: 0 auto;
	padding: 0 20px;
}

footer{
	width:100%;
	min-width:1040px;
	background-color: #464646;
}

footer .bg_foot_navi{
	width:100%;
	min-width:1040px;
	background-color: #666;
}
.bg_foot_navi ul{
	width: 1000px;
	margin: 0 auto;
	padding: 10px 20px;
	text-align: center;
	font-size: 90%;
}
.bg_foot_navi li{
	display:inline;
	border-right:1px solid #fff;
	line-height: 1.0em;
}
.bg_foot_navi li a {
	color:#fff;
	padding:0px 15px 0px 13px;
}
.bg_foot_navi a:link,
.bg_foot_navi a:visited {
	text-decoration:none;
	color:#fff;
}
.bg_foot_navi a:hover{
	text-decoration:none;
	color:#a8a8a8;
}
.bg_foot_navi .end {
	border:none;
}

footer .foot_in{
	width:1000px;
	margin:0 auto;
	padding:13px 20px;
	color: #fff;
}
footer .address{
	width: 372px;
	float: left;
	margin-right: 14px;
}
footer .iso{
	width: 165px;
	float: left;
}

.foot_otoiawase{
	font-family: 'Ubuntu', sans-serif;
	font-size: 150%;
	margin-bottom: 15px;
}
.foot_otoiawase i {margin-right: 5px;}

.foot_otoiawase a:link,
.foot_otoiawase a:visited{color: #fff;}

footer .hinmoku{
	width: 435px;
	float: right;
}
footer .hinmoku h4 {font-weight: normal;}
footer .hinmoku li {line-height: 1.4em;}


.copy {
	text-align:right;
	margin-top: 5px;
	letter-spacing: 0.05em;
}
.copy i {margin-right: 5px;}

/* print
----------------------------------------------------------*/
@media print {

#topcontrol {display:none;}
}

.map_container{	display: flex;}
.map_container_item{margin-right: 15px;}

.contact-security{
	display: flex;
	gap: 5%;
	align-items: center;
}
.contact-security img{
	width: 150px;
	height: 150px;
}