@charset "utf-8";

/*index MV 背景*/
header {
	position: relative;
	width: 100%;
	height: 100vh;
	background-image: url("../../assets/images/index_mv-bg.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-color: #000;
	background-size: cover;
}

.mv-txt {
	position: absolute;
	top: 17rem;
	left: 75%;
	transform: translateX(-75%);
	-webkit-transform: translateX(-75%);
	-ms-transform: translateX(-75%);
}



/*service*/
.service h2 {
	font-size: 128px;
}
.service h2 span {
    display: inline-block;
    font-size: 20px;
    vertical-align: middle;
    height: 64px;
    padding-left: 20px;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}

.service h3 {
	display: flex;
	font-size: 80px;
	text-align: center;
	justify-content: space-around;
	align-items: center;
}
span.h3SubTitle {
    display: block;
    font-size: 20px;
    font-weight: 600;
    margin-top: -20px;
    text-align: center;
}
.service h3:before, .service h3:after {
    content: '';
    height: 1px;
    width: 370px;
    background-color: #000;
}
.service h3.w-200px:before, .service h3.w-200px:after {
    content: '';
    height: 1px;
    width: 200px;
    background-color: #000;
}

.service ul {
    display: flex;
    justify-content: space-evenly;
    width: 660px;
    margin: 0 auto;
}
.service ul li {
    width: fit-content;
    display: block;
    padding: 1rem 0;
    font-size: 24px;
    font-weight: 600;
}

.service .special-img {
    display: flex;
    justify-content: space-between;
    padding: 1rem 0;
}
.service .special-img figure {
	width: 465px;
	height: 300px;
}
.service .special-img figure img {
	width: 100%;
	height: 100%;
}

.service .wrecker-img {
    display: flex;
    justify-content: center;
    padding: 1rem 0;
}
.service .wrecker-img figure {
	width: 620px;
	height: 400px;
}
.service .wrecker-img figure img {
	width: 100%;
	height: 100%;
}

.service .replace-img {
    display: flex;
    justify-content: space-between;
    padding: 1rem 0;
}
.service .replace-img .left figure {
	width: 620px;
	height: 400px;
}
.service .replace-img .right {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.service .replace-img .right figure:nth-child(1),
.service .replace-img .right figure:nth-child(2) {
	width: 320px;
	height: 190px;
}
.service .replace-img .left figure img,
.service .replace-img .right figure img  {
	width: 100%;
	height: 100%;
}



/*facility*/
.facility .sheet-img {
    display: flex;
    justify-content: space-between;
    padding: 3rem 0;
    align-items: center;
}
.facility .sheet-img .left,
.facility .sheet-img .right {
	width: 47%;
	margin-top: 2rem;
}
.facility .sheet-img .left figure,
.facility .sheet-img .right figure {
	width: 465px;
	height: 300px;
}
.facility .sheet-img .left figure img,
.facility .sheet-img .right figure img {
	width: 100%;
	height: 100%;
}

.facility .sheet-img2 {
    display: flex;
    justify-content: space-between;
    padding: 0;
    align-items: center;
}
.facility .sheet-img2 .left,
.facility .sheet-img2 .right {
	width: 47%;
	margin-top: 2rem;
}
.facility .sheet-img2 .left figure,
.facility .sheet-img2 .right figure {
	width: 465px;
	height: 300px;
}
.facility .sheet-img2 .left figure img,
.facility .sheet-img2 .right figure img {
	width: 100%;
	height: 100%;
}
.facility .sheet-img3 {
    display: flex;
    justify-content: space-between;
    padding: 3rem 0;
    align-items: center;
}
.facility .sheet-img3 left {
    width: 100%;
}

.facility .painting-img {
    display: flex;
    padding: 0;
    align-items: center;
    justify-content: center;
}
.facility .painting-img .left {
	width: 100%;
	margin-top: 2rem;
}
.facility .painting-img2 {
    display: flex;
    justify-content: space-between;
    padding: 0;
    align-items: center;
}
.facility .painting-img2 .left,
.facility .painting-img2 .right {
	width: 47%;
	margin-top: 2rem;
}
.facility .painting-img2 .left figure,
.facility .painting-img2 .right figure {
	width: 465px;
	height: 300px;
}
.facility .painting-img2 .left figure img,
.facility .painting-img2 .right figure img {
	width: 100%;
	height: 100%;
}
.facility h3:before, .facility h3:after {
    content: '';
    height: 1px;
    width: 320px;
    background-color: #000;
}
.facility h4 {
    display: flex;
    font-size: 28px;
    justify-content: flex-start;
    align-items: center;
}.facility h4:before {
    content: '';
    height: 1px;
    width: 28px;
    background-color: #000;
    margin-right: 10px;
}



/*contact*/
.contact {
	background: #F2F2F2;
}
.contact p {
	text-align: center;
}
form {
	padding: 5rem 0 0;
	
}
form label {
    color: #000;
    width: 200px;
    display: inline-block;
    text-align: right;
    vertical-align: middle;
    margin-bottom: 1rem;
    padding-top: 1rem;
    padding-right: 1rem;
}
form label.messa {
	vertical-align: top;
}
input[type="text"], input[type="email"]{
    width: 670px;
    height: 30px;
    margin-bottom: 1rem;
    background: #fff;
    color: #000;
    border: 0;
    padding: 10px;
}
textarea {
    width: 670px;
    height: 250px;
    background: #fff;
    color: #000;
    padding: 10px;
    border: 0;
}
input[type="submit"] {
    width: 150px;
    height: 40px;
    background: #333;
    color: #fff;
    display: inline-block;
    font-size: 20px;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 400;
}
button {
    width: 150px;
    height: 40px;
    background: #333;
    color: #fff;
    margin-right: 1rem;
    display: inline-block;
    font-size: 20px;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 400;
}
.confirm {
	display: block;
	width: 1024px;
	margin: 0 auto;
	text-align: center;
	padding: 5rem 0;
}
.confirm table {
	margin: 0 auto;
	padding: 5rem 0;
}
.confirm table th {
	text-align: right;
	padding-right: 1rem;
}
.confirm table td {
	text-align: left;
}
button[type="button"] {
	margin-left: 3rem;
}
.contact p.form_submit {
	margin-top: 2.5rem;
}



/*privacy*/
.privacy p {
	text-align: left;
	font-size: 15px;
}
.privacy ol{
	padding-inline-start: 0;
	list-style-position: inside;
	margin-top: 2rem;
	font-size: 15px;
}









/*スマホ・タブレット*/
@media screen and (max-width: 1024px) {
	header {
		background-image: url("../../assets/images/index_mv-bg_sp.jpg");
		background-size: 100%;
	}
	.mv-txt {
		top: 2rem;
		left: 50%;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
	}
	.service h2 {
		font-size: 75px;
		text-align: center;
	}
	.service h2 span {
		display: block;
	    font-size: 14px;
		text-align: center;
		padding-left: 0;
		margin-top: -1.8rem;
		height: 32px;
	}
	.service h3 {
		font-size: 48px;
	}
	span.h3SubTitle {
	    font-size: 14px;
	}
	.service ul {
        width: 86%;
        flex-direction: column;
        margin: 10px auto;
	}
	.service ul li {
		font-size: 15px;
		padding: 0;
	}
	.service .special-img {
	    flex-direction: column;
	}
	.service .special-img figure {
		width: 300px;
		height: 194px;
	}
	.service .special-img figure:nth-child(2) {
		margin: 15px 0 0 auto;
	}
	.service .wrecker-img figure {
		width: 100%;
		height: auto;
	}
	.service h3.w-200px:before, .service h3.w-200px:after {
	    width: 25px;
	}
	.service .replace-img {
	    flex-direction: column;
	}
	.service .replace-img .left figure {
		width: 100%;
		height: auto;
	}
	.service .replace-img .right figure:nth-child(1),
	.service .replace-img .right figure:nth-child(2) {
		width: 300px;
		height: auto;
	}
	.service .replace-img .right figure:nth-child(1) {
		margin-top: 15px;
	}
	.service .replace-img .right figure:nth-child(2) {
		margin: 15px 0 0 auto;
	}
	.facility h3:before, .facility h3:after {
	    width: 90px;
	}
	.facility .sheet-img, .facility .sheet-img2 {
	    flex-direction: column;
	    padding: 1rem 0 0;
	}
	.facility .sheet-img2 {
	    padding: 0;
	}
	.facility .sheet-img .left {
	    width: 86%;
	    margin-top: 0;
	}
	.facility .sheet-img .right {
	    width: 100%;
	    margin-top: 1rem;
	}
	.facility .sheet-img .left figure, .facility .sheet-img .right figure {
	    width: 100%;
	    height: auto;
	}
	.facility .sheet-img2 .left {
	    width: 100%;
	    margin-top: 1rem;
	}
	.facility .sheet-img2 .right {
	    width: 86%;
	    margin-top: 0.5rem;
	}
	.facility .sheet-img2 .left figure, .facility .sheet-img2 .right figure {
	    width: 100%;
	    height: auto;
	}
	.facility .sheet-img2 {
	    flex-direction: column-reverse;
	}
	.facility h4 {
	    font-size: 18px;
	}
	.facility .sheet-img3 {
	    padding: 0.5rem 0;
	}
	.facility .sheet-img3 .left {
	    width: 86%;
	    margin: 0 auto;
	}
	.facility .painting-img {
	    padding: 0.5rem 0 0;
    }
	.facility .painting-img .left {
        width: 86%;
        margin-top: 0;
    }
	.facility .painting-img2 {
	    flex-direction: column;
    }
	.facility .painting-img2 .left, .facility .painting-img2 .right {
	    width: 100%;
	    margin-top: 1rem;
	}
	.facility .painting-img2 .left figure, .facility .painting-img2 .right figure {
	    width: 100%;
	    height: auto;
	}
	
	
	.contact p {
		width: 86%;
		text-align: left;
		margin: 15px auto 0;
	}
	form {
	    padding: 1rem 0;
	    width: 90%;
	    margin: 0 auto;
	}
	form label {
		display: block;
		text-align: left;
		padding-left: 0.4rem;
		margin-bottom: 0;
	}
	input[type="text"], input[type="email"]{
		width: 90%;
		position: relative;
		left: 50%;
		-webkit-transform: translateX(-50%);
	}
	textarea {
		width: 90%;
		position: relative;
		left: 50%;
		-webkit-transform: translateX(-50%);
	}
	.confirm {
		width: 90%;
	    margin: 0 auto;
	}
	
	.privacy ol {
	    margin-top: 1rem;
	    font-size: 13px;
	}
	.privacy .text_wrap {
		width: 90%;
		height: 210px;
		margin: 3rem auto;
		overflow-y: auto;
	
	}
	.privacy .text_wrap::-webkit-scrollbar {
	  background: #000;
	  width: 5px;
	}
	.privacy .text_wrap::-webkit-scrollbar-thumb {
	  background-color: #333;
	}
	.privacy .text_wrap p {
		width: 100%;
	    text-align: left;
	    margin: 0 auto;
	    padding: 1rem 0;
	    font-size: 13px;
	}
	#map {
		display: none;
	}
	input[type="submit"] ,button {
        width: 90px;
        margin-left: 0 !important;
        font-size: 14px;
	}
	
	.contact p.form_submit {
		text-align: center;
	}
}








/*タブレット*/
@media screen and (min-width:768px) and ( max-width:1024px) {
	.service .special-img figure {
        width: 50%;
        height: auto;
    }
    .service .replace-img .right figure:nth-child(1), .service .replace-img .right figure:nth-child(2) {
        width: 50%;
        height: auto;
    }
    .service ul {
        width: 86%;
        flex-direction: inherit;
        margin: 10px auto;
    }
    .service h3.w-200px:before, .service h3.w-200px:after {
        width: 200px;
    }
}






