@charset "UTF-8";
@import url(reset.css);
.row-eq-height {
  display: flex;
  flex-wrap: wrap; }

html {
  width: 100%;
  max-width: 100%;
  min-width: 100%;
  height: 100%;
  max-height: 100%;
  min-height: 100%; }

body {
  opacity: 0;
  -webkit-transition: all 4s;
  -moz-transition: all 4s;
  -o-transition: all 4s;
  transition: all 4s;
  width: 100%;
  max-width: 100%;
  min-width: 100%;
  height: 100%;
  max-height: 100%;
  min-height: 100%;
  font-family: "FP-ヒラギノ角ゴ ProN W3";
  /*font-family: "FP-ヒラギノ角ゴ ProN";*/
  /*    animation: fadeIn 5s ease 0s 1 normal;
      -webkit-animation: fadeIn 5s ease 0s 1 normal;*/ }
  @media screen and (max-width: 1000px) {
    body {
      font-size: 100% !important; } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
p {
  color: #323232; }

.open-sans {
  font-family: 'Open Sans', sans-serif; }

h1, h2, h3, h4, h5 {
  font-family: "FP-ヒラギノ角ゴ ProN W6";
  -webkit-transition: all 1s;
  -moz-transition: all 1s;
  -o-transition: all 1s;
  transition: all 1s; }

.text-center {
  text-align: center; }

.ovr-hdn {
  overflow: hidden; }

.posi-rel {
  position: relative; }

.sp {
  /*    display: none !important;
      @media screen and (max-width: $small) {
          display:block !important;
      }*/ }

/*.pc{
    @media screen and (max-width: $small) {
        display:none !important;
    }
}*/
a, button {
  -webkit-transition: all 1s;
  -moz-transition: all 1s;
  -o-transition: all 1s;
  transition: all 1s;
  text-decoration: none; }
  a img, button img {
    /*@include trans10;*/ }

li {
  list-style: none; }

b {
  font-family: "FP-ヒラギノ角ゴ ProN W6"; }

img {
  height: auto; }

img[src$=".svg"] {
  height: auto; }

.fadein-down {
  opacity: 0;
  top: -120px !important;
  -webkit-transition: all 3s;
  -moz-transition: all 3s;
  -o-transition: all 3s;
  transition: all 3s; }
  @media screen and (max-width: 640px) {
    .fadein-down {
      opacity: 0;
      top: auto !important;
      bottom: -120px !important; } }
  .fadein-down.active {
    opacity: 1;
    top: 0px !important; }
    @media screen and (max-width: 640px) {
      .fadein-down.active {
        opacity: 1;
        top: auto !important;
        bottom: 0px !important; } }

.fadein-up {
  position: relative;
  opacity: 0;
  bottom: -120px !important;
  -webkit-transition: all 3s;
  -moz-transition: all 3s;
  -o-transition: all 3s;
  transition: all 3s;
  /*    @media screen and ( max-width: $small ){
          opacity: 1;
          bottom: 0px !important;
      }*/ }
  .fadein-up.active {
    opacity: 1;
    bottom: 0px !important; }

.fadein-up-top {
  position: relative;
  opacity: 0;
  top: 20px !important;
  -webkit-transition: all 3s;
  -moz-transition: all 3s;
  -o-transition: all 3s;
  transition: all 3s; }
  @media screen and (max-width: 640px) {
    .fadein-up-top {
      opacity: 1;
      top: auto !important;
      bottom: -120px !important; } }
  .fadein-up-top.active {
    opacity: 1;
    top: -90px !important; }
    @media screen and (max-width: 640px) {
      .fadein-up-top.active {
        top: auto !important;
        bottom: 0px !important; } }

.fadein-right {
  position: relative;
  opacity: 0;
  right: -120px !important;
  -webkit-transition: all 3s;
  -moz-transition: all 3s;
  -o-transition: all 3s;
  transition: all 3s;
  /*    @media screen and ( max-width: $small ){
          opacity: 1;
          right: 0px !important;
      }*/ }
  .fadein-right.active {
    opacity: 1;
    right: 0px !important; }

.fadein-left {
  position: relative;
  opacity: 0;
  left: -50px !important;
  -webkit-transition: all 3s;
  -moz-transition: all 3s;
  -o-transition: all 3s;
  transition: all 3s;
  /*    @media screen and ( max-width: $small ){
          opacity: 1;
          left: 0px !important;
      }*/ }
  .fadein-left.active {
    opacity: 1;
    left: 0px !important; }

@keyframes hello {
  0% {
    stroke-dashoffset: 2000;
    fill: transparent; }
  40% {
    stroke-dashoffset: 2000;
    fill: transparent; }
  50% {
    fill: transparent; }
  100% {
    stroke-dashoffset: 0;
    fill: #9bdb86; } }
@-webkit-keyframes hello {
  0% {
    stroke-dashoffset: 2000;
    fill: transparent; }
  40% {
    stroke-dashoffset: 2000;
    fill: transparent; }
  50% {
    fill: transparent; }
  100% {
    stroke-dashoffset: 0;
    fill: #9bdb86; } }
/*.st0 {
        fill:#fff;
        stroke:#fff;
        fill:rgba(255,255,255,0);
        stroke-width:0.5px;
        stroke-DASHarray: 3000;
        stroke-DASHoffset:3000;
        -moz-animation:lineAnime 3s ease-in-out .5s forwards;
        -webkit-animation:lineAnime 3s ease-in-out .5s forwards;
        -o-animation:lineAnime 3s ease-in-out .5s forwards;
        animation:lineAnime 3s ease-in-out .5s forwards;
        -webkit-transition:all .3s ease-in-out;
        transition:all .3s ease-in-out;
}

.home .path {
        -moz-animation:lineAnime 2s ease-in-out .5s forwards;
        -webkit-animation:lineAnime 2s ease-in-out .5s forwards;
        -o-animation:lineAnime 2s ease-in-out .5s forwards;
        animation:lineAnime 2s ease-in-out .5s forwards;
        -webkit-transition:all .2s ease-in-out;
        transition:all .2s ease-in-out;
}

@keyframes lineAnime{
        0%  {stroke-DASHoffset:3000;fill:rgba(255,255,255,0);}
        70% {stroke-DASHoffset:2700;fill:rgba(255,255,255,0);}
        100%{stroke-DASHoffset:0;fill:rgba(255,255,255,100);}
}

@-moz-keyframes lineAnime{
        0%  {stroke-DASHoffset:3000;fill:rgba(255,255,255,0);}
        70% {stroke-DASHoffset:2700;fill:rgba(255,255,255,0);}
        100%{stroke-DASHoffset:0;fill:rgba(255,255,255,100);}
}

@-webkit-keyframes lineAnime{
        0%  {stroke-DASHoffset:3000;fill:rgba(255,255,255,0);}
        70% {stroke-DASHoffset:2700;fill:rgba(255,255,255,0);}
        100%{stroke-DASHoffset:0;fill:rgba(255,255,255,100);}
}

@-o-keyframes lineAnime{
        0%  {stroke-DASHoffset:3000;fill:rgba(255,255,255,0);}
        70% {stroke-DASHoffset:2700;fill:rgba(255,255,255,0);}
        100%{stroke-DASHoffset:0;fill:rgba(255,255,255,100);}
}

@-ms-keyframes lineAnime{
        0%  {stroke-DASHoffset:3000;fill:rgba(255,255,255,0);}
        50% {stroke-DASHoffset:2700;fill:rgba(255,255,255,0);}
        100%{stroke-DASHoffset:0;fill:rgba(255,255,255,100);}
}*/
.nav-layer {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #073c83;
  z-index: 95;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
  -webkit-transition: all 1s;
  -moz-transition: all 1s;
  -o-transition: all 1s;
  transition: all 1s; }
  .nav-layer.active {
    -webkit-transform: translateY(0px);
    transform: translateY(0px); }

.drawer-btn span {
  height: 2px;
  background-color: #FFF; }

.drawer-btn {
  display: none;
  position: fixed;
  top: 0px;
  right: 0px;
  width: 90px;
  height: 90px;
  border-radius: 0;
  border: none;
  background-color: #073c83;
  padding: 0px;
  margin-top: 0px;
  margin-right: 0px;
  z-index: 100; }
  @media screen and (max-width: 1280px) {
    .drawer-btn {
      display: block; } }
  @media screen and (max-width: 640px) {
    .drawer-btn {
      width: 80px;
      height: 80px; } }
  @media screen and (max-width: 480px) {
    .drawer-btn {
      /*width: 48%;*/ } }

.drawer-btn_inner {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 45px;
  height: 45px;
  margin: auto; }
  @media screen and (max-width: 640px) {
    .drawer-btn_inner {
      width: 35px;
      height: 35px; } }

.btn_border {
  position: absolute;
  top: 50%;
  left: 0;
  background-color: #fff;
  width: 100%;
  height: 2px;
  -webkit-transform: translateX(0);
  -ms-transform: translateX(0);
  transform: translateX(0);
  -webkit-transition: top 0.1s ease-in-out, margin 0.1s cubic-bezier(0.36, 0, 0.59, 0.99) 0.2s, -webkit-transform 0.15s ease 0s;
  transition: top 0.1s ease-in-out, margin 0.1s cubic-bezier(0.36, 0, 0.59, 0.99) 0.2s, transform 0.15s ease 0s; }

.border01 {
  margin-top: -10px; }
  @media screen and (max-width: 640px) {
    .border01 {
      margin-top: -8px; } }

.border03 {
  margin-top: 10px; }
  @media screen and (max-width: 640px) {
    .border03 {
      margin-top: 8px; } }

.current.drawer-btn {
  background-color: #FFF;
  /*right: 20px;*/ }

.current.drawer-btn span {
  background-color: #073c83; }

.current.drawer-btn .border01 {
  top: 50%;
  margin-top: 0 !important;
  -webkit-transform: rotateZ(45deg);
  transform: rotateZ(45deg);
  -webkit-transition: margin 0.1s cubic-bezier(0.36, 0, 0.59, 0.99) 0.1s, -webkit-transform 0.15s ease 0.26s;
  transition: margin 0.1s cubic-bezier(0.36, 0, 0.59, 0.99) 0.1s, transform 0.15s ease 0.26s; }

.current.drawer-btn .border02 {
  top: 50%;
  -webkit-transition: .2s ease .1s;
  transition: .2s ease .1s;
  opacity: 0; }

.current.drawer-btn .border03 {
  top: 50%;
  margin-top: 0 !important;
  -webkit-transform: rotateZ(-45deg);
  transform: rotateZ(-45deg);
  -webkit-transition: margin 0.1s cubic-bezier(0.36, 0, 0.59, 0.99) 0.1s, -webkit-transform 0.15s ease 0.26s;
  transition: margin 0.1s cubic-bezier(0.36, 0, 0.59, 0.99) 0.1s, transform 0.15s ease 0.26s; }

.owl-carousel .owl-prev {
  position: absolute;
  width: 50px;
  height: 50px;
  background-color: #f0f0f0;
  border-radius: 0;
  top: -50px;
  bottom: 0;
  left: 0;
  margin: auto; }
  @media screen and (max-width: 640px) {
    .owl-carousel .owl-prev {
      background: rgba(240, 240, 240, 0.7); } }

.owl-carousel .owl-prev:before {
  display: block;
  content: "";
  width: 12px;
  height: 12px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 10px;
  width: 30px;
  height: 7px;
  background: url(../img/arrow.svg) no-repeat center center;
  transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  margin: auto; }

.owl-carousel .owl-next {
  position: absolute;
  width: 50px;
  height: 50px;
  background-color: #f0f0f0;
  border-radius: 0;
  top: -50px;
  bottom: 0;
  right: 0px;
  margin: auto; }
  @media screen and (max-width: 640px) {
    .owl-carousel .owl-next {
      background: rgba(240, 240, 240, 0.7); } }

.owl-carousel .owl-next:before {
  display: block;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  width: 30px;
  height: 7px;
  background: url("../img/arrow.svg") no-repeat center center;
  margin: auto; }

header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  -webkit-transition: all 1s;
  -moz-transition: all 1s;
  -o-transition: all 1s;
  transition: all 1s; }
  header.scroll {
    position: fixed;
    height: 89px;
    background-color: #FFF;
    box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.2); }
    @media screen and (max-width: 1280px) {
      header.scroll {
        height: 89px; } }
    @media screen and (max-width: 640px) {
      header.scroll {
        height: 80px; } }
    header.scroll .gnav li a {
      color: #323232; }
      header.scroll .gnav li a:before {
        background-color: #323232; }
    header.scroll .gnav li.contact-btn a {
      color: #FFF; }
  @media screen and (max-width: 1280px) {
    header.on {
      position: fixed;
      height: 90px;
      background-color: #FFF;
      z-index: 100; } }
  @media screen and (max-width: 640px) {
    header.on {
      height: 80px; } }
  header.on .gnav li a {
    color: #FFF; }
  header.on .gnav li.contact-btn a {
    color: #323232; }
  header h1 {
    position: absolute;
    top: 0;
    left: 0;
    margin: 25px 0 0 30px; }
    @media screen and (max-width: 480px) {
      header h1 {
        width: 60%;
        margin: 25px 0 0 15px; } }
    header h1 a {
      display: block; }
    @media screen and (max-width: 1280px) {
      header h1 img {
        width: 360px; } }
    @media screen and (max-width: 640px) {
      header h1 img {
        width: 280px; } }
    @media screen and (max-width: 480px) {
      header h1 img {
        width: 100%; } }

.gnav {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  margin: 0px; }
  @media screen and (max-width: 1280px) {
    .gnav {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      width: 100%;
      height: 100%;
      text-align: left;
      z-index: 100; } }
  @media screen and (max-width: 1280px) {
    .gnav .gnav-inner {
      position: relative;
      top: 110px;
      padding-bottom: 150px;
      overflow-y: scroll;
      height: 100%; } }
  @media screen and (max-width: 640px) {
    .gnav .gnav-inner {
      top: 90px; } }
  .gnav li {
    float: left;
    padding: 0 1em; }
    @media screen and (max-width: 1280px) {
      .gnav li {
        float: none;
        text-align: center; } }
    .gnav li a {
      position: relative;
      display: block;
      /*min-width: 100px;*/
      font-size: 13px;
      letter-spacing: 0.2em;
      color: #FFF;
      text-align: center;
      padding: 0 0 3px;
      margin-top: 36px; }
      @media screen and (max-width: 1280px) {
        .gnav li a {
          width: 100%;
          font-size: 16px;
          font-family: "FP-ヒラギノ角ゴ ProN W6";
          text-align: left;
          border-bottom: 1px solid #FFF;
          padding: 18px 1.5em 16px;
          margin-top: 0px; } }
      @media screen and (max-width: 640px) {
        .gnav li a {
          font-size: 15px; } }
      @media screen and (max-width: 1280px) {
        .gnav li a.pc {
          display: none; } }
      .gnav li a.sp-toggle-link {
        display: none; }
        @media screen and (max-width: 1280px) {
          .gnav li a.sp-toggle-link {
            display: block; } }
        .gnav li a.sp-toggle-link:before {
          display: block;
          content: '';
          position: absolute;
          top: 20px;
          left: auto;
          right: 33px;
          width: 2px;
          height: 16px;
          background-color: #FFF !important;
          -webkit-transition: all 1s;
          -moz-transition: all 1s;
          -o-transition: all 1s;
          transition: all 1s; }
        .gnav li a.sp-toggle-link:after {
          display: block;
          content: '';
          position: absolute;
          top: 26px;
          right: 26px;
          width: 16px;
          height: 2px;
          background-color: #FFF;
          -webkit-transition: all 1s;
          -moz-transition: all 1s;
          -o-transition: all 1s;
          transition: all 1s; }
        .gnav li a.sp-toggle-link.on {
          border-bottom: none; }
          .gnav li a.sp-toggle-link.on:before {
            background-color: #FFF;
            -webkit-transform: rotateZ(90deg);
            transform: rotateZ(90deg); }
          .gnav li a.sp-toggle-link.on:after {
            background-color: #FFF; }
      .gnav li a:before {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        width: 0;
        height: 1px;
        background-color: #FFF;
        -webkit-transition: all 1s;
        -moz-transition: all 1s;
        -o-transition: all 1s;
        transition: all 1s;
        margin: 0 auto; }
        @media screen and (max-width: 1280px) {
          .gnav li a:before {
            display: none; } }
      .gnav li a:hover {
        color: #FFF; }
        .gnav li a:hover:before {
          width: 100%; }
          @media screen and (max-width: 1280px) {
            .gnav li a:hover:before {
              width: 2px; } }
    .gnav li.contact-btn {
      background-color: #073c83;
      padding: 0; }
      .gnav li.contact-btn a {
        margin-top: 0;
        padding: 35px 1em; }
        @media screen and (max-width: 1280px) {
          .gnav li.contact-btn a {
            max-width: 280px;
            font-size: 16px;
            font-family: "FP-ヒラギノ角ゴ ProN W6";
            letter-spacing: 0.2em;
            line-height: 1.7;
            text-align: center;
            color: #323232;
            background-color: #FFF;
            border-bottom: none;
            padding: 12px 1em 10px;
            margin: 20px auto 0; } }
        .gnav li.contact-btn a:before {
          display: none; }
        .gnav li.contact-btn a:hover {
          color: #FFF;
          background-color: #323232; }
          @media screen and (max-width: 1280px) {
            .gnav li.contact-btn a:hover {
              color: #FFF;
              background-color: #323232; } }
    .gnav li .child {
      display: none;
      padding: 10px 0; }
      .gnav li .child li {
        padding: 0 0.5em; }
      .gnav li .child a {
        display: block;
        width: 100%;
        font-size: 15px;
        font-weight: normal;
        letter-spacing: 0.1em;
        border-bottom: none;
        padding: 10px 1.5em;
        margin-top: 0px; }
        @media screen and (max-width: 640px) {
          .gnav li .child a {
            font-size: 14px; } }
        .gnav li .child a img {
          vertical-align: middle;
          margin-right: 10px; }

.fix-boxed {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  text-align: center;
  background: rgba(0, 0, 0, 0.7);
  padding: 0 1.5em;
  z-index: 100; }
  .fix-boxed:before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 0;
    height: 100%; }
  .fix-boxed .boxed-inner {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    width: 96%;
    max-width: 900px;
    margin: 0 auto;
    z-index: 100; }
  .fix-boxed .movie-box {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%; }
    .fix-boxed .movie-box .close-btn {
      position: absolute;
      top: -14px;
      right: 10px;
      font-size: 220%;
      color: #FFF; }
    .fix-boxed .movie-box iframe {
      position: absolute;
      top: 30px;
      left: 0;
      width: 100%;
      height: 100%;
      margin: auto; }
  .fix-boxed .img-box {
    width: 100%;
    height: 0%;
    text-align: left;
    overflow: hidden;
    padding-bottom: 50px;
    transform: scale(0.5, 0.5);
    -webkit-transition: all 1s;
    -moz-transition: all 1s;
    -o-transition: all 1s;
    transition: all 1s; }
    .fix-boxed .img-box.on {
      transform: scale(1, 1); }
    .fix-boxed .img-box .close-btn {
      float: right;
      text-align: right;
      font-size: 220%;
      color: #FFF;
      -webkit-transform: rotateZ(0deg);
      transform: rotateZ(0deg);
      -webkit-transition: all 1s;
      -moz-transition: all 1s;
      -o-transition: all 1s;
      transition: all 1s; }
      .fix-boxed .img-box .close-btn:hover {
        -webkit-transform: rotateZ(180deg);
        transform: rotateZ(180deg); }
    .fix-boxed .img-box img {
      display: block;
      clear: both;
      height: auto;
      margin: auto; }
    .fix-boxed .img-box h3 {
      display: inline-block;
      font-family: "a-otf-gothic-bbb-pr6n",sans-serif;
      color: #FFF;
      border-bottom: 1px solid #FFF;
      margin: 20px 0 10px; }
    .fix-boxed .img-box p {
      font-size: 14px;
      color: #FFF;
      letter-spacing: 0.05em;
      line-height: 1.7; }

.btn {
  position: relative;
  display: block;
  max-width: 244px;
  font-size: 14px;
  font-family: "FP-ヒラギノ角ゴ ProN W6";
  letter-spacing: 0.2em;
  line-height: 1.7;
  color: #073c83;
  background: none;
  border: 1px solid #073c83;
  border-radius: 0;
  text-align: center;
  padding: 20px 40px 20px 1em;
  margin: 0 auto; }
  .btn:hover {
    color: #FFF;
    background-color: #073c83; }
    .btn:hover .arrow {
      background: url("../img/arrow_wht.svg") no-repeat center center; }
  .btn .arrow {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    width: 30px;
    height: 7px;
    background: url("../img/arrow.svg") no-repeat center center;
    margin: auto;
    -webkit-transition: all 1s;
    -moz-transition: all 1s;
    -o-transition: all 1s;
    transition: all 1s; }

table {
  table-layout: fixed;
  word-break: break-all;
  word-wrap: break-word; }

#news-area {
  background-color: #FFF;
  padding: 100px 0; }
  @media screen and (max-width: 640px) {
    #news-area {
      overflow: hidden;
      padding: 100px 0 120px; } }
  #news-area h3 {
    /*        font-size: 25px;
                        font-family: "FP-ヒラギノ角ゴ ProN W6";
            line-height: 1.7;
            letter-spacing: 0.2em;
            text-align: center;
            color: $main-color;*/
    max-width: 84px;
    text-align: center;
    margin: 0 auto 10px; }
  #news-area .ja-small {
    font-size: 14px;
    font-family: "FP-ヒラギノ角ゴ ProN W6";
    line-height: 1.7;
    letter-spacing: 0.2em;
    text-align: center;
    color: #323232;
    margin-bottom: 40px; }
  @media screen and (max-width: 640px) {
    #news-area .owl-carousel .owl-stage-outer {
      overflow: inherit; } }
  #news-area .item-area {
    padding: 0 65px;
    margin-bottom: 70px; }
    #news-area .item-area .item {
      display: block; }
      #news-area .item-area .item .img-area {
        height: 225px;
        margin-bottom: 15px; }
      #news-area .item-area .item .stc-area {
        padding: 0 1em; }
        #news-area .item-area .item .stc-area h4 {
          height: 50px;
          font-size: 14px;
          font-family: "FP-ヒラギノ角ゴ ProN W3";
          line-height: 1.7;
          letter-spacing: 0.1em;
          color: #323232;
          margin-bottom: 20px; }
        #news-area .item-area .item .stc-area .date {
          vertical-align: middle;
          font-size: 14px;
          font-weight: 600;
          letter-spacing: 0.1em;
          color: #073c83;
          margin-right: 20px; }
        #news-area .item-area .item .stc-area .cate {
          vertical-align: middle;
          font-size: 12px;
          letter-spacing: 0.1em;
          color: #FFF;
          background-color: #073c83;
          padding: 2px 1em; }
  #news-area .btn {
    position: relative;
    display: block;
    max-width: 244px;
    font-size: 14px;
    font-family: "FP-ヒラギノ角ゴ ProN W6";
    letter-spacing: 0.2em;
    line-height: 1.7;
    color: #073c83;
    background: none;
    border: 1px solid #073c83;
    border-radius: 0;
    text-align: center;
    padding: 20px 40px 20px 1em;
    margin: 0 auto; }
    @media screen and (max-width: 768px) {
      #news-area .btn {
        /*font-size: 18px;*/ } }
    @media screen and (max-width: 640px) {
      #news-area .btn {
        /*font-size: 17px;*/ } }
    #news-area .btn:hover {
      color: #FFF;
      background-color: #073c83; }
      #news-area .btn:hover .arrow {
        background: url("../img/arrow_wht.svg") no-repeat center center; }
    #news-area .btn .arrow {
      position: absolute;
      top: 0;
      bottom: 0;
      right: 20px;
      width: 30px;
      height: 7px;
      background: url("../img/arrow.svg") no-repeat center center;
      margin: auto;
      -webkit-transition: all 1s;
      -moz-transition: all 1s;
      -o-transition: all 1s;
      transition: all 1s; }

