@charset "utf-8";

/* 共通 */
h3.ttl{
	position: relative;
	margin: 0 auto;
	color:#407fb9;
	font-weight: bold;
	font-size: .21rem;
	line-height: 1.81em;
	text-align: left;
	padding-left: 60px;
	padding-top: 8px;
	background-image: url("../img/repair/repair_icon.jpg");
	background-size: 50px auto;
	background-repeat: no-repeat;
	background-position: 0 0;
}

.bg{
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	background-image: url("../img/repair/bg.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 50% 0;
	z-index: -1;
}
.bg p{
	position: relative;
	font-weight: bold;
	font-size: .36rem;
	color: #ffffff;
	padding: 6% 0 4% 0;
}

h2.ttl_repair{
	position: relative;
	margin: 0;
	padding: 1% 1% 0 1%;
	width: 98%;
	background-color: #4187c7;
	letter-spacing: -.4em;
}
h2.ttl_repair p, h2.ttl_repair span, h2.ttl_repair a{
	position: relative;
	margin: 1% 0;
	width: 100%;
	height:0;
	background-size: auto 96%;
	background-repeat: no-repeat;
	background-position: 50%;
}
h2.ttl_repair a, h2.ttl_repair span{display: block;}
h2.ttl_repair .Box01, h2.ttl_repair .Box02{
	position: relative;
	display: inline-block;
	letter-spacing: normal;
	width: 50%;
}
h2.ttl_repair .Box01 span.ttl01{
	padding-top: 44.66%;
	background-image: url("../img/repair/ttl_repair01.svg");
}
h2.ttl_repair .Box01 p.ttl02, h2.ttl_repair .Box01 a.ttl02{
	padding-top: 15.66%;
	background-image: url("../img/repair/ttl_repair02.svg");
}
h2.ttl_repair .Box02 span.ttl01{
	padding-top: 41.22%;
	background-image: url("../img/repair/ttl_repair03.svg");
}
h2.ttl_repair .Box02 p.ttl02, h2.ttl_repair .Box02 a.ttl02{
	padding-top: 19.66%;
	background-image: url("../img/repair/ttl_repair04.svg");
}

.movie{
	position: relative;
	margin: 0 auto;
	width: 100%;
	padding-top: 56.25%;
	background-color: #444444;
}
.movie iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

#repair01, #repair02, #repair03, #repair04, #repair05{
	position: relative;
	margin: 0 auto;
	padding-top: 22%;
	color: #434343;
	box-shadow:0px 12px 16px -10px rgba(0,0,0,0.3) inset;
}
#repair06 h3, #repair07 h3{
	position: relative;
	margin: 0 auto;
	color: #4187c7;
	font-size: .18rem;
	font-weight: bold;
	line-height: 1.8em;
	border-bottom: solid 2px #4187c7;
}


/* repair */
#repair{
	position: relative;
	margin: 0 auto;
	padding: 8% 0 0 0;
	background-image: url("../img/common/bg.jpg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-color: #ffffff;
	color: #434343;
}
#repair h2{
	position: relative;
	margin: 4% 0;
	width: 100%;
	height:0;
	padding-top: 10%;
	background-image: url("../img/repair/ttl_repair.svg");
	background-size: auto 80%;
	background-repeat: no-repeat;
	background-position: 0 0;
}
#repair h3{
	position: relative;
	margin: 12% 0 6% 0;
	width: 100%;
	height:0;
	padding-top: 28%;
	background-image: url("../img/repair/repair.svg");
	background-size: auto 90%;
	background-repeat: no-repeat;
	background-position: 0 0;
}
#repair .repairTxt{
	position: relative;
	background-image: url("../img/repair/attention.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 50% 0;
}
#repair h4{
	position: relative;
	text-align: left;
	font-size: .18rem;
	font-weight: bold;
}
#repair .movie{margin: 8% auto;}
#repair .repairTxt{ position: relative; margin: 4% auto; padding: 1% 0;}
#repair p{ position: relative; margin: 2% auto 0 auto; text-align: left;}
#repair .repair_wrap{
	position: relative;
	margin: 0 auto;
	padding-bottom: 52%;
	background-image: url("../img/repair/repair.jpg");
	background-size: 70% auto;
	background-repeat: no-repeat;
	background-position: 100% 100%;
}

/* repair01 */
#repair01 div.Txt{
	position: relative;
	padding-bottom: 150px;
	background-image: url("../img/repair/repair01.jpg");
	background-size: auto 150px;
	background-repeat: no-repeat;
	background-position: 50% 100%;
}
#repair01 .Txt p{
	position: relative;
	margin: 6% 0;
	padding-left: 60px;
	text-align: left;
	font-size: .18rem;
	font-weight: bold;
}
#repair01 p span{ display: block; color: #4187c7;}
#repair01 img{ margin-top: 4%; width: 70%;}
#repair01 p.Txt{
	position: relative;
	margin: 8% auto 4% auto;
	font-weight: bold;
}

