@charset "utf-8";

/*==============================================================================
  タイトル: 基本レイアウトスタイル
  著者    : Fumito Arakawa as Phize (http://phize.net/)
  説明    : サイトの基本となるレイアウトです。
            Geeklogとの整合性を図る為に、このCSSファイルを含む全てのHTML/CSSファイルにおいて、
            該当する要素について、敢えて「左ブロック」、「中央ブロック」、「右ブロック」と命名しています。

            JavaScriptが有効な場合は、Geeklogのカラム数に応じて、HTMLのbody要素に下記のclass属性値が指定されます。
              ・「js_on」が常に指定されます。
              ・3カラム(左ブロック・中央ブロック・右ブロック)時は「left-center-right」が指定されます。
              ・2カラム(左ブロック・中央ブロック)時は「left-center」が指定されます。
              ・2カラム(中央ブロック・右ブロック)時は「center-right」が指定されます。
              ・1カラム(中央ブロック)時は「center」が指定されます。

            JavaScriptが無効な場合は、Geeklogのカラム数に関わらず、HTMLのbody要素のclass属性値は常に一定です。
              ・「js_off」のみが常に指定されています。

            各ブロックの幅は下記の通りです。
              ・サイト全体の幅[W] = 800px
              ・左ブロックの幅[L] = 160px
              ・右ブロックの幅[R] = 160px
              ・中央ブロックの幅(3カラム) = [W] - [L] - [R] = 480px
              ・中央ブロックの幅(2カラム) = [W] - [L]/[R] = 640px
              ・中央ブロックの幅(1カラム) = [W] = 800px
  適用先  : header.thtml, footer.thtml, leftblocks.thtml, rightblocks.thtml
==============================================================================*/



/*--------------------------------------
  コンテナ
    全てのブロックレベル要素(div#header, div#navigation, div#wrapper, div#footer)を包含します。
--------------------------------------*/

div#container {
  position: relative;
  width: 800px;  /* サイト全体の幅[W] */
  margin: 0 auto;
  padding: 0;
  text-align: left;
}



/*--------------------------------------
  ヘッダコンテナ
--------------------------------------*/

div#container div#header {
  position: relative;
  height: 80px;
  margin: 2em 0 0 0;  /* Win IE 5.5以下用 */
  padding: 0;
  background-color: #1A3955;
  background-image: url(../images/css/bg_header.gif);
  background-repeat: no-repeat;
  background-position: 0 0;  /* Win IE 5.5以下用 */

  /* モダンブラウザ用(ここから下はWin IE 5.5以下では無視されます) { */
    voice-family: "\"}\"";
    voice-family: inherit;
	margin: 0;
	padding: 2em 0 0 0;
    background-position: 0 2em;
  /* } モダンブラウザ用 */
}

/* サイト名 */
div#container div#header h1.site_name {
  position: absolute;
  width: 157px;
  height: 56px;
  margin: 12px 0 0 16px;
  padding: 0;
  background-image: url(../images/css/bg_logo.gif);
  background-repeat: no-repeat;
  background-position: 0 0;
}

div#container div#header h1.site_name a,
div#container div#header h1.site_name a:link,
div#container div#header h1.site_name a:visited,
div#container div#header h1.site_name a:hover,
div#container div#header h1.site_name a:focus,
div#container div#header h1.site_name a:active {
  display: block;
  overflow: hidden;
  width: 157px;  /* Win IE 5.5以下用(ボックスの幅や高さにパディングやボーダーのサイズを含めてしまう) */
  height: 56px;
  margin: 0;
  padding: 0 0 0 157px;
  background-image: url(../images/css/bg_logo.gif);
  background-repeat: no-repeat;
  background-position: 0 0;

  /* モダンブラウザ用(ここから下はWin IE 5.5以下では無視されます) { */
    voice-family: "\"}\"";
    voice-family: inherit;
	width: 0;
  /* } モダンブラウザ用 */
}

/* スローガン */
div#container div#header p.site_slogan {
  margin: 0;
  padding: 16px 16px 0 16px;
  color: #FFFFFF;
  text-align: right;
}



/*--------------------------------------
  グローバルナビゲーションコンテナ
--------------------------------------*/

div#container div#navigation {
  position: absolute;
  top: 0;
  left: 0;
  width: 800px;  /* Win IE 5.5以下用(ボックスの幅や高さにパディングやボーダーのサイズを含めてしまう) */
  height: 2em;  /* Win IE 5.5以下用 */
  margin: 0;
  padding: 0.5em 8px;
  background-color: #E7E7E7;
  background-image: url(../images/css/bg_navigation.gif);
  background-repeat: repeat-y;
  background-position: 0 0;
  text-align: right;

  /* モダンブラウザ用(ここから下はWin IE 5.5以下では無視されます) { */
    voice-family: "\"}\"";
    voice-family: inherit;
    width: 784px;
	height: 1em;
  /* } モダンブラウザ用 */
}

