/* ■ clearfix ■ */
.clearfix:after {
  content: ".";  /* 新しい要素を作る */
  display: block;  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  visibility: hidden;
}



/* ■ 全体 ■ */

body {
 margin: 0;
 padding: 0;
 font-size: 12px;
 background: #3399cc;
}

h1,h2,h3,h4,h5 {
 margin: 0;
 padding: 0;
 font-size: 14px;
}



/* ■■■■■ 表示部分 ■■■■■ */

#output {
 width: 958px;
 height: auto;
 margin: 0 auto;
 background: #ffffff;
 border-left: 1px solid #2566aa;
 border-right: 1px solid #2566aa;
}



#header {
 width: 958px;
 height: 45px;
}

/* ■ ロゴ ■ */

#header #logo {
 float: left;
 width: 200px;
 height: 45px;
}

/* ■ グローバルナビゲーション ■ */

/*
#header #nav {
 float: left;
 width: 758px;
 height: 45px;
}

#header ul {
 list-style-type: none;
 list-style-position: inside;
 margin: 10px 0 0 170px;
 padding: 0;
}

#header li {
 float: left;
 font-size: 14px;
 font-weight: bold;
 width: auto;
 height: 20px;
 text-align: center;
 margin: 5px 10px 0 0;
}

#header li a {
 text-decoration: none;
 padding: 5px 12px;
 color: #666666;
}
#header li a:hover {
 color: #3399cc;
 border-bottom: 3px solid #2566aa;
}
*/


/* ■ メインコンテンツ ■ */

#contents {
 width: 958px;
 height: auto;
}


/* ■ トップイメージ ■ */

#topimage {
 width: 958px;
 height: 300px;
}

/* ■ トップのコンテンツ ■ */

#topcontents {
 width: 918px;
 min-height: 200px;
 margin: 20px;
}

/* ■ トップのニュース ■ */

#topcontents #news {
 float: left;
 width: 400px;
 height: auto;
 margin-right: 68px;
}

#topcontents #news dl {
 width: 400px;
}

#topcontents #news dt, #topcontents #news dd {
 margin: 0;
 padding: 0;
}

#topcontents #news dt {
 height: 24px;
 padding: 6px 0 0 15px;
 color: #2566aa;
 font-size: 16px;
 font-weight: bold;
 border-left: 15px solid #2566aa;
 border-bottom: 3px solid #2566aa;
}

#topcontents #news dd {
 overflow: auto;
 width: 368px;
 height: 150px;
 border: 1px solid #2566aa;
 padding: 15px;
}

#topcontents #news dd ul {
 list-style-type: none;
 list-style-position: inside;
 padding: 0;
 margin: 0;
}

#topcontents #news dd li {
 margin: 0 0 10px 0;
}

#topcontents #news dd li .day {
 font-weight: bold;
 color: #3399cc;
}

/* ■ トップのサービスと採用情報 ■ */

#fixmenu {
 float: left;
 width: 450px;
 height: auto;
}

/* ■ トップのサービス ■ */

#fixmenu #service {
 width: 428px;
 height: 78px;
 background-image: url(/img/service_bg.jpg);
 margin-bottom: 15px;
 border: 1px solid #2566aa;
 padding: 10px;
}

#fixmenu #service #left {
 float: left;
 width: 190px;
 height: 58px;
 line-height: 1.3em;
 margin-right: 48px;
 padding-top: 20px;
}

#fixmenu #service #right {
 float: left;
 width: 190px;
 height: 78px;
 height: auto;
 line-height: 1.3em;
}

#fixmenu #service a {
 color: #ff6600;
 font-weight: bold;
 text-decoration: none;
}

#fixmenu #service a:hover {
 color: #2566aa;
 text-decoration: underline;
}


/* ■ トップの採用情報 ■ */

#fixmenu #recruit_title {
 width: 440px;
 height: 24px;
 background: #3399cc;
 color: #ffffff;
 font-weight: bold;
 font-size: 14px;
 padding: 10px 0 0 10px;
}

#fixmenu #recruit {
 width: 288px;
 height: 48px;
 background-image: url(/img/recruit_bg.jpg);
 border: 1px solid #3399cc;
 line-height: 1.3em;
 padding: 15px 150px 15px 10px;
}

#fixmenu #recruit a {
 color: #ff0000;
 text-decoration: none;
 font-weight: bold;
}

#fixmenu #recruit a:hover {
 color: #2566aa;
 text-decoration: underline;
}


/* ■■■■■■ 二階層目のページ共通 ■■■■■■ */

/* ■ ページタイトル（イメージ） ■ */

