@charset "utf-8";
#side_nav ul li a{
	padding-left: 60px;
}
#side_nav ul li:first-child a{
	background: #fff url(../img/icon_nav_home.png) no-repeat 15px 15px scroll;
	background-size: 30px 30px;
}
#side_nav ul li:nth-child(2) a{
	background: #fff url(../img/icon_nav_point.png) no-repeat 15px 15px scroll;
	background-size: 30px 30px;
}
#side_nav ul li:nth-child(3) a{
	background: #fff url(../img/icon_nav_price.png) no-repeat 15px 15px scroll;
	background-size: 30px 30px;
}
#side_nav ul li:nth-child(4) a{
	background: #fff url(../img/icon_nav_qa.png) no-repeat 15px 15px scroll;
	background-size: 30px 30px;
}
#side_nav ul li:nth-child(5) a{
	background: #fff url(../img/icon_nav_contact_exp.png) no-repeat 15px 15px scroll;
	background-size: 30px 30px;
}
/*-------- main ----------*/
#main_visual{
	padding: 15px 15px 20px;
	border: solid 10px #57c8f7;
	border-bottom: none;
}
#main_visual > div{
	overflow:hidden;
	background: url(../img/bg_dot_blue.png) repeat 0 0 scroll;
	background-size: 10px 10px;
}
#top_visual{
	position:relative;
	width: 920px;
	height: 595px;
	margin: 0 auto;
}
#main_visual h1{
	position: absolute;
	top:0;
	left:0;
	z-index:52;
	width: 100%;
}
#main_visual h1 a{
	display: block;
	width: 217px;
	height: 13px;
	margin: 0 auto;
	background: url(../img/logo_h1.png) repeat 0 0 scroll;
}
#main_visual h1 span{
	display: inline-block;
	text-indent: -7777px;
}
#main_visual h1 a:hover{
	opacity: 0.7;
}
#main_visual h2{
}
#main_visual h2 span{
	position: absolute;
	display: block;
	text-indent: -7777px;
}
#main_visual h2 #h2_text_1{
	top: 110px;
	left: 50%;
	width: 456px;
	height: 28px;
	margin-left:-228px;
	background: url(../img/title_h2_1.png) repeat 0 0 scroll;
}
#main_visual h2 #h2_text_2{
	top: 168px;
	left: 50%;
	width: 461px;
	height: 46px;
	margin-left:-230px;
	background: url(../img/title_h2_2.png) repeat 0 0 scroll;
}
#main_visual h2 #h2_text_3{
	top: 228px;
	left: 50%;
	width: 349px;
	height: 44px;
	margin-left:-175px;
	background: url(../img/title_h2_3.png) repeat 0 0 scroll;
}
#main_visual figure.for-pc img{
	position: absolute;
	display: none;
}
#main_img01{
	top:0;
	left: 420px;
}
#main_img02{
	top:340px;
	left: 258px;
}
#main_img03{
	top:534px;
	left: 240px;
}
#main_img04{
	top: 542px;
	left: 128px;
}
#main_img05{
	top:505px;
	left: 356px;
}
#main_visual #sub_copy{
	position: absolute;
	top:300px;
	left:0;
	z-index:51;
	width: 270px;
	height:85px;
	background: url(../img/txt_sub_copy.png) no-repeat 0 0 scroll;
	text-indent: -7777px;
	opacity:0.01;
}
#main_visual .point{
	position: absolute;
	top: 360px;
	left:0;
	z-index:50;
	width:380px;
	padding: 10px;
	box-sizing: bolder-box;
	background: url(../img/bg_main_visual_point.png) repeat 0 0 scroll;
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.5);
	opacity:0.01;
	
}
#main_visual .point div{
	padding-top: 15px;
	background:#bcf3ed;
}
#main_visual .point ul{
	padding: 0 15px;
}
#main_visual .point li{
	position: relative;
	display: inline-block;
	padding-bottom: 6px;
	padding-left: 20px;
	color: #024d93;
	letter-spacing: normal;
	line-height:1;
	font-size:15px;
}
#main_visual .point li:nth-child(odd){
	width:195px;
}
#main_visual .point li:before{
	position: absolute;
	left: 0;
	width: 14px;
	height: 10px;
	margin-top: 4px;
	background: url(../img/icon_check_purple.png) no-repeat 0 0 scroll;
	background-size: 14px 10px;
	content: "";
}
#main_visual .point p{
	height: 26px;
	margin-top: 5px;
	padding-left:15px;
	border-top: dashed 1px #fff;
	line-height: 26px;
	color: #292929;
	font-size: 11px;
}
/*-------- problem_point ----------*/
#problem_point{
	position: relative;
	background: #57c8f7;
}
#problem_point:before{
	position: absolute;
	top: -9px;
	left:0;
	width: 100%;
	height: 9px;
	background: url(../img/parts_pagesepareter_blue.png) repeat-x 0 0 scroll;
	background-size: auto 9px;
	content: "";
}
#problem_point_comment{
	position: relative;
	padding-top: 170px;
}
#problem_point_comment > figure{
	display: block;
	text-align: center;
}
#problem_point_comment > figure img{
	display: inline-block;
	margin-left: -10px;
}
#problem_point_comment li{
	position: absolute;
}
#problem_point_comment ul{
	top: 0;
	left: 0;
	letter-spacing: -.40em;
}
#problem_point_comment li:first-child{
	top: 65px;
	left: 0;
	width: 315px;
}
#problem_point_comment li:nth-child(2){
	top: 0;
	left: 335px;
	width: 315px;
}
#problem_point_comment li:nth-child(3){
	top: 65px;
	right: 0;
	width: 300px;
}
#problem_point_comment li:nth-child(4){
	top: 200px;
	width: 315px;
}
#problem_point_comment li:nth-child(5){
	top: 200px;
	right: 0;
	width: 300px;
}
#problem_point_comment li figure{
	position: relative;
	display: inline-block;
	padding-right: 15px;
	letter-spacing: 0;
	vertical-align:top;
}
#problem_point_comment li figure:after{
	position: absolute;
	content:""
}
#problem_point_comment li:first-child figure:after{
	right: -290px;
	top: 50px;
	width: 99px;
	height: 71px;
	background: url(../img/img_problem_line_01.png) no-repeat 0 0;
}
#problem_point_comment li:nth-child(2) figure:after{
	left: 40px;
	bottom: -98px;
	width: 83px;
	height: 98px;
	background: url(../img/img_problem_line_02.png) no-repeat 0 0;
}
#problem_point_comment li:nth-child(3) figure:after{
	left: -47px;
	top: 58px;
	width: 57px;
	height: 98px;
	background: url(../img/img_problem_line_03.png) no-repeat 0 0;
}
#problem_point_comment li:nth-child(4) figure:after{
	right: -240px;
	top: 20px;
	width: 58px;
	height: 38px;
	background: url(../img/img_problem_line_04.png) no-repeat 0 0;
}
#problem_point_comment li:nth-child(5) figure:after{
	left: -88px;
	bottom: -30px;
	width: 133px;
	height: 30px;
	background: url(../img/img_problem_line_05.png) no-repeat 0 0;
}
#problem_point_comment li p{
	display: inline-block;
	font-size: 16px;
	color: #fff;
	letter-spacing: 0;
	line-height:1.4;
	vertical-align:top;
}
#problem_point_comment li:first-child p{
	width: 200px;
	
}

