@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

body {
  color: #454545;
  font-size: 13px;
  line-height: 1;
  font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

* {
  box-sizing: border-box; }

* a {
  color: #454545;
  text-decoration: none;
  -webkit-transition: all .3s;
  transition: all .3s; }
  * a:hover {
    color: #999999; }

* :active,
* :focus{
  outline: none !important;
  border: none !important;
}

* hr {
  border-color: transparent;
  margin: 0 0 20px 0; }

.clr:after {
  content: "";
  clear: both;
  display: block; }

.container {
  width: 960px;
  margin-left: auto;
  margin-right: auto; }

.verdana {
  font-family: Verdana; }

.mincho {
  font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; }

/* #description */
#description {
  background: #454545; }
  #description h1 {
    color: #fff;
    font-size: 11px;
    padding: 10px 0; }

/* #header */
#header {
  padding: 30px 0; }
  #header #logo {
    float: left; }
    #header #logo a {
      display: block;
      text-indent: -9999px;
      background: url(../images/logo.jpg) 0 0 no-repeat;
      width: 406px;
      height: 70px; }
  #header #header-menu {
    float: right; }
    #header #header-menu ul {
      margin-top: 20px; }
      #header #header-menu ul li {
        float: left;
        margin-left: 30px; }
        #header #header-menu ul li a {
          background: url(../images/sitemap.png) center left no-repeat;
          padding: 7px 0 5px 35px; }
        #header #header-menu ul li+li a {
          background: url(../images/privacy.png) center left no-repeat;
          padding: 4px 0 5px 31px; }
          #header #header-menu ul li+li+li{
            margin-top: -6px;
          }
        #header #header-menu ul li+li+li a{
          background: none;
          padding: 0;
        }

/* #mv */
#mv{
  width: 100%;
  height: 400px;
  position: relative;
}
  #mv #sp-mv{
    display: none;
  }

/* #global */
#global-menu {
  width: 100%; }
  #global-menu ul{
    width: 1120px;
  }
  #global-menu ul li {
    float: left; }
    #global-menu ul li a {
      display: block;
      text-indent: -9999px;
      background-image: url(../images/g-menu.jpg);
      background-repeat: no-repeat;
      background-position: 0 0;
      width: 160px;
      height: 70px; }
      #global-menu ul li a:hover {
        opacity: 0.5; }
    #global-menu ul li + li a {
      background-position: -162px 0; }
    #global-menu ul li + li + li a {
      background-position: -320px 0; }
    #global-menu ul li + li + li + li a {
      background-position: -480px 0; }
    #global-menu ul li + li + li + li + li a {
      background-position: -640px 2px; }
    #global-menu ul li + li + li + li + li + li a {
      background-position: -800px 0; }
    #global-menu ul li + li + li + li + li + li + li a {
      background-position: -960px 0; }

#page #global-menu {
  border-top: 1px solid #dfdfdf;
  border-bottom: 1px solid #dfdfdf; }

/* #service-menu */
#service-menu {
  width: 100%;
  background: #8cc2f8;
  margin-bottom: 40px; }
  #service-menu ul{
    width: 1280px;
  }
  #service-menu ul li {
    float: left; }
    #service-menu ul li a {
      display: block; }
      #service-menu ul li a figure {
        position: relative;
        width: 320px;
        height: 240px;
        z-index: 1; }
        #service-menu ul li a figure figcaption {
          position: absolute;
          top: 0;
          left: 0;
          width: 319px;
          height: 239px;
          background: #65a8eb; }
          #service-menu ul li a figure figcaption:before, #service-menu ul li a figure figcaption:after {
            position: absolute;
            top: 5px;
            right: 5px;
            bottom: 5px;
            left: 5px;
            content: "";
            opacity: 1;
            -webkit-transition: opacity 0.3s;
            transition: opacity 0.3s; }
          #service-menu ul li a figure figcaption:before {
            border-top: 1px solid rgba(255, 255, 255, 0.7);
            border-bottom: 1px solid rgba(255, 255, 255, 0.7); }
          #service-menu ul li a figure figcaption:after {
            border-left: 1px solid rgba(255, 255, 255, 0.7);
            border-right: 1px solid rgba(255, 255, 255, 0.7); }
          #service-menu ul li a figure figcaption:hover:before, #service-menu ul li a figure figcaption:hover:after {
            opacity: 0; }
          #service-menu ul li a figure figcaption img{
            display: block;
            margin-left: auto;
            margin-right: auto;
          }

