@charset "utf-8";

/*共通*******************************************************************/

.site-content {
	padding-top: 65px;
}
.home .site-content {
	padding-top: 0;
}
@media (max-width: 767px) {
.header {
    height: 50px;}
  .site-content {
	padding-top: 50px;}

}


/***ページヘッダー***/
.page-header {
	width: 100%;
	height: 50vw;
	max-height: 400px;
	background: url(../images/dots.png) repeat;
	position: relative;
	display: flex;
	align-items: center;
	padding: 0 60px;
}
.page-header:before {
	content: "";
	display:block;
	position:absolute;
	top:0;
	bottom: 0;
	left: 0;
	right: 0;
	background-size: cover;
	background-position: center center;
	z-index: -1;
}
.page-header h1 {
	text-shadow: 2px 2px 6px #000;
}


/*各ページヘッダー画像*/
.page-header:before {
	background-image: url(../images/61351339.jpg);
}
.ability .page-header:before {
	background-image: url(../images/header-ability.jpg);
}
.vehicle .page-header:before {
	background-image: url(../images/header-vehicle.jpg);
}
.flow .page-header:before {
	background-image: url(../images/header-flow.jpg);
}
.company .page-header:before {
	background-image: url(../images/header-company.jpg);
	background-position: center bottom;
}
.recruit .page-header:before {
	background-image: url(../images/header-recruit.jpg);
	background-position: center top;
}


/*シンプル・ページヘッダー*/
.simple-header h1 {
	position: relative;
}
.simple-header h1:before {
	content: "";
	display: block;
	width: 40px;
	height: 4px;
	background: #C963C5;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -1em;
	margin: 0 auto;
}


@media (max-width: 1024px) {
	.page-header {
		padding: 0 30px;}
}
@media (max-width:767px) {
	.page-header {
		height: 60vw;
		padding: 0 15px;}
}



/***２カラムレイアウト***/
.two-part-container {
	width: 100%;
	max-width: 1720px;
	padding-left: 60px;
	padding-right: 60px;
	margin-right: auto;
    margin-left: auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.navi-block {
	width: 23%;
}
.navi-block ul {
	position: sticky;
	top: 70px; 
}

.contents-block {
	width: 70%;
}

.navi-block ul li {
	margin-bottom: 1em;
}
.navi-block ul li:last-child {
	margin-bottom: 0;
}
.navi-block ul li a {
	display: inline-block;
	position: relative;
	padding-left: 10px;
	color: #2698BF;
	transition: .2s;
}
.navi-block ul li a:before {
	content: "";
	display: block;
	width: 6px;
	height: 7px;
	background: url(../images/sankaku-p.svg);
	background-size: 100% 100%;
	position: absolute;
	top: calc(50% - 3px);
	left: 0;
}
.navi-block ul li a:after {
	content: "";
	display: block;
	width: 0;
	height: 1px;
	background: #DF4959;
	position: absolute;
	bottom: 0;
	left: 0;
	transition: .2s;
}
.navi-block ul li a:hover {
	color: #DF4959;
	transform: translateX(10px);
}
.navi-block ul li a:hover:after {
	width: 100%;
}
.navi-block ul li a:active {
	color: #DF4959;
	transform: translateX(-10px);
}


@media (max-width: 1024px) {
	.two-part-container {
		padding-left: 30px;
		padding-right: 30px;}
	.navi-block {
		display: none;}
	.contents-block {
		width: 100%;}	
}
@media (max-width: 767px) {
	.two-part-container {
		padding-left: 15px;
		padding-right: 15px;}	
}



/************************************************************
問い合わせフォーム
************************************************************/
#mail_form dl {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 30px;
}
#mail_form dl:last-child {
	margin-bottom: 0;
}
#mail_form dl dt {
	width: 250px;
	font-weight: 500;
	padding-left: 45px;
}
#mail_form dl dd {
	width: calc(100% - 250px);
}

.required {
	position: relative;
}
.required:before {
	content: "必須";
	display: inline-block;
	font-size: 11px;
	color: #fff;
	padding: 0 7px;
	border-radius: 10px;
	background: #620A94;
	position: absolute;
	top: 5px;
	left: 0;
}

