@charset "UTF-8";
/*------------------------------------------------------------
	デフォルトスタイル
------------------------------------------------------------*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 1em; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {
  display: block; }

html {
  font-size: 62.5%; }

body, table, input, textarea, select, option, h1, h2, h3, h4, h5, h6 {
  font-family: arial,helvetica,clean,sans-serif;
  line-height: 1.1; }

h1, h2, h3, h4, h5, h6 {
  font-weight: bold; }

table, input, textarea, select, option {
  line-height: 1.1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

:focus {
  outline: 0; }

ins {
  text-decoration: none; }

del {
  text-decoration: line-through; }

img {
  vertical-align: top; }

a,a:hover,a:visited {
	/*text-decoration:none;*/
	color:#004a9d;}



/*------------------------------------------------------------
	書式設定
------------------------------------------------------------*/
/* テキストの位置 */
.taLeft {
  text-align: left !important; }

.taCenter {
  text-align: center !important; }

.taRight {
  text-align: right !important; }

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

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

/* フォントの太さ */
.fwNormal {
  font-weight: normal !important; }

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

/*------------------------------------------------------------
	微調整用クラス（※多用しないこと）
------------------------------------------------------------*/
.mt0 {
  margin-top: 0 !important; }

.mb0 {
  margin-bottom: 0 !important; }

/*------------------------------------------------------------
	clearfix（float解除）
------------------------------------------------------------*/
.clearfix {
  *zoom: 1; }
  .clearfix:after {
    display: block;
    clear: both;
    content: ""; }

/*------------------------------------------------------------
	SPで画像の横幅固定
------------------------------------------------------------*/
.imgWFix {
  width: auto;
  max-width: none;
  height: auto; }

/*------------------------------------------------------------
	トラッキングタグの余計なスペースを削除
------------------------------------------------------------*/
.trackTags {
  display: none; }

/*------------------------------------------------------------
	PC ←→ SP 切り替え
------------------------------------------------------------*/
/* 表示・非表示 */
/*SP用*/
/*------------------------------------------------------------
	レイアウト
------------------------------------------------------------*/
body {
  min-width: 980px;
  line-height: 1.5;
  text-align: center;
  -webkit-text-size-adjust: 100%; }

#container {
  min-width: 980px;
  text-align: left; }

#main {
  padding-top: 30px;
  padding-bottom: 0; }
  #main .pagetop {
    margin: auto;
    width: 980px; }
    #main .pagetop:after {
      display: block;
      clear: both;
      content: ""; }
    #main .pagetop a {
      padding-top: 9px;
      width: 38px;
      height: 29px;
      background: #FFF;
      border: 3px solid #cecece;
      display: block;
      float: right;
      text-align: center; }
      #main .pagetop a:hover {
        filter: alpha(opacity=70);
        opacity: 0.7; }

/*SP用*/
@media only screen and (max-width: 768px) {
  body {
    min-width: 320px;
    overflow-x: auto; }
  #container {
    min-width: 320px;
    overflow: hidden; }
  #main {
    padding-top: 30px; }
    #main .pagetop {
      margin: auto;
      width: auto; }
      #main .pagetop:after {
        display: block;
        clear: both;
        content: ""; }
      #main .pagetop a {
        padding-top: 6px;
        width: 26px;
        height: 20px;
        border: 2px solid #cecece; }
        #main .pagetop a img {
          width: 15px; } }

/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#header {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  width: 100%;
  background: #FFF;
  position: fixed;
  z-index: 100; }
  #header .inner {
    margin: 0 auto;
    padding: 17px 0 23px 0;
    width: 935px; }
    #header .inner:after {
      display: block;
      clear: both;
      content: ""; }
    #header .inner .logo {
      float: left; }
    #header .inner .menuBtn {
      display: none; }

