@charset "utf-8";
/* CSS Document */
a{
	/* \*/
	overflow:hidden;
	/* */
	outline:none;
	text-decoration: none;
	color:#83b24f;
}
a:link{
}
a:visited{
	color:#83b24f;
}
a:hover{
	opacity:0.5;
	color:#83b24f;
}

/* layout */
body{
	margin:0;
	text-align:center;
	color:#333333;
	line-height:1.8;
	font-family:"メイリオ","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-text-size-adjust:80%;
	font-size:11pt;
}
header{
	margin:0 auto;
}
div.container{
	max-width:1000px;
	margin:0 auto;
	clear:both;
	text-align:left;
}

div.sideWrap{
	float:left;
	width:250px;
	margin:40px 0 60px;
}
div.side{
	width:250px;
}
div.main{
	text-align:left;
	float:right;
	width:710px;
	margin:40px 0 60px;
}



/* header */

.header_in{
	width:1000px;
	margin:0 auto;
	background:url(../images/h_tel.jpg) no-repeat bottom right;
	height:105px;
}
.logo{
	float:left;
	margin:40px 0 10px;
	height:72px;
}
ul.h_navi{
	width:450px;
	float:right;
	margin:10px 0 0;
}

ul.h_navi li{
	float:left;
	text-indent:-9999px;
	margin-left:10px;
}

.h_navi01 a, .h_navi02 a, .h_navi03 a{
	background:url(../images/h_navi.jpg) no-repeat;
	display:block;
	height:30px;
	width:140px;
}
li.h_navi01 a{ background-position:0 0;}
li.h_navi02 a{ background-position:-150px 0;}
li.h_navi03 a{ background-position:-300px 0;}

.g_navi_box{
	height:40px;
	background:#83b24f;
	clear:both;
}
ul.g_navi{
	width:1000px;
	height:40px;
	margin:auto;
	background:#FFF;
}

ul.g_navi li{
	float:left;
	text-indent:-9999px;
}

.g_navi01 a, .g_navi02 a, .g_navi03 a, .g_navi04 a, .g_navi05 a, .g_navi06 a, .g_navi07 a{
	background:url(../images/g_navi.jpg) no-repeat;
	display:block;
	height:40px;
	width:200px;
}
li.g_navi01 a{ background-position:0 0;}
li.g_navi02 a{ background-position:-200px 0;}
li.g_navi03 a{ background-position:-400px 0;}
li.g_navi04 a{ background-position:-600px 0;}
li.g_navi05 a{ background-position:-800px 0;}

ul.g_navi li a:hover{
	transition:0.3s;
	opacity:0.5;
}

/*--------------------------------------------------------------------
/////プルダウン/////
--------------------------------------------------------------------*/

.g_navi li ul {
	position: absolute;
	z-index: 1000;
	text-align:left;
	border-top:solid 1px #FFF;
}

.g_navi li ul li {
	float: none;
	text-align:center;
}

.g_navi li ul li a{
	text-indent: 0;
	color: #FFF;
	height:35px;
	line-height:35px;
	text-decoration:none;
	background: #83b24f;
	font-size:12px;
	background-image:none;
	border:solid 1px #FFF;
	border-top:none;
	box-sizing:border-box;
}
.g_navi li ul li a:hover{
	opacity:1;
	color: #faee33;
	background:#9FC885;
}
/*----------------------------*/



.page_title{
	clear:both;
	background:#e5f2e0;
	padding:10px 0;
	font-weight:normal;
	color:#23724e;
	letter-spacing:1.2em;
	font-size:200%;
}


.slide_box{
	position:relative;
	width:1000px;
	height:260px;
	margin:auto;
}
.slide_on img{
	position:absolute;
	bottom:40px;
	left:40px;
	z-index:500;
}

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

/* footer */
footer{
	clear:both;
	text-align:center;
}

.footer_in{
	max-width:1000px;
	margin:auto;
	text-align:left;
	font-size:90%;
}


