/*
Date created: 2021-11-26
Last Updated: 2025-07-01
Author: Ryu
*/

/*----------------------------------------
	renovefudosan
----------------------------------------*/

html{
	font-family:'游ゴシック体', 'Yu Gothic', YuGothic,'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif !important;
	margin-top: 0 !important;
}
.lh_20{ line-height: 2; }
.lh_21{ line-height: 2.1; }
.lh_22{ line-height: 2.2; }
.lh_23{ line-height: 2.3; }
.lh_24{ line-height: 2.4; }
.lh_26{ line-height: 2.6; }

.text_arvo{
	font-family: 'Arvo', serif;
	font-weight: 700;
}
.text_orange{
	color: #e05c33;
}
.text_36{
	font-size: 3.6rem;
}

.max_respon{ max-width: 100%; }

/*header*/
.renova_head{
	position: relative;
	width: 100%;
	max-width: 1300px;
	box-sizing: border-box;
	padding-left: 20px;
	padding-right: 20px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 30px;
	border-bottom: none;
	z-index: 10;
}
.renova_head h1{
	width: 20.63%;
	float: left;
}
.renove_head_shiryo{
	float: right;
	width: 8.73%;
	margin-right: 6%;
	margin-left: 3%;
}
.renove_head_tel{
	float: right;
	width: 13.49%;
}
.btn_menu{
	position: absolute;
	width: 32px;
	height: 30px;
	right: 20px;
	top: 32px;
	cursor: pointer;
	transition: all 0.5s;
	z-index: 51;
}
.btn_menu span{
	position: absolute;
	left: 0;
	width: 100%;
	height:2px;
	background: #000;
	transition: all 0.4s;
}
.open .btn_menu span{
	background: #fff;
}
.btn_menu span:nth-child(1){
	top: 0;
}
.btn_menu span:nth-child(2){
	top: 14px;
}
.btn_menu span:nth-child(3){
	bottom: 0;
}
.open .btn_menu span:nth-child(1){
	transform: rotate(45deg);
	top: 15px;
}
.open .btn_menu span:nth-child(2){
	opacity: 0;
}
.open .btn_menu span:nth-child(3){
	transform: rotate(-45deg);
	bottom: 13px;
}
.drawer{
	position: fixed;
	background: rgba(0, 0, 0, 0.8);
	top: 0;
	right: 0;
	width: 100%;
	height: 100vh;
	color: #d0c077;
	display: flex;
	justify-content: center;
	visibility: hidden;
	opacity: 0;
	transform: translateX(100%);
	transition: 0.5s ease-in-out;
	z-index: 50;
	font-size: 2rem;
}
.drawer ul{
	text-align: center;
	padding-top: 100px;
}
.drawer ul li{
	width: 100%;
	position: relative;
	transform: translateX(-150px);
	transition: transform 0.5s ease;
	text-align: center;
}
.drawer ul li:nth-child(2){ transition-delay: 0.15s; }
.drawer ul li:nth-child(3){ transition-delay: 0.25s; }
.drawer ul li:nth-child(4){ transition-delay: 0.35s; }
.drawer ul li:nth-child(5){ transition-delay: 0.45s; }
.drawer ul li:nth-child(6){ transition-delay: 0.55s; }
.drawer ul li a{
	display: inline-block;
	padding: 10px;
}
.drawer ul li img{
	height: 50px;
}
.drawer ul li a:hover{
	animation: drawer 1.4s;
	color: #fff;
}
.drawer ul li a{
	display: inline-block;
	color: #fff;
	text-decoration: none;
	padding: 15px;
}
.drawer ul li a:hover{
	animation: drawer 1.4s;
	color: #e05c33;
}
@keyframes drawer{
	0%{
		filter: none;
	}
	30%{
		filter: blur(0.8px);
	}
	100%{
		filter: none;
	}
}
.open .drawer{
	visibility: visible;
	opacity: 1;
	transform: translateX(0);
}
.open .drawer ul li{
	transform: translateX(0);
}

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

	.renove_head_shiryo,
	.renove_head_tel{
		display: none;
	}
	.renove_frame{
		padding-right: 3%;
		padding-left: 3%;
	}
	.renova_head h1{
		width: 30%;
	}
	.text_36{
		font-size: 3rem;
	}
	.drawer{
		font-size: 1.6rem;
	}

}/*END*/

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

	.renove_frame{
		padding-right: 4.5%;
		padding-left: 4.5%;
	}
	.renova_head{
		padding-left: 4%;
	}
	.renova_head h1{
		width: 35%;
	}
	.text_36{
		font-size: 2.4rem;
	}
	.drawer{
		font-size: 1.4rem;
	}

}/*END*/

