@charset "UTF-8";

@media screen and (min-width: 769px){
	main{
		padding-bottom: 140px;
	}
}
.bread-crumbs{
	position: relative;
	z-index: 9999;
}
.bread-crumbs ul{
	padding-bottom: 0;
}

.thanks_only {
    display: block;
    height: 19em;
    font-size: 1.5em;
    line-height: 1.5em;
}   

.btnback {
    background-color: #ccc !important;
}
/* +++++++++++++++++#key-visual++++++++++++++++ */

#key-visual{
	position: relative;
	z-index: 999999;
	margin-bottom: 0;
}
#key-visual h1{
	font-size: 8.1rem;
	font-weight: 900;
	width: 77%;
	margin-left: 23%;
	margin-bottom: 20px;
	margin-top: 20px;
}
#key-visual h1 img{
	display: block;
	width: 100%;
}
#key-visual p{
	width: 77%;
	margin-left: 23%;
	font-size: 2.4rem;
	line-height: 1.75;
}
#key-visual p strong{
	font-weight: 700;
	color: #da0012;
}
#key-visual .inner{
	padding-top: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}
#key-visual .pic01{
	width: 63%;
	position: absolute;
	left: 0;
	top: 0;
}
#key-visual .pic02{
	width: 22%;
	position: absolute;
	left: 0;
	bottom: 58px;
}
.form-area{
	width: 375px;
	position: relative;
	z-index: 9;
	margin-top: -35px;
}
.form-area button,
.form-area a{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 48px;
	color: #fff;
	font-size: 2.4rem;
	border-radius:  8px;
	margin-top: 10px;
	border: none;
	transition: .3s all ease;
	cursor: pointer;
}
.form-area button:hover{
	opacity: .6;
}
.form-area button{
	background: #ff9917;
	font-weight: 700;
	font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", 'Noto Sans JP', 游ゴシック, YuGothic, メイリオ, Meiryo, sans-serif;
}
.form-area a{
	background: #04c656;
	font-weight: 700;
}
#key-visual dl{
	padding-bottom: 12px;
	display: flex;
	align-items: center;
}
#key-visual dt{
	width: 135px;
	position: relative;
	padding-left: 54px;
}
#key-visual dt span{
	position: absolute;
	left: 0;
	top: -3px;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 42px;
	height: 25px;
	color: #fff;
	background: #ff3f39;
	border-radius: 3px;
	font-size: 1.4rem;
}
#key-visual dd{
	width: calc(100% - 135px);
}
select,
input[type='text']{
	height: 42px;
	width: 100%;
	border: 1px solid #a6a6a6;
	display: flex;
	align-items: center;
	padding: 0 .5em;
	font-size: 1.5rem;
	font-family: "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", 'Noto Sans JP', 游ゴシック, YuGothic, メイリオ, Meiryo, sans-serif;
}
select{
	background: url(../images/purcharse-arrow01.svg) no-repeat;
	background-position: right .75em center;
	background-size: 17px auto;
	color: #a6a6a6;
}

@media screen and (max-width: 1180px) and (min-width: 770px){
	#key-visual .pic01{
		width: calc((100% - 375px) * .98);
	}
	#key-visual h1{
		font-size: 6vw;
	}
}

@media screen and (max-width: 800px) and (min-width: 770px){
	#key-visual h1{
		width: 100%;
		font-size: 8vw;
	}
	#key-visual p{
		width: 100%;
	}
	#key-visual .pic02{
		width: calc((100% - 375px) * .6);
		bottom: auto;
		top: 26%;
		left: 7%;
	}
}



