@charset "utf-8";

@import url(https://fonts.googleapis.com/css?family=Lora:400,700);
@import url(https://fonts.googleapis.com/css?family=Lato:200,400,700);
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

* {
	border: none;
	margin: 0px;
	padding: 0px;
	font-size: 12px;
	font-weight: normal;
}
body {
	margin: 0px;
	font-family: "メイリオ", Meiryo, Verdana, "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", Arial, sans-serif;
	line-height: 1.8;
	letter-spacing: 0.1em;
	text-align:left;
}
a {
	color: #45816F;
	outline: none;
	text-decoration: none;
}
a:hover {
	color: #EEB55C;
	text-decoration: underline;
}
li {
	list-style-type: none;
}

/* clearfix */

.clearfix:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix {
	min-height: 1px;
}
* html .clearfix {
	height: 1px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}

/* common */

.fl{ float: left; }
.fr { float: right; }

.clear {
	clear: both;
}
.mb10{
	margin-bottom:10px;
}
.mb20{
	margin-bottom:20px;
}
.mb30{
	margin-bottom:30px;
}
.mb50{
	margin-bottom:50px;
}

.orange{
	color:#FF9900;
}
.red{
	color:#EA0000;
}
.blue{
	color:#2E5198;
}

.b {font-weight:bold;}

.center{
	text-align:center;
}

/* header */
#headerbg{
	width:100%;
	height:120px;
	background:url(../image/common/header_bg.jpg) repeat-x right top;
}
#header{
	width:960px;
	height:120px;
	margin:0 auto;
}
#header p.hdtxt{
	width:960px;
	height:17px;
	line-height:15px;
	font-size:11px;
	font-weight:bold;
	color:#FFF;
	overflow:hidden;
	margin-bottom:16px;
}
#header #h_cnt{
	width:960px;
	height:90px;
}
#header #h_cnt h1{
	width:190px;
	height:auto;
	float:left;
	margin-top:7px;
}
#header #h_cnt h1 a{
	width:190px;
	height:auto;
	overflow:hidden;
	display:block;
}
#header #h_cnt h1 a img{
	width:190px;
	height:auto;
}
#header .hd_main{
	width:385px;
	height:66px;
	float:right;
}
#header .hd_main p#h_tel{
	width:230px;
	height:58px;
	float:left;
	background:url(../image/common/head_tel.gif) no-repeat left top;
	text-indent:-9999px;
	margin-top:7px;
}
#header .hd_main p#h_contact{
	width:140px;
	height:66px;
	float:right;
}
#header .hd_main p#h_contact a{
	width:140px;
	height:66px;
	background: url(../image/common/head_contactbn.png) no-repeat left top;
	text-indent:-9999px;
	display:block;
	overflow:hidden;
}
#header .hd_main p#h_contact a:hover{
	background-position:right bottom;
}
#header .hd_main .h_tel-sp {
	display:none;
}
#header .hd_main .h_contact-sp {
	display:none;
}

/* topimg */



/* navi */
/* Basic code - don't modify */
 
 #nav { display: block; margin: 0; padding: 0; position: relative; }
  #nav li { display: block; list-style: none; margin: 0; padding: 0; float: left; position: relative; }
  #nav a { display: block; }
  #nav ul { display: none; position: absolute; left: 0; margin: 0; padding: 0;z-index:99; }
  * html #nav ul { line-height: 0; } /* IE6 "fix" */
  	#nav ul a { zoom: 1; } /* IE6/7 fix */
    #nav ul li { float: none; }
    #nav ul ul { top: 0; }

#navi_bg{
	width:100%;
	height:60px;
	background:url(../image/common/navi_bg.jpg) repeat-x left top;
	margin-top:1px;
}
	
#navi{
	width:960px;
	margin:0 auto;
}
#navi ul{
	height:60px;
}
#navi ul li{
	height:60px;
}
#navi ul li a{
	height:60px;
	display:block;
	text-indent:-9999px;
	overflow:hidden;
	outline:none;
}

