@font-face {
	font-family: 'Noto Sans bold';
	src: url('../font/NotoSansCJKjp-Bold.otf');
}

@font-face {
	font-family: 'Noto Sans regular';
	src: url('../font/NotoSansCJKjp-Regular.otf');
}

@font-face {
	font-family: 'Noto Sans dl';
	src: url('../font/NotoSansCJKjp-DemiLight.otf');
}
body {
	font-family: 'Noto Sans bold';
	margin: 0 auto;
}

a {
	color: #000;
}

.spv {
    display: none;
  }

.header_box {
	width: 960px;
	min-width: 960px;
	margin: 0 auto;
	padding: 1% 0;
	padding-bottom: 50px;
	background-color: #fff;
}

#header h1 {
	float: left;
}

#header .tel {
	float: right;
	padding-top: 3px;
}

#header .telTxt {
	float: right;
	font-size: 14px;
	line-height: 16px;
	padding-left: 15px;
}

.bnr_area {
	width: 100%;
	min-width: 960px;
	margin: 0px;
	padding-top: 3px;
	background-color: #EB6100;
	position: fixed;
	top: -100px;
	right: 0;
	left: 0;
	z-index: 9999;
}

.bnr03 {
	padding-left: 8px;
	padding-bottom: 40px;
}

.bnr03 a:hover {
	opacity: 0.7;
}

.bnr_box {
	width: 960px;
	min-width: 960px;
	margin: 0 auto;
	padding: 5px 0;
}

.bnr_box ul {
	width: 100%;
	display: table;
}

.bnr_box ul li {
	width: 35%;
	padding-right: 5px;
	display: table-cell;
	color: #fff;
}

.bnr_box ul li:first-child {
	width: 18%;
	font-size: 17px;
	line-height: 24px;
	vertical-align: middle;
}

.bnr_box ul li:last-child {
	width: 35%;
	padding-right: 0;
	vertical-align: top;
}

.bnr_box ul li img {
	width: 100%;
}

.bnr_box ul li a {
	display: block;
}

.bnr_box ul li a:hover {
	opacity: 0.7;
	display: block;
}

.main_box {
	width: 100%;
	background-color: #FFE100;
}
.main_box .main_inner{
	width: 960px;
	margin: 0 auto;
	position: relative;
}
.main_top {
	width: 960px;
	margin: 0 auto;
	padding-top: 40px;
}

.main_ttl {
	width: 960px;
	margin: 0 auto;
	padding: 10px 0;
}

.main_text {
	width: 960px;
	margin: 0 auto;
	padding-top: 10px;
	padding-left: 10px;
	padding-bottom: 50px;
	font-size: 18px;
	line-height: 28px;
	letter-spacing: -1.2px;
	background: url('../images/house.png') no-repeat center;
	background-position: bottom;
}

.main_text p {
	width: 750px;
}

.main_text02 {
	width: 100%;
	padding-top: 100px;
	background-color: #C8161E;
	position: relative;
}

.main_h1 {
	width: 960px;
	text-align: center;
	margin: 0 auto;
	height: 100px;
	position: absolute;
	top: -4%;
	left: 0;
	right: 0;
}

.main_img {
	position: absolute;
	top: 8px;
	left: 35px;
}

.main_text02 h1 {
	min-width: 550px;
	margin: 0 auto;
	padding: 11px;
	text-align: left;
	text-indent: 8px;
	font-size: 26px;
	line-height: 40px;
	color: #fff;
	position: absolute;
	top: 0;
	left: 23%;
}

.fs {
	font-size: 36px;
	font-family: "メイリオ", sans-serif;
	letter-spacing: 2px;
}

.main_char {
	position: absolute;
	right: 0;
    bottom: -66px;
    z-index: 99;
}

.arrow_under {
	width: 100%;
	min-width: 960px;
	padding-bottom: 60px;
	text-align: center;
}

.failure01 {
	width: 100%;
	background-color: #FFE100;
}
.failure_ttl {
	width: 960px;
	margin: 0 auto;
	padding: 10px 0 25px 0;
	text-align: center;
}

.failure01_box01 {
	width: 960px;
	margin: 0 auto;
	margin-top: 50px;
	padding-bottom: 30px;
	min-height: 400px;
	position: relative;
	overflow: hidden;
}

.experience {
	width: 755px;
	color: #fff;
	background: url('../images/failure_img.png') no-repeat;
	float: left;
}

.experience p {
	padding: 12px 25px 35px 0;
	text-align: center;
	font-size: 27px;
	line-height: 38px;
}

.failure01_char {
	position: absolute;
	top: 0;
	right: 0;
}

.failure01_text {
	font-size: 18px;
	line-height: 28px;
	width: 669px;
	font-family: 'Noto Sans regular';
	float: left;
	padding-top: 20px;
}

.failure01_box02 {
	width: 960px;
	margin: 0 auto;
	min-height: 400px;
	position: relative;
	overflow: hidden;
}

