
/*** ------------------------------------------------------------------------------ 

共通パーツ

-----------------------------------------------------------------------------  ***/
/* common */
@media screen and (max-width: 1024px){
	#cont img{
		max-width:100%;
		height: auto;
	}
	#cont h1 br,
	#cont h2 br,
	#cont h3 br,
	#cont h4 br,
	#cont h5 br,
	#cont .catch br{
		display: none;
	}
}

/* section */
#cont section{
	margin:0 0 40px;
	position:relative;
}
#cont section p,
#cont section ul,
#cont section dl,
#cont section table{
	font-size:1.167em;
	margin:0 0 1.6em;
}
#cont strong{
	font-weight: normal;
	background:#FFFF99;
}
@media screen and (max-width: 1024px){
	#main section .inner{
		margin:0 10px;
	}
}

/* h */
#main h1{
	border-top:#004098 2px solid;
	border-bottom:#CCCCCC 1px solid;
	padding:10px 10px 10px 20px;
	position:relative;
	font-size:2em;
	font-weight: bold;
	margin:0 0 20px;
	letter-spacing:1px;
}
#main h1:before{
	content:"";
	display:block;
	background: #004098;
	width:5px;
	height:50%;
	position:absolute;
	left:5px;
	top:25%;
}
#main h2{
	font-size:1.833em;
	font-weight: bold;
	background: #004098;
	color:#FFFFFF;
	margin:0 0 45px;
	padding:5px 15px;
	position:relative;
}
#main h2:after{
	content:"";
	display:block;
	width: 0;
	height: 0;
	border:10px #FFF solid;
	border-top: 10px #004098 solid;
	position:absolute;
	left:20px;
	bottom:-20px;		
}
#main h3{
	border-bottom:#CCCCCC 1px solid;
	padding:10px 10px 10px 20px;
	position:relative;
	font-size:1.500em;
	font-weight: bold;
	margin:0 0 20px;
	letter-spacing:1px;
	color:#004098;
}
#main h3:before{
	content:"";
	display:block;
	background: #004098;
	width:5px;
	height:50%;
	position:absolute;
	left:5px;
	top:25%;
}
#main h4{
	font-size:1.167em;
	font-weight:bold;
	margin:0 0 10px;
}
@media screen and (max-width: 1024px){
	/*#main h1{
		margin:0 0 15px;
		background:#0074b9;
		border:none;
		color:#FFFFFF;
		padding:10px 10px 10px 30px;
	}*/
	#main h1:before{
		background: #FFF;
		left:10px;
	}
}

/* .attention（ul/p） */
#main ul.attention{
	font-size:1em;
}
#main ul.attention li{
	text-indent:-1em;
	margin: 0 0 0 1em;
}
#main p.attention{
	font-size:1em;
	text-indent:-1em;
	margin: 0 0 0 1em;
}

/* .catch */
#cont .catch{
	font-size: 2em;
	color:#f39800;
	font-weight: bold;
	letter-spacing:1px;
	margin:0 0 25px;
}
@media screen and (max-width: 1024px){
	#cont .catch{
		font-size: 1.633em;
	}
}

/* .name */
#cont .name{
	text-align: right;
}

/* .banner */
#main .banner{
	margin:0 0 50px;
}
@media screen and (max-width: 1024px){
	#main .banner{
		margin:0 10px 50px;
	}
}

