@charset "utf-8";

/*----------------------------------------------------
 elements
----------------------------------------------------*/
body {
	background:#fff;
	color:#411a0d;
	font-family: ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif;
	font-size: 12px;
	line-height: 1.5;
	-webkit-text-size-adjust: none; /* フォントサイズ自動調整 */
}



a:link {
	text-decoration: none;
	color:#411a0d;
}

a:visited {
	text-decoration: none;
	color:#411a0d;
}

img {
	vertical-align: top;
	margin:0px;
	padding:0px;
}


p, dl, ol, ul {
}

ol, ul {
	list-style:none;
	text-align:left;
}



/* --------------------------------------------------- */
/* wrapper */
/* ---------------------------------------------------- */
#wrapper {
	background-size: 100% 355px ;
	-webkit-background-size: 100% 355px ;
	-moz-background-size:  100% 355px ;
	/*margin: 0 auto;*/
}

/* ---------------------------------------------------- */
/* ランドスケープ表示 */
/* ---------------------------------------------------- */
@media all and (orientation:landscape) {
	#wrapper {
		width: 100%;
	}
}





/* ---------------------------------------------------- */
/* header */
/* ---------------------------------------------------- */
header {
	width:100%;
	border-top:#ff6c00 2px solid;
}

header h1{
	max-width:640px;
	margin:0 auto;
	position:relative;
	z-index:1000;
	background:#FFF;height:40px;
	
}

header .logo{
	display:inline-block;
	margin:0 !important;
	padding:6px 4px;

}

header #sitemap_menu{
	padding-top:0px;
	font-family: 'Alegreya', serif;
	font-size:14px;
	float:right;
	font-weight:bold;
	margin:4px !important;
}



nav#new{
	margin:0px 0px;
	border-top:#ffa200 2px solid;
	background:#fffef9;
}


nav#new .hd{
	width:100%;
	max-width:640px;
	font-size:12px;
	margin:0 auto;
	border-collapse:separate;
	border-spacing:0px 0;
	line-height: 1;
}

nav#new .hd td{
	text-align:center;
	width:20%;
	vertical-align:middle;
	box-shadow:#999 0 0 1px;
	border-right:#e6e5e1 1px solid;
}

nav#new .hd tr td:first-child{
	border-left:#e6e5e1 1px solid;
}

nav#new .hd td span{
	font-size:16px !important;
	border-bottom:none !important;
}

nav#new .hd td p{
	font-weight:bold;
}

nav#new .hd td a{
	display:block;
	color:#000;
	padding:14px 0;
	}





/* ---------------------------------------------------- */
/* footer */
/* ------------------------------------------------ */

footer{
	width:100%;
	padding: 10px 0px 0px 0px;
	font-size:12px;
	background:#ffa202;
	color:#FFF;
}


/*------------------------------------------------------*/


footer #footer_nav{
	margin:20px 0px 0px;
	background:none;
}


footer #footer_nav .ft{
	width:100%;
	font-size:11px !important;
}


footer #footer_nav .ft td{
	background:url(../images/common/bg-footer-cont_bg.jpg);
	/*background-size:14px 14px;
	background-position:right 5px bottom 10px;*/
	text-align:left;
	width:25%;
	vertical-align:middle;
	border:#fff 1px dotted;
}

footer #footer_nav .ft td a{
	display:block;
	font-weight:bold;
	color:#fff;
	padding:8px;
	}



footer small {
	text-align:center;
	padding:8px;
	display:block;
	color:#fff;
	font-size:10px;
	clear:both;
}

footer small#copy a{
	color:#fff;
}







#info{
	max-width:640px;
	margin:10px auto 0;
	font-weight:bold;
	background:url(../images/common/bg-footer-cont_bg.jpg);
	padding:5px;
	overflow:hidden;
}



#info .text{
	padding:0;
	margin:0px;
	margin-left:5px;
}

#info .text tit{
	margin-bottom:5px;
	
}

#info .text li{
	margin:4px 0;
}

#info .text li span{
	color:#333;
	margin-right:4px;
	padding:0px 4px;
}

#info .contact{
	overflow:hidden;
	width:280px;
	margin:10px 4px 0 !important;
	text-align:center;
}


#info .contact li{
	border:#fff 1px solid;
	text-align:center !important;
	border-radius:3px;
	width:46% !important;
	margin-top:10px;
	display:inline-block;
}

#info .contact li a{
	display:block;
	padding:2px;
	color:#fff;
	border-radius:3px;
	font-weight:bold;

}


#info .contact li a .mls {
	font-size:12px;

}


/* ---------------------------------------------------- */
/* content */
/* ---------------------------------------------------- */
/************************* 汎用 *******************************/



