@charset "utf-8";
/* CSS Document */
/*★★★★★★★★テンプレート[始]★★★★★★★★*/

/*===============================================
	reset
===============================================*/
*{margin:0; padding:0; color:#000;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
} 
h1,h2,h3,h4,h5,h6,p,address,
ul,ol,li,dl,dt,dd,
table,caption,th,td,img,form{margin:0; padding:0; border:none; font-style:normal; font-weight:normal; font-size:100%; text-align:left;}
textarea{font-size:100%;}
img{vertical-align:bottom;}
li{list-style:none;}
/*===============================================
	a,text
===============================================*/
a:hover{text-decoration:underline;}
a{text-decoration:none; color:#1800ff;}
/*=============================================== 
	base
===============================================*/
html,body{height:100%;}
/*===============================================
	font
===============================================*/
body{font-family: 'Noto Sans JP', sans-serif;}
input,textarea,select{font-family: 'Noto Sans JP', sans-serif; font-size:12px;}
/* for IE6 */
* html body{font-family: 'Noto Sans JP', sans-serif;}
* html input, * html textarea{font-family: 'Noto Sans JP', sans-serif;}
h1,h2,h3,h4{font-family: 'Noto Sans JP', sans-serif; font-weight: bold; }
/*===============================================
	align
===============================================*/
.center{text-align:center !important; margin: 0 auto !important;}
.textleft{text-align:left !important;}
.textright{text-align:right !important;}

/*===============================================
	他span
===============================================*/
.underL{text-decoration:underline !important;}
.displayN{display:none !important;}
.bold{font-weight:bold !important;}

/*===============================================
	cFix
===============================================*/
/*Opera Fix*/
body:before{content:""; height:100%; float:left; width:0; margin-top:-32767px;}
/*cFix*/
.cFix:after {content:"."; display:block; height:0; clear:both; visibility:hidden;}
* html .cFix {height:1%;}
.cFix {display:block;}

/*===============================================
	共通部分
===============================================*/
#wrap{width: 100%;}
/* img mouse hover */
a:hover img {opacity: 0.7;filter: alpha(opacity=70);-ms-filter: "alpha(opacity=70)";}
.sp{display:none;}
.pc{display: inline;}
p{line-height: 2rem;}

.under_red{text-decoration: underline; text-decoration-color: red; text-decoration-style: double; }
/*===============================================
	個別
===============================================*/

/*ヘッダー*/
header{width: 1000px; margin:0 auto;}
.head__logo{float: left; padding-top: 15px; width: 243px;}
.head__logo img{width: 100%;}
.head__navi{float: right;}
.head__navi li{ float: left; font-size: 0.9rem; margin-left: 5px; padding-top: 20px;}
.head__navi li a{ color: #000; }
.head__navi li img{ height: 100%; }
.head__navi li:nth-child(1){margin-top: 5px;}
header .head__navi__sp{display: none;}
header .head__navi__sp img{display: none;}


#main{text-align: center;}
#main .main_tx{text-align: center; width: 100%; margin: 0 auto; display: block; position: static;}
#main .main_tx img.pc{ display: block; width: 100%; height: auto; margin: 0 auto; position: static;}
#main .main_tx img.sp{ display: none;}
#main p{text-align: center; color: #fff; font-weight: bold; padding: 5px 0; background: #58B13B; font-size: 1.2rem; letter-spacing: 2px;}


.ctaWrap{width: 100%; background: url(../img/cta_bk.png) repeat-x left top; margin: 0 auto; padding: 20px 0; }
.cta{background: #fff; border-radius: 20px; margin: 0 auto; width: 1000px; height: 460px; position: relative;}
.cta .cta_img{position: absolute; left: 0; bottom: 0;}
.cta .cta_time{position: absolute; left: 350px; top: 30px;}
.cta .cta_time .cta_time1{font-size: 1.5rem; font-weight: bold; margin-bottom: 10px;}
.cta .cta_time .cta_time2{font-size: 2rem; font-weight: bold; text-decoration: underline; color: #f00; font-style: italic;}
.cta .cta_time .cta_time2 span{color: #f00;}
.cta .cta_tel{position: absolute; left: 350px; top: 125px;}
.cta .cta_mail{position: absolute; left: 343px; top: 230px;}
.cta .cta_line{position: absolute; right: 40px; top: 230px;}
.cta .cta_txt{position: absolute; right: 50px; bottom: 30px; width: 600px;}
.cta .cta_txt .cta_txt1{ text-align: center; background: #58B13B; color: #fff; font-weight: bold; font-size: 1.5rem; border-radius: 50px; padding: 5px; margin-bottom: 10px;}
.cta .cta_txt .cta_txt1 span{ color: #ff0; }
.cta .cta_txt .cta_txt2{ text-align: center; font-weight: bold; font-size: 1.5rem; }
.cta .cta_txt .cta_txt2 span{ color: #f00; }


#cta_sp{display: none;}
#cta_sp .cta_sp_tel{display: none;}
#cta_sp .cta_sp_mail{display: none;}
#cta_sp2 .cta_sp2_line{display: none;}


#payment{width: 100%; background: #f4f4f4; padding: 50px 0;}
#payment .wrap{width: 800px; margin: 0 auto; border: 1px solid #58B13B; padding: 60px; background: #fff;}
#payment h2{text-align: center; font-size: 1.5rem; color: #58B13B; border-bottom: 1px solid #58B13B; margin: 0 auto 40px; padding: 0 0 20px; width: 525px;}
#payment p{text-align: center; font-size: 1.5rem; color: #58B13B; margin-bottom: 40px;}
#payment img{width: 529px; margin: 0 auto; display: block; text-align: center;}


#four0{background: url(../img/0_bg.png) center center no-repeat, #f0f7ff; padding: 70px 0 20px; width: 100%;}
#four0 .wrap{width: 822px; margin: 0 auto;}
#four0 h2{display: block; text-align: center; margin: 0 auto;}
#four0 li{float: left; width: 411px;}
#four0 li img{width: 411px;}


#houshou{width: 100%; padding: 50px 0; background: #fff;}
#houshou img{display: block; text-align: center; margin: 0 auto;}


#cnt1{ width: 1000px; margin: 80px auto; }
#cnt1 h2{ font-weight: bold; font-size: 3.5rem; width: 480px; float: left; margin: 50px 0; letter-spacing: 3px;}
#cnt1 h2 span{ background: #E21A0F; border-radius: 50px; color: #fff; padding: 5px; display: block; margin-top: 20px; width: 450px; text-align: center;}
#cnt1 .cnt1_img{float: right; width: 500px;}
#cnt1 .cnt1_img img{width: 100%;}
#cnt1 p{float: left; font-size: 1.4rem; line-height: 2.5rem;}


#cnt2{background: url(../img/cnt2_bk.webp) repeat-y top center; background-size: cover; width: 100%;}
#cnt2 .cnt_wrap{width: 1000px; margin: 0 auto; padding: 50px 0 150px;}
#cnt2 h2{color: #fff; font-size: 3.2rem; margin-bottom: 40px; letter-spacing: 3px;}
#cnt2 h2 span{color: #ff0;}
#cnt2 .cnt2_cnt{width: 800px; margin: 0 auto; padding: 40px; background: #fff;}
#cnt2 li{font-size: 1.6rem; font-weight: bold; margin-bottom: 20px; letter-spacing: 1px; position: relative; padding-left: 50px;}
#cnt2 li:before{position: absolute; content: ""; background: url(../img/cnt2_icon.png) no-repeat left top; width: 40px; height: 35px; top: 2px; left: 0;}
#cnt2 li:last-child{margin-bottom: 0;}


#cnt3{background: #58B13B; background-size: cover; width: 100%;}
#cnt3 .cnt_wrap{width: 1000px; margin: 0 auto; padding: 50px 0; position: relative;}
#cnt3 h2{color: #fff; font-size: 3.2rem; margin-bottom: 20px; letter-spacing: 3px;}
#cnt3 p{font-size: 1.4rem; line-height: 2.5rem; margin-bottom: 50px;}
#cnt3 .cnt3_img1{position: absolute; right: 0px; top: -75px; width: 40%;}
#cnt3 .cnt3_img1 img{width: 100%;}
#cnt3 .cnt3_img2{margin-bottom: 10px;}
#cnt3 .cnt3_tx{text-align: right; font-size: 1.2rem;}


#cnt4{background: url(../img/cnt4_bk.webp) repeat-y top center; background-size: cover; width: 100%;}
#cnt4 .cnt_wrap{width: 800px; margin: 0 auto; padding: 80px 0 100px;}
#cnt4 h2{color: #fff; font-size: 3.2rem; margin-bottom: 60px; letter-spacing: 3px; text-align: center;}
#cnt4 h3{color: #fff; font-size: 2.5rem; letter-spacing: 1px; margin-bottom: 1px;}
#cnt4 h4{color: #ff0; font-size: 1.5rem; letter-spacing: 1px; margin-bottom: 10px;}
#cnt4 h4 span{color: #ff0; font-size: 2.5rem; letter-spacing: 1px;}
#cnt4 p{color: #fff; font-size: 1.1rem;}
#cnt4 .cnt4_cnt1{margin-bottom: 80px;}
#cnt4 .cnt4_cnt1 .left{float: left; width: 220px;}
#cnt4 .cnt4_cnt1 .right{float: right; width: 530px;}
#cnt4 .cnt4_cnt2{margin-bottom: 80px;}
#cnt4 .cnt4_cnt2 .left{float: left; width: 530px;}
#cnt4 .cnt4_cnt2 .right{float: right; width: 220px;}
#cnt4 .other{text-align: center;}
#cnt4 .other span{font-size: 1.5rem; color: #ff0;}


#cnt5{ background: #F2F2F2; width: 100%; position: relative; z-index: -10;}
#cnt5:before{ background: #fff; position: absolute; content: ""; height: 170px; top: 0; width: 100%; z-index: 0; z-index: -1;}
#cnt5 .cnt_wrap{width: 1000px; margin: 0 auto; padding: 50px 0;}
#cnt5 h2{font-size: 3.2rem; margin-bottom: 40px; letter-spacing: 3px;}
#cnt5 li{width: 100%; min-height: 310px; margin-bottom: 60px;}
#cnt5 li:nth-child(1){background: url(../img/cnt5_1.png) no-repeat right top;}
#cnt5 li:nth-child(2){background: url(../img/cnt5_2.png) no-repeat right top;}
#cnt5 li:nth-child(3){background: url(../img/cnt5_3.png) no-repeat right top;}
#cnt5 li:nth-child(4){background: url(../img/cnt5_4.png) no-repeat right top;}
#cnt5 li div{width: 48%; padding-top: 70px;}
#cnt5 h3{color: #58B13B; font-weight: bold; font-style: italic; font-size: 1.8rem; border-bottom: 1px solid #58B13B; letter-spacing: 1px;
 margin-bottom: 30px;}
#cnt5 p{font-size: 1.1rem; width: 85%;}


#cnt6{background: #58B13B; width: 100%;}
#cnt6 .cnt_wrap{width: 1000px; margin: 0 auto; padding: 50px 0 0; position: relative;}
#cnt6 h2{color: #ff0; font-size: 2rem; margin-bottom: 40px; letter-spacing: 1px; text-align: center;}
#cnt6 li{width: 47%; margin-right: 6%; min-height:285px; float: left; margin-bottom: 20px; }
#cnt6 li:nth-child(even){margin-right: 0;}
#cnt6 img{margin-bottom: 10px; width: 100%;}
#cnt6 h3{font-size: 1.2rem; font-weight: bold; letter-spacing: 1px; margin-bottom: 5px;}
#cnt6 p{font-size: 1.1rem; line-height: 2rem; margin-bottom: 50px;}


#cnt7{width: 100%;}
#cnt7 .cnt_wrap{width: 1000px; margin: 0 auto; padding: 50px 0 0; position: relative;}
#cnt7 h2{font-size: 2rem; margin-bottom: 40px; letter-spacing: 1px; text-align: center;}
#cnt7 li{width: 47%; margin-right: 6%; min-height:285px; float: left; margin-bottom: 50px; border: 1px solid #d0d0d0; padding:30px; }
#cnt7 li:nth-child(even){margin-right: 0;}
#cnt7 .left{float: left; width: 30%;}
#cnt7 .left img{width: 100%;}
#cnt7 .right{float: right; width: 65%;}
#cnt7 .title{background: #E5E5E5; padding: 0 10px; display: inline-block; line-height: 1.5rem;}
#cnt7 .txt1{margin-bottom: 8px;}
#cnt7 .txt2{margin: 10px 0 0;}


#cnt8{background: #58A73E; width: 100%;}
#cnt8 .cnt_wrap{width: 1000px; margin: 0 auto; padding: 50px 0; position: relative;}
#cnt8 h2{color: #fff; font-size: 2rem; margin-bottom: 60px; letter-spacing: 1px; text-align: center;}


#cnt9{background: url(../img/cnt9_bk.webp) repeat-y top center; background-size: cover; width: 100%;}
#cnt9 .cnt_wrap{width: 1000px; margin: 0 auto; padding: 80px 0 100px;}
#cnt9 h2{color: #ff0; font-size: 3.2rem; margin-bottom: 40px; letter-spacing: 3px;}
#cnt9 .left{float: left; width: 490px;}
#cnt9 .right{float: right; width: 470px;}
#cnt9 p{color: #fff; font-size: 1.1rem; line-height: 2.5rem;}


#cnt10{background: #F2F2F2; width: 100%;}
#cnt10 .cnt_wrap{width: 800px; margin: 0 auto; padding: 50px 0;}
#cnt10 h2{font-size: 2rem; margin-bottom: 40px; letter-spacing: 1px; text-align: center;}
#cnt10 li{border: 1px solid #d0d0d0; margin-bottom: 40px; padding: 40px; background: #fff;}
#cnt10 h3{color: #58B13B; font-weight: bold; font-size: 1.2rem; margin-bottom: 20px;}


#cnt11{ background: #58B13B; width: 100%;}
#cnt11 .cnt_wrap{width: 1000px; margin: 0 auto; padding: 50px 0;}
#cnt11 h2{font-size: 2rem; margin-bottom: 40px; letter-spacing: 1px; text-align: center; color: #fff;}
#cnt11 .faq__Q { cursor: pointer; font-size: 1.1rem; padding: 13px 30px 17px 15px; width: 100%; position: relative;  margin-bottom: 30px;
box-shadow: 0 3px 5px 0 rgba(0, 0, 0, .2); background: #fff; display: block; font-weight: bold; line-height: 2rem;}
#cnt11 .faq__Q:hover { text-decoration: underline;}
#cnt11 .faq__Q:before{content: ""; width: 34px; height: 41px; background: url(../img/cnt11_Q.png) no-repeat left; position: absolute; top: 14px;}
#cnt11 .faq__Q:after {width: 0; height: 0; position: absolute; top: 46%; right: 3%; border: 8px solid transparent; border-top-color: #000; content: '';}
#cnt11 .faq__A { display: none; padding:0 0 10px 11px; width: 100%; font-size: 1.1rem; line-height: 2rem; margin: 0 auto 50px; color: #000}
#cnt11 .faq__Q p{color: #000; padding:3px 0 0 60px; }
#cnt11 .faq__A p{color: #000; padding:3px 0 0 60px;}
#cnt11 .faq__A:before{content: ""; width: 37px; height: 37px; background: url(../img/cnt11_A.png) no-repeat left; position: absolute;}


#cnt12{ width: 100%;}
#cnt12 .cnt_wrap{width: 1000px; margin: 0 auto; padding: 50px 0;}
#cnt12 h2{font-size: 2rem; margin-bottom: 40px; letter-spacing: 1px; text-align: center; }
#cnt12 .cnt{min-height: 250px;}
#cnt12 h3{font-size: 1.2rem; margin-bottom: 20px; font-weight: bold; }
#cnt12 .left{float: left; width: 300px;}
#cnt12 .left img{margin: 0 auto; display: block;}
#cnt12 .right{float: right; width: 650px;}
#cnt12 .faq__Q { cursor: pointer; font-size: 1.1rem; padding: 10px; width: 100%; position: relative; margin-bottom: 20px; background: #fff;
 display: block; font-weight: bold; line-height: 2rem; border:1px solid #d0d0d0;}
#cnt12 .faq__Q:hover { text-decoration: underline;}
#cnt12 .faq__Q:after {width: 0; height: 0; position: absolute; top: 46%; right: 3%; border: 8px solid transparent; border-top-color: #000; content: '';}
#cnt12 .faq__A { display: none; padding:0 0 10px 11px; width: 100%; font-size: 1.1rem; line-height: 2rem; margin: 0 auto 50px; color: #000}
#cnt12 .faq__Q p{color: #000; text-align: center;}
#cnt12 .faq__A p{color: #000; font-size: 0.9rem;}


#cnt13{background: #F2F2F2; width: 100%;}
#cnt13 .cnt_wrap{width: 800px; margin: 0 auto; padding: 50px 0;}
#cnt13 h2{font-size: 2rem; margin-bottom: 40px; letter-spacing: 1px; text-align: center;}
#cnt13 li{float: left; width: 30%; margin-right: 5%; }
#cnt13 li img{margin: 0 auto; display: block; margin-bottom: 10px;}
#cnt13 li:last-child{margin-right: 0; }
#cnt13 h3{color: #58B13B; font-weight: bold; font-size: 1.3rem; text-align: center;}


#cnt14{background: #F2F2F2; padding: 50px 0; }
#cnt14 h2{font-size: 2rem; margin-bottom: 40px; letter-spacing: 1px; text-align: center;}
#cnt14 table{width: 700px; margin: 20px auto 0;}
#cnt14 table th{font-weight: bold; width: 25%;}
#cnt14 table th,#cnt14 table td{border-bottom: 1px solid #000; margin-bottom: 20px; padding: 15px 0;}


/*フォーム*/
.formWrap__bg{width: 100%; background: #58B13B; padding: 50px 0;}
#formWrap{width: 1000px; background: #fff; margin: 0 auto; padding: 40px; filter: drop-shadow(0 0 3px rgba(100,100,100,0.6));}
#formWrap h2{font-size: 1.75rem; color: #FF555D; font-weight: bold; text-align: center; background: #fff;}
#formWrap h2:after{background: none;}
.formTable{width: 800px; margin: 0 auto;}
.formTable th {width: 28%; font-size: 0.9rem; font-weight: bold; padding: 10px; border: #fff 3px solid;  }
.formTable th span{color: #fff; font-weight: bold; background: #ff6464; display: inline-block; padding: 1px 5px; float: right;}
/*.formTable .th2 {background: #eee;}*/
.formTable td{width: 72%; border: 10px solid #fff;}
.formTable .formtextarea{width: 80%;}
.formTable input ,.formTable select{padding: 10px; border: 1px solid #ccc; font-size: 1rem; margin-right: 5px;}
.formTable .serect_margin input{margin-bottom: 7px;}
.formTable label{ margin-right: 30px; }
.formTable textarea{width: 100%; padding: 10px; border: 1px solid #ccc; font-size: 1rem; }
.formWrap__botton{text-align: center; margin:20px auto;}
.formWrap__botton__submit{ background: #E40000; width: 350px; height:80px; border: none; border-radius: 10px; color: #fff; font-size: 1.5rem; font-weight: bold;}
.formWrap__botton__submit:hover {opacity: 0.7;filter: alpha(opacity=70);-ms-filter: "alpha(opacity=70)";}
.formWrap__policy{width: 800px; height: 200px; margin: 30px auto 30px ; overflow: auto;  border: 1px solid #ccc; padding: 20px;}
.formWrap__policy p{font-size: 0.8rem; margin-bottom: 20px; line-height: 1.5rem;}
.formTable__sutxt{font-size: 0.7rem; line-height: 1.5rem;}
.formTable__short span{padding: 12px 0 0 20px; display: inline-block;}
.formTable__short input{width: 70% !important; float: right; margin-bottom: 10px; display: inline-block;}
.formTable__short__red{font-size: 0.8rem; color: #f00;}
#formWrap .form__date input{width: 50%;}
.form_select_tx{font-size: 0.8rem; color: #f00;}
.form_select_tx span{color: #f00; font-weight: bold;}
.formWrap__policy__agree{text-align: center; margin-top: 20px auto;}

/*フォーム機能*/
#formWrap2{width: 800px; margin: 50px auto;}
.error_messe_h3{text-align: center; background: #fcc; padding: 20px; width: 100%; font-weight: bold; font-size: 1.1rem; margin-bottom: 20px;}
.error_messe{color: #f00; font-weight: bold; background: #fee; padding: 10px; margin-bottom: 10px;}
.form__error__back{color: #fff; padding: 20px ; border:none; font-size: 1.1rem; letter-spacing: 2px; background: #888; border-radius: 10px; width: 30%; }
.form__error__next{color: #fff; padding: 20px ; border:none; font-size: 1.1rem; letter-spacing: 2px;
 background: #E40000; border-radius: 10px; width: 30%; margin-bottom: 10px; font-weight: bold;}
.form__fix__h3{text-align: center; padding: 20px; color: #fff; background: #58B13B; font-size: 1.3rem; letter-spacing: 2px; margin-bottom: 20px; font-weight: bold;}
.form__fix__h3__tx{text-align: center; margin-bottom: 20px;}

/*サンキューページ*/
.form__submit{width: 100%; background: #58B13B; padding: 30px 0;}
.form__submit h2{text-align: center; color: #fff; font-weight: bold; font-size: 1.2rem;}
.form__submit__area{margin: 20px 0 0;}
.form__submit__sub{background-color: #fff200; padding: 5px; border-radius: 10px; text-align: center; margin: -21px auto 0; font-size: 1.2rem; letter-spacing: 1px; width: 350px; font-weight: bold;}
.form__submit__txtarea{width: 700px; margin: 20px auto;}
.form__submit__btn{margin: 0 auto 50px; display: block; text-align: center;}

/*コピーライト*/
#cnt_copy p{background: #58B13B; text-align: center; padding: 10px; color: #fff;}
#cnt_copy2 p{background: #58B13B; text-align: center; padding: 10px; color: #fff;}


/* ===== 料金内訳セクション（cnt4の上） ===== */
#cnt-fee{background: linear-gradient(180deg,#fdf5db,#f8ecc3); width: 100%; padding: 55px 0;}
#cnt-fee .cnt_wrap{width: 1000px; margin: 0 auto; text-align: center;}
#cnt-fee .fee-lead{font-size: 1.55rem; font-weight: bold; color: #2b2b2b; line-height: 1.6; margin-bottom: 46px; text-align: center;}
#cnt-fee .fee-lead em{color: #E60012; font-style: normal; border-bottom: 3px dotted #E60012; padding-bottom: 3px; margin: 0 2px;}
#cnt-fee .fee-lead .fp{color: #2b2b2b; margin: 0 8px; font-weight: bold;}
#cnt-fee .fee-boxes{display: flex; align-items: center; justify-content: center;}
/* 無料(0円)ボックス */
#cnt-fee .fee-free{border: 2px dashed #b7b099; border-radius: 8px; padding: 16px 24px 20px; text-align: center; margin-right: 34px;}
#cnt-fee .ff-label{display: inline-block; background: #231815; color: #fff; font-weight: bold; font-size: 1.05rem; line-height: 1.3; padding: 7px 16px; border-radius: 4px; margin-bottom: 16px;}
#cnt-fee .ff-zero{display: block; color: #231815; font-size: 3.6rem; font-weight: bold; line-height: 1;}
#cnt-fee .ff-zero em{font-size: 1.5rem; font-style: normal; margin-left: 2px;}
/* 3D立方体 共通 */
#cnt-fee .cube{position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center; color: #fff; font-weight: bold; text-align: center; box-sizing: border-box; border-radius: 2px;}
#cnt-fee .cube::before{content: ""; position: absolute; left: 0; top: -15px; width: 100%; height: 15px; background: var(--top); transform: skewX(-45deg); transform-origin: bottom left;}
#cnt-fee .cube::after{content: ""; position: absolute; top: 0; right: -15px; width: 15px; height: 100%; background: var(--side); transform: skewY(-45deg); transform-origin: top left;}
#cnt-fee .cube > *{position: relative; z-index: 1;}
/* 赤=基本料金 */
#cnt-fee .cube-red{width: 205px; height: 205px; background: #E7000E; --top: #ff3d31; --side: #b1000a; margin: 15px 15px 0 0;}
#cnt-fee .cube-red .cr-l1, #cnt-fee .cube-red .cr-l2, #cnt-fee .cube-red .cr-l2 em{color: #fff;}
#cnt-fee .cube-red .cr-l1{font-size: 1.45rem;}
#cnt-fee .cube-red .cr-l2{font-size: 2.4rem; margin-top: 6px; line-height: 1;}
#cnt-fee .cube-red .cr-l2 em{font-size: 1.25rem; font-style: normal;}
/* + 記号 */
#cnt-fee .fee-plus{color: #E60012; font-size: 3rem; font-weight: bold; margin: 0 22px 0 8px; line-height: 1;}
/* 黄・橙スタック */
#cnt-fee .cube-stack{display: flex; flex-direction: column; gap: 20px; margin: 15px 15px 0 0;}
#cnt-fee .cube-yellow{width: 185px; height: 92px; background: #F5C400; --top: #ffde54; --side: #d3a400;}
#cnt-fee .cube-orange{width: 185px; height: 92px; background: #F18A00; --top: #ffac35; --side: #c86e00;}
#cnt-fee .cube-yellow span, #cnt-fee .cube-orange span{font-size: 1.3rem;}
#cnt-fee .cube-yellow span em, #cnt-fee .cube-orange span em{font-size: 0.85rem; font-style: normal; vertical-align: super;}
#cnt-fee .fee-note{color: #6b6552; font-size: 0.85rem; margin-top: 40px; line-height: 1.6; text-align: center;}

/* ===== 危機訴求セクション（施工事例の上） ===== */
#cnt-danger{background: #F2F2F2; width: 100%; padding: 55px 0;}
#cnt-danger .cnt_wrap{width: 1000px; margin: 0 auto;}
#cnt-danger .danger-lead{text-align: center; margin-bottom: 35px;}
#cnt-danger .dl1{display: inline-block; background: #163475; color: #fff; font-weight: bold; font-size: 1.2rem; padding: 10px 28px; border-radius: 30px; margin-bottom: 20px;}
#cnt-danger .dl1 em{color: #ffe14d; font-style: normal; font-size: 1.5rem; margin: 0 3px;}
#cnt-danger .dl2{color: #163475; font-size: 2.1rem; font-weight: bold; line-height: 1.45; text-align: center;}
#cnt-danger .dl2 span{font-size: 2.5rem;}
#cnt-danger .dmg-grid{display: flex; flex-wrap: wrap; justify-content: space-between; margin-bottom: 42px;}
#cnt-danger .dmg-card{width: 48%; margin-bottom: 26px;}
#cnt-danger .dmg-ph{position: relative; width: 100%; height: 250px; border-radius: 8px; overflow: hidden; box-shadow: 0 3px 12px rgba(0,0,0,.10);}
#cnt-danger .dmg-ph img{width: 100%; height: 100%; object-fit: cover; display: block;}
#cnt-danger .dmg-badge{position: absolute; left: 10px; bottom: 12px; background: #163475; color: #fff; font-weight: bold; font-size: 1.05rem; letter-spacing: 1px; padding: 7px 24px; border-radius: 22px;}
#cnt-danger .dmg-cap{text-align: center; color: #333; font-weight: bold; font-size: 1.1rem; margin-top: 12px;}
#cnt-danger .danger-warn{text-align: center; color: #333; font-size: 1.35rem; font-weight: bold; line-height: 1.7; margin-bottom: 34px;}
#cnt-danger .danger-warn p{text-align: center;}
#cnt-danger .danger-warn .warn-big{font-size: 1.6rem; margin: 4px 0;}
#cnt-danger .danger-warn .warn-big em{color: #E5473D; font-style: normal;}
#cnt-danger .danger-warn .warn-big strong{color: #163475; font-size: 2.6rem; margin: 0 4px;}
#cnt-danger .danger-cta{position: relative; text-align: center; background: #163475; border-radius: 12px; padding: 24px 16px; font-weight: bold; font-size: 1.5rem; line-height: 1.4;}
#cnt-danger .danger-cta p, #cnt-danger .danger-cta span{color: #fff;}
#cnt-danger .danger-cta p{text-align: center; font-weight: 900;}
#cnt-danger .danger-cta span{font-size: 2.2rem; color: #ffe14d; font-weight: 900;}
#cnt-danger .danger-cta::before{content: ""; position: absolute; top: -16px; left: 50%; transform: translateX(-50%); border-left: 22px solid transparent; border-right: 22px solid transparent; border-top: 17px solid #163475;}

/* ===== 施工事例セクション（cnt4の上） ===== */
#cnt-case{background: #fff; width: 100%; padding: 0 0 60px;}
#cnt-case .case-bar{background: #163475; color: #fff; text-align: center; font-size: 1.8rem; font-weight: bold; letter-spacing: 2px; padding: 22px 10px; margin-bottom: 45px;}
#cnt-case .cnt_wrap{width: 1000px; margin: 0 auto;}
#cnt-case .case-row{margin-bottom: 42px;}
#cnt-case .case-row:last-child{margin-bottom: 0;}
#cnt-case .case-row{background: #fff; border: 1px solid #e6e6e6; border-radius: 10px; box-shadow: 0 4px 16px rgba(0,0,0,.06); padding: 26px 28px 28px; margin-bottom: 40px;}
#cnt-case .case-row:last-child{margin-bottom: 0;}
#cnt-case .case-head{display: flex; align-items: stretch; border-bottom: 3px solid #163475; margin-bottom: 22px;}
#cnt-case .case-tag{background: #163475; color: #fff; font-size: 1.2rem; font-weight: bold; letter-spacing: 1px; display: flex; align-items: center; padding: 10px 34px 10px 18px; clip-path: polygon(0 0, 100% 0, calc(100% - 18px) 100%, 0 100%); flex-shrink: 0;}
#cnt-case .case-h-ttl{color: #163475; font-size: 1.2rem; font-weight: bold; line-height: 1.45; display: flex; align-items: center; margin-left: 20px; padding: 6px 0;}
#cnt-case .case-body{display: flex; align-items: flex-start; gap: 26px; margin-bottom: 22px;}
#cnt-case .case-img{width: 32%; flex-shrink: 0;}
#cnt-case .case-img img{width: 100%; height: 210px; object-fit: cover; border-radius: 6px; display: block; box-shadow: 0 3px 10px rgba(0,0,0,.12);}
#cnt-case .case-detail{flex: 1;}
#cnt-case .case-sec{margin-bottom: 16px;}
#cnt-case .case-sec:last-child{margin-bottom: 0;}
#cnt-case .sec-label{display: block; color: #163475; font-weight: bold; font-size: 1.05rem; border-bottom: 2px solid #cfd8e6; padding: 0 0 5px 14px; margin-bottom: 7px; position: relative;}
#cnt-case .sec-label::before{content: ""; position: absolute; left: 0; top: 3px; width: 5px; height: 16px; background: #E5473D; border-radius: 2px;}
#cnt-case .sec-text{color: #333; font-size: 0.98rem; line-height: 1.75;}
#cnt-case .sec-work{display: block; color: #163475; font-weight: bold; font-size: 1.1rem; margin-bottom: 2px;}
#cnt-case .case-cost{display: flex; align-items: stretch; justify-content: center; margin-bottom: 16px;}
#cnt-case .cost-box{flex: 1; max-width: 210px; border: 2px solid #163475; border-radius: 8px; overflow: hidden; text-align: center; background: #fff;}
#cnt-case .cb-label{display: block; background: #163475; color: #fff; font-weight: bold; font-size: 0.9rem; padding: 7px 4px; letter-spacing: 1px;}
#cnt-case .cb-amt{display: block; color: #E5473D; font-weight: bold; font-size: 2.1rem; padding: 12px 4px; line-height: 1;}
#cnt-case .cb-amt em{font-size: 1rem; font-style: normal; margin-left: 1px;}
#cnt-case .cb-amt.free{color: #58B13B;}
#cnt-case .cost-plus{display: flex; align-items: center; justify-content: center; color: #163475; font-size: 1.8rem; font-weight: bold; padding: 0 14px;}
#cnt-case .case-summary{color: #163475; font-weight: bold; font-size: 1rem; line-height: 1.75; background: #eef3fb; border-radius: 8px; padding: 14px 18px;}

/* ===== 費用目安セクション（cnt4の上） ===== */
#cnt-estimate{background: #F2F2F2; width: 100%; padding: 60px 0;}
#cnt-estimate .cnt_wrap{width: 1000px; margin: 0 auto; text-align: center;}
#cnt-estimate .est-lead{color: #163475; font-weight: bold; line-height: 1.5; margin-bottom: 40px; text-align: center;}
#cnt-estimate .est-lead .s1{display: block; font-size: 1.9rem; margin-bottom: 8px;}
#cnt-estimate .est-lead .s2{display: block; font-size: 2.3rem;}
#cnt-estimate .est-lead em{color: #E5473D; font-style: normal;}
#cnt-estimate .est-card{max-width: 760px; margin: 0 auto; background: #fff; border: 4px solid #C9A54E; border-radius: 4px; box-shadow: 0 6px 22px rgba(0,0,0,.10); padding: 28px;}
#cnt-estimate .est-card__ttl{background: #163475; color: #fff; font-size: 1.8rem; font-weight: bold; letter-spacing: 4px; text-align: center; padding: 16px 10px; margin-bottom: 26px;}
#cnt-estimate .est-cond{color: #163475; font-weight: bold; font-size: 1.15rem; text-align: center; border-bottom: 2px solid #163475; padding-bottom: 14px; margin-bottom: 16px;}
#cnt-estimate .est-cond span{font-size: 1.15rem;}
#cnt-estimate .est-unit{color: #163475; font-weight: bold; font-size: 1.05rem; text-align: center; margin-bottom: 2px;}
#cnt-estimate .est-price{text-align: center; color: #E5473D; font-weight: bold; line-height: 1.1; margin-bottom: 14px;}
#cnt-estimate .est-price .num{font-size: 3.4rem;}
#cnt-estimate .est-price .yen{font-size: 1.5rem;}
#cnt-estimate .est-price .tilde{font-size: 2.2rem; margin: 0 6px;}
#cnt-estimate .est-price .tax{color: #E5473D; font-size: 1.15rem; margin-left: 4px;}
#cnt-estimate .est-note{text-align: center; color: #666; font-size: 0.8rem; line-height: 1.5;}


@media screen and (max-width:640px) {
	#wrap{width: 100%;}
	p{font-size: 0.9rem; line-height: 1.8rem;}
	.sp{display:inline;}
	.pc{display:none !important;}

	/*ヘッダー*/
	header{width: 100% ; margin-bottom: 0; padding-bottom: 0;}
	.head__logo{float: left; padding: 10px 0 8px; width: 50%; padding: 10px;}
	.head__logo img {width: 100%; margin: 0 auto; text-align: center; display: block;}
	.head__navi{display: none;}
	header .head__navi__sp{display: block; float: right; width:50%; padding: 3.5vw 10px 0;}
	header .head__navi__sp img{display: block; width: 100%;}
	#main{background: none; height: auto; padding: 0; position: relative;}
	#main .main_tx{display: block; width: 100%;}
	#main .main_tx img.pc{display: none;}
	#main .main_tx img.sp{display: block; width: 100%; height: auto;}
	#main p{padding: 5px 0; font-size: 0.8rem; letter-spacing: 0; position: absolute; bottom: 0; text-align: center; width: 100%;}

	#gnavi{display: none;}
	#gnavi div{display: none;}
	#gnavi li{display: none;}

	.ctaWrap{width: 100%; }
	.cta{width: 90%; height: auto; position: relative; height: 63vw;}
	.cta .cta_img{left: 0; bottom: 0; width: 40vw;}
	.cta .cta_img img{width: 100%;}
	.cta .cta_time{left: 0; top: 4vw; width: 100%;}
	.cta .cta_time .cta_time1{font-size: 0.9rem; margin-bottom: 0; line-height: 1rem; text-align: center;}
	.cta .cta_time .cta_time2{font-size: 1.1rem; text-align: center;}
	.cta .cta_tel{left: auto; right: 4vw; top: 18vw; width: 60vw}
	.cta .cta_tel img{width: 100%;}
	.cta .cta_mail{left: 25vw; top: 36vw; width: 30vw;}
	.cta .cta_line{right: 3.5vw; top: 36vw; width: 30vw;}
	.cta .cta_mail img,.cta .cta_line img{width: 100%;}
	.cta .cta_txt{right: 4vw; bottom: 0vw; width: 60vw;}
	.cta .cta_txt .cta_txt1{ font-size: 0.7rem; padding: 0; margin-bottom: 0; line-height: 1.5rem;}
	.cta .cta_txt .cta_txt2{ text-align: center; font-weight: bold; font-size: 0.8rem; }

	#payment{width: 100%; background: #f4f4f4; padding: 20px 5%;}
	#payment .wrap{width: 100%; margin: 0 auto; border: 1px solid #58B13B; padding: 20px; background: #fff;}
	#payment h2{ font-size: 1rem; border-bottom: 1px solid #58B13B; margin: 0 auto 20px; padding: 0 0 10px; width: 100%;}
	#payment p{ font-size: 0.9rem; margin-bottom: 20px;}
	#payment img{width: 100%; margin: 0 auto; display: block; }

	#four0{ padding: 40px 5% 20px; width: 100%; background-size: 160vw;}
	#four0 .wrap{width: 100%; margin: 0 auto;}
	#four0 h2{display: block; text-align: center; margin: 0 auto 20px; width: 65%;}
	#four0 h2 img{width: 100%;}
	#four0 li{float: none; width: 80%; margin: -15px auto 0;}
	#four0 li img{width: 100%;}

	#houshou{padding: 20px 5%; background: #fff;}
	#houshou img{width: 100%;}

	#cnt1{ width: 100%; margin: 0 auto; padding: 20px 40px 30px;}
	#cnt1 h2{ font-size: 2rem; width: 100%; float: left; margin: 0; letter-spacing: 1px; text-align: center; line-height: 2.5rem;}
	#cnt1 h2 span{ padding: 0; margin: 10px 0; width: 100%; text-align: center;}
	#cnt1 .cnt1_img{float: none; width: 80%; margin: 0 auto;}
	#cnt1 .cnt1_img img{width: 100%;}
	#cnt1 p{float: none; font-size: 1rem; line-height: 2rem;}


	#cnt2{width: 100%;}
	#cnt2 .cnt_wrap{width: 100%; margin: 0 auto; padding: 25px 20px 80px;}
	#cnt2 h2{color: #fff; font-size: 1.6rem; margin-bottom: 15px; letter-spacing: 1px;}
	#cnt2 .cnt2_cnt{width: 100%; padding: 20px;}
	#cnt2 li{font-size: 1rem; margin-bottom: 15px; letter-spacing:0; padding-left: 25px;}
	#cnt2 li:before{ background-size: contain; width: 20px; height: 35px; top: 3px; left: 0;}
	#cnt2 li:last-child{margin-bottom: 0;}


	#cnt3{width: 100%; padding: 20px;}
	#cnt3 .cnt_wrap{width: 100%; margin: 0 auto; padding: 0;}
	#cnt3 h2{color: #fff; font-size: 1.6rem; margin-bottom: 0; letter-spacing: 1px;}
	#cnt3 p{font-size: 1rem; line-height: 2rem; margin-bottom: 20px;}
	#cnt3 .cnt3_img1{right: -3vw; top: -21vw; width: 35%;}
	#cnt3 .cnt3_img2{margin-bottom: 10px;}
	#cnt3 .cnt3_img1 img ,#cnt3 .cnt3_img2 img{width: 100%;}
	#cnt3 .cnt3_tx{font-size: 0.9rem;}


	#cnt4{width: 100%;}
	#cnt4 .cnt_wrap{width: 100%; margin: 0 auto; padding: 40px 20px 50px;}
	#cnt4 h2{color: #fff; font-size: 1.7rem; margin-bottom: 20px; letter-spacing: 1px; text-align: center;}
	#cnt4 h3{color: #fff; font-size: 1.5rem; letter-spacing: 1px; margin-bottom: 1px; text-align: center;}
	#cnt4 h4{font-size: 1rem; letter-spacing: 1px; margin-bottom: 10px; text-align: center;}
	#cnt4 h4 span{font-size: 2rem; letter-spacing: 1px; text-align: center;}
	#cnt4 p{color: #fff; font-size: 0.9rem;}
	#cnt4 .cnt4_cnt1{margin-bottom: 50px;}
	#cnt4 .cnt4_cnt1 .left{float: none; width: 100%;}
	#cnt4 .cnt4_cnt1 .right{float: none; width: 100%;}
	#cnt4 .cnt4_cnt2{margin-bottom: 50px;}
	#cnt4 .cnt4_cnt2 .left{float: none; width: 100%;}
	#cnt4 .cnt4_cnt2 .right{float: none; width: 100%;}
	#cnt4 .cnt4_cnt1 img ,#cnt4 .cnt4_cnt2 img{width: 50%; margin: 0 auto 10px; display: block;}
	#cnt4 .other{text-align: center;}
	#cnt4 .other span{font-size: 1.3rem; color: #ff0;}


	#cnt5{ width: 100%;}
	#cnt5:before{ height: 25vw; top: 0; width: 100%; z-index: 0; z-index: -1;}
	#cnt5 .cnt_wrap{width: 100%; margin: 0 auto; padding: 40px 20px 20px;}
	#cnt5 h2{font-size: 1.6rem; margin-bottom: 40px; letter-spacing: 3px;}
	#cnt5 h3{color: #58B13B; font-weight: bold; font-style: italic; font-size: 1.3rem; border-bottom: 1px solid #58B13B; letter-spacing: 0;
	 margin-bottom: 10px;}
	#cnt5 li{width: 100%; min-height: 310px; margin-bottom: 30px; padding: 0;}
	#cnt5 li:nth-child(1){background: url(../img/cnt5_1.png) no-repeat; background-size: 80%; background-position: right top;}
	#cnt5 li:nth-child(2){background: url(../img/cnt5_2.png) no-repeat; background-size: 80%; background-position: right top;}
	#cnt5 li:nth-child(3){background: url(../img/cnt5_3.png) no-repeat; background-size: 80%; background-position: right top;}
	#cnt5 li:nth-child(4){background: url(../img/cnt5_4.png) no-repeat; background-size: 80%; background-position: right top;}
	#cnt5 li div{width: 100%; padding-top: 42vw;}
	
	#cnt5 p{font-size: 1rem; width: 100%;}


	#cnt6{width: 100%;}
	#cnt6 .cnt_wrap{width: 100%; margin: 0 auto; padding: 40px 20px 20px; }
	#cnt6 h2{color: #ff0; font-size: 1.6rem; margin-bottom: 40px; letter-spacing: 1px; text-align: center;}
	#cnt6 li{width: 100%; margin-right: 6%; min-height:auto; float: none; margin-bottom: 20px; }
	#cnt6 li:nth-child(even){margin-right: 0;}
	#cnt6 img{margin-bottom: 15px; width: 100%;}
	#cnt6 h3{font-size: 1.1rem; font-weight: bold; letter-spacing: 1px; margin-bottom: 5px;}
	#cnt6 p{font-size: 0.9rem; line-height: 2rem; margin-bottom: 30px;}


	#cnt7{width: 100%;}
	#cnt7 .cnt_wrap{width: 100%; margin: 0 auto; padding: 40px 20px 20px; position: relative;}
	#cnt7 h2{font-size: 1.6rem; margin-bottom: 30px; letter-spacing: 1px; text-align: center;}
	#cnt7 li{width: 100%; margin-right: 6%; min-height:auto; float: none; margin-bottom: 20px; border: 1px solid #d0d0d0; padding:30px; }
	#cnt7 li:nth-child(even){margin-right: 0;}
	#cnt7 .left{float: left; width: 30%;}
	#cnt7 .left img{width: 100%;}
	#cnt7 .right{float: right; width: 65%;}
	#cnt7 .title{background: #E5E5E5; padding: 0 10px; display: inline-block; line-height: 1.5rem;}
	#cnt7 .txt1{margin-bottom: 8px;}
	#cnt7 .txt2{margin: 10px 0 0;}


	#cnt8{width: 100%;}
	#cnt8 .cnt_wrap{width: 100%; margin: 0 auto; padding: 40px 20px 20px; position: relative;}
	#cnt8 img{width: 100%;}
	#cnt8 h2{color: #fff; font-size: 1.6rem; margin-bottom: 25px; letter-spacing: 1px; text-align: center;}


	#cnt9{width: 100%;}
	#cnt9 .cnt_wrap{width: 100%; margin: 0 auto; padding: 40px 20px;}
	#cnt9 h2{color: #ff0; font-size: 1.5rem; margin-bottom: 20px; letter-spacing: 3px;}
	#cnt9 .left{float: none; width: 100%;}
	#cnt9 .right{float: none; width: 100%;}
	#cnt9 .right img{width: 100%;}
	#cnt9 p{color: #fff; font-size: 0.9rem; line-height: 2rem; margin-bottom: 20px;}


	#cnt10{background: #F2F2F2; width: 100%;}
	#cnt10 .cnt_wrap{width: 100%; margin: 0 auto; padding: 40px 20px;}
	#cnt10 h2{font-size: 1.6rem; margin-bottom: 30px; letter-spacing: 1px; text-align: center;}
	#cnt10 li{border: 1px solid #d0d0d0; margin-bottom: 20px; padding: 40px; background: #fff;}
	#cnt10 h3{color: #58B13B; font-weight: bold; font-size: 1rem; margin-bottom: 10px; line-height: 1.8rem;}



	#cnt11{width: 100%;}
	#cnt11 .cnt_wrap{width: 100%; padding: 40px 20px;}
	#cnt11 h2{font-size: 1.6rem; margin-bottom: 30px; letter-spacing: 1px; text-align: center; color: #fff;}
	#cnt11 .faq__Q { cursor: pointer; color: #000; font-size: 1rem; padding: 13px 30px 17px 10px; width: 100%; position: relative; background: #fff; border-radius: 10px;
	 display: block; font-weight: bold; line-height: 2rem; margin-bottom: 20px;}
	#cnt11 .faq__Q:hover { text-decoration: underline;}
	#cnt11 .faq__Q:before{content: ""; width: 30px; height: 41px; position: absolute; background-size: contain; position: absolute; top: 50%; 
	transform: translateY(-50%); -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%);}
	#cnt11 .faq__Q:after {width: 0; height: 0; position: absolute; top: 46%; right: 3%; border: 8px solid transparent; border-top-color: #000; content: '';}
	#cnt11 .faq__Q p{color: #000; padding:3px 0 0 40px; line-height: 1.2rem;}
	#cnt11 .faq__A { display: none; padding:0 0 10px 11px; width: 100%; font-size: 0.9rem; line-height: 2rem; margin: 0 auto 30px; color: #fff}
	#cnt11 .faq__A p{color: #000; padding:3px 0 0 40px; }
	#cnt11 .faq__A:before{content: ""; width: 30px; height: 41px; position: absolute; background-size: contain; }
	#cnt11 .faq__A a{color: #F9F392;}


	#cnt12{ width: 100%;}
	#cnt12 .cnt_wrap{width: 100%; margin: 0 auto; padding: 40px 20px 0;}
	#cnt12 h2{font-size: 1.6rem; margin-bottom: 40px; letter-spacing: 1px; text-align: center; }
	#cnt12 .cnt{min-height: auto; margin-bottom: 50px;}
	#cnt12 h3{font-size: 1.2rem; margin-bottom: 20px; font-weight: bold; }
	#cnt12 .left{float: none; width: 100%;}
	#cnt12 .left img{margin: 0 auto; display: block;}
	#cnt12 .right{float: none; width: 100%;}
	#cnt12 .faq__Q { cursor: pointer; font-size: 1.1rem; padding: 10px; width: 100%; position: relative; margin-bottom: 10px; background: #fff;
	 display: block; font-weight: bold; line-height: 2rem; border:1px solid #d0d0d0;}
	#cnt12 .faq__Q:hover { text-decoration: underline;}
	#cnt12 .faq__Q:after {width: 0; height: 0; position: absolute; top: 46%; right: 3%; border: 8px solid transparent; border-top-color: #000; content: '';}
	#cnt12 .faq__A { display: none; padding:0 ; width: 100%; font-size: 1.1rem; line-height: 2rem; margin: 0 ; color: #000}
	#cnt12 .faq__Q p{color: #000; text-align: center;}
	#cnt12 .faq__A p{color: #000; font-size: 0.8rem; line-height: 1.5rem;}


	#cnt13{background: #F2F2F2; width: 100%;}
	#cnt13 .cnt_wrap{width: 100%; margin: 0 auto; padding: 40px 20px;}
	#cnt13 h2{font-size: 1.6rem; margin-bottom: 40px; letter-spacing: 1px; text-align: center;}
	#cnt13 li{float: left; width: 30%; margin-right: 5%; }
	#cnt13 li img{margin: 0 auto; display: block; margin-bottom: 10px; width: 100%;}
	#cnt13 li:last-child{margin-right: 0; }
	#cnt13 h3{font-size: 0.8rem; letter-spacing: -1px;}



	#cnt14{background: #F2F2F2; padding: 30px 0; }
	#cnt14 h2{font-size: 1.6rem; color: #58B13B; font-weight: bold; text-align: center; background: #F2F2F2; margin-bottom: 20px;}
	#cnt14 table{width: 90%; margin: 0 auto;}
	#cnt14 table th{font-weight: bold; width: 25%;}
	#cnt14 table th,#cnt14 table td{border-bottom: 1px solid #000; margin-bottom: 20px; padding: 15px 0; font-size: 0.9rem;}



	/*cta_sp*/
	#cta_sp{display: block; position: fixed; width: 100%; bottom: 0; height: auto; z-index: 9999; background-size: 20%; background: #163475;
	 padding: 0; box-shadow: 0 0 10px 0 rgba(0, 0, 0, .2); }
	#cta_sp:after{content: ""; background: url(../img/sp_cta_img.png) no-repeat left bottom; position: absolute; left: 0; bottom:0;
	 width: 22%; height: 24vw; background-size: cover;}
	#cta_sp .cta_sp_tel{display: block; float: none; padding: 0; width: 70%; padding: 1vw 0 2vw; margin: 0 auto;}
	/*#cta_sp .cta_sp_tel{display: block; float: left; padding: 0; width: 33.4%;}*/
	/*#cta_sp .cta_sp_mail{display: block; float: left; padding: 0; width: 33.3%;}*/
	/*#cta_sp .cta_sp_line{display: block; float: left; padding: 0; width: 33.3%;}*/
	#cta_sp .cta_sp_tel img{width: 100%; margin: 0 auto; display: block;}
	/*#cta_sp .cta_sp_tel img,#cta_sp .cta_sp_mail img,#cta_sp .cta_sp_line img{width: 100%;}*/
	#cta_sp h1{text-align: center; color: #ff0; padding: 3px 0 0; }
	#cta_sp h1 span{color: #ff0;}
	#cta_sp h2{text-align: center; font-size: 0.8rem; padding: 0 0 2px; color: #fff;}
	#cta_sp a{
		position: relative;
		display: block;
		width: 100%;
		overflow: hidden;}
	#cta_sp a::after {
		content: '';
		position: absolute;
		top: -10%;
		left: -20%;
		width: 40px;
		height: 100%;
		transform: scale(2) rotate(20deg);
		background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
		/* アニメーション */
		animation-name: shiny;
		animation-duration: 3s;
		animation-timing-function: ease-in-out;
		animation-iteration-count: infinite;}
	@keyframes shiny {
		0% { left: -20%; }
		10% { left: 120%; }
		100% { left: 120%; }
	}
	#cta_sp2 .cta_sp2_line{position: fixed; bottom: 23vw; right: 1vw; width: 34vw; z-index: 9999; display: block;}
	#cta_sp2 .cta_sp2_line img{width: 100%;}


	/*フォーム*/
	.formWrap__bg{width: 100%; margin: 0 auto;}
	#formWrap{width: 90%; margin: 0 auto; padding: 15px;}
	#formWrap h2{font-size: 1.3rem; color: #FF555D; font-weight: bold; text-align: center; background: #fff;}
	#formWrap h2:after{background: none;}
	.formTable{width: 100% !important; padding: 0;}
	.formTable th {width: 100% !important; border: 4px solid #fff; display: block; padding: 0px;}
	.formTable td {font-size: 0.9rem;}
	.formTable .th2 {background: #eee;}
	.formTable td{width: 100% !important; border: 0; display: block;}
	.formTable input{ margin-bottom: 10px;}
	.formTable textarea{width: 100%; padding: 10px; }
	.formWrap__botton{text-align: center; margin:20px auto;}
	.formWrap__botton__submit{ width: 70%; height:15vw; background-size: contain; font-size: 1.1rem; }
	.formWrap__botton{text-align: center; margin:20px auto;}
	.formWrap__policy{width: 100%; height: 150px; margin: 30px auto ; overflow: auto;  border: 1px solid #ccc; padding: 20px;}
	.formWrap__policy p{font-size: 0.8rem; margin-bottom: 20px; line-height: 1.5rem;}
	.formTable__sutxt{line-height: 1.0rem; margin-top: 3px;}
	#formWrap .form__date input{width: 80%;}
	.formTable .formtextarea{width:100%;}
	.formTable .formtextareaADD{width:60%;}
	.formTable label{line-height: 2rem; font-size: 0.95rem; padding-left: 3vw;}
	.formWrap__policy__agree{text-align: center; margin-top: 20px auto;}
	input[type="submit"], input[type="button"] { -webkit-appearance: none; }
	.formTable .serect_margin input{margin-bottom: 7px; font-size: 0.8rem;}
	.formTable .serect_margin select{margin-bottom: 15px; font-size: 0.8rem;}

	/*フォーム機能*/
	#formWrap2{width: 90%; margin: 10px auto 50px;}
	.error_messe_h3{ font-size: 1.0rem; }
	.error_messe{ margin:0 auto 10px; width: 95%;}
	.form__error__back{font-size: 1.0rem; letter-spacing: 1px; border-radius: 10px; width: 50%; margin: 0 auto; display: block;}
	.form__error__next{font-size: 1.0rem; letter-spacing: 1px; border-radius: 10px; width: 50%; margin-bottom: 10px; font-weight: bold;}
	.form__fix__h3{padding: 10px; margin-top: 30px;}
	.form__fix__h3__tx{padding: 0 20px;}

	/*サンキューページ*/
	.form__submit{width: 100%; padding: 20px 0; margin: 20px 0;}
	.form__submit  h2{font-weight: bold; text-align: center; font-size: 1.0rem;}
	.form__submit__sub{margin: 20px auto 0; font-size: 1.0rem; letter-spacing: 1px; width: 80%; font-weight: bold;}
	.form__submit__txtarea{width: 90%; margin: 0 auto;}
	.form__submit__area{width: 100%; margin: 0 auto;}
	.form__submit__area a{width: 50%; margin: 0 auto;}
	.form__submit__area img{width: 80%; margin: 20px auto; display: block;}

	/*コピーライト*/
	#cnt_copy p{font-size: 0.8rem; padding: 10px 0;}
	#cnt_copy2 p{text-align: center; padding: 10px; color: #fff;}


	/*===============================================
	ハンバーガーアイコンをCSSだけで表現
	===============================================*/
	#nav-drawer {position: relative;}
	/*アイコンのスペース*/
	#nav-open {
	  display: inline-block;
	  width: 30px;
	  height: 22px;
	  vertical-align: middle;
	  position: fixed;
	  top: 10px;
	  right: 10px;
	  z-index: 9999;
	}
	#nav-open span, #nav-open span:before, #nav-open span:after {
	  position: absolute;
	  height: 4px;/*線の太さ*/
	  width: 30px;/*長さ*/
	  border-radius: 3px;
	  background: #58B13B;
	  display: block;
	  content: '';
	  cursor: pointer;
	}
	#nav-open span:before {
	  bottom: -8px;
	}
	#nav-open span:after {
	  bottom: -16px;
	}
	/*閉じる用の薄黒カバー*/
	#nav-close {
	  display: none;/*はじめは隠しておく*/
	  position: fixed;
	  z-index: 99;
	  top: 0;/*全体に広がるように*/
	  left: 0;
	  width: 100%;
	  height: 100%;
	  background: black;
	  opacity: 0;
	  transition: .3s ease-in-out;
	}
	/*中身*/
	#nav-content {
	  overflow: auto;
	  position: fixed;
	  top: 0;
	  right: 0;
	  z-index: 9999;/*最前面に*/
	  width: 60%;/*右側に隙間を作る（閉じるカバーを表示）*/
	  max-width: 330px;/*最大幅（調整してください）*/
	  height: 100%;
	  background: #fff;/*背景色*/
	  transition: .3s ease-in-out;/*滑らかに表示*/
	  -webkit-transform: translateX(105%);
	  transform: translateX(105%);/*左に隠しておく*/
	}
	/*チェックが入ったらもろもろ表示*/
	#nav-input:checked ~ #nav-close {
	  display: block;/*カバーを表示*/
	  opacity: .5;
	}
	#nav-input:checked ~ #nav-content {
	  -webkit-transform: translateX(0%);
	  transform: translateX(0%);/*中身を表示（右へスライド）*/
	  box-shadow: 6px 0 25px rgba(0,0,0,.15);
	  background: #000;
	  background: rgba(0,0,0,0.3);
	  z-index: 99999;
	}
	/*チェックボックス等は非表示に*/
	.nav-unshown {
	  display:none;
	}
	.MainImage_navi li{background: #fff; width: 80%; margin:13px auto; text-align: center; font-size: 0.9rem;}
	.MainImage_navi li a{ color: #000; width: 100%; display: block; padding: 5px; font-size: 0.9rem;}
	.MainImage_navi .MainImage_navi_link{background: none;}
	.MainImage_navi .MainImage_navi_link a{width: 100%; padding: 0;}
	.MainImage_navi .MainImage_navi_link img{width: 100%;}
	/*===============================================
	ハンバーガーアイコン終わり
	===============================================*/

	/* ===== 料金内訳セクション SP ===== */
	#cnt-fee{padding: 40px 5%;}
	#cnt-fee .cnt_wrap{width: 100%;}
	#cnt-fee .fee-lead{font-size: 1.1rem; margin-bottom: 28px; line-height: 1.7;}
	#cnt-fee .fee-lead .fp{margin: 0 4px;}
	#cnt-fee .fee-boxes{flex-direction: column; gap: 24px;}
	#cnt-fee .fee-free{margin-right: 0;}
	#cnt-fee .cube-red{margin: 15px 15px 0 0; width: 200px; height: 175px;}
	#cnt-fee .fee-plus{margin: 0;}
	#cnt-fee .cube-stack{margin: 15px 15px 0 0;}
	#cnt-fee .cube-yellow, #cnt-fee .cube-orange{width: 200px;}
	#cnt-fee .fee-note{margin-top: 30px; font-size: 0.78rem;}

	/* ===== 危機訴求セクション SP ===== */
	#cnt-danger{padding: 40px 5%;}
	#cnt-danger .cnt_wrap{width: 100%;}
	#cnt-danger .danger-lead{margin-bottom: 25px;}
	#cnt-danger .dl1{font-size: 0.8rem; padding: 7px 14px; margin-bottom: 16px; white-space: nowrap;}
	#cnt-danger .dl1 em{font-size: 1rem;}
	#cnt-danger .dl2{font-size: 1.45rem;}
	#cnt-danger .dl2 span{font-size: 1.6rem;}
	#cnt-danger .dmg-grid{margin-bottom: 30px;}
	#cnt-danger .dmg-card{width: 48%; margin-bottom: 18px;}
	#cnt-danger .dmg-ph{height: 130px; border-radius: 6px;}
	#cnt-danger .dmg-badge{font-size: 0.8rem; padding: 4px 14px; left: 6px; bottom: 6px;}
	#cnt-danger .dmg-cap{font-size: 0.85rem; margin-top: 8px; line-height: 1.4;}
	#cnt-danger .danger-warn{font-size: 1.05rem; margin-bottom: 26px;}
	#cnt-danger .danger-warn .warn-big{font-size: 1.15rem;}
	#cnt-danger .danger-warn .warn-big strong{font-size: 1.7rem;}
	#cnt-danger .danger-cta{font-size: 1.1rem; padding: 18px 12px;}
	#cnt-danger .danger-cta span{font-size: 1.4rem;}

	/* ===== 施工事例セクション SP ===== */
	#cnt-case{padding: 0 0 40px;}
	#cnt-case .case-bar{font-size: 1.25rem; letter-spacing: 1px; padding: 16px 10px; margin-bottom: 28px;}
	#cnt-case .cnt_wrap{width: 100%; padding: 0 5%; box-sizing: border-box;}
	#cnt-case .case-row{margin-bottom: 30px;}
	#cnt-case .case-head{margin-bottom: 16px;}
	#cnt-case .case-row{padding: 16px 14px 18px; margin-bottom: 26px;}
	#cnt-case .case-tag{font-size: 0.9rem; padding: 8px 24px 8px 12px;}
	#cnt-case .case-h-ttl{font-size: 0.92rem; margin-left: 12px; line-height: 1.4;}
	#cnt-case .case-body{flex-direction: column; align-items: stretch; gap: 14px; margin-bottom: 16px;}
	#cnt-case .case-img{width: 100%;}
	#cnt-case .case-img img{height: 190px;}
	#cnt-case .sec-label{font-size: 0.95rem;}
	#cnt-case .sec-text{font-size: 0.9rem; line-height: 1.7;}
	#cnt-case .case-cost{flex-wrap: nowrap;}
	#cnt-case .cost-box{max-width: none;}
	#cnt-case .cb-label{font-size: 0.62rem; letter-spacing: 0; padding: 5px 2px;}
	#cnt-case .cb-amt{font-size: 1.15rem; padding: 8px 2px;}
	#cnt-case .cb-amt em{font-size: 0.65rem;}
	#cnt-case .cost-plus{font-size: 1.1rem; padding: 0 5px;}
	#cnt-case .case-summary{font-size: 0.9rem; line-height: 1.7; padding: 12px 14px;}

	/* ===== 費用目安セクション SP ===== */
	#cnt-estimate{padding: 40px 5%;}
	#cnt-estimate .cnt_wrap{width: 100%;}
	#cnt-estimate .est-lead{margin-bottom: 25px;}
	#cnt-estimate .est-lead .s1{font-size: 1.25rem; margin-bottom: 6px;}
	#cnt-estimate .est-lead .s2{font-size: 1.45rem;}
	#cnt-estimate .est-card{max-width: 100%; padding: 16px; border-width: 3px;}
	#cnt-estimate .est-card__ttl{font-size: 1.3rem; letter-spacing: 2px; padding: 12px 6px; margin-bottom: 18px;}
	#cnt-estimate .est-cond{font-size: 0.95rem; padding-bottom: 10px; margin-bottom: 12px;}
	#cnt-estimate .est-cond span{font-size: 0.95rem;}
	#cnt-estimate .est-unit{font-size: 0.9rem;}
	#cnt-estimate .est-price{white-space: nowrap;}
	#cnt-estimate .est-price .num{font-size: 2rem;}
	#cnt-estimate .est-price .yen{font-size: 1rem;}
	#cnt-estimate .est-price .tilde{font-size: 1.35rem; margin: 0 2px;}
	#cnt-estimate .est-price .tax{font-size: 0.8rem;}
	#cnt-estimate .est-note{font-size: 0.7rem;}

}
