@charset "UTF-8";

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

          base.css

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


/*----------------------------------------
	common
----------------------------------------*/
.base_02 .ttl_01 {
    margin-bottom: 20px;
    padding: 10px 15px;
	line-height: 1.4;
    color: #fff;
    background-color: #ff6a05;
}


.base_02 p {
	line-height: 1.7;
	margin: 0.8em 0 1.2em;
	padding: 0 10px;
}

.base_02 img {
	margin-bottom: 10px;
}

.base_02 dl {
	padding: 0 10px;
}
.base_02 dt {
	line-height: 1.7;
	font-weight: bold;
}

.base_02 dd {
	line-height: 1.7;
	margin: 0.8em 0 1.2em;
}


.campaign p {
	font-size: 16px;	
	line-height: 1.7;
	margin: 0.8em 0 1.2em;
}

.f24 {
	font-size: 24px;
}
.f32 {
	font-size: 32px;
}

.f32_f24 {
	font-size: 32px;
}

/*sp*/
@media (max-width: 767px) {

	.base_02 .f32_f24 {
		font-size: 24px;
	}
	
	.base_02 .sp_40 {
		width: 40%;
		height: auto;
		margin-bottom: 15px;
	}	
	.base_02 .sp_100 {
		width: 100%;
		height: auto;
		margin-bottom: 15px;
	}	

}


.ttl_01 {
    padding: 15px 30px;
    color: #FFF;
    background-color: #ff6a05;
    font-size: 22px;
	line-height: 1.6;
}

.ttl_02 {
    position: relative;
    margin-bottom: 30px;
    padding: 15px 10px;
    border-top: 5px solid #ff6a05;
    border-bottom: 1px dotted #ff6a05;
    font-size: 22px;
    font-weight: bold;
	line-height: 1.6;
}

.ttl_03 {
    margin-bottom: 30px;
    padding: 15px 20px;
    border-left: solid 5px #009944;
    background-color: #fff8ef;
    font-weight: bold;
	line-height: 1.6;
}
.ttl_04 {
    margin-bottom: 20px;
    padding: 0 0 15px 10px;
    border-bottom: 3px solid #009944;
    color: #009944;
    font-weight: bold;
	line-height: 1.6;
}



a.link {
  position: relative;
  display: block;
  width: 100%;
  max-width: 90%;
  height: 60px;
  line-height: 60px;
  margin: 15px auto;
  text-align: center;
  color: #fff;
  background: #ff6a05;
  font-size: 18px;
  font-weight: bold;
  border-radius: 10px;
}
a.link:before {
  content: "\f105";
  font-family: FontAwesome;
  position: absolute;
  right: 10px;
  top: 0px;
  color: #fff;
  font-size: 18px;
  z-index: 100;
  -moz-transition-duration: 0.8s;
  -o-transition-duration: 0.8s;
  -webkit-transition-duration: 0.8s;
  transition-duration: 0.8s;
}
a.link:hover {
  text-decoration: none;
  background-color: #ffb008;
}

/*----------------------------------------
	youtube
----------------------------------------*/

.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}
.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/*----------------------------------------
	googlemap
----------------------------------------*/

.googlemap {
	position: relative;
	width: 100%;
	min-height: 400px;
	padding-top: 56.25%;
}
.googlemap iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/*----------------------------------------
	検索
----------------------------------------*/

.searchform {
  position: relative;
}
 
.searchfield {
  font-size: 14px;
  width: 100%;
  padding: 15px 10px;
  border: solid 1px #bbb;
  border-radius: 4px;
  background-color: #efefef;
}
 
.searchsubmit {
  font-family: FontAwesome;
  font-size: 20px;
  position: absolute;
  top: 0;
  right: 3%;
  margin-top: 15px;
  padding: 0;
  cursor: pointer;
  color: #ff6a05;
  border: none;
  background: transparent;
}
 
.searchsubmit:hover {
  opacity: .6;
}

.search_404{
	text-align: center;
	line-height: 2.0;
	font-size: 18px;
}

/* ----------------------------------------
* pagenation
---------------------------------------- */
.pagenation {
  margin: 0 0 60px 0;
  padding: 0;
	text-align: center;
}

.pagenation span, .pagenation a {
  display: inline-block;
  height: 35px;
  line-height: 35px;
  margin: 0 5px 10px;
	padding: 0 10px;
  vertical-align: middle;
  text-align: center;
  font-size: 18px;
  box-shadow: 0 5px 0 0 #e2e2e2;
  border: 1px solid #3e2723;
  background-color: #fff;
  transition: color 0.35s ease 0s, background-color 0.35s ease 0s;
  color: #252525;
}

