/* 
 * ------- setup ---------------------
 */


/*===========================
top
===========================*/

/* 
 * ------- additional css elements  ---------------------
 */


/*----------------------------
free area
-----------------------------*/

.free-area {
	width:100%;
	padding: 50px 0;
	/*background-image:url(../img/top/bg_freearea.png);
	background-position: 2% bottom;
	background-repeat: no-repeat;*/
	margin-bottom:30px;
}


.free-area .inner {
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
	border-bottom: 1px #777 solid;
}
.free-area .inner h2 {
	margin: 0;
	padding: 0;
	margin-bottom: 1.1em;
	width: 100%;
	background-color: #4ba10c;
	background-image: url(../img/top/bg_patten1.png);
	color: #fff;
	padding: 0.7em 1em;
	box-sizing: border-box;
	border-radius: 2px;
	line-height: 1;
	font-size:1.6em;
}

/*----------------------------
table
-----------------------------*/




table.table-weekcalender th {
	text-align:center;
	background-color: rgba(160, 160, 160, 0.5);
}
table.table-weekcalender td {
	background-color: rgba(255, 255, 255, 0.8);
	text-align:center;
}
table.table-weekcalender td:first-child {
	text-align: center;
}

table.table-weekcalender {
	margin-bottom: 10px;
}


@media only screen and (max-width: 768px) {
	
table.table-weekcalender {
 display: block;
 border-top:none;
 width:100%;
}
table.table-weekcalender thead {
 display: block;
 float: left;
 border-bottom: 1px #ddd solid;
	width: 0%;
	box-sizing: border-box;
}
table.table-weekcalender tbody {
 display: block;
 width: 100%;
 position: relative;
 overflow-x: auto;
 white-space: nowrap;
	border-bottom: 1px #ddd solid;
}
table.table-weekcalender th {
 display: block;
 width:auto;
 border-top: 1px #ddd solid;
 border-bottom:none;
 border-right:1px #ddd solid;
 width:100%;
	padding: 8px 15px;
	box-sizing: border-box;
}
table.table-weekcalender tbody tr {
display: inline-block;
vertical-align: top;
margin: 0 0;
	width: 100%;
}
table.table-weekcalender td {
 display: block;
 border-bottom:none;
 text-align:center;
 border-left:none;
	padding: 8px 0;
	background: none;
	text-indent: 20px;
}

}





/*----------------------------
header
-----------------------------*/

header .logo {
	float: left;
	margin-left: 2%;
	margin-top: 9px;
}

header .logo2 {
	margin-left:2%;
	margin-top:9px;
	padding:16px;
}
/*top image*/
.vis1 .top1{
	position: absolute;
	top:5%;
	left:6%;
}
.vis1 .top2{
	position:absolute;
	top:11%;
	left:28%;
}

.vis1 .top1 img{
	width:16vw;
}
.vis1 .top2 img{
	width:14vw;
}
 @media screen and (max-width: 768px) {
header .logo {
	width:260px !important;
	height: auto;
	
}

header .logo2 {
	padding:10px;
}
header .logo2 img {
	width:60px; /* pxで指定 */
}
}
@media screen and (max-width: 420px) {
header .logo {
	background-image:none;
/*
	background-image:url(../img/common/logo_02.png); */
	width:245px !important;
	margin-top:15px;
	height:47px !important;
	
}
header .logo img {
	width:100% !important;
	height: auto;
	
}

}
/*----------------------------
visual-cut
-----------------------------*/
/*----------------------------
visual-cut
-----------------------------*/

/* vis1、vis2、vis3、vis4の文字画像調整 */
/* 大型トラック */



/* vis2 */
.vis1 .catch {
	text-align: center;
	line-height: 1.4em;
	/* height: 14em;*/
	color: #fff;
	letter-spacing: 0em;
	font-family: 'Noto Sans Japanese', sans-serif;
	font-weight: 300;
}

.vis1 .catch {
		margin-top: -20%;
	margin-left:14%;
	font-size: 3vw;
}

@media screen and (max-width: 768px) {
	
.vis1 .catch {
	font-size: 5.0vw;
	    font-weight: 500;
		text-shadow:1px 0px #f4f1f1;
}

.vis1 .catch {
	margin-left:5%;
}

.main-vis {
	
	margin-top: 75px;
	    background-image: url(../img/top/vis01-sp.jpg);
}

}

/*----------------------------
inner
-----------------------------*/

.inqset .inner, /* お問い合わせ */ .lower-bar .inner, /* NEWS 基本データ */ .pickupsecInner, /* ピックアップ2と3 */ footer .inner, /* フッター */ footer .add-banner .inner-add-banner /* バナー付フッター */ {
	max-width:1200px!important;
	margin:0 auto;
}
/*
inquiry set　お問い合わせセット（※フォームリンクを消す場合は使う）

.inqset .inner .tel, .inqset .inner .form {
	float: none;
	text-align: center;
}

.inqset .inner .tel {
	margin-bottom: 0.8em;
}
.inqset .inner .tel .number {
	margin-left: 11px;
	line-height: 1.3em;
}
*/


/*----------------------------
news data
-----------------------------*/



.lower-bar .inner .news {
	width:40%; /* NEWS */
}



/* ↓こちらは基本変更の必要なし */
 @media screen and (max-width: 1023px) {
.lower-bar .inner .news {
	width:auto; /* NEWS */
}
.lower-bar .inner .company_data {
	width:auto; /* 基本データ */
}
}
/*===========================
secondary
===========================*/


/* 地図高さ */


#map_canvas {
	height:500px;
	margin-bottom:1em;
}
 @media screen and (max-width: 768px) {
#map_canvas {
	height:300px;
}
}
/* ビフォーアフター透かしのサイズと位置 */

.before::after {
	width:26%;
	height:26%;
	bottom: 3%;
	left: 80%;
}
.after::after {
	width:26%;
	height:26%;
	bottom: 3%;
	left: 80%;
}
/*===========================
footer
===========================*/


/* バナー位置（1つか2つの場合はfloat:right） */

footer .add-banner .inner-add-banner .wrap-banner div {
/*float:right;*/
}

.fa-truck {
	color:#30558D;}

.num_tr{
	font-size:3em;}
 @media screen and (max-width: 768px) {
.keep .one_half {
	width: 47.5%;
	float: left;
	margin: 0 0 0 5%;
}
.keep .one_half:first-child{
	margin-left: 0;
}
.keep .first {
	margin-left: 0;
	clear: left;
}


 }
 
 
@media screen and (max-width: 420px) {
.keep .one_half {
	margin: 0 0 3em 0;
	width: 100%;
}

}


.inquiry table span.txtbold{
	color:#333;}

.free-area .one_quarter img{
	width:100%;}