@charset "Shift_JIS";
/*--------------------------------------------------------
  共通レイアウトパーツ設定
--------------------------------------------------------*/
/* ヘッダー内パーツ */
#heading3{
	position:relative;
	padding-left:30px;
	border-bottom:2px solid #ccc;
	font-weight: bold;
	font-size: 22px;
	line-height: 38px;
}

#heading3:before{
 	content:''; 
 	height:0; 
 	width:0; 
 	display:block; 
 	border:5px transparent solid; 
 	border-right-width:0; 
 	border-left-color:#00A8FF; 
	position:absolute; 
	top:11px; 
	left:8px;
}

#heading3:after{
	content:''; 
	height:2px; 
	width:10px; 
	display:block; 
	background:#00A8FF; 
	position:absolute; 
	top:15px; 
	left:0px;
}

#hpb-headerLogo{
  width: 600px;
  float: left;
}
#hpb-headerMain h1{
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding-top: 14px;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  text-align: left;
  font-weight: normal;
  line-height: 18px;
  font-size: 10px;
  color: #000;
/* ヘッダー説明文文字色 */
}
#hpb-headerLogo a{
  display: block;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  text-indent: -9999px;
  overflow: hidden;
  height: 70px;
  background-image : url(../img/logo_1Ra.png);
  background-position: top left;
  background-repeat: no-repeat;
}
#hpb-headerExtra1{
  width: 330px;
  margin-top: -5px;
  margin-right: 10px;
  margin-bottom: 0;
  margin-left: 0;
  padding-top: 0px;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  float: right;
}
#hpb-headerExtra1 p.tel{
  /* 電話番号の文字設定 */
    margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  font-size: 1.7em;
  font-weight: bold;
  color: #000;
  line-height: 1.4;
  text-align: right;
  letter-spacing: 0.2em;
}
#hpb-headerExtra1 p.tel span{
  /* 電話番号の「TEL」文字設定 */
    color: #000;
  font-size: 0.75em;
  font-weight: normal;
}
#hpb-headerExtra1 p.address{
  /* 住所文字設定 */
	 color: #000;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  line-height: 1.2;
  text-align: right;
}
/* フッター内パーツ */

#hpb-footer{
  background-image : url(../img/footerBg_1Ra.png);

  padding-top: 14px;
  padding-bottom: 44px;
}
#hpb-footerMain p{
  /* コピーライト文字設定 */
    text-align: center;
  margin-bottom: 11px;
  line-height: 1;
  color: #fff;
}
#hpb-footerExtra1{
  padding-top: 13px;
  padding-bottom: 4px;
  width: 100%;
}
#hpb-footerExtra1 ul{
  margin-top: 0;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  list-style-type: none;
  text-align: right;
  width: 980px;
}
#hpb-footerExtra1 li{
  /* フッターナビ設定 */
    display: inline;
  background-image : url(../img/fpoint_1Ra.png);
  background-position: left center;
  background-repeat: no-repeat;
  padding-left: 22px;
  padding-right: 10px;
  padding-top: 3px;
  padding-bottom: 3px;
  font-weight: normal;
}
#hpb-footerExtra1 a:link{
  color: #000;
  text-decoration: underline;
}
#hpb-footerExtra1 a:visited{
  color: #000;
  text-decoration: underline;
}
#hpb-footerExtra1 a:hover{
  color: #333;
  text-decoration: underline;
}
#hpb-footerExtra1 a:active{
  color: #333;
  text-decoration: underline;
}
/*--------------------------------------------------------
  ナビゲーションデザイン設定
--------------------------------------------------------*/

#hpb-nav li a{
  /* ナビゲーション文字設定 */
    font-weight: normal;
}
#hpb-nav li a:link{
  color: #ffffff;
  text-decoration: none;
}
/* ナビゲーション文字色設定 */
#hpb-nav li a:visited{
  color: #ffffff;
  text-decoration: none;
}
#hpb-nav li a:hover{
  color: #ffffff;
  text-decoration: none;
}
#hpb-nav li a:active{
  color: #ffffff;
  text-decoration: none;
}
#hpb-nav li span.en{
  display: none;
}
/*--------------------------------------------------------
  基本パーツデザイン設定
--------------------------------------------------------*/