/* repair02 */
#repair02 div.Txt{
	position: relative;
	margin-bottom: 6%;
	padding-bottom: 150px;
	background-image: url("../img/repair/repair02.jpg");
	background-size: auto 150px;
	background-repeat: no-repeat;
	background-position: 50% 100%;
}
#repair02 .Txt p{
	position: relative;
	margin: 6% 0;
	padding-left: 60px;
	text-align: left;
	font-size: .18rem;
}

/* repair03 */
#repair03 div.Txt{
	position: relative;
	margin-bottom: 6%;
	padding-bottom: 150px;
	background-image: url("../img/repair/repair03.jpg");
	background-size: auto 150px;
	background-repeat: no-repeat;
	background-position: 50% 100%;
}
#repair03 .Txt p{
	position: relative;
	margin: 6% 0;
	padding-left: 60px;
	text-align: left;
	font-size: .18rem;
}

/* repair04 */
#repair04 ul{
	position: relative;
	margin: 6% 0;
	padding-bottom: 78%;
	background-image: url("../img/repair/repair04_sp.svg");
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 50% 100%;
}

/* repair05 */
#repair05 div.Txt{
	position: relative;
	margin-bottom: 6%;
	padding-top: 170px;
	background-image: url("../img/repair/repair05.jpg");
	background-size: auto 150px;
	background-repeat: no-repeat;
	background-position: 50% 0;
}
#repair05 .Txt h3{
	position: relative;
	margin: 6% auto;
	font-size: .40rem;
	font-weight: bold;
}
#repair05 .Txt h4{
	position: relative;
	margin: 8% auto;
	font-size: .21rem;
	font-weight: bold;
}
#repair05 .Txt p{
	position: relative;
	margin: 6% 0;
	font-weight: bold;
}

/* repair06 */
#repair06{
	position: relative;
	margin: 0 auto;
	padding-top: 8%;
	color: #434343;
	box-shadow:0px 12px 16px -10px rgba(0,0,0,0.3) inset;
}
#repair06 .bg{
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	padding-top: 50%;
	background-image: url("../img/repair/repair_bg.jpg");
	background-size: 120% auto;
	background-repeat: no-repeat;
	background-position: 50% 0;
	z-index: -1;
}
#repair06 ul{
	position: relative;
	margin: 0 auto;
	letter-spacing: -.4em;
}
#repair06 ul li{
	position: relative;
	margin: 6% auto;
	padding: 0 2%;
	letter-spacing: normal;
	border: solid 5px #4187c7;
	background-color: #ffffff;
	background-repeat: no-repeat;
}
#repair06 ul li:nth-child(1) {background-image: url("../img/repair/btn_01.jpg"); background-position: 90% 15px; background-size: 18% auto;}
#repair06 ul li:nth-child(2) {background-image: url("../img/repair/btn_02.jpg"); background-position: 90% 40px; background-size: 40% auto ;}
#repair06 ul li p{
	position: relative;
	display: block;
	text-align: left;
	padding: 12% 6%;
	color:#434343;
	font-size: .18rem;
	font-weight: bold;
}
#repair06 .movie{margin: 0 auto 2% auto;}

/* repair07 */
#repair07 a{
	position: relative;
	display: block;
	margin: 6% auto;
	padding: 6%;
	color:#ffffff;
	border-radius: 60px;
	background-color: #4187c7;
	font-size: .18rem;
	font-weight: bold;
	background-image:  url("../img/repair/repair07_bg.jpg");
	background-size: auto 100% ;
	background-repeat: no-repeat;
}
#repair07 a span{
	position: relative;
	border-radius: 60px;
	background-color: #00539d;
	display: block;
	font-size: .14rem;
	padding: 0 .5em;
	margin-right: .5em;
	margin-bottom: .5em;
}

