@charset "utf-8";
/* CSS Document */

@import url('grid.css');

/*======================================================================
  common
======================================================================*/
* {
  margin: 0;
  padding: 0;
  border: 0;
}

html, body {
  background: url(../images/bg_body_02.jpg) top left repeat-x #FFF;
  color: #376088;
  line-height: 1.0;
  font-size: 12px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

a {
  color: #12202E;
  text-decoration: underline;
}

a:hover {
  text-decoration: none;
}


/*-----------------------------------
  class
-----------------------------------*/
.clearboth  { clear: both;  height: 0; }
.clearleft  { clear: left;  height: 0; }
.clearright { clear: right; height: 0; }

.textleft   { text-align: left;   }
.textcenter { text-align: center; }
.textright  { text-align: right;  }

.floatright { float: right; margin: 0 0 10px 20px; }
.floatleft  { float: left;  margin: 0 20px 10px 0;}

.normal { font-weight: normal; }
.bold   { font-weight: bold;   }

.orange { color: #CC6600; }
.black  { color: #12202E; }
.red    { color: #C00;    }

.size10 { font-size: 10px; }
.size12 { font-size: 12px; }
.size14 { font-size: 14px; }

.none { display: none; }

.padtop10 { padding-top: 10px; }

.vatop { vertical-align: top; }

.width75 { width: 75% }
.width85 { width: 85% }

/*-----------------------------------
  wrapper
-----------------------------------*/
#wrapper_index {
  background: url(../images/bg_wrapper_index_02.jpg) top center no-repeat;
  min-height: 800px;
}

#wrapper_subpage {
  background: url(../images/bg_wrapper_subpage_02.jpg) top center no-repeat;
  min-height: 800px;
}

#wrapper_outer {
  background: url(../images/bg_wrapper_outer_01.jpg) top center repeat-y;
}


/*-----------------------------------
  header
-----------------------------------*/
#header_h1 {
  padding: 3px 15px 5px 205px;
  height: 27px;
  text-align: center;
  line-height: 14px;
}

h1 {
  font-size: 12px;
  font-weight: normal;
  color: #D8E9F9;
}

#header_logo {
  padding: 0;
  height: 72px;
  width: 215px;
  float: left;
}

#header_logo img {
  position: absolute;
  top: 15px;
  width: 150px;
}

#header_menu {
  padding: 15px 0 0;
  height: 45px;
  width: 725px;
  float: left;
}

  #header_menu li {
    list-style-type: none;
    display: inline;
  }

  /* drop down menu */
  #header_menu div {
    display: none;
    z-index: 9999;
  }

  #header_menu li.mega div {
    position: absolute;
    top: 95px;
    background: #EFF4FC;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    -o-border-radius: 6px;
    -ms-border-radius: 6px;
    padding: 10px;
    -moz-box-shadow: 0 3px 1px rgba(0,0,0,0.4);
    -webkit-box-shadow: 0 3px 1px rgba(0,0,0,0.4);
    -o-box-shadow: 0 3px 1px rgba(0,0,0,0.4);
    -ms-box-shadow: 0 3px 1px rgba(0,0,0,0.4);
  }

    #header_menu li.mega div.sub01 {
      left: 335px;
    }

    #header_menu li.mega div.sub02 {
      left: 455px;
    }

    #header_menu li.mega div li {
      display: block;
      line-height: 1.5;
      background: url(../images/bg_icon_folder_01.jpg) left center no-repeat;
      padding-left: 22px;
    }

  #header_menu li.hovering div {
    display: block;
  }


/*-----------------------------------
  footer
-----------------------------------*/
#footer {
  background: url(../images/bg_footer_01.jpg) left top repeat-x;
  min-height: 165px;
  margin-top: 20px;
  color: #12202E;
}

  #footer #page_top {
    text-align: right;
    height: 30px;
    margin-bottom: 30px;
  }

  #footer #footer_menu {
    font-size: 10px;
    line-height: 1.5;
  }

    #footer #footer_menu  a {
      color: #12202E;
      text-decoration: none;
    }

    #footer #footer_menu  a:hover {
      text-decoration: underline;
    }

  #footer #address {
    text-align: right;
    line-height: 1.5;
  }

  #footer #copyright {
    text-align: center;
    margin-top: 10px;
  }



