@charset "UTF-8";
/* CSS Document */

html {
    color: #000;
    font-size: 1em;
    line-height: 1.5;
}

body {
    line-height: 1;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
	background-color:#fff;
	font-family: "Noto Sans JP", sans-serif;
	font-weight:500;
	margin: 0;
    padding: 0;
    border: 0;
}

li{
	list-style: none;
}


header, footer, body{
    display: block;
}

@media(min-width:768px){
	.sp{
		display:none !important;
}}

@media(max-width:767px){
	.pc{
		display:none !important;
}}

.header{
	width: 100%;
	line-height: 60px;
	background: #fff;
	display: flex;
	vertical-align: middle;
		position:fixed;
	z-index: 999;
	margin:0px;
	padding:0px;
	align-items: center;
}


/* ロゴ */
header .logo {
	font-size: 18px;
	color: #fff;
	letter-spacing: .2em;
}

header .logo img{
		padding: 10px 50px;
		height:55px;
	width:auto;
	margin-top:10px;
	margin-bottom:-10px;
}

/*ヘッダー文字*/
.header_txt{
		position: absolute;
	margin:0 auto;
	line-height: 1.4rem;
	right:42%;
	color:#0071bc;
	font-weight: 700;
}

/* ヘッダーボタン */
header .btn {
	position: absolute;
	top: 40%;
	right: 0px;
	transform: translateY(-50%);
}

header .btn a{
	font-family: "Noto Sans JP", sans-serif;
	font-weight:600;
  width: 100px;
  padding: 10px 30px 12px 30px;
  font-size: 2vw;
  position: relative;
  text-align: center;
  text-decoration: none;
  margin: 0px;
  color: #fff;
  background: #ef5f26;
  line-height: 1;
  transition: all .2s;
}
.btn:hover{
  opacity: 0.6;
}

/* ヘッダーレスポンシブ */
@media(max-width:767px){
	body {
    padding-bottom: 60px; /* ボタンの高さ分だけ下に余白を作る */
  }
	.header{
		align-items: center;
		padding:15px 0px;
		line-height: 0px;
	}
	header .logo img{
		height:30px;
		margin-top:0px;
		margin-bottom:0px;
		padding:0px 0px 0px 20px;
	}
	
	header .logo {
	padding: 0px;
	}
	header .btn {
    position: fixed;   /* 画面に対して固定 */
    bottom: 0;         /* 画面の一番下 */
    left: 0;
    right: 0;
    top: auto;         /* PC用の top: 40% を打ち消す */
    transform: none;   /* PC用の transform を打ち消す */
    width: 100%;
    z-index: 9999;     /* 他の要素より前面に表示 */
  }

  header .btn a {
    display: block;    /* 横幅一杯に広げる */
    width: 100%;
    padding: 20px 15px;
    font-size: 15px;
    box-sizing: border-box; /* パディングを含めたサイズ指定 */
  }
	.header_txt{
		font-size:0.9rem;
	right:5%;
		line-height: 1.2rem;
}
}