/*header*/
.renove_frame{
	max-width: 1200px;
	width: 100%;
	box-sizing: border-box;
	padding-left: 20px;
	padding-right: 20px;
	margin-right: auto;
	margin-left: auto;
}
.renova_mv{
	position: relative;
}
.renova_mv_bg{
	position: relative;
	left: 50%;
	margin-left: -1000px;
	margin-top: -10px;
}

.home_counselling{
	 position: absolute;
	float: right;
    max-width: 40%;
    top: 53%;
    right: 4%;
}

.renova_copy{
	position: absolute;
	left: 10%;
	top: 22%;
	width: 46%;
	max-width: 657px;
}

/*contents*/
.renove_bg{
	background: #f6f5f5;
}

/*bnr*/
.renove_bnr{
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 960px;
	width: 100%;
}
.renove_bnr img{
	display: block;
	width: 100%;
	vertical-align: top;
}
.renove_bnr:hover{
	position: relative;
	animation:bnr_hover 0.4s ease-in;
}
@keyframes bnr_hover{
	0% {
		top: 0;
	}
	50% {
		top: -5px;
	}
	100% {
		top: 0;
	}
}

.renove_tel{
	display: block;
	margin-right: auto;
	margin-left: auto;
	width: 41.37%;
}

@media print, screen and (min-width: 600px) {

	.renove_bnr img{
		float: left;
		width: 50%;
	}
	.sp_br{
		display: none;
	}

}/*END*/

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

	.renove_tel{
		width: 60%;
	}

}/*END*/

@media screen and (max-width: 599px) {
	.home_counselling{
    max-width: 45%;
    top: 17%;
    right: 4%;
}

	.renove_bnr img:last-child{
		background: #fff;
	}
	.renove_tel{
		width: 80%;
	}
	.renova_mv_bg{
		width: 400%;
		margin-left: -150%;
		left: inherit;
	}
	.renova_copy{
		top: inherit;
		width: 84%;
		bottom: 10%;
		left: -2.4%;
	}

}/*END*/

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

	.renove_tel{
		width: 100%;
	}

}/*END*/

.value_bg{
	float: right;
	width: 100%;
	box-sizing: border-box;
}
.value_l p.m_b50 img{
	margin-top: -80px;
}
.value_l p.text_18{
	padding-left: 10px;
}
.ttl_560{
	max-width: 560px;
	width: 48.27%;
	margin-right: auto;
	margin-left: auto;
}
.m_b200{
	margin-bottom: 200px;
}
.case_bg{
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
	max-width: 1350px;
}
.case_box{
	box-sizing: border-box;
	background: #fff;
	padding-left: 4%;
	padding-right: 4%;
}
.case_box h3{
	padding-top: 20px;
}
.case_label{
	text-align: right;
	margin-top: -120px;
}
.case_label img{
	width: 39.01%;
}
.recommend_bg{
	position: relative;
	background: #333;
}
.recommend_bg li{
	float: left;
	background: #fff;
	box-sizing: border-box;
	padding-left: 2.2%;
	padding-right: 2.2%;
	padding-top: 30px;
	padding-bottom: 30px;
	margin-bottom: 30px;
}
.recommend_bg:after{
	content: "";
	position: absolute;
	left: 50%;
	bottom: -50px;
	margin-left: -25px;
	width: 0;
	height: 0;
	border-left: 50px solid transparent;
	border-right: 50px solid transparent;
	border-top: 50px solid #333;
}
.renove_faq{
	max-width: 960px;
	margin-left: auto;
	margin-right: auto;
}
.renove_q{
	position: relative;
	background: #fff;
	padding: 4px 20px;
	cursor: pointer;
}
.renove_q span{
	display: inline-block;
	margin-right: 10px;
	vertical-align: middle;
}
.renove_q:before,
.renove_q:after{
	content: "";
	background: #000;
	height: 1px;
	width: 12px;
	position: absolute;
	top: 50%;
	transition: all 0.4s;
}
.renove_q:before{
	transform: rotate(-45deg);
	right: 25px;
}
.renove_q:after{
	transform: rotate(45deg);
	right: 33px;
}
.renove_q:hover:before,
.renove_q:hover:after{
	background: #e05c33;
}
.renove_q.renove_open:before{
	transform: rotate(45deg);
}
.renove_q.renove_open:after{
	transform: rotate(-45deg);
}
.answer_block{
	display: none;
}
.ttl_02 img{
	max-width: 467px;
}