#navi ul li#navi01 a{
	width:157px;
	background:url(../image/common/navi_01.jpg) no-repeat left top;
}
#navi ul li#navi02 a{
	width:156px;
	background:url(../image/common/navi_02.jpg) no-repeat left top;
}
#navi ul li#navi03 a{
	width:118px;
	background:url(../image/common/navi_03.jpg) no-repeat left top;
}
#navi ul li#navi04 a{
	width:124px;
	background:url(../image/common/navi_04.jpg) no-repeat left top;
}
#navi ul li#navi05 a{
	width:140px;
	background:url(../image/common/navi_05.jpg) no-repeat left top;
}
#navi ul li#navi06 a{
	width:125px;
	background:url(../image/common/navi_06.jpg) no-repeat left top;
}
#navi ul li#navi07 a{
	width:140px;
	background:url(../image/common/navi_07.jpg) no-repeat left top;
}

#navi ul li#navi01 a:hover,
#navi ul li#navi02 a:hover,
#navi ul li#navi03 a:hover,
#navi ul li#navi04 a:hover,
#navi ul li#navi05 a:hover,
#navi ul li#navi06 a:hover,
#navi ul li#navi07 a:hover{
	background-position:right bottom;
}

#reason #navi ul li#navi01 a,
#service #navi ul li#navi02 a,
#support #navi ul li#navi03 a,
#price #navi ul li#navi04 a,
#flow #navi ul li#navi05 a,
#works_p #navi ul li#navi06 > a,
#works_s #navi ul li#navi06 > a,
#client #navi ul li#navi07 a{
	background-position:right bottom;
}

#navi ul li ul{
	height:auto;
}
ul#nav li#navi06 ul.drop li {
	height: 40px;
	padding: 0;
	background: none;
}
ul#nav li#navi06 ul.drop li a {
	height: 40px;
	cursor: pointer;
}
ul#nav li#navi06 ul.drop,
ul#nav li#navi06 ul.drop li {
	width: 125px;
}
ul#nav li#navi06 ul.drop li.navi_works01 a {
	background: url(../image/common/navi_06_1.png) no-repeat left top;
}
ul#nav li#navi06 ul.drop li.navi_works02 a {
	background: url(../image/common/navi_06_2.png) no-repeat left top;
}
ul#nav li#navi06 ul.drop li.navi_works01 a:hover,
ul#nav li#navi06 ul.drop li.navi_works02 a:hover{
	background-position: right bottom;
	cursor: pointer;
}


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


#header #h_cnt-fix {
	display:none;
}


/* outer */

#outer{
	background:url(../image/common/contents_bg.jpg) repeat-x left top;
}
#outer_frame{
	width:960px;
	margin:0 auto;
	padding-top:20px;
}

/* sidearea*/
#sidearea{
	width:240px;
	float:left;
}

#sidearea ul#side_servicemenu{
	margin:10px 0 20px 0;
}
#sidearea ul#side_servicemenu li a{
	width:240px;
	height:35px;
	display:block;
	text-indent:-9999px;
	overflow:hidden;
	outline:none;
}

#sidearea ul#side_servicemenu li#ssm01 a{
	background:url(../image/common/side_menu01.gif) no-repeat left top;
}

#sidearea ul#side_servicemenu li#ssm02 a{
	background:url(../image/common/side_menu14.gif) no-repeat left top;
}
#sidearea ul#side_servicemenu li#ssm03 a{
	background:url(../image/common/side_menu02.gif) no-repeat left top;
}
#sidearea ul#side_servicemenu li#ssm04 a{
	background:url(../image/common/side_menu03.gif) no-repeat left top;
}
#sidearea ul#side_servicemenu li#ssm05 a{
	background:url(../image/common/side_menu04.gif) no-repeat left top;
}
#sidearea ul#side_servicemenu li#ssm06 a{
	background:url(../image/common/side_menu05.gif) no-repeat left top;
}
#sidearea ul#side_servicemenu li#ssm07 a{
	background:url(../image/common/side_menu06.gif) no-repeat left top;
}
#sidearea ul#side_servicemenu li#ssm08 a{
	background:url(../image/common/side_menu07.gif) no-repeat left top;
}
#sidearea ul#side_servicemenu li#ssm09 a{
	background:url(../image/common/side_menu08.gif) no-repeat left top;
}
#sidearea ul#side_servicemenu li#ssm10 a{
	background:url(../image/common/side_menu09.gif) no-repeat left top;
}
#sidearea ul#side_servicemenu li#ssm11 a{
	background:url(../image/common/side_menu10.gif) no-repeat left top;
}
#sidearea ul#side_servicemenu li#ssm12 a{
	background:url(../image/common/side_menu11.gif) no-repeat left top;
}
#sidearea ul#side_servicemenu li#ssm13 a{
	background:url(../image/common/side_menu12.gif) no-repeat left top;
}
#sidearea ul#side_servicemenu li#ssm14 a{
	background:url(../image/common/side_menu13.gif) no-repeat left top;
}