/*** ------------------------------------------------------------------------------ 

more-link系

-----------------------------------------------------------------------------  ***/
/* .more-link（ul/p） */
.more-link {
	font-size: 1.333em;
}
.more-link li {
	float:left;
	margin:0 20px 20px 0;
}
.more-link a{
	display:block;
	width: 210px;
	border:#f39800 1px solid;
	border-radius:5px;
	padding:15px 15px 15px 50px;
	text-align: center;
	color:#f39800;
	font-weight: bold;
	box-sizing:border-box;
	font-size:1.214em;
}
.more-link a.link-house{
	width: 280px;
}
.more-link a.link-service{
	background: url(../img/icon_truck_pink.png) 10px center no-repeat;
}
.more-link a.link-environment{
	background: url(../img/icon_environment_pink.png) 10px center no-repeat;
}
.more-link a.link-recruit{
	background: url(../img/icon_recruit_pink.png) 10px center no-repeat;
}
.more-link a.link-house{
	background: url(../img/icon_recruit_house.png) 10px center no-repeat;
}
.more-link a.link-entry{
	background: url(../img/icon_entry_pink.png) 10px center no-repeat;
}
@media screen and (max-width: 1024px){
	.more-link a.link-entry{
		background: url(../img/icon_entry_pink.png) 10px center no-repeat;
	}
}
.more-link a.link-tel{
	background: url(../img/icon_tel_color.png) 10px center no-repeat;
}
.more-link a:hover{
	background: #f39800;
	color:#FFF;
	text-decoration: none;
	padding:15px;
}
@media screen and (max-width: 1024px){	
	.more-link {
		margin:0 !important;
	}
	.more-link li{
		width: 100%;
		float:none;
		margin:0 0 15px;
	}
	.more-link li:last-child{
		margin:0;
	}
	.more-link a{
		width: 100%;
	}
	.more-link a.link-house{
		width: 100%;
	}
}

/* .more-link02（p） */
.more-link02 {
	font-size: 1.333em;
	text-align: right;
	margin:0;
	clear:both;
}
.more-link02 a{
	display:inline-block;
	padding:0 0 0 20px;
	background: url(../img/icon_arrow02.png) left center no-repeat;
	color:#004098;
}


/* form-link */
.form-link {
	font-size: 1.167em;
}
.form-link li {
	margin:0 0 10px;
}
.form-link li:last-child{
	margin:0;
}
.form-link a{
	display:block;
	background:#f39800;
	border-radius:5px;
	padding:5px 10px 5px 50px;
	text-align: center;
	color:#FFF;
	font-weight: bold;
	box-sizing:border-box;
}
.form-link a.link-entry{
	background: url(../img/icon_entry.png) 5px center no-repeat #f39800;
}
.form-link a:hover{
	background: #f39800;
	color:#FFF;
	text-decoration: none;
	padding:5px;
}


/*** ------------------------------------------------------------------------------ 

main-contact系

-----------------------------------------------------------------------------  ***/
/* .main-contact */
.main-contact {
	position:relative;
	border:#f39800 3px solid;
	width: 700px;
	margin:0 auto 60px !important;
}
.main-contact h4{
	padding:10px 20px;
	background: url(../img/bg_slash.png) #f39800;
	color:#FFF;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1.4;
	position:relative;
	margin:0 !important;
}
.main-contact h4:before{
	display:none;
}
.main-contact h4 span{
	font-size: 1.3em;
}
.main-contact ul{
	padding:15px 20px;
	margin:0 !important;
}
.main-contact ul li{
	float:left;
	margin:0 35px 0 0;
}
.main-contact ul li.tel-sp{
	display:none;
}
.main-contact ul li.more-link{
	margin: 6px 0 0;
}
.main-contact ul li .link-tel,
.main-contact ul li .link-entry{
	width: 330px !important;
	padding:11px 30px;
}

.main-contact ul li.tel {}
#cont .main-contact ul li.tel .txt{
	font-size: 11px;
	font-weight: bold;
	margin: 0;
}
#cont .main-contact ul li.tel .txt-tel{
	display: flex;
	align-items: center;
	margin: 3px 0 0;
}
#cont .main-contact ul li.tel .txt-tel .txt01{
	width: 80px;
	display: block;
	background: #004098;
	color: #fff;
	text-align: center;
	padding: 2px 0;
	box-sizing: border-box;
	font-size: 11px;
}
#cont .main-contact ul li.tel .txt-tel .txt02{
	width: calc(100% - 80px);
	display: block;
	padding: 0 0 0 10px;
	box-sizing: border-box;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.0;
}

@media screen and (max-width: 1024px){
	.main-contact {
		border:#f39800 3px solid;
		width: auto;
		margin:0 10px 30px !important;
	}
	.main-contact h4{
		padding:10px;
		font-size: 1.333em;
	}
	.main-contact h4:before{
		display:none;
	}
	.main-contact ul{
		padding:15px;
	}
	.main-contact ul li{
		float: none;
		margin: 0;
		width: 100%;
	}
	.main-contact ul li a{
		width: 100% !important;
	}
	.main-contact ul li.tel{
		display:none;
	}
	.main-contact ul li.tel-sp{
		display: block;
	}
	.main-contact ul li.tel-sp span{
		font-size: 12px;
		display:block;
		margin:5px 0 10px;
	}
	.main-contact ul li.more-link{
		margin:0;
	}
	.main-contact ul li.more-link:nth-child(2){
		margin:0 0 10px !important;
	}
	.main-contact ul li .link-tel,
	.main-contact ul li .link-entry{
		width: 100% !important;
		padding:15px 30px;
	}
}