/* ナビゲーションメニューリスト */
div#container div#navigation ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

div#container div#navigation ul li {
  display: inline;
  margin: 0 2px;
  padding: 0;
}

/* ナビゲーションメニュー(通常) */
div#container div#navigation ul li.menuitem {
}

div#container div#navigation ul li.menuitem a,
div#container div#navigation ul li.menuitem a:link,
div#container div#navigation ul li.menuitem a:visited {
}

div#container div#navigation ul li.menuitem a:hover,
div#container div#navigation ul li.menuitem a:focus,
div#container div#navigation ul li.menuitem a:active {
}

/* ナビゲーションメニュー(最後) */
div#container div#navigation ul li.last-child {
}

div#container div#navigation ul li.last-child a,
div#container div#navigation ul li.last-child a:link,
div#container div#navigation ul li.last-child a:visited {
}

div#container div#navigation ul li.last-child a:hover,
div#container div#navigation ul li.last-child a:focus,
div#container div#navigation ul li.last-child a:active {
}



/*--------------------------------------
  ラッパー
    コンテンツとなるブロックレベル要素(div#leftblocks, div#centerblocks, div#rightblocks)を包含します。
--------------------------------------*/

div#container div#wrapper {
  overflow: hidden;  /* 浮動要素の調整用 */
  margin: 0;
  padding: 0 0 2em 0;
  background-repeat: repeat-y;
  background-position: 0 0;
}

/* 内容生成によってfloatを解除 */
div#container div#wrapper:after {
  content: "";
  display: block;
  clear: both;
  height: 1px;
  overflow: hidden;
}

/* Win IE 6以下用(浮動要素の調整) { \*/
* html div#container div#wrapper {
  height: 1%;
  overflow: visible;
}
/* } Win IE 6以下用(浮動要素の調整) */

/* JavaScript有効・3カラム(左ブロック・中央ブロック・右ブロック)時のラッパー */
body.left-center-right div#container div#wrapper {
  background-image: url(../images/css/bg_wrapper_left-center-right.gif);
}

/* JavaScript有効・2カラム(左ブロック・中央ブロック)時のラッパー */
body.left-center div#container div#wrapper {
  background-image: url(../images/css/bg_wrapper_left-center.gif);
}

/* JavaScript有効・2カラム(中央ブロック・右ブロック)時のラッパー */
body.center-right div#container div#wrapper {
  background-image: url(../images/css/bg_wrapper_center-right.gif);
}

/* JavaScript有効・1カラム(中央ブロック)時のラッパー */
body.center div#container div#wrapper {
  background-image: url(../images/css/bg_wrapper_center.gif);
}

/* JavaScript無効時のラッパー */
body.js_off div#container div#wrapper {
  background-image: url(../images/css/bg_wrapper_left-center-right.gif);
}



/*--------------------------------------
  左ブロックコンテナ
    div#leftblocksは、左ブロックがない場合には表示されません。
--------------------------------------*/

div#container div#wrapper div#leftblocks {
  overflow: auto;
  float: left;
  width: 160px;  /* 左ブロックの幅[L] */
  margin: 0 640px 0 0;  /* 右マージン = サイト全体の幅[W] - 左ブロックの幅[L] */
  padding: 0;
}

/* JavaScript無効時の左ブロックコンテナ */
body.js_off div#container div#wrapper div#leftblocks {
  float: left;
  margin: 0 -160px 0 0;  /* 右マージン = -(左ブロックの幅[L]) */
}



/*--------------------------------------
  中央ブロックコンテナ
    div#centerblocksは、基本的には常に表示されます。
--------------------------------------*/

div#container div#wrapper div#centerblocks {
  overflow: auto;
}

/* JavaScript有効・3カラム(左ブロック・中央ブロック・右ブロック)時の中央ブロックコンテナ */
body.left-center-right div#container div#wrapper div#centerblocks {
  float: left;
  width: 480px;  /* Win IE 5.5以下用(ボックスの幅や高さにパディングやボーダーのサイズを含めてしまう)
                    中央ブロックの幅 = サイト全体の幅[W] - 左ブロックの幅[L] - 右ブロックの幅[R] */
  margin: 0 0 0 -640px;  /* 左マージン = -(サイト全体の幅[W] - 左ブロックの幅[L]) */
  padding: 0 8px;

  /* モダンブラウザ用(ここから下はWin IE 5.5以下では無視されます) { */
    voice-family: "\"}\"";
    voice-family: inherit;
    width: 464px;  /* 中央ブロックの幅 = サイト全体の幅[W] - 左ブロックの幅[L] - 右ブロックの幅[R] - 右パディング - 左パディング */
  /* } モダンブラウザ用 */
}