.container-content{
	width:100%;
	margin:0;
}

.container-content p{
}


/*
section.content {
}
*/

.container{
	margin-bottom:20px;
	text-align:center;
	max-width:640px;
	margin:0px auto 40px;
	background:url(../images/common/bg_body.gif);
}



section{
	padding:0px;
}


h2{}

h3{
	margin:10px 0;
}



h4 {

	}
	


h5{
	font-weight:bold;
	text-align:left;
	margin:5px;
	font-size:14px;
	color:#333;
	border-left:#333 4px solid;
	padding-left:5px;
	
}


h6{
	text-align:left;
}



section dl{
	margin:10px 10px;
	text-align:left;
}

section dt{
	font-weight:bold;
	overflow:hidden;
}



section img{
	max-width:100%;
	height:auto;
	margin:5px auto; 
}



section p{
	text-align:left;
	margin:5px;
}

.container span{
	color:#F30;
	font-weight:bold;
}


.container strong{
	font-weight:bold;
}


.map{
	text-align:center;
	-webkit-box-sizing: border-box;
  	box-sizing:border-box;
	white-space:nowrap;
	margin:10px 5px;
}


em{
	font-size:12px;
	text-align:left;
	padding:10px;
}


.left{
	float:left;
}

.right{
	float:right;
}

.clear{
	clear:both;
}


/*ul*/


ul.sp2{
	font-size:12px;
	color:#000;
	padding:0px;
	margin:0px;
}



ul.sp2 li{
	width:49%;
	float:left;
	color:#000;
	margin:0px;
	overflow:hidden;
}


ul.sp2 li:nth-child(2n){
	float:right;
}

ul#sp2 li h4{
	padding:0px;
	margin:0px;
	background:none;
	border:none;
}


ul#sp2 li p{
	height:200px;
	margin:0px;
	padding:5px;
}

ul#sp2 li img{
	border:none;
	margin:0px;
	padding:0px;
}




ul.sp3{
	font-size:12px;
	color:#000;
	padding:0px;
	margin:5px;
}


ul.sp3 li{
	width:32%;
	float:left;
	color:#000;
	margin:2px;
	padding-top:2px;
	overflow:hidden;
}



/*page top*/

#totop{
	text-align:center;
	margin:20px 0px 0px;
	clear:both;
	padding-right:5px;
}


section div{
	text-align:left;
	font-size:11px;
	line-height:1.8em;
	color:#333;
}






/* ---------------------------------------------------- */
/* site map page */
/* ---------------------------------------------------- */



section.content nav{
	/*border-radius:6px 6px 6px 6px;
	-moz-border-radius:0px 0px 6px 6px;
	-webkit-border-radius:0px 0px 6px 6px;*/
	background-color:rgba(ff,bb,77,1.0);
	margin:10px 10px 10px;
}
section.content nav ul {
	width:100%;
	overflow:hidden;
}
section.content nav ul li {
	line-height:120%;
	/*border-top:1px solid #fff8ff;*/
	border-bottom:1px dotted #dfdfdf;
	background:url(../images/top/ico_news-li.gif) left center no-repeat;
	background-size:7px 7px;
}
section.content nav ul li a{
	/*background:url(../images/common/icon_arrow.png) right center no-repeat ;
	background-size: 25px 20px;
	-webkit-background-size: 25px 20px;
	-moz-background-size: 25px 20px;*/
	display:block;
	padding:12px 20px;
	color:#036;
}
section.content nav ul li:last-child {
	border-bottom:none;
	
}
section.content nav ul li:first-child{
	border-top:none;
}

section.content nav.search li{
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	width:50%;
	float:left;
}
section.content nav.search li:nth-child(2n){
	border-left:1px solid #cccccc;
}
section.content nav.search ul li:nth-last-child(2) {
	border-bottom:none;
}
section.content nav.search ul li:nth-child(2){
	border-top:none;
}








/* ---------------------------------------------------- */
/* top page */
/* ---------------------------------------------------- */




.visual{
	max-width:640px;
	min-width:320px;
	margin:0;
	text-align:center !important;
}


