/* アーキネット テーマ */

/* 全体の設定 */
body {
	margin: 0;
	padding: 0;

	color: #383838;
	background-color: #fff;

	font-size: 87%;
}

/* 全体のレイアウト */
#navigation, 
#footer, 
#sub-header, 
#sub-footer, 
#main-content {
	width: 800px;
	margin-left: auto;
	margin-right: auto;
}
#navi-container {
	position: absolute;
	top: 0px;
	width: 100%;
	height: 80px;
}
#navigation {
	position: relative;
	height: 80px;
	padding: 0;
}
#foot-container {
	position: relative;
	/zoom: 1;
}
#footer {
	position: relative;
}
#sub-header {
	margin-top: 80px;
	margin-bottom: 24px;;
}
#sub-footer {
	margin-top: 0;
	margin-bottom: 30px;
}

/* コンテンツ本体をはさむ */
div.contents {
	margin: 0;
	padding: 10px 0 10px 0;
	line-height: 1.80em;
	letter-spacing: 0.07em;
}
/* 半分幅で2カラムにする */
div.halfcolumn {
	width: 380px;
	margin: 5px 0px;
	padding: 0;
	float: left;
	display:inline;
}
div.halfcolumn-spacer {
	width: 40px;
	height: 40px;
	margin: 0; padding: 0;
	float: left;
	display:inline;
}
/* IE6 Bug .. float:xx 指定時に margin-xx の量が倍になる→display:inline 指定で回避 */
/* 流し込み終了(2カラム,dl.horizontal の終了箇所に追加) */
div.floatend {
	clear: both;
}
/* 幅を520ピクセルにする(旧サイト互換) */
div.legacy {
	width: 520px;
	margin: 0 auto 0 auto;
	padding: 0;
}
/* 幅を800ピクセルにする */
div.wide {
	margin: 0;
	padding: 0;
}
/* 幅を600ピクセルにする(2010/07新ガイドライン) */
div.legacy2 {
	width: 600px;
	margin: 0 auto 0 auto;
	padding: 0;
}
/* テキスト用600ピクセル幅レイアウト 文章が中心のコンテンツは、横幅が大きいと読みづらくなるため、次のクラスで横幅を制限する */
div.text {
	width: 600px;
	margin: 0;
	padding: 0 90px 0 90px;
}

/* リード 本文要約の掲載に利用する */
div.lead {
	width: 520px;
	margin: 0.3em auto 0.3em auto;
	font-size: small;
	line-height: 1.5em;
}

/* 文字サイズを小さくして、一覧性を高めたいブロックに適用する */
.compress {
	font-size: small;
	line-height: 1.4em;
	letter-spacing: 0;
}

/* 文中の画像レイアウト */
div.right, div.left {
	font-size: 80%;
	line-height: 1.5em;
	text-align: center;
	color: #555;
}
div.right {
	float: right;
	display:inline;
	padding: 0.5em 0 0.5em 3ex;
}
div.left {
	float: left;
	display:inline;
	padding: 0.5em 3ex 0.5em 0;
}


/* 修飾要素 */
em {
	font-style: normal;
	color: #000;
	font-weight: bold;
}
strong {
	font-style: normal;
	color: red;
	font-weight: bold;
}
em strong, strong em {
	font-size: 120%;
}
.bordered {
	border-width: 1px;
	border-style: solid;
	border-color: #909090 #dddddd #eeeeee #9999a9;
	padding: 5px;
}

/* 見出し等のフォント設定 */
h1, h2, h3, h4, h5, h6, h7 ,
#navigation ,
div#footer .footer_links {
}

/* 数字とアルファベットのみの箇所のフォント指定 */
.alnum {
	font-family: "Trebuchet","Trebuchet MS","Arial","Helvetica";
	font-weight: 600;
}

/* HTMLタグ */