#mail_form input[type="text"], #mail_form input[type="email"], #mail_form input[type="tel"],#mail_form textarea, #classification{
    width: 100%;
    padding: 15px 10px;
    border: 1px solid #cccccc;
    color: #222;
    font-size: 16px;
}
#zipcode, #classification {
	max-width: 200px !important;
}
/* Chrome, Safari */
input::-webkit-input-placeholder{
    color: #999;
} 
/* Firefox */
input::-moz-placeholder{
    color: #999;
} 
/* Firefox 18以前 */
input:-moz-placeholder{
    color: #999;
}
/* IE */
input:-ms-input-placeholder{
    color: #999;
}
#mail_form .wpcf7-list-item {
	display: block;
}

/*チェックボックスStyle*/
.check .wpcf7-list-item input[type="checkbox"]{ 
  display: none;
}
.check .wpcf7-list-item-label {
  position: relative;
  padding-left: 33px;		  
}
		
.check .wpcf7-list-item-label:before{
  width: 20px;
  height: 20px;
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  background: #fff;
  border: 1px solid #c3c3c3;
  border-radius: 2px;
}

.wpcf7-list-item input[type="checkbox"]:checked + .wpcf7-list-item-label:after {
    content: "";
    position: absolute;
    display: block;
    box-sizing: border-box;
    width: 18px;
    height: 9px;
    margin-top: -9px;
    top: 50%;
    left: 3px;
    transform: rotate(-45deg);
    border-bottom: 3px solid;
    border-left: 3px solid;
    border-color:  #ED1D24;			
}

span.wpcf7-list-item{
  margin-left: 0!important;
  margin-right: 20px!important;  
}


/*RadioボタンStyle*/
.radio .wpcf7-list-item input[type="radio"]{ 
  display: none;
}
.radio .wpcf7-list-item-label {
  position: relative;
  padding-left: 33px;		  
}
		
.radio .wpcf7-list-item-label:before{
  width: 20px;
  height: 20px;
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  background: #fff;
  border: 2px solid #ccc;
  border-radius: 50%;
}

.radio .wpcf7-list-item-label:after{
	content: '';
	display: block;
    width: 16px;
    height: 16px; 
    border-radius: 50%;
   border: 4px solid #00a1d6;
    position: absolute;
    left: 2px;
    top: 2px;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	opacity: 0;	  
}
.wpcf7-list-item input[type="radio"]:checked + .wpcf7-list-item-label:after {
    opacity: 1;			
}

span.wpcf7-list-item{
  margin-left: 0!important;
  margin-right: 20px!important;  
}


/*Submit*/
#mail_form p#form_submit {
    margin: 0 auto;
}

p#form_submit {
    text-align: center;
}
#mail_form input[type="submit"] {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 240px;
    height: 60px;
    border-radius: 30px;
    border: 2px solid #E04959;
    text-decoration: none;
    font-weight: 700;
    color: #E04959 !important;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0;
    background: linear-gradient(to right, #fff 60%, #f3c7d6 70%, #c963c5 80%, #795ac0 90%);
	background-size: 400% 100%;
	background-position: 0% 50%;
    transition: all .5s;    
    z-index: 10;
    margin: 0 auto;
    cursor: pointer;
  }
#mail_form input[type="submit"]:hover {
	background-position: 100% 50%;
	color: #fff !important;
	transition: all .3s ease;
	border: 2px solid #E04959;
}
.submit-btn_wrapper {
	padding-top: 60px;
	margin-top: 60px;
	position: relative;
	border-top: 1px solid #ccc
}


@media (max-width:767px) {
	#mail_form dl dt, #mail_form dl dd {
		width: 100%;}
	#mail_form dl dt {
		margin-bottom: 10px;
		padding-left: 0;}
	#mail_form dl dt.required {
		padding-left: 45px;}		
}



/************************************************************
運搬車両一覧
************************************************************/
.vehicle-anchor a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 200px;
	height: 60px;
	border-radius: 30px;
	margin: 0 10px;
	font-size: 14px;
	color: #E04959 !important;
	font-weight: 700;
	border: 2px solid #E04959;
	background: linear-gradient(to right, #fff 60%, #f3c7d6 70%, #c963c5 80%, #795ac0 90%);
	background-size: 400% 100%;
	background-position: 0% 50%;
	transition: .5s;
	line-height: 1.4;
}
.vehicle-anchor a:hover {	
	background-position: 100% 50%;
	color: #fff !important;
	transition: all .3s ease;
	border: 2px solid #E04959;
}