/* リンク文字色 */
a:link{
  color: #3366cc;
  text-decoration: underline;
}
a:visited{
  color: #3366cc;
  text-decoration: underline;
}
a:hover{
  color: #f3bd00;
  text-decoration: none;
}
a:active{
  color: #64BEE6;
  text-decoration: none;
}
#hpb-skip{
  /* ヘッダースキップの非表示 */
    height: 1px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  text-indent: -9999px;
}
p{
  margin-top: 0.5em;
  margin-bottom: 2em;
  padding-right: 0px;
  padding-left: 0.1em;
  line-height: 1.8;
  text-align: left;
font-size:16px;
}
p.large{
  font-weight: bold;
}
p.indent{
  padding-left: 25px;
}
.left{
  float: left;
}
img.left{
  margin-left: 14px;
}
.right{
  float: right;
}
img.right{
  margin-right: 24px;
}
hr{
  width: 100%;
  height: 15px;
  margin-top: 10px;
  margin-right: 24px;
  margin-bottom: 20px;
  margin-left: auto;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  clear: both;
  border-top-width: 1px;
  border-top-style: none;
  border-right-width: 1px;
  border-right-style: none;
  border-left-width: 1px;
  border-left-style: none;
  color: #ffffff;
  border-bottom-width: 1px;
  border-bottom-style: none;
}
.hpb-layoutset-02 h2{
  width: 960px;
  background-image: url(../img/indexBg_1Ra.png);
  background-position: 10px 15px;
  background-repeat: no-repeat;
  background-color: #000000;
  padding-left: 23px;
  padding-top: 5px;
  padding-bottom: 3px;
  text-align: left;
  color: white;
  font-weight: normal;
  letter-spacing: 0.1em;
  border-bottom-width: 3px;
  border-bottom-style: solid;
  border-bottom-color: #539d1d;
  margin-top: 53px;
  margin-right: 3px;
  font-size: 23px;
}
h2 span.en{
  display: none;
}
.hpb-layoutset-02 #hpb-wrapper h3{
  clear: both;
  margin-top: 0.5em;
  margin-bottom: 1em;
  margin-left: 0;
  margin-right: 23px;
  text-align: left;
  padding-top: 3px;
  padding-left: 8px;
  padding-bottom: 3px;
  border-bottom-width: 2px;
  border-bottom-style: solid;
  border-bottom-color: #539d1d;
    border-left: 7px solid #539d1d;
  font-size: 25px;
  color: #333;
  font-weight: normal;
}
h3.hpb-c-index{
  height: 1px;
  margin: 0;
  padding: 0;
  overflow: hidden;
  text-indent: -9999px;
  background: none;
}
h4 {
	position: relative;
	padding: 1em;
  font-size: 1.5em;
 	background-color: #f6f6f6;
}
h4::after {
	position: absolute;
	top: 0;
	right: 0;
	content: '';
	width: 0;
	border-width: 0 16px 16px 0;
	border-style: solid;
	border-color: #fff #fff #ddd #ddd;
	box-shadow: -1px 1px 2px rgba(0, 0, 0, .1);
}
h5{
  margin-top: 5px;
  margin-bottom: 10px;
  margin-left: 14px;
  margin-right: 34px;
  padding-top: 8px;
  padding-right: 10px;
  padding-bottom: 2px;
  padding-left: 0px;
  text-align: left;
  font-size: 1.4em;
  line-height: 1.2;
  color: #333333;
  border-bottom-width: 2px;
  border-bottom-style: dotted;
  border-bottom-color: #539d1d;
}
h6 {
  position: relative;
  padding: 0.5em;
}
h6::after {
  width: 100%;
  position: absolute;
  bottom: -5px;
  left: 0;
  content: '';
  height: 5px;
  background: repeating-linear-gradient(-45deg, #ccc, #ccc 3px, #fff 3px, #fff 6px);
}
table{
  margin-top: 5px;
  margin-right: auto;
  margin-bottom: 5px;
  margin-left: 3px;
  border-collapse: collapse;
  border-top-width: 0px;
  border-top-style: solid;
  border-top-color: #cccccc;
  border-left-width: 0px;
  border-left-style: solid;
  border-left-color: #cccccc;
  width: 100%;
font-size:16px;
}
table th{
  padding-top: 3px;
  padding-right: 3px;
  padding-bottom: 3px;
  padding-left: 3px;
  text-align: left;
  background-color: #fff;
  border-right-width: 0px;
  border-right-style: solid;
  border-right-color: #cccccc;
  border-bottom-width: 0px;
  border-bottom-style: solid;
  border-bottom-color: #cccccc;
}
table td{
  padding-top: 3px;
  padding-right: 3px;
  padding-bottom: 3px;
  padding-left: 3px;
  text-align: left;
  border-right-width: 0px;
  border-right-style: solid;
  border-right-color: #cccccc;
  border-bottom-width: 0px;
  border-bottom-style: solid;
  border-bottom-color: #cccccc;
}
/* フォームパーツ設定 */
input.button{
  margin-top: 10px;
  margin-bottom: 15px;
  margin-left: 10px;
  padding: 10px;
}
textarea{
  width: 400px;
  height: 200px;
}
input.l{
  width: 400px;
}
input.m{
  width: 250px;
}
input.s{
  width: 150px;
}
/* メインコンテンツ内基本パーツ */

#hpb-main p{
  margin-left: 10px;
  margin-right: 10px;
}
#hpb-main ul{
  margin-top: 0;
  margin-right: 10px;
  margin-bottom: 0;
  margin-left: 10px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  list-style-type: none;
}
#hpb-main ul li{
  text-align: left;
  line-height: 1.4;
  padding-top: 10px;
  padding-right: 15px;
  padding-bottom: 10px;
  padding-left: 15px;
  background-image : url(../img/arrow_1Ra.png);
  background-position: 5px 10px;
  background-repeat: no-repeat;
  border-bottom-width: 1px;
  border-bottom-style: dotted;
  border-bottom-color: #DDDDDD;
  color: #000000;
}
#hpb-main dl{
  margin-top: 0;
  margin-right: 5px;
  margin-bottom: 20px;
  margin-left: 10px;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  zoom: 100%;