/*======================================================================
  index
======================================================================*/
#slideshow {
  /*padding: 40px 0 0;*/
  padding: 25px 0 0;
}

  #bigPic{
    width: 920px;
    height: 320px;
    padding: 0 10px 10px;
    margin-bottom: 10px;
  }

  #bigPic img{
    position: absolute;
    display: none;
  }

  ul#thumbs {
    position: absolute;
    top: 310px;
    left: 780px;
    z-index: 10;
    display: none;
  }

  ul#thumbs li.active {
    border: 5px solid #6AAAEA;
  }

  ul#thumbs, ul#thumbs li {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  ul#thumbs li {
    float: left;
    margin-right: 10px;
    border: 5px solid #FFF;
    cursor: pointer;
  }

  ul#thumbs li:hover {
    border: 5px solid #6AAAEA;
  }

  ul#thumbs img {
    float: left;
    width: 30px;
    height: 30px;
    /*line-height: 30px;*/
    overflow: hidden;
    position: relative;
    z-index: 1;
  }

  div#main_img {
    position: relative;
  }

  div#main_img img.img_filter {
    position: absolute;
    z-index: 10;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
  }

/*-----------------------------------
  main
-----------------------------------*/
.content_index {
  padding: 40px 0 0;
}

  .content_index .inner {
    margin: 20px 0 0;
    line-height: 1.5;
  }

    .content_index .inner ul {
      margin-left: 20px;
    }

    .content_index .inner li {
      list-style-type: square;
    }

  .content_index .list {
    margin: 10px 0 0;
    line-height: 1.5;
  }

    .content_index .list ul {
      margin-left: 5px;
    }

    .content_index .list li {
      list-style-type: none;
      background: url(../images/bg_arrow_01.jpg) left center no-repeat;
      padding: 5px 0 3px 16px;
      border-bottom: 1px dotted #888F96;
    }

    .content_index .list a {
      color: #376088;
      text-decoration: underline;
    }

    .content_index .list a:hover {
      text-decoration: none;
    }

  .content_cm {
    padding: 10px 0 0;
  }

    .content_cm .hrborder {
      border-bottom: 1px dotted #888F96;
      height: 0;
      margin: 40px 0 0 0;
    }

    .content_cm .list {
      margin: 20px 0 0 0;
    }

    .content_cm .list li {
      border-bottom: none;
    }

    .cm {
      position: absolute;
      width: 300px;
      height: 90px;
      z-index: 1;
      left: 640px;
    }

    .cm img {
      float: right;
    }

    .cm div {
      float: right;
      color: #2f88f0;
      border: solid 2px;
      font-weight: bold;
      padding: 5px 5px 5px 10px;
      margin-top: 30px;
      margin-right: 10px;
    }

     .group_company_title {
      background: url(../images/bg_title_h4_01.jpg) left no-repeat;
      height: 22px;
      padding: 3px 0 0 10px;
      font-size: 14px;
      font-weight: bold;
      color: #12202E;
    }

    .group_company {
      margin-top: 10px;
    }

    .group_company_line {
      margin-bottom: 10px;
    }

    .group_company_one {
      font-size: 10px;
      display: inline-block;
      margin-right: 10px;
      width: 200px;
      vertical-align: top;
      *display: inline;
      *zoom: 1;
    }

    .group_company_one img {
      margin-bottom: 5px;
    }

    .group_company_one .group_company_description {
      background: no-repeat url(../images/footer_affi_shikaku.png);
      padding: 0 0 0 13px;
      line-height: 16px;
      font-weight:bold;
    }

    .group_company_one .group_company_description .not-bold {
      font-weight:normal;
      margin: 3px 0 0 0 ;
    }