.pagination {
  position: relative;
  display: block;
  width: 100%;
  z-index: 1; }

.navigation span.current {
  color: #FFF;
  background-color: #073c83;
  padding: 5px 8px; }

.navigation a, .navigation span {
  vertical-align: middle;
  color: #323232;
  background: none;
  border-radius: 0px;
  padding: 5px 13px; }
  .navigation a:hover, .navigation span:hover {
    color: #FFF;
    background-color: #dcdcdc; }

.navigation a.next, .navigation a.prev {
  position: relative;
  width: 52px;
  height: 50px;
  color: #FFF;
  background-color: #073c83;
  border: 1px solid #073c83; }

.navigation a.next {
  margin-left: 30px; }
  .navigation a.next:hover {
    background-color: #FFF; }
    .navigation a.next:hover:before {
      background: url("../img/arrow.svg") no-repeat center center; }
  .navigation a.next:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 30px;
    height: 7px;
    background: url("../img/arrow_wht.svg") no-repeat center center;
    margin: auto;
    -webkit-transition: all 1s;
    -moz-transition: all 1s;
    -o-transition: all 1s;
    transition: all 1s; }

.navigation a.prev {
  margin-right: 30px; }
  .navigation a.prev:hover {
    background-color: #FFF; }
    .navigation a.prev:hover:before {
      background: url("../img/arrow.svg") no-repeat center center; }
  .navigation a.prev:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 30px;
    height: 7px;
    background: url("../img/arrow_wht.svg") no-repeat center center;
    margin: auto;
    -webkit-transform: rotateZ(180deg);
    transform: rotateZ(180deg);
    -webkit-transition: all 1s;
    -moz-transition: all 1s;
    -o-transition: all 1s;
    transition: all 1s; }

footer {
  position: relative;
  background-color: #efefef;
  padding: 60px 1em 35px;
  z-index: 1; }
  @media screen and (max-width: 640px) {
    footer {
      padding: 40px 0em 10px; } }
  footer .footer-banner-area {
    max-width: 1280px;
    text-align: center;
    margin: 0 auto 90px; }
    @media screen and (max-width: 640px) {
      footer .footer-banner-area {
        margin: 0 auto 60px;
        max-width: 195px; } }
    footer .footer-banner-area p {
      display: block;
      font-size: 14px;
      font-family: "FP-ヒラギノ角ゴ ProN W6";
      letter-spacing: 0.2em;
      margin-bottom: 30px; }
      @media screen and (max-width: 640px) {
        footer .footer-banner-area p {
          font-size: 16px; } }
    footer .footer-banner-area img {
      display: inline-block;
      vertical-align: bottom; }
    footer .footer-banner-area a {
      display: inline-block;
      vertical-align: bottom;
      margin: 0 5px; }
      @media screen and (max-width: 640px) {
        footer .footer-banner-area a {
          display: block;
          margin-bottom: 10px; } }
  footer .footer-img-area {
    max-width: 1280px;
    text-align: right;
    margin: 0 auto 50px; }
    @media screen and (max-width: 640px) {
      footer .footer-img-area {
        text-align: center; } }
    footer .footer-img-area img {
      display: inline-block;
      vertical-align: bottom; }
      @media screen and (max-width: 640px) {
        footer .footer-img-area img.iso {
          width: 150px; } }
    footer .footer-img-area a {
      display: inline-block;
      vertical-align: bottom;
      margin-right: 10px; }
  footer .page-top {
    position: relative;
    top: -90px;
    display: block;
    width: 80%;
    max-width: 1020px;
    background-color: #073c83;
    border: 1px solid #073c83;
    padding: 30px 1em 35px;
    margin: 0 auto; }
    @media screen and (max-width: 640px) {
      footer .page-top {
        top: -70px;
        width: 90%; } }
    footer .page-top:before {
      content: '';
      position: absolute;
      top: -17px;
      left: 0;
      right: 0;
      width: 7px;
      height: 33px;
      background: url("../img/page-top.svg") no-repeat center center;
      margin: auto;
      -webkit-transition: all 1s;
      -moz-transition: all 1s;
      -o-transition: all 1s;
      transition: all 1s; }
    footer .page-top:hover {
      background-color: #FFF; }
      footer .page-top:hover:before {
        top: -33px;
        background: url("../img/page-top_hover.svg") no-repeat center center; }
      footer .page-top:hover p {
        top: 25px;
        color: #073c83; }
    footer .page-top p {
      position: absolute;
      top: 30px;
      left: 0;
      right: 0;
      font-size: 12px;
      line-height: 1.7;
      letter-spacing: 0.2em;
      text-align: center;
      color: #FFF;
      margin: auto;
      -webkit-transition: all 1s;
      -moz-transition: all 1s;
      -o-transition: all 1s;
      transition: all 1s; }
  footer h5 {
    font-size: 30px;
    font-family: "FP-ヒラギノ角ゴ ProN W6";
    line-height: 1.7;
    letter-spacing: 0.1em;
    text-align: center;
    color: #073c83;
    margin-bottom: 90px; }
    @media screen and (max-width: 640px) {
      footer h5 {
        font-size: 25px;
        margin-bottom: 60px; } }
    footer h5 .sp {
      display: none; }
      @media screen and (max-width: 640px) {
        footer h5 .sp {
          display: inline-block;
          max-width: 75%; } }
    @media screen and (max-width: 640px) {
      footer h5 .pc {
        display: none; } }
  footer .footer-nav.pc {
    max-width: 1120px;
    margin: 0 auto 30px; }
    @media screen and (max-width: 640px) {
      footer .footer-nav.pc {
        display: none; } }
    footer .footer-nav.pc .col {
      display: inline-block;
      vertical-align: top;
      width: 23%;
      margin-right: 1.5%;
      margin-bottom: 30px; }
      footer .footer-nav.pc .col:last-child {
        margin-right: 0; }
    footer .footer-nav.pc ul {
      margin-bottom: 30px; }
      footer .footer-nav.pc ul li a {
        display: block;
        font-size: 12px;
        line-height: 1.7;
        letter-spacing: 0.1em;
        color: #323232;
        margin-bottom: 8px; }
        footer .footer-nav.pc ul li a b {
          display: block;
          font-size: 14px;
          font-family: "FP-ヒラギノ角ゴ ProN W6";
          letter-spacing: 0.2em;
          margin-bottom: 10px; }
        footer .footer-nav.pc ul li a:hover {
          opacity: .7; }
  footer .footer-nav.sp {
    margin-bottom: 40px;
    display: none; }
    @media screen and (max-width: 640px) {
      footer .footer-nav.sp {
        display: block; } }
    footer .footer-nav.sp .sp-toggle-link {
      display: block;
      position: relative;
      font-size: 16px;
      font-family: "FP-ヒラギノ角ゴ ProN W6";
      letter-spacing: 0.2em;
      color: #323232;
      border-bottom: 1px solid #c8c8c8;
      padding: 20px 1em 18px; }
      @media screen and (max-width: 480px) {
        footer .footer-nav.sp .sp-toggle-link {
          font-size: 14px; } }
      footer .footer-nav.sp .sp-toggle-link:hover {
        opacity: .7; }
      footer .footer-nav.sp .sp-toggle-link:first-of-type {
        border-top: 1px solid #c8c8c8; }
      footer .footer-nav.sp .sp-toggle-link:before {
        content: '';
        position: absolute;
        top: 24px;
        right: 33px;
        width: 2px;
        height: 16px;
        background-color: #073c83;
        -webkit-transition: all 1s;
        -moz-transition: all 1s;
        -o-transition: all 1s;
        transition: all 1s; }
      footer .footer-nav.sp .sp-toggle-link:after {
        content: '';
        position: absolute;
        top: 30px;
        right: 26px;
        width: 16px;
        height: 2px;
        background-color: #073c83;
        -webkit-transition: all 1s;
        -moz-transition: all 1s;
        -o-transition: all 1s;
        transition: all 1s; }
      footer .footer-nav.sp .sp-toggle-link.on:before {
        background-color: #073c83;
        -webkit-transform: rotateZ(90deg);
        transform: rotateZ(90deg); }
      footer .footer-nav.sp .sp-toggle-link.on:after {
        background-color: #073c83; }
    footer .footer-nav.sp .child {
      display: none;
      background-color: #FFF; }
      footer .footer-nav.sp .child li:last-child a {
        border-bottom: none; }
      footer .footer-nav.sp .child li a {
        display: block;
        font-size: 15px;
        line-height: 1.7;
        letter-spacing: 0.1em;
        color: #323232;
        border-bottom: 1px solid #c8c8c8;
        padding: 10px 1em 8px; }
        @media screen and (max-width: 480px) {
          footer .footer-nav.sp .child li a {
            font-size: 14px; } }
        footer .footer-nav.sp .child li a:hover {
          opacity: .7; }
    footer .footer-nav.sp .one li a {
      display: block;
      font-size: 17px;
      font-family: "FP-ヒラギノ角ゴ ProN W6";
      letter-spacing: 0.2em;
      color: #323232;
      border-bottom: 1px solid #c8c8c8;
      padding: 20px 1em 18px; }
      @media screen and (max-width: 480px) {
        footer .footer-nav.sp .one li a {
          font-size: 14px; } }
      footer .footer-nav.sp .one li a:hover {
        opacity: .7; }
    footer .footer-nav.sp .col-area {
      overflow: hidden; }
      footer .footer-nav.sp .col-area a {
        float: left;
        display: block;
        width: 50%;
        font-size: 14px;
        font-family: "FP-ヒラギノ角ゴ ProN W6";
        text-align: center;
        letter-spacing: 0.1em;
        color: #969696;
        border-bottom: 1px solid #c8c8c8;
        padding: 20px 0.5em 18px; }
        @media screen and (max-width: 480px) {
          footer .footer-nav.sp .col-area a {
            font-size: 13px; } }
        footer .footer-nav.sp .col-area a:hover {
          opacity: .7; }
        footer .footer-nav.sp .col-area a:first-child {
          border-right: 1px solid #c8c8c8; }
  footer .footer-inner {
    max-width: 1120px;
    margin: 0 auto; }
    footer .footer-inner .footer-logo {
      display: inline-block;
      vertical-align: middle;
      margin-right: 4%;
      margin-bottom: 25px; }
      @media screen and (max-width: 640px) {
        footer .footer-inner .footer-logo {
          display: block;
          text-align: center;
          margin-right: 0%; } }
    footer .footer-inner .address {
      display: inline-block;
      vertical-align: middle;
      font-size: 12px;
      letter-spacing: 0.1em;
      line-height: 1.7;
      color: #323232;
      margin-right: 6%;
      margin-bottom: 25px; }
      @media screen and (max-width: 640px) {
        footer .footer-inner .address {
          display: block;
          text-align: center;
          margin-right: 0%; } }
      footer .footer-inner .address .sp {
        display: none; }
        @media screen and (max-width: 640px) {
          footer .footer-inner .address .sp {
            display: block; } }
    footer .footer-inner .copyright {
      display: inline-block;
      vertical-align: middle;
      font-size: 11px;
      letter-spacing: 0.1em;
      line-height: 1.7;
      color: #323232;
      margin-bottom: 25px; }
      @media screen and (max-width: 640px) {
        footer .footer-inner .copyright {
          display: block;
          text-align: center;
          margin-right: 0%; } }

video {
  position: fixed;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  margin: 0;
  z-index: -2; }
  @media screen and (max-width: 640px) {
    video {
      display: none; } }

.sp-main-img {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  margin: 0;
  z-index: -2;
  background: url("../img/top-main-img_sp.jpg") no-repeat center center;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover; }
  @media screen and (max-width: 640px) {
    .sp-main-img {
      display: block; } }

.video-black-layer {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: -1; }

header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100; }
  header h1 {
    position: absolute;
    top: 0;
    left: 0;
    margin: 25px 0 0 30px; }
    @media screen and (max-width: 480px) {
      header h1 {
        width: 60%;
        margin: 25px 0 0 15px; } }
    header h1 a {
      display: block; }
    @media screen and (max-width: 1280px) {
      header h1 img {
        width: 360px; } }
    @media screen and (max-width: 640px) {
      header h1 img {
        width: 280px; } }
    @media screen and (max-width: 480px) {
      header h1 img {
        width: 100%; } }

.main-visual {
  position: relative;
  -webkit-transition: all 3s;
  -moz-transition: all 3s;
  -o-transition: all 3s;
  transition: all 3s;
  z-index: 1; }
  .main-visual h2 {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    max-width: 960px;
    height: 60px;
    font-size: 50px;
    font-family: "FP-ヒラギノ角ゴ ProN W6";
    line-height: 1.7;
    letter-spacing: 0.2em;
    color: #FFF;
    text-align: center;
    padding: 0 1em;
    margin: auto; }
    @media screen and (max-width: 1280px) {
      .main-visual h2 {
        font-size: 44px; } }
    @media screen and (max-width: 960px) {
      .main-visual h2 {
        height: 120px;
        font-size: 40px; } }
    @media screen and (max-width: 640px) {
      .main-visual h2 {
        font-size: 36px; } }
    @media screen and (max-width: 480px) {
      .main-visual h2 {
        font-size: 34px;
        letter-spacing: 0.15em; } }
    .main-visual h2.sp {
      display: none; }
      @media screen and (max-width: 640px) {
        .main-visual h2.sp {
          display: block; } }
    .main-visual h2.pc {
      display: block; }
      @media screen and (max-width: 640px) {
        .main-visual h2.pc {
          display: none; } }

.news-box {
  position: relative;
  top: -32px;
  width: 88%;
  max-width: 1120px;
  box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.2);
  margin: 0 auto;
  z-index: 1; }
  @media screen and (max-width: 960px) {
    .news-box {
      margin: 0 0 0 auto; } }
  .news-box p {
    position: relative;
    z-index: 1;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    width: 125px;
    height: 64px;
    font-size: 15px;
    font-family: "FP-ヒラギノ角ゴ ProN W6";
    letter-spacing: 0.2em;
    color: #FFF;
    background-color: #073c83;
    padding: 20px 0; }
    @media screen and (max-width: 960px) {
      .news-box p {
        width: 100px;
        height: 130px; } }
    @media screen and (max-width: 640px) {
      .news-box p {
        width: 80px; } }
  .news-box .news-body {
    position: absolute;
    top: 0;
    left: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: left;
    justify-content: left;
    width: 100%;
    height: 64px;
    background-color: #FFF;
    padding: 0px 0px 0px 145px;
    z-index: 0; }
    @media screen and (max-width: 960px) {
      .news-box .news-body {
        display: block;
        display: block;
        height: 130px;
        padding: 0px 0px 0px 120px; } }
    @media screen and (max-width: 640px) {
      .news-box .news-body {
        padding: 0px 0px 0px 95px; } }
    .news-box .news-body a {
      display: block;
      width: 100%;
      font-size: 12px;
      letter-spacing: 0.1em;
      line-height: 2;
      color: #323232;
      padding-right: 60px; }
      @media screen and (max-width: 960px) {
        .news-box .news-body a {
          padding-right: 10px;
          padding-top: 15px; } }
      .news-box .news-body a:hover {
        opacity: .7; }
    .news-box .news-body .date {
      font-size: 13px;
      font-weight: 600;
      letter-spacing: 0.1em;
      color: #073c83;
      margin-right: 10px; }
      @media screen and (max-width: 640px) {
        .news-box .news-body .date {
          font-size: 12px;
          letter-spacing: 0em; } }
    .news-box .news-body .cate {
      font-size: 11px;
      letter-spacing: 0.1em;
      color: #323232;
      background-color: #f0f0f0;
      padding: 2px 1em;
      margin-top: -1px;
      margin-right: 10px; }
      @media screen and (max-width: 960px) {
        .news-box .news-body .cate {
          position: absolute;
          top: 14px;
          width: 85px;
          text-align: center;
          padding: 2px 5px; } }
    .news-box .news-body .sp {
      display: none; }
      @media screen and (max-width: 960px) {
        .news-box .news-body .sp {
          display: block; } }
    .news-box .news-body img {
      position: absolute;
      top: 0;
      bottom: 0;
      right: 20px;
      height: 7px;
      margin: auto; }
      @media screen and (max-width: 960px) {
        .news-box .news-body img {
          top: auto;
          bottom: 20px;
          right: auto;
          left: 120px;
          height: 7px;
          margin: auto; } }
      @media screen and (max-width: 640px) {
        .news-box .news-body img {
          left: 95px; } }

.container {
  position: relative;
  background-color: #FFF;
  padding: 0px 0 60px; }
  @media screen and (max-width: 640px) {
    .container {
      background-color: #f0f0f0;
      padding: 0px 0 0px; } }

.scroll-area {
  position: absolute;
  top: -139px;
  left: 4%;
  display: inline-block; }

section {
  max-width: 1280px;
  margin-left: auto !important;
  margin-right: auto !important; }

#reason {
  position: relative;
  padding: 100px 0; }
  @media screen and (max-width: 640px) {
    #reason {
      /*background-color: #FFF;*/
      padding: 0px 0 0;
      box-shadow: 0px 9px 10px 0px rgba(0, 0, 0, 0.1);
      margin: 60px 0 80px; } }
  #reason .col-area {
    position: relative;
    z-index: 1;
    margin-bottom: 95px; }
    @media screen and (max-width: 640px) {
      #reason .col-area.pc {
        display: none; } }
    #reason .col-area .col {
      display: inline-block;
      vertical-align: middle;
      width: 48.9%; }
      #reason .col-area .col:first-child {
        margin-right: 1%; }
      #reason .col-area .col .col-inner {
        width: 94%;
        max-width: 430px;
        margin: 0 auto; }
      #reason .col-area .col h2 {
        /*                font-size: 25px;
                        font-family: "FP-ヒラギノ角ゴ ProN W6";
                        line-height: 1.7;
                        letter-spacing: 0.1em;
                        color: $main-color;*/
        max-width: 390px;
        margin-bottom: 10px; }
        @media screen and (max-width: 960px) {
          #reason .col-area .col h2 {
            /*font-size: 20px;*/
            margin-bottom: 8px; } }
      #reason .col-area .col .ja-small {
        font-size: 14px;
        font-family: "FP-ヒラギノ角ゴ ProN W6";
        line-height: 1.7;
        letter-spacing: 0.2em;
        color: #323232;
        margin-bottom: 40px; }
        @media screen and (max-width: 960px) {
          #reason .col-area .col .ja-small {
            font-size: 12px; } }
      #reason .col-area .col .stc {
        font-size: 14px;
        line-height: 1.7;
        letter-spacing: 0.1em;
        color: #323232;
        margin-bottom: 40px; }
        @media screen and (max-width: 960px) {
          #reason .col-area .col .stc {
            font-size: 12px; } }
      #reason .col-area .col .btn {
        margin: 0; }
  #reason .bg-box {
    height: 460px;
    text-align: center;
    background: url("../img/reason_img01_sp.jpg") no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover; }
    @media screen and (max-width: 480px) {
      #reason .bg-box {
        height: 350px; } }
    #reason .bg-box.sp {
      display: none; }
      @media screen and (max-width: 640px) {
        #reason .bg-box.sp {
          display: block; } }
    #reason .bg-box h2 {
      max-width: 390px;
      /*            font-size: 27px;
                  font-family: "FP-ヒラギノ角ゴ ProN W6";
                  line-height: 1.7;
                  letter-spacing: 0.1em;
                  color: #FFF;*/
      padding-top: 130px;
      margin: 0 auto 10px; }
      @media screen and (max-width: 480px) {
        #reason .bg-box h2 {
          /*font-size: 24px;*/
          padding: 90px 10px 0; } }
    #reason .bg-box .ja-small {
      font-size: 16px;
      font-family: "FP-ヒラギノ角ゴ ProN W6";
      line-height: 1.7;
      letter-spacing: 0.2em;
      color: #FFF;
      margin-bottom: 40px; }
      @media screen and (max-width: 480px) {
        #reason .bg-box .ja-small {
          font-size: 15px; } }
  #reason .item-area {
    position: relative;
    max-width: 90%;
    margin: 0 auto;
    z-index: 1; }
    @media screen and (max-width: 960px) {
      #reason .item-area {
        max-width: 96%;
        padding: 80px 0; } }
    @media screen and (max-width: 640px) {
      #reason .item-area {
        max-width: 100%;
        background-color: #FFF;
        padding: 60px 1.5em 30px; } }
    #reason .item-area .item {
      display: inline-block;
      vertical-align: top;
      width: 48.5%;
      /*max-width: 352px;*/
      margin-right: 2%;
      /*            @include max-screen($md) { // MAX- タブ
                                             width: 31%;
                  }*/ }
      @media screen and (max-width: 640px) {
        #reason .item-area .item {
          display: block;
          width: 100%;
          max-width: 100%;
          position: relative;
          margin-right: 0;
          margin-bottom: 30px; } }
      #reason .item-area .item:last-child {
        margin-right: 0; }
      #reason .item-area .item img {
        margin-bottom: 20px; }
        @media screen and (max-width: 960px) {
          #reason .item-area .item img {
            margin-bottom: 10px; } }
        @media screen and (max-width: 640px) {
          #reason .item-area .item img {
            margin-bottom: 0;
            width: 45%; } }
      #reason .item-area .item .stc-area {
        padding: 0 1em; }
        @media screen and (max-width: 960px) {
          #reason .item-area .item .stc-area {
            padding: 0 5px; } }
        @media screen and (max-width: 640px) {
          #reason .item-area .item .stc-area {
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 100px;
            padding: 0 0 0 50%;
            margin: auto; } }
      #reason .item-area .item h3 {
        font-size: 14px;
        font-family: "FP-ヒラギノ角ゴ ProN W6";
        line-height: 1.7;
        letter-spacing: 0.2em;
        color: #323232;
        margin-bottom: 17px; }
        @media screen and (max-width: 1280px) {
          #reason .item-area .item h3 {
            /*height: 40px;*/
            margin-bottom: 10px; } }
        @media screen and (max-width: 960px) {
          #reason .item-area .item h3 {
            font-size: 13px; } }
        @media screen and (max-width: 640px) {
          #reason .item-area .item h3 {
            height: 55px;
            font-size: 18px;
            line-height: 1.6; } }
        @media screen and (max-width: 480px) {
          #reason .item-area .item h3 {
            height: 60px;
            font-size: 14px;
            line-height: 1.5;
            letter-spacing: 0.05em; } }
      #reason .item-area .item p {
        font-size: 14px;
        line-height: 1.7;
        letter-spacing: 0.1em;
        color: #323232;
        margin-bottom: 17px; }
        @media screen and (max-width: 960px) {
          #reason .item-area .item p {
            font-size: 12px; } }
        @media screen and (max-width: 640px) {
          #reason .item-area .item p {
            display: none; } }
      #reason .item-area .item a {
        display: inline-block;
        font-size: 14px;
        line-height: 1.7;
        letter-spacing: 0.1em;
        color: #073c83;
        border-bottom: 1px solid #073c83;
        padding-bottom: 0; }
        @media screen and (max-width: 960px) {
          #reason .item-area .item a {
            font-size: 12px; } }
        @media screen and (max-width: 640px) {
          #reason .item-area .item a {
            font-size: 15px;
            font-family: "FP-ヒラギノ角ゴ ProN W6"; } }
        @media screen and (max-width: 480px) {
          #reason .item-area .item a {
            font-size: 14px; } }
        #reason .item-area .item a:hover {
          opacity: .7; }
  #reason .gray-area {
    position: absolute;
    top: 35%;
    left: 2%;
    width: 88%;
    max-width: 1130px;
    height: 65%;
    background-color: #f0f0f0;
    z-index: 0; }
    @media screen and (max-width: 640px) {
      #reason .gray-area {
        display: none; } }