/* top image */
.flexslider {
		width: 100%;
		position: relative;
		z-index:0;
	}
	.slides {
		height: 198px;
		overflow: hidden;
		background:
	}
	
	.slides li{
		text-align:center;
	}
	
	
		.slides li.main01 {
			background:url(../images/top/bg_visual01.jpg) no-repeat center top;
			background-size:640px auto;
		}
		.slides li.main02 {background:url(../images/top/bg_visual02.jpg) no-repeat center top;background-size:640px auto;}
		.slides li.main03 {background:url(../images/top/bg_visual03.jpg) no-repeat center top;background-size:640px auto;}
		.slides li.main04 {background:url(../images/top/bg_visual04.jpg) no-repeat center top;background-size:640px auto;}

	/* Control Nav */
	.flex-control-nav {
		width: 100%;
		position: absolute;
		bottom: 25px;
		left: 0;
		text-align: center;
		z-index: 1000;
	}
	.flex-control-nav li {
		margin: 0 16px 0 0;
		display: inline-block;
		/*zoom: 1; 
		*display: inline;*/
	}
	.flex-control-nav li:last-child {margin-right:0;}
	.flex-control-paging li a {
		width: 10px;
		height: 10px;
		display: block;
		background: url(../images/top/icon_def.png) no-repeat;
		background-size:10px 10px;
		text-indent: -9999px;
	}
	.flex-control-paging li a:hover {
		background: url(../images/top/icon_cr.png) no-repeat;
		background-size:10px 10px;
	}
	.flex-control-paging li a.flex-active {
		background: url(../images/top/icon_cr.png) no-repeat;
		background-size:10px 10px;
		cursor: default;
	}




.service{
	margin-top:-10px;
	background:url(../images/top/bg_service.jpg) center top no-repeat;
}


	
.service ul.sp2 li{
	text-align:center !important;
}

	

#greeting{
	background:url(../images/top/bg_greeting.jpg) center top;
	overflow:hidden;
	text-align:center;
	padding:10px;
}

.greeting h3{
padding:-2px -2px;
overflow:hidden;
margin:0px -10px;
background:url(../images/top/bg_greeting.png) center top no-repeat;
background-size:auto 120px;
padding-bottom:20px;
}

.greeting h3 img{
	width:320px;
}


.greeting p{
	
	padding:10px;
}

.bg_w{
	background:#FFF;
}

.btn_greeting{
	text-align:center;
}


.news{
	margin:20px 0 40px;
	background:
}

.news h3{
padding:-2px -10px;
overflow:hidden;
margin-bottom:20px;

}

.news h3 img{
	width:740px !important;
	height:auto;
	margin-left:-10px;
}

.news ul{
	background:#f9f7eb;
	padding-bottom:8px;
}


.news li{
	margin:10px 5px;
	/*border-bottom:#c4a99c 1px dotted;*/
}

.news li span{
	display:block;
	padding:6px 8px;
	color:#7f7259;
	font-weight:normal !important;
	font-size:12px;
	background:url(../images/top/arw01.gif) 0 center no-repeat;
	background-size:4px 8px;
}

.btn_info{
	text-align:right;
}



.bnr li{
	text-align:center;
}

/* ---------------------------------------------------- */
/* sub page */
/* ---------------------------------------------------- */



.sitemap_list {
	width:100%;
	overflow:hidden;
	margin-bottom:30px;
}
.sitemap_list li {
	line-height:120%;
	border-bottom: 1px solid #fd9b01;
	background:url(../images/top/arw01.gif) left center no-repeat;
	background-size:4px 8px;
}
.sitemap_list li a{
	/*background:url(../images/common/icon_arrow.png) right center no-repeat ;
	background-size: 25px 20px;
	-webkit-background-size: 25px 20px;
	-moz-background-size: 25px 20px;*/
	display:block;
	padding:12px 20px;
	color: #ffa200;
}

.sitemap_list li:nth-child(2n){
	 background-color:#fffef7;
	
}

.sitemap_list li:last-child {
	border-bottom:none;
	
}
section.content nav ul li:first-child{
	border-top:none;
}


section.content h3{
	margin:10px 0px 10px;
	background:url(../images/common/h3_bg.gif);
	text-align:left;
	font-weight:bold;
	font-size:15px;
	padding:8px 0px 6px 6px!important;
	color:#fff;
	background: #fd9b01 none repeat scroll 0 0;
    border: 1px solid #ffb026;

}


section.content h3 span{
	font-weight:normal;
	color:#FFF;
	font-size:12px;
}


section.content h3 p{
	display:inline-block;
	margin:0px !important;
	border-bottom:#367820 3px solid;
}


section.content h4{
	text-align:left;
	font-weight:bold;
	font-size:14px;
	margin:10px 0;
	padding:2px 4px;
	background:url(../images/common/ico.png) left center no-repeat;
	background-size:10px 10px;
	padding-left:12px;
}

section.content h4 span{
	color: #ffa200;
	font-size: 12px;
}




section.content h5{
	text-align:left;
	font-weight:bold;
	font-size:12px;
	margin:10px 0;
	padding:0px 4px;
	border-left:16px solid #3049A5;
}