nav.f_navi{
	background:#83b24f;
	color:#FFF;
	padding:10px;
	margin:0 0 20px;
	clear:both;
	font-size:110%;
	font-weight:bold;
	margin-bottom:50px;
}
nav.f_navi a{
	color:#FFF;
}
.copy{
	clear:both;
	margin:20px 0;
}
/* side */
.side h3{
	background:#618fb1;
	color:#FFF;
	padding:10px 20px;
}
.s_navi ul{
	border:solid 2px #618fb1;
	margin-bottom:20px;
}
.s_navi ul li a{
	border-bottom: dotted 1px #CCC;
	padding:10px 20px;
	background:#FFF;
	color:#666;
	display:block;
}
.s_navi ul li:last-child a{
	border:none;
}
.side img{
	max-width:100%;
	height:auto;
}

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

/* main */

.bread{
	margin-top: 20px;
}
.bread a{
	color: #333;
	text-decoration: underline;
}
.btn02{
	float: right;
}
.btn02 a{
	display: inline-block;
	padding:10px 20px;
	border:none;
	color:#FFF;
	text-decoration:none;
	background:#b68841;
	text-align:center;
	font-size:100%;
	border-radius: 10px;
	margin-left: 10px;
}
section{
	margin-bottom:10px;
	clear:both;
}
section h3{
	margin-bottom:20px;
	color:#FFF;
	text-align:left;
	background:#618fb1;
	padding:8px 20px;
	font-weight:normal;
	font-size:140%;
}
section h4{
	margin:0 0 10px;
	font-size:200%;
	color:#83b24f;
	font-weight:normal;
}
section h5{
	margin:40px 0 20px;
	font-size:140%;
	border:solid 1px #618fb1;
	padding:5px 20px;
	color:#618fb1;
}
section p{
	margin-bottom:40px;
}

.font_red{
	color:#C00;
	font-weight:bold;
}
.font_line{
	text-decoration:underline;
}
.scroll{}


.table01{
	margin-bottom:20px;
	width:100%;
	border-top: solid 1px #CCCCCC;
	border-collapse:collapse;
	text-align:center;
}
.table01 th{
	font-weight:normal;
	padding:10px;
	border:solid 1px #CCCCCC;
	color:#FFF;
	background:#83b24f;
}
.table01 th.th2{
	background:#618fb1;
}
.table01 td{
	padding:10px;
	border:solid 1px #CCCCCC;
}
.table01 span{
	font-size:90%;
}
.table02{
 margin-bottom:20px;
 width:100%;
 border-top: solid 1px #CCCCCC;
 border-collapse:collapse;
}
.table02 th{
 font-weight:normal;
 padding:10px;
 border:solid 1px #CCCCCC;
 color:#FFF;
 background:#83b24f;
}
.table02 th.th2{
 background:#618fb1;
}
.table02 td{
 padding:10px;
 border:solid 1px #CCCCCC;
}
.table02 span{
 font-size:90%;
}
.photocenter{
 display: block;
    margin-left: auto;
    margin-right: auto;
}
.table03{
	margin-bottom:20px;
	width:100%;
	border-top: solid 1px #CCCCCC;
	border-collapse:collapse;
}
.table03 th{
	font-weight:normal;
	padding:10px;
	border:solid 1px #CCCCCC;
}
.table03 th.th2{

}
.table03 td{
	padding:10px;
	border:solid 1px #CCCCCC;
}
.table03 span{
	font-size:90%;
}
hr{
	border: 0;
	border-top: 1px solid #CCC;
	margin:10px 0;
}
.t_left{
	text-align:left;
}
.t_right{
	text-align:right;
}

ul.line2 li, ul.line3 li{
	margin-bottom:15px;
}
ul.line2 li img, ul.line3 li img{
	max-width:100%;
	height:auto;
}
ul.line2 li{
	width:48%;
}
ul.line2 li:nth-child(even){
	float:right;
}
ul.line2 li:nth-child(odd){
	float:left;
	clear:both;
}
ul.line3 li{
	width:32%;
	float:left;
	margin-right:2%;
}
ul.line3 li:nth-child(3n){
	margin-right:0;
}
ul.line3 li:nth-child(3n+1){
	clear:both;
}


/* index */