@media print, screen and (min-width: 600px) {

	.recommend_bg{
		margin-left: -3.33%;
	}
	.recommend_bg li{
		float: left;
		width: 30%;
		margin-left: 3.33%;
	}

}/*END*/

@media print, screen and (min-width: 769px) {

	.value_l{
		float: left;
		width: 48.27%;
	}
	.value_r{
		float: right;
		width: 44.82%;
	}
	.case_l{
		float: left;
		width: 48.27%;
	}
	.case_r{
		float: right;
		width: 48.27%;
	}
	.case_box{
		position: relative;
		margin-top: -160px;
		z-index: 2;
	}

}/*END*/

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

	.case_bg{
		width: 120%;
		margin-left: -10%;
	}
	.value_bg{
		float: none;
		width: 140%;
	}
	.m_b200{
		margin-bottom: 100px;
	}
	.case_label{
		margin-top: -80px;
	}
	.case_label img{
		width: 30%;
	}
	.ttl_560{
		width: 60%;
	}
	.recommend_bg li{
		padding-left: 3.5%;
		padding-right: 3.5%;
	}
	.recommend_bg:after{
		bottom: -36px;
		margin-left: -18px;
		border-left: 36px solid transparent;
		border-right: 36px solid transparent;
		border-top: 36px solid #333;
	}
	.renove_q{
		padding-right: 45px;
		padding-bottom: 10px;
	}
	.renove_q span{
		vertical-align: -4px;
	}
	.renove_q:before{
		right: 15px;
	}
	.renove_q:after{
		right: 23px;
	}

}/*END*/

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

	.case_bg{
		width: 140%;
		margin-left: -20%;
	}
	.value_bg{
		width: 180%;
	}
	.ttl_560{
		width: 80%;
	}
	.recommend_bg li{
		padding-left: 4.5%;
		padding-right: 4.5%;
	}
	.recommend_bg:after{
		bottom: -24px;
		margin-left: -12px;
		border-left: 24px solid transparent;
		border-right: 24px solid transparent;
		border-top: 24px solid #333;
	}

}/*END*/

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

	.ttl_560{
		width: 100%;
	}

}/*END*/

/*footer*/
.pagetop{
	position: absolute;
	right: 15px;
	bottom: 15px;
	z-index: 2;
	width: 50px;
	transition: all 0.4s;
	margin-bottom: 0;
	opacity: 0.8;
}
.pagetop:hover{
	opacity: 0.5;
}
footer{
	text-align: center;
	padding-top: 80px;
	padding-bottom: 0 !important;
	background: none !important;
}
.renove_foot_logo{
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 20%;
}

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

	footer{
		text-align: center;
		padding-top: 40px !important;
		background: none !important;
	}
	.renove_foot_logo {
		width: 60%;
	}
	.pagetop{
		right: 15px;
		bottom: 15px;
		width: 30px;
	}

}/*END*/

/* renove_table */
.renove_table{
	width: 94%;
}
.renove_table th,.renove_table td{
	padding: 15px 8px;
	box-sizing: border-box;
	text-align: left;
	font-weight: normal;
}
.renove_table tr:nth-child(odd){
	background: #fff;
}

