@charset "UTF-8";
@media screen and (min-width: 768px),print {

.full-width { width: 100vw; position: relative; left: 50%;  right: 50%;  margin-left: -50vw;  margin-right: -50vw;}
#contentsmain{ background: url('../images/form/con01-bg01.png')no-repeat center top; min-height: 680px; background-size: cover; margin-bottom: 100px; }
#contentsmain .inner-Box{ width: 1100px; margin: 0 auto; padding-top: 170px; position: relative;}
#contentsmain .inner-Box::before{ content: url(../images/form/con01-icon02.png); position: absolute; bottom: -10px; right: 60px; }
#contentsmain .inner-Box figure{ position: absolute; top: 360px; right: 0; }
#contentsmain .inner-Box h2{ line-height: 1; font-size: 54px; font-weight: 700; letter-spacing: 2.7px; margin-bottom: 30px; text-align: center; position:relative; }
#contentsmain .inner-Box h2.catalog-ttl::before{ content: url(../images/form/con01-icon01.png); position: absolute; top: -80px; left: 50%; transform: translateX(-50%); -ms-transform: translateX(-50%);}
#contentsmain .inner-Box .text{ line-height: 1; font-size: 20px; font-weight: 400; text-align: center; margin-bottom: 36px; }
#contentsmain .inner-Box .text2{ line-height: 1.6; font-size: 20px; font-weight: 400; text-align: center; margin-bottom: 70px; }
#contentsmain .inner-Box .txt{ line-height: 1; font-size: 22px; font-weight: 500; text-align: center; border: 1px solid #000; padding: 20px 30px; display: block; width: 530px; margin: 0 auto 100px;}
#contentsmain .inner-Box .inbox-list{ min-height: 420px; position: relative; padding-right: 410px; }
#contentsmain .inner-Box .inbox-list figure{ position: absolute; right: 0; top: 0; }
#contentsmain .inner-Box .inbox-list li{ line-height: 1.2; font-size: 22px; font-weight: 700; position: relative; padding-left: 44px; padding-bottom: 22px; margin-bottom: 30px; background: url('../images/form/main-line.png')no-repeat bottom left;  }
#contentsmain .inner-Box .inbox-list li span{ font-size: 27px; font-weight: 700; letter-spacing: 1.35px; color: #1e9a4c; }
#contentsmain .inner-Box .inbox-list li::before{ content: url('../images/form/main-icon.png'); position: absolute; left: 0px; top: 0px;}
#contentsmain .inner-Box .nbox-list{ font-size: 28px; font-weight: 700; line-height: 42px; padding-top: 0px; letter-spacing: 1.1px; min-height: 150px; position: relative; text-align: center;}
#contentsmain .inner-Box .nbox-list figure{ position: absolute; top: -10px; left: 50px; }
#contentsmain .inner-Box .nbox-list .sub-txt{ font-size: 16px; font-weight: 400; line-height: 30px; letter-spacing: 0.8px; text-align: center; }
#contentsmain .inner-Box .nbox-list .mb1{ margin-bottom: 30px; }


#contents-line{ margin-bottom: 100px; }
#contents-line h2{ font-size: 28px; font-weight: 700; letter-spacing: 1.4px; text-align: center; margin-bottom: -20px; }
#contents-line .text{ text-align: center; }

#contents-line .inner-Box div{ width: 900px; margin: 0 auto; height: 175px; position: relative;}
#contents-line .inner-Box div .btn{ position: absolute; top: 40px; right: 50px; }

#contents-line .line{ text-align: center; }
#contents-line .telttl{ padding: 0 27px; position: absolute; font-size: 23px; top: 63px; left: 51px; font-weight: 700; letter-spacing: 1px; border-bottom: #111 solid 1px;}
#contents-line .telttl img{ position: relative; top: -8px; left: -10px; }
/* 移設で直した（ご判断 J7）：右へずらした分だけ幅を縮め、横のはみ出しを無くす（現行は幅のまま右へ出ていた） */
#contents-line .tel{ position: relative; top: 60px; left: 440px; line-height: 1; font-size: 55px; letter-spacing: 4.6px; font-weight: 400; width: calc(100% - 440px); }
#contents-line .address{ font-size: 19px; position: relative; top: 68px; left: 0px; text-align: center; letter-spacing: 1.6px;}
.sub-title-mail{ background-color: #000000; font-size: 28px; font-weight: 700; text-align: center; color: #ffffff; margin-bottom: 23px; line-height: 1; padding: 35px; }
.form-list{color: #898989;}

.side-fix .list-01{ display: none; }

.form-notice{ font-size: 32px; letter-spacing: 1px; border-bottom: #111 solid 1px; width: 470px; font-weight: 700; margin: 0 auto; text-align: center; padding-top: 120px;}

}


@media screen and (max-width: 767px) {

#contentsmain{ margin: 0 4vw 10vw 4vw; }
#contentsmain .sp-main{ margin-bottom: 5vw; }
#contentsmain .inner-Box .inbox-list{  }
#contentsmain .inner-Box figure{ margin-bottom: 4vw; }
#contentsmain .inner-Box .inbox-list li{ line-height: 1.5; font-size:3.865vw; font-weight: 700; position: relative; padding-left: 10vw; padding-bottom: 4vw; margin-bottom: 5vw; background: url('../images/form/main-line.png')no-repeat bottom left;  }
#contentsmain .inner-Box .inbox-list li span{ font-size:4.2vw; font-weight: 700; letter-spacing: 0vw; color: #1e9a4c; }    
#contentsmain .inner-Box .inbox-list li::before {
position: absolute;top: 0.7vw;left: 0.5vw;content: '';display: inline-block;width: 50px;height: 50px;background-image: url(../images/form/sp-main-icon.png);background-size: 6vw;vertical-align: middle;background-repeat: no-repeat;}
#contentsmain .inner-Box .nbox-list{ font-size:3.865vw; font-weight: 700; line-height: 1.7; padding-top: 4vw; letter-spacing: 1.1px;margin-bottom: 9vw;}
#contentsmain .inner-Box .nbox-list figure{ margin-bottom: 4vw; }
#contentsmain .inner-Box .nbox-list .sub-txt{ font-size: 3.5vw; font-weight: 400; line-height: 1.8; letter-spacing: 0.24vw; text-align: center; }
#contentsmain .inner-Box .nbox-list .mb1{ margin-bottom: 8vw; text-align: center; }
#contentsmain .inner-Box .txt{ line-height: 1; font-size: 6wv; font-weight: 500; text-align: center; border: 1px solid #000; padding: 3vw 0; display: block; width: 100%; margin: 0 auto 5vw;}

#contents-line{ margin: 0 4vw 6vw 4vw; margin-bottom: -2vw; }
#contents-line h2{ font-size:4.348vw;  font-weight: 700; letter-spacing: 1.4px; text-align: center; margin-bottom: 4vw; }
#contents-line .text{ text-align: center;margin-bottom: 5vw;}

#contents-line .inner-Box div{  }
#contents-line .line{ text-align: center; }
#contents-line .telttl{ padding: 2vw 4vw; margin-bottom: 4vw; font-size:4.348vw; font-weight: 700; letter-spacing: 1px; border-bottom: #111 solid 1px; position: relative; text-align: center;}
#contents-line .telttl img{ position: relative; top: -8px; left: -10px; }
#contents-line .tel{ font-size: 10vw; letter-spacing: 4.6px; font-weight: 400; margin-bottom: 4vw; }
#contents-line .address{ font-size:3.382vw; text-align: center; letter-spacing: 1.6px;}

.sub-title-mail{ background-color: #000000; font-size:3.865vw; font-weight: 700; text-align: center; color: #ffffff; margin-bottom: 5vw; line-height: 1; padding: 3vw; }

.form-notice{ font-size: 5.6vw; letter-spacing: 1px; border-bottom: #111 solid 1px; width: 90vw; font-weight: 700; margin: 0 auto; text-align: center; padding-top: 10vw;}
}

/* ---- WordPress 移設（Contact Form 7）：現行の pfwform（label の中に input・<br> で縦並び・エラーは pfwform の表示）と同じ見た目にする ---- */
.wpcf7 form.pfwform .wpcf7-list-item{ margin: 0; }
.wpcf7 form.pfwform .wpcf7-list-item-label::before, .wpcf7 form.pfwform .wpcf7-list-item-label::after{ content: none; }
.wpcf7 form.pfwform [data-name="service"] .wpcf7-list-item, .wpcf7 form.pfwform [data-name="building_type"] .wpcf7-list-item, .wpcf7 form.pfwform [data-name="source"] .wpcf7-list-item, .wpcf7 form.pfwform [data-name="privacy"] .wpcf7-list-item{ display: block; }
.wpcf7 form.pfwform .wpcf7-not-valid-tip, .wpcf7 form.pfwform .wpcf7-response-output, .wpcf7 .screen-reader-response{ display: none; }