/* #contents */
#contents {
  margin-bottom: 140px; }
  #contents.no-head {
    padding-top: 30px; }
  #contents .page-title {
    text-indent: -9999px;
    background-repeat: no-repeat;
    background-position: 0 0;
    margin-bottom: 20px; }
  #contents #info {
    float: left;
    width: 460px;
    margin-right: 40px; }
    #contents #info #info-title {
      background-image: url(../images/title-info.jpg);
      width: 190px;
      height: 20px; }
    #contents #info dl {
      padding-bottom: 15px;
      margin-bottom: 15px;
      background: url(../images/dot.gif) bottom left repeat-x; }
      #contents #info dl dt {
        float: left;
        width: 100px;
        color: #fff;
        text-align: center;
        background: #dfa75e;
        padding: 5px 0;
        margin-right: 15px; }
      #contents #info dl dd {
        float: left;
        width: 345px;
        margin-top: 6px; }
    #contents #info ul{
      margin-top: 30px;
    }
      #contents ul li:first-child{
        margin-bottom: 10px;
      }
      #contents ul li{
        margin-bottom: 25px;
      }
  #contents .content-col {
    padding-bottom: 50px;
    margin-bottom: 50px;
    border-bottom: 1px solid #efefef; }
    #contents .content-col .catch-copy {
      color: #1976d2;
      font-size: 28px;
      margin-bottom: 30px; }
    #contents .content-col .txt-left {
      float: left;
      width: 600px; }
    #contents .content-col .thumb-right {
      float: right; }
    #contents .content-col .printer-riten{
      display: inline-block;
      padding: 40px;
      background: #f5f5f5;
    }
    #contents .content-col h5{
      display: inline-block;
      font-size: 22px;
      font-weight: bold;
      margin-bottom: 15px;
    }
    #contents .content-col .printer-col-thumb{
      margin-bottom: 20px;
    }
    #contents .content-col p {
      line-height: 1.8;
      margin-bottom: 13px; }
     #contents .content-col p small{
      color: #666;
      font-size: 11px;
     }
    #contents .content-col p strong{
      font-weight: bold;
    }
      #contents .content-col p:last-child {
        margin-bottom: 0; }
    #contents .content-col table {
      width: 100%;
      line-height: 1.8;
      border: 1px solid #e5e5e5; }
      #contents .content-col table tr th {
        text-align: left;
        font-weight: bold;
        width: 150px;
        padding: 10px 20px;
        border-right: 1px solid #e5e5e5;
        border-bottom: 1px solid #e5e5e5;
        background: #fafafa; }
      #contents .content-col table tr td {
        padding: 10px 20px;
        border-bottom: 1px solid #e5e5e5; }
    #contents .content-col.content-col-last {
      border-bottom: none;
      padding-bottom: 0;
      margin-bottom: 0; }
  #contents #about-content #message-title {
    background-image: url(../images/title-message.jpg);
    width: 175px;
    height: 20px; }
  #contents #about-content #overview-title {
    background-image: url(../images/title-overview.jpg);
    width: 170px;
    height: 20px; }
  #contents #about-content #history-title {
    background-image: url(../images/title-history.jpg);
    width: 124px;
    height: 20px; }
  #contents #about-content #access-title {
    background-image: url(../images/title-access.jpg);
    width: 241px;
    height: 20px; }
  #contents #service-content #techno-title {
    background-image: url(../images/title-techno.jpg);
    width: 289px;
    height: 20px; }
  #contents #service-content .techno-list {
    margin-bottom: 50px; }
    #contents #service-content .techno-list li {
      position: relative;
      float: left;
      width: 460px;
      height: 200px;
      margin-right: 40px;
      margin-bottom: 40px;
      background: url(../images/service-thumb-7.jpg) 0 0 no-repeat; }
      #contents #service-content .techno-list li:nth-child(even) {
        margin-right: 0; }
      #contents #service-content .techno-list li+li{
        background: url(../images/service-thumb-8.jpg) 0 0 no-repeat;
      }
      #contents #service-content .techno-list li+li+li{
        background: url(../images/service-thumb-5.jpg) 0 0 no-repeat;
      }
      #contents #service-content .techno-list li+li+li+Li{
        background: url(../images/service-thumb-6.jpg) 0 0 no-repeat;
      }
      #contents #service-content .techno-list li:before {
        display: block;
        content: "";
        width: 100%;
        height: 200px;
        background: rgba(0, 0, 0, 0.6); }
        #contents #service-content .techno-list li .left{
        position: absolute;
        top: 0;
        left: 0;
        text-align: center;
        width: 150px;
        height: 100%;
        background: rgba(25, 118, 210, 1); }
      #contents #service-content .techno-list li .left.top {
        position: absolute;
        top: 0;
        left: 0;
        text-align: center;
        width: 150px;
        height: 50%;
        padding: 0 10px;
        background: rgba(25, 118, 210, 1);
        border-bottom: 1px solid rgba(255,255,255,.2); }
      #contents #service-content .techno-list li .left.bottom{
        position: absolute;
        top: 50%;
        left: 0;
        text-align: center;
        width: 150px;
        height: 50%;
        padding: 0 10px; }
        #contents #service-content .techno-list li .left h4 {
          position: relative;
          top: 50%;
          -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
          color: #fff;
          font-size: 22px;
          letter-spacing: 1px; }
        #contents #service-content .techno-list li .left .top{
          margin-bottom: 20px;
        }
        #contents #service-content .techno-list li:nth-child(n+3) .left h4{
          font-size: 18px;
          line-height: 1.6;
        }
        #contents #service-content .techno-list li .left:after {
          position: absolute;
          top: 50%;
          right: -10px;
          content: "";
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 12.5px 0 12.5px 10px;
          border-color: transparent transparent transparent rgba(25, 118, 210, 1);
          margin-top: -15px; }
      #contents #service-content .techno-list li .right {
        position: absolute;
        top: 0;
        right: 0;
        width: 310px;
        height: 100%;
        padding: 0 20px; }
        #contents #service-content .techno-list li .right.top {
          border-bottom: 1px solid rgba(255,255,255,.2);
        height: 50%;}
        #contents #service-content .techno-list li .right.bottom {
          top: 50%;
        height: 50%;}
        #contents #service-content .techno-list li .right p {
          position: relative;
          top: 50%;
          -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
          color: #fff;
          line-height: 1.8;
          margin-top: -4px; }
  #contents #kakou-content #techno-title {
    background-image: url(../images/title-techno.jpg);
    width: 289px;
    height: 20px; }
  #contents #kakou-content #printer-title {
    background-image: url(../images/title-3d.jpg);
    width: 217px;
    height: 20px; }
  #contents #kakou-content #polishing-title {
    background-image: url(../images/title-polishing.jpg);
    width: 330px;
    height: 21px; }
  #contents #kakou-content #event-title {
    background-image: url(../images/title-event.jpg);
    width: 408px;
    height: 21px; }
  #contents #kakou-content .info-thumb{
    margin-bottom: 20px;
  }
  #contents #kakou-content p a{
    text-decoration: underline;
  }
  #contents #kakou-content .kakou-list li {
    float: left;
    margin-right: 30px; }
    #contents #kakou-content .kakou-list li:last-child {
      margin-right: 0; }
    #contents #kakou-content .kakou-list li img {
      display: block;
      max-width: 100%;
      height: auto;
      margin-bottom: 15px; }
    #contents #kakou-content .kakou-list li p {
      text-align: center; }
  #contents #kakou-content .kakou-col {
    position: relative;
    margin-bottom: 30px;
    background: #f5f5f5;
    width: 100%;
    height: 250px; }
    #contents #kakou-content .kakou-col .kakou-col-thumb {
      position: relative;
      top: 0;
      width: 320px;
      height: 250px;
      text-align: center; }
      #contents #kakou-content .kakou-col .kakou-col-thumb:after {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        content: "";
        background: rgba(25, 118, 210, 0.7); }
      #contents #kakou-content .kakou-col .kakou-col-thumb img {
        position: absolute;
        top: 0;
        left: 0; }
      #contents #kakou-content .kakou-col .kakou-col-thumb h4 {
        position: relative;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        color: #fff;
        font-size: 22px;
        letter-spacing: 1px;
        z-index: 999; }
    #contents #kakou-content .kakou-col .kakou-col-text {
      position: absolute;
      width: 640px;
      height: 100%;
      padding: 0 30px; }
      #contents #kakou-content .kakou-col .kakou-col-text p {
        position: relative;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%); }
    #contents #kakou-content .kakou-col.left .kakou-col-thumb {
      float: left; }
    #contents #kakou-content .kakou-col.left .kakou-col-text {
      top: 0;
      right: 0; }
    #contents #kakou-content .kakou-col.right .kakou-col-thumb {
      float: right; }
    #contents #kakou-content .kakou-col.right .kakou-col-text {
      float: left; }
    #contents #kakou-content #event-col{
      float: left;
      width: 450px;
      margin-right: 60px;
    }
      #contents #kakou-content #event-col img{
        display: block;
        max-width: 100%;
        height: auto;
      }
    #contents #kakou-content #news-col{
      float: left;
      width: 450px;
    }
       #contents #kakou-content #news-col #news-title {
    background-image: url(../images/title-news.jpg);
    width: 124px;
    height: 21px; }
    #contents #kakou-content #news-col dl{
      padding-bottom: 15px;
      margin-bottom: 15px;
      background: url(../images/dot.gif) bottom left repeat-x;
    }
      #news-col dt{
        font-weight: bold;
        padding-bottom: 5px;
      }
      #news-col dd p{
        margin-bottom: 0px !important;
      }
    #contents #kakou-content .polishing-banner-list li{
      float: left;
      width: 300px;
      height: 80px;
      margin: 0 30px 20px 0;
    }
    #contents #kakou-content .polishing-banner-list li:nth-child(3n){
      margin-right: 0;
    }
      #contents #kakou-content .polishing-banner-list li a{
        display: block;
        text-indent: -9999px;
        background-position: 0 0;
        background-repeat: no-repeat;
        width: 300px;
        height: 80px;
        transition: all ease .3s
        -webkit-transition: all ease .3s
      }
      #contents #kakou-content .polishing-banner-list li a:hover{
        opacity: .7;
      }
      .polishing-banner-list #banner-1 a{
         background-image: url(../images/polishing-banner-1.jpg);
      }
      .polishing-banner-list #banner-2 a{
         background-image: url(../images/polishing-banner-2.jpg);
      }
      .polishing-banner-list #banner-3 a{
         background-image: url(../images/polishing-banner-3.jpg);
      }
      .polishing-banner-list #banner-4 a{
         background-image: url(../images/polishing-banner-4.jpg);
      }
      .polishing-banner-list #banner-5 a{
         background-image: url(../images/polishing-banner-5.jpg);
      }
      .polishing-banner-list #banner-6 a{
         background-image: url(../images/polishing-banner-6.jpg);
      }
      .polishing-banner-list #banner-7 a{
         background-image: url(../images/polishing-banner-7.jpg);
      }
      .polishing-banner-list #banner-8 a{
         background-image: url(../images/polishing-banner-8.jpg);
      }
      #contents #kakou-content .news-sidebar{
        float: left;
        width: 300px;
      }
      #contents #kakou-content #news-content-wrap{
        float: left;
        width: 620px;
        margin-right: 40px;
      }
        #contents #kakou-content .news-content-col{
          padding-bottom: 25px;
          margin-bottom: 25px;
          background: url(../images/dot.gif) left bottom repeat-x;
        }
        #contents #kakou-content .news-content-col.last{
          padding-bottom: 0;
          margin-bottom: 0;
          background: none;
        }
        #contents #kakou-content .news-content-col h3{
          color: #1976d2;
          font-size: 18px;
          font-weight: bold;
          line-height: 1.6;
          margin-bottom: 20px;
        }
        #contents #kakou-content .news-content-col p span{
          color: red;
        }
        #contents #kakou-content .printer-thumb:before{
          display: block;
          content: "";
          clear: both;
        }
        #contents #kakou-content .printer-thumb{
          float: left;
          width: 200px;
          height: auto;
          margin-right: 20px;
        }
         #contents #kakou-content .printer-thumb img{
          display: block;
          max-width: 100%;
          height: auto;
         }
  #contents #equipment-content #equipment-title {
    background-image: url(../images/title-primary.jpg);
    width: 308px;
    height: 20px; }
  #contents #equipment-content #equipment-table{
    float: left;
    width: 710px;
    margin-right: 30px;
  }
  #contents #equipment-content table{
    width: 100%;
    line-height: 1.8;
    border: 1px solid #e5e5e5;
  }
    #contents #wquipment-content table th{
      padding: 10px 20px;
    }
  #contents #equipment-content .equipment-table-1 {
    width: 100%;
    border: 1px solid #e5e5e5;
    margin-bottom: 30px; }
    #contents #equipment-content .equipment-table-1 th {
      width: 80%; }
      #contents #equipment-content .equipment-table-1 th + th {
        width: 20%; }
    #equipment-content .equipment-table-1 td + td {
      border-left: 1px solid #e5e5e5; }
  #contents #equipment-content .equipment-table-2 {
    margin-bottom: 30px; }
    #equipment-content .equipment-table-2 td + td {
      border-left: 1px solid #e5e5e5; }
  #contents #equipment-content .equipment-table-3 {
    margin-bottom: 30px; }
    #equipment-content .equipment-table-3 td + td {
      border-left: 1px solid #e5e5e5; }
  #contents #equipment-content .equipment-list{
    float: left;
    width: 220px;
  }
    #contents #equipment-content .equipment-list li{
      margin-bottom: 50px;
    }
      #contents #equipment-content .equipment-list li img{
        display: block;
        max-width: 100%;
        height: auto;
        margin-left: auto;
        margin-right: auto;
      }
  #contents #equipment-content .equipment-list li:nth-child(3n){
    margin-right: 0;
  }
  #contents #souchi-content #device-title {
    background-image: url(../images/title-device.jpg);
    width: 138px;
    height: 20px; }
  #contents #souchi-content .align-center {
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px; }
  #contents #souchi-content h5 {
    color: #1976d2;
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 10px; }
  #contents #souchi-content strong {
    font-weight: bold; }
  #contents #souchi-content .souchi-list li {
    float: left;
    width: 300px;
    margin-right: 30px;
    margin-bottom: 30px; }
    #contents #souchi-content .souchi-list li:nth-child(3n) {
      margin-right: 0; }
    #contents #souchi-content .souchi-list li img {
      display: block;
      max-width: 100%;
      height: auto;
      margin-bottom: 15px; }
    #contents #souchi-content .souchi-list li p {
      text-align: center; }
  #contents #souchi-content table th {
    width: 20%; }
    #contents #souchi-content table th + th {
      width: 80%; }
  #contents #souchi-content table td + td {
    border-left: 1px solid #e5e5e5; }
  #contents #bases-content #access-title {
    background-image: url(../images/title-access.jpg);
    width: 241px;
    height: 20px; }
  #contents #bases-content h5 {
    color: #1976d2;
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 20px; }
  #contents #bases-content strong {
    font-weight: bold; }
  #contents #bases-content .google-map {
    margin-bottom: 20px; }
    #contents #bases-content .google-map iframe {
      width: 100%; }
  #contents #bases-content dl {
    line-height: 1.6;
    border-bottom: 1px solid #e5e5e5; }
    #contents #bases-content dl:last-child {
      border-bottom: none; }
    #contents #bases-content dl dt {
      float: left;
      width: 140px;
      font-weight: bold;
      padding: 10px 0; }
    #contents #bases-content dl dd {
      float: left;
      width: 820px;
      padding: 10px 0; }
  #contents #strong-content #ability-title {
    background-image: url(../images/title-ability.jpg);
    width: 277px;
    height: 20px; }
  #contents #strong-content #quality-title {
    background-image: url(../images/title-quality.jpg);
    width: 153px;
    height: 20px; }
  #contents #strong-content #enviroment-title {
    background-image: url(../images/title-enviroment.jpg);
    width: 209px;
    height: 20px; }
  #contents #strong-content .strong-point-list {
    margin-top: 30px; }
    #contents #strong-content .strong-point-list li {
      position: relative;
      float: left;
      width: 300px;
      height: 120px;
      text-align: center;
      padding: 0 30px;
      margin-right: 30px;
      margin-bottom: 15px;
      background-color: #d5e1ef;
      background-image: url(../images/sp-num-1.jpg);
      background-position: center;
      background-repeat: no-repeat; }
    #contents #strong-content .strong-point-list li:after{
      position: absolute;
      top: 9px;
      left: 9px;
      content: "";
      width: 279px;
      height: 99px;
      border: 2px solid rgba(255,255,255,.6);
    }
      #contents #strong-content .strong-point-list li:nth-child(3n) {
        margin-right: 0; }
      #contents #strong-content .strong-point-list li:nth-child(4) h4 {
        font-size: 16px;
        line-height: 1.4; }
      #contents #strong-content .strong-point-list li:nth-child(5) h4 {
        font-size: 16px;
        line-height: 1.4; }
      #contents #strong-content .strong-point-list li + li {
        background-image: url(../images/sp-num-2.jpg); }
      #contents #strong-content .strong-point-list li + li + li {
        background-image: url(../images/sp-num-3.jpg); }
      #contents #strong-content .strong-point-list li + li + li + li {
        background-image: url(../images/sp-num-4.jpg); }
      #contents #strong-content .strong-point-list li + li + li + li + li {
        background-image: url(../images/sp-num-5.jpg); }
      #contents #strong-content .strong-point-list li + li + li + li + li + li {
        background-image: url(../images/sp-num-6.jpg); }
      #contents #strong-content .strong-point-list li h4 {
        color: #1976d2;
        font-size: 18px;
        font-weight: bold;
        letter-spacing: 1px;
        position: relative;
        top: 51%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%); }
  #contents #strong-content .catch-copy {
    text-align: center; }
  #contents #strong-content .ikkan-list {
    background: url(../images/ikkan.jpg) #f5f5f5 center no-repeat;
    padding: 20px;
    margin-left: auto;
    margin-right: auto; }
    #contents #strong-content .ikkan-list li {
      text-indent: -9999px; }
  #contents #strong-content .ikkan-text {
    text-align: center;
    margin-top: 5px; }
    #contents #strong-content .ikkan-text li {
      display: inline-block;
      font-size: 15px;
      text-align: left;
      width: 400px;
      padding: 15px 0;
      margin-right: 15px;
      background: url(../images/dot.gif) left bottom repeat-x; }
      #contents #strong-content .ikkan-text li:before {
        content: "";
        display: inline-block;
        background: url(../images/check.jpg) 0 0 no-repeat;
        width: 16px;
        height: 15px;
        padding-right: 8px; }
      #contents #strong-content .ikkan-text li:nth-child(2n) {
        margin-right: 0; }
  #contents #strong-content p strong {
    font-weight: bold; }
  #contents #strong-content h5 {
    color: #1976d2;
    font-size: 15px;
    font-weight: bold;
    margin-top: 30px;
    margin-bottom: 15px; }
  #contents #strong-content .half-list{
   background: #f5f5f5;
  }
  #contents #strong-content .half-list li{
    box-sizing: border-box;
    float: left;
    width: 50%;
    padding: 30px;
  }
  #contents #strong-content .half-list li strong{
    font-size: 14px;
  }
  #contents #contact-content h5 {
    color: #1976d2;
    font-size: 22px;
    font-weight: bold;
    margin-top: 30px;
    margin-bottom: 15px; }
  #contents #contact-content .require {
    color: red; }
  #contents #contact-content dl {
    padding-bottom: 15px;
    margin-bottom: 15px;
    background: url(../images/dot.gif) left bottom repeat-x; }
    #contents #contact-content dl dt {
      float: left;
      width: 20%;
      font-weight: bold;
      padding-top: 14px; }
      #contents #contact-content dl dt span {
        padding-right: 5px; }
    #contents #contact-content dl dd {
      float: left;
      width: 80%; }
      #contents #contact-content dl dd input {
        font-size: 15px;
        width: 50%;
        height: 40px;
        padding: 8px;
        border: 1px solid #dfdfdf; }
        #contents #contact-content dl dd input[type="checkbox"]{
          float: left;
          width: 18px;
          height: 18px;
        }
          #contents #contact-content dl dd span{
            display: block;
            margin: 8px 0 15px;
            overflow: hidden;
          }
          #contents #contact-content dl dd .last{
            margin-bottom: 0;
          }
          #contents #contact-content dl dd label{
            float: left;
            cursor: pointer;
            padding: 7px 0 0 5px;
          }
      #contents #contact-content dl dd textarea {
        font-size: 15px;
        width: 100%;
        height: 200px;
        padding: 8px;
        border: 1px solid #dfdfdf; }
    #contents #contact-content dl.last dt {
      padding-top: 0; }
  #contents #contact-content ul {
    text-align: center; }
    #contents #contact-content ul li {
      display: inline-block;
      margin-right: 20px; }
      #contents #contact-content ul li input {
        color: #ffffff;
        font-size: 18px;
        padding: 10px 50px;
        background: #dfa75e;
        border: none;
        border-radius: 5px; }
  #contents #sitemap-content ul li {
    background: url(../images/dot.gif) left bottom repeat-x; }
    #contents #sitemap-content ul li a {
      display: block;
      font-size: 15px;
      padding: 30px 0; }
  #contents #privacy-content h5 {
    color: #1976d2;
    font-size: 15px;
    font-weight: bold;
    margin-top: 30px;
    margin-bottom: 15px; }
  #contents #privacy-content strong {
    font-weight: bold; }
  #contents .service-contact {
    text-align: center; }
    #contents .service-contact p {
      margin-bottom: 10px; }
      #contents .service-contact p strong {
        font-weight: bold; }
  #contents .bottom-contact {
    background: #fafafa;
    border: 1px solid #e5e5e5; }
    #contents .bottom-contact .inner {
      width: 600px;
      padding: 25px 0;
      margin-left: auto;
      margin-right: auto; }
      #contents .bottom-contact .inner h4 {
        color: #1976d2;
        font-size: 18px;
        font-weight: bold;
        text-align: center; }
      #contents .bottom-contact .inner ul {
        text-align: center;
        padding-top: 15px;
        margin: 15px 0;
        background: url(../images/dot.gif) top left repeat-x;
        overflow: hidden; }
        #contents .bottom-contact .inner ul li {
          float: left;
          display: inline-block;
          font-size: 30px;
          font-weight: bold;
          font-family: "Arial";
          letter-spacing: 1px;
          padding: 15px 14px; }
          #contents .bottom-contact .inner ul li span{
            text-indent: -9999px;
            display: inline-block;
            width: 61px;
            height: 20px;
            padding-top: 8px;
            margin-right: 10px;
            background: url(../images/phone-icon.png) 0 0 no-repeat;
          }
           #contents .bottom-contact .inner ul li:last-child span{
            background: url(../images/fax-icon.png) 0 0 no-repeat;
            width: 63px;
          }
          #contents .bottom-contact .inner ul li:last-child{
            padding-top: 18px;
          }
          #contents .bottom-contact .inner ul li span {
            font-size: 14px; }
          #contents .bottom-contact .inner ul li small {
            display: block;
            font-size: 12px;
            padding-top: 3px;
          }
          #contents .bottom-contact .inner ul li:first-child {
            border-right: 1px solid #e5e5e5; }
      #contents .bottom-contact .inner a {
        display: block;
        position: relative; }
        #contents .bottom-contact .inner a:before, #contents .bottom-contact .inner a:after {
          position: absolute;
          top: 5px;
          right: 5px;
          bottom: 7px;
          left: 5px;
          content: "";
          opacity: 1;
          -webkit-transition: opacity 0.3s;
          transition: opacity 0.3s; }
        #contents .bottom-contact .inner a:before {
          border-top: 1px solid rgba(255, 255, 255, 0.7);
          border-bottom: 1px solid rgba(255, 255, 255, 0.7); }
        #contents .bottom-contact .inner a:after {
          border-left: 1px solid rgba(255, 255, 255, 0.7);
          border-right: 1px solid rgba(255, 255, 255, 0.7); }
        #contents .bottom-contact .inner a:hover:before, #contents .bottom-contact .inner a:hover:after {
          opacity: 0; }
  #contents #banner {
    float: left;
    width: 460px; }
    #contents #banner li {
      float: left;
      margin: 0 20px 20px 0; }
      #contents #banner li:nth-child(3),
      #contents #banner li:nth-child(5),
      #contents #banner li:nth-child(7) {
        margin-right: 0; }
      #contents #banner li a:hover {
        opacity: .8; }
  #contents .content-col .service-menu-list{
    text-align: center;
  }
    #contents .content-col .service-menu-list li{
      display: inline-block;
      width: 30%;
      margin: 0 2% 0% 0;
    }

      #contents .content-col .service-menu-list li a{
        position: relative;
        display: block;
        color: #fff;
        font-size: 15px;
        padding: 20px 20px 18px 20px;
        background: #65A8EC;
        -webkit-transition: all .3s;
        transition: all .3s;
      }

      #contents .content-col .service-menu-list li a:before,
      #contents .content-col .service-menu-list li a:after{
        position: absolute;
        top: 5px;
        right: 5px;
        bottom: 5px;
        left: 5px;
        content: "";
        opacity: 1;
        -webkit-transition: opacity 0.3s;
        transition: opacity 0.3s;
        border: 1px solid rgba(255, 255, 255, 0.7);
      }

      #contents .content-col .service-menu-list li a:hover:before,
      #contents .content-col .service-menu-list li a:hover:after{
        opacity: 0;
      }

