/* contents
-------------------------------------------------------------------------------------------------*/
@media screen and (min-width: 768px), print {
#visual{
	  width: 100%;
	  text-align:center;
}
  #visual{
	  background-image: url(../img/index/main.jpg);
	  background-size: cover;
	  background-repeat:no-repeat;
	  background-position:bottom center;
  }
  #visual img{
	  height:205px;
	  margin:190px auto 35px;
	  padding-right:310px;
  }
}

@media screen and (max-width: 767px) {
#visual{
	  width: 100%;
	  text-align:center;
	  background-image: url(../img/index/main.jpg);
	  background-size: cover;
}
  #visual img{
	  margin:150px auto 20px;
	  width: 90%;
  }
}

@media screen and (min-width: 768px), print {
#trouble{
	  width: 100%;
	  text-align:center;
	  background-color:#f4f4f4;
	  padding:50px 0 80px;
}

  #trouble h2{
	  display:inline-block;
	  font-size:27px;
	  font-family: "Sawarabi Mincho",
	   Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	  letter-spacing:4px;
	  padding-bottom:5px;
	  border-bottom:0px solid #c7000b;
  }
	#trouble h2 span{
		font-size:32px;
		letter-spacing:3px;
		color:#c7000b;
	}
  #trouble ul{
	  display:table;
	  margin:50px auto 0;
	  width:960px;
	  font-size:15px;
  }
  #trouble ul li{
	  text-align:left;
	  margin-right:60px;
	  width:280px;
	  float:left;
  }
  #trouble ul li:last-child{
	  margin-right:0px;
  }
  #trouble ul li h3{
	  text-align:center;
	  font-size:18px;
	  font-weight:700;
	  margin:5px 0;
  }
  #trouble ul li img{
	  width:280px;
	  margin:0px 0 5px;
  }
  #trouble ul li span{
	  display:inline-block;
	  color:#f4f4f4;
	  font-size:10px;
	  margin-right:5px;
  }
}
@media screen and (max-width: 767px) {
#trouble{
	  width: 100%;
	  text-align:center;
	  background-color:#f4f4f4;
	  padding:50px 0;
}
  #trouble h2{
	  display:inline-block;
	  font-size:20px;
	  font-family: "Sawarabi Mincho",
	   Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	  letter-spacing:1px;
	  padding-bottom:5px;
	  border-bottom:0Spx solid #c7000b;
  }
	#trouble h2 span{
		font-size:27px;
		color:#c7000b;
	}
  #trouble ul{
	  display:table;
	  margin:0px auto 0;
	  width:84%;
	  font-size:15px;
  }
  #trouble ul li{
	  text-align:left;
	  width:100%;
	  background:#fff;
	  padding-bottom:5px;
  }
  #trouble ul li h3{
	  text-align:center;
	  font-size:18px;
	  font-weight:700;
	  margin:20px 0 5px;
	  background:#fff;
	  color:#333;
	  padding:10px 0;
  }
  #trouble ul li img{
	  display:none;
  }
  #trouble ul li span{
	  display:inline-block;
	  color:#fff;
	  font-size:10px;
	  margin:0 5px;
  }
}

@media screen and (min-width: 768px), print {
.bnr{
	background: #f4f4f4;
	padding:30px 0;
}
  .bnr div{
	  text-align:center;
	  margin:0 auto;
	  width: 960px;
	  font-size:24px;
	  font-weight: 700;
	  color:#fff;
	  display: flex;
	  align-items: center;
	  justify-content: center;
	  gap: 10px;
}
  .bnr div span{
		display: inline-block;
		margin:10px;
  }
  .bnr div .txt{
		width:308px;
		margin:0 0px;
  }
  .bnr div .for-pc{
		width:290px;
		height: auto;
		margin:0;
  }
  .bnr div .for-sp{
  	width: 90%;
	height: auto;
  	margin: 28px 0px 0 0;
  }
.bnr div .btn {
	width: 14em;
	background-color: #000;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	font-weight: 700;
	padding: 10px 10px;
	margin: 0;
	text-align: center;
	color: #fff;
}
  .bnr .btn img {
	width:20px;
	height: auto;
  }

  .bnr a{
	text-decoration: none;
  }
}