/*SP用*/
@media only screen and (max-width: 768px) {
  #header {
    margin: 0 auto;
    padding: 10px 15px 14px;
    position: static; }
    #header .inner {
      padding: 0;
      width: auto; }
      #header .inner .logo {
        float: left; }
        #header .inner .logo img {
          width: 64px;
          height: auto; }
      #header .inner .menuBtn {
        display: block;
        width: 39px;
        height: 41px;
        background-color: #e7e8e7;
        float: right;
        position: fixed;
        top: 5px;
        right: 15px;
        z-index: 100; }
        #header .inner .menuBtn .open, #header .inner .menuBtn .close {
          padding-top: 8px;
          text-align: center; }
        #header .inner .menuBtn .open {
          display: block; }
        #header .inner .menuBtn .close {
          display: none; }
        #header .inner .menuBtn.openMenu .open {
          display: none; }
        #header .inner .menuBtn.openMenu .close {
          display: block; } }

/*------------------------------------------------------------
	グローバルナビ
------------------------------------------------------------*/
#gNavi {
  margin-top: 19px;
  width: 618px;
  position: relative;
  display: block;
  float: right; }
  #gNavi ul li {
    margin-left: 2px;
    float: left;
    position: relative; }
    #gNavi ul li .subNavi {
      position: absolute;
      overflow: hidden;
      display: none; }
      #gNavi ul li .subNavi li {
        margin: 1px 0 0;
        position: relative;
        float: none;
        visibility: inherit; }
        #gNavi ul li .subNavi li a {
          pointer-events: auto; }
    #gNavi ul li:first-child {
      margin-left: 0; }
    #gNavi ul li a {
      display: block;
      text-decoration: none; }
      #gNavi ul li a:hover img {
        filter: alpha(opacity=70);
        opacity: 0.7; }

/*SP用*/
@media only screen and (max-width: 768px) {
  #gNavi {
    display: none;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    padding: 15px;
    width: 100%;
    background-color: #e7e8e7;
    position: fixed;
    top: 26px;
    left: 0;
    z-index: 100; }
    #gNavi ul {
      position: relative; }
      #gNavi ul li {
        margin: 0 0 3px;
        float: none;
        position: relative;
        visibility: inherit; }
        #gNavi ul li a {
          box-sizing: border-box;
          -webkit-box-sizing: border-box;
          width: 100%;
          padding: 10px 35px 10px 10px;
          background: #FFF;
          position: relative;
          text-align: left;
          pointer-events: auto; }
          #gNavi ul li a:after {
            margin-top: -6px;
            width: 8px;
            height: 12px;
            background: url(../img/common/icon/icon_arrow01.png) repeat;
            -ms-background-size: 8px 12px;
            background-size: 8px 12px;
            position: absolute;
            top: 50%;
            right: 20px;
            content: ""; }
          #gNavi ul li a img {
            height: auto;
            vertical-align: middle; }
          #gNavi ul li a:hover img {
            filter: alpha(opacity=100);
            opacity: 1; }
        #gNavi ul li .subNavi {
          box-sizing: border-box;
          -webkit-box-sizing: border-box;
          padding: 0;
          width: 100%;
          height: auto !important;
          background: none;
          border-top: 1px solid #e7e8e7;
          display: block !important;
          position: static !important; }
          #gNavi ul li .subNavi li {
            box-sizing: border-box;
            -webkit-box-sizing: border-box;
            margin: 0;
            width: 50%;
            float: left;
            border-top: 2px solid #e7e8e7; }
            #gNavi ul li .subNavi li:nth-child(odd) {
              border-right: 2px solid #e7e8e7; }
            #gNavi ul li .subNavi li a {
              padding: 10px 40px 10px 10px;
              display: block;
              text-align: left; }
              #gNavi ul li .subNavi li a:after {
                right: 10px; }
        #gNavi ul li:first-child {
          margin-left: 0; }
        #gNavi ul li.top img {
          width: 33px; }
        #gNavi ul li.message img {
          width: 68px; }
        #gNavi ul li.company img {
          width: 86px; }
        #gNavi ul li.company .subNavi .profile img {
          width: 52px; }
        #gNavi ul li.company .subNavi .principle img {
          width: 109px; }
        #gNavi ul li.company .subNavi .busines img {
          width: 52px; }
        #gNavi ul li.company .subNavi .lineup img {
          width: 78px; }
        #gNavi ul li.company .subNavi .license img {
          width: 91px; }
        #gNavi ul li.company .subNavi .sales img {
          width: 38px; }
        #gNavi ul li.company .subNavi .structure img {
          width: 51px; }
        #gNavi ul li.company .subNavi .history img {
          width: 25px; }
        #gNavi ul li.company .subNavi .data img {
          width: 37px; }
        #gNavi ul li.company .subNavi .access img {
          width: 38px; }
        #gNavi ul li.service img {
          width: 67px; }
        #gNavi ul li.service .subNavi .quality img {
          width: 51px; }
        #gNavi ul li.service .subNavi .flow img {
          width: 78px; }
        #gNavi ul li.recruitment img {
          width: 118px; } }