/* #totop */
#totop {
  position: fixed;
  bottom: 80px;
  right: 80px;
  display: block;
  text-indent: -9999px;
  background: url(../images/totop.png) 0 0 no-repeat;
  width: 139px;
  height: 16px;
  z-index: 999; }

/* #footer */
#footer {
  color: #fff;
  width: 100%;
  text-align: center;
  padding: 50px 0;
  background: #232323; }
  #footer ul{
    text-align: center;
    margin-bottom: 40px;
  }
    #footer ul li{
      display: inline-block;
    }
      #footer ul li:last-child a{
        border-right: none;
      }
      #footer ul li a{
        color: #fff;
        padding: 2px 15px;
        border-right: 1px solid #fff;
      }
      #footer ul li a:hover{
        color: #d5d5d5;
      }
  #footer h3 {
    display: block;
    text-indent: -9999px;
    background: url(../images/footer-logo.png) 0 0 no-repeat;
    width: 406px;
    height: 70px;
    margin: 0 auto 15px auto; }
  #footer address {
    font-size: 12px;
    margin-bottom: 10px; }
  #footer p {
    margin-bottom: 10px; }
  #footer small {
    display: block;
    font-size: 10px;
    letter-spacing: 1px;
    width: 100%;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid #676767; }

/* Page Head */
.page-head {
  position: relative;
  width: 100%;
  height: 400px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  margin-bottom: 70px; }
  .page-head .container:before {
    content: "";
    display: block;
    width: 190px;
    height: 400px;
    background: rgba(25, 118, 210, 0.7);
    -webkit-transform: skewX(-20deg);
            transform: skewX(-20deg);
    margin-left: 45px; }
  .page-head h3 {
    text-indent: -9999px;
    background-repeat: no-repeat;
    background-position: 0 0;
    position: absolute;
    top: 180px; }