.failure01_char02 {
	float: left;
}

.failure01_img02 {
	float: right;
}

.failure01_img03 {
	float: left;
	padding-top: 20px;
	padding-left: 30px;
}

.failure01_text02 {
	width: 738px;
	line-height: 28px;
	font-size: 18px;
	float: left;
	padding-top: 20px;
	padding-left: 46px;
	font-family: 'Noto Sans regular';
}

.failure01_text02 p {
	font-size: 18px;
}

.failure01_text02 span {
	font-size: 14px;
	line-height: 28px;
}

.failure01_img04 {
	margin-top: 20px;
	padding-left: 70px;
}

/*--------------------よくある失敗例2----------------------*/

.failure02 {
	width: 100%;
	margin-top: 120px;
	background-color: #FFE100;
}

.failure02_box01 {
	width: 960px;
	margin: 0 auto;
	margin-top: 50px;
	min-height: 400px;
	position: relative;
	overflow: hidden;
	padding-bottom: 30px;
}

.failure02_img {
	padding-top: 45px;
	position: absolute;
	top: 0;
	left: 0;
}

.failure02_char {
	position: absolute;
	top: 10%;
	right: 0;
}

.failure02_text {
	line-height: 28px;
	width: 669px;
	float: left;
	padding-top: 10px;
	font-family: 'Noto Sans regular';
}

.failure02_box02 {
	width: 960px;
	margin: 0 auto;
	min-height: 400px;
	position: relative;
	overflow: hidden;
}

.failure02_img02 {
	float: right;
}

.failure02_char02 {
	float: left;
}

.failure02_img03 {
	float: left;
	padding-top: 20px;
	padding-left: 80px;
}

.failure02_text02 {
	min-width: 432px;
	float: left;
	padding-top: 20px;
	padding-left: 80px;
	line-height: 28px;
	font-size: 18px;
	font-family: 'Noto Sans regular';
}

.failure02_img04 {
	float: right;
}


/*--------------------よくある失敗例2　終わり----------------------*/


/*--------------------よくある失敗例3----------------------*/

.failure03 {
	width: 100%;
	margin-top: 120px;
	background-color: #FFE100;
}

.failure03_box01 {
	width: 960px;
	margin: 0 auto;
	margin-top: 50px;
	min-height: 400px;
	position: relative;
	overflow: hidden;
	padding-bottom: 30px;
}

.failure03_img {
	padding-top: 45px;
	position: absolute;
	top: 0;
	left: 0;
}

.failure03_char {
	position: absolute;
	top: 3%;
	right: 0;
}

.failure03_text {
	line-height: 28px;
	width: 669px;
	float: left;
	padding-top: 10px;
	font-family: 'Noto Sans regular';
}

.failure03_box02 {
	width: 985px;
	margin: 0 auto;
	min-height: 400px;
	position: relative;
	overflow: hidden;
}

.failure03_img02 {
	float: left;
}

.failure03_char02 {
	float: left;
}

.failure03_img03 {
	float: left;
	padding-top: 20px;
	padding-left: 20px;
}

.failure03_text02 {
	min-width: 432px;
	float: left;
	padding-top: 20px;
	padding-left: 20px;
	line-height: 28px;
	font-size: 18px;
	font-family: 'Noto Sans regular';
}

.failure03_img04 {
	/*position: absolute;
	bottom: 23px;
	right: 8px;*/
	float: right;
	margin-top: -90px;
}

/*--------------------よくある失敗例3　終わり----------------------*/


/*--------------------よくある失敗例4----------------------*/

.failure04 {
	width: 100%;
	margin-top: 120px;
	background-color: #FFE100;
}

.failure04_box01 {
	width: 960px;
	margin: 0 auto;
	margin-top: 50px;
	padding-bottom: 30px;
	min-height: 400px;
	position: relative;
}

.failure04_img {
	padding-top: 45px;
	position: absolute;
	top: 0;
	left: 0;
}

.failure04_char {
	position: absolute;
	top: 18%;
	right: 0;
}

.failure04_text {
	line-height: 28px;
	width: 669px;
	float: left;
	padding-top: 10px;
	font-family: 'Noto Sans regular';
}

.failure04_box02 {
	width: 960px;
	margin: 0 auto;
	min-height: 400px;
	position: relative;
	overflow: hidden;
}

.failure04_img02 {
	float: right;
}

.failure04_char02 {
	float: left;
}

.failure04_img03 {
	float: left;
	padding-top: 20px;
	padding-left: 48px;
}

.failure04_text02 {
	min-width: 432px;
	float: left;
	padding-top: 20px;
	padding-left: 48px;
	line-height: 28px;
	font-size: 18px;
	font-family: 'Noto Sans regular';
}

.failure04_img04 {
	position: absolute;
	bottom: 40px;
	right: 0;
}

/*--------------------よくある失敗例4　終わり----------------------*/