#sidearea ul#side_servicemenu li#ssm01 a:hover,
#sidearea ul#side_servicemenu li#ssm02 a:hover,
#sidearea ul#side_servicemenu li#ssm03 a:hover,
#sidearea ul#side_servicemenu li#ssm04 a:hover,
#sidearea ul#side_servicemenu li#ssm05 a:hover,
#sidearea ul#side_servicemenu li#ssm06 a:hover,
#sidearea ul#side_servicemenu li#ssm07 a:hover,
#sidearea ul#side_servicemenu li#ssm08 a:hover,
#sidearea ul#side_servicemenu li#ssm09 a:hover,
#sidearea ul#side_servicemenu li#ssm10 a:hover,
#sidearea ul#side_servicemenu li#ssm11 a:hover,
#sidearea ul#side_servicemenu li#ssm12 a:hover,
#sidearea ul#side_servicemenu li#ssm13 a:hover,
#sidearea ul#side_servicemenu li#ssm14 a:hover{
	background-position:right bottom;
}
#side_contact{
	margin:5px 0 20px 0;
}
#side_contact a{
	width:240px;
	height:40px;
	display:block;
	background:url(../image/common/side_contact.jpg) no-repeat left top;
	text-indent:-9999px;
	overflow:hidden;
	outline:none;
}
#side_contact a:hover{
	background-position:right bottom;
}

.sidebn{
	margin-bottom:10px;
}

/* cntarea */
#cntarea{
	width:700px;
	float:right;
	overflow: hidden;
}
#topicpath{
	margin-bottom:3px;
}
#topicpath li{
	float:left;
}

.cnt_txt{
	padding-left:15px;
}
.pagetop a{
	width:77px;
	height:24px;
	background:url(../image/common/pagetop.gif) no-repeat left top;
	text-indent:-9999px;
	overflow:hidden;
	display:block;
	outline:none;
	margin-left:623px;
	margin-bottom:5px;
}
.pagetop a:hover{
	background-position:right bottom;
}

.pb{
	margin-bottom:30px;
	padding-left:15px;
}
.pb ul li{
	float:left;
	padding:5px;
	border:1px dotted #CCCCCC;
	margin:0 2px;
}

/*	
.page_contactbn{
	width:685px;
	height:69px;
	margin:30px 0 10px 15px;
}
.page_contactbn a{
	width:685px;
	height:69px;
	background:url(../image/common/contactbn.jpg) no-repeat left top;
	display:block;
	overflow:hidden;
	text-indent:-9999px;
	outline:none;
}

.page_contactbn a:hover{
	background-position:right bottom;
}
*/

.contactbn {
	margin:30px 0;
	text-align:center;
}



h1#bar01 {
	position:relative;
	width:700px;
	height:36px;
	text-indent:-9999px;
	overflow:hidden;
	margin-bottom:15px;
}
h1#bar01 span {
	display:none;
}

/* footer */
#footer{
	width:100%;
	background:url(../image/common/foot_bg.jpg) repeat-x left top;
}
#footer #footer_cnt{
	width:960px;
	margin:0 auto;
	background:url(../image/common/foot_bgimg.png) no-repeat right center;
	padding:15px 0 75px;
	position:relative;
}
#footer #footer_cnt ul{
	display:inline;
	float:left;
}
#footer #footer_cnt ul li{
	color:#FFFFFF;
	padding:0 10px;
	border-right:1px solid #007C37;
	border-left:1px solid #00AA4D;
	float:left;
	font-size:9px;
}
#footer #footer_cnt ul li.first{
	border-left:none;
}

#footer #footer_cnt ul li.last{
	border-right:none;
}

#footer #footer_cnt ul li a{
	color:#FFFFFF;
}

#footer #footer_cnt #copyright{
	color: #ffffff;
	font-size: 9px;
	position: absolute;
	right: 0;
	top: 16px;
}

#footer #footer_cnt #foot_logo{
	/*background:url(../image/common/foot_logo.png) no-repeat left center;*/
	padding:30px 0 0;
	color:#FFFFFF;
}
#footer #footer_cnt .logo {
	padding:1px 30px 0 0;
	float:left;
}
#footer #footer_cnt .logo img {
	width:70px;
	height:auto;
}