.underline{
	background: linear-gradient(transparent 70% , #f2e63f 70%);
}

.underline_wh{
	background: linear-gradient(transparent 70% , #fff 70%);
}

.kome{
	font-size: 0.9rem;
	top:5%;
	line-height: 1.5rem;
}

/* ファーストビュー */
.firstview{
	background-color:#0071bc;
	padding-bottom:30px;
}

.firstview img{
	width:100%;
	margin-top:70px;
}


/* ホワイト */
.sv01{
	margin:0 auto !important;
	text-align: center;
	padding: 0px !important;
	align-items: center;
	justify-content: center;
	background:#fff;
	width:60%;
}

.sv01 img{
	margin:0 auto !important;
	min-width:10%;
	max-width:60%;
	margin-right:5px;
	text-align: center;
	display: block;
}

.sv01_topimg{
	 width:45%;
}

.sv01_txt{
	font-size:2.4vw;
	font-weight: 600;
	color:#0071bc;
	line-height: 2.8rem;
	margin:0px;
	padding:0px !important;
}

.txt{
	font-size:1.3vw !important;
	line-height: 1.5em;
	text-align: center;
	margin:0px;
	letter-spacing: 0.05rem;
}

.txt_small{
	font-size:1.1vw;
	line-height: 1.5rem;
}

.txt_yellow{
	color:#ffe600;
}


.sv_txt_big{
	font-size:3.8vw;
	font-weight: 600;
}

/* セカンドビューレスポンシブ */
@media(max-width:767px){
	.sv01{
		width:90%;
	}
	.sv01_txt{
	font-size:1.3rem;
		line-height: 2rem;
	}
	.sv01_topimg{
	 width:80%;
}
	.txt{
	font-size:0.9rem !important;
	}
	.sv01 img{
	min-width:20%;
	max-width:90%;
	}
	.kome{
	font-size: 0.7rem;
	line-height: 1rem;
}
}

/* イエロー */
.sv02{
	margin:0 auto !important;
	background-color: #ffe600;
	text-align: center;
	padding: 0px !important;
	align-items:center;
	justify-content:center;
	display: flex;
}

.sv02_cts{
	width:60%;
	text-align:center;
	display: flex;
	align-items:center;
	justify-content:center;
}

.sv02 img{
	width:15%;
	display: flex;
	text-align:center;
}


.sv02_cc{
	  width: 120px;
}

.sv02 p, .sv02 img{
	margin-right:15px;
}

/* セカンドビュー2レスポンシブ */
@media(max-width:767px){
	.sv02_cts{
	width:95%;
	margin:10px 0px;
	}
	.sv02_cts .sv01_txt{
	line-height: 1.8rem;
	font-weight: 700;
	}
	.sv02 img{
	width:60%;
	margin-right:0px;
	}
	.sv02 p{
	margin-right:0px;
}
	.sv02_cts .sp{
		width:30%;
		margin:0px;
	}
	.sv02_cts .sp img{
		margin:0 auto;
		text-align: center;
	}
}


/* 黄緑 */
.sv03{
	background:#fff5b0;
	padding:10px 0;
}

.sv03 img{
	width:40%;
	margin: 0 5px 10px 10px;
}

.sv03_wh{
	color:#fff;
	font-size: 1.5vw;
	font-weight:600;
	text-align: center;
}

/* セカンドビュー3レスポンシブ */
@media(max-width:767px){
	.sv03 .txt{
		
	}
}


/*サードビュー*/
.tv_01{
	background-color: #c2e5f9;
	display: block;
	padding:40px 0px;
	margin:0 auto;
	text-align: center;
}
.tv_01 img{
	width:50%;
	display: block;
	margin:0 auto;
	text-align: center;
}
.tv_01_cts{
	display: flex;
		width:50%;
		margin: 0 auto;
}
.tv_01_cts img{
	width:100%;
}
.br_square{
	font-size:1.1rem;
	background-color: #534741;
	color:#fff;
	padding:10px 10px;
	letter-spacing: 0.05rem;
	margin:5px 0px;
}
.shohin_hidari{
	width:50%;
	margin-right: auto;
}
.shohin_migi{
	width:50%;
	margin-left:20px;
}

/* サードビュー1レスポンシブ */
@media(max-width:767px){
	.tv_01{
	padding:20px 0px;
	}

	.tv_01_cts{
	margin:0 auto;
	display: block;
	width:100%;
}
	.tv_01_cts img{
	width:100%;
}
	.br_square{
	font-size:0.9rem;
	background-color: #534741;
	color:#fff;
	padding:8px 8px;
	letter-spacing: 0.05rem;
	margin:5px 0px;
}
	.shohin_hidari{
		display:flex;
		width:80%;
		margin:0 auto;
		align-items: center;
	}
	.tv_01_cts .shohin_hidari img{
		height: 10% !important;
		max-width:90% !important;
		overflow: hidden;
	}
	.shohin_migi{
		width:80%;
	display:block;
	margin:0 auto;
}
	.tv_01 img{
	width:90%;
}
}


.tv02{
	max-width:50%;
	text-align: center;
	margin:0 auto;
	background-color:#fff;
	border: solid 2px #d24889;
}

.tv02 p{
	margin:10px 30px 20px 30px;
}

.tv02_txt_button{
width:60%;
	margin:0 auto;
	margin-top:-20px;
  padding: 10px 50px 12px 50px;
	justify-content: center;
	align-items: center;
  font-size: 1.5vw;
  position: relative;
  text-align: center !important;
  text-decoration: none;
  color: #d24889;
  background: #fff5b0;
  line-height: 1;
  border-radius: 50px;
  transition: all .2s;
	border:solid 2px #d24889;
}

.txt_pink{
	color:#d24889;
}

/* サードビュー2レスポンシブ */
@media(max-width:767px){
	.tv02{
	max-width:90%;
	}
	.tv02_txt_button{
		width:70%;
  padding: 10px 20px 12px 20px;
  font-size: 1rem;
		font-weight: 600;
	}
	.tv02 p{
	margin:10px 20px 15px 20px;
}
}

/*CTA*/
.cta{
	margin:0px auto;
	width:40%;
	background-color: #ef5f26;
	border-radius: 15px;
	padding:20px 40px;
	color:#fff;
	font-size:1.8rem;
}

.cta a{
	color:#fff;
	text-decoration: none;
}

.cta:hover{
  opacity: 0.6;
}

/* CTAレスポンシブ */
@media(max-width:767px){
	.cta{
	width:85%;
	border-radius: 15px;
	padding:10px 10px;
	font-size:1.1rem;
		line-height: 1.5rem;
}
}

/*ピンク背景*/
.nocria{
	
}
.nocria_title{
	background-color: #d24889;
	color:#fff;
	display: flex;
	margin:0 auto;
	text-align: center;
	align-items: center;
	justify-content: center;
	font-size:1.5rem;
	line-height: 1.8rem;
}
.nocria_title img{
	width:20%;
	margin-left:20px;
}
.nocria_cts{
	width:50% !important;
}
.nocria_midashi{
	font-size:1.5rem;
	margin: 0 auto;
	color:#d24889;
	text-align: center;
	font-weight: 600;
}
.tokutyou_A{
	display:flex;
	width:60%;
	margin: auto;
}
.tokutyou_A1{
	border:solid 2px #d24889;
	padding:15px;
	border-radius: 20px;
	margin:5px;
	width:33%;
}
.tokutyou_A img{
	width:100%;
	margin-bottom:5px;
}

/* CTAレスポンシブ */
@media(max-width:767px){
	.nocria_title{
	font-size:0.8rem;
	line-height: 1.1rem;
}
	.nocria_title img{
	width:40%;
	margin-left:10px;
}
	.nocria_midashi{
	font-size:1.1rem;
}
	.tokutyou_A{
	display:block;
		width:100%;
		margin:0 auto;
	}
	.tokutyou_A1{
		display:flex;
	padding:8px;
	border-radius: 10px;
	width:90%;
		margin:0 auto;
		margin-bottom:10px;
}
	.tokutyou_A2{
		display:block;
		width:55%;
		justify-content: center;
		align-items: center;
	}
	.tokutyou_A img{
	height:100%;
		width:50%;
		margin-right:5px;
		overflow: hidden;
}
	.tokutyou_A2 .txt{
		text-align: left;
		font-size:0.7rem;
	}
	.tokutyou_A2 .txt_small{
		font-size:0.7rem;
		line-height: 1.2rem;
		margin-bottom:0px;
	}
}

/*その他の特徴*/
.tokutyou_other{
	display:flex;
	margin:0 auto;
	width:50%;
}
.other_cts{
	text-align: center;
	font-size:1.2rem;
	margin:0px 20px;
}
.other_cts img{
	width:100%;
}

/* その他の特徴レスポンシブ */
@media(max-width:767px){
	.tokutyou_other{
	width:80%;
}
	.other_cts{
	font-size:0.7rem;
	margin:0px 5px;
}
	.other_cts p{
		margin:5px 0px;
	}
}

/*工事内容*/
.back_blue{
	background-color: #def0f9;
}
.koujinaiyou{
	width:40%;
	margin:0 auto;
}
.kounyumae{
	background-color: #fff;
	border:solid 2px #0071bc;
	padding: 10px 0px;
	width:100%;
	text-align: center;
	color:#0071bc;
	font-size:1.4rem;
	margin:0 auto;
	
}
.koujinaiyou_cts{
	display:flex;
	font-size:1.4rem;
	color:#0071bc;
	align-items: center;
	justify-content: center;
	font-weight: 600;
	width:100%;
	margin:0 auto;
}
.koujinaiyou_cts_yl{
	background-color: #fff5b0;
	border:solid 2px #0071bc;
	padding: 15px 30px;
	width:auto;
	text-align: center;
}

.koujinaiyou_cts_yl p{

}
.koujinaiyou img{
	width:100%;
}
.plus{
	margin:0px 10px;
}

.back_white{
	background:#fff;
	width:100%;
	margin:0 auto;
}

.back_white p{
		padding: 15px 30px;
}

/* 工事内容レスポンシブ */
@media(max-width:767px){
	.koujinaiyou{
	width:90%;
}
	.kounyumae{
	padding: 8px 0px;
	width:100%;
	font-size:0.9rem;
		border:solid 0px ;
		margin-bottom:10px;
}
	.koujinaiyou_cts{
	display:block;
		font-size:1rem;
		text-align: center;
	}
	.koujinaiyou_cts_yl{
	padding: 10px 30px;
		margin:5px 0px;
	}
}

/* 設置可能地域 */
.area{
	width:60%;
		margin:0 auto;
	display:block;
	text-align:center !important;
	margin-top:20px;
}

.area-title{
	margin-top:20px !important;
		margin-bottom:30px !important;
}

.area-title p{
	  font-size: 1.5rem !important;
	font-family: "Noto Sans JP", sans-serif;
	font-weight:600;
  width: 40%;
	height:auto;
  padding: 10px 30px 12px 30px;
  position: relative;
  text-align: center !important;
  text-decoration: none;
  margin: 0 auto !important;
  color: #0071bc !important;
  background: #fff;
  line-height: 1;
  border-radius: 50px;
	border: solid 2px #0071bc;
  transition: all .2s;
	align-items: center;
	justify-content: center;
}

.area p{
	font-size:1.3rem;
	line-height: 1.5em;
}

.area img{
	margin-top:20px;
	width:50%;
}

/* 設置可能地域レスポンシブ */
@media(max-width:767px){
	.area{
	width:100%;
		margin:0 auto;
		justify-content: center;
	}
	.area .area-title p{
		width: 70%;
	  font-size: 1rem !important;
		padding: 10px;
	}
	.area img{
	width:70%;
}
	.area p{
	font-size:13px;
}
}

/* サーラのリフォームにお任せ */
.title3{
	padding-bottom:50px;
}

.title3_ctt {
	width:50% !important;
	margin:0 auto;
}

.title3_ctt p{
	text-align:center;
	font-size:1.2vw !important;
	line-height: 1.5em;
}

.title3_ctt ul{
	display:flex;
}

.title3_ctt li{
	list-style: none;
	width:100%;
	margin: 0 0 10px 10px;
}

.title3_ctt .title_kaburi li img{
	height:120px;
	width:auto;
		margin-bottom:0px !important;
}

.title3_ctt img{
	width:100%;
}

/* サーラのリフォームにお任せレスポンシブ */
@media(max-width:767px){
	.title3{
		background-size:cover;
		padding-bottom:10px;
	}
	.title3_ctt {
	width:90% !important;
}
	.title3_ctt img{
	width:100%;
}
	.title3_ctt .title_kaburi li img{
	height:60px;
	width:auto !important;
		margin:0 auto !important;
		padding:0;
}
	.title_kaburi{
		padding:0px;
		justify-content: center;
	}
	.title3_ctt p{
	font-size:0.8rem !important;
}
	.title3_ctt li{
	margin: 0 0 5px 5px;
	}
	.jisseki{
		display: block !important;
		margin:0 auto !important;
		padding:0px;
		width:100%;
		justify-content: center;
		align-items: center;
	}
	.jisseki img{
		width:80%;
		margin-bottom:10px;
	}
	.jisseki li{
		margin:0 auto;
		text-align: center;
	}
}

/* お申し込みの流れ */
.flow{
	width:60%;
		margin:0 auto;
	text-align:center !important;
	margin-top:20px;
}
.flow_2{
	display: flex;
	width:60%;
	margin:0 auto;
	text-align: center;
}

.flow-title{
	margin-top:20px !important;
		margin-bottom:30px !important;
}

.flow-title p{
	  font-size: 1.5rem !important;
	font-family: "Noto Sans JP", sans-serif;
	font-weight:600;
  width: 40%;
	height:auto;
  padding: 15px 30px 17px 30px;
  position: relative;
  text-align: center !important;
  text-decoration: none;
  margin: 0 auto !important;
  color: #0071bc !important;
  background: #fff;
  line-height: 1;
  border-radius: 50px;
	border: solid 2px #0071bc;
  transition: all .2s;
	align-items: center;
	justify-content: center;
}

.flow_cts{
	margin:0px 30px;
	width:25%;
}
.flow_2 img{
	width:100%;
}
.flow_A{
	font-size:1.3rem;
	color:#0071bc;
}
.flow_B{
	font-size:1rem;
	line-height: 1.5rem;
}

/* 設置可能地域レスポンシブ */
@media(max-width:767px){
	.flow{
	width:100%;
		margin:0 auto;
		justify-content: center;
	}
	.flow-title p{
		width: 70%;
	  font-size: 1rem !important;
		padding: 10px;
	}
	.flow_2{
	width:90%;
		margin:0 auto;
}
	.flow_cts{
	margin:0px 10px;
		text-align:center;
	width:50%;
}
	.flow_A{
	font-size:1rem;
		margin:10px 0px;
}
	.flow_B{
	font-size:0.8rem;
	line-height: 1.2rem;
		margin:10px 0px;
}
	.flow_2 img{
	width:80%;
}
}

/*お申し込みはこちら*/
.entry{
	margin:0 auto;
	text-align:center;
}

.footer{
	background: #fff;
	margin:0 auto;
	text-align:center;
	padding: 50px 0;
}

.footer img{
	width:20%;
	margin:0 auto;
	text-align:center;
}

@media(max-width:767px){
	.footer img{
	width:50%;
	}}

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

form.css

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

.formArea{
    width:50%;
	margin:0 auto;
	padding: 50px 0;
}

.holidayinfo{
	color:#A70D10;
	text-align: center;
	line-height: 1.5rem;
}

@media screen and (max-width: 780px) {
	.formArea{
    width:90%;
	}
	.holidayinfo{
	color:#A70D10;
	text-align: center;
	line-height: 1.5rem;
}
}
.formConfirm,
.formFinish{
    margin-top: 100px;
}
.formArea__tit{
    background-color: #f4901e;
    margin-bottom: 60px;
}
.formArea__txt{
    color: #353535;
    font-weight: bold;
    line-height: 1.5;
    text-align: center;
}
.formArea__txt span{
    color: #f00;
    font-weight: bold;
}
.formArea__txt .tellink{
    font-size: 2rem;
}
.formArea__txt .formTxtLink{
    background: #f4901e;
    color: #fff;
    font-weight: bold;
    font-size: 1.2rem;
    padding: 15px 25px;
    border-radius: 10px;
}

.contactTable{
    width: 100%;
}
.contactTable th{
    width: 90%;
    display: block;
    text-align: right;
    vertical-align: middle;
    padding-bottom: 20px;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.4;
}
@media screen and (max-width: 780px) {
    .contactTable th{
        text-align: left;
        width: 100%;
        padding-bottom: 10px;
		font-size:14px;
    }
}
.contactTable th .require{
    font-weight: bold;
    color: #ef5f26;
    font-size: 14px;
}
.contactTable td{
    width: 80%;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.contactTable td .contactTable__checkWrap{
    margin-bottom: 10px;
    display: inline-block;
    font-size: 14px;
}
.contactTable td .contactTable__checkWrap input{
    margin-right: 10px;
}
.contactTable td .contactTable__checkTxt{
    font-size: 12px;
}
.contactTable td .contactTable__select{
    font-size: 14px;
    border: 1px solid #353535;
    padding: 12px 8px;
}
.contactTable td .addressmb{
    margin-bottom: 8px;
}
.contactTable td input[type="checkbox"]{

}
.contactTable td input[type="text"]{
    width: 100%;
    border: 1px solid #353535;
    font-size: 15px;
    padding: 12px 8px;
    box-sizing: border-box;
}
.contactTable td input[type="text"].info__inputText--middle{
    width: 50%;
}
.contactTable td textarea{
    width: 100%;
    border: 1px solid #353535;
    padding: 12px 8px;
    font-size: 15px;
    box-sizing: border-box;
}

@media screen and (max-width: 780px) {
    .formConfirm,
    .formFinish{
        margin-top: 60px;
    }

    .contactTable td{
        display: block;
        width: 100%;
		padding-bottom: 10px;
    margin-bottom: 10px;
    }
    .contactTable td input[type="text"].info__inputText--middle{
        width: 100%;
    }
	.contactTable td input[type="text"]{
    font-size: 15px;
	}
}


.txtContact01{
    margin: 40px auto;
    background: #E3E3E3;
    padding: 10px 30px;
    line-height: 1.5;
}
.txtContact01 p{
    font-weight: bold;
    margin-bottom: 12px;
}
.txtContact01 ul li{
    font-size: 14px;
}


.txtContact02 .agree{
    text-align: center;
    margin-bottom: 30px;
}

.txtContact01 ul{
		padding:0px;
}

@media screen and (max-width: 780px) {
	.txtContact01{
font-size:0.9rem;
}
	.txtContact01 ul li{
    font-size: 13px;
}
}
/*.txtContact02{

}
.txtContact02 .checkOk{
    text-align: center;
    margin-bottom: 40px;
}
.txtContact02 .checkOk input[type=checkbox]{
    opacity: 0;
    position: absolute;
}
.txtContact02 .checkOk label{
    padding-left: 40px;
    margin-left: 65px;
    position: relative;
    font-size: 16px;
    margin: 0 auto;
}
.txtContact02 .checkOk label:before{
    content: "";
    width: 20px;
    height: 20px;
    border: 1px solid #000;
    position: absolute;
    left: 0;
    top: -4px;
}
.txtContact02 .checkOk label:checked+label:after {
    content: "";
    width: 16px;
    height: 10px;
    position: absolute;
    background-image: url("") no-repeat center;
    background-size: 16px 10px;
    z-index: 0;
    top: 3px;
    left: 4px;
}*/


.btn-action{

}
.btn-action .c-btn01{
    background-color: #ef5f26;
    display: block;
    color: #fff;
    font-size: 24px;
    padding: 21.5px 0;
    text-align: center;
    border: 0 none;
    width: 400px;
    margin: 0 auto 40px;
    cursor: pointer;
    border-radius: 10px;
}
.btn-action .c-btn01:hover{

}
@media screen and (max-width: 780px) {
    .btn-action .c-btn01{
        width: 100%;
    }
	.btn-action .c-btn01{
    font-size: 18px;
		padding: 15px 0;
	}
}

.txtContact03{
    font-size: 16px;
    text-align: left;
    max-width: 820px;
    margin: 0 auto;
    line-height: 1.5;
    padding-left:1em;
    text-indent:-1em;  
}
.txtContact03 #mailContact{
    color: #f4901e; 
}


.formConfirm__cont{
    margin: 30px auto 0;
}

@media screen and (max-width: 780px) {
	.txtContact03{
    font-size: 12px;
	}
}
/* ==================== form__submit・form__back ==================== */

.form__submit{
    text-align: center;
}
.form__submit .form__submitBtn{
    background-color: #f4901e;
    display: block;
    color: #fff;
    font-size: 24px;
    padding: 21.5px 0;
    text-align: center;
    border: 0 none;
    width: 400px;
    cursor: pointer;
    border-radius: 10px;
    margin: 0 auto;
}
.form__submit .form__submitBtn:hover{

} 
            
.form__back{

}
.form__back .form__backBtn{
    background-color: #9099A8;
    display: block;
    color: #fff;
    font-size: 24px;
    padding: 21.5px 0;
    text-align: center;
    border: 0 none;
    width: 400px;
    cursor: pointer;
    border-radius: 10px;
    margin: 20px auto 0;
}
.form__back .form__backBtn:hover{

}
@media screen and (max-width: 780px) {
    .form__submit .form__submitBtn,
    .form__back .form__backBtn{
        width: 100%;
    }
	.input-area p{
		font-size:14px;
		margin-right:20px;
	}
}




/* ==================== formError ==================== */

.formError{
    color: #b52020;
    text-align: center;
    margin-bottom: 30px;
}
.formError__tit{

}
.formError__items{
    margin-top: 12px;
}
.formError__items .formError__item{

}