.renovation {
	width: 100%;
	margin-top: 120px;
	margin-bottom: 60px;
	background-color: #FFE100;
	position: relative;
}

.example_ttl01 {
	width: 100%;
	min-width: 960px;
	margin: 0 auto;
	padding: 35px 0;
	text-align: center;
	background-color: #FFE100;
}

.example_ttl02 {
	width: 100%;
	margin: 0 auto;
	padding: 20px 0 5px 0;
	text-align: center;
	background-color: #0075C2;
}

.example_ttl02 h2 {
	width: 960px;
	margin: 0 auto;
	position: relative;
}

.example_ttl02 h2 span {
	position: absolute;
	bottom: -4%;
	right: 0;
}

.renovation_char {
	position: absolute;
	bottom: -0.3%;
	right: 18%;
}

#case {
	width: 960px;
	margin: 0 auto;
}

#case ul {
	width: 100%;
	margin-bottom: 135px;
	text-align: center;
	display: table;
}

#case ul li {
	width: 25%;
	display: table-cell;
}

#case ul li a:hover {
	opacity: 0.7;
}

.case_box {
	width: 960px;
	margin: 0 auto;
	margin-bottom: 170px;
	overflow: hidden;
}

.case_info_l {
	width: 40%;
	float: left;
}

.case_ttl {
	padding: 20px 0;
	text-align: center;
	border-top: 2px dotted #000;
	border-bottom: 2px dotted #000;
}

.case_ttl h3 {
	padding-top: 20px;
	font-size: 30px;
	line-height: 34px;
	letter-spacing: -2px;
	-webkit-font-family: 'serif';
	-webkit-font-family: 'Noto Sans regular';
	font-weight: normal;
}

.case_before {
	padding: 28px 50px;
	text-align: center;
	position: relative;
}

.arrow_right {
	position: absolute;
	top: 30%;
	right: 0;
}

.case_text {
	margin-bottom: 25px;
	font-family: 'Noto Sans regular';
}

.case_text p {
	padding-left: 6px;
	font-size: 16px;
	line-height: 29.9px;
	border-top: 2px dotted #BBD9E3;
}

.case_text p.text_last {
	padding-left: 6px;
	font-size: 16px;
	line-height: 29.9px;
	border-top: 2px dotted #BBD9E3;
	border-bottom: 2px dotted #BBD9E3;
}

.case_state {
	padding: 10px;
	background-color: #F7EEE1;
	font-family: 'Noto Sans dl';
}

.case_state table {
	width: 90%;
	margin: 0 auto;
	padding: 12px 10px 12px 10px;
}

.case_state table tr {
	border-bottom: 1px solid #D4C9BC;
}

.case_state table tr:last-child {
	border: none;
}

.case_state table td {
	font-size: 16px;
	line-height: 35px;
}

.case_view_r {
	width: 60%;
	height: 100px;
	float: right;
}

.case_img_r {
	float: right;
}

.case_img_r ul {
	margin-top: 10px;
	overflow: hidden;
}

.case_img_r ul li:first-child {
	float: left;
}

.case_img_r ul li:last-child {
	float: right;
}

/*--------------------------------------------------*/

.case_view_l {
	width: 60%;
	float: left;
}

.case_img_l {
	float: left;
}

.case_img_l ul {
	margin-top: 10px;
	overflow: hidden;
}

.case_img_l ul li:first-child {
	float: left;
}

.case_img_l ul li:last-child {
	float: right;
}


.case_info_r {
	width: 40%;
	float: right;
}

.arrow_left {
	position: absolute;
	top: 30%;
	left: 0;
}

.case_text_r {
	margin-bottom: 25px;
	font-family: 'Noto Sans regular';
}

.case_text_r p {
	padding-left: 4px;
	font-size: 16px;
	line-height: 30px;
	border-top: 2px dotted #BBD9E3;
}

.case_text_r p.text_last {
	padding-left: 8px;
	font-size: 16px;
	line-height: 29.9px;
	border-top: 2px dotted #BBD9E3;
	border-bottom: 2px dotted #BBD9E3;
}

.link_box {
	width: 960px;
	margin: 0 auto;
	margin-bottom: 70px;
}

.link_box p {
	text-align: center;
	padding-bottom: 25px;
}

.link_box ul li:first-child {
	padding-bottom: 15px;
}

.link_box ul li a:hover {
	opacity: 0.7;
}

.footer {
	width: 100%;
}

.footer_box {
	width: 100%;
	background-color: #F7EEE1;
}

.footer_bnr {
	width: 960px;
	margin: 0 auto;
}

.footer_bnr h1 {
	padding: 40px 0 20px;
	text-align: center;
}

.footer_bnr ul {
	width: 100%;
	padding-bottom: 45px;
	display: table;
}

.footer_bnr ul li {
	width: 30%;
	padding-right: 15px;
	display: table-cell;
}