/* JavaScript有効・2カラム(左ブロック・中央ブロック)時の中央ブロックコンテナ */
body.left-center div#container div#wrapper div#centerblocks {
  float: left;
  width: 640px;  /* Win IE 5.5以下用(ボックスの幅や高さにパディングやボーダーのサイズを含めてしまう)
                    中央ブロックの幅 = サイト全体の幅[W] - 左ブロックの幅[L] */
  margin: 0 0 0 -640px;  /* 左マージン = -(サイト全体の幅[W] - 左ブロックの幅[L]) */
  padding: 0 8px;

  /* モダンブラウザ用(ここから下はWin IE 5.5以下では無視されます) { */
    voice-family: "\"}\"";
    voice-family: inherit;
    width: 624px;  /* 中央ブロックの幅 = サイト全体の幅[W] - 左ブロックの幅[L] - 右パディング - 左パディング */
  /* } モダンブラウザ用 */
}

/* JavaScript有効・2カラム(中央ブロック・右ブロック)時の中央ブロックコンテナ */
body.center-right div#container div#wrapper div#centerblocks {
  float: left;
  width: 640px;  /* Win IE 5.5以下用(ボックスの幅や高さにパディングやボーダーのサイズを含めてしまう)
                    中央ブロックの幅 = サイト全体の幅[W] - 右ブロックの幅[R] */
  margin: 0 160px 0 0;  /* 右マージン = 右ブロックの幅[R] */
  padding: 0 8px;

  /* モダンブラウザ用(ここから下はWin IE 5.5以下では無視されます) { */
    voice-family: "\"}\"";
    voice-family: inherit;
    width: 624px;  /* サイト全体の幅[W] - 右ブロックの幅[R] - 右パディング - 左パディング */
  /* } モダンブラウザ用 */
}

/* JavaScript有効・1カラム(中央ブロック)時の中央ブロックコンテナ */
body.center div#container div#wrapper div#centerblocks {
  width: 800px;  /* Win IE 5.5以下用(ボックスの幅や高さにパディングやボーダーのサイズを含めてしまう)
                    中央ブロックの幅 = サイト全体の幅[W] */
  margin: 0;
  padding: 0 8px;

  /* モダンブラウザ用(ここから下はWin IE 5.5以下では無視されます) { */
    voice-family: "\"}\"";
    voice-family: inherit;
    width: 784px;  /* 中央ブロックの幅 = サイト全体の幅[W] - 右パディング - 左パディング */
  /* } モダンブラウザ用 */
}

/* JavaScript無効時の中央ブロックコンテナ */
body.js_off div#container div#wrapper div#centerblocks {
  float: left;
  width: 480px;  /* Win IE 5.5以下用(ボックスの幅や高さにパディングやボーダーのサイズを含めてしまう)
                    中央ブロックの幅 = サイト全体の幅[W] - 左ブロックの幅[L] - 右ブロックの幅[R] */
  margin: 0 0 0 160px;  /* 左マージン = 左ブロックの幅[L] */
  padding: 0 8px;

  /* モダンブラウザ用(ここから下はWin IE 5.5以下では無視されます) { */
    voice-family: "\"}\"";
    voice-family: inherit;
    width: 464px;  /* 中央ブロックの幅 = サイト全体の幅[W] - 左ブロックの幅[L] - 右ブロックの幅[R] - 右パディング - 左パディング */
  /* } モダンブラウザ用 */
}

/* Win IE 6以下用(フロートの左右マージンが指定値より大きくなる) { \*/
* html body.js_off div#container div#wrapper div#centerblocks {
  margin: 0 0 0 80px;  /* 左マージン = 左ブロックの幅[L] ÷ 2 */
}
/* } Win IE 6以下用 */



/*--------------------------------------
  右ブロックコンテナ
    div#rightblocksは、右ブロックがない場合には表示されません。
--------------------------------------*/

div#container div#wrapper div#rightblocks {
  overflow: auto;
  float: left;
  width: 160px;  /* 右ブロックの幅[R] */
  margin: 0 0 0 -160px;  /* 左マージン = -(右ブロックの幅[R]) */
}

/* JavaScript無効時の右ブロックコンテナ */
body.js_off div#container div#wrapper div#rightblocks {
  float: right;
  margin: 0;
}



/*--------------------------------------
  フッタコンテナ
--------------------------------------*/

div#container div#footer {
  clear: left;
  padding: 16px;
  background-color: #1A3955;
  color: #FFFFFF;
  text-align: center;
}

/* フッタリンク */
div#container div#footer a,
div#container div#footer a:link,
div#container div#footer a:visited {
  color: #FFFFFF;
}

div#container div#footer a:hover,
div#container div#footer a:focus,
div#container div#footer a:active {
  color: #00FF00;
}

/* フッタリスト */
div#container div#footer ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

div#container div#footer ul li {
  margin: 0;
  padding: 0;
}

/* コピーライト表示 */
div#container div#footer ul li.copyright_notice {
}

div#container div#footer ul li.copyright_notice address {
  font-style: normal;
}

/* パワードバイ表示 */
div#container div#footer ul li.powered_by {
}

/* ページ作成時間 */
div#container div#footer ul li.execution_textandtime {
}