#page-head-about {
  background-image: url(../images/page-head-about.jpg); }
  #page-head-about h3 {
    background-image: url(../images/main-title-about.png);
    width: 426px;
    height: 40px; }

#page-head-service {
  background-image: url(../images/page-head-service.jpg); }
  #page-head-service h3 {
    background-image: url(../images/main-title-our-service.png);
    width: 507px;
    height: 40px; }

#page-head-equipment {
  background-image: url(../images/page-head-equipment.jpg); }
  #page-head-equipment h3 {
    background-image: url(../images/main-title-equipment.png);
    width: 472px;
    height: 39px; }

#page-head-bases {
  background-image: url(../images/page-head-bases.jpg); }
  #page-head-bases h3 {
    background-image: url(../images/main-title-bases.png);
    width: 314px;
    height: 40px; }

#page-head-strong {
  background-image: url(../images/page-head-strong.jpg); }
  #page-head-strong h3 {
    background-image: url(../images/main-title-strong-point.png);
    width: 784px;
    height: 40px; }

.page-title-noimage{
  color: #1976d2;
  font-size: 32px;
  font-weight: bold;
  margin-top: 50px;
  margin-bottom: 50px;
}

#education-content .education-list{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-left: -20px;
  margin-right: -20px;
}

  #education-content .education-list li{
    width: 50%;
    padding-left: 20px;
    padding-right: 20px;
  }

    #education-content .education-list li img{
      display: block;
      max-width: 100%;
      height: auto;
    }

  #education-content .align-center{
    text-align: center;
  }