.main_sns{
	display:flex;
	justify-content:center;
	padding:0 5px;
}
.main_sns a{
	transition:.3s;
}
.main_sns a img{
	padding:0 5px;
	box-sizing: border-box;
}
.main_sns a:hover{
	opacity:.7;
}

/*** ------------------------------------------------------------------------------ 

block-img系

-----------------------------------------------------------------------------  ***/
/* block-img-3 */
.block-img-3 {
	text-align: center;
	font-weight: bold;
	font-size: 1.25em;
}
.block-img-3 li{
	width: 226px;
	float:left;
	margin:0 11px 10px 0;
	text-align: center;
}
.block-img-3 li:nth-child(3n){
	margin:0 0 10px 0;
}
.block-img-3 li img{
	margin:0 0 5px;
}
@media screen and (max-width: 1024px){
	.block-img-3 li{
		width: 49%;
		margin:0 0 10px;
	}
	.block-img-3 li:nth-child(even){
		float:right;
	}
}

/*** ------------------------------------------------------------------------------ 

block-menu系

-----------------------------------------------------------------------------  ***/
/* .block-menu-3  */
.block-menu-3 {
	font-size: 1em !important;
}
.block-menu-3 li{
	width: 300px;
	float:left;
	margin:0 30px 30px 0;
	box-sizing:border-box;
}
.block-menu-3 a{
	color: #333;
	display:block;
	padding:15px;
}
.block-menu-3 a:hover{
	background: #F1F1F1;
}
.block-menu-3 li a:hover{
	text-decoration: none;
}
.block-menu-3 li:nth-child(3n){
	margin:0 0 30px;
}
.block-menu-3 li h3{
	text-align: center;
	color:#004098;
	border-bottom:#333 1px solid;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7' height='12' viewBox='0 0 7 12'%3E%3Cpath d='M0 0l7 6-7 6z' fill='%23004098'/%3E%3C/svg%3E") 100% center no-repeat ;
	padding:15px 15px 10px;
}
.block-menu-3 li h3 span{
     top: 50%;
	 -webkit-transform: translateY(-50%);
	 -ms-transform: translateY(-50%);
	 transform: translateY(-50%);
	 display:block;
	 position:relative;
}
.block-menu-3 li .text{
	font-size: 1.333em;
}
@media screen and (max-width: 1024px){
	.block-menu-3 li{
		width: auto;
		float: none;
		margin:0 0 20px !important;
		border:#CCC 1px solid;
	}
	.block-menu-3 a{
		color: #333;
		display:block;
		padding:10px;
	}
	.block-menu-3 li img{
		width:120px;
		height: auto;
		float:left;
	}
	.block-menu-3 li h3{
		text-align: left;
		border: none;
		padding:0px 20px 0px 0;
		margin:0 0 10px 135px !important;
	}
	.block-menu-3 li h3 span{
		 top:0;
		 -webkit-transform: translateY(0%);
		 -ms-transform: translateY(0%);
		 transform: translateY(0%);
	}
	.block-menu-3 li .text{
		font-size: 1.167em;
		margin:0 0 0 135px;
		display:block;
	}
	.block-menu-3 li .text p{
		margin:0 !important;
	}
}

