@charset "UTF-8";

/*clearfix*/
.cf {
	zoom: 1;
	clear: both;
}
.cf:before, .cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear: both;
}

/*-------------
全デバイスとスマホ向け
-------------*/
html,body {
}
p {
	background-image: url(../images/clear.gif);
	max-height: 999999px;
	line-height: 1.6;
	font-size: 14px;
}
img {
	vertical-align: bottom;
	max-width:100%;
	height: auto;
}

.mb0 {
	margin-bottom: 0!important;
}

.pc-only {
	display: none!important;
}
.inner1000 {
	width: 90%;
	margin: 10px auto;
}
.reviews-badges {
	text-align: center;
}

/*body*/
body {
	width: 100%;
	background: #ffffff;
	font-family: "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	color: #333333;
	font-size: 1.0em;
}
a {
	color: #084ea1;
}
a:hover {
	color: #084ea1;
	text-decoration: none;
}

.alert-copy {
	font-size: 4.4vw;
	font-weight: bold;
	color: #c02e28;
}
.alert-copy2 {
	font-size: 4vw;
	font-weight: bold;
	margin-bottom: 15px;
}

ul.alert-btn {
	list-style-type: none;
	width: 90%;
	margin: 0 auto 10px;
}
ul.alert-btn li {
	display: block;
	width: 100%;
	border-radius: 5px;
	margin-bottom: 8px;
}
ul.alert-btn li a {
	display: block;
	padding: 11px 0;
	text-decoration: none;
	border-radius: 5px;
	color: #fff;
	font-size: 5vw;
	font-weight: bold;
}
.ab-tel a {
	background: #de7736;
}
.ab-line a {
	background: #24a462;
}
.ab-form a {
	background: #c02e28;
}

/*header*/
header {
	padding: 8px 0;
}
#header-inner {
	width: 94%;
	margin: 0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
}
header h1 {
	width: 40%;
}
.head-copy {
	width: 56%;
	font-size: 4.1vw;
	font-weight: 700;
	line-height: 1.3;
	color: #229ada;
}

/*メイン*/
#main {
	padding: 25px 0;
	background-image: url(../images/bg_main.jpg);
	background-size: cover;
	background-position: center center;
}
@media (max-width:559px){
#main {
	padding: 25px 0;
	background-image: url(../images/bg_main_sp.jpg);
	background-size: cover;
	background-position: center center;
}
}
#main h2 {
	text-align: center;
	font-size: 4.6vw;
	line-height: 1.4;
	margin-bottom: 5px;
}
#main h2 span {
	background: #229ada;
	color: #fff;
	padding-bottom: 2px;
	padding-left: 4px;
}
#main h1 {
	text-align: center;
	color: #fff;
	font-size: 5.2vw;
}
ul.main-condition {
	list-style-type: none;
	width: 90%;
	margin: 0 auto;
	display: block;
	padding: 15px 5% 5px;
}
ul.main-condition li {
	width: 65%;
	text-align: center;
	background: #fff;
	border-radius: 15px;
	margin-bottom: 5px;
	font-size: 3vw;
	padding: 9px 0 8px;
	position: relative;
}
ul.main-condition li::after {
	content: '';
	width: 12px;
	height: 12px;
	background: #fff;
	position: absolute;
	left: 46%;
	bottom: -4px;
	transform: rotate(-45deg);
}
ul.main-condition li:nth-child(even) {
	margin-right: 0;
	margin-left: auto;
}
ul.main-condition li:last-child {
	margin-bottom: 0;
}

/*メイン2*/
#main2 {
	margin: 0;
	padding: 0;
}
#main2 h2 {
	background: #3d5b86;
	color: #fff;
	padding: 10px 4% 12px;
	font-size: 5vw;
	line-height: 1.4;
}
#main2 h2 span {
	font-size: 6vw;
}
.main2-service {
	text-align: center;
	width: 95%;
	margin: 15px auto;
}
.main2-service h3 {
	font-size: 6vw;
	margin-bottom: 5px;
}
.main2-service ul {
	list-style-type: none;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.main2-service ul li {
	width: 33%;
	padding: 7px 0;
	border-radius: 5px;
	font-size: 4.5vw;
	font-weight: 600;
	color: #fff;
}
.m-service1 {
	background: #D72638;
	}
.m-service2 {
	background: #3F88C5;
}
.m-service3 {
	background: #F49D37;
}
.main2-detail {
	width: 95%;
	margin: 15px auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
}
.main2-detail-l {
	width: 65%;
}
.main2-detail-r {
	width: 33%;
}
.main2-detail-rtxt {
	font-size: 2.7vw;
}
.main2-detail-rphoto {
	width: 90%;
	margin: 0 auto 3px;
}
.main2-point {
	list-style-type: none;
	width: 92%;
	margin: 0 auto;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	gap: 3.5%;
}
.main2-point li {
	width: 27%;
	text-align: center;
	margin-bottom: 10px;
	background: #eee;
	border-radius: 5px;
	padding: 6px 2%;
}
.main2-point-icon {
	width: 60%;
	margin: 0 auto 5px;
}
.main2-point li h4 {
	font-size: 3.6vw;
	color: #3d5b86;
}
.brand {
	width: 96%;
	margin: 0 auto 30px;
}
/*フォームタイトル*/
#form-ttl h3 {
	text-align: center;
	background: #eee;
	padding: 20px 0 22px;
	font-size: 5vw;
}

