body {
  margin: 0;
  padding: 0;
  text-align: center;
  font-family: "Noto Sans Japanese";
  font-size: 130%;
  letter-spacing: 0.1em;
  line-height: 1.6em;
  color: #4D4D4D; }

a {
  transition: .3s; }
  a:hover {
    opacity: 0.7;
    filter: alpha(opacity=70); }

header {
  background: url(../images/top_img.jpg);
  background-size: cover;
  background-position: 50% 0;
  background-attachment: fixed;
  position: relative; }
  header .content {
    width: 1000px;
    margin: 0 auto;
    padding: 16px 0;
    text-align: left; }
    header .content .toplogo {
      margin: 0;
      padding: 0;
      position: absolute;
      opacity: 0.0;
      filter: blur(0.2em);
      transition: 1.8s linear; }
  header nav#globalnavi {
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(31, 40, 111, 0.8);
    z-index: 4;
    width: 100%; }
    header nav#globalnavi .content {
      overflow: hidden;
      text-align: center; }
      header nav#globalnavi .content ul {
        margin: 0;
        padding: 0;
        list-style: none;
        overflow: hidden; }
        header nav#globalnavi .content ul li {
          padding: 6px 12px;
          font-size: 75%;
          display: inline-block; }
          header nav#globalnavi .content ul li a {
            color: #FFF;
            text-decoration: none; }

section .content {
  width: 1000px;
  margin: 0 auto; }

#service {
  background: #F2F2F2; }
  #service .top {
    background: url(../images/service_bg.jpg);
    background-size: cover;
    background-position: 50% 5%; }
    #service .top .content {
      padding: 80px 0;
      color: #FFF; }
      #service .top .content h2 {
        margin: 0;
        padding: 0;
        opacity: 0.0; }
      #service .top .content p {
        opacity: 0.0; }
  #service .bottom .content {
    padding: 80px 0; }
    #service .bottom .content .flex {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #service .bottom .content .flex div {
        width: 320px;
        height: 271px;
        overflow: hidden;
        margin-bottom: 8%;
        box-shadow: 3px 3px 0 1px rgba(0, 0, 0, 0.4);
        background: #FFF;
        transform: translate(0, 50px);
        transition: all .5s;
        opacity: 0.0;
        position: relative; }
        #service .bottom .content .flex div img {
          width: 100%;
          vertical-align: bottom;
          position: absolute;
          top: 0;
          left: 0;
          transition: all .4s; }
        #service .bottom .content .flex div p {
          font-size: 70%;
          text-align: left;
          display: block;
          padding: 22px; }
        /*#service .bottom .content .flex div:hover {
          cursor: pointer; }
          #service .bottom .content .flex div:hover img {
            opacity: 0.0; }*/

#message {
  position: relative;
  background: url(../images/message_bg.jpg);
  background-size: cover;
  background-position: 50% -1000%;
  background-repeat: no-repeat;
  transition: all 2.0s;
  z-index: 1; }
  #message .flex {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    overflow: hidden; }
    #message .flex div {
      width: 20%;
      background: #FFF;
      transition: all 2.5s; }
  #message .content {
    width: 710px;
    margin: 0 auto;
    padding: 80px 0;
    position: relative;
    z-index: 3; }
    #message .content p {
      text-align: left;
      font-size: 90%;
      font-weight: bold;
      text-shadow: 3px 0 1px white, -3px 0 1px white, 0 3px 1px white, 0 -3px 1px white, 0 0 3px white; }
    #message .content .presign {
      font-family: "Sawarabi Mincho";
      text-align: right;
      line-height: 2.2em; }
      #message .content .presign span {
        font-size: 150%; }

#profile .content {
  padding: 100px 0;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between; }
  #profile .content .tabspace {
    position: relative;
    width: 32%; }
    #profile .content .tabspace h2 {
      margin: 0;
      padding: 0;
      position: absolute;
      top: -5px;
      left: -2000px;
      transition: 1s; }
  #profile .content .tablespace {
    width: 61%; }
    #profile .content .tablespace table {
      width: 100%;
      border-top: 1px solid #4D4D4D;
      border-collapse: collapse;
      text-align: left;
      font-size: 90%; }
      #profile .content .tablespace table tr {
        border-bottom: 1px solid #4D4D4D; }
        #profile .content .tablespace table tr td {
          padding: 16px;
          vertical-align: top; }
          #profile .content .tablespace table tr td:first-child {
            white-space: nowrap; }

