@charset "utf-8";
.pc{
	display:none !important;
}

html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	vertical-align:baseline;
	background:transparent;
	list-style-type:none;
	font-size: medium;
	color: #484848;
	font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3",Meiryo,"メイリオ","MS PGothic","MS UI Gothic",Helvetica,Arial,sans-serif;
	line-height: 1.6;
	outline:none;
	font-size:14px;
}
a{
	text-decoration:none;
	color:#484848;
	display:block;
}
img{
	display:block;
	width:100%;
}
p{
	margin:0 0 20px;
}
.red{
	color:#aa0000;
}
header{
	width:100%;
	margin:0 auto;
}
header{
	margin:20px auto;
}
header .header_top{
}
header .header_top .logo{
	width:60%;
	margin:0 0 0 3%;
}
header .header_top .lead{
	background:url(../img/header_bg.png) no-repeat top center/100%;
	padding:40px 0 68px 3%;
	margin:0 0 10px;
	width:97%;
}
header .header_top .lead,
header .header_top .lead span{
	font-size:20px;
	font-weight:bold;
	line-height:1.4;
}
header .header_top p,
header .header_top p span{
	font-size:13px;
	width:94%;
	margin:auto;
}
section{
	width:95%;
	margin:30px auto 50px;
}
.float_block{
	margin:0 0 40px;
}
section h2{
	font-size:20px;
	letter-spacing:0.15em;
	margin:20px 0;
	line-height:1.6;
	text-align:center;
}
.profile h2{
	margin:0 0 40px;
}
section h2 span{
	display:block;
	color:#c7c7c7;
	font-weight:bold;
	font-size:15px;
	line-height:1;
}
section h2 span::after{
	content:url(../img/h2_deco.png);
	display:block;
	margin:10px auto;
}
.about p span,
.claim p span{
	color:#959595;
	font-size:16px;
	font-weight:bold;
	margin:0 0 8px;
	display:block;
}
.about p span.underline{
	color:#e70012;
	font-size:14px;
	text-decoration:underline;
	margin:0;
	display:inline-block;
}
.about p small{
	color:#959595;
	font-size:13px;
}
.about .ex .lead{
	text-align:center;
	font-size:16px;
	font-weight:bold;
	line-height:1.7;
}
.about .ex big{
	text-align:center;
	font-size:20px;
}
.about .ex li,
.about .ex p{
	text-align:left;
}
.about .ex ul{
	width:90%;
	margin:20px auto 40px;
}
.about .ex li{
	border: 1px solid #c7c7c7;
	position: relative;
	margin:0 auto 25px;
	padding:50px 20px 20px 20px;
}
.about .ex li p{
	position: absolute;
	top: 0;
	left:0;
	margin: auto;
	background:#aa0000;
	color:#fff;
	padding:7px 50px 7px 10px;
}
.about .ex li p,
.about .ex li p span{
	display:inline-block;
	margin:0;
}
.about .ex li p span{
	background:#fff;
	border-radius:5px;
	color:#aa0000;
	margin:0 0 0 10px;
	padding:0 5px;
}
.about .ex li dt{
	font-size:19px;
	font-weight:bold;
}
.about .ex li dd{
	line-height:1.3;
}
.restoration .left,
.restoration.restoration2 .right{
	width:48%;
	float:left;
	margin:0 2% 2% 0;
}
.restoration.restoration2 .right{
	float:right;
	margin:0 0 2% 2%;
}
.restoration.restoration2 .left{
	width:100%;
	float:none;
	margin:0 ;
}
.restoration p span{
	text-decoration:underline;
}
.restoration p span,
.restoration p big{
	font-weight:bold;
}
.restoration p big{
	font-size:20px;
	line-height:1.6;
}
.restoration ol{
	margin:0;
}
.restoration ol li strong{
	color:#ab000d;
	font-size:15px;
	text-decoration:underline;
	margin:0 auto 10px;
	display:block;
}
.nego p{
	text-align:center;
	color:#959595;
}
.nego ul{
	width:95%;
	margin:20px auto ;
}
.nego li{
	margin: 0 0 30px;
}
.nego li::before{
	content:"";
	width:3px;
	height:100px;
	margin:0 10px 0 0;
}
.nego li p{
	width:94%;
	text-align:left;
}
.nego li p,
.nego li::before{
	display:inline-table;
	vertical-align:middle;
}
.nego li::before{
	height:205px;
}
.nego li::before,
.flow .tel_flow ol li .tel_step{
	background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #d86f6f), color-stop(0.00, #a00));
	background: -webkit-linear-gradient(#a00, #d86f6f);
	background: -moz-linear-gradient(#a00, #d86f6f);
	background: -o-linear-gradient(#a00, #d86f6f);
	background: -ms-linear-gradient(#a00, #d86f6f);
	background: linear-gradient(#a00, #d86f6f);
}
.nego li,
.nego li::before{
	display:inline-table;
	vertical-align:middle;
}
.nego h3{
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	margin: 0 0 10px;
}
.nego .img{
	width:96%;
	margin:auto;
}
.cost{
	background:#ffeff1;
	border-radius:15px;
	padding:15px 5%;
	text-align:center;
	width:80%;
}
.cost ul{
	width:90%;
	margin:20px auto;
	text-align:center;
}
.cost li{
	width:45%;
	display:inline-table;
	margin:0 2%;
}
.cost p{
	font-weight:bold;
	font-size:20px;
	line-height:1.4;
}
.cost p big{
	font-size:27px;
	letter-spacing:0.1em;
}
.cost p small{
	font-size:12px;
	font-weight:normal;
}
.cost p small,
.cost p big{
	display:block;
	margin:20px auto 10px;
}
.flow ul{
	text-align:center;
	margin:30px auto ;
}
.flow ul li:first-child{
	position: relative;
	margin:0 auto 20px;
}
.flow ul li:first-child::after{
	content: "";
	width: 100%;
	height: 4px;
	background: #b6bac5;
	position: absolute;
	right: 0;
	top: 100%;
	margin: auto;
	z-index:-1;
	-moz-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
}
.flow ul li{
	width:90%;
	margin:auto;
}
.flow .tel_flow{
	font-size:0;
	width:90%;
	margin:auto;
}
.flow .tel_flow .bg_gray{
	background: #e6e9f2;
	font-size: 16px;
	font-weight: bold;
	padding: 10px 0;
	border-radius: 15px;
	width: 190px;
	margin: 0 auto 30px;
	text-align: center;
}
.flow .tel_flow ol li{
	margin:0 0 20px;
}
.flow .tel_flow ol li .tel_step{
	border-radius: 50%;
	width: 28px;
	color: #fff;
	text-align: center;
	padding: 0 0;
	font-size: 18px;
}
.flow .tel_flow ol li .tel_step,
.flow .tel_flow ol li p{
	display:inline-block;
	vertical-align:top;
}
.flow .tel_flow ol li p{
	width:86%;
	margin:0;
	font-weight:bold;
}
.claim p span,
.claim p{
	text-align:center;
	color:#959595;
}
.claim p{
	margin:0 0 50px;
}
.claim .img{
	width:96%;
	margin:auto;
}
.while_wrapp{
	background:#a00;
}
.while .add,
.while .root{
	margin:15px auto;
	width:80%;
}
.while .add address span,
.while .add address,
.while .root dt,
.while .root dd,
.while .root dd li{
	color: #fff;
}
.while .add address,
.while .root dt,
.while .root dd,
.while .root dd li{
	font-size: 12px;
	letter-spacing: 0.1em;
	line-height:1.4;
}

/*footer*/
footer{
	clear:both;
	background:#a00;
	margin-top:60px;
}
.footer_to_toi_logo{
	display:block;
	height:auto;
	background:#fff;
	width:20%;
	margin:5px auto ;
	border-radius:3px;
}
#footer_left{
	text-align:center;
}
#footer_text li{
	display: inline-block;
	vertical-align:middle;
}
#footer_text li{
	font-size: 14px;
	color: #fff;
	letter-spacing: 0.1em;
	line-height:1.4;
}
#footer_text li:first-child span{
	font-weight: bold;
	color: #a00;
	background:#fff;
	border-radius: 20px;
	padding: 3px 25px;
	margin: 10px auto;
	display: block;
}
.footer_tel{
	margin:5px 0 0;
	width:100%;
	overflow:hidden;
	position: relative;
	display: block;
	color: #fff;
	font-size: 28px;
	line-height: 1em;
	letter-spacing:0.05em;
	font-weight:bold;
}
.footer_tel:before{
	content: url(../img/tel_icon.png);
	position:relative;
	top:-1px;
	left:0;
	margin-right:10px;
}
.footer_tel>li.soudan_wrapper{
	float:left;
	margin-top:12px;
}
.to_toi{
	clear:both;
	background:#a00;
	margin-top:60px;
}
.footer_to_toi .footer_to_fm{
	text-align:center;
	color:#fff;
	line-height:1.2;
	position:relative;
}
.footer_to_toi .footer_to_fm:before{
	content:"";
	border-top:solid 1px #fff;
	width:80%;
	height:1px;
	left:0;
	right:0;
	display:block;
	margin:20px auto;
}
.footer_to_toi .footer_to_fm a{
	display:block;
	background:#720d0d;
	color:#fff;
	position:relative;
	width:100%;
	margin:10px auto ;
	padding:20px 0;
	box-shadow:0 -23px 0 #600 inset;
	border-radius:5px;
}

.footer_to_toi .footer_to_fm a:after{
	content:"";
	width:6px;
	height:6px;
	right:20px;
	top:21px;
	border-right:solid 2px #fff;
	border-top:solid 2px #fff;
	transform:rotate(45deg);
	position:absolute;
}

.footer_to_toi .footer_to_fm a:hover{
	opacity:0.8;
}

.toi_btn{
	font-size: 14px;
	line-height: 50px;
	font-weight: bold;
	text-align: center;
	letter-spacing: 0.2em;
	color: #fff;
	height: 50px;
	border-radius: 4px;
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0.50, #025302), color-stop(0.50, #004300));
	background: -webkit-linear-gradient(top, #025302 50%, #004300 50%);
	background: -moz-linear-gradient(top, #025302 50%, #004300 50%);
	background: -o-linear-gradient(top, #025302 50%, #004300 50%);
	background: -ms-linear-gradient(top, #025302 50%, #004300 50%);
	background: linear-gradient(to bottom, #025302 50%, #004300 50%);
}
.toi_btn:hover{
	opacity: 0.8;
}
#toi_form li a{
	display: block;
}
.footer_to_toi{
	width:90%;
	margin:auto;
	overflow:hidden;
	padding:30px 5%;
	position:relative;
}
.footer_to_toi>img{
	display:block;
	float:left;
	width:600px;
	height:auto;
}
.footer_info{
	background:#fff;
	overflow:hidden;
}
.footer_info .info_area{
	width:90%;
	padding:5%;
	margin:20px auto;
	overflow:hidden;
}
.footer_info .info_area .info{
}
.footer_info .info_area .info address{
	font-size:14px;
	font-weight:bold;
	font-style:normal;
	margin:10px auto;
}
.footer_info .info_area .info dl{
	overflow:hidden;
	margin:25px auto;
	width:100%;
}
.footer_info .info_area .info dl dd,
.footer_info .info_area .info dl dt{
	display:table-cell;
}
.footer_info .info_area .info dl dd li,
.footer_info .info_area .info dl dt{
	font-size:16px;
}
.footer_info .info_area .info dl dt{
	width:35%;
	color:#a00;
	font-weight:bold;
	padding-left:25px;
	background:url(../img/train.png) no-repeat left top;
}
.footer_info .info_area .info dl dd li{
	margin-bottom:10px;
}
.footer_info .footer_map{
	width:96%;
	margin:auto;
}
.footer_info .footer_map img{
	display:block;
	width:auto;
	margin:auto;
}
.copyright{
	background:#300;
	color:#fff;
	padding:7px 0;
	text-align:center;
	font-size:11px;
}
.copyright a{
	display:inline-block;
	color:#fff;
}




#topMenuSp #toTopSp, 
#topMenuSp #toToiawaseSp,
#topMenuSp #toTelSp{
	background: rgba(51,51,51,0.8);
	position:fixed;
	bottom:33px;
	border-radius: 6px;
	z-index:99998;
	width: 55px;
	height:55px;
}
#topMenuSp #toTopSp{
	right:0;
	border-radius: 6px 0 0 6px;
}
#topMenuSp #toToiawaseSp,#topMenuSp #toTelSp{
	left:0;
	border-radius: 0 6px 6px 0;
}
#topMenuSp #toTelSp{
	left:60px;
	border-radius: 6px;
}
#topMenuSp #toTopSp a,#topMenuSp #toToiawaseSp a,#topMenuSp #toTelSp a{
	position: relative;
	display: block;
	width: 100%;
	height:100%;
	background: url("../img/toTopArrow.png") no-repeat 15px 6px /28px 28px;
}
#topMenuSp #toToiawaseSp a{
	background: url("../img/toToiawaseBg.png") no-repeat center/50%;
}
#topMenuSp #toTelSp a{
	background: url("../img/ToTelBg.png") no-repeat center/60%;
}
#topMenuSp #toTopSp a:after{
	display: block;
	width: 100%;
	position: absolute;
	color: #fff;
	content: 'トップへ';
	text-align:center;
	font-size: 8px;
	bottom: 4px;
}