/*作業時間＿エリア＿支払い*/
#time-area {
	width: 87%;
	margin: 0 auto 15px;
	border: 2px solid #3d5b86;
	padding: 15px 3%;
}
#time-area h2 {
	text-align: center;
	color: #3d5b86;
	font-size: 4.5vw;
	margin-bottom: 10px;
}
.time {
	border-bottom: 2px dashed #3d5b86;
	padding-bottom: 15px;
	margin-bottom: 15px;
}
.time-detail {
	text-align: center;
	font-size: 3.1vw;
	font-weight: bold;
	color: #444;
}
.time-detail span {
	color: #3d5b86;
	font-size: 4.5vw;
	background: #f0ff00;
}
.area-detail {
	text-align: center;
	font-size: 4.5vw;
	font-weight: bold;
	color: #444;
}
.area-detail span {
	color: #3d5b86;
	background: #f0ff00;
}
.howtopay {
	width: 93%;
	margin: 0 auto 20px;
}
.howtopay2 {
	width: 93%;
	margin: 0 auto 30px;
}

/*CV*/
#btn-cv {
	background: #fff;
	padding: 25px 0;
}
.cv-btn {
	width: 90%;
	text-align: center;
	font-size: 5.5vw;
	font-weight: bold;
	display: block;
	margin: 0 auto 10px;
}
.cv-btn a {
	display: block;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
	position: relative;
}
.cv-btn-tel a {
	line-height: 1.5;
	background: #de7736;
	padding: 4px 0 5px;
	box-shadow: 0px 5px 0px 0px rgba(193, 91, 27, 1);
}
.cv-btn-tel span {
	line-height: 1;
	background: #fff;
	color: #000;
	font-size: 4.5vw;
	padding: 2px 20px 2px;
}
.cv-btn a:after {
	position: absolute;
	top: 50%;
	right: 10px;
	content: '';
	width: 11px;
	height: 11px;
	border-top: 4px solid #fff;
	border-right: 4px solid #fff;
	translate: 0 -50%;
	transform: rotate(45deg);
}
.cv-btn-mail a {
	background: #c02e28;
	padding: 25px 0;
	box-shadow: 0px 5px 0px 0px rgba(157, 19, 13, 1);
}
.cv-btn-line a {
	padding: 25px 0;
	background: #24a462;
	box-shadow: 0px 5px 0px 0px rgba(15, 130, 71, 1);
}

/*#btn-cv h2 {
	width: 86%;
	margin: 0 auto 10px;
}
.btn-tel {
	width: 95%;
	margin: 0 auto 10px;
}
ul.btn-list {
	list-style-type: none;
	width: 95%;
	margin: 0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
ul.btn-list li {
	width: 49%;
}*/


/*よくあるトラブルと料金のご説明*/
#case {
	background: #eee;
}
#case h2 {
	text-align: center;
	background: #3d5b86;
	padding: 10px 0;
	font-size: 4.5vw;
	color: #fff;
	margin-bottom: 15px;
}
#case h3 {
	text-align: center;
	color: #3d5b86;
	font-size: 4vw;
	margin-bottom: 20px;
}
ul.case-list {
	list-style-type: none;
	display: block;
	width: 90%;
	margin: 0 auto 30px;
}
ul.case-list li {
	background: #fff;
	border-radius: 7px;
	padding-bottom: 10px;
	margin-bottom: 20px;
}
ul.error-no {
	list-style-type: none;
	text-align: center;
}
ul.error-no li {
	display: inline-block;
	background: #3d5b86;
	border-radius: 0;
	padding: 5px 10px 7px;
	font-size: 3.5vw;
	color: #fff;
	margin-bottom: 7px;
}
ul.case-list li h4 {
	text-align: center;
	font-size: 4.2vw;
	line-height: 1.3;
}
ul.case-list li h4 span {
	font-size: 5.2vw;
	color: #f42929;
}