/*------------------------------------------------------------
	コンテンツ
------------------------------------------------------------*/
#conts {
  color: #898989;
  font-size: 1.6em;
  line-height: 2.5; }
  #conts .ttl {
    margin-bottom: 35px; }
    #conts .ttl .sub {
      margin-top: 10px;
      display: block; }

/*SP用*/
@media only screen and (max-width: 768px) {
  #conts {
    font-size: 1.3em;
    line-height: 1.8; }
    #conts .bg {
      width: auto; }
    #conts .ttl {
      margin-bottom: 20px; }
      #conts .ttl .sub {
        margin-top: 5px; }
    #conts img {
      max-width: 100%;
      height: auto;
      vertical-align: top; } }

/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#footer {
  padding: 32px 0 40px;
  background: #eee; }
  #footer .fNavi {
    margin: 0 auto 50px;
    width: 558px;
    font-size: 100%;
    text-align: left; }
    #footer .fNavi li {
      padding-right: 80px;
      width: auto;
      display: table-cell; }
      #footer .fNavi li.company {
        padding-right: 36px; }
        #footer .fNavi li.company .subNavi {
          width: 100px; }
      #footer .fNavi li.service {
        padding-right: 62px; }
        #footer .fNavi li.service .subNavi {
          width: 70px; }
      #footer .fNavi li .subNavi {
        margin-top: 10px; }
        #footer .fNavi li .subNavi li {
          margin-top: 10px;
          padding-right: 0;
          display: block;
          width: auto; }
          #footer .fNavi li .subNavi li:first-child {
            margin-top: 0; }
          #footer .fNavi li .subNavi li a {
            display: inline-block;
            color: #221815;
            text-decoration: none; }
    #footer .fNavi .lastChild {
      margin: 0;
      padding: 0;
      border-right: none; }
  #footer .moveLink {
    display: none; }
  #footer .copyright {
    display: block;
    font-size: 110%;
    text-align: center;
    font-style: normal; }

#lineup-font-size-sampler {
  display: none; }

/*SP用*/
@media only screen and (max-width: 768px) {
  #footer {
    padding: 0; }
    #footer .fNavi {
      display: none; }
    #footer .moveLink {
      display: block; }
      #footer .moveLink:after {
        display: block;
        clear: both;
        content: ""; }
      #footer .moveLink li {
        box-sizing: border-box;
        -webkit-box-sizing: border-box;
        width: 50%;
        border-right: 1px dotted #CCC;
        float: left;
        text-align: center; }
        #footer .moveLink li a, #footer .moveLink li .icon {
          padding: 12px 0;
          display: block;
          color: #898989;
          font-size: 1.1em;
          text-align: center;
          text-decoration: none; }
          #footer .moveLink li a img, #footer .moveLink li .icon img {
            margin: 0 auto 5px;
            padding: 3px 0 2px;
            display: block; }
        #footer .moveLink li.pageTop a img {
          padding: 4px;
          background: #FFF;
          border: 2px solid #cecece;
          display: block;
          text-align: center; }
    #footer .copyright {
      padding: 5px 0;
      background: #666;
      color: #FFF; } }

/*------------------------------------------------------------
	見出し
------------------------------------------------------------*/
/*------------------------------------------------------------
	ボタン
------------------------------------------------------------*/
/*------------------------------------------------------------
	箇条書き
------------------------------------------------------------*/