* {
  margin: 0;
  padding: 0;
}
body {
  text-align: center;
  background: url(../images/bg.png) repeat-x scroll 50% top;
  background-color: #f8f8f8;
  font-family : 'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック',sans-serif;
  /*font-size: 14px;*/
  font-size: 90%;
  line-height : 1.5;
  color: #333;
}
div#body {
  margin: 0 auto 25px auto;
  width: 780px;
  text-align: left;
}
div#logo {
  position: absolute;
  top: 50px;
  text-align: right;
  width: 780px;
  letter-spacing: 8px;
}
div#top {
  text-indent: -9999px;
  overflow: hidden;
  position: absolute;
  background-image: url(../images/bg_top.jpg);
  top: 107px;
  margin: 0 auto;
  width: 780px;
  height: 165px;
}
div#container {
  text-align: left;
  background: url(../images/bg_container.png) repeat-y scroll 50% 50%;
  margin-top: 250px;
  position: static;
  background-color: #fff;
  width: 780px;
}
div#container div.header {
  background: url(../images/bg_container_header.png) no-repeat scroll 50% top;
  width: 780px;
  height: 75px;
}
div#container div.header h2 {
  position: relative;
  top: 18px;
  left: 20px;
}
div#container ul.left {
  float: left;
  padding: 10px;
}
div#container ul.left li {
  clear: left;
  list-style-type: none;
  float: left;
  width: 180px;
  margin: 4px;
}
div#container ul.left li a {
  display: block;
  padding: 4px;
  width: 162px;
  color: #009;
  border: solid 1px #ccc;
  background-color: #eee;
  font-weight: bold;
}
div#container ul.left li a:hover {
  color: #fff; 
  background-color: #009;
}
div#container div.right {
  margin-left: 200px;
  border-left: dotted 1px #ccc;
  padding: 10px;
}
div#container dl dt {
  color: #008;
  font-weight: bold;
  margin-top: 1em;
}
div#container dl dd {
  margin-left: 50px;
}
div#bottom {
  text-align: center;
  clear: both;
  background-image: url(../images/bg_bottom.png);
  margin: 0 auto;
  width: 780px;
  height: 48px;
  line-height: 48px;
  font-size: 80%;
  color: #999;
}
h1,h2 {
  text-indent: -9999px;
  overflow: hidden;
}
h1 {
  position: relative;
  width: 296px;
  height: 32px;
  top: 64px;
  left: 16px;
  z-index: 99;
}
h1 a {
  display: block;
  background: url(../images/logo.png) no-repeat left top;
  width: 100%;
  height: 100%;
}
h3 {
  background: url(../images/bg_h3_icon.png) no-repeat left 50%;
  text-indent: 25px;
  line-height: 20px;
  letter-spacing: 4px;
  font-size: 20px;
  margin: 20px 10px;
}
div#top h3 {
  text-indent: -9999px;
  overflow: hidden;
  background-image: none;
}
ul#navigation {
  position: absolute;
  top: 272px;
  margin: 0 auto;
  width: 780px;
}
ul#navigation li {
  list-style-type: none;
  float: left;
  width: 111px;
  height: 45px;
}
ul#navigation li#menu_product,
ul#navigation li#menu_faq,
ul#navigation li#menu_company { width: 112px;}
ul#navigation li a {
  display: block;
  overflow: hidden;
  text-indent: -9999px;
  background-image: url(../images/bg_menu.png);
  width: 100%;
  height: 100%;
}
ul#navigation li#menu_home a     { background-position:   0px 0px;}
ul#navigation li#menu_product a  { background-position:-111px 0px;}
ul#navigation li#menu_facility a { background-position:-223px 0px;}
ul#navigation li#menu_faq a      { background-position:-334px 0px;}
ul#navigation li#menu_calendar a { background-position:-446px 0px;}
ul#navigation li#menu_company a  { background-position:-557px 0px;}
ul#navigation li#menu_inquiry a  { background-position:-669px 0px;}
ul#navigation li#menu_home a:hover     { background-position:   0px -45px;}
ul#navigation li#menu_product a:hover  { background-position:-111px -45px;}
ul#navigation li#menu_facility a:hover { background-position:-223px -45px;}
ul#navigation li#menu_faq a:hover      { background-position:-334px -45px;}
ul#navigation li#menu_calendar a:hover { background-position:-446px -45px;}
ul#navigation li#menu_company a:hover  { background-position:-557px -45px;}
ul#navigation li#menu_inquiry a:hover  { background-position:-669px -45px;}
p.notice {
  text-align: right;
  font-size: 90%;
  padding: 10px 20px 0 20px;
}
p.notice span { font-weight: bold; color: #f00; }
em, address {font-style: normal; font-weight:inherit;}



/* トップページ */
div#container.home h3 {
  text-indent: -9999px;
  overflow: hidden;
  margin: 0;
}
div#container.home h3#h3_first {
  position: relative;
  background: url(../images/bg_home.png) no-repeat left top;
  top: 30px;
  width: 624px;
  height: 22px;
  margin: 0 auto;
}
div#container.home div#box2 {
  background: url(../images/bg_box2.jpg) no-repeat 20px 10px;
  margin: 10px 0 0 0;
  padding: 10px 10px 0 233px;
}
div#container.home div#box2 p,div#container div#box2 ul {
  padding: 10px 20px;
}
div#container.home div#box2 ul li {
  margin: 10px;
}
div#container.home div#box2 h3 {
  background: url(../images/bg_home.png) no-repeat left top;
  width: 310px;
  height: 29px;
}
div#container.home div#box2 h3#h3_jidai { background-position: 0px -25px;}
div#container.home div#box2 h3#h3_needs { background-position: 0px -54px;}
div#container.home div#topics h3, div#container.home div#link h3 {
  height: 65px;
  margin-top: 20px;
}
div#container.home div#topics h3 {
  background: url(../images/bg_h3_topics.png) no-repeat center top;
}
div#container.home div#link h3 {
  background: url(../images/bg_h3_link.png) no-repeat center top;
}
div#container.home div#topics p, div#container.home div#link ul {
  background: url(../images/bg_box3.png) no-repeat center bottom;
  padding: 0 60px 30px 60px;
}
div#container.home div#link ul li{
  margin: 0 20px;
}