@media screen and (max-width: 599px) {
	.renove_table{
		width:100%;
	}

}/*END*/


/*----------------------------------------
	form_table
----------------------------------------*/

.basic.contact_form{
	width: 100%;
	line-height: 1.8;
	border-bottom: 1px solid #dfc8bb;
}
.basic.contact_form th,
.basic.contact_form td{
	vertical-align: top;
	border-top: 1px solid #dfc8bb;
	box-sizing: border-box;
	padding: 18px 2.5%;
	text-align: left;
}
.basic.contact_form th{
	width:27%;
	max-width:260px;
	background: #f4ebe6;
	font-weight:bold;
}
.basic.contact_form td{
	background: #fff;
}
.basic .add{
	float: none !important;
	margin-right: 0 !important;
}
.btn_send{
	width: 90% !important;
	max-width: 460px !important;
	background: #335b1f !important;
	text-decoration: none !important;
	padding: 24px 35px !important;
	letter-spacing: 1px !important;
	color:#fff !important;
	line-height: 1 !important;
	font-weight: bold !important;
	text-align: center !important;
	display: inline-block !important;
	box-sizing: border-box !important;
	cursor: pointer !important;
}
.btn_back{
	width: 90%;
	max-width: 460px;
	background: #898989;
	text-decoration: none;
	padding: 24px 35px;
	letter-spacing: 1px;
	color:#fff;
	line-height: 1;
	font-weight: bold;
	text-align: center;
	display: inline-block;
	box-sizing: border-box;
	cursor: pointer;
}
.btn_send:hover, .btn_back:hover {
	opacity: 0.7;
}

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

	.basic.contact_form{ line-height: 1.5; }
	.basic.contact_form th,
	.basic.contact_form td{
		display: block;
		width: 100%;
	}
	.basic.contact_form th{ padding: 10px 2% 5px 2%; }
	.basic.contact_form td{
		border: none;
		padding: 10px 2% 10px 2%;
	}
	.basic.contact_form th{
		max-width:100%;
		border-right:none;
	}
	.basic.contact_form td{
		margin-bottom: 15px;
	}

}/*END*/


/*----------------------------------------
	form
----------------------------------------*/

select,
textarea,
input[type="text"],
input[type="search"],
input[type="tel"]{
	border: none;
	padding: 8px 10px !important;
	background: #fff;
	font-family:'游ゴシック体', 'Yu Gothic', YuGothic,'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif;
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	font-size: 1.6rem;
	border-radius: 0;
	border: 1px solid #cccccc !important;
}
input[type="button"]{
	font-family:'游ゴシック体', 'Yu Gothic', YuGothic,'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif;
	-webkit-appearance: none;
	font-size: 1.6rem;
}
button,
input[type="submit"]{
	font-family:'游ゴシック体', 'Yu Gothic', YuGothic,'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif;
	border: none;
	-webkit-appearance: none;
	appearance: none;
	cursor: pointer;
	font-size: 1.6rem;
	vertical-align: middle;
}
select:focus,
textarea:focus,
input[type="text"]:focus,
input[type="url"]:focus,
input[type="tel"]:focus{
	outline: none;
	border: 1px solid #e05c33 !important;
}

.form1{ width: 140px; }
.form2{ width: 220px; }
.form3{ width: 320px; }
.form_all{ width: 100%; }

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

	select,
	textarea,
	input[type="text"],
	input[type="search"],
	input[type="tel"]{
		padding: 8px 8px;
	}
	.form2,
	.form3{
		width: 100%;
	}

}/*END*/



/*----------------------------------------
	contact
----------------------------------------*/

/*エラー*/
.mw_wp_form .error{ color: inherit !important; }
.mw_wp_form span.error{
	color: #c60b0b !important;
	padding-top: 8px;
	display: block !important;
	line-height: 1.4 !important;
	clear: both;
	font-size: 1.4rem !important;
}

/*必須・任意*/
.hissu,
.nini{
	display: inline-block;
	line-height: 1 !important;
	padding: 4px 8px;
	margin-left: 6px;
	vertical-align: middle;
	border-radius: 2px;
	font-size: 1.4rem !important;
	font-weight: bold;
	box-sizing: border-box;
}
.hissu{
	color: #fff;
	background: #a90d0d;
}
.nini{
	color: #000;
	background: #fff;
}