/* Responsive */
@media only screen and (max-width: 769px) {
  #education-content .education-list{
    margin-left: 0;
    margin-right: 0;
  }

    #education-content .education-list li{
      width: 100%;
      padding-left: 0;
      padding-right: 0;
    }
  #header #logo{
    float: none;
  }
  #header #logo a {
    font-size: 40px;
    font-weight: bold;
    text-indent: 0;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    background: none;
    width: 100%;
    height: auto; }
  #header #header-menu{
    float: none;
  }
  #header #header-menu ul {
    text-align: center; }
    #header #header-menu ul li {
      float: none;
      display: inline-block;
      margin: 10px; }
  #slider{
    display: none;
  }
  #mv #sp-mv{
    display: block;
    position: relative;
    width: 100%;
    height: 400px;
  }
    #mv #sp-mv h3{
      color: #fff;
      text-align: center;
      font-size: 40px;
      position: relative;
      top: 50%;
       -webkit-transform: translateY(-50%);
      transform: translateY(-50%);
    }
  .container {
    width: 100%;
    padding-left: 20px !important;
    padding-right: 20px !important; }
  #description {
    text-align: center; }
  #global-menu {
    border-bottom: none !important; }
    #global-menu ul {
      width: 100%;
      padding-left: 0 !important;
      padding-right: 0 !important; }
      #global-menu ul li {
        width: 50%;
        border-bottom: 1px solid #e5e5e5; }
        #global-menu ul li a {
          width: 100%;
          height: auto;
          font-size: 15px;
          font-weight: bold;
          text-indent: 0;
          text-align: center;
          background: none 0 0;
          padding: 20px 0; }
        #global-menu ul li:nth-child(2n) {
          border-left: 1px solid #e5e5e5; }
  #service-menu .container {
    width: 100%;
    padding-left: 0 !important;
    padding-right: 0 !important; }
    #service-menu .container li {
      width: 50%;
      background: #65a8eb; }
      #service-menu .container li figure {
        width: 100%;
        height: 100%; }
        #service-menu .container li figure figcaption {
          position: inherit;
          top: auto;
          left: auto;
          width: 100%;
          height: 100%; }
          #service-menu .container li figure figcaption img {
            display: block;
            max-width: 100%;
            height: auto;
            margin-left: auto;
            margin-right: auto; }
    #contents #info ul{
      width: 100%;
      text-align: center;
    }
      #contents #info ul li{
        width: 100%;
      }
        #contents #info ul li img{
          display: block;
          max-width: 100%;
          height: auto;
          margin-left: auto;
          margin-right: auto;
        }
    #contents #banner{
      float: none;
      width: 100%;
      text-align: center;
    }
      #contents #banner li{
        float: none;
        display: inline-block;
        margin: 0 0 20px 0;
      }
         #contents #banner li img{
          max-width: 100%;
         }
  .page-head {
    height: 200px; }
    .page-head .container {
      padding-left: 0 !important;
      padding-right: 0 !important; }
      .page-head .container:before {
        width: 100%;
        height: 200px;
        -webkit-transform: none;
                transform: none;
        margin-left: 0; }
    .page-head h3 {
      color: #fff;
      font-size: 30px;
      letter-spacing: 2px;
      width: 100% !important;
      height: auto !important;
      text-indent: 0 !important;
      text-align: center !important;
      background: none !important;
      top: 45%; }
  #contents {
    margin-bottom: 60px; }
    #contents #info {
      float: none;
      width: 100%;
      margin-right: 0;
      margin-bottom: 40px; }
    #contents .content-col {
      padding-bottom: 50px;
      margin-bottom: 50px;
      border-bottom: 1px solid #efefef; }
      #contents .content-col .catch-copy {
        color: #1976d2;
        font-size: 28px;
        margin-bottom: 30px; }
      #contents .content-col .txt-left {
        float: none;
        width: 100%; }
      #contents .content-col .thumb-right {
        float: none;
        margin: 20px auto; }
      #contents .content-col p {
        line-height: 1.8;
        margin-bottom: 20px; }
        #contents .content-col p:last-child {
          margin-bottom: 0; }
      #contents .content-col table {
        width: 100%;
        line-height: 1.8;
        border: 1px solid #e5e5e5; }
        #contents .content-col table tr th {
          text-align: left;
          font-weight: bold;
          width: 150px;
          padding: 10px 20px;
          border-right: 1px solid #e5e5e5;
          border-bottom: 1px solid #e5e5e5;
          background: #fafafa; }
        #contents .content-col table tr td {
          padding: 10px 20px;
          border-bottom: 1px solid #e5e5e5; }
      #contents .content-col .google-map iframe {
        width: 100%; }
      #contents .content-col #banner {
        float: none;
        width: 100%;
        text-align: center; }
        #contents .content-col #banner li {
          float: none;
          display: inline-block;
          margin: 10px; }
    #contents #service-content .techno-list li,
    #contents #service-content .techno-list li+li,
    #contents #service-content .techno-list li+li+li,
    #contents #service-content .techno-list li+li+li+li{
      float: none;
      width: 100%;
      height: auto;
      background-image: none; }
      #contents #service-content .techno-list li a {
        display: block; }
      #contents #service-content .techno-list li:last-child {
        background-image: none; }
      #contents #service-content .techno-list li:before {
        content: none; }
      #contents #service-content .techno-list li .left {
        position: inherit;
        top: 0;
        left: auto;
        width: 100%;
        height: auto;
        padding: 15px 0;
        text-align: center; }
        #contents #service-content .techno-list li .left h4 {
          position: inherit;
          top: auto;
          -webkit-transform: none;
                  transform: none; }
        #contents #service-content .techno-list li .left:after {
          content: none; }
      #contents #service-content .techno-list li .right {
        position: inherit;
        top: 0;
        left: auto;
        width: 100%;
        height: auto;
        padding: 15px 0;
        text-align: center; }
        #contents #service-content .techno-list li .right p {
          position: inherit;
          top: 0;
          -webkit-transform: none;
                  transform: none;
          color: #454545; }
    #contents #kakou-content .kakou-list li {
      float: none;
      margin: 0 auto 30px; }
      #contents #kakou-content .kakou-list li:last-child {
        margin-right: 0; }
      #contents #kakou-content .kakou-list li img {
        margin-bottom: 10px; }
      #contents #kakou-content .kakou-list li p {
        text-align: left; }
    #contents #kakou-content .kakou-col {
      position: relative;
      margin-bottom: 30px;
      background: #f5f5f5;
      width: 100%;
      height: auto; }
      #contents #kakou-content .kakou-col .kakou-col-thumb {
        float: none;
        position: relative;
        top: 0;
        width: 100%;
        height: auto;
        padding: 15px 0; }
        #contents #kakou-content .kakou-col .kakou-col-thumb:after {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          content: "";
          background: rgba(25, 118, 210, 0.9); }
        #contents #kakou-content .kakou-col .kakou-col-thumb img {
          display: none; }
        #contents #kakou-content .kakou-col .kakou-col-thumb h4 {
          position: inherit;
          top: 0;
          -webkit-transform: none;
          transform: none; }
      #contents #kakou-content .kakou-col .kakou-col-text {
        position: inherit;
        width: 100%;
        height: 100%;
        padding: 15px 30px;
        text-align: center; }
        #contents #kakou-content .kakou-col .kakou-col-text p {
          position: inherit;
          top: 0;
          -webkit-transform: none;
          transform: none; }
      #contents #kakou-content .kakou-col.left .kakou-col-thumb {
        float: none; }
      #contents #kakou-content .kakou-col.left .kakou-col-text {
        top: auto;
        right: auto; }
      #contents #kakou-content .kakou-col.right .kakou-col-thumb {
        float: none; }
      #contents #kakou-content .kakou-col.right .kakou-col-text {
        float: none; }
    #contents #souchi-content .souchi-list li {
      float: none;
      margin: 0 0 30px 0; }
       #contents #kakou-content #event-col{
        float: none;
        width: 100%;
        margin-right: 0;
        margin-bottom: 30px;
       }
       #contents #kakou-content #news-col{
        float: none;
        width: 100%;
       }
       #contents #kakou-content .polishing-banner-list ul{
        text-align: center;
       }
         #contents #kakou-content .polishing-banner-list li{
          float: none;
          display: inline-block;
          margin: 0 20px 20px;
         }
         #contents #kakou-content .polishing-banner-list li:nth-child(3n){
          margin-right: 20px;
         }
         #contents #kakou-content .polishing-banner-list li:last-child{
          margin-bottom: 0;
         }
         #contents #kakou-content #news-content-wrap{
          float: none;
          width: 100%;
          margin: 0 0 40px 0;
          text-align: center;
         }
         #contents #kakou-content .news-sidebar{
          width: 100%;
         }
         #contents #kakou-content .info-thumb{
          display: block;
          margin-left: auto;
          margin-right: auto;
         }
      #contents #souchi-content .souchi-list li:last-child {
        margin-right: 0; }
      #contents #souchi-content .souchi-list li img {
        margin-bottom: 10px; }
      #contents #souchi-content .souchi-list li p {
        text-align: left; }
    #contents #souchi-content img {
      max-width: 100%;
      height: auto; }
    #contents #bases-content dl dt {
      float: none;
      width: 100%;
      font-weight: bold;
      padding: 10px 0;
      padding-bottom: 0; }
    #contents #bases-content dl dd {
      float: none;
      width: 100%;
      padding: 10px 0; }
    #contents #strong-content .strong-point-list li:nth-child(3n) {
      clear: both;
      margin-right: 30px; }
    #contents #strong-content .strong-point-list li:nth-child(6) {
      clear: none; }
    #contents #strong-content .ikkan-list {
      padding: 0;
      background: none; }
      #contents #strong-content .ikkan-list li {
        color: #fff;
        font-size: 15px;
        font-weight: bold;
        text-indent: 0;
        text-align: center;
        padding: 15px;
        margin-bottom: 15px;
        background: rgba(25, 118, 210, 0.9); }
    #contents #equipment-content .equipment-list{
      float: none;
      width: 100%;
    }
    #contents #equipment-content #equipment-table{
      float: none;
      width: 100%;
      margin-right: 0;
      overflow-x: scroll;
    }
  #totop, #footer ul {
    display: none; } }

