/*===================================================
リフォーム会使用
====================================================*/

.content h3 {color:#01a369; font-size:1.25em; margin-bottom:0.5em; padding-left:0.5em; border-left:0.3em solid #01a369;}

/*---------------------------------------------
	吹き出し
  ---------------------------------------------*/
  
.re_balloon,
.re_balloon2{
margin-bottom: 2em;
position: relative;
}
.r_balloon:before,.r_balloon:after,
.r_balloon2:before,.r_balloon2:after {
clear: both;
content: "";
display: block;
}
.r_balloon figure {
width: 100px;
height: 100px;
}
.r_balloon2 figure {
width: 200px;
height: 200px;
}
	@media screen and (max-width: 630px){
		.r_balloon2 figure {width: 120px;height: 120px;}
	}
	@media screen and (max-width: 525px){
		.r_balloon2 figure {width: 100px;height: 100px;}
	}
	
.r_balloon-image-left {
float: left;
margin-right: 20px;
}
.r_balloon-image-right {
float: right;
margin-left: 20px;
}
.r_balloon2 figure img,
.r_balloon figure img {
width: 100%;
height: 100%;
/*border: 1px solid #aaa;
border-radius: 50%;*/
margin: 0;
}
.r_balloon-image-description {
padding: 5px 0 0;
font-size: 10px;
text-align: center;
}
.r_balloon-text-right,.r_balloon-text-left {
position: relative;
padding: 10px;
border: 2px solid;
border-radius: 10px;
max-width: -webkit-calc(100% - 120px);
max-width: calc(100% - 120px);
display: inline-block;
}
.r_balloon-text-right {
border-color: #aaa;
}
.r_balloon-text-left {
border-color: #aaa;
}
.balloon-text-right {
float: left;
}
.r_balloon-text-left {
float: right;
}
.r_balloon p,
.r_balloon2 p {
margin: 0 0 10px;
font-size:1.2rem;
}
.r_balloon p:last-child,
.r_balloon2 p:last-child {
margin-bottom: 0;
}
p .r-title {
font-size:1.6rem;
font-weight:700;
color: #F54E8C;
margin: 0 0 10px;
}
/* 三角部分 */
.r_balloon-text-right:before {
position: absolute;
content: '';
border: 10px solid transparent;
border-right: 10px solid #aaa;
top: 15px;
left: -20px;
}
.r_balloon-text-right:after {
position: absolute;
content: '';
border: 10px solid transparent;
border-right: 10px solid #fff;
top: 15px;
left: -18px;
}
.r_balloon-text-left:before {
position: absolute;
content: '';
border: 10px solid transparent;
border-left: 10px solid #aaa;
top: 15px;
right: -20px;
}
.r_balloon-text-left:after {
position: absolute;
content: '';
border: 10px solid transparent;
border-left: 10px solid #fff;
top: 15px;
right: -18px;
}

@media screen and (max-width: 580px){
	.r_balloon-text-right,.r_balloon-text-left {
	max-width: -webkit-calc(100% - 20px);
	max-width: calc(100% - 20px);
	}
}

.box_red {
/*position: relative;*/
padding: 10px;
border: 5px solid /*#FFCE00*/ #01a369;
border-radius: 10px;
max-width: -webkit-calc(100% - 120px);
max-width: calc(100% - 120px);
/*display: inline-block;*/
margin: 20px auto 20px;
}

@media screen and (max-width: 580px){
	.box_red {
	max-width: -webkit-calc(100% - 20px);
	max-width: calc(100% - 20px);
	}
}


.box_red img {
width: 100px !important;
height: 100px !important;
}
.box_red-right {
float: right;
margin-left: 20px;
}
p .o-title {
font-size:1.6rem;
font-weight:700;
color: /*#FFCE00*/ #01a369;
margin: 0 0 10px;
}

/* 初期状態にリセット*/
.reform_img_c{
  	max-width: initial; important!;
	color: initial;
	font-size: initial;
	text-shadow: initial;
	width:100%;
  	text-align: center;
	margin: 15px auto 15px;
}

.reform_img_c img{
	max-width: 500px;
	width: 500px;
}

@media screen and (max-width: 580px){
.reform_img_c img{
    max-width: 100%;
	width: 100%;}
}

/* 画像フロート */
.float_center figure {
text-align:center; 
margin-right:1.5em; 
margin-bottom:1.5em; !important;
}


/*.ribbon11-2-parent{
	text-align: center;
}

.ribbon11-2 {
    display: inline-block;
    position: relative;
    height: 45px;
    vertical-align: middle;
    text-align: center;
    box-sizing: border-box;
}

.ribbon11-2:before{
    content: '';
    position: absolute;
    width: 10px;
    bottom: -10px;
    left: -35px;
    z-index: -2;
    border: 20px solid #a5cff3;
    border-left-color: transparent;
}

.ribbon11-2:after{
    content: '';
    position: absolute;
    width: 10px;
    bottom: -10px;
    right: -35px;
    z-index: -2;
    border: 20px solid #a5cff3;
    border-right-color: transparent;
}

.ribbon11-2 span {
    display: inline-block;
    position: relative;
    margin: 0;
    padding: 0 20px;
    line-height: 45px;
    font-size: 20px;
	font-weight: 700;
    color: #244c8f;
    text-shadow: 0 0 2px #FFF;
    background: -webkit-repeating-linear-gradient(-45deg, #b0daff, #b0daff 3px,#cfe8ff 3px, #cfe8ff 7px);
    background: repeating-linear-gradient(-45deg, #b0daff, #b0daff 3px,#cfe8ff 3px, #cfe8ff 7px);
}

.ribbon11-2 span:before {
    position: absolute;
    content: '';
    top: 100%;
    left: 0;
    border-bottom: solid 10px transparent;
    border-right: solid 15px #7fafd9;
}

.ribbon11-2 span:after {
    position: absolute;
    content: '';
    top: 100%;
    right: 0;
    border-bottom: solid 10px transparent;
    border-left: solid 15px #7fafd9;
}*/

/*---------------------------------------------
	画像センタリング
  ---------------------------------------------*/
.image {
  display: block;
  margin: 0 auto;
  margin-left: auto;/*これでもOK*/
  margin-right: auto;/*これでもOK*/
}

/*---------------------------------------------
	リフォーム会　黄色見出し
  ---------------------------------------------*/
.reform_title {
background: #f6bba6;/*背景色*/
padding: 0.5em 0.5em 0.5em 1em;/*文字まわり（上下左右）の余白*/
color: #fff;
font-size: 1.5em;
font-weight: 800;
margin-bottom: 15px;
font-family: 'Kiwi Maru', sans-serif;
}

/*---------------------------------------------
	リフォーム会　リストスタイル
  ---------------------------------------------*/

ul.reform{
  padding: 0 0.7em;
  list-style: none;
}
ul.reform li{
  position: relative;
  padding: 0 0 0.5em 1.8em;
  font-size: 15px;
  /*font-weight: bold;
  color: #fff;
  background: #5ab0f9;*/
}
ul.reform li:last-child{
  border:none;
  margin: 0;
}
ul.reform li:before{
  font-family: FontAwesome;
  content: "\f04b";
  position: absolute;
  left: 0.8em;
  color: #F95AB7;
  font-size: 0.8em;
  font-weight: normal;
  top: 0.7em;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}


ul.reform2{
  padding: 0.5em 0.7em 0 0.3em;
  list-style: none;
}
ul.reform2 li{
  position: relative;
  padding: 0 0 0.2em 1.5em;
  font-size: 0.9em;
  /*font-weight: bold;
  color: #fff;
  background: #5ab0f9;*/
}
ul.reform2 li:last-child{
  border:none;
  margin: 0;
}
ul.reform2 li:before{
  font-family: FontAwesome;
  content: "\f105";
  position: absolute;
  left: 0.8em;
  color: #29BB67;
  font-weight: bold;
  top: 0.7em;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media screen and (min-width: 768px){
.wid80 img{
    max-width: 80%;
	width: 80%;}
}

/*---------------------------------------------
	回り込み解除
  ---------------------------------------------*/
  .clear {
  clear:both;
  }
  
/*---------------------------------------------
	SPのみ改行
  ---------------------------------------------*/
@media screen and (max-width: 1000px){
.clear1000 { clear:both; }
}

/*---------------------------------------------
	カラム
  ---------------------------------------------*/
*, *:before, *:after {
box-sizing: border-box;
}

.col_2 img,
.col_3 img{
	width: 100%;
}

.col_2{
width: 100%;
display: flex;
display: -ms-flexbox; /* IE10 */
flex-wrap: wrap;
-ms-flex-wrap: wrap; /* IE10 */
}
.col_2 > div{
width: 48%;
padding: 15px;
border: solid 2px #ededed;
margin: 7px;}

	@media screen and (max-width: 895px) {
	.col_2 > div{width: 47%;}
	}
	@media screen and (max-width: 538px) {
	.col_2 > div{width: 46%;}
	}
	@media screen and (max-width: 480px) {
	.col_2 > div{width: 100%;}
	}


.col_3{
width: 100%;
display: flex;
display: -ms-flexbox; /* IE10 */
flex-wrap: wrap;
-ms-flex-wrap: wrap; /* IE10 */
}
.col_3 > div{
width: /*33.33333%*/ 31.55555%;
padding: 15px;
border: solid 2px #ededed;
margin: 7px;
}
.col_2 span,
.col_3 span{
font-size:1.1rem;
font-weight:600;
color: #fff;
display: block;
background: #29a3c1;
padding: 10px;
font-family: 'Kiwi Maru', sans-serif;
}

/*.r_border{
border: solid 2px #ededed;
padding: 15px;
}*/

	@media screen and (max-width: 960px) {
	.col_3 > div{width: /*50%*/ 48%;}
	}

	@media screen and (max-width: 797px) {
	.col_3 > div{width: 47%;}
	}

	@media screen and (max-width: 538px) {
	.col_3 > div{width: 46%;}
	}
	
	@media screen and (max-width: 480px) {
	.col_3 > div{width: 100%;}
	}
	
	
	
section table { width: 100%; margin: 0;}
section th, section td  { padding: 5px; border: 1px solid #ccc; font-size:0.9em;}
section th  { background: #ededed; }
section td  { text-align: right; width: 50%;}


@media screen and (min-width: 865px){
.br-sp { display:none; }
}

@media screen and (max-width: 1191px) and (min-width: 855px){
	.re-mg{ clear:both;}
	}
@media screen and (max-width: 900px) {
	.re-mg2{ clear:both;}
	}
	
	
/* 画像 */
section figure img {max-width:100%;}

/* 画像フロート */
.float_left {float:left; margin-right:1.5em; margin-bottom:1.5em;}
.float_right {float:right; margin-left:1.5em; margin-bottom:1.5em;}

/*** 2column ***/
.d_row { display: block; width:100%; }
.d_col_2 { width:48.5%; margin-bottom:50px;float:left;padding: 0 5px 0; }


/*** table ***/
table td,th {
	margin: 0px;
	padding:5px;
}

table.border {
    border: 2px #d6ceb4 solid;
    border-collapse: collapse;
    border-spacing: 0;
}

table.border td {
    border: 1px #dbdbdb solid;
    border-width: 0 0 1px 1px;
}

table.border th {
	/*border: #dbdbdb solid;
	border-width: 0 0 1px 1px;*/
	background: ##eeece4;
	color:#330000;
	font-weight: bold;
	text-align: center;
}