#topMenuSp #toMenuSp{
	background: #b00000;
	position: fixed;
	top: 6px;
	right: -5px;
	height: 45px;
	border-radius: 6px;
	z-index:99999;
}
#topMenuSp #toMenuSp a{
	display: block;
	width: 55px;
	height: 45px;
	background: url("../img/toMenuBg.png") no-repeat 14px 5px /27px 20px;
}
#topMenuSp #toMenuSp a:after{
	display: block;
	width: 55px;
	position: absolute;
	color: #fff;
	content: 'メニュー';
	font-size: 8px;
	text-align: left;
	bottom:2px;
	left: 4px;
}

.bengoshi_li li dd dt,
.bengoshi_li li dd dd,
.bengoshi_li li p{
	font-size: 12px;
}
.bengoshi_li li p{
	margin:0;
}
.bengoshi_li li dd dt,
.bengoshi_li li dd dd{
	display:inline-table;
	vertical-align:top;
}
.bengoshi_li li dd dt{
	width:27%;
}
.bengoshi_li li dd dd{
	width:73%;
}

.bengoshi_li{
	width:100%;
	margin:0 auto 80px;
}
.bengoshi_li ul{
	font-size:0;
}
.bengoshi_li li{
	margin:0 auto 30px;
}
.bengoshi_li li > dl > dt{
	font-size:23px;
	color:#a00000;
	font-weight:bold;
	border-bottom:2px dotted #b1b1b1;
	margin:0 auto 15px;
	padding:0 0 8px;
}
.bengoshi_li li > dl > dt small{
	font-size:15px;
	margin:0 0 0 8px;
	color:#b1b1b1;
	font-weight:normal;
}
.bengoshi_li li > dl > dt span{
    background: #666;
    color: #fff;
    padding: 2px 0 2px;
    border-radius: 25px;
    font-size: 10px;
    font-weight: normal;
    display: block;
    text-align: center;
    width: 50%;
}
.bengoshi_li li > dl > dd{
	width:96%;
	margin:0 auto;
}