/* ----- pc ----- */
@media screen and (min-width: 641px) {
	
	
	/* 共通 */
	h3.ttl{
		padding-left: 97px;
		padding-top: 24px;
		background-size: 87px auto;
		min-height: 80px;
	}

	.bg p{padding: 34px 0 20px 0;}

	h2.ttl_repair{
		padding: 20px 0 0 0;
		width: 100%;
	}
	h2.ttl_repair p, h2.ttl_repair span, h2.ttl_repair a{
		margin: 0;
		background-size: contain;
		background-position: 0;
	}
	h2.ttl_repair .Box01{width: 338px;margin: 0 0 0 40px; vertical-align: top;}
	h2.ttl_repair .Box02{
		vertical-align: top;
		width: 630px;
		margin: 0 0 0 15px;
		padding: 20px 0;
		background-image: url("../img/repair/ttl_bg.jpg");
		background-size: contain;
		background-repeat: no-repeat;
		background-position: 100% 100%;
	}
	h2.ttl_repair .Box01 span.ttl01{padding-top: 150px;margin: 15px 0 0 0;}
	h2.ttl_repair .Box01 p.ttl02{padding-top: 52px; margin: 10px 0 0 0;}
	h2.ttl_repair .Box02 span.ttl01{padding-top: 142px;}
	h2.ttl_repair .Box02 p.ttl02{padding-top: 70px; margin: 3px 0 0 0;}

	#repair01, #repair02, #repair03, #repair04, #repair05{padding-top: 82px;}
	#repair06 h3, #repair07 h3{font-size: .21rem;line-height: 2.2em;}


	/* repair */
	#repair{padding: 0;background-image: none;}
	#repair .contents-inner{
		margin: 0 auto;
		padding-top: 60px;
		background-image: url("../img/common/bg.jpg");
		background-size: 729px auto;
		background-repeat: no-repeat;
		background-position: 0 0;
	}
	#repair h2{
		margin: 0 0 30px 20px;
		width: 267px;
		padding-top: 33px;
		background-size: contain;
	}
	#repair h3{
		margin: 80px 0;
		width: 462px;
		padding-top: 146px;
		background-size: contain;
	}
	#repair .repairTxt{
		margin: 0;
		width: 370px;
	}
	#repair .movie{
		margin: 0 auto;
		width: 640px;
		padding-top: 360px;
	}
	#repair .bnr{
		margin: 0 0 50px 0;
	}
	#repair .repairTxt{ margin: 0; padding: 5px 0;}
	#repair p{ margin: 10px auto 0 auto;}
	#repair .repair_wrap{
		width: 846px;
		padding-bottom: 90px;
		background-size: 457px auto;
	}

	/* repair01 */
	#repair01 div.Txt{
		padding-bottom: 0;
		width: 730px;
		margin: auto;
		background-size: auto 156px;
		background-position: 60% 100%;
	}
	#repair01 .Txt p{
		margin: 15px 0;
		padding-left: 120px;
		line-height: 1.444em;
	}

	#repair01 img{ margin-top: 20px; width: 280px; vertical-align: middle;}
	#repair01 .tel{display:inline-block; width: 258px; padding-right: 15px; vertical-align: middle;}
	#repair01 .tel img{width: 258px;}
	#repair01 p.Txt{margin: 36px auto 50px auto;}

	/* repair02 */
	#repair02 div.Txt{
		width: 730px;
		margin: auto;
		padding-bottom: 0;
		background-size: auto 176px;
		background-position: 76% 100%;
	}
	#repair02 .Txt p{
		margin: 30px 0;
		padding-left: 80px;
		line-height: 1.969em;
	}
	#repair02 img{ margin: 20px 0 40px -65px; width: 464px;}

	/* repair03 */
	#repair03 div.Txt{
		width: 730px;
		margin: auto;
		padding-bottom: 0;
		background-size: auto 189px;
		background-position: 76% 100%;
	}
	#repair03 .Txt p{
		margin: 40px 0 90px 0;
		padding-left: 100px;
		line-height: 1.5em;
	}

	/* repair04 */
	#repair04 div.Txt{width: 730px;margin: auto;}
	#repair04 ul{
		margin: 50px auto 100px auto;
		width: 829px;
		padding-bottom: 166px;
		background-image: url("../img/repair/repair04.svg");
	}

	/* repair05 */
	#repair05 div.Txt{
		margin-bottom: 80px;
		padding-top: 328px;
		background-size: auto 208px;
		background-position: 50% 70px;
	}
	#repair05 .Txt h3{
		margin: 0 auto 30px auto;
		font-size: .57rem;
	}
	#repair05 .Txt h4{margin: 60px auto 30px auto;}
	#repair05 .Txt p{margin: 0 auto;width: 520px;}

	/* repair06 */
	#repair06{padding-top: 75px;}
	#repair06 .bg{
		padding-top: 42.25%;
		background-size: contain;
	}
	#repair06 ul li{display: inline-block;width: 430px;line-height: 170px;vertical-align: top;background-position: 90% 50%;	text-align: left; padding: 0 10px;}
	#repair06 ul li:nth-child(1) { margin-right: 50px;}

	#repair06 ul li p{
		display: inline-block;
		vertical-align: middle;
		line-height:normal;
		margin: 0 auto;
		padding: 0 0 0 30px;
		width: 100%;
	}
	#repair06 .movie{
		margin: 0 auto 20px auto;
		width: 430px;
		padding-top: 240px;
	}

	/* repair07 */
	#repair07 a{
		width: 540px;
		margin:30px auto 70px auto;
		padding: 15px;
		line-height: 1.7em;
	}
	#repair07 a span{display: inline-block;font-size: .14rem;margin-bottom: 0;}
}