@charset "shift_jis"; 

/**************
見出し
***************/
h1 {
	position:absolute;
	top:20px;
	left:0px;
	color:#fff;
	font-weight:bold;
	font-size:0.75em;
	text-shadow: 1px 1px 0px #888, -1px 1px 0px #888, 1px -1px 0px #888, -1px -1px 0px #888;
}
h1 img {
	display:inline-block;
	margin-right:10px;
	padding-right:10px;
	vertical-align:middle;
	
}
h1 span {
	display:inline-block;
	font-size: 1.2em;
  vertical-align: middle;
}
/*ページタイトル*/
h2 {
	text-align:center;
	font-size:1.6em;
	font-weight:bold;
	line-height:1em;
	margin:50px auto 50px;
}
h2 span {
	display:block;
	font-size:0.7em;
	line-height:1em;
	margin-top:10px;
	color:#006600;
}
/*大見出し*/
h3 {
	background:#006600;
	color:#fff;
	font-size:1.2em;
	font-weight:bold;
	line-height:1.4em;
	padding:15px 20px;
	margin:0 auto 20px;
}
/*中見出し*/
h4 {
	background:#222;
	color:#fff;
	font-size:1.2em;
	font-weight:bold;
	line-height:1.4em;
	padding:15px 20px;
	margin:0 auto 20px;
}
/*小見出し1*/
h5 {
	background:#f7f7f7;
	padding:10px;
	line-height:1em;
	font-weight:bold;
	margin-bottom:15px;
}
/*小見出し2*/
.ttlWhite {
	color:#fff;
	font-weight:bold;
	font-size:1.4em;
	line-height:1em;
	text-align:center;
	padding-bottom:30px;
	text-shadow: 1px 1px 1px #286183, -1px 1px 1px #286183, 1px -1px 1px #286183, -1px -1px 1px #286183;
	margin:auto;
}
.ttlWhite span {
	display:block;
	font-size:0.6em;
	margin-bottom:5px;
}
.pointLead {
	display:block;
	text-align:center;
	font-weight:bold;
	font-size:1.4em;
	padding:30px 0 40px;
	color:#006600;
	line-height:1.4em;
}

@media only screen and (max-width:1180px){
}
@media only screen and (max-width: 768px){
h1 span {
	display:none;
}
h2 {
	margin:30px auto;
}
h2 span {
	margin-top:5px;
}
}
@media only screen and (max-width: 480px){
h2 {
	margin:20px auto;
}
/*大中見出し*/
h3,
h4 {
	padding:10px 15px;
	line-height:1.2em;
	margin:0 auto 10px;
}
.pointLead {
	font-size:1.2em;
	padding:15px 0 20px;
	line-height:1.3em;
}
.ttlWhite {
	padding-bottom:20px;
}
.ttlWhite span {
	margin-bottom:0;
}
}