.add span{
	display: inline-block;
	vertical-align: 5px;
	padding-right: 10px;
}
.privacy{
	overflow: hidden;
	/*text-align: center;*/
}
.privacy span{ display: inline-block !important; }
.privacy_error{
	text-align: center;
	background: #fff2f2;
	padding: 2px 10px;
	margin-top: 5px;
}
.privacy.check label{
	padding-top:0;
	padding-bottom: 0;
}
.mw_wp_form .vertical-item{
	margin-right: 0 !important;
}

@media print, screen and (min-width: 769px) {

	/*エラー*/
	td.error{ background: #ffc0c0 !important; }
	.mw_wp_form span.error{
		font-weight: bold;
	}

	.send_btn button,
	.send_btn input{
		margin-left: 5px;
		margin-right: 5px;
		transition: all 0.4s;
	}
	.mw_wp_form_confirm .basic{ margin-bottom: 70px !important; }
	.mw_wp_form td.error{ display: table-cell !important; }

}/*END*/

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

	/*エラー*/
	td.error input,
	.privacy_error{
		background: #ffc0c0 !important;
	}

	/*必須・任意*/
	.hissu,
	.nini{
		padding: 3px 6px;
		margin-left: 4px;
		font-size: 1.2rem !important;
		font-weight: normal;
		vertical-align: 1px;
	}
	.send_btn button{ margin-bottom: 10px; }
	.mw_wp_form .basic th{
		padding-bottom: 10px !important;
	}

}/*END*/

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

	.privacy{
		line-height: 3;
	}

}/*END*/


/*----------------------------------------
	radio checkbox
----------------------------------------*/

.radio input[type="radio"],
.check input[type="checkbox"]{
	display: none;
}
.radio label,
.check label{
	display: inline-block !important;
	position: relative !important;
	cursor: pointer !important;
	margin-left: 10px !important;
	padding: 12px 0 12px 28px !important;
	line-height: 1.2 !important;
}
.radio label:before,
.check label:before{
	position: absolute !important;
	content: "" !important;
	top: 20% !important;
	left: -10px !important;
	width: 30px !important;
	height: 30px !important;
	background: #ebebeb !important;
	border-radius: 50% !important;
	border: 1px solid #ccc !important;
}
.check label:before{ border-radius: 0 !important; }
.radio label,
.check label{
	margin-left: 0\9 !important;
	padding: 11px\9 !important;
}
.radio label:not(:target),
.check label:not(:target){
	margin-left: 10px\9 !important;
	padding: 11px 0 11px 25px\9 !important;
}
.radio label:before,
.check label:before{
	display: none\9 !important;
}
.radio label:not(:target):before,
.check label:not(:target):before{
	display: inline-block\9 !important;
}
.radio input[type="radio"]:checked + label:after{
	position: absolute !important;
	content: "" !important;
	top: 50% !important;
	left: -4px !important;
	width: 20px !important;
	height: 20px !important;
	margin-top: -8px !important;
	border-radius: 50% !important;
	background: #e05c33 !important;
}
.check input[type="checkbox"]:checked + label::after {
	content: "" !important;
	position: absolute !important;
	top: 50% !important;
	box-sizing: border-box !important;
	display: block !important;
	left: -7px !important;
	width: 27px !important;
	height: 14px !important;
	margin-top: -9px !important;
	border-left: 5px solid #e05c33 !important;
	border-bottom: 5px solid #e05c33 !important;
	-webkit-transform: rotate(-45deg) !important;
	transform: rotate(-45deg) !important;
}


/*----------------------------------------
	旧style.cssより
----------------------------------------*/

.mt{margin-left: auto;margin-right: auto;}
.w760{max-width: 760px;display: block;}

@media print, screen and (min-width: 600px){

	.box_l{
		float: left !important;
		width: 49% !important;
	}
	.box_r{
		float: right;
		width: 49% !important;
	}

}/*END*/