/* +++++++++++++++++++++++++++++++++++　基本レイアウト */

body.top{
	background: url(../img/index/top_bg.jpg) repeat-x left top;
}
body.under{
	background: url(../img/common/under_bg.jpg) repeat-x left top;
}

#top-main-bg{
	background: url(../img/index/top_main_bg.png) no-repeat center top;
}
#main-contents{
	width:960px;
	margin: 0 auto;
}




/* +++++++++++++　共通左エリア */

#left-contents{
	float:left;
	width:220px;
	margin-right:40px;
	padding-bottom:300px;
	background: url(../img/common/left_content_bg.jpg) no-repeat left bottom #fff;
}
#logo{
	margin-bottom:15px;
}
#g-navi{
	margin-bottom:30px;
}
#g-navi li{
	float:left;
}


/* +++++++++++++　共通右エリア */

#right-contents{
	position:relative;
	float:left;
	width:700px;
	padding-bottom:70px;
}
.page-top-link{
	position:absolute;
	bottom:10px;
	right:0;
	display:inline-block;
	padding:10px;
	border: solid 1px #DDDDDD;
	border-bottom:none !important;
	font-size:12px;
}
.page-top-link a{
	padding-left:15px;
	background: url(../img/common/page_top_icon.gif) no-repeat left center;
	text-decoration:none;
}
.page-top-link a:hover{
	color:#666;
}

/* +++++++++++++　フッター */

#footer-llink{
	clear:both;
	width:100%;
	padding:15px 0;
	background-color:#EEEEEE;
	text-align:center;
	font-size:12px;
}
#footer-llink li{
	display:inline;
	padding:0 15px;
	background: url(../img/common/footer_link_line.gif) no-repeat right center;
}
#footer-llink li.last{
	background: none !important;
}
#copyright{
	width:100%;
	padding:10px 0;
	background-color:#002DB2;
	text-align:center;
	font-size:12px;
	color:#FFF;
}

/* +++++++++++++　下層テンプレートパーツ */

/*+++++　下層タイトル */

.under-ttl{
	margin-bottom:15px;
	padding-top:40px;
}

/*+++++　パンくず */
#pankuzu{
	margin-bottom:20px;
}
#pankuzu li{
	display:inline;
	font-size:12px;
}

/*+++++　見出しレベル1 */

.ttl{
	clear:both;
	height:35px;
	margin-bottom:20px;
	padding: 17px 0 0 20px;
	font-size:16px;
	line-height:1.4em;
	font-weight:bold;
	background: url(../img/common/ttl_bg.jpg) no-repeat left top;
}

/*+++++　見出しレベル2 */

.sub-ttl{
	clear:both;
	margin-bottom:15px;
	padding:10px 0;
	border-top: solid 1px #002DB2;
	border-bottom: dotted 1px #BBBBBB;
	font-size:16px;
	line-height:1.4em;
	font-weight:bold;
}

/*+++++　見出しレベル3 */

.mini-ttl{
	clear:both;
	margin-bottom:15px;
	padding: 5px 0 5px 15px;
	border-left: solid 4px #002DB2;
	font-weight:bold;
	font-size:16px;
	color:#002DB2;
	line-height:1.2em;
}

/*+++++　リード文 */

.read-ttl{
	margin-bottom:0px;
	font-weight:bold;
	font-size:18px;
	line-height:1.8em;
	color:#002CB2;
}

/*+++++　画像＋文字組み */

.images-block{}

.images-caption{
	padding-top:10px;
	font-size:12px;
	line-height:1.4em;
	text-align:center;
	
}

/* 文字左：画像右 */

.images-block .left-txt{
	float:left;
	width:430px;
}
.images-block .right-img{
	float:right;
	width:250px;
}

/* 画像左：文字右 */

.images-block .left-img{
	float:left;
	width:250px;
}
.images-block .right-txt{
	float:right;
	width:430px;
}

/*+++++　箇条書きリスト */

.default-unordered{}
.default-unordered li{
	padding-left:14px;
	margin-bottom:10px;
	background: url(../img/common/list_icon01.gif) no-repeat left center;
}
.default-unordered li.icon-none{
	background: none;
}
.default-unordered li ul{
	padding-top:10px;
	padding-left:2px;
}
.default-unordered li ul li{
	padding-left:10px;
	margin-bottom:10px;
	background: url(../img/common/list_icon02.gif) no-repeat left center;
}


/*+++++　順序リスト */

.default-order{
	counter-reset:li;
}
.default-order li{
	position:relative;
	padding-left:10px;
    margin-left:19px;
	margin-bottom:10px;
    *list-style-type: decimal; /*IE7*/
	line-height:1.4em;
}
.default-order li:before{
	content:counter(li);
    counter-increment:li;
    position:absolute;
    left:-19px;
    width:19px;
	border: solid 1px #002DB2;
    color:#002DB2;
	background-color:#fff;
	text-align:center;
}
/*+++++　アイコン付きリンク */

.icon-link a{
	padding-left:12px;
	background: url(../img/common/link_icon01.gif) no-repeat left center;
}


/*+++++　ボタンリンク */