@media screen and (max-width: 640px) {
  .btn {
    color: #FFF;
    background: none;
    border: 1px solid #FFF; } }
@media screen and (max-width: 640px) {
  .btn:hover {
    color: #FFF;
    background-color: #073c83;
    border: 1px solid #073c83; } }
@media screen and (max-width: 640px) {
  .btn:hover .arrow {
    background: url("../img/arrow_wht.svg") no-repeat center center; } }
@media screen and (max-width: 640px) {
  .btn .arrow {
    background: url("../img/arrow_wht.svg") no-repeat center center; } }

#about {
  position: relative;
  padding: 120px 0 0;
  margin-bottom: 50px; }
  @media screen and (max-width: 640px) {
    #about {
      /*background-color: #FFF;*/
      box-shadow: 0px 9px 10px 0px rgba(0, 0, 0, 0.1);
      padding: 0;
      margin: 60px 0 80px; } }
  #about .col-area {
    position: relative;
    z-index: 1;
    margin-bottom: 95px; }
    @media screen and (max-width: 640px) {
      #about .col-area.pc {
        display: none; } }
    #about .col-area .col {
      display: inline-block;
      vertical-align: middle;
      width: 48.9%; }
      #about .col-area .col:first-child {
        margin-right: 1%; }
      #about .col-area .col .col-inner {
        width: 94%;
        max-width: 450px;
        margin: 0 auto; }
      #about .col-area .col h2 {
        /*                font-size: 25px;
                        font-family: "FP-ヒラギノ角ゴ ProN W6";
                        line-height: 1.7;
                        letter-spacing: 0.1em;
                        color: $main-color;*/
        margin-bottom: 10px; }
        @media screen and (max-width: 960px) {
          #about .col-area .col h2 {
            /*font-size: 20px;*/
            margin-bottom: 8px; } }
      #about .col-area .col .ja-small {
        font-size: 14px;
        font-family: "FP-ヒラギノ角ゴ ProN W6";
        line-height: 1.7;
        letter-spacing: 0.2em;
        color: #323232;
        margin-bottom: 40px; }
        @media screen and (max-width: 960px) {
          #about .col-area .col .ja-small {
            font-size: 12px; } }
      #about .col-area .col .stc {
        font-size: 14px;
        line-height: 1.7;
        letter-spacing: 0.1em;
        color: #323232;
        margin-bottom: 40px; }
        @media screen and (max-width: 960px) {
          #about .col-area .col .stc {
            font-size: 12px; } }
      #about .col-area .col .btn {
        margin: 0; }
  #about .bg-box {
    height: 460px;
    text-align: center;
    background: url("../img/about_img01_sp.jpg") no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover; }
    @media screen and (max-width: 480px) {
      #about .bg-box {
        height: 350px; } }
    #about .bg-box.sp {
      display: none; }
      @media screen and (max-width: 640px) {
        #about .bg-box.sp {
          display: block; } }
    #about .bg-box h2 {
      max-width: 430px;
      /*            font-size: 27px;
                  font-family: "FP-ヒラギノ角ゴ ProN W6";
                  line-height: 1.7;
                  letter-spacing: 0.1em;
                  color: #FFF;*/
      padding-top: 130px;
      margin: 0 auto 10px; }
      @media screen and (max-width: 480px) {
        #about .bg-box h2 {
          /*font-size: 24px;*/
          padding: 90px 10px 0; } }
    #about .bg-box .ja-small {
      font-size: 16px;
      font-family: "FP-ヒラギノ角ゴ ProN W6";
      line-height: 1.7;
      letter-spacing: 0.2em;
      color: #FFF;
      margin-bottom: 40px; }
      @media screen and (max-width: 480px) {
        #about .bg-box .ja-small {
          font-size: 15px; } }
  #about .item-area {
    position: relative;
    max-width: 90%;
    margin: 0 auto;
    z-index: 1; }
    @media screen and (max-width: 960px) {
      #about .item-area {
        max-width: 96%;
        padding: 80px 0; } }
    @media screen and (max-width: 640px) {
      #about .item-area {
        max-width: 100%;
        padding: 60px 1.5em 30px; } }
    #about .item-area .item {
      display: inline-block;
      vertical-align: top;
      width: 31.1%;
      max-width: 352px;
      margin-bottom: 50px;
      margin-right: 2.5%; }
      @media screen and (max-width: 960px) {
        #about .item-area .item {
          width: 31%;
          margin-right: 2.4%; } }
      @media screen and (max-width: 640px) {
        #about .item-area .item {
          display: block;
          width: 100%;
          max-width: 100%;
          position: relative;
          margin-right: 0;
          margin-bottom: 30px; } }
      #about .item-area .item:nth-child(3n) {
        margin-right: 0; }
      #about .item-area .item img {
        margin-bottom: 20px; }
        @media screen and (max-width: 960px) {
          #about .item-area .item img {
            margin-bottom: 10px; } }
        @media screen and (max-width: 640px) {
          #about .item-area .item img {
            margin-bottom: 0;
            width: 45%; } }
      #about .item-area .item .stc-area {
        padding: 0 1em; }
        @media screen and (max-width: 960px) {
          #about .item-area .item .stc-area {
            padding: 0 5px; } }
        @media screen and (max-width: 640px) {
          #about .item-area .item .stc-area {
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 100px;
            padding: 0 0 0 50%;
            margin: auto; } }
      #about .item-area .item h3 {
        font-size: 14px;
        font-family: "FP-ヒラギノ角ゴ ProN W6";
        line-height: 1.7;
        letter-spacing: 0.2em;
        color: #323232;
        margin-bottom: 17px; }
        @media screen and (max-width: 1280px) {
          #about .item-area .item h3 {
            height: 40px;
            margin-bottom: 10px; } }
        @media screen and (max-width: 960px) {
          #about .item-area .item h3 {
            font-size: 13px; } }
        @media screen and (max-width: 640px) {
          #about .item-area .item h3 {
            height: 55px;
            font-size: 18px;
            line-height: 1.6; } }
        @media screen and (max-width: 480px) {
          #about .item-area .item h3 {
            font-size: 14px;
            line-height: 1.7;
            letter-spacing: 0.1em; } }
      #about .item-area .item p {
        font-size: 14px;
        line-height: 1.7;
        letter-spacing: 0.1em;
        color: #323232;
        margin-bottom: 17px; }
        @media screen and (max-width: 960px) {
          #about .item-area .item p {
            font-size: 12px; } }
        @media screen and (max-width: 640px) {
          #about .item-area .item p {
            display: none; } }
      #about .item-area .item a {
        display: inline-block;
        font-size: 14px;
        line-height: 1.7;
        letter-spacing: 0.1em;
        color: #073c83;
        border-bottom: 1px solid #073c83;
        padding-bottom: 0; }
        @media screen and (max-width: 960px) {
          #about .item-area .item a {
            font-size: 12px; } }
        @media screen and (max-width: 640px) {
          #about .item-area .item a {
            font-size: 15px;
            font-family: "FP-ヒラギノ角ゴ ProN W6"; } }
        @media screen and (max-width: 480px) {
          #about .item-area .item a {
            font-size: 14px; } }
        #about .item-area .item a:hover {
          opacity: .7; }
  #about .gray-area {
    position: absolute;
    top: 30%;
    right: 2%;
    width: 88%;
    max-width: 1130px;
    height: 72%;
    background-color: #f0f0f0;
    z-index: 0; }
    @media screen and (max-width: 640px) {
      #about .gray-area {
        display: none; } }