@media only screen and (max-width: 468px) {
  #description {
    line-height: 1.6; }
  #header #logo, #header #header-menu {
    float: none; }
  #header #logo a {
    font-size: 40px;
    font-weight: bold;
    text-indent: 0;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    background: none;
    width: 100%;
    height: auto; }
  #header #header-menu ul {
    text-align: center; }
    #header #header-menu ul li {
      float: none;
      display: inline-block;
      margin: 10px; }
    #header #header-menu ul li+li+li{
      margin-top: 10px;
    }
  #mv h3 {
    width: 100%;
    color: #fff;
    font-size: 22px;
    text-indent: 0;
    text-align: center;
    line-height: 1.6;
    background: none 0 0;
    padding: 0 40px; }
  #contents .bottom-contact .inner {
    width: 100%;
    padding: 25px 15px; }
    #contents .bottom-contact .inner h4 {
      font-size: 14px; }
    #contents .bottom-contact .inner ul li {
      font-size: 15px; }
      #contents .bottom-contact .inner ul li span {
        font-size: 11px; }
      #contents .bottom-contact .inner ul li:first-child {
        border-right: none; }
    #contents .bottom-contact .inner a:before, #contents .bottom-contact .inner a:after {
      content: none; }
    #contents .bottom-contact .inner a img {
      display: block;
      max-width: 100%;
      height: auto; }
  #contents #strong-content .strong-point-list li {
    float: none;
    width: 100%;
    margin-right: 0; }
  #contents #strong-content .ikkan-text li {
    width: 100%;
    line-height: 1.6; }
  #contents #contact-content dl dt {
    float: none;
    width: 100%;
    margin-bottom: 10px; }
  #contents #contact-content dl dd {
    float: none;
    width: 100%; }
    #contents #contact-content dl dd input {
      width: 100%; }
  #footer h3 {
    display: none; } 
    #contents .content-col .service-menu-list li{
      width: 100%;
      }
      #contents .content-col .service-menu-list li:nth-child(n+3){
        margin-bottom: 4%;
      }
      #contents #kakou-content .info-thumb{
        max-width: 100%;
        height: auto;
      }
    #contents #kakou-content .printer-thumb{
      float: none;
      width: 100%;
      margin-right: 0;
      margin-bottom: 20px;
    }
      #contents #kakou-content .printer-thumb img{
        display: block;
        max-width: 100%;
        height: auto;
      }
  }

