@charset "utf-8";

/*----------------------------------------------------
 elements
----------------------------------------------------*/
body {
	background:#fff;
	font-family: ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif;
	font-size: 12px;
	line-height: 1.6;
	-webkit-text-size-adjust: none; /* フォントサイズ自動調整 */
	overflow-x:hidden;
	width:100%;

	/*font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
	
}



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;
	overflow:hidden;
	/*margin: 0 auto;*/
}

/* ---------------------------------------------------- */
/* ランドスケープ表示 */
/* ---------------------------------------------------- */
@media all and (orientation:landscape) {
	#wrapper {
	}
}





/* ---------------------------------------------------- */
/* header */
/* ---------------------------------------------------- */


.hd_bg{
	background:url(../images/common/bg_img01.png);
	overflow:hidden;
}

header {
	width:100%;
	position:fixed;
	z-index:100000;
	top:0;
	height:54px;
	background-size:auto 200%;
	/*background-color:rgba(255,255,255,0.8);
	box-shadow:#CCC 0 0 2px;*/
}

header h1{
	max-width:640px;
	margin:1px auto 0;
	position:relative;
	z-index:1000;
	height:20px;
	
}

header .logo{
	display:inline-block;
	margin:0 !important;
	padding:10px 4px;

}

header #sitemap_menu{
	padding-top:40px;
	font-family: 'Alegreya', serif;
	font-size:14px;
	float:right;
	font-weight:bold;
	margin:4px !important;
	background-color:#9bcb3f;
	border-radius:50% 50%;
}



nav#new{
	margin:1px 0px;
	background:#fff;
}


nav#new .hd{
	width:100%;
	max-width:640px;
	font-size:13px;
	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;
}

nav#new .hd td span{
	font-size:16px !important;
	border-bottom:none !important;
	color:#6f4d39;

}

nav#new .hd td p{
	font-weight:bold;
}

nav#new .hd td a{
	display:block;
	color:#000;
	padding:14px 0;
	}


header .inner{
	max-width:680px;
	height:100%;
	position:relative;
	margin:0 auto;
}


/* ---------------------------------------------------- */
/* footer */
/* ------------------------------------------------ */




/*page top*/

#totop{
	text-align:center;
	margin:20px 0px 0px;
	clear:both;
	padding-right:5px;
}





footer{
	width:100%;
	padding: 30px 0px 0px 0px;
	font-size:12px;
	text-align:center;
	background:url(../../images/ft_bg.png) 0 0 repeat-x;
	background-size:auto 100%;
}


/*------------------------------------------------------*/



address{
	text-align:center;
	padding:10px 0;
}


address a{
	color:#FFF !important;
}
/* ---------------------------------------------------- */
/* content */
/* ---------------------------------------------------- */
/************************* 汎用 *******************************/


main{
	max-width:680px;
	margin:0 auto;
	overflow:hidden;
	text-align:center;
}

main section{
	max-width:375px;
	margin:0 auto;
}

main img{
}


section{}


h2{}

h3{}

h4{}

h5{}


.map{
	text-align:center;
	-webkit-box-sizing: border-box;
  	box-sizing:border-box;
	white-space:nowrap;
	margin:10px 5px;
}


.left{
	float:left;
}

.right{
	float:right;
}

.clear{
	clear:both;
}


/*ul*/


.flex{
	display:flex;
	justify-content: center;
}






/*----------------足すもの------------------*/

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;}*/












/* ---------------------------------------------------- */
/* site map page */
/* ---------------------------------------------------- */


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;
}




/* ---------------------------------------------------- */
/* top page */
/* ---------------------------------------------------- */

		
/* main-visual
-------------------------*/
#visual {margin-top:50px;}

    #visual h2 {
		text-align:center;
		max-width:424px;
		margin:0 auto;
	}
	
    #visual.sub {
	background:url(../images/common/bg_h2.jpg) no-repeat center;
	padding:10px 0 20px;
	
	}