.btn-link a{
	padding:7px 20px 7px 20px;
	border: solid 1px #0431B3;
	color:#FFF;
	text-decoration:none;
	background: url(../img/common/btn_link_bg.jpg) repeat-x left bottom #3256C1;
}
.btn-link a span{
	padding-left:12px;
	background: url(../img/common/link_icon02.gif) no-repeat left center;
}
.btn-link a:hover{
	background: url(../img/common/btn_link_bg-hover.jpg) repeat-x left bottom #5B8FDF;
}

/*+++++　テーブル01 */

.default-table01{
	width:700px;
	background-color:#CCC;
	border-collapse: separate;
	border-spacing: 1px;
}
.default-table01 th,
.default-table01 td{
	padding: 20px;
	border: solid 1px #fff;
	background-color:#FFF;
}
.default-table01 thead th{
	background-color:#E8EDF9;
	font-weight:bold;
	text-align:center;
	border-bottom: solid 1px #002DB2;
}
.default-table01 tbody th{
	background-color:#EEEEEE;
	font-weight:bold;
	width: 147px;
}


/*+++++　テーブル02 */

.default-table02{
	width:700px;
	background-color:#CCC;
	border-collapse: separate;
	border-spacing: 1px;
}
.default-table02 th,
.default-table02 td{
	padding: 20px;
	border: solid 1px #fff;
	background-color:#FFF;
	vertical-align:top;
}
.default-table02 tbody th{
	background-color:#E8EDF9;
	font-weight:bold;
	border-right: solid 1px #002DB2;
	width: 147px;
}


/*+++++　カラム01 */

.column-ttl{
	clear:both;
	padding: 15px 20px;
	background-color:#F3F5FC;
	border-top: solid 1px #002DB2;
	border-bottom: solid 1px #CCD8F2;
	font-weight:bold;
	font-size:16px;
	color:#002DB2;
}

.column-block{
	padding:20px;
	background-color:#F3F5FC;
	border-top: solid 1px #fff;
	border-bottom: solid 1px #002DB2;
}
/* 文字左：画像右 */

.column-block .column-left{
	float:left;
	width:380px;
}
.column-block .column-right{
	float:right;
	width:250px;
}

/*+++++　カラム横２段組(カラム中ver) */

.column-block .two-column-block{
}
.column-block .two-column-block .left-block{
	float:left;
	width:320px;
}
.column-block .two-column-block .right-block{
	float:right;
	width:320px;
}

/*+++++　カラム横3段組(カラム中ver)  */

.column-block .three-column-block{
	font-size:12px;
	line-height:1.4em;
}
.column-block .three-column-block .left-block{
	float:left;
	width:210px;
	margin-right:20px;
}
.column-block .three-column-block .center-block{
	float:left;
	width:210px;
}
.column-block .three-column-block .right-block{
	float:right;
	width:210px;
}









/*+++++　カラム横２段組(カラム外ver) */

.two-column-block{
}
.two-column-block .left-block{
	float:left;
	width:340px;
}
.two-column-block .right-block{
	float:right;
	width:340px;
}

/*+++++　カラム横3段組(カラム外ver)  */

.three-column-block{
	font-size:12px;
	line-height:1.4em;
}
.three-column-block .left-block{
	float:left;
	width:220px;
	margin-right:20px;
}
.three-column-block .center-block{
	float:left;
	width:220px;
}
.three-column-block .right-block{
	float:right;
	width:220px;
}

/*+++++　カラム横4段組(カラム外ver)  */

.four-column-block{
	line-height:1.4em;
}
.four-column-block p{
	margin-bottom:0.5em;
}
.four-column-block .left-block{
	float:left;
	width:160px;
	margin-right:20px;
	text-align:center;
}
.four-column-block .center-block{
	float:left;
	width:160px;
	margin-right:20px;
	text-align:center;
}
.four-column-block .center2-block{
	float:left;
	width:160px;
	text-align:center;
}
.four-column-block .right-block{
	float:right;
	width:160px;
	text-align:center;
}









/* +++++++++++++++++++++++++++++++++++　トップ */

#top-main{
	margin-bottom:70px;
	padding: 60px 0 0 0;
}

#top-main #main-copy{
	margin-bottom:0px;
	margin-left:-18px;
}

#top-main #main-txt{
	color:#FFF;
	width:320px;
}

#top-lineup{
	margin-bottom:70px;
}
#top-lineup #top-lineup-ttl{
	float:left;
	width:100px;
}
#top-lineup #top-lineup-list{
	float:left;
}
#top-lineup #top-lineup-list li{
	float:left;
}
#top-bnr{
	
	
}
#top-bnr .left-bnr{
	float:left;
}
#top-bnr .right-bnr{
	float:right;
}




/* +++++++++++++++++++++++++++++++++++　お問い合わせ */

.formmiddle{
	width:220px;
}
.formlong{
	width:420px;
}

.btn_wrapper{
	width:260px;
	overflow:hidden;
	margin:0 auto;
}
.submit input{
	float:left;
	padding:7px 20px 7px 20px;
	border: solid 1px #0431B3;
	color:#FFF;
	text-decoration:none;
	background:#3256C1;
	cursor:pointer;
	font-size:100%;
}
.reset input{
	float: right;
	padding:7px 20px 7px 20px;
	border: solid 1px #0431B3;
	color:#FFF;
	text-decoration:none;
	background:#3256C1;
	cursor:pointer;
	font-size:100%;
}
input:hover{
	opacity: 0.8;}