/* リンクカラーの置き換え */
a:link    { color: #35a ;}
a:visited { color: #016 ;}
a:hover   { color: #28f ;}

small {
	font-size: x-small;
}

/* 見出し */
h1, h2, h3, h4, h5, h6, h7 {
	color: #555;
	font-weight: 600;
	margin: 1.2em 0 0.2em 0;
	padding: 0;
	letter-spacing: 0.12em;
	border-bottom: 2px solid #bbb;
}
h1 {
	font-size: 1.78em;
	line-height: 1.3em;
	font-weight: 500;
	margin-top : 0em;
}
h2 {
	font-size: 1.4em;
	line-height: 1.25em;
}
h3, h4, h5, h6, h7 {
	font-size: 1.1em;
	line-height: 1.2em;
}
/* 見出しの場合リンクのアンダーラインを削除 */
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a, h7 a {
	text-decoration: none;
}
p {
	margin: 0.4em 0 0.6em 0;
	padding: 0;
}
/* 水平線 */
hr {
	background-color: transparent;

	border-color: #777;
	border-style: dotted;
	border-width: 1px 0 0 0;
	margin: 1.2em auto;
}

/* 水平線 - 文脈の分割 */
hr.separator, div.separator {
	background: url(hr_separator_bg.png) no-repeat;
	background-position: center center;
	height: 14px;

	border: 0 none;
	width: 100%;
	margin: 1em auto;
}

/* HTMLタグ リスト */
ul, ol, dl {
	font-size: small;
	line-height: 1.5em;
}
ul, ol {
	margin: 0.3em 0em 0.3em 0em;
	padding: 0 0 0 2.5em;
}
li {
	margin: 0;
	padding: 0.15em 0 0.15em 0;
}
dl {
	margin: 0.8em 0em 0.8em 0em;
	padding: 0 0 0 1em;
}
dt {
	margin: 0;
	padding: 0.15em 0 0 0;
	font-weight: bold;
}
dd {
	margin: 0;
	padding: 0 0 0.15em 2em;
}
/* 小さいリスト */
ul.note, ol.note, dl.note {
	font-size: x-small;
	line-height: 1.2em;
}

/* HTMLタグ テーブル */
table {
	margin: 0.8em 0em 0.8em 0em;
	border-collapse:collapse;
	font-size: small;
	line-height: 1.5em;
}
td, th {
	border: 1px solid #999;
	padding: 3px 5px 3px 5px;
}
td {
	vertical-align: top;
}
th {
	font-weight: bold;
}

/* 修飾クラス */
/* テーブルの枠線を消す */
table.noborder td, table.noborder th {
	border: none;
}
/* スプライトカラーのテーブル */
table.sprite th {
	border-color: #dedede #b9b9b9 #969696 #b9b9b9;
	background-color: #d6d6d6;
	background-image: url(tableHeader.png);
	background-repeat: repeat-x;
}
table.sprite tr.odd td, table.sprite tr.odd th {
	background-color: #ffffff;
	background-image: none;
	border-color: #ffffff #c8c8c8 #ffffff #c8c8c8;
}
table.sprite tr.even td, table.sprite tr.even th {
	background-color: #f5f5f5;
	background-image: none;
	border-color: #f5f5f5 #c8c8c8 #f5f5f5 #c8c8c8;
}

/* フォーム表示用のレイアウトテーブル */
table.formlayout th, table.formlayout td {
	border-width: 0px;
	padding-top: 1em;
}
table.formlayout th {
	vertical-align: top;
	text-align: right;
}
table.formlayout td table th, table.formlayout td table td{
	border-width: 1px;
	padding-top: 2px;
}
table.formlayout td table th {
	vertical-align: middle;
	text-align: center;
}

/* 定義リストを水平方向に配置 */
dl.horizontal {
	margin: 0.8em 0em 0.8em 0em;
	padding: 0 0 0 1em;
}
dl.horizontal dt {
	display: inline;
	clear: left;
	float: left;
	width: 30%;
	margin: 0.3em 0 0.3em 0;
	padding: 0;
	font-weight: bold;
	text-align: right;
}
dl.horizontal dd {
	display: inline;
	float: left;
	width: 65%;
	margin: 0.3em 0 0.3em 0;
	padding: 0 0 0 5%;
}

/* フォームの内容 */
optgroup {
	font-family: sans-serif;
	font-style: normal;
	font-weight: bold;
	color: #666;
}
optgroup option {
	font-weight: normal;
	color: #000;
}

/* 利用できない項目 */
.disabled {
	background-color: #eee;
	color: #555;
}
/* ブロックを中央ぞろえする */
.center {
	margin-left: auto;
	margin-right: auto;
}

/* フォームのステップ表示 */ 
ol.steps {
	width: auto; /* この横幅は "liの個数" x "liの横幅" に変更する */
	height: 65px;
	margin-left: auto;
	margin-right: auto;
	padding: 0px;
}
ol.steps li { /* "liの横幅" = 110+(10+0)+(0+30) くらい = 約150px程度*/
	width: 110px;
	height: 45px;
	margin: 0px 0px 0px 30px;
	float: left;
	/display:inline;
	padding: 10px 10px 10px 0px;
	background: url("form_steps.png") no-repeat right center;
	text-align: center;
}
ol.steps li.here {
	color: #300;
	font-weight: bold;
	background: url("form_steps_red.png") no-repeat right center;
}


/* Navigation header and footer */
#navi-container {
	background: #222d33 url(bg_head.png) repeat-x top;
}
#foot-container {
	background: #222d33 url(bg_foot.png) repeat-x bottom;
}
#navigation {
	color: #fff;
}
#navigation-upper {
	position: absolute;
	top: 0px;
	height: 42px;
}
#navigation-lower {
	position: absolute;
	top: 49px;
	height: 31px;
}

