@charset "UTF-8";
/* CSS Document */

/*スマホ用スタイル*/
@media screen and (max-width: 767px){
body{
	font-size:14px;
	border-top:none;
}
section{
	padding-top:30px;
	padding-bottom:30px;
}
.br_sp{
	display:block;
}
.br_pc{
	display:none;
}
/*ヘッダー*/
header{
	padding-bottom:0px;
	background-color: #02325a;
}
.top-txt{
	font-size:12px;
	margin-top:0;
	padding:5px 15px;
	margin-bottom:0;
	background:#ccc;
	color:#fff;
}
.logo{
	font-size:18px;
	font-weight:bold;
	color:#FFFFFF;
	text-align:center;
	margin-top:10px;
	width:100%;
	margin-bottom:10px;
}
.h-contact-txt{
	color:#947F60;
	border-top:2px solid #555;
	border-bottom:1px solid #eee;
	text-align:center;
}
.sp-tel{
}
.header-gray{
	background:#EEEEEE;
	padding:5px 15px;
	font-weight:bold;
	font-size:14px;
	margin-top:10px;
}

/*gnav*/
.child {
    display: none;
}
.sp-gnav{
	margin-bottom:0;
}
.sp-gnav ul{
	margin-bottom:0;
	background:#000;
}
.toggle{
	background: url(../img/toggle.png) no-repeat 95% center #468C00;
	display:block;
	padding:10px;
	color:#fff;
}
.toggle:hover{
	color:#fff;
	text-decoration:none;
}
.sp-gnav-child a{
	display:block;
	padding-top:10px;
	padding-left:25px;
	padding-bottom:10px;
	border-bottom:1px solid #ddd;
	background:url(../img/arrow-gray.png) no-repeat 10px center #eee;
	color:#555;
}
.sp-gnav-child a:hover{
	text-decoration:none;
	background:url(../img/arrow-white.png) no-repeat 10px center #ffb347;
	color:#fff;
}

/*mv*/
.mv{
	background:url(../img/bg-concrete_seamless.png);
}
.mv-in{
	width:100%;
	margin:0 auto;
	padding-top:20px;
}
.top-btn{
	margin-top:40px;
}

/*メインコンテンツ*/
.content-top-margin{
	margin-top:25px;
}
.mb30{
	margin-bottom:15px;
}
.mb50{margin-bottom:25px;
}
.mb100{margin-bottom:50px;
}
.mrl20{
	margin:0px 20px;
}
.introduction-h3{
	font-size:18px;
	font-weight:bold;
	line-height:1.35;
	margin-bottom:10px;
}

/*ニュース*/
.news{
	border-bottom:1px dotted #BBBBBB;
	padding-bottom:10px;
	margin-bottom:30px;
}
.news dl dt{
	float:left;
	width:35%;
	line-height:1.8;
}
.news dl dd{
	float:left;
	width:65%;
}
.category{
	background:#468C00;
	color:#fff;
	margin-right:10px;
	padding:5px;
}

/*アクセス*/
.f-address{
	margin-bottom:25px;
}
.map{
	margin-bottom:60px;
}
.f-tel{
	margin-bottom:25px;
}
.access-h3{
	font-size:18px;
	border-bottom:2px dotted #ccc;
	padding-bottom:10px;
	margin-top:0;
	margin-bottom:20px;
}
.time{
	margin-bottom:25px;
}
.time li{
	margin-bottom:10px;
}

/*サブページ*/
.core{
	margin-bottom:50px;
}
.sub-h2{
    position: relative;
    padding-bottom: .3em;
    margin-bottom: 20px;
    font-weight: bold;
	font-size:24px;
	margin-top:0;
	line-height:1.4;
}
.sub-h2::before, .sub-h2::after {
    position: absolute;
    bottom: -4px;
    left: 0;
    content: '';
    height: 1px;
}
.sub-h2::before {
    z-index: 2;
    width: 30%;
    background-color: #468C00;
    height: 1px;
}
.sub-h2::after {
    width: 100%;
    background: #eee;
}
.sub-h2-02{
	margin-top:0;
	padding:10px;
	border-left:3px solid #468C00;
	font-size:20px;
	font-weight:bold;
	margin-bottom:20px;
}
.sub-h2-03{
	margin-top:0;
	margin-bottom:30px;
}
.sub-mv{
	margin-bottom:30px;
}
.smb-mv-in{
	padding-top:100px;
	padding-bottom:100px;
}
.sub-section{
	padding-top:0;
	padding-bottom:0;
	margin-bottom:50px;
}
.sub-section02{
	padding-top:0;
	padding-bottom:0;
}
.table01{
	width:100%;
}
.table01 td, th {
	border: 1px solid #fff;
	border-collapse: collapse;
	vertical-align:middle;
}
.table01 td, th {
	padding:10px;
}
.table01 td{
	color:#555;
	background:#FAFAFA;
	font-size:12px;
}
.table01 th {
	font-size:14px;
	background: #31708f;
	text-align:center;
	color:#fff;
}
.map-sub{
	margin-bottom:20px;
}
.sub-copy{
	margin-bottom:30px;
}
.h3_img{
}
/*サイドバー*/
.sidebar-out{
	background:#EEEEEE;
	padding:10px;
	margin-bottom:30px;
}
.sidebar{
	margin-bottom:0;
}
.sidebar li{
	background:url(../img/arrow-green.png) no-repeat 10px center #fff;
	padding:10px 25px;
	font-size:14px;
	margin-bottom:1px;
}
.sidebar li a{
	color:#525252;
}
.sidebnr li{
	margin-bottom:20px;
}

/*サイトマップ*/
.sitemap li{
	background:url(../img/arrow-gray.png)  no-repeat left center;
	padding-left:20px;
	border-bottom:1px dotted #ccc;
	padding-top:10px;
	padding-bottom:10px;
}

/*footer*/
.f-nav{
	font-size:12px;
	text-align:center;
	margin-bottom:30px;
}
.f-nav a{
	color:#fff;
}
.f-logo{
	margin-bottom:40px;
}
.copy{
	font-size:12px;
	text-align:center;
}
.footer-fix {
    background: rgba(0,0,0,0.7);
    padding-top: 10px;
    position: fixed;
    bottom: 0;
    left: 0px;
	z-index:9999;
}
.fix-txt{
	color:#fff;
	padding:10px;
	margin:10px;
	border:1px solid #fff;
	font-size:10px;
}
.wrap {
    width: 100%;
    margin: 0 auto;
}

/*装飾*/
.spmb20{
	margin-bottom:20px;
}
.spmb40{
	margin-bottom:40px;
}
.cl-green{
	color:#468C00;
	margin-right:30px;
}
.cl-green-ad{
	color:#468C00;
}
.bg-dark-gray{
	padding-top:50px;
	background:#545454;
	color:#fff;
}
.spph0{
	padding-left:0;
	padding-right:0;
}

.intwd{
	width:80%;
}
.border-gray{
	font-size:16px;
}
.txt20 {font-size: 16px!important;}
.txt22 {font-size: 18px!important;}
.txt28 {font-size: 18px!important;}
.txt40 {font-size:24px!important;}
.txt60 {font-size:35px!important;}
.box {
	padding: 25px 20px;
    font-size: 16px;
    font-weight: bold;
}
.box_line {
	margin:15px 5px;
    padding: 15px;
    clear: both;
	border:2px solid;
	border-color:#31708f;
	}
.box_line02 {
	margin:15px 5px;
    clear: both;
	border:2px solid;
	border-color:#31708f;
}
.point_title{
	font-size:16px;
}
.line2 {
    width: 100%;
}
.migi {
    float: none;
    margin: 0 auto ;
    margin-bottom: 15px;
    display: block;
}
.box_form{
	margin-bottom:0px;
	padding:30px 0 0;
}
textarea{
	width: 100%;
    height: 150px;
}
/*ブレッド*/
.bread li{
	background:url(../img/checkmark_r.png) no-repeat left top;
	background-size:34px;
	font-size:16px;
	font-weight:bold;
	padding-left:36px;
	margin-top:30px;
	margin-bottom:10px;
}

.spwd60{
	width:60%;
}
spwd50{
	width:50%;
}
.form_txt{
	font-size:12px;
	margin-bottom:30px;
}
.qa dt {
    font-size: 16px;
    margin-bottom: 20px;
    background: url(../img/q.png) no-repeat left center;
	background-size:30px;
    padding-left: 40px;
    padding-top: 10px;
    padding-bottom: 10px;
}
.qa dd {
    background: url(../img/a.png) no-repeat left center;
	background-size:30px;
    padding-left: 40px;
    padding-top: 13px;
    padding-bottom: 13px;
}
}
/*スマホ用スタイルend*/