#pagetitle {
 width: 958px;
 height: 100px;
 border-top: 1px solid #2566aa;
 border-bottom: 1px solid #2566aa;
}

/* ■ パンくずリスト ■ */

#pankuzu {
 width: 938px;
 padding: 10px;
 border-bottom: 1px solid #666666;
 color: #ff6600;
}

#pankuzu a {
 color: #666666;
 text-decoration: none;
}

#pankuzu a:hover {
 color: #2566aa;
 text-decoration: underline;
}


/* ■ ページ中身（ページ内メニュー） ■ */

#detail {
 width: 958px;
 height: auto;
}

#detail #innav {
 float: left;
 width: 200px;
 height: auto;
}

#detail #innav #title {
 width: 170px;
 background: #2566aa;
 padding: 15px;
 color: #ffffff;
 font-size: 14px;
 font-weight: bold;
}

#detail #innav ul {
 list-style-type: none;
 list-style-position: inside;
 padding: 15px;
 margin: 0;
}

#detail #innav li {
 padding: 0 0 15px 0;
}

#detail #innav li a {
 color: #2566aa;
 text-decoration: none;
}

#detail #innav li a:hover {
 color: #ff6600;
 text-decoration: underline;
}

#detail #innav li .select {
 color: #ff6600;
}


/* ■ ページ中身 ■ */

#detail #content {
 float: left;
 width: 727px;
 min-height: 250px;
 padding: 15px;
 font-size: 14px;
 border-left: 1px solid #666666;
}


/* ■ ニュース ■ */

#content dl#news {
 padding: 0;
 margin: 0;
}

#content dl#news dt {
 padding: 0;
 margin: 0;
 color: #2566aa;
 font-weight: bold;
 font-size: 16px;
}

#content dl#news dd {
 padding: 5px;
 margin: 0 0 10px 0;
 line-height: 1.5em;
}



/* ■ 会社概要 ■ */

#detail #content #company dl {
 margin: 5px 0;
}

#detail #content #company dt {
 float: left;
 width: 130px;
 height: auto;
 margin-right: 15px;
 padding: 10px 15px 10px 5px;
 margin: 0 0 10px 0;
 color: #2566aa;
 font-weight: bold;
 border-right: 3px solid #3399cc;
 border-bottom: 1px dashed #ffffff;
 text-align: right;
}

#detail #content #company dd {
 float: left;
 width: 506px;
 height: auto;
 padding: 10px 5px 10px 15px;
 margin: 0 40px 10px 0;
 border-left: 3px solid #666666;
 border-bottom: 1px dashed #666666;
}


/* ■ 採用情報 ■ */

#detail #content table.recruit, #detail #content table.recruit tr, #detail #content table.recruit th, #detail #content table.recruit td {
 border: 1px solid #666666;
 border-collapse: collapse;
}

#detail #content table.recruit {
 width: 700px;
 padding: 0;
 margin: 0 0 15px 0;
}

#detail #content table.recruit th.title {
 padding: 5;
 background: #3399cc;
 font-size: 16px;
 text-align: left;
}

#detail #content table.recruit th.oubo {
 padding: 5;
 background: #ff6600;
 font-size: 16px;
}

#detail #content table.recruit th.title .title, #detail #content table.recruit th.oubo .title {
 color: #ffffff;
}

#detail #content table.recruit th, #detail #content table.recruit td {
 padding: 10px;
}

#detail #content table.recruit th {
 color: #2566aa;
}

#detail #content table.recruit td {
 line-height: 1.5em;
}

#detail #content .uplink {
 width: 700px;
 text-align: right;
 margin-bottom: 30px;
}

#detail #content .uplink a {
 text-decoration: none;
 color: #3399cc;
}

#detail #content .uplink a:hover {
 color: #666666;
 text-decoration: underline;
}



/* ■ アクセス ■ */

#content #address {
 line-height: 1.3em;
}

#content #access table, #content #access tr, #content #access th, #content #access td {
 border: 1px solid #666666;
 border-collapse: collapse;
}

#content #access th, #content #access td {
 padding: 10px;
}

#content #access th {
 width: 200px;
 color: #3399cc;
}

#content #access td {
 line-height: 1.3em;
}


/* ■ 事業内容 ■ */

#content #business #title {
 margin: 0 0 10px 0;
}

#content #business #guide {
 width: 700px;
 margin: 5px 10px 15px 10px;
}

#content #business #guide #text {
 float: left;
 width: 525px;
 height: 113px;
 margin-right: 25px;
}

#content #business #guide #text h3 {
 font-weight: bold;
 font-size: 18px;
 color: #ff6600;
 padding: 5px;
 border-bottom: 1px solid #3399cc;
 margin-bottom: 10px;
}