@media screen and (max-width: 767px) {
.bnr{
	background: #f4f4f4;
	padding:30px 0 40px;
}
  .bnr div{
	  text-align:center;
	  margin:0 auto;
	  width: 90%;
	  font-size:24px;
	  font-weight: 700;
  }
  .bnr div span{
		display: inline-block;
		margin:10px;
  }
  .bnr div .txt{
		width:90%;
		margin:0 0px;
  }
  .bnr div .for-sp {
  	width: 90%;
  	height: auto;
  	margin: 28px 0px 0 0;
  }

.bnr div .btn {
	color: #fff;
	background-color: #000;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	font-weight: 700;
	padding: 10px 0px;
	margin: 10px;
	text-align: center;
}

.bnr .btn img {
	width: 25px;
	height: auto;
	margin-right: 8px;
	padding: 0;
}


  
}

@media screen and (min-width: 768px), print {
#service{
	  width: 100%;
	  text-align:center;
	  background-color:#fff;
	  padding:85px 0;
}
  #service h2{
	  display:inline-block;
	  font-size:27px;
	  font-family: "Sawarabi Mincho",
	   Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	  letter-spacing:3px;
	  padding-bottom:5px;
	  border-bottom:0px solid #c7000b;
  }
	#service h2 span{
		font-size:32px;
		letter-spacing:2px;
		color:#c7000b;
	}
  #service h3{
	  font-size:20px;
	  font-weight: 700;
	  color:#c7000b;
	  padding:4px 0;
	  width:960px;
	  margin:40px auto 0px;
  }
  #service ul{
	  display:table;
	  margin:20px auto 0;
	  width:960px;
	  font-size:14px;
	  line-height:160%;
  }
  #service ul li{
	  text-align:left;
	  margin-right:38px;
	  width:210px;
	  float:left;
  }
  #service ul li:last-child{
	  margin-right:0px;
  }
  #service ul li h4{
	  text-align:center;
	  font-size:17px;
	  line-height:110%;
	  font-weight:700;
	  margin:8px 0;
	  height:34px;
  }
  #service ul li img{
	  width:210px;
	  margin:0px 0 5px;
  }
  #service ul li span{
	  display:inline-block;
	  color:#c7000b;
	  font-size:10px;
	  margin-right:5px;
  }
}

@media screen and (max-width: 767px) {
#service{
	  width: 100%;
	  text-align:center;
	  background-color:#fff;
	  padding:50px 0;
}
  #service h2{
	  display:inline-block;
	  font-size:20px;
	  font-family: "Sawarabi Mincho",
	   Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	  letter-spacing:1px;
	  padding-bottom:5px;
	  border-bottom:0px solid #c7000b;
  }
	#service h2 span{
		font-size:25px;
		color:#c7000b;
	}
  #service h3{
	  font-size:20px;
	  font-weight: 700;
	  color:#c7000b;
	  padding:5px 0;
	  width:84%;
	  margin:40px auto 0px;
  }
  #service ul{
	  display:table;
	  margin:0px auto 0;
	  width:84%;
	  font-size:14px;
	  line-height:160%;
  }
  #service ul li{
	  text-align:left;
	  width:100%;
  }
  #service ul li h4{
	  font-size:17px;
	  line-height:110%;
	  font-weight:700;
	  margin:20px 0 5px;
	  color:#333;
  }
  #service ul li:first-child h4:before{
	  background-image:url(../img/common/icon_paint.png);
	  content:" ";
	  display:inline-block;
	  background-size:contain;
	  height:33px;
	  width:33px;
	  vertical-align:middle;
	  margin:0 8px 0 0;
  }
  #service ul li:first-child h4:before{
	  background-image:url(../img/common/icon_paint.png);
	  content:" ";
	  display:inline-block;
	  background-size:contain;
	  background-repeat: no-repeat;
	  height:33px;
	  width:33px;
	  vertical-align:middle;
	  margin:0 8px 0 0;
  }
  #service ul li:nth-child(2) h4:before{
	  background-image:url(../img/common/icon_roof.png);
	  content:" ";
	  display:inline-block;
	  background-size:contain;
	  background-repeat: no-repeat;
	  height:33px;
	  width:33px;
	  vertical-align:middle;
	  margin:0 8px 0 0;
  }
  #service ul li:nth-child(3) h4:before{
	  background-image:url(../img/common/icon_exterior.png);
	  content:" ";
	  display:inline-block;
	  background-size:contain;
	  height:23px;
	  width:33px;
	  vertical-align:middle;
	  margin:0 8px 3px 0;
  } 
 #service ul li:nth-child(4) h4:before{
	  background-image:url(../img/common/icon_floor.png);
	  content:" ";
	  display:inline-block;
	  background-size:contain;
	  height:33px;
	  width:33px;
	  vertical-align:middle;
	  margin:0 8px 0 0;
  }
  #service ul li img{
	  display:none;
  }
  #service ul li span{
	  display:inline-block;
	  color:#c7000b;
	  font-size:10px;
	  margin:0 5px;
  }
}