.footer_bnr ul li:last-child {
	width: 30%;
	padding-right: 0;
	display: table-cell;
}

.footer_bnr ul li a:hover {
	opacity: 0.7;
}

.copyright {
	width: 100%;
	background-color: #000;
}

.copyright p {
	width: 960px;
	margin: 0 auto;
	padding: 15px 0;
	font-size: 12pt;
	font-family: "メイリオ", sans-serif;
	line-height: 26px;
	text-align: center;
	color: #fff;
}


/*             */

/*      sp     */

/*             */
@media only screen and (max-width:640px) {
  body {
    font: 14px/1.4;
    min-width: 0;
    width: 100%;
  }

  .bnr_area2 {
    width: 100%;
    min-width: 320px;
    margin: 0px;
    padding-top: 0px;
    background-color: #FFF;
    position: fixed;
    top: -100px;
    right: 0;
    left: 0;
    z-index: 9999;
}

  .sp_inner {
    width: 90%;
    margin: 0 auto
  }

  #wrap .sp_mb5p {
    margin-bottom: 5%;
  }

  #wrap .ml97 {
    margin-left: 0;
  }

  body img {
    width: 100%;
  }

  .spv {
    display: block;
  }

  .d_n {
    display: none;
  }

  .pcv {
    display: none;
  }

  .header_box {
    width: 100%;
    min-width: 320px;
    min-height: 40px;
    margin: 0 auto;
    padding: 0;
    background-color: #fff;
	}
  .header_box h1 {
    text-align: center;
    width: 100%;
    margin: auto;
    z-index: 10;
    background-color: #FFF;
    padding: 5px 0 5px;
  }
  .header_box h1 img {
    width: 65%;
    position: relative;
    top: 3px;
	}

.bnr_box {
    width: 100%;
    min-width: 320px;
    margin: 0 auto;
    padding: 0;
}

.bnr_box ul li {
    width: 100%;
    min-width: 320px;
    padding-right: 5px;
    color: #fff;
    display: block;
    text-align: center;
}

.bnr_box ul li:first-child {
    vertical-align: top;
    width: 100%;
    line-height: 0;
}
.bnr_box ul li:last-child {
    width: 100%;
    vertical-align: top;
    line-height: 0;
}

.bnr_area {
    width: 100%;
    min-width: 320px;
    margin: 0px;
    padding-top: 3px;
    background-color: #EB6100;
    position: fixed;
    top: -120px;
    right: 0;
    left: 0;
    z-index: 9999;
}

.main_box {
	width: 100%;
	background-color: #FFE100;
}
.main_box .main_inner{
	width: 100%;
	margin: 0 auto;
	position: relative;
}
.main_top {
	width: 60%;
    margin: 0;
    padding-top: 10px;
    padding-left: 5px;
}
.main_ttl {
	width: 77%;
    margin: 0;
    padding-left: 10px;
}

.main_char {
	width: 40%;
    top: 20px;
}

.main_text {
	width: 100%;
	margin: 0 auto;
	padding-top: 10px;
	padding-left: 0px;
	padding-bottom: 10px;
	font-size: 16px;
    line-height: 24px;
	letter-spacing: -1.2px;
	background: url('../images/sp/sp_house.png') no-repeat center;
	background-position: bottom;
}

.main_text p {
	width: 95%;
	margin: 0 auto;
}

.main_text02 {
	width: 100%;
	padding-top: 120px;
	background-color: #C8161E;
	position: relative;
	margin-bottom:0;
}

.arrow_under {
    width: 100%;
    min-width: 320px;
    padding-bottom: 0px;
}

.arrow_under img{
	width: 50%;
}


.main_h1 {
	width: 95%;
	text-align: center;
	margin: 0 auto;
	height: 130px;
	position: absolute;
	top: -4%;
	left: 0;
	right: 0;
}

.main_img {
	position: absolute;
	top: 20%;
    left: 7px;
    width: 40%;
}

.main_text02 h1 {
	min-width: 170px;
	margin: 0 auto;
	padding: 11px;
	text-align: left;
	text-indent: 0px;
	font-size: 16px;
	line-height: 24px;
	color: #fff;
	position: absolute;
	top: 4%;
	left: 40%;
}

.fs {
    font-size: 24px;
    font-family: "メイリオ", sans-serif;
    letter-spacing: 2px;
}

.failure01_box, .failure02_box, .failure03_box, .failure04_box{
	display: none;
}

.failure01 {
    margin-top: 3em;
}

.failure01_box01 {
    width: 95%;
    margin: 0 auto;
    margin-top: 20px;
    padding-bottom: 30px;
    min-height: 400px;
    position: relative;
    overflow: hidden;
}

.experience {
    width: 70%;
    max-height: 218px;
    color: #fff;
    background: url(../images/sp/sp_failure_img.png) no-repeat;
    background-size: contain;
    float: left;
    padding-bottom: 10px;
}