#content #business #guide #text p {
 margin: 0;
 padding: 0 10px;
 line-height: 1.3em;
}

#content #business #guide #pic {
 float: left;
 width: 150px;
 height: 113px;
}

#content #business dl {
 margin: 0;
 padding: 0;
}

#content #business dt {
 background: #2566aa;
 color: #ffffff;
 padding: 7px 7px 7px 10px;
 border-top: 1px solid #666666;
 border-bottom: 3px solid #3399cc;
 margin: 0 0 10px 0;
 font-weight: bold;
 font-size: 16px;
}

#content #business dd {
 margin: 5px 20px 30px 20px;
}

#content #business ul {
 list-style-type: none;
 list-style-position: inside;
 margin: 0;
 padding: 0;
}

#content #business li {
 padding-left: 25px;
 margin-bottom: 10px;
 background: url(/img/li_icon.gif) no-repeat 0 1px;
}


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

#content table#inquiry, #content table#inquiry tr, #content table#inquiry th, #content table#inquiry td {
 border: 1px solid #ffffff;
 border-collapse: collapse;
}

#content table#inquiry th, #content table#inquiry td {
 padding: 10px;
}

#content table#inquiry th {
 width: 165px;
 background: #3399cc;
 color: #ffffff;
 font-weight: normal;
 text-align: left;
}

#content table#inquiry td input {
 margin-bottom: 5px;
}

#content table#inquiry td .red {
 font-size: 12px;
 color: #FF0000;
}

#content table#inquiry td .gray {
 font-size: 12px;
 color: #666666;
}

#content p#inquiry_button, #content p#inquiry_button2 {
 width: 600px;
 height: 60px;
 text-align: center;
}

#content p#inquiry_button input {
 padding: 10px;
 font-weight: bold;
 font-size: 16px;
}

#content p#inquiry_button2 input {
 padding: 3px;
 font-size: 12px;
}

#content #complete {
 line-height: 1.5em;
}

#content #complete .bold {
 font-weight: bold;
}

#content #gohome {
 width: 720px;
 margin: 15px 0 20px 0;
 line-height: 1.5em;
 text-align: center;
}

#content #gohome a {
 text-decoration: none;
 color: #2566aa;
 font-weight: bold;
}


/* ■ フッター（COPYRIGHT） ■ */

#footer #miniprof {
 width: 958px;
 height: auto;
 padding: 5px 0;
 color: #ffffff;
 background: #3399cc;
 text-align: center;
 background: #666666;
}


#footer #fnav {
 width: 958px;
 height: 20px;
 font-size: 12px;
 text-align: center;
 margin-top: 8px;
}

#footer #fnav a {
 padding: 0 15px;
 text-decoration: none;
 color: #3399cc;
}

#footer #fnav a:hover {
 color: #666666;
}


#footer #copyright {
 font-family: 'Michroma', sans-serif;
 font-size: 10px;
 width: 948px;
 padding: 5px;
 text-align: center;
 color: #666666;
 border-top: 1px solid #666666;
 border-bottom: 5px solid #2566aa;
}




/* ■ グローバルナビゲーションのサンプル ■ */

#header #nav {
 float: left;
 width: 623px;
 height: 30px;
 padding: 10px 0 0 135px;
}

ul.menu{
 zoom:1;
 list-style-type: none;
 list-style-position: inside;
 margin: 0;
 padding: 5px;
}

ul.menu li{
 float: left;
 width: 90px;
 height: 20px;
 background: #ffffff;
 position: relative;
 font-size: 14px;
 margin-right: 10px;
}
* html ul.menu li{
 display:inline;
 zoom:1;
}
*+html ul.menu li{
 display:inline;
 zoom:1;
}
ul.menu li a{
 display:block;
 width: 100%;
 height: 100%;
 font-weight: bold;
 color: #666666;
 text-decoration: none;
 position: relative;
 border-bottom: 3px solid #ffffff;
}
ul.menu li a:hover{
 color: #2566aa;
 border-bottom: 3px solid #2566aa;
}
ul.sub{
 display:none;
 list-style-type: none;
 list-style-position: inside;
 padding: 0;
 margin: 0;
}
* html ul.sub{
 zoom:1;
 position:relative;
}
*+html ul.sub{
 zoom:1;
 position:relative;
}
ul.sub li{
 float:none;
 width: 200px;
 height: 20px;
 padding: 10px;
 border-top: 1px solid #3399cc;
}
ul.sub li ul.sub{
 position: absolute;
 top: 0;
}
ul.menu:after {
 height:0;
 visibility:hidden;
 content:".";
 display:block;
 clear:both;
}