/* 製品情報 */
div#container.product h2 {
  background: url(../images/bg_h2.png) no-repeat left -82px;
  width: 291px;
  height: 41px;
}
div#container.product div.right dl dd ul li { font-size: 90%; }
div#container.product div.right ul.image_list {
  font-size: 12px;
  line-height: 14px;
  min-height: 200px;
  margin: 20px 0;
}
div#container.product div.right ul.image_list li {
  list-style-type: none;
  float: left;
  margin: 2px;
  /*text-align: center;*/
}
div#container.product div.right ul.gallery_link {
  margin: 0 10px;
  background: url(../images/bg_product_list.jpg) no-repeat right top;
  min-height: 250px;
}
div#container.product div.right ul.gallery_link li {
  list-style-type: none;
  float: left;
  width: 300px;
  height: 50px;
  margin: 1px;
}
div#container.product div.right ul.gallery_link li a {
  display: block;
  overflow: hidden;
  text-indent: -9999px;
  background-image: url(../images/bg_gallery_link.png);
  width: 100%;
  height: 100%;
}
div#container.product div.right ul.gallery_link li#menu_car a     { background-position: 0px    0px;}
div#container.product div.right ul.gallery_link li#menu_oa a      { background-position: 0px  -50px;}
div#container.product div.right ul.gallery_link li#menu_avisual a { background-position: 0px -100px;}
div#container.product div.right ul.gallery_link li#menu_spal a    { background-position: 0px -150px;}
div#container.product div.right ul.gallery_link li#menu_car a:hover     { background-position: 0px -200px;}
div#container.product div.right ul.gallery_link li#menu_oa a:hover      { background-position: 0px -250px;}
div#container.product div.right ul.gallery_link li#menu_avisual a:hover { background-position: 0px -300px;}
div#container.product div.right ul.gallery_link li#menu_spal a:hover    { background-position: 0px -350px;}