.experience p {
    text-align: center;
    width: 100%;
    padding: 30px 0;
    font-size: 20px;
    line-height: 27px;
    position: relative;
    /* top: 14px; */
    left: -11px;
}

.failure01_char {
	position: relative;
    width: 30%;
	float: left;
}

.failure01_char img {
    width: 110%;
    position: absolute;
    right: 0px;
    top: 10px;
}

.failure01_text {
    font-size: 18px;
    line-height: 28px;
    width: 95%;
    margin: 0 auto;
    font-family: 'Noto Sans regular';
    float: none;
    padding-top: 20px;
    clear: both;
}

.failure01_box02 {
    width: 95%;
    margin: 0 auto;
    min-height: 400px;
    position: relative;
    overflow: hidden;
}

.failure01_text02 {
    width: 95%;
    margin: 0 auto;
    line-height: 28px;
    font-size: 18px;
    float: none;
    padding-top: 20px;
    padding-left: 0;
    font-family: 'Noto Sans regular';
    clear: both;
}

.failure01_char02 {
    float: left;
    width:20%;
    padding-left: 10px;
}

.failure01_img02{
	width: 75%;
	position: relative;
    top: 60px;
	float: right;
}

.failure01_img03{
	width: 75%;
	padding-left: 0;
	position: relative;
    top: 60px;
	float: right;
}

.failure01_img04 {
   padding-left: 0;
}


.failure_ttl {
    width: 100%;
    margin: 0 auto;
    padding: 10px 0 10px 0;
    text-align: center;
}

.failure_ttl:after {
	content: "\A"url(../images/sp/open.png);
    position: relative;
    white-space: pre;
    top: 5px;
}

.failure_ttl.active:after {
	content: "\A"url(../images/sp/close.png);
    position: relative;
    white-space: pre;
    top: 5px;
}

.failure_ttl img {
    width: 90%;
    margin: 0 auto;
}

.failure02_box01 {
    width: 95%;
    margin: 0 auto;
    margin-top: 20px;
    min-height: 400px;
    position: relative;
    overflow: hidden;
    padding-bottom: 30px;
}

.failure02 {
    width: 100%;
    margin-top: 10px;
    background-color: #FFE100;
}

.failure02_char {
	position: relative;
    width: 30%;
	float: left;
}

.failure02_char img {
    width: 110%;
    position: absolute;
    right: 0px;
    top: 10px;
}

.experience p.failure02_txt {
    text-align: center;
    width: 100%;
    padding: 36px 0;
    font-size: 20px;
    line-height: 27px;
    position: relative;
    top: 4px;
}

.failure02_text {
    line-height: 28px;
    width: 95%;
    float: none;
    padding-top: 10px;
    margin: 0 auto;
    font-family: 'Noto Sans regular';
    clear: both;
}

.failure02_box02 {
    width: 95%;
    margin: 0 auto;
    min-height: 400px;
    position: relative;
    overflow: hidden;
}

.failure02_char02 {
    float: left;
    width:20%;
    padding-left: 10px;
}

.failure02_img02{
	width: 75%;
	position: relative;
    top: 100px;
	float: right;
}

.failure02_img03{
	width: 75%;
	padding-left: 0;
	position: relative;
    top: 100px;
	float: right;
}

.failure02_img04 {
	float: none;
   padding-left: 0;
   margin: 1em 0 2em;
}

.failure02_img img {
    width: 100%;
}

.failure02_text02 {
    width: 95%;
    min-width:250px;
    margin: 0 auto;
    line-height: 28px;
    font-size: 16px;
    float: none;
    padding-top: 20px;
    padding-left: 0;
    font-family: 'Noto Sans regular';
    clear: both;
}

.failure03_box01 {
    width: 95%;
    margin: 0 auto;
    margin-top: 20px;
    min-height: 400px;
    position: relative;
    overflow: hidden;
    padding-bottom: 30px;
}

.failure03 {
    width: 100%;
    margin-top: 10px;
    background-color: #FFE100;
}

.failure03_char {
	position: relative;
    width: 30%;
	float: left;
}

.failure03_char img {
    width: 110%;
    position: absolute;
    right: 0px;
    top: 27px;
}

.experience p.failure03_txt {
    text-align: center;
    width: auto;
    margin: 20px 0 -20px;
    font-size: 20px;
    line-height: 27px;
}

.failure03_text {
    line-height: 28px;
    width: 95%;
    float: none;
    padding-top: 10px;
    margin: 0 auto;
    font-family: 'Noto Sans regular';
    clear: both;
}

.failure03_box02 {
    width: 95%;
    margin: 0 auto;
    min-height: 400px;
    position: relative;
    overflow: hidden;
}

.failure03_char02 {
    float: left;
    width:20%;
    padding-left: 10px;
}
.failure03_char02 img {
    width:115%;
}

.failure03_img02{
	width: 75%;
	position: relative;
    top: 30px;
	float: right;
}