/* +++++++++++++++#sec01+++++++++++++ */
.features{
	display: flex;
	justify-content: space-between;
	padding: 85px 0 110px;
}
.features li{
	background: #e2e2e2;
	text-align: center;
	font-size: 2rem;
	padding: 15px 15px 25px;
	width: 31%;
	font-weight: 700;
}
.features .rog2{
	margin-top: 20px;
}
.features .rog2 img{
	display: block;
	max-width: 100%;
	max-height: 27px;
	margin: 0 auto;
}
#sec01 h2{
	margin-bottom: 40px;
	height: 42px;
}
#sec01 h2 img{
	height: 100%;
	width: auto;
	margin: 0 auto;
	display: block;
}
#sec01 .models{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	padding-bottom: 60px;
}
#sec01 .models li{
	width: 18%;
	margin-right: 2.5%;
	margin-bottom: 35px;
	text-align: center;
}
#sec01 .models li:nth-of-type(5){
	margin-right: 0;
}
#sec01 h3{
	font-size: 20px;
	font-weight: 700;
	margin-top: .7em;
}
#sec01 li .pic{
	border: 1px solid #a2a2a2;
}
.problem{
	padding: 40px 15px;
	border-radius: 20px;
	background: #e2e2e2;
	position: relative;
	text-align: center;
	font-weight: 700;
	font-size: 2rem;
	line-height: 2.35;
	max-width: 893px;
	margin: 0 auto 50px;
}
.problem:after{
	content: "";
	display: block;
	width: 47px;
	height: 98px;
	background: url(../images/purcharse-fukidashi01.svg) no-repeat;
	background-size: 100% auto;
	position: absolute;
	left: 0;
	right: 0;
	bottom: -87px;
	margin: auto;
}
#sec01 .pic01{
	width: 120px;
	margin: 0 auto;
	transform: translateX(35px);
}


@media screen and (min-width: 770px) and (max-width: 1180px){
	.features li{
		padding-left: 5px;
		padding-right: 5px;
		font-size: 1.8vw;
		width: 32%;
	}
}

@media screen and (max-width: 769px){

/* +++++++++++++++#sec01+++++++++++++ */
	.features{
		display: block;
		padding: 12rem 4rem 8.5rem;
	}
	.features li{
		font-size: 3.6rem;
		padding: 3rem 0 4.5rem;
		width: 100%;
		margin-bottom: 4rem;
	}
	.features .rog2{
		margin-top: 3rem;
		height: 5rem;
	}
	.features .rog2 img{
		max-height: 100%;
		height: 100%;
		width: auto;
	}
	#sec01 h2{
		margin-bottom: 4.5rem;
		height: 4.2rem;
	}

	#sec01 .models{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		padding-bottom: 7rem;
	}
	#sec01 .models li{
		width: 20.4rem;
		margin-right: 0;
		margin-bottom: 4rem;
		text-align: center;
		letter-spacing: -.1em;
	}
	#sec01 h3{
		font-size: 3rem;
		font-weight: 400;
		margin-top: 2rem;
	}
	#sec01 li .pic{
		border: .1rem solid #a2a2a2;
	}
	.problem{
		padding: 4rem;
		border-radius: 2rem;
		font-size: 3.2rem;
		line-height: 1.625;
		max-width: calc(100% - 8rem);
		margin: 0 auto 5rem;
	}
	.problem:after{
		width: 4.7rem;
		height: 9.8rem;
		bottom: -8.7rem;
	}
	#sec01 .pic01{
		width: 12rem;
		margin: 0 auto;
		transform: translateX(3.5rem);
	}
}


/* +++++++++++++++#sec03+++++++++++++ */
#sec03 h2{
	max-width: 393px;
	margin: 95px auto 65px;
}
#sec03 h2 img{
	display: block;
	width: 100%;
}
#sec03 ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#sec03 li{
	width: 47.033%;
	border: 1px solid #888888;
	padding: 28px;
	margin-bottom: 45px;
}
#sec03 li .pic{
	position: relative;
	width: 100%;
}
#sec03 li .pic.icon:after{
	content: "";
	display: block;
	width: 92px;
	height: 100%;
	background: url(../images/purcharse-icon10.svg) no-repeat;
	background-position: left bottom 8px;
	background-size: 100% auto;
	position: absolute;
	left: 10px;
	bottom: 0;
}
.data-area{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	padding: 12px 0 20px;
}
.data-area dl{
	font-size: 2.2rem;
	line-height: 1.436;
	color: #ff9617;
	width: 39%;	
	font-weight: 700;
}
.data-area table{
	width: 61%;
}
.data-area tr:nth-of-type(2n+1){
	background: #e5e5e5;
}
.data-area th{
	text-align: left;
	padding: 6px 0 6px 12px;
	font-weight: 700;
	width: 33%;
}
.data-area td{
	padding: 6px 12px 6px 0;
	width: 67%;
}
.detail dt{
	color: #ff9617;
	font-size: 1.8rem;
	margin-bottom: 10px;
	font-weight: 500;
}
.detail dd{
	line-height: 1.95;
}