/*料金・サービス*/
.service {
	background: #fff;
	padding-top: 30px;
}
.service h2 {
	text-align: center;
	background: #229ada;
	padding: 10px 0;
	font-size: 4.5vw;
	color: #fff;
	margin-bottom: 15px;
}
.service h3 {
	text-align: center;
	color: #229ada;
	font-size: 4.2vw;
	margin-bottom: 15px;
}
.ttl-drum {
	width: 90%;
	margin: 0 auto 15px;
	text-align: center;
}
ul.service-list-btn {
	width: 90%;
	margin: 0 auto;
	list-style-type: none;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	gap: 4%;
}
ul.service-list-btn li {
	width: 48%;
	text-align: center;
	font-size: 3.5vw;
	font-weight: 800;
	margin-bottom: 10px;
	display: block;
}
ul.service-list-btn li a {
	display: block;
	padding: 7px 0 5px;
	border-radius: 5px;
	text-decoration: none;
	color: #333;
	transition: all .5s ease;
}
ul.service-list-btn li a:hover {
	opacity: 0.5;
	filter: alpha(opacity=50);
}
#btn-toilet a {
	background: #d6dee5;
}
#btn-kitchen a {
	background: #e8e9eb;
}
#btn-bath a {
	background: #879db1;
}
#btn-out a {
	background: #afc2aa;
}
#btn-all a {
	background: #d1d1d1;
}
#btn-strap a {
	background: #b387b9;
}
ul.service-list-btn2 {
	width: 90%;
	margin: 0 auto 30px;
	list-style-type: none;
	display: block;
}
ul.service-list-btn2 li {
	display: block;
	text-align: center;
	font-size: 3.5vw;
	font-weight: 800;
	margin-bottom: 10px;
}
ul.service-list-btn2 li a {
	display: block;
	padding: 7px 0 5px;
	border-radius: 5px;
	text-decoration: none;
	background: #75abea;
	color: #333;
	transition: all .5s ease;
}
ul.service-list-btn2 li a:hover {
	opacity: 0.5;
	filter: alpha(opacity=50);
}
.service table {
	width: 90%;
	margin: 0 auto 15px;
}
.service-tbb {
	margin: 0 auto 30px;
}
.service table th {
	background: #229ada;
	color: #fff;
	padding: 7px;
	border: 1px solid #ccc;
	font-size: 3.5vw;
}
.service table td {
	padding: 11px;
	border: 1px solid #ccc;
	font-size: 3.2vw;
}
.service table td span {
	font-size: 2.5vw;
}
.service-price {
	white-space: nowrap;
	font-weight: bold;
	text-align: center;
	color: #f42929;
}

.service h4 {
	text-align: center;
	color: #3d5b86;
	font-size: 4vw;
	margin-bottom: 15px;
}
.service-sub {
	width: 90%;
	margin: 0 auto 10px;
	font-size: 3.6vw;
	font-weight: 600;
	color: #3d5b86;
}
.service-ba {
	width: 90%;
	margin: 0 auto 25px;
}
.service-cap {
	font-size: 12px;
	width: 90%;
	margin: 0 auto 15px;
}
.service-oth {
	text-align: center;
	font-size: 4.2vw;
	font-weight: 700;
}

/*選ばれる理由*/
#why {
	width: 90%;
	margin: 40px auto;
}
#why h2 {
	text-align: center;
	color: #fff;
	font-size: 4vw;
	margin-bottom: 15px;
}
#why h2 span {
	font-size: 6.6vw;
}
#why ul {
	list-style-type: none;
	display: block;
	width: 92%;
	margin: 0 auto;
}
#why ul li {
	background: #eee;
	padding: 15px 5%;
	margin-bottom: 15px;
	position: relative;
}
.why-no {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	background: #3d5b86;
	padding: 10px;
	font-size: 6vw;
	font-weight: bold;
	color: #fff;
}
.why-img {
	margin-bottom: 10px;
}
#why ul li h3 {
	text-align: center;
	color: #3d5b86;
	font-size: 5vw;
	margin-bottom: 6px;
}

/*お客様の声*/
#voice {
	background: #eee;
	padding: 20px 0;
	width: 100%;
}
#voice h2 {
	font-size: 5.8vw;
	color: #fff;
	text-align: center;
	margin: 0 auto 12px;
}
#voice-list {
	width: 90%;
	margin: 0 auto;
}
#voice-list ul {
	list-style-type: none;
}
#voice-list ul li {
	margin-bottom: 15px;
	background: #fff;
	border-radius: 10px;
	padding: 20px 0;
}
#voice-list ul li h3 {
	display: block;
	background: #3d5b86;
	padding: 7px 0;
	color: #fff;
	text-align: center;
	font-size: 4.5vw;
	margin-bottom: 10px;
}
.voice-inner {
	width: 95%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 10px;
}
.voice-photo {
	width: 55%;
}
.voice-txt {
	width: 42%;
}
.voice-txt h4 {
	display: inline-block;
	border: 2px solid #3d5b86;
	padding: 2px 6px 3px;
	font-size: 4vw;
	color: #3d5b86;
	margin-bottom: 4px;
}
.voice-txt p {
	margin-bottom: 15px;
}
.voice-intro {
	font-size: 3.6vw;
	line-height: 1.5;
}
.voice-d {
	width: 95%;
	margin: 0 auto;
}
.swiper-container [class^="swiper-button-"]{
    top: 150px;
}