/* .block-menu-2  */
.block-menu-2 {
	font-size: 1em !important;
}
.block-menu-2 li{
	width: 340px;
	float:left;
	margin:0 20px 20px 0;
	box-sizing:border-box;
}
.block-menu-2 li:nth-child(2n){
	margin:0 0 20px;
}
.block-menu-2 a{
	color: #333;
	display:block;
	padding:35px;
	background: #F3F3F3;
}
.block-menu-2 a:hover{
	background: #CCC;
}
.block-menu-2 li a:hover{
	text-decoration: none;
}
.block-menu-2 li h3{
	text-align: center;
	color:#0073B8;
	border-bottom:#0073B8 1px solid;
	background: url(../img/icon_arrow01.png) 100% center no-repeat ;
	padding:15px 15px 10px;
	font-size: 1.5em;
	font-weight: bold;
	margin:0 0 10px;
}
.block-menu-2 li h3 span{
     top: 50%;
	 -webkit-transform: translateY(-50%);
	 -ms-transform: translateY(-50%);
	 transform: translateY(-50%);
	 display:block;
	 position:relative;
}
.block-menu-2 li .text{
	font-size: 1.333em;
}
@media screen and (max-width: 1024px){
	.block-menu-2 li{
		width: auto;
		float: none;
		margin:0 0 20px !important;
		border:#CCC 1px solid;
	}
	.block-menu-2 a{
		color: #333;
		display:block;
		padding:10px;
	}
	.block-menu-2 li img{
		width:120px;
		height: auto;
		float:left;
	}
	.block-menu-2 li h3{
		text-align: left;
		border: none;
		padding:0px 20px 0px 0;
		margin:0 0 10px 135px !important;
	}
	.block-menu-2 li h3 span{
		 top:0;
		 -webkit-transform: translateY(0%);
		 -ms-transform: translateY(0%);
		 transform: translateY(0%);
	}
	.block-menu-2 li .text{
		font-size: 1.167em;
		margin:0 0 0 135px;
		display:block;
	}
	.block-menu-2 li .text p{
		margin:0 !important;
	}
}


/*** ------------------------------------------------------------------------------ 

block-content系

-----------------------------------------------------------------------------  ***/

/* .block-content-2  */
.block-content-2 {
	font-size: 1em !important;
}
.block-content-2 li{
	width: 340px;
	float:left;
	margin:0 20px 20px 0;
	box-sizing:border-box;
	color: #333;
	background: #F3F3F3;
	box-sizing:border-box;
}
.block-content-2 li:nth-child(2n){
	margin:0 0 20px;
}
.block-content-2 li h3{
	text-align: center;
	color:#0073B8;
	border-bottom:#0073B8 1px solid;
	margin:10px 20px 15px;
	padding: 0 0 10px;
	font-size: 1.633em;
	font-weight: bold;
}
.block-content-2 li h3 span{
     top: 50%;
	 -webkit-transform: translateY(-50%);
	 -ms-transform: translateY(-50%);
	 transform: translateY(-50%);
	 display:block;
	 position:relative;
}
.block-content-2 li .text{
	padding:0 20px 15px;
	display: block;
	font-size: 1.167em;
}
@media screen and (max-width: 1024px){
	.block-content-2 li{
		width: auto;
		float: none;
		margin:0 0 20px !important;
		color: #333;
		display:block;
		padding:10px;
	}
	.block-content-2 li img{
		width:120px;
		height: auto;
		float:left;
	}
	.block-content-2 li h3{
		text-align: left;
		border: none;
		padding:0;
		margin:0 0 10px 135px !important;
	}
	.block-content-2 li h3 span{
		 top:0;
		 -webkit-transform: translateY(0%);
		 -ms-transform: translateY(0%);
		 transform: translateY(0%);
	}
	.block-content-2 li .text{
		font-size: 1.167em;
		margin:0 0 0 135px;
		padding:0;
		display:block;
	}
	.block-content-2 li .text p{
		margin:0 !important;
	}
}

/*** ------------------------------------------------------------------------------ 

img-text系

-----------------------------------------------------------------------------  ***/
/* img-text200 */
#cont .img-text200 .img{
	float:left;
	width: auto;
	margin:0 20px 20px 0;
}
#cont .img-text200 .text{
	margin:0 0 0 220px;
}
@media screen and (max-width: 1024px){
	#cont .img-text200 .img{
		width: 120px;
		margin:0 10px 5px 0 !important;
	}
	#cont .img-text200 .text{
		margin:0;
	}
}
/* img-text220 */
#cont .img-text220 .img{
	float:left;
	width: auto;
	margin:0 20px 20px 0;
}
#cont .img-text220 .text{
	margin:0 0 0 240px;
}
@media screen and (max-width: 1024px){
	#cont .img-text220 .img{
		width: 120px;
		margin:0 10px 5px 0 !important;
	}
	#cont .img-text220 .text{
		margin:0;
	}
}