@media screen and (max-width: 769px){

/* +++++++++++++++#sec03+++++++++++++ */
	#sec03 h2{
		max-width: 39.3rem;
		margin: 11.5rem auto 4.5rem;
	}
	#sec03 ul{
		display: block;
	}
	#sec03 li{
		width: 100%;
		border: .1rem solid #888888;
		padding: 3.5rem 3.5rem 1.5rem;
		margin-bottom: 4rem;
	}
	#sec03 li .pic{
		height: 43rem;
	}
	#sec03 li .pic.icon:after{
		width: 11rem;
		height: 100%;
	 	background-position: left bottom 1rem;
		left: 1rem;
	}
	.data-area{
		flex-direction: column-reverse;
		justify-content: flex-start;
		align-items: flex-start;
		padding: 1.5rem 0 3.5rem;
	}
	.data-area dl{
		font-size: 3.2rem;
		line-height: 1.625;
		width: 100%;
	}
	.data-area table{
		width: 100%;
		font-size: 3.2rem;
	}

	.data-area th{
		padding: 1rem 0 1rem 1.5rem;
		width: 28%;
	}
	.data-area td{
		padding: 1rem 1.5rem 1rem 0;
		width: 72%;
	}
	.detail dt{
		font-size: 3.2rem;
		margin-bottom: 1.5rem;
	}
	.detail dd{
		font-size: 3.2rem;
		line-height: 1.5625;
	}
}



/* +++++++++++++++#sec04+++++++++++++ */
#sec04 h2{
	max-width: 708px;
	margin: 80px auto 65px;
}
#sec04 h2 img{
	display: block;
	width: 100%;
}
#sec04 ol{
	display: flex;
	justify-content: space-between;
	border-left: 1px solid #a2a2a2;
	width: 100%;
	margin-bottom: 100px;
}
#sec04 li{
	width: 25%;
	padding: 1rem 2rem 3.5rem;
	border-right: 1px solid #a2a2a2;
}
#sec04 h3{
	height: 64px;
	margin-bottom: 25px;
}
#sec04 h3 img{
	height: 100%;
	width: auto;
	display: block;
	margin: 0 auto;
}
#sec04 p{
	line-height: 2;
}

@media screen and (max-width: 1100px) and (min-width: 770px){
	#sec04 h3{
		height: 5vw;
	}
}

@media screen and (max-width: 769px){

/* +++++++++++++++#sec04+++++++++++++ */
	#sec04 h2{
		max-width: 53.5rem;
		margin: 13.5rem auto 6.5rem;
	}

	#sec04 ol{
		display: block;
		border-left: none;
		width: 100%;
		padding: 0 8rem;
		margin-bottom: 8.8rem;
	}
	#sec04 li{
		width: 100%;
		padding: 0 0 4rem;
		border-right: none;
	}
	#sec04 h3{
		height: 9.5rem;
		margin-bottom: 2.5rem;
	}

	#sec04 p{
		font-size: 3.2rem;
		line-height: 1.4;
	}
}


