@charset "UTF-8";
/* 
====================================================================================================
■ basic setting
 □ tag
 □ class
■ layout
 □ #site_header
 └  #gnav
 □ #page_area
  □ #main_area
  □ #sub_area
 □ #site_footer
 ├  #fnav
 └  #flink
■ additional
----------------------------------------------------------------------------------------------------
※ font-sizeに関しては、リセット後、#wrapperに12px相当で指定済。そこからの相対指定で行うこと。
　（親要素に既に%指定済の場合、子孫要素は基準が変わるので注意してください。）
==================================================================================================== */

/* 
====================================================================================================
■ basic setting
----------------------------------------------------------------------------------------------------
 □ tag
---------------------------------------------------------------------------------------------------- */
html, body {
	width: 100%;
	height: 100%;
}
body {
	font-size: 13px;
	font-family: Meiryo,"メイリオ","ＭＳ Ｐゴシック",Osaka,sans-serif;
	/* このbodyのfont指定はブラウザ差異を埋めるためのものなので、上書きしない。どうしても変更を加える場合
	#wrapperに基準サイズを設定。その場合font-size用クラスも全て再計算が必要です。 */
}
/* 基本の行の高さ */
p, li, td, th, dt, dd { line-height:1.5; }

/* link */
a {
	-webkit-transition: color ease-out 0.3s; -moz-transition: color ease-out 0.3s; transition: color ease-out 0.3s;
	color: #3089f8;
}
a:link { text-decoration:underline;}
a:hover {
	color: #f08c34;
	text-decoration: none;
}
a:visited {}
a:active {}
a img {	vertical-align: top;}

input[type="radio"] {
	margin-top: -3px;
	vertical-align: middle;
}

/* 上付き文字・下付き文字 */
sub, sup { font-size: 77%;} /* 10px */

.page_up { text-align:right;margin:40px 20px 0px 0px; }
.page_up a {
}

/* 
----------------------------------------------------------------------------------------------------
 □ class
---------------------------------------------------------------------------------------------------- */
/* clearfix */
.clearfix {width: 100%;}
.clearfix:after {
  content: ""; 
  display: block; 
  clear: both;
 }

.clearfix {overflow:hidden;}

.float_l { float:left; }
.float_r { float:right; }

/* 
--------------------------------------------------
 ▽ 文字装飾定義専用クラス
-------------------------------------------------- */
/* 主に新着情報への使用想定だが、通常コンテンツ内で使用も可 */
.txt_size_xxs { font-size:xx-small; }
.txt_size_xs  { font-size:x-small; }
.txt_size_s   { font-size:small; }
.txt_size_m   { font-size:medium; }
.txt_size_l   { font-size:large; }
.txt_size_xl  { font-size:x-large; }
.txt_size_xxl { font-size:xx-large; }

.txt_align_l { display:block; text-align:left; }
.txt_align_r { display:block; text-align:right; }
.txt_align_c { display:block; text-align:center; }

.txt_style_bold   { font-weight:bold; }
.txt_style_italic { font-style:italic; }
.txt_style_line   { text-decoration:underline; }

