@charset "utf-8";

/*----------------------------------------------------
 elements
----------------------------------------------------*/
body {
	color: #393939;
	font-family: ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif;
	font-size: 14px;
	line-height: 1.5;
	background:#FFF;
}
a { color: #666; text-decoration: none; }
/* a:visited { text-decoration: none; } */
img { vertical-align: top; }
img:not([width]) { zoom: 0.5; /* Retinaディスプレイ対応のためimg要素は半分の大きさに */ }
p, dl, ol, ul { }
ol, ul { list-style:none; }
/* --------------------------------------------------- */
/* wrapper */
/* ---------------------------------------------------- */
#wrapper {
	overflow: hidden;
	margin: 0 auto;
}
/* ---------------------------------------------------- */
/* ランドスケープ表示 */
/* ---------------------------------------------------- */
@media all and (orientation:landscape) { #wrapper { width: 100%; } }
/* ---------------------------------------------------- */
/* header */
/* ---------------------------------------------------- */
h1.head {
	background:#3ed635;
	color:#FFF;
	font-size:12px;
	line-height:16px;
	text-align:left;
	padding:7px 5px;
	margin:0px;
}
#header .cont{
	overflow:hidden;
	padding:10px;
	background: -moz-linear-gradient(top, #cfffa4, #FFF);
	background: -webkit-gradient(linear, left top, left bottom, from(#cfffa4), to(#FFF));
}
#header .cont #logo{ float:left; }
#header .cont #tel{ float:right; }
#header .cont #logo img,
#header .cont #tel img{ width:auto; height:100px; }

/* 角丸 */
/* border-radius: 10px;			/* CSS3草案 */
/* -moz-border-radius: 10px;		/* Firefox用 */
/* -webkit-border-radius: 10px;	/* Safari,Google Chrome用 */

/* 内影 */
/* box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.4) inset; */
/* -moz-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.4) inset; */
/* -webkit-box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.4) inset; */
	
/* 下影 */
/* box-shadow:rgba(0, 0, 0, 0.4) 0px 5px 10px 0px; */
/* -moz-box-shadow:rgba(0, 0, 0, 0.4) 0px 5px 10px 0px; */
/* -webkit-box-shadow:rgba(0, 0, 0, 0.4) 0px 5px 10px 0px; */

/* 透過 */
/* background-color: rgba(173,139,98,0.2); */

/* グラデーション */
/* background: -moz-linear-gradient(top, #F00, #FFF); /* Firefox用 */
/* background: -webkit-gradient(linear, left top, left bottom, from(#F00), to(#FFF)); /* Safari,Google Chrome用 */

/* ---------------------------------------------------- */
/* visual */
/* ---------------------------------------------------- */
#visual {
	border-top:1px solid #52cb00;
	border-bottom:1px solid #52cb00;
	box-shadow:rgba(0, 0, 0, 0.1) 0px 5px 5px 0px;
	-moz-box-shadow:rgba(0, 0, 0, 0.1) 0px 5px 5px 0px;
	-webkit-box-shadow:rgba(0, 0, 0, 0.1) 0px 5px 5px 0px;
	margin-bottom:10px;
}
/* ---------------------------------------------------- */
/* footer */
/* ---------------------------------------------------- */
footer{ margin:30px 0px 0px; font-size:12px; }
footer .cont{ margin:0px 10px; }

ul.fsp2 { overflow:hidden; margin:10px 5px; }
ul.fsp2 li{
	float:left;
	width:48%;
	background: -moz-linear-gradient(top, #8D9E35, #606B26); /* Firefox用 */
	background: -webkit-gradient(linear, left top, left bottom, from(#8D9E35), to(#606B26)); /* Safari,Google Chrome用 */
	border:1px solid #77852e;
	border-radius: 10px;			/* CSS3草案 */
	-moz-border-radius: 10px;		/* Firefox用 */
	-webkit-border-radius: 10px;	/* Safari,Google Chrome用 */
}
ul.fsp2 a{ display:block; padding:10px; font-size:16px; font-weight:bold; text-align:center; color:#FFF; }
ul.fsp2 li:nth-child(2){ float:right; }

ul.f_nav {
	overflow:hidden;
	margin:0px 5px;
	background:#FBF8F3;
	border:1px solid #DDDDDD;
	border-radius: 10px;			/* CSS3草案 */
	-moz-border-radius: 10px;		/* Firefox用 */
	-webkit-border-radius: 10px;	/* Safari,Google Chrome用 */
}
ul.f_nav li{
	float:left;
	width:50%;
	box-sizing:border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	border-right:1px solid #DDDDDD;
	border-bottom:1px solid #DDDDDD;
	background:url(../images/common/arrow01.png) right center no-repeat;
	background-size: auto 22px;
	-moz-background-size: auto 22px;
	-webkit-background-size: auto 22px;
}

ul.f_nav2 {
	overflow:hidden;
	margin:10px 0px 0px;
	border-top:1px solid #;
	border-bottom:1px solid #;
}
ul.f_nav2 li{ float:left; width:50%; }
ul.f_nav li:nth-child(2n){ float:right; }

ul.f_nav li a{ display:block; padding:8px; color:#85624f; }
ul.f_nav li:nth-child(2n){ border-right:none; }
ul.f_nav li:nth-last-child(1),
ul.f_nav li:nth-last-child(2){ border-bottom:none; }

#f_info { padding:0px 10px; }
#f_info p{ margin-bottom:5px; }
#f_info a{ text-decoration:underline; }

footer ul.under {
	overflow:hidden;
	background:#3ed635;
	border-top:1px solid #;
	border-bottom:1px solid #FFF;
}
footer ul.under li{
	float:left;
	width:50%;
	border-right:1px solid #FFF;
	margin-right:-1px;
}
footer ul.under li a{ display:block; text-align:center; line-height:30px; color:#FFF; }
footer ul.under li:nth-child(2){ border:none; margin:0px; }

footer small {
	display: block;
	background:#3ed635;
	padding:10px 5px;
	/*
	box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1) inset;
	-moz-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1) inset;
	-webkit-box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1) inset;*/
}
footer small#copy{ text-align:center; font-size: 10px; color:#FFF; }
footer small#copy a{ text-decoration:underline; color:#FFF; }
/* ---------------------------------------------------- */
/* content */
/* ---------------------------------------------------- */
.overf_h { overflow:hidden; }
.clear { clear:both; }
	
.left{ float:left; }
.right{ float:right; }
.textcenter{ text-align: center; }
.textright{ text-align: right; }
.textleft{ text-align: left; }
.text { overflow:hidden; zoom:1; }
	
/* ---------------------------------------------------- */
/* ▼各ページCSS */
/* ---------------------------------------------------- */
/* 新着情報 */
.news { padding-bottom:20px; border-bottom:1px dotted #CCC; margin-bottom:30px; }
#top_news {  padding:0px 10px 10px; margin-bottom:20px; background:#e8fecf; }
#top_news dl { overflow:hidden; background:url(../images/common/border_bottom01.png) bottom left repeat-x; padding-bottom:2px; }
#top_news dl a{ display:block; padding:10px 5px 8px; color:#494949; }
#top_news dl dt{ float:left; margin-right:10px; }
#top_news dl dd{ overflow:hidden; zoom:1; }

.bnr { margin:0px 0px 30px; overflow:hidden; }
.bnr .right,
.bnr .left { width:48%; }
.bnr .right div,
.bnr .left div{
	margin:5px 0px;
	border: 1px dotted #CCC;
	padding:5px;
	background:#f5f5f5;
	color:#182c88;
}
.bnr2 { margin-bottom:30px; }
.bnr2 div{
	margin:5px 0px 20px;
	border: 1px dotted #CCC;
	padding:5px;
	background:#f5f5f5;
	color:#182c88;
}

/* -- -- */

.information01 h4{
	margin:0px 30px;
	padding:5px;
	text-align:center;
	font-weight:bold;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
}
.information01 h4.b{
	color:#fff;
	background: -moz-linear-gradient(top, #80c5fc, #3298fd);
	background: -webkit-gradient(linear, left top, left bottom, from(#80c5fc), to(#3298fd));
	margin-bottom:5px;
}
.information01 h4.g{
	color:#333;
	background: -moz-linear-gradient(top, #ddfa90, #bcf626);
	background: -webkit-gradient(linear, left top, left bottom, from(#ddfa90), to(#bcf626));
	margin-bottom:10px;
}
.information01 .dl01 dl { margin-bottom:5px; }
.information01 .dl01 dl dt,
.information01 .dl01 dl dd{ font-weight:bold; color:#3399fd; }

.box01 { margin:0px 35px; }

.green { color:#329916; }
.blue { color:#3399fd; }

/* -- -- */

.dl01 dl{ overflow:hidden; }
.dl01 dl dt{ float:left; width:15px; }
.dl01 dl dt b{ color:#CD3301; }
.dl01 dl dd{ overflow:hidden; zoom:1; }

/* -- -- */

table.table2 { width:100%; margin-bottom:20px; }
table.table2 th{ border:1px solid #ccc; padding:5px; text-align:left; vertical-align:middle; background:#E7F0FA; }
table.table2 td{ border:1px solid #ccc; padding:5px; text-align:left; vertical-align:middle; text-align:right; width:80px; }

/* -- -- */
.nav2 { overflow:hidden; margin-bottom:20px; }
.nav2 li{
	float:left;
	padding:5px 0px;
	text-align:center;
	font-size:14px;
	font-weight:bold;
	background: -moz-linear-gradient(top, #8D9E35, #606B26); /* Firefox用 */
	background: -webkit-gradient(linear, left top, left bottom, from(#8D9E35), to(#606B26)); /* Safari,Google Chrome用 */
	border:2px solid #77852e;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.nav2 li a{ color:#FFF; }
.nav2 li:nth-child(1){ width:49%; }
.nav2 li:nth-child(2){ width:49%; float:right; }
/* -- -- */
.f_btn{ margin:20px 5px; }
.f_btn,.btn {
	text-align:center;
	border-radius: 10px;			/* CSS3草案 */
	-moz-border-radius: 10px;		/* Firefox用 */
	-webkit-border-radius: 10px;	/* Safari,Google Chrome用 */
	background: -moz-linear-gradient(top, #80c5fc, #3298fd);
	background: -webkit-gradient(linear, left top, left bottom, from(#80c5fc), to(#3298fd));
	border:1px solid #ccc;
}
.f_btn a,.btn a{
	display:block;
	font-size:16px;
	line-height:20px;
	font-weight:bold;
	color:#FFF;
	padding:15px 0px 13px;
}

.overf_h .left { width:25%; margin:0px 10px 10px 0px; }
.overf_h p { display:block; overflow:hidden; zoom:1; }

.beforeafter { overflow:hidden; background:url(../images/common/icon05.png) no-repeat center center; margin-top:10px; }
.before { float:left; width:45%; }
.after { float:right; width:45%; }
.before img,.after img{ padding:2px; border:1px solid #CCC; }
/* ---------------------------------------------------- */
/* ▲各ページCSS */
/* ---------------------------------------------------- */
/* Facebook Like Box width: 100% */
#facebookLikeBox{margin:0 10px 10px;}
#facebookLikeBox .fbcomments,
#facebookLikeBox .fb_iframe_widget,
#facebookLikeBox .fb_iframe_widget[style],
#facebookLikeBox .fb_iframe_widget iframe[style],
#facebookLikeBox .fbcomments iframe[style],
#facebookLikeBox .fb_iframe_widget span{
    width: 100% !important;
    height:300px !important;
}
/* google map margin size */
.map img:not([width]) { zoom: 0 !important; }
.map{ height: 300px; margin-bottom: 30px; border:1px solid #dfdfdf; }
/* ページネーション */
.pagination { clear:both; padding:20px 0; position:relative; font-size:11px; line-height:13px; }
.pagination span, .pagination a { display:block; float:left; margin: 2px 2px 2px 0; padding:6px 9px 5px 9px; text-decoration:none; width:auto; color:#fff; background: #555; }
.pagination a:hover{ color:#fff; background: #60A62A; }
.pagination .current{ padding:6px 9px 5px 9px; background: #60A62A; color:#fff; }

/* -- ▼ QA -- */
.faq {
	padding-bottom:20px;
	background:url(../images/faq/border.png) bottom center no-repeat;
	margin-bottom:20px;
	background-size: 98% auto;
	-moz-background-size: 98% auto;
	-webkit-background-size: 98% auto;
}
.q {
	font-size:18px;
	line-height:20px;
	margin:0px 0px 10px 0px;
	padding:0px 0px 0px 30px;
	background:url(../images/faq/q.png) left top no-repeat;
	background-size: auto 20px;
	-moz-background-size: auto 20px;
	-webkit-background-size: auto 20px;
	font-weight:bold;
	color:#EF821D;
}
.a {
	margin:0px 0px 0px 0px;
	padding:0px 0px 0px 30px;
	background:url(../images/faq/a.png) left top no-repeat;
	background-size: auto 20px;
	-moz-background-size: auto 20px;
	-webkit-background-size: auto 20px;
}
/* -- ▼ サイトマップ -- */
ul.sitemap { margin:-10px; padding:5px 5px 5px; }
ul.sitemap li:last-child{ border-bottom:1px dotted #CCC; }
ul.sitemap li{
	border-top:1px dotted #CCC;
	background:url(../images/common/arrow03.gif)left 5px center no-repeat;
	background-size:13px auto; -moz-background-size:13px auto; -webkit-background-size:13px auto;
}
ul.sitemap li a{ color: #666; font-weight:normal; display:block; padding: 10px 5px 10px 25px; }
/* -- ▼ コンテンツ -- */
.main_content {
	margin:0px;
	padding:0px 10px 10px;
}
.contents {
	border:1px solid #aca3a3;
}
.content {
	overflow:hidden;
	padding:10px 10px;
}
.border {
	border:1px solid #c2eef9; border-top:none;
	box-sizing:border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box;
	border-radius: 0px 0px 5px 5px; -moz-border-radius: 0px 0px 5px 5px; -webkit-border-radius: 0px 0px 5px 5px;
}
.top_content01 {
	overflow:hidden;
	padding:10px 10px 0px;
	background:#f8fcff;
	border:1px solid #c2eef9;
	border-top:none;
	box-sizing:border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	border-radius: 0px 0px 5px 5px;
	-moz-border-radius: 0px 0px 5px 5px;
	-webkit-border-radius: 0px 0px 5px 5px;
}
.top_content02 { padding:10px 5px 0px; }
/* CenterImgBox */
.cib { text-align:center; margin-bottom:10px; background:#FFF; }
.cib img { padding:2px; border:1px solid #CCC; box-sizing:border-box; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; }

/* -- ▼ 2列リスト -- */
ul.sp2 { overflow:hidden; margin:0px; }
ul.sp2 li{ float:left; width:49%; margin-bottom:10px }
ul.sp2 li:nth-child(2n){ float:right; }


footer ul.sp2 li:nth-last-child(1),
footer ul.sp2 li:nth-last-child(2){ margin-bottom:0px; }
	
/* -- ▼ 3列リスト -- */
ul.sp3{
	font-size:12px;
	color:#000;
	padding: 0px 0px 0px 1px;
	margin:10px 0px;
	overflow: hidden;
}
ul.sp3 li{
	width:32%;
	float:left;
	color:#000;
	margin-right:2%;
	margin-bottom:5px;
	overflow:hidden;
}
ul.sp3 li:nth-child(3n){ margin-right:0px; }
/* -- ▼ 1列のリンクリスト -- */
.link_list { border-bottom:1px dotted #666; }
.link_list li{ background:url(../images/common/arw.gif) no-repeat left center; border-top:1px dotted #666; }
.link_list li a{ display:block; padding: 5px 0px 5px 17px; color:#666; }

/* -- ▼ ボタン -- */
.btn01 {
	display:block;
	padding:10px 0px;
	text-align:center;
	font-size:16px;
	line-height:19px;
	color:#FFF;
	background:#FC9E9C;
	border-radius: 10px;			/* CSS3草案 */
	-moz-border-radius: 10px;		/* Firefox用 */
	-webkit-border-radius: 10px;	/* Safari,Google Chrome用 */
}
/* -- ▼共通テーブル -- */
table.table { width:100%; margin:0px 0px 20px; /* border-collapse:separate; border-spacing:2px; */ }
table.table tr{ }
table.table th{ border:1px solid #ccc; padding:5px 0px 5px 5px; text-align:left; vertical-align:middle; width:30%; background:#E7F0FA; }
table.table td{ border:1px solid #ccc; padding:5px 0px 5px 5px; text-align:left; vertical-align:middle; }

.wp_content table { width:100%; margin: 10px 0px 20px; }
.wp_content table tr{ background:url(../images/common/line2px.gif) bottom repeat-x; color:#483D28; }
.wp_content table td{ border:1px solid #ccc; min-width:20px; padding:5px; text-align:left; vertical-align:middle; }
/* -- -- */
.page_top {
	text-align:right;
	text-decoration:underline;
}


.h2 {
	background: -moz-linear-gradient(top, #7be500, #2ab200); /* Firefox用 */
	background: -webkit-gradient(linear, left top, left bottom, from(#7be500), to(#2ab200)); /* Safari,Google Chrome用 */
}
.h2 span {
	display:block;
	background:url(../images/common/h3_bg.png) repeat;
	font-size:24px;
	font-weight:bold;
	line-height:20px;
	padding:17px 10px 13px;
	margin-bottom:0px;
	color:#FFF;
	text-shadow: 1px 1px 0px #549B35;
	-moz-box-shadow: 1px 1px 0px #549B35;
	-webkit-box-shadow: 1px 1px 0px #549B35;
}
.h3 {
	border-radius: 10px 10px 0px 0px;
	-moz-border-radius: 10px 10px 0px 0px;
	-webkit-border-radius: 10px 10px 0px 0px;
	background: -moz-linear-gradient(top, #7be500, #2ab200);
	background: -webkit-gradient(linear, left top, left bottom, from(#7be500), to(#2ab200));
}
.h3 span {
	display:block;
	background:url(../images/common/h3_bg.png) repeat;
	font-size:16px;
	font-weight:bold;
	line-height:20px;
	padding:13px 10px 7px;
	margin-bottom:0px;
	color:#FFF;
}
.h4 {
	background: -moz-linear-gradient(top, #7be500, #2ab200);
	background: -webkit-gradient(linear, left top, left bottom, from(#7be500), to(#2ab200));
	margin:0px -10px 5px;
}
.h4 span{
	display:block;
	background:url(../images/common/h3_bg.png) repeat;
	font-size:16px;
	font-weight:bold;
	line-height:20px;
	padding:10px 10px 7px;
	color:#FFF;
}
.h5 {
	width:80%;
	margin: 5px auto 20px;
	padding:6px 0px;
	background:#F2BF99;
	color:#9F553B;
	font-size:14px;
	font-weight:bold;
	text-align:center;
}

/* -- -- */
.underline { text-decoration: underline; }
.bold { font-weight:bold; }
.mr10 { margin-right: 10px; }
.ml10 { margin-left: 10px; }
b { font-weight:bold; }
/* ---------------------------------------------------- */
/* detail */
/* ---------------------------------------------------- */
@media only screen and (orientation : portrait) {
	/*縦向き*/
	.main_content { padding-top:15px; }
	.mt5 { margin-top: 5px;  }
	.mt10{ margin-top: 10px; }
	.mt20{ margin-top: 20px; }
	.mt30{ margin-top: 30px; }
	.mt40{ margin-top: 40px; }
	.mt50{ margin-top: 50px; }
	
	.pt5 { padding-top: 5px; }
	.pt10{ padding-top: 10px; }
	.pt20{ padding-top: 20px; }
	.pt30{ padding-top: 30px; }
	.pt40{ padding-top: 40px; }
	.pt50{ padding-top: 50px; }
	
	.mb5 { margin-bottom: 5px;  }
	.mb10{ margin-bottom: 10px; }
	.mb20{ margin-bottom: 20px; }
	.mb30{ margin-bottom: 30px; }
	.mb40{ margin-bottom: 40px; }
	.mb50{ margin-bottom: 50px; }
	
	.pb5 { padding-bottom: 5px; }
	.pb10{ padding-bottom: 10px;}
	.pb20{ padding-bottom: 20px;}
	.pb30{ padding-bottom: 30px;}
	.pb40{ padding-bottom: 40px;}
	.pb50{ padding-bottom: 50px;}
}
@media only screen and (orientation : landscape) {
	
	/*横向き*/
	.main_content { padding-top:35px; }
	
	#header .cont{ overflow:hidden; padding:20px; }
	#header .cont #logo{ float:left; }
	#header .cont #tel{ float:right; }
	#header .cont #logo img,
	#header .cont #tel img{ width:auto; height:200px; }
	
	.top_content01 { padding:20px 20px 0px; }
	.top_content02 { padding:20px 10px }
	
	.mt5 { margin-top: 10px;  }
	.mt10{ margin-top: 20px; }
	.mt20{ margin-top: 40px; }
	.mt30{ margin-top: 60px; }
	.mt40{ margin-top: 80px; }
	.mt50{ margin-top: 100px; }
	
	.pt5 { padding-top: 10px; }
	.pt10{ padding-top: 20px; }
	.pt20{ padding-top: 40px; }
	.pt30{ padding-top: 60px; }
	.pt40{ padding-top: 80px; }
	.pt50{ padding-top: 100px; }
	
	.mb5 { margin-bottom: 10px;  }
	.mb10{ margin-bottom: 20px; }
	.mb20{ margin-bottom: 40px; }
	.mb30{ margin-bottom: 60px; }
	.mb40{ margin-bottom: 80px; }
	.mb50{ margin-bottom: 100px; }
	
	.pb5 { padding-bottom: 10px; }
	.pb10{ padding-bottom: 20px;}
	.pb20{ padding-bottom: 40px;}
	.pb30{ padding-bottom: 60px;}
	.pb40{ padding-bottom: 80px;}
	.pb50{ padding-bottom: 100px;}
}
	
	/* font-family: "HG明朝E","ＭＳ Ｐ明朝","MS PMincho","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro",serif; */