@charset "UTF-8";

/*****************************************************

    SP用

*****************************************************/
@media screen and (max-width: 769px) {
.sp-none { display:none; }
p {
	font-size: 16px;
	line-height: 1.5em;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	color: #666;
	margin-bottom: 5%;
}
p.non br {
	display: none;
	}
.txt-s {
	font-size: 13px;
	line-height: 1.5em;
}
.youtube {
	position: relative;
	width: 90%;
	padding-top: 56.25%;
	margin-right: auto;
	margin-left: auto;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
/*ヘッダ*/
.bar {
	display: none;
}

header {
	width: 100%;
	background-image: url(../img/bk-head.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 2%;
	text-align: center;
	border-top: 3px solid #cc0000;
}
header h1 {
	text-align: center;
}
header h1 img, header h2 img,header h3 img {
	width: 98%;
}
header h2 { background:#399;}
/*ふきだしタイトル*/
.title-black {
	background-image: url(../img/bk-black.jpg);
	background-repeat: repeat;
	width: 100%;
	padding-top: 3%;
}
.allow-black {
	width: 100%;
	background-image: url(../img/arrow-black.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
	height: 20px;
}
.title-red {
	background-image: url(../img/bk-red.jpg);
	background-repeat: repeat;
	width: 100%;
	padding-top: 5%;
	padding-bottom: 5%;
}
.allow-red {
	width: 100%;
	background-image: url(../img/arrow-red.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
	height: 20px;
}
.title-yellow {
	background-image: url(../img/bk-yellow.jpg);
	background-repeat: repeat;
	width: 100%;
	padding-top: 5%;
	padding-bottom: 5%;
}
.allow-yellow {
	width: 100%;
	background-image: url(../img/arrow-yellow.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
	height: 20px;
}
.title-green {
	background-image: url(../img/bk-green.jpg);
	background-repeat: repeat;
	width: 100%;
	padding-top: 5%;
	padding-bottom: 5%;
}
.allow-green {
	width: 100%;
	background-image: url(../img/arrow-green.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
	height: 20px;
}
.title-blue {
	background-image: url(../img/bk-blue.jpg);
	background-repeat: repeat;
	width: 100%;
	padding-top: 5%;
	padding-bottom: 5%;
}
.allow-blue {
	width: 100%;
	background-image: url(../img/arrow-blue.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
	height: 20px;
}
img.img-98 {
	width: 98%;
	height: auto;
}
img.img-90 {
	width: 90%;
	height: auto;
}
img.img-80 {
	width: 90%;
	height: auto;
}
.wrap-1000 {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 4%;
	padding-bottom: 4%;
}
.wrap-1000-2 {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 6%;
	padding-bottom: 5%;
}
.wrap-gray {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	background-color: #F5F5F5;
}
.wrap-yellow {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	background-color: #FFF9E0;
}
.wrap-sky {
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	background-image: url(../img/bk-sky.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	padding-top: 20%;
	padding-bottom: 20%;
}
.wrap-sky img {
	width: 90%;
	height: auto;
}
.box-001 {
	margin-bottom: 5%;
}
.box-001 p {
	width: 90%;
	margin-bottom: 0px;
}
.box-001 img {
	width: 60%;
	margin-bottom: 3%;
	height: auto;
	border-radius: 10px; /* CSS3草案 */
	-webkit-border-radius: 10px; /* Safari,Google Chrome用 */
	-moz-border-radius: 10px; /* Firefox用 */
	border: 2px solid #ccc;
}
.u-30 {
	margin-bottom: 3%;
}
.u-50 {
	margin-bottom: 5%;
}
.u-60 {
	margin-bottom: 6%;
}
.cv {
	margin-bottom: 5%;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.cv .cv-btn {
	margin-bottom: 2%;
	width: 100%;
}
.cv .cv-tel {
	width: 100%;
}
.box-002 {
	margin-bottom: 5%;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.box-002 .l {
	float: left;
	width: 49%;
}
.box-002 .r {
	float: right;
	width: 49%;
}
img.img-008 {
	width: 70%;
	height: auto;
	margin-bottom: 5%;
}
.midashi-ganyu {
	color: #fff;
	width: 90%;
	background-color: #0099CC;
	padding-top: 1%;
	padding-bottom: 1%;
	padding-left: 2%;
	padding-right: 2%;
	border-radius: 6px; /* CSS3草案 */
	-webkit-border-radius: 6px; /* Safari,Google Chrome用 */
	-moz-border-radius: 6px; /* Firefox用 */
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 2%;
	margin-right: auto;
	margin-left: auto;
}
.box-003 {
	margin-right: auto;
	margin-bottom: 3%;
	margin-left: auto;
	width: 90%;
}
.box-003 p {
	width: 100%;
	margin-bottom: 0px;
}
.box-003 img {
	width: 70%;
	margin-bottom: 2%;
}
.box-img-014 {
	background-color: #5C5C5C;
	border-radius: 10px; /* CSS3草案 */
	-webkit-border-radius: 10px; /* Safari,Google Chrome用 */
	-moz-border-radius: 10px; /* Firefox用 */
	width: 90%;
	margin-right: auto;
	margin-left: auto;
	padding-top: 5%;
	padding-bottom: 5%;
	margin-top: 5%;
	margin-bottom: 5%;
}
.box-img-014 img {
	width: 90%;
	height: auto;
}
.box-004 {
	margin-right: auto;
	margin-left: auto;
	width: 90%;
	margin-bottom: 4%;
}
.box-004 img {
	width: 70%;
	margin-bottom: 2%;
}
.box-004 p {
	width: 100%;
	margin-bottom: 0px;
}
.box-005 {
	background-color: #ccc;
	margin-bottom: 5%;
	border-radius: 10px; /* CSS3草案 */
	-webkit-border-radius: 10px; /* Safari,Google Chrome用 */
	-moz-border-radius: 10px; /* Firefox用 */
	width: 84%;
	padding-top: 5%;
	padding-bottom: 5%;
	padding-right: 3%;
	padding-left: 3%;
	margin-right: auto;
	margin-left: auto;
}
.box-005 .l {
	width: 60%;
	height: auto;
	margin-bottom: 3%;
}
.box-005 .r {
	text-align: left;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.box-005 .r img {
	margin-bottom: 3%;
	width: 100%;
}
.box-005 .r p {
	width: 100%;
	margin-bottom: 0px;
}
.box-006 {
	background-color: #FFCC00;
	margin-bottom: 5%;
	border-radius: 10px; /* CSS3草案 */
	-webkit-border-radius: 10px; /* Safari,Google Chrome用 */
	-moz-border-radius: 10px; /* Firefox用 */
	width: 84%;
	padding-top: 5%;
	padding-bottom: 5%;
	padding-right: 3%;
	padding-left: 3%;
	margin-right: auto;
	margin-left: auto;
}
.box-006 p {
	margin-bottom: 0px;
}
.box-006 img.img-027  {
	margin-top: 3%;
	margin-bottom: 3%;
	width: 70%;
}
.box-006 img.img-026  {
	width: 100%;
}
.box-007 .midashi-002 {
	margin-top: -3%;
	margin-bottom: 5%;
	width: 60%;
}
.box-007 {
	background-color: #ccc;
	border-radius: 10px; /* CSS3草案 */
	-webkit-border-radius: 10px; /* Safari,Google Chrome用 */
	-moz-border-radius: 10px;
	margin-bottom: 7%;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.box-007 .innar {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.box-007 .innar p {
	width: 100%;
}
.box-007 .innar img {
	width: 100%;
	height: auto;
	margin-bottom: 2%;
}
.box-007 .l {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.box-007 .r {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.box-008 .midashi-002 {
	margin-top: -3%;
	margin-bottom: 3%;
	width: 70%;
}
.box-008 {
	background-color: #FFCC00;
	border-radius: 10px; /* CSS3草案 */
	-webkit-border-radius: 10px; /* Safari,Google Chrome用 */
	-moz-border-radius: 10px;
	margin-bottom: 5%;
	padding-bottom: 5%;
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.box-008 .innar {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.box-008 .innar p {
	width: 100%;
}
.box-008 .innar img {
	width: 100%;
	height: auto;
	margin-bottom: 2%;
}
.box-008 .l {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.box-008 .r {
	width: 90%;
	margin-right: auto;
	margin-left: auto;
}
.box-009 {
	background-color: #FFF9E0;
	margin-right: auto;
	margin-left: auto;
	width: 80%;
	border-radius: 10px; /* CSS3草案 */
	-webkit-border-radius: 10px; /* Safari,Google Chrome用 */
	-moz-border-radius: 10px; /* Firefox用 */
	border: 2px solid #FF9900;
	padding-top: 5%;
	padding-bottom: 2%;
}
.box-009 .img-038 {
	width: 50%;
	margin-bottom: 3%;
}

.law_amendment {width:90%; margin: 10px auto 40px;
border-top: 2px solid #607b79;
border-bottom: 2px solid #607b79;}
.law_amendment h2 { font-size:1.6rem; text-align:center; color:#000;}
.law_amendment h3 { font-size:1rem; }
.law_amendment h3 span {color: #399; }
.law_amendment img { width:100%; margin-top:1rem; margin-bottom:2rem;}

footer {
	width: 100%;
	background-color: #333333;
	padding-top: 10%;
	padding-bottom: 30%;
	border-top: 3px solid #cc0000;
}
footer p {
	color: #fff;
}
.copyright {
	color: #fff;
	text-align: center;
	font-size: 10px;
	border-top: 1px solid #fff;
	padding-top: 20px;
}
.sp-cv-btn {
	background-color: #333;
	position: fixed;
	bottom: 0px;
	padding-top: 2%;
	padding-bottom: 2%;
	padding-right: 2%;
	padding-left: 2%;
	background-color: rgba( 0, 0, 0, 0.8 );
	z-index: 10000;
}
.sp-cv-btn .mail {
	width: 49%;
	height: auto;
	float: left;
}
.sp-cv-btn .tel {
	width: 49%;
	height: auto;
	float: right;
}
/*サンクスページ*/
.wrap-1000-3 {
    width: 90%;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
    height: 300px;
}
.wrap-1000-3 p {
    text-align: center;
    padding-top: 30%;
}
/*工事実績*/
.img-040 {
    width: 90%;
    margin-bottom: 3%;
}
.box-3retsu {
	display: flex;
    justify-content: flex-start;
     flex-wrap: wrap;
}
.box-3retsu .item {
    width: 90%;
    margin-top: 2%;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 2%;
}
.box-3retsu .item img {
	width: 100%;
	height: auto;
	margin-bottom: 2%;
}
.box-3retsu .item p {
	width: 100%;
	text-align: center;
	font-size: 14px;
}
.kouhou {
    width: 90%;
    margin-right: auto;
    margin-bottom: 2%;
    margin-left: auto;
}
.kouhou .items {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.kouhou .items .item {
    width: 100%;
    margin-bottom: 3%;
}
.kouhou .items .item img {
    width: 100%;
    height: auto;
}
}