@media screen and (min-width: 768px), print {
#case{
	  width: 100%;
	  text-align:center;
}
  #case{
	  background-image: url(../img/index/case_photo.jpg);
	  background-size: cover;
	  background-repeat:no-repeat;
	  background-position:bottom center;
  }
  #case img{
	  width:520px;
	  height:88px;
	  margin:70px auto 10px;
  }
	    #flow a {
	    	display: block;
	    	text-decoration: none;
	    	color: #fff;
	    	font-size: 14px;
	    	font-weight: 700;
	    	padding: 10px 0;
	    	margin: 40px auto 40px;
	    	background: #000;
	    	width: 13em;
	    	text-align: center;
	    }
}

@media screen and (max-width: 767px) {
#case{
	  width: 100%;
	  text-align:center;
	  background-image: url(../img/index/case_photo_sp.jpg);
	  background-size: cover;
	  background-position:center ;
}
  #case img{
	  margin:50px auto 20px;
	  width: 80%;
  }
    #case a{
		display: block;
		text-decoration: none;
		color: #fff;
		font-size: 14px;
		font-weight: 700;
		padding: 10px 0;
		margin: 40px auto 40px;
		background: #000;
		width: 13em;
		text-align: center;
	}

}

@media screen and (min-width: 768px), print {
#flow{
	  width: 100%;
	  text-align:center;
	  background-color:#f4f4f4;
	  padding:80px 0 0;
}
  #flow h2{
	  display:inline-block;
	  color: #c7000b;
	  font-size:30px;
	  letter-spacing:4px;
	  padding-bottom:5px;
	  font-weight:700;
  }
  #flow p{
	  margin:40px auto 30px;
	  width:960px;
	  font-size:15px;
	  line-height:180%;
	  letter-spacing:2px;
  }
  #flow img{
	  width:950px;
	
  }
#flow a {
	display: block;
	text-decoration: none;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	padding: 10px 0;
	margin: 60px auto 0;
	/* ← 左右を auto に */
	background: #000;
	width: 13em;
	/* 幅を指定しているので中央寄せ可能 */
	text-align: center;
	/* ← 中の文字も中央揃え */
}
}
@media screen and (max-width: 767px) {
#flow{
	  width: 100%;
	  text-align:center;
	  background-color:#f4f4f4;
	  padding:80px 0 0;
}
  #flow h2{
	  display:inline-block;
	  color: #c7000b;
	  font-size:27px;
	  letter-spacing:4px;
	  padding-bottom:5px;
	  font-weight:700;
  }
  #flow p{
	  margin:40px auto 30px;
	  width:84%;
	  font-size:15px;
	  line-height:180%;
	  letter-spacing:2px;
  }
  #flow img{
	  width:82%;
	
  }
    #flow a{
		display: block;
		text-decoration: none;
		color: #fff;
		font-size: 14px;
		font-weight: 700;
		padding: 10px 0;
		margin: 40px auto 0px;
		background: #000;
		width: 13em;
		text-align: center;
	}
}

@media screen and (min-width: 768px), print {
#warranty{
	  width: 100%;
	  text-align:center;
	  padding:50px 0 80px;
	  background-color:#f4f4f4;
}
#warranty div{
	border:1px solid #c7000b;
	background:#fff;
	width:950px;
	margin:0px auto 0;
	text-align:left;
	background-size:45px 45px;
	background-repeat:no-repeat;
	background-position:99% 50%
}
#warranty img{
	width:0px !important;
	height:auto;
	margin:10px 0;
	  border:none !important;
	  float:left;
}
#warranty h3{
	font-size: 20px;
	font-weight: 700;
	color:#c7000b;
	margin:20px 0 20px 20px;
}
#warranty p{
	  margin:0px 0 20px 20px !important;
	  font-size:14px;
	  line-height:160% !important;
	  letter-spacing:0px !important;
}
#warranty a{
	text-decoration:none;
}
#warranty a:hover{
	color:#666;
}
}