/*施工までの3ステップ*/
#steps {
	background: #ccc;
	padding: 20px 0 5px;
}
#steps h2 {
	font-size: 5.8vw;
	color: #fff;
	text-align: center;
	margin: 0 auto 12px;
}
ul.steps-flow {
	list-style-type: none;
	width: 95%;
	margin: 0 auto;
}
ul.steps-flow li {
	background: #fff;
	border-radius: 5px;
	padding: 10px 3%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 22px;
}
.steps-no {
	width: 12%;
	display: inline-block;
	font-size: 4vw;
	color: #fff;
	background: #3d5b86;
	padding: 5px 0;
	text-align: center;
}
.steps-ill {
	width: 22%;
}
.steps-txt {
	width: 61%;
}
.steps-txt h3 {
	font-size: 4.5vw;
	margin-bottom: 13px;
}
.steps-arr {
	position: relative;
}
.steps-arr:after {
	content: '';
	width: 22px;
	height: 22px;
	background: #fff;
	position: absolute;
	bottom: -2px;
	left: 50%;
	rotate: -45deg;
	transform: translateX(-50%);
}

/*faq*/
#faq {
	width: 100%;
	background: #3d5b86;
	padding: 20px 0;
}
#faq h2 {
	text-align: center;
	margin-bottom: 20px;
	font-size: 4.4vw;
	color: #fff;
}
ul.faq-list {
	list-style-type: none;
	width: 90%;
	margin: 0 auto 15px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
ul.faq-list li {
	display: block;
	width: 32%;
	text-align: center;
	font-size: 3vw;
	font-weight: 600;
}
ul.faq-list li a {
	display: block;
	border: 2px solid #fff;
	border-radius: 3px;
	padding: 5px 0 2px;
	color: #fff;
	text-decoration: none;
}
#faq h4 {
	display: block;
	text-align: center;
	margin-bottom: 10px;
	font-size: 4vw;
	color: #3d5b86;
	background: #fff;
	padding: 7px 0 7px;
}
.accordion-area {
	list-style: none;
	width: 90%;
	max-width: 800px;
	margin:0 auto 20px;
}
.accordion-area li{
	margin: 10px 0;
}
.accordion-area section {
	border: 2px solid #fff;
}
.title {
	position: relative;/*+マークの位置基準とするためrelative指定*/
	cursor: pointer;
	font-size:1.05rem;
	font-weight: 600;
	color: #fff!important;
	padding: 3% 3% 3% 50px;
	transition: all .5s ease;
	text-align: left!important;
}
.title::before,
.title::after{
	position: absolute;
	content:'';
	width: 15px;
	height: 2px;
	background-color: #fff;
}
.title::before{
	top:48%;
	left: 15px;
	transform: rotate(0deg);
}
.title::after{
	top:48%;
	left: 15px;
	transform: rotate(90deg);

}
.title.close::before{
	transform: rotate(45deg);
}

.title.close::after{
	transform: rotate(-45deg);
}
.box {
	display: none;/*はじめは非表示*/
	background: #fff;
	margin:0 3% 3% 3%;
	padding: 3%;
}

/*footer*/
footer {
	background-size: 50px 50px;
	width: 100%;
	padding-top: 25px;
}
.footlogo {
	width: 55%;
	margin-left: auto;
	margin-right: auto;
}
.footlogo img {
	width: 100%;
	max-width: 897px;
}
.comname {
	text-align: center;
	font-size: 84%;
	font-weight: bold;
	margin-bottom: 5px;
}
.cominfo {
	width: 95%;
	margin: 0 auto 20px;
	text-align: center;
	font-size: 70%;
	line-height: 1.7;
}
.comttl {
	text-align: center;
	font-size: 84%;
	font-weight: bold;
	margin-bottom: 5px;
}
.footbnr {
	width: 90%;
	margin: 0 auto 30px;
}
address {
	font-size: 50%;
	font-style: normal;
	text-align: center;
	margin-top: 10px;
	padding-bottom: 150px;
}

#company {
	width: 90%;
	margin: 30px auto;
}
#company h2 {
	text-align: center;
	font-size: 3.8vw;
	font-weight: 600;
	background: #eee;
	border-radius: 50px;
	padding: 7px 0;
	margin-bottom: 10px;
}
#company h3 {
	text-align: center;
	font-size: 3.3vw;
	font-weight: normal;
	margin-bottom: 22px;
}
#company table {
	width: 100%;
	margin-bottom: 25px;
}
#company table th {
	color: #fff;
	font-size: 3vw;
	white-space: nowrap;
	padding: 12px;
	background: #666;
	border-bottom: 1px solid #fff;
}
#company table td {
	font-size: 3vw;
	line-height: 1.5;
	padding: 12px;
	background: #f9f9f9;
	border-bottom: 1px solid #666;
}
.b-logo img {
	width: 110px;
}
.c-logo img {
	width: 150px;
}

#foot-fix-all {
	width: 96%;
	position: fixed;
	bottom: 2%;
	left: 2%;
	z-index: 99999;
	display: block;
}
.ff-chat a {
	display: block;
	padding: 2px 2% 2px 2%;
	background-image: linear-gradient(90deg, rgba(141, 196, 227, 1), rgba(169, 130, 197, 1));
}
#foot-fix-pc {
	display: none;
}