#navigation a        , #footer a         
	{ color: #ffffff; }
#navigation a:link   , #footer a:link    
	{ color: #ffffff; text-decoration: none; }
#navigation a:visited, #footer a:visited 
	{ color: #f0f0f0; text-decoration: none; }
#navigation a:hover  , #footer a:hover   
	{ color: #ccffff; text-decoration: underline; }

.gotonavigation {
	position: absolute;
	top: -2000px; left: -2000px;
}
#navigation div.logo { /* ロゴのボックス */
	position: absolute;
	left: 0px;
	top: auto; bottom: 0px;
	width: 254px; height: 40px;
}
#navigation div.logo a {
	display: block;
	width: 254px; height: 40px;
}
#navigation div.logo img {
	position: absolute;
	top: auto; bottom: 0px;
	width: 254px; height: 20px;
}
#navigation ul.member { /* 会員関連メニュー */
	left: 255px;
	width: 241px;
	text-align: center;
}
#navigation ul.others { /* その他メニュー */
	left: 496px;
	width: 304px;
	text-align: right;
}
#navigation ul.member, 
#navigation ul.others { /* 会員関連 その他 メニュー 共通部分 */
	position: absolute;
	top: auto; bottom: 0px;
	height: auto;
	margin: 0;
	padding: 0;

	font-size: 12px;
	list-style: none;
	line-height: 100%;
}
#navigation ul.member li, 
#navigation ul.others li {
	display: inline;
	width: auto; height: auto;
	margin: 0;
	padding: 0 0 0 8px;
	line-height: 110%;
}
#navigation_menubar {/* メニューバー */
	position: absolute;
	left: 0px; top: 0px;
	width: 800px; height: 31px;
}

/* footer */
#footer {
	font-size: small;
	line-height: 130%;
	clear: both;

	color: #fff;
	padding: 0;
	margin-top: 0px;
	overflow:hidden;
}
#footer .footer_links{
	width: 200px;
	padding: 20px 0px 40px 0px;
	list-style: none;
}
#footer .footer_links li {
	padding-top: 0.4em;
	line-height: 1.2em;
}
#footer .notification {
	position: absolute;
	float: left;
	left: 240px; bottom: 0px;
	width: 200px;
	margin: 0;
	padding: 20px 0px 40px 0px;

	font-size: x-small;
	line-height: 130%;
}
#footer .copyright {
	position: absolute;
	float: left;
	left: 480px; bottom: 0px;
	width: 320px;
	margin: 0;
	padding: 20px 0px 40px 00px;

	font-size: x-small;
}
#footer .copyright img {
	margin: 6px 0;
}

/* パンくずリストとローカルリンク */
div.local_navigation {
	font-size: small;
	margin : 0;
	padding : 7px 0 8px 0;
}
div.breadcrumbs {
}
div.breadcrumbs img {
	margin-bottom: -1px;
}
div.locallinks {
	margin: 0em;
	padding: 0em;
}
div.locallinks ul {
	margin: 0 0 0 20px;
	padding: 0em;
	text-align: left;
}
div.locallinks li {
	display: -moz-inline-box;
	display: inline-block;
	/display: inline;
	/zoom: 1;  

	list-style: none;
	margin: 2px -1px 2px 0px;
	padding: 0px 8px 0px 8px;
	line-height: 1.2em;
	height:1.2em;
	border: solid #ddd;
	border-width: 0 1px 0 1px;
}
div.local_navigation .here{
	font-weight: bold;
}

/* ----------------------- overwrite superfish demo menu bar ---------- */

.sf-menu {
	float: left;
	margin: 0;

	font-size: 12.7px;
	letter-spacing: 0;

	z-index: 10;
}
.sf-menu a {
	display: block;
	padding: 10px 10px 0px 13px;
}
.sf-menu a a {
	padding: 0;
}
/* here comes inner menu item desgin */
.sf-menu li {
	position: relative;
	margin: 0;
	padding: 0;
	height: 31px;
	line-height: 1.0em;
}
.sf-menu .sf-menu-arrow {
	position: absolute;
	left: 1px; top: 13px;
	width: 9px; height: 9px;
	background: transparent url(arrow_down.png) no-repeat 0px 0px;
}
.sf-menu .sf-menu-separator {
	margin-left: 26px;
}
.sf-menu li:hover ul, .sf-menu li.sfHover ul {
	top: 31px;
}
.sf-menu li li {
	background: #222d33;
	padding: 0;
}
.sf-menu li:hover, .sf-menu li.sfHover, 
.sf-menu li li:hover, .sf-menu li li.sfHover, 
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
	background: #555;
}

/*** arrows **/
.sf-menu a.sf-with-ul {
	min-width:		1px; /* trigger IE7 hasLayout so spans position accurately */
}
.sf-sub-indicator {
	display:		none;
}

/*** shadows for all but IE6 ***/
.sf-shadow ul {
	background:	url('shadow.png') no-repeat bottom right;
	padding: 0 12px 12px 0;
	-moz-border-radius-bottomleft: 17px;
	-moz-border-radius-topright: 17px;
	-webkit-border-top-right-radius: 17px;
	-webkit-border-bottom-left-radius: 17px;
}
.sf-shadow ul.sf-shadow-off {
	background: transparent;
}

/* IE6で透過PNG有効化 */
.iepngfix-app
	{ behavior: url(/lib/base/iepngfix.htc); }