#technology {
  /*max-width: none;*/
  padding: 80px 0; }
  @media screen and (max-width: 640px) {
    #technology {
      /*background-color: #FFF;*/
      box-shadow: 0px 9px 10px 0px rgba(0, 0, 0, 0.1);
      padding: 0;
      margin: 60px 0 80px; } }
  #technology .bg-box {
    height: 420px;
    text-align: center;
    background: url("../img/technology_bg.jpg") no-repeat center center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover; }
    @media screen and (max-width: 1280px) {
      #technology .bg-box {
        background: url("../img/technology_bg.jpg") no-repeat center center; } }
    @media screen and (max-width: 480px) {
      #technology .bg-box {
        height: 350px; } }
    #technology .bg-box h2 {
      /*            font-size: 27px;
                  font-family: "FP-ヒラギノ角ゴ ProN W6";
                  line-height: 1.7;
                  letter-spacing: 0.1em;
                  color: #FFF;*/
      max-width: 435px;
      padding-top: 130px;
      margin: 0 auto 10px; }
      @media screen and (max-width: 480px) {
        #technology .bg-box h2 {
          /*font-size: 24px;*/
          padding: 90px 10px 0; } }
    #technology .bg-box .ja-small {
      font-size: 14px;
      font-family: "FP-ヒラギノ角ゴ ProN W6";
      line-height: 1.7;
      letter-spacing: 0.2em;
      color: #FFF;
      margin-bottom: 40px; }
      @media screen and (max-width: 640px) {
        #technology .bg-box .ja-small {
          font-size: 16px; } }
      @media screen and (max-width: 480px) {
        #technology .bg-box .ja-small {
          font-size: 15px; } }
    #technology .bg-box .btn {
      color: #FFF;
      border: 1px solid #FFF; }
      #technology .bg-box .btn:hover {
        color: #FFF;
        background-color: #073c83;
        border: 1px solid #073c83; }
        #technology .bg-box .btn:hover .arrow {
          background: url("../img/arrow_wht.svg") no-repeat center center; }
      #technology .bg-box .btn .arrow {
        background: url("../img/arrow_wht.svg") no-repeat center center; }
  #technology .stc-box {
    position: relative;
    /*top: -90px !important;*/
    width: 80%;
    max-width: 1120px;
    background-color: #FFF;
    padding: 70px 4% 0;
    margin: 0 auto; }
    @media screen and (max-width: 960px) {
      #technology .stc-box {
        width: 94%;
        padding: 70px 2% 0; } }
    @media screen and (max-width: 640px) {
      #technology .stc-box {
        width: 100%;
        /*top: 0;*/
        padding: 60px 1.5em 30px; } }
    #technology .stc-box .col-area {
      position: relative;
      z-index: 1;
      margin-bottom: 50px; }
      @media screen and (max-width: 640px) {
        #technology .stc-box .col-area {
          margin-bottom: 30px; } }
      #technology .stc-box .col-area .col {
        display: inline-block;
        vertical-align: middle;
        width: 48.5%; }
        @media screen and (max-width: 640px) {
          #technology .stc-box .col-area .col {
            width: 45%; } }
        #technology .stc-box .col-area .col:first-child {
          margin-right: 1%; }
          @media screen and (max-width: 640px) {
            #technology .stc-box .col-area .col:first-child {
              margin-right: 0%; } }
        @media screen and (max-width: 640px) {
          #technology .stc-box .col-area .col:last-child {
            position: absolute;
            top: 0;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 100px;
            padding: 0 0 0 50%;
            margin: auto; } }
        #technology .stc-box .col-area .col .col-inner {
          width: 94%;
          max-width: 350px;
          margin: 0 auto; }
          @media screen and (max-width: 640px) {
            #technology .stc-box .col-area .col .col-inner {
              width: 100%;
              max-width: none; } }
        #technology .stc-box .col-area .col h3 {
          font-size: 14px;
          font-family: "FP-ヒラギノ角ゴ ProN W6";
          line-height: 1.7;
          letter-spacing: 0.2em;
          color: #323232;
          margin-bottom: 30px; }
          @media screen and (max-width: 960px) {
            #technology .stc-box .col-area .col h3 {
              font-size: 20px;
              margin-bottom: 8px; } }
          @media screen and (max-width: 640px) {
            #technology .stc-box .col-area .col h3 {
              font-size: 14px;
              line-height: 1.7;
              letter-spacing: 0.1em; } }
        #technology .stc-box .col-area .col .stc {
          font-size: 14px;
          line-height: 1.7;
          letter-spacing: 0.1em;
          color: #323232;
          margin-bottom: 40px; }
          @media screen and (max-width: 960px) {
            #technology .stc-box .col-area .col .stc {
              font-size: 12px; } }
          @media screen and (max-width: 640px) {
            #technology .stc-box .col-area .col .stc {
              display: none; } }
        #technology .stc-box .col-area .col a {
          display: inline-block;
          font-size: 14px;
          line-height: 1.7;
          letter-spacing: 0.1em;
          color: #073c83;
          border-bottom: 1px solid #073c83;
          padding-bottom: 0; }
          @media screen and (max-width: 960px) {
            #technology .stc-box .col-area .col a {
              font-size: 12px; } }
          @media screen and (max-width: 640px) {
            #technology .stc-box .col-area .col a {
              font-size: 15px; } }
          @media screen and (max-width: 480px) {
            #technology .stc-box .col-area .col a {
              font-size: 14px; } }
          #technology .stc-box .col-area .col a:hover {
            opacity: .7; }
    #technology .stc-box .item-area {
      position: relative;
      margin: 0 auto;
      z-index: 1; }
      @media screen and (max-width: 640px) {
        #technology .stc-box .item-area {
          max-width: 100%;
          background-color: #FFF;
          padding: 0px; } }
      #technology .stc-box .item-area .item {
        display: inline-block;
        vertical-align: top;
        width: 31%;
        max-width: 352px;
        margin-right: 2.2%; }
        @media screen and (max-width: 640px) {
          #technology .stc-box .item-area .item {
            display: block;
            width: 100%;
            max-width: 100%;
            position: relative;
            margin-right: 0;
            margin-bottom: 30px; } }
        #technology .stc-box .item-area .item:last-child {
          margin-right: 0; }
        #technology .stc-box .item-area .item img {
          margin-bottom: 20px; }
          @media screen and (max-width: 960px) {
            #technology .stc-box .item-area .item img {
              margin-bottom: 10px; } }
          @media screen and (max-width: 640px) {
            #technology .stc-box .item-area .item img {
              margin-bottom: 0;
              width: 45%; } }
        #technology .stc-box .item-area .item .stc-area {
          padding: 0 1em; }
          @media screen and (max-width: 960px) {
            #technology .stc-box .item-area .item .stc-area {
              padding: 0 5px; } }
          @media screen and (max-width: 640px) {
            #technology .stc-box .item-area .item .stc-area {
              position: absolute;
              top: 0;
              bottom: 0;
              left: 0;
              width: 100%;
              height: 100px;
              padding: 0 0 0 50%;
              margin: auto; } }
        #technology .stc-box .item-area .item h3 {
          font-size: 14px;
          font-family: "FP-ヒラギノ角ゴ ProN W6";
          line-height: 1.7;
          letter-spacing: 0.2em;
          color: #323232;
          margin-bottom: 17px; }
          @media screen and (max-width: 960px) {
            #technology .stc-box .item-area .item h3 {
              font-size: 13px; } }
          @media screen and (max-width: 640px) {
            #technology .stc-box .item-area .item h3 {
              height: 55px;
              font-size: 18px;
              line-height: 1.6; } }
          @media screen and (max-width: 480px) {
            #technology .stc-box .item-area .item h3 {
              font-size: 14px;
              line-height: 1.7;
              letter-spacing: 0.1em; } }
        #technology .stc-box .item-area .item p {
          font-size: 14px;
          line-height: 1.7;
          letter-spacing: 0.1em;
          color: #323232;
          margin-bottom: 17px; }
          @media screen and (max-width: 960px) {
            #technology .stc-box .item-area .item p {
              font-size: 12px; } }
          @media screen and (max-width: 640px) {
            #technology .stc-box .item-area .item p {
              display: none; } }
        #technology .stc-box .item-area .item a {
          display: inline-block;
          font-size: 14px;
          line-height: 1.7;
          letter-spacing: 0.1em;
          color: #073c83;
          border-bottom: 1px solid #073c83;
          padding-bottom: 0; }
          @media screen and (max-width: 960px) {
            #technology .stc-box .item-area .item a {
              font-size: 12px; } }
          @media screen and (max-width: 640px) {
            #technology .stc-box .item-area .item a {
              font-size: 15px;
              font-family: "FP-ヒラギノ角ゴ ProN W6"; } }
          @media screen and (max-width: 480px) {
            #technology .stc-box .item-area .item a {
              font-size: 14px; } }
          #technology .stc-box .item-area .item a:hover {
            opacity: .7; }