.pagenation a:hover {
  background-color: #ff6a05;
  color: #fff;
  text-decoration: none;
}

.pagenation .current {
  background-color: #ff6a05;
  box-shadow: 0 5px 0 0 #e2e2e2;
  color: #fff;
  font-size: 18px;
}



/*----------------------------------------
	お客様声
----------------------------------------*/

.voice_list p {
    line-height: 1.7;
    margin: 0.8em 0 1.2em;
}

.voice_list .name p {
	display: inline-block;
}



.voice_list .voice_photo {
	margin: 0.5em 0 0.5em 1em;
	width: 40%;
}

.voice_list .voice_photo img {
	width: 100%;
	height: auto;
}

table.fixed_table {
	width: 100%;
    border-collapse: separate;
    border-spacing: 0;
	-webkit-border-horizontal-spacing: 20px;
    -webkit-border-vertical-spacing: 10px;
    table-layout: fixed;
    margin-bottom: 30px;
}

table.fixed_table td {
    background: #fff;
    padding: 18px 15px;
}





/*sp*/
@media (max-width: 767px) {
	
	#voice_photo {
		margin: 0.5em auto 0.5em auto;
		width: 90%;
		text-align: center;
		float: none;
	}

	table.fixed_table {
		width: 100%;
		-webkit-border-horizontal-spacing: 5px;
		-webkit-border-vertical-spacing: 0px;
		margin-bottom: 5px;

	}

	table.fixed_table td {
		display: block;
		margin-bottom: 5px;
		padding: 15px 10px;
	}

}




/*----------------------------------------
	お客様写真一覧
----------------------------------------*/

.base_02 .top_gallery li {
	float: left;
	margin-top: 10px;
	text-align: center;
	width: 33%;
}
.base_02 .top_gallery img {
	outline: 2px solid #cfcfcf;
}


/*----------------------------------------
	お悩みリストボックス
----------------------------------------*/


.base_02 .trouble_list {
	position: relative;
	border-top: 8px solid #36231c;
	background: #fbf0db;
	margin-bottom: 30px;
	padding: 0 8px 8px;
}
.base_02 .trouble_list ul{
	background: #fff;
	border-bottom:1px solid #d2bc93;
	border-left:1px solid #d2bc93;
	border-right:1px solid #d2bc93;
	padding: 30px 60px;
}

.base_02 .trouble_list ul::before {
	content: '';
	background: url(../img/list_bg.png) no-repeat;
	background-size: cover;
	position: absolute;
	right: 0px;
	top: 0px;
	width: 240px;
	height: 66px;
	z-index: 100;
}

.base_02 .trouble_list ul li{
	list-style-type: none;
	background: url(../img/list-check.png) no-repeat scroll left 7px transparent;
	font-size: 20px;
	line-height: 2;
	padding: 0 0 0 30px;
}

/*sp*/
@media (max-width: 767px) {

	.base_02 .trouble_list {
		padding: 10px 5px;
		margin: 20px 0;
	}
	.base_02 .trouble_list ul{
		background: transparent;
		border-bottom:none;
		border-left:none;
		border-right:none;
		padding: 5px 10px;
	}

	.base_02 .trouble_list ul::before {
		background: transparent;
	}

	.base_02 .trouble_list ul li{
		background: url(../img/list-check.png) no-repeat scroll left 7px transparent;
		font-size: 16px;
		padding: 0 0 0 30px;
	}

}



/*----------------------------------------
	ビフォーアフター
----------------------------------------*/

.base_02 .before_after ul {
	margin: 0.8em 0 1.2em;
}

.base_02 .before_after ul li{
	margin: 0 5px;
}


/*----------------------------------------
	選ばれる理由
----------------------------------------*/

.base_02 .top_point h3 {
	border-bottom: 3px solid #ffb008;
	padding: 15px 0 15px 25px;
	margin-bottom: 10px;
	font-size: 20px;
	font-weight: normal;
}

/*----------------------------------------
	推薦の声
----------------------------------------*/



.base_02 .new ul {
	margin: 1em 0 1.2em 2em;
}


.base_02 .new ul li {
	line-height: 1.7;
	list-style-type: disc;
}

.base_02 .new ol {
	margin: 1em 0 1.2em 2em;
}


.base_02 .new ol li {
	line-height: 1.7;
	list-style-type: decimal;
}