font-size:16px;
}
#hpb-main dt{
  float: left;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  text-align: left;
  line-height: 16px;
  min-height: 16px;
  font-weight: bold;
  width: 150px !important;
  padding-top: 10px;
  padding-right: 0;
  padding-bottom: 10px;
  padding-left: 15px;
  background-image : url(../img/arrow_1Ra.png);
  background-position: 5px 9px;
  background-repeat: no-repeat;
}
#hpb-main dd{
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding-top: 10px;
  padding-right: 5px;
  padding-bottom: 10px;
  text-align: left;
  line-height: 16px;
  min-height: 16px;
  padding-left: 170px;
  border-bottom-width: 1px;
  border-bottom-style: dotted;
  border-bottom-color: #DDDDDD;
}
*:first-child + html #hpb-main dd{
  /* for IE7 */
    padding-left: 10px;
  min-height: 20px;
}
* html #hpb-main dd{
  /* for IE6 */
    height: 20px;
  padding-left: 0px;
}
#hpb-main dl::after{
  content: ".";
  clear: both;
  height: 0;
  display: block;
  visibility: hidden;
}
#hpb-main img.left{
  margin-top: 5px;
  margin-right: 20px;
  margin-bottom: 10px;
  float: left;
}
#hpb-main img.right{
  margin-top: 5px;
  margin-bottom: 10px;
  margin-left: 20px;
  float: right;
}
#pagetop{
  clear: both;
  width: 100%;
  margin-top: 10px;
  margin-right: auto;
  margin-bottom: 0;
  margin-left: auto;
  text-align: right;
}
#pagetop a{
  /* ページの先頭へのリンク設定 */
    background-image : url(../img/returnTop_1Ra.png);
  background-position: center left;
  background-repeat: no-repeat;
  text-align: left;
  padding-left: 24px;
  padding-top: 8px;
  padding-bottom: 8px;
  padding-right: 10px;
  line-height: 1.6;
}
#pagetop a:link{
  color: #000000;
  text-decoration: none;
}
#pagetop a:hover{
  text-decoration: underline;
}
#pagetop a:visited{
  color: #000000;
}
/* サイドブロック内パーツ */