.bg01{
	background:#e5f2e0;
	padding:20px 0 40px;
}
ul.index li{
	width:332px;
	float:left;
	margin-right:1px;
}
ul.index li:nth-child(3n){
	margin-right:0;
}
ul.index li:nth-child(3n+1){
	clear:both;
}

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

/*-----------------------
	トップへ戻るボタン
-------------------------*/

#page_top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 77%;
}
#page_top a {
	filter: alpha(opacity=80);
	-moz-opacity: 0.80;
	-khtml-opacity: 0.80;
	opacity: 0.80;
}
#page_top a img{
	box-shadow: 0px 0px 10px rgba(0,0,0,0.3); 
}
#page_top a:hover {
	text-decoration: none;
	filter: alpha(opacity=100);
	-moz-opacity: 1.00;
	-khtml-opacity: 1.00;
	opacity: 1.00;
}

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

.banner img{
	margin-bottom:10px;
}
.img_left{
	float:left;
	margin:0 20px 20px 0;
}
.img_right{
	float:right;
	margin:0 0 20px 20px;
}


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

.btn01 a, .btn01 input{
	display: block;
	padding:15px 10px;
	border:none;
	color:#FFF;
	box-sizing:border-box;
	text-decoration:none;
	background:#8cc633;
	text-align:center;
	font-size:100%;
	width: 100%;
}
.btn01 a:hover, .btn01 input:hover{
	opacity:0.5;
	transition:0.3s;
}

table.formTable{
	margin-bottom:20px;
	width:100%;
	border-top: solid 1px #CCCCCC;
	border-collapse:collapse;
	text-align:left;
}
table.formTable th{
	font-weight:normal;
	padding:15px 30px 15px 0;
	border-bottom:solid 1px #CCCCCC;
	width:30%;
	text-align:left;
}
table.formTable td{
	padding:15px 0;
	border-bottom:solid 1px #CCCCCC;
}
.need{
	background:#900;
	color:#FFF;
	padding:3px 5px;
	border-radius:3px;
	margin-left:10px;
}

.privacy{
	margin-bottom:20px;
	height:300px;
	overflow:auto;
	padding:20px;
	border:solid 1px #CCC;
	text-align:left;
}
.privacy_title{
	font-weight:bold;
	font-size:150%;
}
.privacy dl{
	}
.privacy dt{
	margin-bottom:10px;
}
.privacy dd{
	margin-bottom:20px;
}
.privacy p{
	margin-bottom:20px;
}


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




/*-----------------------------------*/
/* faq */
dl.qa{
	text-align:left;
}
dl.qa dt{
	font-weight: normal;
	font-size: 130%;
	padding:5px 20px 10px;
	margin-bottom:10px;
	background:#8cc633;
	color:#FFF;
}
dl.qa dt:before {
	content: "Q";
	font-family: Arial, Helvetica, sans-serif;
	font-size: 30px;
	padding-right: 10px;
	font-weight: bold;
}
dl.qa dd {
	margin-bottom: 100px;
	padding:0 20px;
}
dl.qa dd:before {
	content: "A";
	font-family: Arial, Helvetica, sans-serif;
	font-size: 30px;
	color: #CCC;
	padding-left: 10px;
	padding-right: 14px;
	font-weight: bold;
}

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

dl.flow{
}
dl.flow dt{
	font-size:120%;
	padding:5px 15px;
	border-radius:5px;
	border: solid 1px #83b24f;
	color:#83b24f;
	font-weight:bold;
	text-align:center;
}
dl.flow dd{
	padding:20px 0;
	margin-bottom:40px;
}
dl.flow dd:after{
	display: block;
	content: "";
	position: relative;
	width: 24px;
	height: 24px;
	margin-left: -12px;
	border-left: 1px solid #83b24f;
	border-bottom: 1px solid #83b24f;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	box-sizing: border-box;
	margin:auto;
}
dl.flow dd:last-child:after{
	display: none;
}
/*-----------------------------------*/
.estimate table{
	width: 100%;
	border-collapse: collapse;
	margin-bottom: 20px;
}
.estimate table td table th{
	border: solid 1px #CCC;
	padding: 10px;
}
.estimate table td  table td{
	border: solid 1px #CCC;
	padding: 10px;
}
ul.estimate_list li{
	font-size:90%;
}
input[type="button" i], input[type="reset" i], input[type="file" i]::-webkit-file-upload-button, button {
    padding: 1px 6px;
}