#contact {
  background: #F4DA80; }
  #contact .content {
    padding: 100px 0; }
    #contact .content h2 {
      margin: 0;
      padding: 0; }
    #contact .content p {
      text-align: left; }
    #contact .content table {
      width: 100%;
      text-align: left; }
      #contact .content table tr td {
        padding: 16px; }
        #contact .content table tr td:first-child {
          white-space: nowrap;
          vertical-align: top; }
        #contact .content table tr td:last-child {
          width: 75%; }
        #contact .content table tr td input {
          width: 100%;
          border: #FFF;
          padding: 8px 16px;
          font-size: 120%; }
        #contact .content table tr td textarea {
          width: 100%;
          border: #FFF;
          padding: 8px 16px;
          font-size: 120%; }
        #contact .content table tr td span {
          background: #FF0032;
          font-size: 70%;
          color: #FFF;
          padding: 2px 10px; }
    #contact .content input[type="submit"] {
      background: #4D4D4D;
      color: #FFF;
      width: 60%;
      padding: 16px 0;
      font-size: 100%;
      border: 0; }

#recruit .top {
  position: relative;
  height: 975px;
  overflow: hidden; }
  #recruit .top .bb {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#1f286f+0,1f286f+50,ffffff+51,ffffff+100 */
    background: #1f286f;
    /* Old browsers */
    background: -moz-linear-gradient(left, #1f286f 0%, #1f286f 50%, #ffffff 50%, #ffffff 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(left, #1f286f 0%, #1f286f 50%, #ffffff 50%, #ffffff 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #1f286f 0%, #1f286f 50%, #ffffff 50%, #ffffff 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1f286f', endColorstr='#ffffff',GradientType=1 );
    /* IE6-9 */
    width: 100%;
    height: 726px;
    position: absolute;
    top: 0;
    left: -2000px; }
    #recruit .top .bb .content {
      background: #1f286f;
      height: 726px;
      padding-top: 100px;
      box-sizing: border-box; }
  #recruit .top .imgsign {
    position: absolute;
    bottom: 0;
    right: -2000px; }
#recruit .bottom .content {
  padding: 60px 0 100px 0;
  width: 710px;
  text-align: left; }
  #recruit .bottom .content p.sign {
    margin-top: 60px;
    text-align: center;
    font-size: 130%; }
  #recruit .bottom .content table {
    width: 100%;
    border-top: 1px solid #4D4D4D;
    border-bottom: 1px solid #4D4D4D; }
    #recruit .bottom .content table tr {
      border-bottom: 1px solid #4D4D4D; }
      #recruit .bottom .content table tr td {
        padding: 8px 16px;
        text-align: center; }

#map iframe {
  width: 100%;
  height: 500px; }

footer {
  background: #000;
  font-size: 80%; }
  footer .content {
    width: 1000px;
    margin: 0 auto;
    padding: 30px 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: no-wrap;
    justify-content: space-between; }
    footer .content .logo {
      width: 15%; }
      footer .content .logo img {
        width: 100%; }
    footer .content nav {
      width: 82%;
      padding-top: 2%; }
      footer .content nav ul {
        list-style: none;
        margin: 0;
        padding: 0;
        color: #FFF;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-wrap: wrap; }
        footer .content nav ul li a {
          display: block;
          padding: 8px 12px;
          text-decoration: none;
          color: #FFF; }
  footer .copy {
    background: #E6E6E6;
    padding: 6px 0; }
    footer .copy p {
      margin: 0;
      padding: 0; }

#menu {
  position: fixed;
  left: 0;
  background: #1F286F;
  z-index: 5;
  width: 80px; }
  #menu .menubtn {
    margin-bottom: 40px;
    transition: .3s; }
    #menu .menubtn:hover {
      opacity: 0.7;
      filter: alpha(opacity=70);
      cursor: pointer; }

.totop {
  position: fixed;
  bottom: 0;
  right: 0;
  z-index: 2;
  display: none; }
  .totop img {
    vertical-align: bottom; }

.visible-phone {
  display: none;
}
/*# sourceMappingURL=style.css.map */