.ff-phone {
	text-align: center;
	font-size: 4.8vw;
	font-weight: bold;
	display: block;
	margin: 0 auto 10px;
}
.ff-phone a {
	display: block;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
	position: relative;
	background: #de7736;
	padding: 15px 0;
	box-shadow: 0px 5px 0px 0px rgba(193, 91, 27, 1);
}
.ff-phone a:after {
	position: absolute;
	top: 50%;
	right: 10px;
	content: '';
	width: 11px;
	height: 11px;
	border-top: 4px solid #fff;
	border-right: 4px solid #fff;
	translate: 0 -50%;
	transform: rotate(45deg);
}
#foot-fix ul {
	list-style-type: none;
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	align-items: center;
}
#foot-fix ul li {
	width: 49%;
	text-align: center;
	font-size: 3.6vw;
	font-weight: bold;
}
#foot-fix ul li a {
	color: #fff;
	display: block;
	text-decoration: none;
	border-radius: 6px;
}
.ff-form a {
	background: #c02e28;
	padding: 8px 0;
	box-shadow: 0px 5px 0px 0px rgba(157, 19, 13, 1);
}
.ff-line a {
	padding: 8px 0;
	background: #24a462;
	box-shadow: 0px 5px 0px 0px rgba(15, 130, 71, 1);
}



#html-alert {
background: #4fb1ca;
}
#alert {
width: 95%;
margin: 15px auto;
}
.alert-copy {
margin-bottom: 10px;
}
.alert-price {
margin-bottom: 10px;
}
.btn-alert-tel {
width: 95%;
margin: 15px auto;
}
.btn-alert-mail {
width: 90%;
margin: 0 auto;
}


/*別ページ*/
#contents {
	width: 90%;
	margin: 0 auto;
	padding: 30px 0;
}
#contents h2 {
	text-align: center;
	background: #eeeeee;
	border-radius: 5px;
	padding: 7px 0;
	margin-bottom: 15px;
	font-size: 4vw;
}

/*フォーム*/
#contents-form {
	width: 90%;
	min-height: 500px;
	margin: 0 auto;
	padding: 30px 0;
}
#contents-form h3 {
	font-size: 3.8vw;
	margin-bottom: 15px;
}
#contents-form h4 {
	font-size: 3.6vw;
	margin-bottom: 8px;
}
#contents-form p {
	font-size: 3.3vw;
	margin-bottom: 20px;
}
.formTable {
	width: 100%;
	overflow: hidden;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding-top: 30px;
	margin-bottom: 30px;
}
.formTable dt {
	font-size: 3.3vw;
	font-weight: 600;
	margin-bottom: 5px;
}
.formTable dd {
	font-size: 3.3vw;
	margin-bottom: 25px;
}
#toiawase-detail {
	width: 90%;
}
.formTable input[type="text"],
.formTable input[type="email"],
.formTable input[type="tel"],
.formTable input[type="url"],
.formTable textarea {
	background-color: #fff;
	color: #333;
	border: 1px solid #ddd;
	font-size: 100%;
	padding: 0.5em;
	border-radius: 4px;
	box-shadow: 1px 1px 3px rgba(0,0,0,.1) inset;
}
input[type="submit"],
input[type="reset"] {
	font-size: 110%;
	padding: 0.4em 3em;
	background: #eee;
	color: #333;
	border-radius: 4px;
	cursor: pointer;
	box-shadow: 0 0 1px rgba(0,0,0,.2);
	border: 1px solid #ccc;
	text-shadow: -1px 1px 0 rgba(255,255,255,1);
}
.formTable input[type="submit"]:hover {
	box-shadow: 0 0 1px rgba(0,0,0,.2) inset;
}