.printer-flow{
  padding: 20px;
  margin-bottom: 20px;
  border: 2px solid #1d2088;
}

  .printer-flow h5{
    color: #fff;
    font-weight: normal;
    padding: 15px 20px 10px;
    background: #1d2088;
  }

    .printer-flow-col{
      float: left;
      margin-bottom: 20px;
    }

    .printer-flow-col.last{
      margin-bottom: 0;
    }

      .printer-flow-col img{
        float: left;
        margin-right: 20px;
      }

      .printer-flow-col h6{
        display: inline-block;
        color: #fff;
        font-size: 16px;
        font-weight: bold;
        padding: 15px 20px 13px;
        margin-top: 50px;
        margin-bottom: 2px;
        background: #00a0e9;
      }

      #contents .content-col h5:after{
        display: block;
        clear: both;
        content: "";
      }

      .printer-flow-col.last h6{
        margin-top: 20px;
      }

      .printer-flow-col p{
        margin: 8px 0 0 0 !important;
      }

      .printer-flow-col.last p strong{
        color: #1d2088;
        font-size: 15px;
        font-weight: bold;
      }

      .printer-flow-col.last p span{
        display: block;
        font-size: 18px;
        font-weight: bold;
      }

      .printer-flow .printer-flow-right{
        float: right;
      }

    .printer-col-thumb{
      display: block;
      max-width: 100%;
      height: auto;
    }