@media screen and (max-width: 767px) {
#warranty{
	  width: 100%;
	  text-align:center;
	  background-color:#f4f4f4;
	  padding:60px 0 80px;
}
#warranty div{
	width: 84%;
	text-align:center;
	border:1px solid #c7000b;
	background:#fff;
	margin:0px auto 0px;
	text-align:left;
	background-image: url(../img/index/arrow_green.png);
	background-size:0px;
	background-repeat:no-repeat;
	background-position:95% 10%
}
#warranty img{
	width: 0px !important;
		height: auto;
		margin:0px 0;
	  border:none !important;
}
#warranty h3{
	font-size: 20px;
	font-weight: 700;
	color:#c7000b;
	margin:0px 0 20px 20px;
}
#warranty p{
	  margin:0px 0 20px 20px !important;
	  width:93% !important;
	  font-size:14px;
	  line-height:160% !important;
	  letter-spacing:-0.5px !important;
}
#warranty a{
	text-decoration:none;
}
#warranty a:hover{
	color:#666;
}
}

@media screen and (min-width: 768px), print {
.bnr_red{
	background: #c7000b;
	padding:30px 0;
}
.bnr_red h3{
	  margin:0 auto;
	  width:960px;
	  font-size:23px;
	  line-height:160%;
	  font-weight:700;
	  color:#fff;
	  text-align:center;
	  letter-spacing:1.4px;
	  padding:4px 0;
}
.bnr_red p{
	color:#fff;
	text-align:center;
	font-size:14px;
	letter-spacing:1px;
	margin:20px 0 30px;
}
  .bnr_red div{
	  text-align:center;
	  margin:0 auto;
	  width: 960px;
	  font-size:24px;
	  font-weight: 700;
  }
  .bnr_red div span{
		display: inline-block;
		margin:10px;
  }
}

@media screen and (max-width: 767px) {
.bnr_red{
	background: #c7000b;
	padding:30px 0 40px;
}
.bnr_red h3{
	  margin:20px auto 0;
	  width:84%;
	  font-size:23px;
	  line-height:160%;
	  font-weight:700;
	  color:#fff;
	  text-align:center;
	  letter-spacing:2px;
	  padding:5px 0;
}
.bnr_red p{
	color:#fff;
	text-align:center;
	font-size:14px;
	letter-spacing:1px;
	margin:20px auto;
	  width:84%;
}

.bnr_red div span{
	display: inline-block;
	margin:10px;
}

}


@media screen and (min-width: 768px), print {
#repair{
	  width: 100%;
	  text-align:center;
	  background-color:#fff;
	  padding:80px 0;
}
#repair div{
	background:#fff;
	width:950px;
	height:100px;
	margin:0px auto;
	text-align:left;
	background-image: url(../img/index/arrow_red.png);
	background-size:0px;
	background-repeat:no-repeat;
	background-position:99% 50%
}
#repair img{
	width:950px;
	height:auto;
	margin:0px;
	border:none;
	float:left;
}
#repair h3{
	font-size: 30px;
	line-height:36px;
	text-align:center;
	font-weight: 700;
	margin:10px 0 0 10px;;
	background-image: url(../img/index/bnr_repair_img.png);
	background-size:0px;
	background-repeat:no-repeat;
	background-position:360px 0px;
}
#repair h3 span.txt01{
	display:block;
	font-size: 17px;
	line-height:22px;
	font-weight: 500;
}
#repair h3 span.txt02{
	display:block;
	font-size: 16px;
	line-height:22px;
	letter-spacing:1px;
	font-weight: 500;
	color:#CB243D;
	text-align:center;
}
#repair a{
	text-decoration:none;
}
#repair a:hover{
	color:#666;
}
}

@media screen and (max-width: 767px) {
#repair{
	  width: 100%;
	  text-align:center;
	  background-color:#fff;
	  padding:50px 0 50px;
}
#repair div{
	background:#fff;
	width:100%;
	margin:0px auto 0px;
	text-align:left;
	background-image: url(../img/index/arrow_red.png);
	background-size:0px;
	background-repeat:no-repeat;
	background-position:99% 88%;
}
#repair img{
	width:100%;
	margin:0px 0 0 0;
}
#repair h3{
	font-size: 15px;
	letter-spacing:-1px;
	line-height:24px;
	font-weight: 700;
	margin:10px 0 10px 5px;
	background-image: url(../img/index/bnr_repair_img.png);
	background-size:0px;
	background-repeat:no-repeat;
	background-position:left bottom;
	text-align:center;
}
#repair h3 span.txt01{
	font-size: 13px;
	line-height:18px;
	display:block;
	font-weight: 500;
}
#repair h3 span.txt02{
	display:block;
	font-size: 13px;
	line-height:20px;
	font-weight: 500;
	color:#CB243D;
	text-align:center;
}
#repair a{
	text-decoration:none;
}
#repair a:hover{
	color:#666;
}
}