#greeting {
    padding:30px 0 0px;
	background:url(../images/top/bg_greeting.jpg);
}



.greeting {
}


.greeting h3{
	padding:10px;
    /*background: url(../images/top/bg_greeting.png) no-repeat left center;
	background-size: auto 40px;*/
	font-size:18px;
	
}
.gTxt{
	border:#CCC 1px solid;
	margin:20px 0;
	padding:10px;
}

.gTxt h4{
	margin-bottom:10px;
	font-size:14px;
	font-weight:bold;
}
.gTxt h4 span{
	display:block;
	font-size:12px;
	font-weight:normal;
}


#about{
	background:url(../images/top/bg_about.jpg);
	padding:40px 0;
}

.about ul{
	display:flex;
}

h3{
	margin-bottom:20px;
}


.about ul li{
	width:30%;
	margin:1%;
	background:#FFF;
	box-shadow:0 2px 4px #999999;
	text-align:center;
}




.recruit {
    padding: 50px 0;
}

.recruit .rTxt{
	background:url(../images/top/bg_rc.png) no-repeat right top;
	background-size:284px auto;
}
.recruit table{
	width:70%;
	text-align:left;
}

.recruit table th,
.recruit table td{
	padding:8px;
}
.recruit table th{
	background:url(../images/top/bg_rTxt.gif) no-repeat left center;
	background-size:4px 10px;
	font-weight:bold;
}


.recruit .rImg{
	margin:10px 0;
}








#news{
	padding:50px 0;
	background:url(../images/top/bg_news.jpg);
	
}

.news .btn_news {
}

.news ul {
    margin-bottom: 30px;
}
.news li {
    padding: 10px 12px;
    line-height: 20px;
    overflow: hidden;
    text-align: left;
	border-bottom:  #666 1px dotted;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.news li span {
	/*display:block;
    padding-left: 30px;
    color: #222;*/
}

#news h3{
	margin-bottom:0;
	padding-left:8px;
}



#wrap-foot {
    background: url(../images/common/bg_foot.jpg) no-repeat center top;
	padding:30px 0;
	overflow:hidden;
	max-width:375px;
	margin:0 auto;
}

.ft_logo{
	float:left;
	width:50%;
	text-align:left;
}

.copyright {
    background: #f4cb26;
}


.ft_nav{
	float:right;
	width:50%;
	margin:10px auto;
}


.ft_nav li{
	text-align:center;
	padding:0 0 10px;
}

.ft_nav li img{
	width:159px;
}


/* ---------------------------------------------------- */
/* sub page */
/* ---------------------------------------------------- */


.bread_crumb_list{
	display:none;
}

.subcon {
max-width:750px;
margin:0px auto 10px;
text-align:left;
padding:10px 10px 30px;
background:url(../images/common/bg_greeting.jpg);
}



#visual.sub h2 {
    padding: 30px 0 20px;
    font-size: 26px;
	font-weight:bold;
    text-shadow: 2px 2px 1px #fff, -2px 2px 1px #fff, 2px -2px 1px #fff, -2px -2px 1px #fff;
}
.subcon h3 {
    margin-top: 3em;
    padding-bottom: 0.5em;
    font-size: 18px;
    border-bottom: 1px dotted #000;
	font-weight:bold;
}



.subcon h4 {
    margin:40px 0 20px;
    padding: 0.4em;
    font-size: 16px;
    font-weight:bold;
    border-left: 4px solid #fa6105;
    background: #fff;
    border-radius: 0 5px 5px 0;
}


.subcon table {
    width: 100%;
    border-collapse: separate;
    text-indent: initial;
    border-spacing: 2px;
}



.defTable01 th, .defTable01 td {
    padding: 1.3em;
}

.defTable01 th {
    width: 25%;
    text-align: center;
    background: url(../images/top/bg_about.jpg);
}


.defTable01 td {
    background: #fff;
}