/* 製品情報->製品画像集 */
div#container.product_gallery h2 {
  background: url(../images/bg_h2.png) no-repeat left -123px;
  width: 291px;
  height: 41px;
}
div#container table#gallery {
  margin: 2em auto 1em auto;
  border-collapse: collapse;
  clear: both;
}
div#container table#gallery th, div#container table#gallery td {
  text-align: center;
  padding: 5px;
  border: solid 1px #999;
}
div#container table#gallery th {
  background-color: #eee;
}
div#container table#gallery td a img {
  border-style: none;
}
div#container.product_gallery ul.left {
  padding-left: 45px;
  padding-bottom: 0px;
}
div#container.product_gallery ul.left li { margin: 0; }
div#container.product_gallery ul.left li a { background-color: #fff; }
div#container.product_gallery ul.left li a:hover {
  color: #009; 
  background-color: #eee;
}

/* 生産設備 */
div#container.facility h2 {
  background: url(../images/bg_h2.png) no-repeat left -164px;
  width: 291px;
  height: 41px;
}
div#container.facility div.box1 {
  background: url(../images/bg_facility.jpg) no-repeat right top;
  margin: 20px 30px;
  padding-right: 280px;
  min-height: 200px;
}
div#container.facility div.global_services {
  background: url(../images/bg_global_services.jpg) no-repeat center top;
  height: 296px;
  margin-bottom: 80px;
}
div#container.facility div.global_services * {
  background-image: none;
  text-indent: -9999px;
  overflow: hidden;
}
div#container.facility div.facility_link p {
  margin-left: 50px;
  margin-bottom: 20px;
  font-size: 90%;
}
div#container.facility div.facility_link ul {
  margin: 0 auto;
  width: 700px;
  min-height: 100px;
}
div#container.facility div.facility_link ul li {
  list-style-type: none;
  float: left;
  width: 200px;
  height: 50px;
  margin: 0 5px;
}
div#container.facility div.facility_link ul li a {
  display: block;
  overflow: hidden;
  text-indent: -9999px;
  background-image: url(../images/bg_facility_link.png);
  width: 100%;
  height: 100%;
}
div#container.facility div.facility_link ul li#menu_riveting a   { background-position:    0px 0px;}
div#container.facility div.facility_link ul li#menu_rolling a    { background-position: -200px 0px;}
div#container.facility div.facility_link ul li#menu_inspection a { background-position: -400px 0px;}
div#container.facility div.facility_link ul li#menu_riveting a:hover   { background-position:    0px -50px;}
div#container.facility div.facility_link ul li#menu_rolling a:hover    { background-position: -200px -50px;}
div#container.facility div.facility_link ul li#menu_inspection a:hover { background-position: -400px -50px;}

/* 生産設備->設備一覧 */
div#container.facility-list h2 {
  background: url(../images/bg_h2.png) no-repeat left -205px;
  width: 291px;
  height: 41px;
}
div#container.facility-list div.right table {
  font-size: 90%;
  border-collapse: collapse;
}
div#container.facility-list div.right table colgroup col.type_a { width: 120px; }
div#container.facility-list div.right table colgroup col.type_b { width: 180px; }
div#container.facility-list div.right table colgroup col.number,
div#container.facility-list div.right table td.number {
  width: 4em;
  text-align: right;
}
div#container.facility-list div.right table tr th {
  background-color: #009;
  color: #ccf;
  font-weight: bold;
  padding: 0 5px;
  text-align: center;
}
div#container.facility-list div.right table tr td {
  padding: 0 5px;
}
div#container.facility-list div.right table tr.even td {
  background-color: #eee;
}
div#container.facility-list div.right table tr.sum td {
  border-top: solid 1px #666;
  text-align: right;
}
div#container.facility-list div.right table tr td span {
  display: block;
  float: right;
  width: 2em;
  margin: 0 2px;
  text-align: right;
}
div#container.facility-list div.right ul.image_list {
  font-size: 12px;
  line-height: 12px;
  float: right;
}
div#container.facility-list div.right ul.image_list li {
  list-style-type: none;
  margin: 10px 5px;
  /*text-align: center;*/
}