/*======================================================================
  subpage
======================================================================*/
#main_subpage {
  padding: 30px 20px 0 0;
}

  #main_subpage .inner {
    padding: 40px 0;
    line-height: 1.5;
  }

    #main_subpage .inner h4 {
      background: url(../images/bg_title_h4_01.jpg) left no-repeat;
      height: 22px;
      padding: 3px 0 0 10px;
      font-size: 14px;
      font-weight: bold;
      color: #12202E;
    }

    #main_subpage .inner ul {
      margin-left: 20px;
    }

    #main_subpage .inner li {
      list-style-type: square;
    }

    #main_subpage .inner ol {
      margin-left: 30px;
    }

    #main_subpage .inner ol li {
      list-style-type: decimal;
    }

    #main_subpage .inner table {
      border-top: 1px solid #C2D6E7;
      border-left: 1px solid #C2D6E7;
    }

    #main_subpage .inner th {
      background: #F0F5F9;
      border-right: 1px solid #C2D6E7;
      border-bottom: 1px solid #C2D6E7;
      padding: 10px;
      vertical-align: top;
    }

    #main_subpage .inner td {
      border-right: 1px solid #C2D6E7;
      border-bottom: 1px solid #C2D6E7;
      padding: 10px;
      vertical-align: top;
    }

    #main_subpage .inner .border {
      border: 1px solid #C2D6E7;
      padding: 20px;
      width: 638px;
    }

    #main_subpage .inner .left {
      float: left;
      padding-right: 90px;
    }

    #main_subpage .inner .right {
      float: left;
    }

  #main_subpage .hrborder {
    border-bottom: 1px dotted #888F96;
    height: 0;
  }


  #main_subpage .inner_ses {
    padding: 40px 0;
    line-height: 1.5;
  }

    #main_subpage .inner_ses #security {
      background: url(../images/bg_sv_ses_security_01.jpg) no-repeat;
      width: 510px;
      height:75px;
      padding: 20px 150px 0 20px;
    }

    #main_subpage .inner_ses .border {
      width: 638px;
      padding: 20px;
      border-left: 1px solid #C2D6E7;
      border-right: 1px solid #C2D6E7;
      border-bottom: 1px solid #C2D6E7;
    }

  #main_subpage .contact {
  }

    #main_subpage .contact select {
      border: 1px solid #C2D6E7;
      font-size: 12px;
      font-family: Verdana, Geneva, sans-serif;
    }

    #main_subpage .contact input {
      border: 1px solid #C2D6E7;
      font-size: 12px;
      font-family: Verdana, Geneva, sans-serif;
      padding: 4px 5px 0;
      height: 19px;
    }

    #main_subpage .contact input[name="enquete"] {
      float: left;
      border: none;
    }

    #main_subpage .contact input[name="policy"] {
      border: none;
    }

    #main_subpage .contact p.radio_label {
      padding-left:1em;
    }

    #main_subpage .contact input.company_name,
    #main_subpage .contact input.mail {
      width: 288px;
    }

    #main_subpage .contact input.family_name,
    #main_subpage .contact input.first_name,
    #main_subpage .contact input.family_name_kana,
    #main_subpage .contact input.first_name_kana {
      width: 138px;
    }

    #main_subpage .contact input.tel {
      width: 88px;
    }

    #main_subpage .contact textarea {
      border: 1px solid #C2D6E7;
      font-size: 12px;
      font-family: Verdana, Geneva, sans-serif;
      padding: 5px;
      width: 388px;
      height: 158px;
    }

    #main_subpage .contact button.clear_btn,
    #main_subpage .contact button.confirm_btn,
    #main_subpage .contact button.back_btn,
    #main_subpage .contact button.submit_btn {
      cursor: pointer;
      width: 80px;
      border: none;
      background: none;
    }

  #main_subpage #winphone {
    background: url(../images/bg_main_wp_01.jpg) center 40px no-repeat;
    line-height: 1.5;
    padding-bottom: 40px;
  }

    #main_subpage #winphone .midashi {
      padding: 250px 0 0 30px;
      width: 295px;
    }

    #main_subpage #winphone .square {
      margin-top: 40px;
      border: 1px solid #C2D6E7;
      -moz-border-radius: 10px;
      -webkit-border-radius: 10px;
      -o-border-radius: 10px;
      -ms-border-radius: 10px;
      padding: 9px;
    }

      #main_subpage #winphone .square .left {
        float: left;
        width: 100px;
      }

      #main_subpage #winphone .square .right {
        float: left;
        width: 560px;
      }

        #main_subpage #winphone .square h4 {
          font-size: 12px;
          font-weight: bold;
        }

  #main_subpage #smartphone {
    background: url(../images/bg_main_sp_01.jpg) center 40px no-repeat;
    line-height: 1.5;
    padding-bottom: 40px;
  }

    #main_subpage #smartphone .midashi {
      padding: 250px 0 0 30px;
      width: 395px;
    }

    #main_subpage #smartphone .square {
      margin-top: 40px;
      border: 1px solid #C2D6E7;
      -moz-border-radius: 10px;
      -webkit-border-radius: 10px;
      -o-border-radius: 10px;
      -ms-border-radius: 10px;
      padding: 9px;
    }

      #main_subpage #smartphone .square .left {
        float: left;
        width: 100px;
      }

      #main_subpage #smartphone .square .right {
        float: left;
        width: 560px;
      }

        #main_subpage #smartphone .square h4 {
          font-size: 12px;
          font-weight: bold;
        }


  #main_subpage #archives {
  }

    #main_subpage #archives ul {
      margin-left: 5px;
    }

    #main_subpage #archives li {
      list-style-type: none;
      background: url(../images/bg_arrow_01.png) left center no-repeat;
      padding: 5px 0 3px 16px;
      border-bottom: 1px dotted #888F96;
    }

  #main_subpage #pr {
  }

    #main_subpage #pr p {
      margin: 0 0 1em 0;
    }

    #main_subpage #pr .pr_image {
      width: 300px;
      margin: 0px;
    }

    #main_subpage #pr .pr_image img {
      max-width: 300px;
      height: auto;
    }

    #main_subpage #pr .pr_text {
      margin: 0 0 0 30px;
      width: 340px;
    }

    #main_subpage #pr .pr_title {
      margin: 15px 0;
    }

    #main_subpage #pr .pr_title .main {
      font-size: 22px;
    }

    #main_subpage #pr .pr_title .sub {
      font-size: 16px;
    }

    #main_subpage #pr td {
      text-align: left;
    }

/*-----------------------------------
  side
-----------------------------------*/
#floatMenu {
  position: relative;
  width: 220px;
  margin: 30px 0 0;
}

  #floatMenu li {
    list-style-type: none;
  }

/*-----------------------------------
  about_outline
-----------------------------------*/

td .group_company {
   margin: 0px;
}

.group_company ul {
   font-weight: bold;
   background: #eee;
   margin: 5px 0 5px 0 !important;
   padding-left: 5px;
   clear: both;
}

.group_company b {
   margin: 5px 0 10px 0;
   font-size: 120%;
}

.group_company .group_margin {
   margin: 10px;
}

/*-------------------------------------------*
  icon
/*-------------------------------------------*/

.icon {
  clear: both;
  width: 830px;
  margin: 50px auto 0 auto;
}

.icon .icon_box {
  float: left;
  width: 200px;
  text-align: center;
  margin: 0 25px 0 0;
}

.icon .icon_box p {
  font-size: 90%;
  margin: 5px 0 0 0;
  line-height: 18px;
}

.icon .icon_img {
  height: 80px;
  vertical-align: middle;
  display: table-cell;
  width: 200px;
  margin-left:auto;
  margin-right:auto;
}