.subcon p.p_ttl {
    margin-top: 1.5em;
    padding: 0 0 0.5em 0.5em;
    font-weight: bold;
    font-size: 14px;
    border-bottom: 1px dotted #000;
	margin-bottom:10px;
	text-align:center;
}

.subcon h3.h3_img{
	border:none;
}
	
	
	
	
.imgright{
	width:60%;
	margin:10px auto;
	border:#FFF 6px solid;
}
	
.top_box {
    padding-top: 3em;
    padding-bottom: 0.5em;
    font-size: 14px;
    line-height: 1.8em;
	font-weight: bold;
    text-align: center;
}

	
.top_box .tit {
    text-align: center;
    font-size: 18px;
    font-weight: bold;
	margin-bottom:10px;
    color: #fa6105;
}
	
	.top_box ul li {
    /* display: inline-block; */
    background: url(../images/common/bg_rTxt.gif) no-repeat left center;
    background-size: 10px 10px;
    padding-left: 20px;
    font-weight: bold;font-size: 12px;
}
.bg_img01 {
    background: url(../images/about/bg_img01.jpg) no-repeat 60% bottom,#fff;
	background-size:auto 100%;
	max-width:375px;
	margin:0 auto;
	padding:10px;
}

.txt_area h3{
margin-top: 1em;
    padding-bottom: 0.5em;
}

.txt_area{
	width:75%;
}


.bg_img02 {
    background: url(../images/about/bg_img02.jpg) no-repeat 40% top,#fff;
		background-size:auto 100%;
	max-width:375px;
	margin:0 auto;
	padding:10px;
}



.bg_img03 {
    background: url(../images/about/bg_img03.jpg) no-repeat 60% top,#fff;
		background-size:auto 100%;
	max-width:375px;
	margin:0 auto;
	padding:10px;
}

.bg_img04 {
    background: url(../images/about/bg_img04.jpg) no-repeat 40% top,#fff;
		background-size:auto 100%;
	max-width:375px;
	margin:0 auto;
	padding:10px;
}


.fRight {
    float: right;
}
.flow_list{
	text-align:center;
}
	
.flow_list .img {
    width: 60%;
    height: auto;
    border-radius: 50%;
    border: #FFF 6px solid;
    overflow: hidden;
    box-shadow: #999 3px 3px 6px;
	margin:10px auto;
	display:block;
}	
	
.flow_list h3 span {
    color: #fa6105;
    font-size: 30px;
    margin-right: 6px;
    font-family: HGS創英角ﾎﾟｯﾌﾟ体,sans-serif;
}	



.flow_list .txt_area {
    width: 100%;
}


.flow_list .left {
	float:none;
}


.flow_list section {
    width: 100%;
	text-align:center;
}



.wp-pagenavi{
	display:flex;
	overflow:hidden;
	justify-content:space-around;
}



span.date{
	float:right;
	font-size:12px;
	font-weight:bold;
}

	
.subcon #navi p{
	font-size:14px;
	text-align:center;
	margin:10px auto;
}
	
.subcon #navi ul{
	display:flex;
	flex-wrap:wrap;
}
	
	
.subcon #navi ul li{
	width:31%;
	margin:1%;
}

.g-recaptcha {
  transform-origin: 0% 0%;
  transform: scale(0.9);
}
	
	
	
	
.subcon .link_list li{
	padding:12px 8px;
	border-bottom:#CCC 1px dotted;
	background: url(../images/top/bg_rTxt.gif) no-repeat left center;
    background-size: 4px 10px;
}
	
	
.contact_form,
.contact_form tbody,
.contact_form tr,
.contact_form th,
.contact_form td{
	display: block;
	width: 100%;
	text-align: center;
	box-sizing: border-box;
}


.errBox {
    color: #FF0000;
    margin: 20px 0;
    text-align: left;
}
	
	
	
	
@media only screen and (orientation : landscape) { /*横向き*/


}
@media only screen and (orientation : portrait) { /*縦向き*/
.pagenavi li:nth-child(9n) {
	clear:both;
}

}