@media screen and (min-width: 768px), print {
#content{
	background: #fff;
	padding:0 0 100px;
}
.content_inner{
	width: 960px;
	margin:0 auto;
}
#main{
	width:700px;
	float:left;
	padding:0px 0px;
	margin:0 0 0px;
}
 #main h2{
	  font-size:23px;
	  color: #c7000b;
	  line-height:150%;
	  border-bottom:1px solid #c7000b;
	  margin: 50px 0 20px;
	  padding: 0 0 10px 0;
	  font-weight:700;
}
 #main ul{
	  display:table;
  }
  #main ul li{
	  width:210px;
	  margin: 0 12px 20px 0;
	  font-size:14px;
	  line-height:150%;
	  background:#fff;
	  float:left;
	  padding:10px 17px 0px 0px;
	  text-align:left;
	  font-weight:300;
  }
  #main ul li:last-child{
	  padding:10px 0px 12px 0px;
  }
  #main ul li p{
	  display:block;
	  width:210px;
	  height:110px;
	  overflow:hidden;
	  margin-bottom:5px;
  }
  #main ul li img{
	  width:100%;
	  height: auto;
  }
  #main ul li a{
	  max-width:210px;
	  text-decoration:none
  }
    #main .list a{
		display: block;
		text-decoration: none;
		color: #fff;
		font-size: 14px;
		font-weight: 700;
		padding: 10px 0;
		margin: 40px auto 0;
		background: #000;
		width: 10em;
		text-align: center;
	}

 
#main dl {
	display:table;
	font-size:14px;
	line-height:150%;
	margin-bottom:30px;
    width:700px;
}
#main dt {
    float:left;
    clear:both;
    width:110px;
    white-space:nowrap;
	color:#333;
	font-size:90%;
	font-weight: 500;
	padding:6px 0;
	border-bottom:0px solid #ddd;
}
#main dd {
    margin-left:110px;
	padding:6px 0;
	border-bottom:0px solid #ddd;
}

#side{
	width:220px;
	float:right;
	margin:50px 0 0px;
}
   #side ul li{
	  margin:0px auto 15px;
  }
}

@media screen and (max-width: 767px) {
#content{
	background: #fff;
	padding:0 0 50px;
}
.content.lower{
	background: #fff;
}
.content_inner{
	width: 100%;
	margin:0 auto;
}
#main{
	width: 84%;
	margin:20px auto 0;
}
 #main h2{
	  font-size:23px;
	  color: #c7000b;
	  line-height:150%;
	  border-bottom:1px solid #c7000b;
	  margin: 0px 0 10px;
	  padding: 0 0 10px 0;
	  font-weight:700;
	  text-align:center;
}
 #main ul{
	  display:table;
  }
  #main ul li{
	  width:100%;
	  font-size:14px;
	  line-height:150%;
	  background:#fff;
	  float:left;
	  padding:10px 0px 10px 0px;
	  text-align:left;
	  font-weight:200;
	  border-bottom:1px solid #E4919D;
  }
	 #main ul li a{
		  text-decoration:none;
		  color:#343430;
	 }
	#main ul li p{
		display:block;
		width:100px;
		height:50px;
		overflow:hidden;
		margin:0px 10px 0 0;
		float:left;
	}
	 #main ul li img{
	  width:100%;
	  height: auto;
	 }
    #main .list a{
		display: block;
		text-decoration: none;
		color: #fff;
		font-size: 14px;
		font-weight: 700;
		padding: 10px 0;
		margin: 40px auto 0;
		background: #000;
		width: 10em;
		text-align: center;
	}

#main dl {
	display:table;
	font-size:14px;
	line-height:150%;
	margin-bottom:30px;
    width:100%;
}
#main dt {
    width:100%;
	color:#333;
	font-weight: 500;
	font-size:90%;
	padding:8px 0 2px;
}
#main dd {
    width:100%;
	padding:2px 0 8px;
	border-bottom:0px solid #ddd;
}

#side{
	width: 90%;
	margin:80px auto 50px;
	text-align:center;
}
   #side ul li{
	   margin-bottom:15px;
  }
}

#trouble .bnr_area {
         padding-bottom: 50px;
}

#trouble .bnr_area img {
        max-width: 100%;
}