.failure03_img03{
	width: 75%;
	padding-left: 0;
	position: relative;
    top: 30px;
	float: right;
}

.failure03_img04 {
	float: none;
   padding-left: 0;
   margin: 1em 0 2em;
}

.failure03_img img {
    width: 100%;
}

.failure03_text02 {
    width: 95%;
    min-width:250px;
    margin: 0 auto;
    line-height: 28px;
    font-size: 16px;
    float: none;
    padding-top: 20px;
    padding-left: 0;
    font-family: 'Noto Sans regular';
    clear: both;
}


.failure04 {
    width: 100%;
    margin-top: 10px;
    background-color: #FFE100;
}

.failure04_box01 {
    width: 95%;
    margin: 0 auto;
    margin-top: 20px;
    min-height: 400px;
    position: relative;
    overflow: hidden;
    padding-bottom: 30px;
}

.failure04_char {
	position: relative;
    width: 30%;
	float: left;
}

.failure04_char img {
    width: 110%;
    position: absolute;
    right: 0px;
    top: 27px;
}

.experience p.failure04_txt {
    text-align: center;
    width: auto;
    margin: 20px 0 -20px;
    font-size: 20px;
    line-height: 27px;
}

.failure04_text {
    line-height: 28px;
    width: 95%;
    float: none;
    padding-top: 10px;
    margin: 0 auto;
    font-family: 'Noto Sans regular';
    clear: both;
}

.failure04_box02 {
    width: 95%;
    margin: 0 auto;
    min-height: 400px;
    position: relative;
    overflow: hidden;
}

.failure04_char02 {
    float: left;
    width:20%;
    padding-left: 10px;
}
.failure04_char02 img {
    width:100%;
}

.failure04_img02{
	width: 75%;
	position: relative;
    top: 55px;
	float: right;
}

.failure04_img03{
	width: 75%;
	padding-left: 0;
	position: relative;
    top: 55px;
	float: right;
}

.failure04_img04 {
	position: static;
	float: none;
   padding-left: 0;
   margin: 1em 0 2em;
}

.failure04_img img {
    width: 100%;
}

.failure04_text02 {
    width: 95%;
    min-width:250px;
    margin: 0 auto;
    line-height: 28px;
    font-size: 16px;
    float: none;
    padding-top: 20px;
    padding-left: 0;
    font-family: 'Noto Sans regular';
    clear: both;
}

.example_ttl01 {
	width: 100%;
	min-width: 260px;
	margin: 0 auto;
	padding: 30px 0 5px 0;
	text-align: center;
	background-color: #FFE100;
}

.example_ttl01 p{
	width: 67%;
	padding-left: 10px;
}

.example_ttl02 {
	width: 100%;
	min-width: 260px;
	margin: 0 auto;
	padding: 10px 0 0;
	text-align: center;
	background-color: #0075C2;
}

.example_ttl02 h2 {
    width: 100%;
    margin: 0 auto;
    text-align: left;
    padding-left: 0px;
    position: relative;
}

.example_ttl02 h2 img {
	width: 69%;
	margin: 0 auto;
	position: relative;
	left: 12px;
}

.example_ttl02 h2 span {
    width: 25.5%;
    right:0;
    bottom: 0;


}