/*-------------
PC向け（680px以上）
-------------*/
@media only screen and (min-width: 680px) {

.rollover a:hover img {
opacity: 0.5;
filter: alpha(opacity=50);
-ms-filter: "alpha( opacity=50 )";
}
a img {
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
-o-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}

.sp-only {
	display: none!important;
}
.pc-only {
	display: block!important;
		}
.inner1000 {
	width: 1000px;
	margin: 20px auto;
	}
	
	.alert-copy {
		font-size: 24px;
	}
	.alert-copy2 {
		font-size: 22px;
		margin-bottom: 30px;
	}
	
	ul.alert-btn {
		width: 100%;
		margin: 0 auto;
	}
	ul.alert-btn li {
		margin-bottom: 15px;
	}
	ul.alert-btn li a {
		padding: 15px 0 17px 0;
		border-radius: 5px;
		font-size: 26px;
	}

/*body*/
body {
}
p {
	font-size: 16px;
}
/*header*/
header {
	padding: 10px 0;
}
#header-inner {
	width: 900px;
		margin: 0 auto;
}
header h1 {
		width: 220px;
		margin-top: 0;
	}
	.head-copy {
		width: 650px;
		font-size: 28px;
		text-align: right;
	}

	/*メイン*/
	#main {
		padding: 25px 0;
		background-image: url(../images/bg_main.jpg);
		background-size: cover;
		background-position: center center;
	}
	#main h2 {
		font-size: 35px;
		margin-bottom: 10px;
	}
	#main h2 span {
	}
	#main h1 {
		font-size: 48px;
	}
	ul.main-condition {
		width: 700px;
		margin: 0 auto;
		padding: 15px 5% 5px;
	}
	ul.main-condition li {
		width: 65%;
		border-radius: 30px;
		margin-bottom: 10px;
		font-size: 18px;
		padding: 7px 0 8px;
		position: relative;
	}
	ul.main-condition li::after {
		content: '';
		width: 14px;
		height: 14px;
		background: #fff;
		position: absolute;
		left: 48%;
		bottom: -7px;
		transform: rotate(-45deg);
	}
	
	/*メイン2*/
	#main2 {
	}
	#main2 h2 {
		text-align: center;
		padding: 15px 2% 18px;
		font-size: 28px;
		line-height: 1.4;
	}
	#main2 h2 span {
		font-size: 38px;
	}
	.main2-service {
		width: 900px;
		margin: 25px auto;
	}
	.main2-service h3 {
		font-size: 36px;
		margin-bottom: 10px;
	}
	.main2-service ul {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	.main2-service ul li {
		width: 33%;
		padding: 12px 0;
		border-radius: 5px;
		font-size: 33px;
	}
	.main2-detail {
		width: 800px;
		margin: 30px auto;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		align-items: center;
	}
	.main2-detail-l {
		width: 65%;
	}
	.main2-detail-r {
		width: 33%;
	}
	.main2-detail-rtxt {
		font-size: 14px;
		text-align: center;
	}
	.main2-detail-rphoto {
		width: 90%;
		margin: 0 auto 10px;
	}
	.main2-point {
		width: 990px;
		margin: 0 auto 20px;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		gap: 0;
	}
	.main2-point li {
		width: 12%;
		margin-bottom: 10px;
		border-radius: 5px;
		padding: 12px 2%;
	}
	.main2-point-icon {
		width: 65%;
		margin: 0 auto 8px;
	}
	.main2-point li h4 {
		font-size: 19px;
	}
	.brand {
		width: 800px;
		margin: 0 auto 50px;
	}
	
	/*フォームタイトル*/
	#form-ttl h3 {
		padding: 40px 0 44px;
		font-size: 24px;
	}

	/*作業時間＿エリア＿支払い*/
	#time-area {
		width: 800px;
		margin: 0 auto 30px;
		border: 2px solid #3d5b86;
		padding: 20px 30px 30px;
	}
	#time-area h2 {
		font-size: 36px;
		margin-bottom: 15px;
	}
	.time {
		border-bottom: 2px dashed #3d5b86;
		padding-bottom: 25px;
		margin-bottom: 25px;
	}
	.time-detail {
		font-size: 24px;
	}
	.time-detail span {
		font-size: 38px;
	}
	.area-detail {
		font-size: 30px;
	}
	.area-detail span {
	}
	.howtopay {
		width: 450px;
		margin: 0 auto 20px;
	}
	.howtopay2 {
		width: 650px;
		margin: 0 auto 40px;
	}
	
	/*CV*/
	#btn-cv {
		background: #fff;
		padding: 25px 0;
	}
	.cv-btn {
		width: 600px;
		font-size: 24px;
		margin: 0 auto 20px;
	}
	.cv-btn a {
		border-radius: 10px;
		position: relative;
		transition: all 0.5s ease;
	}
	.cv-btn-tel a {
		line-height: 1.5;
		padding: 7px 0 10px;
	}
	.cv-btn a:hover {
		translate: 0 5px;
		box-shadow: none;
	}
	.cv-btn-tel span {
		line-height: 1;
		font-size: 22px;
		padding: 4px 20px 4px;
	}
	/*#btn-cv h2 {
		width: 600px;
		margin: 0 auto 20px;
	}
	.btn-tel {
		width: 750px;
		margin: 0 auto 10px;
	}
	ul.btn-list {
		width: 750px;
		margin: 0 auto;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	ul.btn-list li {
		width: 49%;
	}*/

	/*よくあるトラブルと料金のご説明*/
	#case {
	}
	#case h2 {
		padding: 15px 0;
		font-size: 33px;
		margin-bottom: 15px;
	}
	#case h3 {
		font-size: 28px;
		margin-bottom: 20px;
	}
	ul.case-list {
		display: -webkit-flex;
		display: flex;
		flex-wrap: wrap;
		width: 880px;
		margin: 0 auto;
		gap: 4%;
	}
	ul.case-list li {
		width: 48%;
		border-radius: 10px;
		padding-bottom: 10px;
		margin-bottom: 30px;
	}
	ul.error-no {
	}
	ul.error-no li {
		display: inline-block;
		width: auto;
		border-radius: 0;
		padding: 5px 10px 7px;
		font-size: 18px;
		margin-bottom: 10px;
	}
	ul.case-list li h4 {
		font-size: 19px;
		line-height: 1.3;
	}
	ul.case-list li h4 span {
		font-size: 30px;
	}
	
	/*料金・サービス*/
	.service {
	}
	.service h2 {
		padding: 15px 0;
		font-size: 33px;
		margin-bottom: 15px;
	}
	.ttl-drum {
		width: 800px;
		margin: 0 auto 15px;
	}
	ul.service-list-btn {
		width: 900px;
		gap: 2%;
	}
	ul.service-list-btn li {
		width: 49%;
		font-size: 22px;
		margin-bottom: 20px;
	}
	ul.service-list-btn li a {
		display: block;
		padding: 15px 0 17px;
	}
	ul.service-list-btn li a:hover {
		opacity: 0.5;
		filter: alpha(opacity=50);
	}
	ul.service-list-btn2 {
		width: 900px;
		margin: 0 auto 30px;
	}
	ul.service-list-btn2 li {
		font-size: 22px;
		margin-bottom: 20px;
	}
	ul.service-list-btn2 li a {
		padding: 15px 0 17px;
	}
	.service table {
		width: 800px;
		margin: 0 auto 15px;
	}
	.service table th {
		padding: 12px;
		border: 1px solid #ccc;
		font-size: 18px;
	}
	.service table td {
		padding: 15px;
		border: 1px solid #ccc;
		font-size: 18px;
	}
	.service table td span {
		font-size: 15px;
	}
	.service-price {
	}
	.service h3 {
		font-size: 22px;
		margin-bottom: 10px;
	}
	.service h4 {
		font-size: 20px;
		margin-bottom: 10px;
	}
	.service-sub {
		width: 800px;
		margin: 0 auto 10px;
		font-size: 20px;
	}
	.service-ba {
		width: 600px;
		margin: 0 auto 30px;
	}
	.service-cap {
		font-size: 13px;
		width: 800px;
		margin: 0 auto 15px;
	}
	.service-oth {
		font-size: 28px;
	}

	/*選ばれる理由*/
	#why {
		width: 880px;
		margin: 20px auto;
	}
	#why h2 {
		font-size: 33px;
		margin-bottom: 15px;
	}
	#why h2 span {
		font-size: 48px;
	}
	#why ul {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		width: 100%;
		margin: 0 auto;
	}
	#why ul li {
		width: 28%;
		padding: 25px 20px;
		margin-bottom: 15px;
		position: relative;
	}
	.why-no {
		position: absolute;
		top: 0;
		left: 0;
		display: inline-block;
		padding: 10px;
		font-size: 30px;
	}
	.why-img {
		margin-bottom: 20px;
	}
	#why ul li h3 {
		text-align: center;
		color: #3d5b86;
		font-size: 19px;
		margin-bottom: 11px;
	}
	
	/*お客様の声*/
	#voice {
		padding: 30px 0;
		width: 100%;
	}
	#voice h2 {
		font-size: 33px;
		margin: 0 auto 15px;
	}
	#voice-list {
		width: 800px;
		margin: 0 auto;
	}
	#voice-list ul {
	}
	#voice-list ul li {
		margin-bottom: 15px;
		border-radius: 10px;
		padding: 30px 0;
	}
	#voice-list ul li h3 {
		display: block;
		padding: 12px 0;
		font-size: 28px;
		margin-bottom: 15px;
	}
	.voice-inner {
		width: 85%;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		align-items: center;
		margin: 0 auto 20px;
	}
	.voice-photo {
		width: 55%;
	}
	.voice-txt {
		width: 42%;
	}
	.voice-txt h4 {
		display: inline-block;
		border: 2px solid #3d5b86;
		padding: 4px 8px 5px;
		font-size: 22px;
		margin-bottom: 7px;
	}
	.voice-txt p {
		font-size: 22px;
		margin-bottom: 25px;
	}
	.voice-intro {
		font-size: 22px;
		line-height: 1.5;
	}
	.voice-d {
		width: 85%;
		margin: 0 auto;
	}
	.swiper-container [class^="swiper-button-"]{
		top: 200px;
	}
	
	/*施工までの3ステップ*/
	#steps {
		padding: 30px 0 5px;
	}
	#steps h2 {
		width: 500px;
		font-size: 33px;
		margin: 0 auto 15px;
	}
	ul.steps-flow {
		width: 800px;
		margin: 0 auto;
	}
	ul.steps-flow li {
		border-radius: 15px;
		padding: 10px 30px;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 22px;
	}
	.steps-no {
		width: 10%;
		font-size: 20px;
	}
	.steps-ill {
		width: 15%;
	}
	.steps-txt {
		width: 66%;
	}
	.steps-txt h3 {
		font-size: 28px;
		margin-bottom: 15px;
	}
	.steps-arr {
		position: relative;
	}
	.steps-arr:after {
		content: '';
		width: 22px;
		height: 22px;
		background: #fff;
		position: absolute;
		bottom: -2px;
		left: 50%;
		rotate: -45deg;
		transform: translateX(-50%);
	}
	
	/*料金表*/
	#price {
		padding: 30px 0;
	}
	#price h2 {
		margin-bottom: 30px;
		font-size: 28px;
	}
	ul.price-list {
		width: 1000px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		gap: 4%;
	}
	ul.price-list li {
		width: 48%;
		margin-bottom: 20px;
	}
	
	/*faq*/
	#faq {
		padding: 35px 0;
	}
	#faq h2 {
		margin-bottom: 25px;
		font-size: 30px;
	}
	ul.faq-list {
		width: 800px;
		margin: 0 auto 25px;
	}
	ul.faq-list li {
		width: 32%;
		font-size: 19px;
	}
	ul.faq-list li a {
		border: 2px solid #fff;
		border-radius: 3px;
		padding: 10px 0;
	}
	ul.faq-list li a:hover {
		
	}
	#faq h4 {
		margin-bottom: 10px;
		font-size: 22px;
		padding: 7px 0 7px;
	}