#middle-area {
  overflow: hidden;
  position: relative;
  padding: 0 0 80px; }
  @media screen and (max-width: 640px) {
    #middle-area {
      padding: 0; } }
  #middle-area .col-area {
    position: relative;
    max-width: 1120px;
    margin: 0 auto;
    z-index: 1; }
    #middle-area .col-area .col {
      position: relative;
      float: left;
      width: 50%;
      height: 500px;
      text-align: center; }
      @media screen and (max-width: 640px) {
        #middle-area .col-area .col {
          float: none;
          width: 100%;
          height: 350px; } }
      #middle-area .col-area .col:first-child {
        background: url("../img/middle_img01.jpg") no-repeat center center;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover; }
      #middle-area .col-area .col:last-child {
        background: url("../img/middle_img02.jpg") no-repeat center center;
        -webkit-background-size: cover;
        -moz-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
        margin-top: 50px; }
        @media screen and (max-width: 640px) {
          #middle-area .col-area .col:last-child {
            margin-top: 0px; } }
      #middle-area .col-area .col .col-inner {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        width: 94%;
        height: 170px;
        margin: auto; }
      #middle-area .col-area .col h3 {
        /*                font-size: 25px;
                        font-family: "FP-ヒラギノ角ゴ ProN W6";
                        line-height: 1.7;
                        letter-spacing: 0.2em;
                        color: #FFF;*/
        margin-bottom: 8px; }
        @media screen and (max-width: 480px) {
          #middle-area .col-area .col h3 {
            /*font-size: 24px;*/ } }
        #middle-area .col-area .col h3.staff {
          max-width: 410px;
          margin: 0 auto; }
        #middle-area .col-area .col h3.recruit {
          max-width: 135px;
          margin: 0 auto; }
      #middle-area .col-area .col .ja-small {
        font-size: 14px;
        font-family: "FP-ヒラギノ角ゴ ProN W6";
        line-height: 1.7;
        letter-spacing: 0.2em;
        color: #FFF;
        margin-bottom: 40px; }
        @media screen and (max-width: 640px) {
          #middle-area .col-area .col .ja-small {
            font-size: 16px; } }
        @media screen and (max-width: 480px) {
          #middle-area .col-area .col .ja-small {
            font-size: 15px; } }
      #middle-area .col-area .col .btn {
        color: #FFF;
        background: none;
        border: 1px solid #FFF; }
        @media screen and (max-width: 640px) {
          #middle-area .col-area .col .btn {
            color: #FFF;
            background: none; } }
        #middle-area .col-area .col .btn:hover {
          color: #073c83;
          background-color: #FFF; }
          @media screen and (max-width: 640px) {
            #middle-area .col-area .col .btn:hover {
              border: 1px solid #073c83; } }
          #middle-area .col-area .col .btn:hover .arrow {
            background: url("../img/arrow.svg") no-repeat center center; }
        #middle-area .col-area .col .btn .arrow {
          background: url("../img/arrow_wht.svg") no-repeat center center; }
          @media screen and (max-width: 640px) {
            #middle-area .col-area .col .btn .arrow {
              background: url("../img/arrow_wht.svg") no-repeat center center; } }
  #middle-area .gray-area {
    position: absolute;
    top: 26%;
    left: 0;
    width: 88%;
    max-width: 1130px;
    height: 80%;
    background-color: #f0f0f0;
    z-index: 0; }

/*# sourceMappingURL=top.css.map */