/* ---------------------------
 drawer
--------------------------- */


.drawer-hamburger {
	display:none;
}





/* 959px（タブレット縦）以下から 1カラム表示
------------------------------------------------------------*/
@media only screen and (max-width: 959px){
	
	
/* ---------------------------
 header
--------------------------- */

#headerbg {
	height:95px;
}
#header {
	width:100%;
	height:100%;
}
#header #h_cnt {
	width:100%;
	height:82px;
}
#header #h_cnt h1{
	margin:9px 9px 9px 15px;
}
#header p.hdtxt {
	margin:0;
	width:auto;
	padding-left:5px;
}
#header .hd_main {
	border-collapse: separate;
	border-spacing: 12px 0;
	display: table;
	float: right;
	height: 100%;
	padding-right: 53px;
	width:auto;
}
#header .hd_main #h_tel {
	display:none;
}
#header .hd_main .h_tel-sp {
	font-size:10px;
	display:table-cell;
	line-height:1.2;
	text-align:center;
	vertical-align:middle;
	letter-spacing:0;
}
#header .hd_main .h_tel-sp span a {
	font-size:23px;
	font-weight:bold;
	color:#009749;
	text-decoration:none;
}
#header .hd_main #h_contact {
	display:none;
}
#header .hd_main .h_contact-sp {
	display:table-cell;
	vertical-align:middle;
}
#header #h_cnt-fix .contact {
	float: right;
    margin-top: 10px;
    padding-right: 65px;
}
#idx h2 {
}

/*----ドロップダウン----*/


#header #h_cnt-fix {
	height:60px;
	position: fixed;
	top: 0;
	z-index: 998;
	width:100%;
	background:rgba(255,255,255, 0.9);
	box-shadow: 0 5px 3px -3px rgba(0, 0, 0, 0.3);
}
#header #h_cnt-fix h1{
	width:140px;
	height:auto;
	float:left;
	margin:7px 7px 7px 12px;
}
#header #h_cnt-fix h1 a{
	width:140px;
	height:auto;
	overflow:hidden;
	display:block;
}
#header #h_cnt-fix h1 a img{
	width:140px;
	height:auto;
}


/* header end
--------------------------- */




/* ---------------------------
 drawer
--------------------------- */

.drawer-overlay {
	background-color:rgba(0, 0, 0, 0.6);
}
.drawer-hamburger {
	z-index:999;
	display:block;
	width:40px;
	padding-top: 10px;
	padding-bottom: 10px;
	top: 43px;
}
.drawer-hamburger-icon {
	margin-top: 0;
}
.drawer-nav {
	z-index:999;
	background-color:#009749;
	color:#fff;
}
.drawer.menu-fix .drawer-hamburger {
	padding-top: 10px;
	padding-bottom: 10px;
	top: 18px;
}
.drawer.menu-fix .drawer-hamburger-icon {
	margin-top: 0
}
.drawer-hamburger-icon, .drawer-hamburger-icon::after, .drawer-hamburger-icon::before {
	background-color:#0C7B37;
	height:3px;
}
.drawer-hd {
	background-color: #02642E;
	border-bottom: 1px solid #0a5829;
	color: #fff;
	font-size: 14px;
	line-height: 1.5;
	margin-bottom: 5px;
	padding: 8px 10px;
}
.drawer-menu {
}
.drawer-menu > li {
	background:url(../image/common/arrow.png) no-repeat right center;
	background-size: auto 12px;
	border-bottom:1px solid #04803D;
}
.drawer-menu li:last-child {
	border-bottom:none;
}
.drawer-menu li.drawer-dropdown {
	background:url(../image/common/drawer_plus.png) no-repeat right center;
	background-size: auto 12px;
}
.drawer-menu li a {
	display:block;
	padding:7px 10px;
	color:#fff;
	text-decoration:none;
}
.drawer-menu .drawer-dropdown li {
	background:url(../image/common/arrow.png) no-repeat right center;
	background-size: auto 12px;
	border-bottom:1px dotted #348A4E;
	background-color:#4BA763;
}
.drawer-menu .drawer-dropdown li:last-child {
	border-bottom:none;
}
.drawer-menu .drawer-dropdown li a {
	padding:7px 20px;
	font-size:11px;
	color:#fff;
}
.drawer-menu .drawer-dropdown.open {
	background:url(../image/common/drawer_minus.png) no-repeat right center;	
	background-size: auto 12px;
}