/*footer*/
footer {
	padding-top: 25px;
}
.footlogo {
	width: 300px;
}
.footlogo img {
	width: 300px;
	}
	.comname {
		font-size: 20px;
		margin-bottom: 5px;
	}
	.comttl {
		font-size: 20px;
		margin-bottom: 5px;
	}
	.cominfo {
		width: 980px;
		font-size: 16px;
		margin-top: 15px;
	}
	.footbnr {
		width: 600px;
		margin: 0 auto 40px;
	}
	.footbnr a {
		transition: all .5s ease;
	}
	.footbnr a:hover {
		opacity: 0.75;
	}
	#company {
		width: 900px;
		margin: 30px auto;
	}
	#company h2 {
		font-size: 20px;
		border-radius: 50px;
		padding: 12px 0;
		margin-bottom: 20px;
	}
	#company h3 {
		font-size: 18px;
		margin-bottom: 25px;
	}
	#company table {
		width: 900px;
		margin-bottom: 30px;
	}
	#company table th {
		font-size: 16px;
		padding: 16px;
		border-bottom: 1px solid #fff;
	}
	#company table td {
		font-size: 15px;
		padding: 16px;
		border-bottom: 1px solid #666;
	}
	.b-logo img {
		width: 110px;
	}
	.c-logo img {
		width: 150px;
	}
	
	address {
		font-size: 12px;
	font-style: normal;
	text-align: center;
	margin-top: 30px;
	padding-bottom: 150px;
}
#seikyu {
	width: 900px;
	margin-left: auto;
	margin-right: auto;
}
#foot-fix {
	display: none;
}
#foot-fix-pc {
	display: block;
		}