/*** ------------------------------------------------------------------------------ 

table系

-----------------------------------------------------------------------------  ***/

/* type01 上グレー */
table.type01 {
	width: 100%;
	border:#CCC 1px solid;
}
table.type01 th{
	border:#CCC 1px solid;
	padding:5px 10px;	
	font-weight: bold;
}
table.type01 .headline th{
	text-align: center;
	background: #F0F0F0;
	font-weight: normal;
}
table.type01 td{
	border:#CCC 1px solid;
	padding:5px 10px;
	text-align: right;
}
table.type01 td.total,
table.type01 .last th,
table.type01 .last td{
	font-weight: bold;
}
@media screen and (max-width: 1024px){
	table.type01 {
		font-size: 0.917em !important;
	}
	table.type01 th,
	table.type01 td{
		padding:5px 5px;	
	}
}


/*** ------------------------------------------------------------------------------ 

フォーム系

-----------------------------------------------------------------------------  ***/

/* form */
.form table{
	width: 100%;
	border:#CCC 3px solid;
	font-size: 1.333em;
	border-collapse: separate;
}
.form table th{
	background-color: #F2F2F2;
	border:#CCC 1px solid;
	padding:15px 20px;
	font-weight: bold;
	width:180px;
	position:relative;
}
.form table th span{
	background: #f39800;
	color:#FFF;
	padding:3px 10px;
	font-size: 0.863em;
	display:inline-block;
	position:absolute;
	right:15px;
	top:15px;
	border-radius:5px;
}
.form table td{
	border:#CCC 1px solid;
	padding:15px 20px;
}
.form table td input[type=tel],
.form table td input[type=email],
.form table td input[type=text],
.form table td textarea{
	border:#CCC 1px solid;
	padding:5px;
	width: 100%;
	box-sizing:border-box;
}
.form table td textarea{
	height: 200px;
}
.form table td.width-s input{
	width: 80px;
}
.form table td.width-m input{
	width: 300px;
}
.form table td .attention{
	margin:10px 0 0 !important;
	font-size: 0.8em !important;
}
@media screen and (max-width: 1024px){
	.form table{
		border:#CCC 2px solid;
		font-size: 1.25em;
		border-collapse: collapse;
	}
	.form table th{
		display: list-item;
		list-style:none;
		border: none;
		border-bottom:#CCC 1px solid;
		padding:10px 15px;
		width: auto;
	}
	.form table th span{
		position: relative;
		right: 0;
		top: 0;
		margin:0 0 0 10px;
	}
	.form table td{
		display: list-item;
		list-style:none;
		padding:10px 15px;
		border: none;
		border-bottom:#CCC 1px solid;
	}
	.form table td input[type=tel],
	.form table td input[type=email],
	.form table td input[type=text],
	.form table td textarea{
		width: 100% !important;
	}
	.form table td textarea{
		height: 160px;
	}
}

#form-btn {
    text-align: center;
    padding:10px 0 0;
}
#form-btn li{
    display:inline-block;
    margin:0 5px 10px;
}

#form-btn input[type="submit"],
#form-btn input[type="button"] {
    width: 200px;
    padding: 15px 0;
    background: #f39800;
    border: none;
    text-align: center;
    color: #FFF;
    font-size: 1.333em;
    font-weight: bold;
    outline: none;
    cursor: pointer;
	border-radius:5px;
}

#form-btn input[type="submit"]:hover{
    background: #D63333;
}
#form-btn input[type="button"] {
    background: #CCC;
    color:#333;
}
#form-btn input[type="button"]:hover {
    background: #999;
}


/*** ------------------------------------------------------------------------------ 

貸し切り料金

-----------------------------------------------------------------------------  ***/
.only-use-price{ width:100%;}
.only-use-price + p{ text-align: right;}

.only-use-price th{
	text-align: center;
    font-weight: normal;
    border: #CCC 1px solid;
    padding: 5px 10px;
	background: #F0F0F0;
}
.only-use-price td{
    border: #CCC 1px solid;
    padding: 5px 10px;
    text-align: right;
}