/* ---------------------------
 Navi
--------------------------- */

#navi_bg {
	display:none;
}

#sidearea {
	display:none;
}


/* ---------------------------
 Outer
--------------------------- */

#outer{
	background:none;
	border-top:1px solid #e7e7e7;
}
#outer_frame {
	width:auto;
	padding-top:10px;
}

/* ---------------------------
 cntarea
--------------------------- */

#cntarea {
	float:none;
	margin:0 auto;
}
#topicpath{
	margin-bottom:10px;
}


/* ---------------------------
  Footer
--------------------------- */

#footer {
	position:relative;
	padding:0 10px;
	width:auto;
}
#footer #footer_cnt {
	width:100%;
}
#footer #footer_cnt #copyright {
	position:absolute;
	bottom:10px;
	right:10px;
	top:auto;
}


}







/* 幅699px以下
------------------------------------------------------------*/
@media only screen and (max-width: 699px){



/* ---------------------------
 header
--------------------------- */
	
#header {
	height:100%;
}
#headerbg {
	height:65px;
	background-size:4px;
}
#header #h_cnt {
	height:100%;
}
#header #h_cnt h1 {
	width:110px;
	margin:17px 0 0 13px;
}
#header #h_cnt h1 a {
	background-size:110px auto;
	width:110px;
}
#header #h_cnt h1 a img{
	width:110px;
	height:auto;
}
#header .hd_main {
	width:auto;
	display:block;
}
#header p.hdtxt {
	display:none;
}
#header .hd_main .h_contact-sp {
	display:block;
	margin-top:20px;	
}
#header .hd_main .h_contact-sp img {
	width:75px;
	height:auto;
}
#header .hd_main .h_tel-sp {
	display:none;
}

/* header end
--------------------------- */


/*----ドロップダウン----*/


#header #h_cnt-fix {
	height:50px;
}
#header #h_cnt-fix h1{
	width:110px;
	height:auto;
	margin:7px 0 0 10px;
}
#header #h_cnt-fix h1 a{
}
#header #h_cnt-fix h1 a img{
	width:110px;
	height:auto;
}
#header #h_cnt-fix .contact {
	padding-right:53px;
}
#header #h_cnt-fix .contact img {
	width:75px;
	height:auto;
}


/* ---------------------------
 drawer
--------------------------- */

.drawer-hamburger {
	padding-top: 10px;
	padding-bottom: 10px;
	top: 22px;
	width: 35px;
}
.drawer-hamburger-icon {
	margin-top: 0;
}
.drawer.menu-fix .drawer-hamburger {
	padding-top: 10px;
	padding-bottom: 10px;
	top: 12px;
}
.drawer.menu-fix .drawer-hamburger-icon {
	margin-top: 0
}

/* ---------------------------
 Navi
--------------------------- */



/* ---------------------------
 cntarea
--------------------------- */

#cntarea {
	width:auto;
	margin:0 10px;
}
.cnt_txt {
	padding-left:0;
}
h1#bar01 {
	width:auto;
}
h1#bar01 span {
	font-family:'Noto Sans Japanese', 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic ProN', sans-serif;
	background-color: #f7f7f7;
	border-left: 5px solid #009a44;
	border-top:0;
	border-bottom:0;
	border-radius: 3px;
	color: #009a44;
	display: block;
	font-size: 18px;
	margin-bottom: 10px;
	padding: 2px 10px;
	text-indent: 0;
}

.contactbn img {
	width:100%;
}



/* ---------------------------
  Footer
--------------------------- */

#footer #footer_cnt {
	background-image:none;
	padding:15px 0 30px;
}
#footer #footer_cnt ul {
	display:none;
}
#footer #footer_cnt #foot_logo {
	padding:0;
}
#footer #footer_cnt #foot_logo p {
	display:none;
}
#footer #footer_cnt #foot_logo .logo {
	display:block;
	text-align:center;
	margin-bottom:15px;
	float:none;
	padding:0;
}
#footer #footer_cnt #foot_logo .logo img {
	width:70px;
	height:auto;
}
#footer #footer_cnt #copyright {
	width:100%;
	text-align:center;
	position:static;
}



.pb{
	margin-bottom:30px;
	padding-left: 0;
	text-align: center;
}
.pb ul li{
	float: none;
	display: inline-block;
	padding:5px;
	border:1px dotted #CCCCCC;
	margin:0;
}

	
}