/**************
共通
***************/
.contents{
}
.btnDetail a {
	display:block;
	border-radius: 5px;        /* CSS3草案 */  
	-webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 5px;   /* Firefox用 */
	background: -moz-linear-gradient(top, #008cd3, #00479d);
	background: -webkit-linear-gradient(top, #008cd3, #00479d);
	background: linear-gradient(to bottom, #008cd3, #00479d);
	color:#fff;
	text-align:center;
	padding:20px 0;
	margin-top:20px;
	font-weight:bold;
	text-decoration:none;
}
.btnDetail a::before,
.btnDetailBlack a::before {
	font-family: FontAwesome;
	content: "\f0a9";
	margin-right:5px;
	font-size:0.9em;
	color:#fff;
}
.btnDetail a:hover,
.btnDetail a:active {
	background: -moz-linear-gradient(top, #00479d, #008cd3);
	background: -webkit-linear-gradient(top, #00479d, #008cd3);
	background: linear-gradient(to bottom, #00479d, #008cd3);
}
.btnDetailBlack a {
	display:block;
	border-radius: 5px;        /* CSS3草案 */  
	-webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 5px;   /* Firefox用 */
	background: -moz-linear-gradient(top, #333, #000);
	background: -webkit-linear-gradient(top, #333, #000);
	background: linear-gradient(to bottom, #333, #000);
	color:#fff;
	text-align:center;
	font-weight:bold;
	padding:20px 0;
	margin-top:20px;
	text-decoration:none;
}
@media only screen and (max-width: 480px){
.btnDetailBlack a {
	padding:10px 0;
	margin-top:20px;
}
}
.btnDetailBlack a:hover,
.btnDetailBlack a:active {
	background: -moz-linear-gradient(top, #000, #333);
	background: -webkit-linear-gradient(top, #000, #333);
	background: linear-gradient(to bottom, #000, #333);
}
.pcMenu {
	background: -moz-linear-gradient(top, #333, #000);
	background: -webkit-linear-gradient(top, #333, #000);
	background: linear-gradient(to bottom, #333, #000);
	padding:0;
}
.pcMenu li {
	border-left:1px solid #444;
	text-align:center;
	float:left;
	width:16.6%;
}
.pcMenu li:last-child {
	border-right:1px solid #444;
}
.pcMenu li a {
	display:block;
	text-decoration:none;
	color:#fff;
	padding:25px 0;
}
.pcMenu li a:hover,
.pcMenu li a:active {
	background: -moz-linear-gradient(top, #000, #333);
	background: -webkit-linear-gradient(top, #000, #333);
	background: linear-gradient(to bottom, #000, #333);
}
.containerType1 {
	padding:50px 0 50px;
	background:#fff;
}
.containerType2 {
	padding:50px 0 50px;
	background:url(../images/common/bg1.gif) left top repeat;
}
.containerType3 {
	padding:50px 0 50px;
	background:#f7f7f7;
}
.cardLayout li {
	background:#fff;
	padding:15px;
}
.pointTxt {
	text-align:center;
	font-weight:bold;
	font-size:1.4em;
}
.pointTxt p:nth-child(1) {
	font-size:1.2em;
	padding:20px 0 10px;
	color:#C30;
}
.pointTxt p:nth-child(2) {
	line-height:1.6em;
}
.imgLtxtR .floatLeft {
	width:40%;
}
.imgLtxtR .floatLeft img {
	/*シャドウ（順序 横・下・ぼかし・広がり・色）*********************/ 
	box-shadow: 0 0 2px 0px rgba(0,0,0,0.2); 
	-moz-box-shadow: 0 0 2px 0px rgba(0,0,0,0.2); 
	-o-box-shadow: 0 0 2px 0px rgba(0,0,0,0.2); 
	-webkit-box-shadow: 0 0 2px 0px rgba(0,0,0,0.2);
}
.imgLtxtR .floatRight {
	width:58%;
}
.imgLtxtR .floatRight .listTtl {
	font-weight:bold;
	color:#006600;
	font-size:1.2em;
	margin-bottom:10px;
}
@media only screen and (max-width:1180px){
.pcMenu li {
	font-size:0.9em;
}
}
@media only screen and (max-width: 768px){
.containerType1,
.containerType2,
.containerType3 {
	padding:30px 0;
}
.imgLtxtR .floatLeft {
	width:100%;
	float:none;
	margin-bottom:20px;
}
.imgLtxtR .floatRight {
	width:100%;
	float:none;
}
}
@media only screen and (max-width: 480px){
.containerType1,
.containerType2,
.containerType3 {
	padding:20px 0;
}
.pointTxt {
	font-size:1em;
}
.pointTxt p:nth-child(1) {
	font-size:1.1em;
}
}

/*
テーブル
***************/
table {
	width:100%;
	border-collapse: collapse;
}
table td {
	background:#fff;
}
table td,
table th {
	padding:10px;
	border: 1px solid #ccc;
}
table th {
	background:#f7f7f7;
}

li table td,
li table th {
	padding:10px 10px 10px 30px;
	border: 1px solid #ccc;
}
@media only screen and (max-width:980px){
.tableScroll {
	overflow-x: auto;
}
}
@media only screen and (max-width:768px){
table {
	font-size:0.9em;
}
}
@media only screen and (max-width:480px){
table,
li table {
	font-size:0.9em;
}
table td,
table th {
	padding:5px;
	line-height:1.4em;
}
li table td,
li table th {
	padding:5px 5px 5px 25px;
	line-height:1.4em;
}
}


/**************
ヘッダー
***************/
#header{
	position:relative;
	width:100%;
	margin:0;
	clear:both;
	float:none;
}
.h-logo {
	z-index:9988;
}
.menuLogo img {
	margin:auto;
}
@media only screen and (max-width:1180px){
}
@media only screen and (max-width: 768px){
}
@media only screen and (max-width: 480px){
}

/**************
フッター
***************/
#footer{
	position:relative;
	width:100%;
	margin:0;
	clear:both;
	float:none;
	padding:30px 0;
	background:#222;
	text-align:center;
	color:#fff;
}
.copyright {
	float:left;
	margin:11px 20px 0 0;
	font-size:0.8em;
	line-height:1em;
}
.privacyLink a {
	display:block;
	background:#000;
	line-height:1em;
	text-decoration:none;
	font-size:0.8em;
	float:left;
	padding:10px 20px;
	text-align:center;
	color:#fff;
}
.privacyLink a:hover,
.privacyLink a:active {
	background:#333;
}
@media only screen and (max-width:1180px){
#footer{
	padding:20px 0;
}
}
@media only screen and (max-width: 768px){
}
@media only screen and (max-width: 480px){
#footer{
	padding:10px 0;
}
.copyright {
	font-size:0.7em;
	margin:6px 7px 0 0;
}
.privacyLink a {
	font-size:0.8em;
	padding:6px 8px;
}
}

/**************
メインビジュアル
***************/
.mainVisual {
	position:relative;
}
.mainVisual p {
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	-webkit-transform:translate(-50%,-50%);
	-ms-transform:translate(-50%,-50%);
	z-index:9989;
	width:1140px;
	text-align:center;
}
.mainVisual p img {
	text-align:center;
	margin:auto;
}
@media only screen and (max-width:1180px){
.mainVisual p {
	width:75%;
}
}
@media only screen and (max-width: 768px){
.mainVisual {
	text-align:center;
}
.mainVisual p img {
	margin:auto;
}
}
@media only screen and (max-width: 480px){
}


/*********************************************************
トップページ
*/
/**************
3事業案内
***************/
.topBusiness li {
	position:relative;
	/*シャドウ（順序 横・下・ぼかし・広がり・色）*********************/ 
	box-shadow: 0 0 2px 0px rgba(0,0,0,0.2); 
	-moz-box-shadow: 0 0 2px 0px rgba(0,0,0,0.2); 
	-o-box-shadow: 0 0 2px 0px rgba(0,0,0,0.2); 
	-webkit-box-shadow: 0 0 2px 0px rgba(0,0,0,0.2);
}
.topBusiness p a {
	font-size:0.8em;
	position:absolute;
	bottom:0;
	left:0;
	background:rgba(0,73,0,0.7); /* 緑 */
	color:#fff;
	z-index:9997;
	padding:20px;
	line-height:1.4em;
	text-decoration:none;
}
.topBusiness p a span {
	display:block;
	font-weight:bold;
	font-size:1.3em;
	margin-bottom:5px;
	line-height:1em;
}
.topBusiness p a:hover,
.topBusiness p a:active {
	background:rgba(0,73,0,0.9); /* 緑 */
}
@media only screen and (max-width: 768px){
.topBusiness li {
	position:relative;
	/*シャドウ（順序 横・下・ぼかし・広がり・色）*********************/ 
	box-shadow: 0 0 2px 0px rgba(0,0,0,0.2); 
	-moz-box-shadow: 0 0 2px 0px rgba(0,0,0,0.2); 
	-o-box-shadow: 0 0 2px 0px rgba(0,0,0,0.2); 
	-webkit-box-shadow: 0 0 2px 0px rgba(0,0,0,0.2);
}
}

/**************
topics
***************/
.topics {
	background:url(../images/topicsBg.jpg) center center no-repeat;
	background-size:cover;
	padding:30px 0 50px;
}
.topics .inner {
	background:#fff;
	padding:50px 0;
}
.news {
	margin:auto;
	width:90%;
	height:165px;
	overflow:hidden;
	overflow-y:scroll;
	font-size:0.9em;
	font-weight:bold;
}
.topics li {
	padding:15px 40px;
	border-bottom:1px solid #ddd;
}
.topics li span {
	margin-right:25px;
}

.topicsList ul {
	background:#fff;
	padding:0 20px;
}
.topicsList li {
	padding:15px;
	border-bottom:1px dotted #ddd;
}
.topicsList li span {
	font-weight:bold;
	margin-right:15px;
}
.topicsDate {
	text-align:right;
	font-size:0.9em;
	padding:0 0 10px;
}
.topicsArticle {
	padding:30px;
	background:#fff;
	line-height:1.6em;
}
.topicsArticle img {
	margin:15px 0;
}
.btnTopicslist {
	position:absolute;
	top:-40px;
	right:0;
}
.btnTopicslist a {
	display:block;
	padding:7px 10px;
	line-height:1em;
	background: -moz-linear-gradient(top, #333, #000);
	background: -webkit-linear-gradient(top, #333, #000);
	background: linear-gradient(to bottom, #333, #000);
	color:#fff;
	text-decoration:none;
	font-weight:bold;
	font-size:0.7em;
	width:100px;
	text-align:center;
	border-radius: 5px;        /* CSS3草案 */  
	-webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 5px;   /* Firefox用 */
}
.topics .btnDetailBlack {
	width:70%;
	margin:auto;
}
@media only screen and (max-width: 768px){
.topics li span {
	margin-right:0;
	display:block;
	margin-bottom:5px;
}
.topicsArticle {
	padding:20px;
}
}
@media only screen and (max-width: 480px){
.topics {
	padding:20px 0 20px;
	margin-bottom:15px;
}
.topics .inner {
	padding:20px 0;
}
.topics li {
	padding:10px 20px;
}
.topicsList ul {
	padding:0 10px;
}
.topicsList li span {
	margin-right:0;
	display:block;
}
.topicsArticle {
	padding:10px;
}
}

.product{
	margin-top:10px;
	margin-left:auto;
	margin-right:auto;
	max-width:700px;
	display:flex;
	align-items: center;
	justify-content: space-between;
	width:100%;
	border:1px solid #ddd;
	padding:10px;
	background-color:#e9f3ea;
	}
	.product_tmb{
		width:35%;
		}
	.product_cont{
		width:60%;
		}
	.product span{
		font-weight:bold;
		color:#fff;
		background-color:#cd2812;
		padding:0.5em;
		line-height:1em;
		font-size:0.875em;
		border-radius:3px;
		}
	.product p{
		font-weight:bold;
		color:#007500;
		font-size:1.250em;
		margin-top:15px;
		}
	.product a{
		margin-top:15px;
		display:inline-block;
		color:#666;
		font-size:0.938em;
		}
@media only screen and (max-width: 480px){
	.product{
		display:block;
		}
	.product_tmb,
	.product_cont{
		width:100%;
		}
	.product_cont{
		margin-top:20px;
		}
	}
	
/**************
access
***************/
.access{
	border-top:1px solid #ddd;
	padding-top:30px;
	margin-bottom:30px;
	}
.accessList{
	width:100%;
	}
	.accessList_left{
		float:left;
		width:76.07%;
		}
	.accessList_right{
		float:right;
		width:21.93%;
		text-align:center;
		}
		.accessList_right img{
			display:inline-block
			}
	.accessList_ttl{
		text-align:center;
		padding:10px;
		border: 1px solid #ccc;
    background: #f7f7f7;
		line-height: 0;
		}
		.accessList_ttl img{
			display:inline-block;
			}
	.accessList_privacy img{
		width:auto;
		height:100px;
		}
@media only screen and (max-width: 768px){
.access{
	margin-bottom:15px;
	}
.accessList_left,
.accessList_right{
	text-align:center;
	float:none;
	width:100%;
	}
	}
.cTel {
	color:#006600;
	font-weight:bold;
}
.ggmap {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
	}
	.ggmap iframe,
	.ggmap object,
	.ggmap embed {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		}

#footImg {
	width: 100%;
	height: 216px;
	background:url(../images/footImg.jpg) top left repeat-x;
	}


/*********************************************************
2nd
*/

/**************
company
***************/
.philosophy {
}
.philosophy li {
	text-align:center;
	font-family:"游明朝 Light", "游明朝 Demibold";
	font-weight:bold;
	font-size:1.3em;
	line-height:1.5em;
	background:url(../images/company/frame.jpg) center center no-repeat;
	background-size:contain;
	padding-top:26.0571%;
	position:relative;
}
.philosophy li p {
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	-webkit-transform:translate(-50%,-50%);
	-ms-transform:translate(-50%,-50%);
	width:90%;
}
.greeting {
	font-family:"游明朝 Light", "游明朝 Demibold";
	font-weight:bold;
}
.greeting p span {
	display:block;
	float:right;
	margin-top:30px;
}
@media only screen and (max-width: 980px){
.philosophy li {
	font-size:1.1em;
}
}
@media only screen and (max-width: 768px){
.philosophy li {
	background:none;
	padding:30px 0;
}
.philosophy .column3-1 li, .inner > .column3-1 li {
	margin-bottom:0;
}
}
@media only screen and (max-width: 480px){
.philosophy li {
	font-size:1em;
	padding:40px 0;
}
}

/**************
base
***************/
.base dt {
	padding:10px;
	margin-bottom:15px;
	background:#022a5b;
	color:#fff;
	font-weight:bold;
	line-height:1em;
}
.base ul li span {
	display:block;
	margin:5px 0 10px 0;
	font-size:0.8em;
}
.base iframe {
	width:100%;
}
.gmap {
height: 0;
overflow: hidden;
padding-bottom: 65%;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

/**************
results
***************/
.results {
}
.results .column3-1 li {
	background:#fff;
	padding:15px;
	font-size:0.9em;
}
.resultsDetail p img {
	margin-bottom:10px;
}
.resultsDetail dt {
	background:#f7f7f7;
	padding:10px;
	margin-bottom:5px;
	font-weight:bold;
	line-height:1em;
}
.resultsDetail dd span {
	font-weight:bold;
	color:#006600;
	display:block;
	border-bottom:1px dotted #ddd;
	padding:0 10px;
	margin-bottom:5px;
}
.resultsDetail p {
	line-height:1.4em;
	font-size:0.85em;
}

.assembly dt {
	margin-bottom:5px;
}
.assembly dt::before {
	font-family: FontAwesome;
	content: "\f0a9";
	margin-right:5px;
	font-size:0.9em;
	color:#006600;
}
.assembly p {
	font-size:0.9em;
	color:#006600;
	display:inline;
	font-weight:bold;
}
.typeTtl {
	background:#fff;
	text-align:center;
	padding:15px 0;
	margin-bottom:10px;
	border-bottom:2px solid #006600;
	font-size:1.2em;
	font-weight:bold;
	color:#006600;
}

/**************
business
***************/
.businessLink li a {
	display:block;
	border-radius: 5px;        /* CSS3草案 */  
	-webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
	-moz-border-radius: 5px;   /* Firefox用 */
	padding:15px;
	text-align:center;
	font-size:1.2em;
	font-weight:bold;
	color:#fff;
	background:#222;
	text-decoration:none;
	line-height:1.4em;
}
@media only screen and (max-width: 768px){
.businessLink li a {
	padding:15px;
	font-size:1em;
}
}
@media only screen and (max-width: 480px){
.businessLink li a {
	padding:10px 5px;
	font-size:0.9em;
}
}
.businessLink li a:hover,
.businessLink li a:active {
	background:#444;
}
.total .cardLayout li dt {
	text-align:center;
	font-weight:bold;
	padding-bottom:15px;
	margin-bottom:15px;
	border-bottom:1px dotted #ccc;
	color:#006600;
}

.inside p img,
.outside p img {
	margin:auto;
}

.charaLeadcopy {
	text-align:center;
	padding:20px 0 30px;
	font-size:1.4em;
	line-height:1.6em;
	font-weight:bold;
	color:#C30;
}
.charaCopy {
	padding:15px;
	background:#f7f7f7;
	margin-bottom:30px;
}
.charaPoint {
	text-align:center;
	font-size:1.4em;
	font-weight:bold;
}
@media only screen and (max-width: 480px){
.charaLeadcopy {
	padding:0 0 15px;
	line-height:1.4em;
}
.charaCopy {
	margin-bottom:15px;
}
.charaPoint {
	line-height:1.4em;
}
}

/**************
business - assenmbly
***************/
.process .column2-1 li p {
	margin-bottom:10px;
}
.process .column2-1 dt,
.logistics .column2-1 dt {
	padding:10px;
	margin-bottom:10px;
	background:#fff;
	border-bottom:2px solid #006600;
	font-weight:bold;
	color:#006600;
}
.process .column2-1 dd,
.logistics .column2-1 dd {
	margin-bottom:15px;
}

@media only screen and (max-width: 480px){
.process .column2-1 dt {
	padding:5px 10px;
	margin-bottom:10px;
	line-height:1.3em;
}
}

.assembly3 p {
	margin-bottom:10px;
}
.assembly3 dt {
	background:#eee;
	font-weight:bold;
	padding:10px;
	margin-bottom:10px;
	line-height:1em;
}

/**************
business - logistics
***************/
.logistics dt {
}

/**************
Recruit
***************/
.recruitLinkBtn {
	display: table;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	margin-bottom:40px;
}
.recruitLinkBtn li {
	float: left;
	margin-right: 24px;
}
.recruitLinkBtn li:last-child {
  margin-right: 0;
}
.recruitLinkBtn li a {
	border-radius: 100px;
	background-color: #f5f5f5;
	display: block;
	font-weight: bold;
	color: #13489d;
	padding: 16px 40px;
	line-height: 1;
	text-decoration:none;
}
.recruit table th,
.recruit table td {
	padding:20px;
}
.recruit .btnDetail {
	width:60%;
	margin:auto;
}
@media only screen and (max-width: 768px){
.recruit table th,
.recruit table td {
	padding:10px;
}
}
@media only screen and (max-width: 480px){
.recruit .btnDetail {
	width:80%;
}
.recruit .btnDetail a {
	padding:10px 0;
}
.recruitLinkBtn li {
	margin-right: 10px;
	margin-bottom: 0;
}
.recruitLinkBtn li a {
	border-radius: 100px;
	padding: 10px 34px;
	line-height: 1;
}
}

/**************
Contact
***************/
.contactLink i {
	margin-right:5px;
}
.contactLinkBox {
	width:30%;
	margin:auto;
}
.contactL {
	float:left;
	width:80%;
}
.contactR {
	float:right;
	width:15%;
}
.contactL span {
	display:block;
}
.contactL p {
	font-weight:bold;
}
.personalinfo dl {
	margin-bottom:20px;
	padding-bottom:20px;
	border-bottom:1px dashed #ddd;
}
.personalinfo dt {
	font-weight:bold;
	color:#006600;
}
@media only screen and (max-width:1180px){
.contactLinkBox {
	width:50%;
}
}
@media only screen and (max-width: 768px){
.contactLinkBox {
	width:60%;
}
}
@media only screen and (max-width: 640px){
.contactLinkBox {
	width:70%;
}
}
@media only screen and (max-width: 480px){
.contactLinkBox {
	width:67%;
}
}
@media only screen and (max-width: 320px){
.contactLinkBox {
	width:80%;
}
}

/**************
個人情報保護について
***************/
.pp li {
	line-height:1.4em;
	margin-bottom:15px;
}
.pp2 li {
	line-height:1.4em;
	margin-bottom:15px;
	padding-bottom:10px;
	border-bottom:1px dotted #ddd;
}
.pp li p {
	font-size:0.9em;
}
.ppBlock dd {
}



@media only screen and (max-width:1180px){
}
@media only screen and (max-width:980px){
}
@media only screen and (max-width: 768px){
}
@media only screen and (max-width: 480px){
}
