/* 基本レイアウト */

html { margin: 0; padding: 0; }
form { margin: 0; padding: 0; }
a { text-decoration: underline; }
a img { border: 0; }


/* 見出し */

h1, h2, h3, h4, h5, h6 { font-weight: bold; }
h1, h2, h3, h4, h5, h6 { margin: 5px 0; }


/* リンク色（ページ全体） */

a { color: #0000ff; text-decoration: underline; }
a:hover { color: #ff9900; }


/* リンク色（サイトタイトル） */

#banner a { color: #fff; text-decoration: none; }
#banner a:hover { color: #fff; }

/* リンク色（サイドメニューボタン） */

.li a { color: #666; text-decoration: none; }
.li a:hover { color: #0000ff; }

/* リンク色（フッターナビゲーション） */

#footer a { color: #666; text-decoration: none; }
#footer a:hover { color: #666; }

/* バナー入れ替え画像 */

#container { background: url(img/04.jpg)  no-repeat; }

/* バナー・フッター・背景画像 */

#banner { background: url(img/top.gif) bottom no-repeat; }
#contents { background: url(img/bbg.gif); }
#footer{ background: url(img/footer.gif) no-repeat; }
.header1 { background: url(img/ah.gif)  no-repeat top left; }
.headerrank1 { background: url(img/rank1_mini.gif)  no-repeat top left; }
.headerrank2 { background: url(img/rank2_mini.gif)  no-repeat top left; }
.header2, .des h2, .des h3, .des h4, .des h5 { background: url(img/des.gif)  no-repeat left; }
li a:hover, .des { background: url(img/dbg.gif) ; }


/* 文字装飾 */

.red { color: #ff0000; }
.blue { color: #006699; }
.green { color: #009900; }
.orange { color: #ff9900; }
.pink { color: #ff66cc; }

.b { font-weight: bold; }
.line { background: #ffff66; }

/* ページレイアウト */

body {
    min-width: 730px;
    text-align: center;
    font-family: 'trebuchet ms', verdana, helvetica, arial, "MS Pゴシック","osaka", sans-serif;
    margin: 0px;
    padding: 0;
    font-size: 0.8em;
    color: #333;
    background: #f5f5f5;
    line-height: 1.5;
}

#container
{
    position: relative;
    width: 730px;
    _width: 732px;
    margin: 0 auto;
    text-align: center;
    border-right: 1px solid #999;
    border-left: 1px solid #999;
}

/* ヘッダー（レイアウト） */

#banner { position: relative; width: 730px; height: 180px;}


/* ヘッダー（サイトタイトル） */

#banner h1
{
    margin: 0;
    color: #666;
 /*    font-size: 2em;*/ 
    font-size: 2em;
    line-height: 1.25;
    position:absolute; top:15px; left:180px;
    font-weight: bold;
}

/* ヘッダー（サイト情報） */

.navi
{
    position:absolute; bottom:3px; right:10px;
    color: #fff;
    font-size: 0.8em;
}


/* ヘッダーその他（変更不要） */

#banner-description { display: none; }


/* メインコンテンツ全体 基本レイアウト*/

#contents
{
    position: relative;
    width: auto;
    _width: 100%;
    text-align: center;
}

#contents:after {
    content: "";
    display: block;
    clear: both;
    height: 1px;
    overflow: hidden;
}


/* メインコンテンツ基本レイアウト（記事部分） */

#main
{
    display: inline; /* ie win bugfix */
    position: relative;
    float: left;
    min-height: 1px;
    text-align: left;
    width: 500px; 
    margin: 10px 15px;
}

/* メインコンテンツ基本レイアウト（サイドメニュー） */

#side
{ 
    display: inline; /* ie win bugfix */
    position: relative;
    float: right;
    min-height: 1px;
    text-align: left;
    width: 180px;
    margin: 10px;
}


/* 記事部分見出し */

.header1 {
    /* ie win (5, 5.5, 6) bugfix */
    p\osition: relative;
    width: 100%;
    w\idth: auto;
    min-height: 25px;
    _height: 25px;
    margin: 5px 0;
    padding: 5px 0 0 10px;
    color: #fff;
    font-size: 1.2em;
    font-weight: bold;
    line-height: 1.25;
    border-bottom: 1px solid #666;
    clear: both;
}

.header2 {
    margin: 10px 0 0;
    padding: 5px 0 5px 28px;
    color: #333;
    font-size: 1em;
    font-weight: bold;
    line-height: 1.5;
}

.header2 a, .header3 a { text-decoration: none; }


/* 記事部分その他 */
.sp0
{
   margin-top: 10px;
   margin-bottom: 4px;
   margin-left: 4px;
   color: #555555;
   font-size: 10px;
   text-align: left;
}

.sp
{
   margin-top: -12px;
   color: #555555;
   font-size: 10px;
   text-align: left;
}

.entry, pre, blockquote
{
    margin: 15px 10px;
}

.more
{
    margin: 5px 0;
    padding: 0;
    color: #666;
    font-size: 12px;
    text-align: right;
}

.bread
{

    border-left: 3px solid #ccc;
    margin: 0 5px 5px;
    padding: 3px 3px 3px 7px;
    text-align: left;
    font-size: 0.8em;
}

.f-navi { margin: 5px 0; text-align: center; }
.gotop { margin: 5px 0; text-align: right; clear: both;}

.img
{
    float: left;
    margin: 0 5px 5px 0;
    text-align: center;
}

.des
{
    width: auto;
    _width: 100%;
    border: 1px solid #ccc;
    margin: 0;
    padding: 10px;
}

.des h2, .des h3, .des h4, .des h5
{
    line-height: 1.25;
    margin: 0 0 10px;
    padding: 3px 0 3px 27px;
    font-size: 1.2em;
    font-weight: bold;
    border-bottom: 1px solid #ccc;
}

.content
{
    background-color: #f5f5f5;
    border: 1px dotted #ccc;
    margin-bottom: 5px;
    padding: 10px;
}

.content a { color: #666; text-decoration: none; }

#bookmarks { margin: 5px 0 20px; text-align: right; }


/* フッター */

#footer
{
    position: relative;
    margin: 0;
    padding: 0;
    width: 730px; 
    height: 70px;
    text-align: right;
    font-size: 0.8em;
    line-height: 1.5;
    clear: both;
    color: #666;
}

.footer-navi
{ 
    position:absolute; top:10px; left:10px;
    color: #666;
    line-height: 1.25;
}
.copy
{ 
    position:absolute; bottom:8px; right:10px;
    color: #666;
    line-height: 1.25;
}
.f-text
{ 
    position:absolute; bottom:20px; right:10px;
    color: #666;
    line-height: 1.25;
}

/* サイドメニュー内部 */
.module-header
{
   position: relative;
   width: auto;
   height: 16px;
   margin: 0 0 10px 0;
   padding: 0;
   color: #000;
   background: #dcdcdc;
   font-size: 12px;
   font-weight: nomal;
   line-height: 16px;
   text-transform: uppercase;
   text-align: center;
}

.side-header {
    /* ie win (5, 5.5, 6) bugfix */
    p\osition: relative;
    width: 180px;
    height: 25px;
    border-top: 1px dotted #999;
    border-bottom: 1px dotted #999;
    background: #f5f5f5;
    padding: 0;
    color: #333;
    display: block;
    line-height: 25px;
    margin: 0px;
    font-size: 1em;
    font-weight: bold;
    text-align: center;
}

#side ul
{
   margin: 0;
   padding: 0;
   list-style : none ;
}

#side li
{
    width: 180px;
    display: block;
    margin: 5px 0;
}

#side li a
{
    width: auto;
    _width: 100%;
    display: block;
    font-size: 0.8em;
    line-height: 1.5;
    padding: 5px;
    background-color: #fff;
    border-left: 5px solid #dcdcdc;
    text-decoration: none;
}

#side li a:hover
{
    border-left: 5px solid #ff9900;
}
#side dl
{
   margin: 0;
   padding: 0;
   list-style : none ;
}

#side dt
{
    margin: 5px 0;
    font-size: 0.8em;
}


/* 検索ボックス */

#s-search
{
    width: 180px;
    padding: 15px 0;
    color: #666;
}


/* 以下、CSS移植 */

/*------------------------------------------------------------
■拡張設定

	t＝上（top）
	r＝右（right）
	b＝下（bottom）
	l＝左（left）
	c＝左右の中央（center）
	m＝上下の中央（middle）

※「!important」という設定は、
　どんなclassより、そのclassを優先するという設定です。
-------------------------------------------------------------*/

/*------------------------------------------------------------
●１、align・・・文字の横位置
-------------------------------------------------------------*/

.al-c{ text-align: center; }/*中央寄せ*/
.al-r{ text-align: right; }/*右寄せ*/
.al-l{ text-align: left; }/*左寄せ*/


/*------------------------------------------------------------
●２、valign・・・文字の縦位置
-------------------------------------------------------------*/

.vl-t{ vertical-align: top; }/*上寄せ*/
.vl-m{ vertical-align: middle; }/*中央寄せ*/
.vl-b{ vertical-align: bottom; }/*下寄せ*/


/*------------------------------------------------------------
●３、float・・・ブロックの左右の寄せ
-------------------------------------------------------------*/

.fl-c{ clear: both; }/*左右の寄せを解除*/
.fl-r{ float:right; margin-left: 20px; }/*右寄せ*/
.fl-l{ float:left; margin-right: 20px; }/*左寄せ*/


/*------------------------------------------------------------
●４、margin・・・周りのブロックからの距離

	10、15、20・・・という数字は「px（ピクセル）」を表します
-------------------------------------------------------------*/

.m0{ margin: 0px!important; }/*周りからのmarginを0にする*/
.m0-t{ margin-top: 0px!important; }/*上からのmarginが0px*/
.m0-r{ margin-right: 0px!important; }/*右からのmarginが0px*/
.m0-b{ margin-bottom: 0px!important; }/*下からのmarginが0px*/
.m0-l{ margin-left: 0px!important; }/*左からのmarginが0px*/

.m10{ margin: 10px!important; }/*周りからのmarginが10px*/
.m10-t{ margin-top: 10px!important; }/*上からのmarginが10px*/
.m10-r{ margin-right: 10px!important; }/*右からのmarginが10px*/
.m10-b{ margin-bottom: 10px!important; }/*下からのmarginが10px*/
.m10-l{ margin-left: 10px!important; }/*左からのmarginが10px*/

.m15{ margin: 15px!important; }
.m15-t{ margin-top: 15px!important; }
.m15-r{ margin-right: 15px!important; }
.m15-b{ margin-bottom: 15px!important; }
.m15-l{ margin-left: 15px!important; }

.m20{ margin: 20px!important; }
.m20-t{ margin-top: 20px!important; }
.m20-r{ margin-right: 20px!important; }
.m20-b{ margin-bottom: 20px!important; }
.m20-l{ margin-left: 20px!important; }

.m30{ margin: 30px!important; }
.m30-t{ margin-top: 30px!important; }
.m30-r{ margin-right: 30px!important; }
.m30-b{ margin-bottom: 30px!important; }
.m30-l{ margin-left: 30px!important; }

.m40{ margin: 40px!important; }
.m40-t{ margin-top: 40px!important; }
.m40-r{ margin-right: 40px!important; }
.m40-b{ margin-bottom: 40px!important; }
.m40-l{ margin-left: 40px!important; }

.m50{ margin: 50px!important; }
.m50-t{ margin-top: 50px!important; }
.m50-r{ margin-right: 50px!important; }
.m50-b{ margin-bottom: 50px!important; }
.m50-l{ margin-left: 50px!important; }

.m60{ margin: 60px!important; }
.m60-t{ margin-top: 60px!important; }
.m60-r{ margin-right: 60px!important; }
.m60-b{ margin-bottom: 60px!important; }
.m60-l{ margin-left: 60px!important; }

.m70{ margin: 70px!important; }
.m70-t{ margin-top: 70px!important; }
.m70-r{ margin-right: 70px!important; }
.m70-b{ margin-bottom: 70px!important; }
.m70-l{ margin-left: 70px!important; }


/*------------------------------------------------------------
●５、padding・・・周りのブロックからの距離（padding）

	10、15、20・・・という数字は「px（ピクセル）」を表します
-------------------------------------------------------------*/

.p0{ padding: 0px!important; }/*周りからのmarginを0にする*/
.p0-t{ padding-top: 0px!important; }/*上からのmarginが0px*/
.p0-r{ padding-right: 0px!important; }/*右からのmarginが0px*/
.p0-b{ padding-bottom: 0px!important; }/*下からのmarginが0px*/
.p0-l{ padding-left: 0px!important; }/*左からのmarginが0px*/

.p10{ padding: 10px!important; }/*周りからのmarginが10px*/
.p10-t{ padding-top: 10px!important; }/*上からのmarginが10px*/
.p10-r{ padding-right: 10px!important; }/*右からのmarginが10px*/
.p10-b{ padding-bottom: 10px!important; }/*下からのmarginが10px*/
.p10-l{ padding-left: 10px!important; }/*左からのmarginが10px*/

.p15{ padding: 15px!important; }
.p15-t{ padding-top: 15px!important; }
.p15-r{ padding-right: 15px!important; }
.p15-b{ padding-bottom: 15px!important; }
.p15-l{ padding-left: 15px!important; }

.p20{ padding: 20px!important; }
.p20-t{ padding-top: 20px!important; }
.p20-r{ padding-right: 20px!important; }
.p20-b{ padding-bottom: 20px!important; }
.p20-l{ padding-left: 20px!important; }

.p30{ padding: 30px!important; }
.p30-t{ padding-top: 30px!important; }
.p30-r{ padding-right: 30px!important; }
.p30-b{ padding-bottom: 30px!important; }
.p30-l{ padding-left: 30px!important; }

.p40{ padding: 40px!important; }
.p40-t{ padding-top: 40px!important; }
.p40-r{ padding-right: 40px!important; }
.p40-b{ padding-bottom: 40px!important; }
.p40-l{ padding-left: 40px!important; }

.p50{ padding: 50px!important; }
.p50-t{ padding-top: 50px!important; }
.p50-r{ padding-right: 50px!important; }
.p50-b{ padding-bottom: 50px!important; }
.p50-l{ padding-left: 50px!important; }

.p60{ padding: 60px!important; }
.p60-t{ padding-top: 60px!important; }
.p60-r{ padding-right: 60px!important; }
.p60-b{ padding-bottom: 60px!important; }
.p60-l{ padding-left: 60px!important; }

.p70{ padding: 70px!important; }
.p70-t{ padding-top: 70px!important; }
.p70-r{ padding-right: 70px!important; }
.p70-b{ padding-bottom: 70px!important; }
.p70-l{ padding-left: 70px!important; }


/*------------------------------------------------------------
●６、font-size・・・フォントサイズの設定

	※「em」と「pt」の違い
	　IEで、ブロウザの文字サイズ変更が反映されるのが「em」です
	　「pt」は文字サイズ変更が効きません。
-------------------------------------------------------------*/

.normal{ font-weight: normal!important; }

.b{ font-weight: bold!important; }

.big{ font-size: 120%!important; }
.big2{ font-size: 150%!important; }
.big3{ font-size: 180%!important; }

.small{ font-size: 80%!important; }

.f08em{ font-size: 0.8em; }
.f09em{ font-size: 0.9em; }
.f10em{ font-size: 1.0em; }
.f11em{ font-size: 1.1em; }
.f12em{ font-size: 1.2em; }
.f13em{ font-size: 1.3em; }
.f14em{ font-size: 1.4em; }
.f16em{ font-size: 1.6em; }
.f18em{ font-size: 1.8em; }
.f20em{ font-size: 2.0em; }
.f22em{ font-size: 2.2em; }
.f24em{ font-size: 2.4em; }


.f8pt{ font-size: 8.5pt!important; }
.f9pt{ font-size: 9.0pt!important; }
.f10pt{ font-size: 10pt!important; }
.f11pt{ font-size: 11pt!important; }
.f12pt{ font-size: 12pt!important; }
.f13pt{ font-size: 13pt!important; }
.f14pt{ font-size: 14pt!important; }
.f16pt{ font-size: 16pt!important; }
.f18pt{ font-size: 18pt!important; }
.f20pt{ font-size: 20pt!important; }
.f22pt{ font-size: 22pt!important; }
.f24pt{ font-size: 24pt!important; }


/*------------------------------------------------------------
●７、color・・・フォントカラーの設定
-------------------------------------------------------------*/

.black{ color: #000!important; }/*黒色*/
.red{ color: #ff0000!important; }/*赤色*/
.blue{ color: #0000dd!important; }/*青色*/
.green{ color: #008000!important; }/*緑色*/
.yellow{ color: #ffff00!important; }/*黄色*/
.navy{ color: #1F26A9!important; }/*紺色*/
.gray{ color: #ccc!important; }/*灰色*/
.orange{ color: #ff6600!important; }/*橙色*/
.pink{ color: #cc6699!important; }/*ピンク色*/
.purple{ color: #660099!important; }/*紫色*/
.olive{ color: #808000!important; }/*黄土色*/
.lime{ color: #00ff00!important; }/*黄緑*/
.aqua{ color: #167FA6!important; }/*水色*/


/*------------------------------------------------------------
●８、line-height・・・行間の設定
-------------------------------------------------------------*/

.lh13{ line-height: 1.3em!important; }
.lh14{ line-height: 1.4em!important; }
.lh15{ line-height: 1.5em!important; }
.lh16{ line-height: 1.6em!important; }
.lh17{ line-height: 1.7em!important; }
.lh18{ line-height: 1.8em!important; }
.lh19{ line-height: 1.9em!important; }
.lh20{ line-height: 2.0em!important; }


/*------------------------------------------------------------
●９、underline・・・アンダーライン（下線）の設定
-------------------------------------------------------------*/

.underline{ text-decoration: underline!important; }


/*------------------------------------------------------------
●１０、取り消し線の設定
-------------------------------------------------------------*/

.del{ text-decoration:line-through;}


/*------------------------------------------------------------
●１１、box・・・カラーボックスの設定
-------------------------------------------------------------*/

.box-yellow{ background-color: #ffff00!important; }/*黄色のボックス*/
.box-aqua{ background-color: #00ffff!important; }/*水色のボックス*/
.box-gray{ background-color: #eee!important; }/*灰色のボックス*/
.box-red{ background-color: #fc9b8b!important; }/*赤色のボックス*/


/*------------------------------------------------------------
●１２、input:focus・・・入力フォームをハイライトする
-------------------------------------------------------------*/

input:focus,textarea:focus{ background-color: #dee!important; }


/*------------------------------------------------------------
●１３、hr・・・線の基本設定
-------------------------------------------------------------*/

hr{
	clear: both;
	margin: 0;
	padding: 0;
	border-width: 1px 0 0 0;
	height: 1px;
	border-style: solid none none none;
	color: #ccc;
}

/*------------------------------------------------------------
●１４、left、right・・・画像の横位置設定
-------------------------------------------------------------*/

/*--------------------▽左に画像、右に文章*/

.left{
	float: left;
	margin: 0 30px 20px 0!important;
}


/*--------------------▽右に画像、左に画像*/

.right{
	float: right;
	margin: 0 0 20px 30px!important;
}


/*------------------------------------------------------------
●１５、top、middle、bottom・・・画像の縦位置設定
-------------------------------------------------------------*/

/*--------------------▽画像の縦位置をtopに揃える*/

img.top{ vertical-align: top!important; }

/*--------------------▽画像の縦位置をmiddleに揃える*/

img.middle{ vertical-align: middle!important; }

/*--------------------▽右に画像、左に画像*/

img.bottom{ vertical-align: bottom!important; }


/*------------------------------------------------------------
●１６、noborder・・・枠線を無くす
-------------------------------------------------------------*/

.noborder{ border: 0!important; }

/*------------------------------------------------------------
●１６、zindex・・・重なりの優先度
-------------------------------------------------------------*/

.z2{ z-index: 2; }
.z3{ z-index: 3; }

/*------------------------------------------------------------
　written by Shigeoki Matsuo
-------------------------------------------------------------*/