.ffp-chat a {
		width: 500px;
		margin: 0 auto 3px;
		display: block;
		padding: 5px 100px 5px 100px;
		background-image: linear-gradient(90deg, rgba(141, 196, 227, 1), rgba(169, 130, 197, 1));
	}
	#foot-fix-pc ul {
		width: 1000px;
		margin: 0 auto 15px;
		list-style-type: none;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	#foot-fix-pc ul li {
		width: 33%;
		text-align: center;
		font-size: 20px;
		font-weight: bold;
	}
	#foot-fix-pc ul li a {
		display: block;
		padding: 15px 0;
		border-radius: 10px;
		color: #fff;
		text-decoration: none;
		transition: all 0.5s ease;
	}
	#foot-fix-pc ul li a:hover {
		translate: 0 5px;
		box-shadow: none;
	}
	.ffp-phone a {
		background: #de7736;
		box-shadow: 0px 5px 0px 0px rgba(193, 91, 27, 1);
	}
	.ffp-form a {
		background: #c02e28;
		box-shadow: 0px 5px 0px 0px rgba(157, 19, 13, 1);
	}
	.ffp-line a {
		background: #24a462;
		box-shadow: 0px 5px 0px 0px rgba(15, 130, 71, 1);
	}
	

#html-alert {
background: #4fb1ca;
}
#alert {
width: 600px;
margin: 30px auto;
}
.alert-copy {
margin-bottom: 20px;
}
.alert-price {
margin-bottom: 20px;
}
.btn-alert-tel {
width: 500px;
margin: 20px auto;
}
.btn-alert-mail {
width: 450px;
margin: 0 auto;
}

/*別ページ*/
#contents {
	width: 1000px;
	margin: 0 auto;
	padding: 60px 0;
}
#contents h2 {
	padding: 12px 0;
	margin-bottom: 20px;
	font-size: 20px;
}
#contents table {
	font-size: 14px;
}
#contents table th {
	padding: 10px;
	background: #333;
	color: #fff;
	border: 1px solid #fff;
}
#contents table td {
	padding: 10px;
	border: 1px solid #cecece;
	}
	
	/*フォーム*/
	#contents-form {
		width: 800px;
		min-height: 500px;
		margin: 0 auto;
		padding: 50px 0;
	}
	#contents-form h3 {
		font-size: 20px;
		margin-bottom: 15px;
	}
	#contents-form h4 {
		font-size: 18px;
		margin-bottom: 8px;
	}
	#contents-form p {
		font-size: 17px;
		margin-bottom: 30px;
	}
	.formTable {
		border-top: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
		padding-top: 50px;
		margin-bottom: 50px;
	}
	.formTable dt {
		font-size: 18px;
		margin-bottom: 10px;
	}
	.formTable dd {
		font-size: 18px;
		margin-bottom: 35px;
	}
	#toiawase-detail {
		width: 95%;
	}
}