#problem_point_comment li:nth-child(2) p,
#problem_point_comment li:nth-child(4) p{
	width: 180px;
}
#problem_point_comment li:nth-child(3) p,
#problem_point_comment li:nth-child(5) p{
	width: 190px;
}

/*-------- service_point ----------*/
#works{
	border-bottom :solid 1px #ccc;
}
#works p{
	font-size:16px;
}
/*-------- service_point ----------*/
#service_point{
	position: relative;
}
#service_point:before{
	position: absolute;
	top: -9px;
	left:0;
	width: 100%;
	height: 9px;
	background: url(../img/parts_pagesepareter_whtie.png) repeat-x 0 0 scroll;
	background-size: auto 9px;
	content: "";
}
#service_point ul{
	letter-spacing: -.40em;
}
#service_point li{
	display: inline-block;
	width:280px;
	margin-right: 40px;
	padding-bottom: 50px;
	letter-spacing: normal;
	vertical-align:top;
}
#service_point li:nth-child(3n){
	margin-right: 0;
}
#service_point li > span{
	display:inline-block;
	height: 20px;
	padding: 0 25px;
	background: #57c8f7;
	border-radius: 20px;
	line-height: 20px;
	color:#fff;
	letter-spacing: 1.2;
}
#service_point  dl{
	margin-top: 10px;
}
#service_point dt div{
	display: table;
	width: 100%;
	font-weight: normal;
	font-size: 18px;
}
#service_point dt span.img{
	display: table-cell;
	width: 100px;
	padding-right: 20px;
	box-sizing: border-box;
	vertical-align:middle;
}
#service_point dt span.txt{
	display: table-cell;
	vertical-align:middle;
	text-align: left;
}
#service_point dd{
	margin-top:10px;
	border-top:dashed 1px #ccc;
}
#service_point dd p{
	margin-top:10px;
}
/*-------- price_plan ----------*/
#price_plan{
	border: solid 10px #ccc;
}
#price_plan > div{
	width: auto;
	margin: 15px;
	background: url(../img/bg_dot_gray.png) repeat 0 0 scroll;
	background-size: 10px 10px;
}
#price_plan h3 img{
	display: inline-block;
	margin-right: 20px;
}
.price_table thead th{
	width: 200px;
}
.price_table thead th p{
	height: 60px;
}
.price_table thead th:first-child{
	border: none;
	width: 120px;
}
.table_footage{
	width: 920px;
	margin: 20px auto;
	padding: 10px;
	box-sizing: border-box;
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.3);
	background: #fff;
}
#price_plan > div > div{
	width: 920px;
	margin: 0 auto;
}

/*-------- q_a ----------*/
#q_a{
	background: #f1f1f1;
}
#q_a h3 img{
	display: inline-block;
	margin-right: 20px;
}

/*-------- form_panel ----------*/
#form_panel{
		border: solid 10px #ccc;
}
#form_panel > div{
	width: auto;
	background: url(../img/bg_dot_gray.png) repeat 0 0 scroll;
	background-size: 10px 10px;
}