/* +++++++++++++++.sec02+++++++++++++ */
.sec02 .contact-ttl{
	width: 100%;
	max-width: 578px;
	margin: 65px auto 0;
}
.sec02 h2 img{
	display: block;
	width: 100%;
}
.sec02 .outer{
/*
	padding: 55px 0 60px;
*/
	padding: 55px 0 35px;
	background: #e7e7e7;
	text-align: center;
	margin-top: 40px;
}
.sec02 .inner{
	max-width: 1020px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.inquiry{
	width: 49.019%;
}
.inquiry.line{
	margin: 20px auto 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	width: 100%;
}
.inquiry.line h2{
	width: 49.019%;
}
.line a{
	background: #04c656;
	color: #fff;
	font-size: 2.9rem;
	width: 49.019%;
}
.sec02 .line p{
	width: 100%;
	color: #fff;
	font-size: 2.4rem;
	padding: 7px;
	background: #04c656;
	text-align: center;
	margin-bottom: 15px;
}
.sec02 h2{
	font-size: 2.6rem;
	margin-bottom: 15px;
}
.sec02 a{
	height: 68px;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-bottom: 20px;
	border-radius: 10px;
}
.sec02 .line a{
	font-weight: 700;
}
.sec02 p{
	font-size: 1.8rem;
	line-height: 1.5;
}
.sec02 .btn01{
	font-size: 2.9rem;
}
.sec02 .btn01:after{
	right: 20px;
}
.sec02 .rog2{
	background: #fff;
	font-size: 3.5rem;
	color: #ff9a17;
	border: 2px solid #ff9a17;
}
.sec02 .rog2:before{
	content: "";
	display: block;
	height: 100%;
	width: 33px;
	margin-right: .3em;
	background: url(../images/truck_item-icon01.svg) no-repeat;
	background-size: 100% auto;
	background-position: left center;
}





@media screen and (max-width: 768px){


/* +++++++++++++++++#key-visual++++++++++++++++ */

	#key-visual{
		z-index: 1;
		padding: 0;
	}
	#key-visual .inner{
		padding: 5rem 4rem 0;
		align-items: flex-start;
	}


	#key-visual h1{
		order: 1;
		font-size: 8.1rem;
		font-weight: 900;
		width: 53.6rem;
		margin-left: 0;
		margin-bottom: -2rem;
		margin-top: 0;
		line-height: 1.3;
	}
	#key-visual .pic01{
		order: 2;
		width: 100%;
		position: relative;
		left: auto;
		top: auto;
	}
	#key-visual .pic02{
		width: 29.5rem;
		position: absolute;
		left: auto;
		right: 3rem;
		bottom: auto;
		top: 35rem;
	}
	#key-visual p{
		order: 3;
		width: 100%;
		margin-left: 0;
		font-size: 3.2rem;
		line-height: 1.5625;
		margin-top: 13rem;
	}

	.form-area{
		order: 4;
		width: 100%;
		margin-top: 4.5rem;
	}
	.form-area button,
	.form-area a{
		height: 8.5rem;
		font-size: 4.2rem;
		border-radius:  1.4rem;
		margin-top: 1.5rem;
	}

	#key-visual dl{
		padding-bottom: 2rem;
	}
	#key-visual dt{
		width: 23.5rem;
		padding-left: 9.5rem;
		font-size: 2.8rem; 
	}
	#key-visual dt span{
		top: -.5rem;
		width: 7.5rem;
		height: 4.5rem;
		border-radius: .6rem;
		font-size: 2.4rem;
	}
	#key-visual dd{
		width: calc(100% - 23.5rem);
	}
	select,
	input[type='text']{
		height: 7.4rem;
		border: .1rem solid #a6a6a6;
		font-size: 2.6rem;
	}
	select{
		background: url(../images/purcharse-arrow01.svg) no-repeat;
		background-position: right 1.5rem center;
		background-size: 3rem auto;
	}


/* +++++++++++++++.sec02+++++++++++++ */
	.sec02 .contact-ttl{
		width: 100%;
		max-width: 57.8rem;
		margin: 8.7rem auto 0;
	}
/* +++++++++++++++++++++.search-area+++++++++++++++++++++ */
	.search-area h2{
		margin-top: 0;
	}

	.sec02 .outer{
		padding: 4rem 0 4.5rem;
		background: #e7e7e7;
		text-align: center;
		margin-top: 5.5rem;
	}
	.sec02 h2{
		width: 48.4rem;
		margin: 0 auto 2.5rem;
	}
	.line{
		width: 100%;
	}
	.sec02 a{
		width: 50rem;
		height: 6.8rem;
		font-size: 4.1rem;
		border-radius: 1rem;
		margin: 0 auto;
	}
	.inquiry.line{
		margin-top: 0;
	}
	.inquiry.line h2{
		width: 100%;
		max-width: 47.7rem;
		margin: 0 auto 2.5rem;
	}
	.sec02 .line p{
		color: #000;
		font-size: 3.2rem;
		line-height: 1.625;
		padding: 3.5rem 0 0;
		background: none;
		margin-bottom: 0;
	}


}