.vehicle-list {
	width: calc(33.3% - 20px);
	margin-right: 30px;
	margin-bottom: 30px;
	border: 2px solid #C963C5;
	border-radius: 20px;
	overflow: hidden;
	font-size: 14px;
	line-height: 1.2;
}
ul li.vehicle-list:nth-child(3n){
	margin-right: 0;
}
/*
.vehicle-photo {
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.vehicle-photo:before {
	content: "";
	display: block;
	padding-top: 65%;
}
*/
.vehicle-data {
	padding: 20px;
}
.vehicle-data li {
	padding: 9px 0;
	border-bottom: 1px dashed #ddd;
}
li.trailer-header {
	border-bottom: 2px solid #ddd;
	font-weight: 500;
}

.vehicle-data li:last-child {
	border-bottom: none;
}


.label {
	width: 32%;
	font-weight: 500;
	padding: 0 5px;
}
.tractor_box, .trailer_box {
	width: 34%;
	padding: 0 5px;
}
.label_2 {
	width: 40%;
	font-weight: 500;
	padding: 0 5px;
}
.data_box {
	width: 60%;
	padding: 0 5px;
}

@media (max-width:1124px) {
	.vehicle-list-wrapper {
		justify-content: space-between;}
	.vehicle-list {
		width: 48%;
		margin-bottom: 4%;
		margin-right: 0;}
}
@media (max-width:767px) {
	.vehicle-list {
		width: 100%;}
	.vehicle-anchor a{
		width: 33%;
		height: 50px;
		font-size: 12px;
		margin: 0 5px;
		line-height: 1.2;}
	.vehicle-anchor a:first-child {
		margin-left: 0;}
	.vehicle-anchor a:last-child {
		margin-right: 0;}
	.vehicle-data {
		padding: 10px;}
}


/************************************************************
運搬車両一覧
************************************************************/
.table_item {
	width: 30%;
	border-top: 1px solid #C963C5;
	padding: 15px 10px;
}
.table_content {
	width: 70%;
	border-top: 1px solid #F3C7D6;
	padding: 15px 10px;
}
.table li:last-child .table_item {
	border-bottom: 1px solid #C963C5;
}
.table li:last-child .table_content {
	border-bottom: 1px solid #F3C7D6;
}

.ttl-bar {
	padding-top: 40px;
	margin-bottom: 30px;
	position: relative;
}
.ttl-bar:before {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background-color: #ddd; 
	position: absolute;
	top: 0;
	left: 0;
}
.ttl-bar:after {
	content: "";
	display: block;
	width: 1px;
	height: 5px;
	background-color: #C963C5;
	position: absolute;
	top: 0;
	left: 0;
	transition: .2s;
}
.ttl-bar.onView:after {
	width: 50px;
}


/************************************************************
重機運搬の流れ
************************************************************/
.flowchart li {
	border: 2px solid #F3C7D6;
	border-radius: 30px;
	padding: 40px;
	margin-bottom: 110px;
	position: relative;
}
.flowchart li:after {
	content: "";
	display: block;
	width: 50px;
	height: 50px;
	background: url(../images/down-arrow@2x.png) no-repeat center center;
	background-size: contain;
	position: absolute;
	bottom: -80px;
	left: 0;
	right: 0;
	margin: 0 auto;
}
.flowchart li:last-child:after {
	content: none;
}

.flowchart h2 {
	padding-bottom: 10px;
	border-bottom: 1px dashed #ddd;
}



@media(max-width:767px) {
	.flow-picture {
		margin-bottom: 20px;}
	.flowchart {
		text-align: center;	}
	.flowchart li {
		padding: 4%;
		border-radius: 20px;}
}


/************************************************************
いずみのチカラ
************************************************************/
.ability .flowchart li {
	margin-bottom: 60px;
	position: relative;
}
.ability .flowchart li:after {
	content: none;
}