.example_ttl02 h2 span img {
	width: 100%;
    left: 0;
    vertical-align: bottom;
}

	.renovation {
    width: 100%;
    margin-top: 20px;
    margin-bottom: 20px;
    background-color: #FFE100;
    position: relative;
	}
	.case_text , .case_text_r {
		position: relative;
		border-top: 2px dotted #BBD9E3;
		border-bottom: 2px dotted #BBD9E3;
		overflow: hidden;
	}

	.case_text_r p, .case_text p {
    font-size: 16px;
    font-size: 3.95vw;
    display: inline;
    border: none;
    margin-right: -0.1em;
    padding-left: 0;

	}
	.case_text_r p:before, .case_text p:before {
		content: "";
		display: block;
		position: absolute;
		width: 300%;
		left: 0;
		right: 0;
		height: 1px;
		margin-top: -2px;
		border-top: 2px dotted #BBD9E3;
	}
	.case_text_r p.text_last , .case_text p.text_last {
	    font-size: 16px;
	    font-size: 3.95vw;
	    padding-left: 0;
	    line-height: 29.9px;
	    border-top: none;
	    border-bottom: none;
	}

	#case {
    width: 100%;
    min-width: 320px;
    margin: 0 auto;
	}

	#case ul {
    width: 95%;
    margin: 0 auto;
    margin-bottom: 45px;
    text-align: center;
    display: table;
	}

	#case ul li {
    width: 47%;
    margin-bottom: 3%;
    float: left;
	}

	#case ul li.l_ul {
    margin-right: 5%;
	}

	.case_box {
    width: 95%;
    margin: 0 auto;
    margin-bottom: 20px;
    overflow: hidden;
	}

	.case_info_l {
    width: 100%;
    float: none;
	}

	.sp_infobox{
	width: 100%;
	padding: 5px 0;
	border-top: 1px dotted #000;
    border-bottom: 1px dotted #000;
	overflow:auto;
	}

	#case01 .case_ttl {
	width: 60%;
	padding: 5px 0;
	text-align: left;
	float: left;
	border: none;
	}

	#case01 .case_ttl img {
	width: 45%;
	}

	#case01 .case_ttl h3 {
    padding-top: 10px;
    font-size: 20px;
    line-height: 24px;
	}

	#case01 .case_before {
    width: 40%;
    padding: 0;
    float: right;
	}

	.sp_imgbox{
		width: 100%;
		position:relative;
	}

	.sp_imgbox p.arrow_bottom{
		width: 20%;
		position: relative;
    	left: 70%;
    	top: 0;
    	margin:5px 0;
	}

	#case01 .case_text {
    margin-top: 25px;
    margin-bottom:5px;
	}

	.case_state {
	margin: 1em 0;
   	padding: 10px 0
	}

	.case_state table {
    width: 95%;
	}

	#case01 .case_view_r {
    width: 100%;
    height: auto;
    float: auto;
	}

	#case01 .case_img_r ul.li01 li:first-child {
	width: 56%;
    float: left;
    margin-right: 2%;
	}

	#case01 .case_img_r ul.li01 li:last-child {
	width: 42%;
    float: left;
	}

	#case01 .case_img_r ul.li02 li:last-child {
	width: 56%;
    float: left;
	}

	#case01 .case_img_r ul.li02 li:first-child {
	width: 42%;
    float: left;
    margin-right: 2%;
	}

	.case_info_r {
    width: 100%;
    float: none;
	}

	#case02 .case_ttl {
	width: 60%;
	padding: 5px 0;
	text-align: left;
	float: left;
	border: none;
	}

	#case02 .case_ttl img {
	width: 45%;
	}

	#case02 .case_ttl h3 {
    padding-top: 10px;
    font-size: 20px;
    line-height: 24px;
	}

	#case02 .case_before {
    width: 40%;
    padding: 0;
    float: right;
	}

	#case02 .case_text_r {
    margin-top: 25px;
    margin-bottom:5px;
	}

	#case02 .case_view_l {
    width: 100%;
    height: auto;
    float: auto;
	}

	#case02 .case_img_l ul.li01 li:first-child {
	width: 57%;
    float: left;
    margin-right: 2%;
	}

	#case02 .case_img_l ul.li01 li:last-child {
	width: 40.5%;
    float: left;
	}

	#case02 .case_img_l ul.li02 li:last-child {
	width: 56%;
    float: left;
	}

	#case02 .case_img_l ul.li02 li:first-child {
	width: 42%;
    float: left;
    margin-right: 2%;
	}

	.top_btn{
    width: 95%;
    color: #0075c2;
    text-align: center;
    border: 1px #0075c2 solid;
    margin: 0px auto 3em;
	}

	.top_btn a{
		display: block;
		color: #0075c2;
    	padding: 5px 0 10px;
		text-decoration:none;
	}

	.top_btn a.case_btn:after{
		content: url(../images/top_arrow.png);
    	margin-left: 1em;
    	position: relative;
    	top: 4px;
	}


	#case03 .case_ttl {
	width: 60%;
	padding: 5px 0;
	text-align: left;
	float: left;
	border: none;
	}

	#case03 .case_ttl img {
	width: 45%;
	}

	#case03 .case_ttl h3 {
    padding-top: 10px;
    font-size: 20px;
    line-height: 24px;
	}

	#case03 .case_before {
    width: 40%;
    padding: 0;
    float: right;
	}

	#case03 .case_before img {
    width: 50%;
	}

	#case03 .case_text {
    margin-top: 25px;
    margin-bottom:5px;
	}

	#case03 .case_view_r {
    width: 100%;
    height: auto;
    float: auto;
	}

	#case03 .case_img_r ul.li01 li:first-child {
	width: 56%;
    float: left;
    margin-right: 2%;
	}

	#case03 .case_img_r ul.li01 li:last-child {
	width: 42%;
    float: left;
	}

	#case03 .case_img_r ul.li02 li:last-child {
	width: 56%;
    float: left;
	}

	#case03 .case_img_r ul.li02 li:first-child {
	width: 42%;
    float: left;
    margin-right: 2%;
	}

	#case04 .case_ttl {
	width: 60%;
	padding: 5px 0;
	text-align: left;
	float: left;
	border: none;
	}

	#case04 .case_ttl img {
	width: 45%;
	}

	#case04 .case_ttl h3 {
    padding-top: 10px;
    font-size: 20px;
    line-height: 24px;
	}

	#case04 .case_before {
    width: 40%;
    padding: 0;
    float: right;
	}

	#case04 .case_before img {
    width: 70%;
	}

	#case04 .case_text_r {
    margin-top: 25px;
    margin-bottom:5px;
	}

	#case04 .case_view_l {
    width: 100%;
    height: auto;
    float: auto;
	}

	#case04 .case_img_l ul.li01 li:first-child {
	width: 57%;
    float: left;
    margin-right: 2%;
	}

	#case04 .case_img_l ul.li01 li:last-child {
	width: 40.5%;
    float: left;
	}

	#case04 .case_img_l ul.li02 li:last-child {
	width: 56%;
    float: left;
	}

	#case04 .case_img_l ul.li02 li:first-child {
	width: 42%;
    float: left;
    margin-right: 2%;
	}

	.link_box {
    width: 95%;
    margin: 0 auto;
    margin-bottom: 50px;
	}

	.link_box p {
		width:100%;
		margin: 0 auto;
    	text-align: center;
    	padding-bottom: 25px;
}

	.footer_bnr {
	width: 100%;
    margin: 0 auto;
	}

	.footer_bnr h1 img {
	width: 60%;
    margin: 0 auto;
	}

	.bnr03 {
    padding-left: 0;
    width: 95%;
    margin: 0 auto;
	}