.txt_color_red    { color:#E75942; }
.txt_color_grey   { color:#999999; }
.txt_color_pink   { color:#eb6b6b; }
.txt_color_green  { color:#39B221; }
.txt_color_blue   { color:#3399FF; } /* このブルーはリンク色のブルーとは色味を若干変える事を推奨 */
.txt_color_yellow { color:#EECC00; }
.txt_color_white  { color:#F0F0F0; }
.txt_color_blown  { color:#5f4124; }


.lh0 { line-height:0 !important;}
.lh12 { line-height:1.2 !important;}
.lh13 { line-height:1.3 !important;}
.lh14 { line-height:1.4 !important;}
.lh16 { line-height:1.6 !important;}
.lh18 { line-height:1.8 !important;}
.lh2 { line-height:2 !important;}
.lh23 { line-height:2.3 !important;}

/* 
--------------------------------------------------
 ▽ font-size設定専用クラス
-------------------------------------------------- */
/* デフォルトでは#wrapperに12px相当の指定が設定済みのため、そこからの相対値になります。
※親要素に既に%指定済みの場合は子孫要素は基準が変わるのでこのクラスの使用は出来れば避けます。 */
.f10 { font-size: 55.6% !important; } /* 10px */    .f11 { font-size: 61.2% !important; } /* 11px */
.f12 { font-size: 66.7% !important; } /* 12px */    .f13 { font-size: 72.3% !important; } /* 13px */
.f14 { font-size: 72.3% !important; } /* 14px */    .f15 { font-size: 83.4% !important; } /* 15px */
.f16 { font-size: 88.9% !important; } /* 16px */    .f17 { font-size: 94.5% !important; } /* 17px */
.f18 { font-size:100.0% !important; } /* 18px */    .f19 { font-size:105.6% !important; } /* 19px */
.f20 { font-size:111.2% !important; } /* 20px */    .f21 { font-size:116.7% !important; } /* 21px */
.f22 { font-size:122.3% !important; } /* 22px */    .f23 { font-size:127.8% !important; } /* 23px */
.f24 { font-size:133.4% !important; } /* 24px */    .f25 { font-size:138.9% !important; } /* 25px */

/* 
--------------------------------------------------
 ▽ width設定専用クラス
-------------------------------------------------- */

.w100 { width:100px!important;}
.w110 { width:110px!important;}
.w130 { width:130px!important;}
.w180 { width:180px!important;}
.w200 { width:200px!important;}
.w285 { width:285px!important;}
.w300 { width:300px!important;}
.w330 { width:330px!important;}
.w335 { width:335px!important;}
.w400 { width:400px!important;}
.w430 { width:430px!important;}
.w450 { width:450px!important;}
.w500 { width:500px!important;}
.w565 { width:565px!important;}
.w600 { width:600px!important;}


/* 
--------------------------------------------------
 ▽ radious（角丸）設定専用クラス
-------------------------------------------------- */
.r03 { -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
.r04 { -webkit-border-radius: 4px; -moz-border-radius: 4px; border-radius: 4px; }
.r05 { -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }
.r06 { -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; }
.r07 { -webkit-border-radius: 7px; -moz-border-radius: 7px; border-radius: 7px; }
.r08 { -webkit-border-radius: 8px; -moz-border-radius: 8px; border-radius: 8px; }
.r09 { -webkit-border-radius: 9px; -moz-border-radius: 9px; border-radius: 9px; }
.r10 { -webkit-border-radius:10px; -moz-border-radius:10px; border-radius:10px; }


/* 
--------------------------------------------------
 ▽ 背景設定専用クラス
-------------------------------------------------- */
.bg_blue { background:#814ba8;}
.bg_pnk { background:#fff4f4;}
.bg_blk { background:#0f0f0f;}
.bg_org { background:#fefdec;}
.bg_sky { background:#e0f9ff;}
.bg_gry { background:#f9f9f9;}
.bg_wht { background:#fff;}
.bg_yel { background:#fffbef;}
.bg_pur { background:#ac184f;}
.bg_gld { background:#a09967;}

/* 
--------------------------------------------------
 ▽ ボーダー設定専用クラス
-------------------------------------------------- */
.bo_gry { border:#ccc 1px solid;}
.bo_yel { border-bottom:#ffd63b 4px solid;}
.bo_pur { border:#b37fdb 1px solid;}
.bo_b_gry { border-bottom:#ccc 1px dotted;}

/* 
--------------------------------------------------
 ▽ margin設定専用クラス
-------------------------------------------------- */
.m00  { margin: 0px !important; }         .m05  { margin: 5px !important; }
.m10  { margin:10px !important; }         .m15  { margin:15px !important; }
.m20  { margin:20px !important; }         .m25  { margin:25px !important; }
.m30  { margin:30px !important; }         .m35  { margin:35px !important; }
.m40  { margin:40px !important; }         .m45  { margin:45px !important; }

.mt00 { margin-top: 0px !important; }     .mt05 { margin-top: 5px !important; }
.mt10 { margin-top:10px !important; }     .mt15 { margin-top:15px !important; }
.mt20 { margin-top:20px !important; }     .mt25 { margin-top:25px !important; }
.mt30 { margin-top:30px !important; }     .mt35 { margin-top:35px !important; }
.mt40 { margin-top:30px !important; }     .mt45 { margin-top:35px !important; }

.mr00 { margin-right: 0px !important; }   .mr05 { margin-right: 5px !important; }
.mr09 { margin-right: 9px !important; }
.mr10 { margin-right:10px !important; }   .mr15 { margin-right:15px !important; }
.mr20 { margin-right:20px !important; }   .mr25 { margin-right:25px !important; }
.mr30 { margin-right:30px !important; }   .mr35 { margin-right:35px !important; }
.mr40 { margin-right:40px !important; }   .mr45 { margin-right:45px !important; }

.mb00 { margin-bottom: 0px !important; }  .mb05 { margin-bottom: 5px !important; }  .mb07 { margin-bottom: 7px !important; }
.mb10 { margin-bottom:10px !important; }  .mb15 { margin-bottom:15px !important; }
.mb20 { margin-bottom:20px !important; }  .mb25 { margin-bottom:25px !important; }
.mb30 { margin-bottom:30px !important; }  .mb35 { margin-bottom:35px !important; }
.mb40 { margin-bottom:40px !important; }  .mb45 { margin-bottom:45px !important; }
.mb50 { margin-bottom:50px !important; }  .mb55 { margin-bottom:55px !important; }
.mb80 { margin-bottom:80px !important; }

.ml00 { margin-left: 0px !important; }    .ml05 { margin-left: 5px !important; }
.ml10 { margin-left:10px !important; }    .ml15 { margin-left:15px !important; }
.ml20 { margin-left:20px !important; }    .ml25 { margin-left:25px !important; }
.ml30 { margin-left:30px !important; }    .ml35 { margin-left:35px !important; }
.ml40 { margin-left:40px !important; }    .ml45 { margin-left:45px !important; }

.mlr05 { margin:0px 5px !important; }
.mlr15{padding:0px 15px;}
.mlr25{padding:0px 25px;}

/* 
--------------------------------------------------
 ▽ padding設定専用クラス
-------------------------------------------------- */
.p00 { padding: 0px !important; }     .p05 { padding: 5px !important; }
.p10 { padding:10px !important; }     .p15 { padding:15px !important; }
.p20 { padding:20px !important; }     .p25 { padding:25px !important; }
.p30 { padding:30px !important; }     .p35 { padding:35px !important; }
.p40 { padding:40px !important; }     .p45 { padding:45px !important; }

.pt00 { padding-top: 0px !important; }    .pt05 { padding-top: 5px !important; }
.pt10 { padding-top:10px !important; }    .pt15 { padding-top:15px !important; }
.pt20 { padding-top:20px !important; }    .pt25 { padding-top:25px !important; }
.pt30 { padding-top:30px !important; }    .pt35 { padding-top:35px !important; }
.pt40 { padding-top:40px !important; }    .pt45 { padding-top:45px !important; }

.pr00 { padding-right: 0px !important; }  .pr05 { padding-right: 5px !important; }
.pr10 { padding-right:10px !important; }  .pr15 { padding-right:15px !important; }
.pr20 { padding-right:20px !important; }  .pr25 { padding-right:25px !important; }
.pr30 { padding-right:30px !important; }  .pr35 { padding-right:35px !important; }
.pr40 { padding-right:40px !important; }  .pr45 { padding-right:45px !important; }

.pb00 { padding-bottom: 0px !important; } .pb05 { padding-bottom: 5px !important; }
.pb10 { padding-bottom:10px !important; } .pb15 { padding-bottom:15px !important; }
.pb20 { padding-bottom:20px !important; } .pb25 { padding-bottom:25px !important; }
.pb30 { padding-bottom:30px !important; } .pb35 { padding-bottom:35px !important; }
.pb40 { padding-bottom:40px !important; } .pb45 { padding-bottom:45px !important; }

.pl00 { padding-left: 0px !important; }   .pl05 { padding-left: 5px !important; }
.pl10 { padding-left:10px !important; }   .pl15 { padding-left:15px !important; }
.pl20 { padding-left:20px !important; }   .pl25 { padding-left:25px !important; }
.pl30 { padding-left:30px !important; }   .pl35 { padding-left:35px !important; }
.pl40 { padding-left:40px !important; }   .pl45 { padding-left:45px !important; }
.pl65 { padding-left:65px !important; }

.plr20{padding:0px 20px;}
/* 
--------------------------------------------------
 ▽ 新着などのページネーション
-------------------------------------------------- */
.pagination {
	text-align: center;
}
	.pagination div {
		display: inline;
		margin: 0 10px;
	}
		.pagination a {
			line-height:42px;
		}

/* 
--------------------------------------------------
 ▽ 共通エラー表示
 （※問い合わせや、ショッピングを追加した場合にも共通で使用）
-------------------------------------------------- */
.error_disp {
	color:#C00;
}
.error_disp ul {
	margin-left:1.5em;
	list-style-type:disc;
}
/* 
--------------------------------------------------
 ▽ その他、パーツ
-------------------------------------------------- */
/* 写真入れる用のハコ */
.photo {
	border:1px solid #CCC;
	padding:4px;
}
/* 拡大アイコン（lightbox使用） */
a[rel^="lightbox"] {
	position:relative;
	display:block;
}
a[rel^="lightbox"]:after {
	display:block;
	position:absolute;
	right:0; bottom:0;
	width:24px; height:24px;
	content:"";
	background:rgba(0,0,0,0.3) url(../common_img/ico_zoom.png) center center no-repeat;
	background-size: 24px 24px;
}
/* 写真入れる用のハコ内のキャプション */
.photo .photo_cap {
	font-size:55.6%; /* 10px */
}
/* ブランクページ用のクラス */
.blank_area {
	padding:3em 0;
	text-align:center;
}
.blank_area a {
	line-height:42px;
}

/* 
====================================================================================================
■ WEBフォント
---------------------------------------------------------------------------------------------------- */

@font-face {
    font-family: 'ryumin';
    src: url('../common_img/a-otf-ryuminpro-regular-webfont.eot'); /* IE9 Compat Modes */
    src: url('../common_img/a-otf-ryuminpro-regular-webfont.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('../common_img/a-otf-ryuminpro-regular-webfont.woff') format('woff'), /* Modern Browsers */
         url('../common_img/a-otf-ryuminpro-regular-webfont.ttf')  format('truetype'); /* Safari, Android, iOS */
}

/* 
====================================================================================================
■ layout
---------------------------------------------------------------------------------------------------- */
#wrapper {
	text-align: center;
	font-size: 92.4%; /* 12px相当 ベースサイズ */
	color: #333;
}
.site_wrapper {
	margin: 0 auto;
	width: 1000px;
	text-align: left;
}

/* 
----------------------------------------------------------------------------------------------------
 □ #site_header
---------------------------------------------------------------------------------------------------- */
#site_header {
	padding: 0px 0px 0px;
	background: url(../common_img/bg_header.png) repeat-x;
}

#seo_txt {
	height: 25px;
	padding-top: 5px;
	text-align: left;
	font-size: 91.7%; /* 11px */
	color: #fff;
}
	#seo_txt h1 {
		margin: 0 auto;
		padding:0px 25px;
		font-weight: normal;
	}


	#site_header #logo_area {
		float: left;
		width: 400px;
		padding:0px 0px 0px 20px ;
	}

	#site_header #yukou_area {
		float: right;
		width: 198px;
		padding:15px 10px 0px 0px ;
	}


	#site_header #tel_area {
		float: right;
		width: 214px;
		padding:0px 20px 0px 0px ;
	}



/* 
--------------------------------------------------
 ▽ #gnav （グローバルナビゲーション）
-------------------------------------------------- */

#gnav {
	padding:0px 20px 0px 20px ;
	position: relative;
}
/* 各項目個別 */
#gnav li {
	float:left;
}
	#gnav li a {
		display: block;
	}
	#gnav li#gnav01 a {	background: url(../common_img/gnav01_on.png) no-repeat;}
	#gnav li#gnav02 a {	background: url(../common_img/gnav02_on.png) no-repeat;}
	#gnav li#gnav03 a {	background: url(../common_img/gnav03_on.png) no-repeat;}
	#gnav li#gnav04 a {	background: url(../common_img/gnav04_on.png) no-repeat;}
	#gnav li#gnav05 a {	background: url(../common_img/gnav05_on.png) no-repeat;}
	#gnav li#gnav06 a {	background: url(../common_img/gnav06_on.png) no-repeat;}
	#gnav li#gnav07 a {	background: url(../common_img/gnav07_on.png) no-repeat;}

	#gnav li a:hover{
	display: block;
	opacity:0.8;
	background:#fff;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
	-webkit-transition: opacity linear 0.4s; -moz-transition: opacity linear 0.4s; transition: opacity linear 0.4s;
	}

#gnav dd{ display:none; position: absolute; z-index:5; top:53px;padding:0; border:none; }


#gnav ul.sub_nav { padding:0 0 0;display:block; overflow: hidden;margin:0;} 
#gnav ul.sub_nav li { float: none; color:#fff; width:182px; padding:0; margin-bottom:1px; height:auto; list-style:none; }
#gnav ul.sub_nav li a { background:#246547!important;color:#fff; text-align:left; padding:10px 10px 10px 10px; height:auto;text-decoration:none;}
#gnav ul.sub_nav li a:hover { background:#0b1f00!important;color:#fff; text-align:left;}
#gnav ul.sub_nav li a:before { content:'>'; float:right;margin-left:5px; }

/* 
----------------------------------------------------------------------------------------------------
 □ #page_area
---------------------------------------------------------------------------------------------------- */
/* 共通ヘッダー&フッターを除いた、ページ内容エリア */

#top_page_area {
background: url(../common_img/contents_bg.png) no-repeat 0 0,url(../common_img/contents_bg_02.png) no-repeat 0 bottom,url(../common_img/contents_bg_03.png) repeat-y 0 0;
padding:20px 20px 20px 20px ;
margin:0px 20px 20px;
}

#page_area {
	background: url(../common_img/bg_page_area.png) repeat-x 0 0;
}

/* 
--------------------------------------------------
  ▽ #main_area
-------------------------------------------------- */
/* メインコンテンツ部分 */
#main_area {
	float: left;
	width: 680px;
	padding-bottom: 10px;
}

/* 
--------------------------------------------------
  ▽ #sub_area
-------------------------------------------------- */

#sub_area {
	float: right;
	width: 220px;
	padding: 0px 0 0 0;
}


.side_box{
 margin-bottom:25px;
 padding-bottom:20px;
 background: url(../common_img/side_bg.png) no-repeat center bottom;
 border:solid 1px #ccc;
}

.side_tt{
background: url(../common_img/side_tt.png) repeat-x 0 0;
line-height:52px;
margin-bottom:20px;
color:#cfbf8c;
font-size:160%;
font-weight:bold;
padding:0px 0px 0px 10px ;
text-shadow:1px 1px 1px #333;
}

li.link{
background:url(../common_img/ico_link.png) no-repeat 0 5px;
padding:0px 0px 0px 20px ;
color:#286c4e;
margin:10px 15px 10px 15px ;
}



.googlemap { border:1px solid #ccc; text-align:center; margin:10px 10px 5px;background:#fff;}
.googlemap iframe { width:220px; height:200px; padding:5px 0px;}
.googlemap small { background:#eee; display:block; text-align:center; padding:5px 10px 5px !important; font-size:14px !important; line-height:1; }

/* 
----------------------------------------------------------------------------------------------------
 □ #site_footer
---------------------------------------------------------------------------------------------------- */
#site_footer {
background:#2f7658;
padding:25px 0px 20px;
color:#fff;
}

.foot_left{
padding:10px 0px 0px 20px;
}


.fotter_link{
margin:10px 0 20px;
text-align:center;
}

.fotter_link img{
margin:10px;
}

ul.f_navi{
padding:0px 0px 10px 60px ;
}
ul.f_navi li{float:left;margin:5px 0;color:#fff;}
ul.f_navi li a  {text-decoration:none;padding:0px 20px;color:#fff;}
ul.f_navi li a:hover  {text-decoration:underline;}
ul.f_navi li:before { content:'|';float:right;}


/* 
--------------------------------------------------
 ▽ #flink （フッターリンク）
-------------------------------------------------- */
#flink {
	text-align: right;
}
	#flink a {
		line-height:55px;
		font-size:10px;
		color: #aaa;
	}

/* 
====================================================================================================
■ additional
---------------------------------------------------------------------------------------------------- */
/* TOP含めた全ページ「共通の設定」を追加する際、ここ以下に追記します。 */

/* ロールオーバーアニメーション
-------------------------------------------------- */
.rollover_btn a img {
	-webkit-transition: opacity linear 0.4s; -moz-transition: opacity linear 0.4s; transition: opacity linear 0.4s;
}
.rollover_btn a:hover img {
	opacity: 0;
	filter: alpha(opacity=0); /* ie lt 8 */
	-ms-filter: "alpha(opacity=0)"; /* ie 8 */
	-moz-opacity: 0; /* FF lt 1.5, Netscape */
	-khtml-opacity: 0; /* Safari 1.x */
	zoom: 1;
}

/* ロールオーバーで不透明度変更
-------------------------------------------------- */
.hover_img a:hover img,
a.hover_img:hover img {
	opacity:0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
	-webkit-transition: opacity linear 0.4s; -moz-transition: opacity linear 0.4s; transition: opacity linear 0.4s;
}

/* icon
-------------------------------------------------- */
.ico_link {
	padding-left: 15px;
	background: url(../common_img/ico_link.png) no-repeat left center;
}