section.content .imgleft{
	float:left;
	width:32%;
	margin-right:5px;
}


section.content .imgright{
	float:right;
	width:32%;
	margin-left:5px;
}


section.content img{
	max-width:100%;
	height:auto;
	margin:5px auto; 
}





.visualSub{
	background:url(../images/common/h2_bg.jpg) center top no-repeat;
	background-size:640px auto;
	height:100px;
}


.visualSub h2{
	width:320px;
	margin:0 auto;
	overflow:hidden;
	color: #010101;
    font-size: 18px;
    margin: 0 auto;
    padding-top: 40px;
    text-align: left;
    text-shadow: 4px 4px 8px #ffffff, 4px 4px 8px #ffffff;
	font-weight:bold;
}

.visualSub h2 span{
	font-size:12px;
	color: #ffa200;
}



.defTable01{
	width:100%;
	font-size:12px;
	margin-bottom:20px;
	text-align:left;
}


.defTable01 th{
	padding:8px 4px;
	font-weight:bold;
	background: #f9f7eb;
	color:#666;
	border:#FFF 2px solid;
	width:26%;
}


.defTable01 td{
	padding:8px 4px;
	border-bottom:#eee 1px dotted;
}


#03{
}

.price_tbl{
	width:100%;
	margin-bottom:20px;
}







.price_tbl td {
    border-bottom: 1px solid #ddd;
    border-right: 1px solid #ddd;
    text-align: center;padding:8px 4px;
}


.price_tbl-title {
	text-align:left;
    background-color: #ffa200;
    color: #fff;
    padding: 1em 0 1em 1em;
    text-align: center;
}





.service_list{
	overflow:hidden;
}

.service_list dl dd{
	font-weight:bold;
}


dd.txt{
	font-size:11px !important;
	font-weight:normal !important;
	height:100px;
	
}


dl.flow-box dt {
    background: #f8f6ee none repeat scroll 0 0;
    border-bottom: 2px solid #f3eedc;
    border-top: 2px solid #ffffff;
    color: #010101;
    font-size: 14px;
    font-weight: bold;
    padding: 12px 5px 10px;
    text-align: left;
}

dl.flow-box dt span {
    background: #ffb026 none repeat scroll 0 0;
    color: #ffffff;
    font-size: 12px;
    font-weight:bold;
    margin-right: 5px;
    padding: 1px 10px;
    text-align: left;
}

dd.img{
	text-align:center;
}

dd.img img{
	max-width:80%;
	margin:5px auto;

}





.list-inhome {
    background: #f9f7eb none repeat scroll 0 0;
    color: #010101;
    padding: 10px;
}




ul.ulbox01 li {
    list-style: outside none disc;
    margin-left: 15px;
    text-align: left;
}







.cen{
	text-align:center;
}






.news_list {
	width:100%;
	overflow:hidden;
	margin-bottom:30px;
}
.news_list li {
	line-height:120%;
	border-bottom: 1px #fd9b01 dotted;
	padding:12px 5px;
}
.news_list li span{
	display:block;
	color:#666;
	font-weight:normal;
}

.news_list li a{
	padding:2px 0px !important;
	color: #ffa200;
	display:block;
}


.news_list li:last-child {
	border-bottom:none;
	
}





	
/*----------------足すもの------------------*/

hr{
border: 0;
height:1px;
background: -webkit-gradient(linear, left top, right top, from(#333),
color-stop(0.7,#ccc), color-stop(0.7,#ccc), to(#fff));
background: -moz-linear-gradient(left,#333 0%, #ccc 30%, #ccc 70%, #fff
100%);
background: -o-linear-gradient(left,#333 0%, #ccc 30%, #ccc 70%, #fff 100%);
background: -ms-linear-gradient(left,#333 0%, #ccc 30%, #ccc 70%, #fff
100%);
background: linear-gradient(left,#333 0%, #ccc 30%, #ccc 70%, #fff 100%);
-pie-background: linear-gradient(left,#333 0%, #ccc 30%, #ccc 70%, #fff
100%);
behavior: url(PIE.htc);
clear:both;
}


.clearfix:after{
  content: "."; 
  display: block; 
  height: 0; 
  font-size:0;	
  clear: both; 
  visibility:hidden;
}
	

.clearfix{display: inline-block;}




@media only screen and (orientation : landscape) { /*横向き*/


}
@media only screen and (orientation : portrait) { /*縦向き*/
.pagenavi li:nth-child(9n) {
	clear:both;
}

}


.flex{
	display: flex;
	flex-wrap: wrap;
}
.flex li + li{ margin-left: 15px; }