#banner ul{
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  list-style-type: none;
}
#banner li{
  padding-bottom: 6px;
}
#banner li a{
  display: block;
  width: 268px;
  height: 108px;
  text-indent: -9999px;
  overflow: hidden;
}
#banner a#banner-service{
  /* 製品一覧バナー */
    background-image : url(../img/banner_1Ra_01.png);
  background-position: top left;
  background-repeat: no-repeat;
}
#banner a#banner-recruit{
  /* 採用情報バナー */
    background-image : url(../img/banner_1Ra_02.png);
  background-position: top left;
  background-repeat: no-repeat;
}
#banner a#banner-access{
  /* アクセスバナー */
    background-image : url(../img/banner_1Ra_03.png);
  background-position: top left;
  background-repeat: no-repeat;
}
#hpb-inner #companyinfo{
  width: 262px;
  padding-top: 0px;
  padding-bottom: 10px;
  background-color: #FFF;
  border-width: 3px;
  border-style: solid;
  border-color: #eaeaea;
}
#hpb-inner #companyinfo h3{
  color: #000;
  text-align: center;
  font-weight: normal;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 15px;
  padding-right: 5px;
  background-color: #fcf8b1;
  font-size: 1em;
  margin-top: 2px;
  margin-left: 2px;
  margin-right: 2px;
}
#hpb-inner #companyinfo p{
  margin-bottom: 10px;
  padding-left: 15px;
  padding-right: 5px;
}
/* トップページ デザイン定義 */

#toppage h3{
  background-image : url(../img/indexBg_1Ra.png);
  background-position: 20px 13px;
  background-repeat: no-repeat;
  background-color: #fcf8b1;
  padding-left: 30px;
  padding-top: 4px;
  padding-bottom: 3px;
  text-align: left;
  color: #333;
  font-size: 21px;
  font-weight: normal;
  letter-spacing: 0.1em;
  border-bottom: 3px solid #539d1d;
  margin-top: 3px;
  margin-right: 3px;
  margin-left: 20px;
}
#toppage h3 span.ja{
  display: none;
}
#toppage-topics{
  border-width: 3px;
  border-style: solid;
  border-color: #eaeaea;
  margin-bottom: 8px;
}
#hpb-main #toppage-topics hr{
  margin-bottom: 0px;
  padding-bottom: 0;
}
#hpb-main #toppage-topics li{
  border-bottom: none;
  border-top-width: 1px;
  border-top-style: dotted;
  border-top-color: #DDDDDD;
}
#toppage-news{
  border-width: 3px;
  border-style: solid;
  border-color: #eaeaea;
  margin-bottom: 8px;
}
#hpb-main #toppage-news dl{
  margin-bottom: 7px;
}
#hpb-main #toppage-news dd{
  border-bottom: none;
  border-top-width: 1px;
  border-top-style: dotted;
  border-top-color: #DDDDDD;
}
#topbutton{
  /* ▼表示位置を画面の右下に固定 */
      position: fixed;
  /* ←表示場所を固定 */
      bottom: 18px;
  /* ←下端からの距離 */
      right: 18px;
  /* ←右端からの距離 */
      width: 7em;
  /* ←横幅 */

      /* ▼最初は非表示にしておく */
      display: none;
  /* ▼配色・配置・文字の装飾など */
      background-color: #000055;
  /* ←背景色 */
      opacity: 0.75;
  /* ←透明度 */
      border-radius: 24px;
  /* ←角丸の半径 */
      text-align: center;
  /* ←文字の位置 */
      font-size: 120%;
  /* ←文字サイズ */
      font-weight: bold;
  /* ←文字の太さ */
      margin: 0px;
  /* ←外側の余白 */
      padding: 10px;
/* ←内側の余白 */
   }
#topbutton a{
  /* ▼リンクの装飾 */
      color: white;
  /* ←文字色 */
      text-decoration: none;
/* ←下線なし */
   }
#topbutton a:hover{
  /* ▼マウスが載ったときの装飾 */
      color: yellow;
  /* ←文字色 */
      text-decoration: underline;
/* ←下線あり */
   }