.link_box p img{
	width: 70%;
	margin:0 auto;
}

.footer_bnr ul {
    width: 100%;
    padding-bottom: 0px;
    display: block;
}

.footer_bnr ul li {
    width: 100%;
    padding-right: 0px;
    margin-bottom: 2%;
    display: block;
}

.copyright {
    width: 100%;
    background-color: #000;
    padding-top: 2em;
}

.copyright p {
    width: 80%;
    margin: 0 auto;
    padding: 15px 0;
    font-size: 12pt;
    font-family: "メイリオ", sans-serif;
    line-height: 20px;
    text-align: center;
    color: #fff;
}

.copyright p.logo {
    width: 50%;
    margin: 0 auto;
    padding: 15px 0 0;
    text-align: center;
}

}

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

	.experience p {
    text-align: center;
    width: 100%;
    padding: 12px;
    font-size: 20px;
    line-height: 27px;
    position: relative;
    top: 3px;
    left: -22px;
	}

	.experience p.failure02_txt {
    text-align: center;
    width: 100%;
    padding: 26px 0;
    font-size: 20px;
    line-height: 27px;
    position: relative;
    top: 4px;
    left: -8px;
	}

	.failure01_img02{
	top: 50px;
	}

	.failure01_img03{
	top: 50px;
	}

	.failure02_img02{
	top: 85px;
	}

	.failure02_img03{
	top: 85px;
	}

	.failure03_img02{
	top: 25px;
	}

	.failure03_img03{
	top: 25px;
	}

	.failure04_img02{
	top: 50px;
	}

	.failure04_img03{
	top: 50px;
	}

	.case_text_r p, .case_text p {
    font-size: 15px;
    font-size: 3.95vw;
    }

    .case_text p.text_last, .case_text_r p.text_last {
    font-size: 15px;
    font-size: 3.95vw;
    }

	#case03 .case_ttl h3 {
    padding-top: 10px;
    font-size: 17px;
    line-height: 20px;
	}

	#case04 .case_ttl h3 {
    padding-top: 10px;
    font-size: 18px;
    line-height: 24px;
	}
	#case04 .case_before img {
    width: 76%;
	}

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

	.case_text_r p, .case_text p {
    font-size: 12px;
    font-size: 3.95vw;
    }

    .case_text p.text_last, .case_text_r p.text_last {
    font-size: 12px;
    font-size: 3.95vw;
    }

	.experience {
	min-height: 158px;
    padding-bottom: 0px;
	}

	.experience p {
    text-align: center;
    width: 100%;
    padding: 0px;
    font-size: 17px;
    line-height: 24px;
    position: relative;
    top: 12px;
    left: -9px;
	}

	.experience p.failure02_txt {
    text-align: center;
    width: 100%;
    padding: 0;
    font-size: 17px;
    line-height: 24px;
    position: relative;
    top: 22px;
	}


	.failure01_img02{
	top: 40px;
	}

	.failure01_img03{
	top: 40px;
	}

	.failure02_img02{
	top: 70px;
	}

	.failure02_img03{
	top: 70px;
	}

	.failure03_img02{
	top: 20px;
	}

	.failure03_img03{
	top: 20px;
	}

	.failure04_img02{
	top: 40px;
	}

	.failure04_img03{
	top: 40px;
	}

	.case_ttl h3 {
    padding-top: 10px;
    font-size: 18px;
    line-height: 20px;
	}

	#case01 .case_ttl h3, #case02 .case_ttl h3 {
    padding-top: 10px;
    font-size: 18px;
    line-height: 20px;
	}

	#case03 .case_before img {
    width: 55%;
	}

	#case04 .case_ttl h3 {
    padding-top: 10px;
    font-size: 16px;
    line-height: 24px;
	}
	#case04 .case_before img {
    width: 86%;
	}
}