/* FAQ */
div#container.faq h2 {
  background: url(../images/bg_h2.png) no-repeat left -287px;
  width: 291px;
  height: 41px;
}
div#container.faq dl dt {
  background: url(../images/bg_faq_icon.png) no-repeat 5px 5px;
  border-top: dotted 2px #008;
  margin: 35px 25px 0px 25px;
  padding: 5px 0 0 45px;
}
div#container.faq dl dd { margin: 20px 40px 0px 80px; padding-bottom: 20px; }
div#container.faq dl dd ul { margin-left: 40px; }
div#container.faq dl dd ul li { margin-bottom: 0.5em; }
div#container.faq dl dd dl dt {
  float: left;
  width: 10em;
  background-image: none;
  margin: 0;
  padding: 0;
  border-width: 0;
  color: #000;
  text-align: right;
}
div#container.faq dl dd dl dd {
  margin: 0 0 0 11em;
  padding: 0;
}

/* 営業カレンダー */
div#container.calendar h2 {
  background: url(../images/bg_h2.png) no-repeat left -246px;
  width: 291px;
  height: 41px;
}
div#container.calendar div#cale { text-align: center; }
div#container.calendar div#cale table { margin: 20px auto 0 auto; }

/* 会社概要 */
div#container.company h2 {
  background: url(../images/bg_h2.png) no-repeat left 0px;
  width: 291px;
  height: 41px;
}
div#container.company div.right img#ceo {
  float: right;
  margin: 10px;
}
div#container.company div.right p#name {
  text-align: right;
  padding: 10px 20px;
  letter-spacing: 4px;
}
div#container.company div.right p#name span {
  font-size: 120%;
  font-weight: bold;
}
div#container.company div.right dl dt {
  float: left;
  margin: 0;
  width: 7em;
}
div#container.company div.right dl dd {
  margin-left: 8em;
  margin-bottom: 5px;
  border-left: solid 6px #ccc;
  padding-left: 5px;
}
div#container.company div.right dl dd.tokyo { padding-bottom: 1em; }
div#container.company div.right dl dd.yamanashi {
  padding-bottom: 1em;
  padding-right: 180px;
  background: url(../images/bg_yamanashi.jpg) no-repeat right top;
}
div#container.company div.right dl dd.china01 {
  padding-bottom: 1em;
  padding-right: 180px;
  background: url(../images/bg_china_01.jpg) no-repeat right top;
}
div#container.company div.right dl dd.china02 {
  padding-bottom: 1em;
  padding-right: 180px;
  background: url(../images/bg_china_02.jpg) no-repeat right top;
}
div#container.company div.right dl dd img { vertical-align: middle; }

/* お問い合わせ */
div#container.inquiry h2 {
  background: url(../images/bg_h2.png) no-repeat left -328px;
  width: 291px;
  height: 41px;
}
div#container.inquiry div.right p.free {
  margin: 20px;
  padding: 20px;
  font-size: 90%;
}
div#container.inquiry div.right dl dd img { vertical-align: middle; }
div#container.inquiry div.right dl.mailform dt {
  float: left;
  margin: 0;
  width: 8em;
}
div#container.inquiry div.right dl.mailform dt span {
  font-weight: bold;
  color: #f00;
}
div#container.inquiry div.right dl.mailform dd {
  margin-left: 9em;
  margin-bottom: 5px;
  border-left: solid 6px #ccc;
  padding-left: 5px;
}
div#container.inquiry div.right p.button {
  padding: 20px;
  text-align: center;
}