.mbtn {
    background: -moz-linear-gradient(top,#F9D1AA, #F9AD62 50%,#F98C1E 50%,#FF8C00);
    background: -webkit-gradient(linear, left top, left bottom, from(#F9D1AA), color-stop(0.5,#F9AD62), color-stop(0.5,#F98C1E), to(#FF8C00));
    background: -ms-linear-gradient(top,#F9D1AA, #F9AD62 50%,#F98C1E 50%,#FF8C00);
    
    color: #FFF;
    border-radius: 10px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border: 1px solid #FF8C00;
    -moz-box-shadow: 1px 1px 1px rgba(000,000,000,0.3),inset 0px 0px 3px rgba(255,255,255,0.5);
    -webkit-box-shadow: 1px 1px 1px rgba(000,000,000,0.3),inset 0px 0px 3px rgba(255,255,255,0.5);
    text-shadow: 0px 0px 3px rgba(0,0,0,0.5);
    width: 150px;
    padding: 5px 0;
    text-align:center;
    text-decoration:none;
	cursor:pointer;
}

.mbtn :hover {
	color: #FF3300;
}

/*------------------設計理念-----------------*/

.philosophyleft {
	float: left;
	width: 300px;
}
.philosophyright {
    float: right;
	width: 410px;
}

/*------------------実績-----------------*/
.worksleft {
	float: left;
	width: 200px;
}
.worksright {
    float: right;
	width: 510px;
}
.worksleft2 {
	float: left;
	width: 200px;
}
.worksright2 {
    float: right;
	width: 510px;
}
.font_border{
	padding: 10px;
	width: 710px;
	border:solid 1px #FF7802;
}


ul.works_list div{
	height: 127px;
	overflow: hidden;
	text-align: center;
	margin-bottom: 10px;
}
ul.works_list span{
	background: #68BD9C;
	color: #FFF;
	text-align: center;
	display: block;
	padding: 2px;
	margin-bottom: 10px;
}
ul.works_list li a{
	box-sizing: border-box;
	padding: 15px;
	border: solid 5px #CCC;
	color: #333;
	display: block;
	min-height: 321px;
}
ul.works_list li a:hover{
	border-color: #68BD9C;
	opacity: 1.0;
	transition: 0.3s;
}
#slider{
	margin-bottom: 40px;
}
.single_slider li{
	width: 100%;
	height: 473px;
}
.single_slider img{
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
}
.bx-pager{
	margin-bottom:10px;
}
.bx-pager img{
	width:auto;
	height:auto;
	max-width: 11.8%;
	max-height: 56px;
}

/* mod_thumbnail
--------------------------------------------*/
.mod_thumbnail{
 margin:0 0 40px 0;
}
/* サムネイル画像表示（thumbnaillist）
-----------------------------------------*/
.thumbnaillist{
}
.thumbnaillist ul{
}
.thumbnaillist li{
	padding: 0 4.5px;
	max-height: 56px;
    float:left;
    background:none;
    margin:0 0 10px 0;
}
.thumbnaillist li a{
    display:block;
}

.thumbnaillist img{
	width:auto;
	height:auto;
}
.mainimglist{
	width: 100%;
	height: 473px;
	margin-bottom: 20px;
	text-align: center;
}
.mainimglist img{
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
}
dl.works_detail dt{
	color: #68BD9C;
	font-size: 120%;
	border-left: solid 5px #68BD9C;
	padding-left: 10px;
	margin-bottom: 10px;
}
dl.works_detail dd{
	background: #EFEFEF;
	padding: 20px;
	margin-bottom: 40px;
}
dl.works_detail2 dt{
	color: #68BD9C;
	font-size: 120%;
	border-left: solid 5px #68BD9C;
	padding-left: 10px;
	margin-bottom: 10px;
}
dl.works_detail2 dd{
	margin-bottom: 40px;
}