/******* setting.scss *******/
/******* mixin.scss *******/
@media screen and (max-width: 960px) {
  /* line 5, ../sass/sp.scss */
  div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fildset, input, textarea, p, blockquote, table, th, td, address, div {
    font-size: 2.8vw;
    line-height: 180%;
  }

  /* line 2, ../sass/_sp-960.scss */
  .menuOpen {
    height: 100%;
    overflow: hidden;
  }

  /* line 7, ../sass/_sp-960.scss */
  br.sp {
    display: inline-block;
  }

  /* line 11, ../sass/_sp-960.scss */
  img.sp {
    display: inline-block;
  }
  /* line 13, ../sass/_sp-960.scss */
  img.sp + img {
    display: none;
  }

  /* line 18, ../sass/_sp-960.scss */
  .wrapper {
    min-width: 100vw;
  }

  /****** header ******/
  /* line 25, ../sass/_sp-960.scss */
  header {
    height: 20vw;
    padding: 0;
  }
  /* line 28, ../sass/_sp-960.scss */
  header p.logo {
    margin: auto 4vw;
    left: 0;
    right: 0;
    top: 6vw;
    width: 46vw;
    height: 10vw;
    padding: 0;
  }
  /* line 36, ../sass/_sp-960.scss */
  header p.logo a {
    width: 100%;
    height: 100%;
    background-size: contain;
  }
  /* line 42, ../sass/_sp-960.scss */
  header .spMenu {
    display: block;
    height: 6vw;
    width: 6vw;
    position: absolute;
    right: 8vw;
    top: 7vw;
  }
  /* line 49, ../sass/_sp-960.scss */
  header .spMenu span {
    background-color: #333;
    height: 2px;
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 100%;
    transition: all 0.6s;
  }
  /* line 56, ../sass/_sp-960.scss */
  header .spMenu span:nth-child(2) {
    top: 50%;
    margin-top: -0.5px;
  }
  /* line 60, ../sass/_sp-960.scss */
  header .spMenu span:nth-child(3) {
    top: auto;
    bottom: 0;
  }
  /* line 66, ../sass/_sp-960.scss */
  header .headNav {
    display: block;
    position: absolute;
    max-height: 0;
    overflow: scroll;
    transition: all 0.6s;
    width: 100%;
    height: 80vh;
    box-sizing: border-box;
  }
  /* line 75, ../sass/_sp-960.scss */
  header .headNav nav {
    display: block;
  }
  /* line 77, ../sass/_sp-960.scss */
  header .headNav nav ul {
    border-right: none;
    display: block;
    padding: 2vh 0;
  }
  /* line 81, ../sass/_sp-960.scss */
  header .headNav nav ul li {
    display: block;
    border-left: none;
    margin-right: 0;
    letter-spacing: 0.1em;
    padding: 0;
    margin-bottom: 10px;
  }
  /* line 88, ../sass/_sp-960.scss */
  header .headNav nav ul li:nth-child(3), header .headNav nav ul li:nth-child(4) {
    padding: 0;
  }
  /* line 92, ../sass/_sp-960.scss */
  header .headNav nav ul li a {
    border: none;
    display: block;
    padding: 3vh 4vw;
    height: auto;
    text-align: center;
  }
  /* line 98, ../sass/_sp-960.scss */
  header .headNav nav ul li a:after {
    display: none !important;
  }
  /* line 108, ../sass/_sp-960.scss */
  header.scroll .spMenu span {
    background-color: #136896;
  }

  /* line 118, ../sass/_sp-960.scss */
  .menuOpen header .spMenu span {
    background-color: #136896;
  }
  /* line 120, ../sass/_sp-960.scss */
  .menuOpen header .spMenu span:nth-child(1) {
    top: 50%;
    transform: rotate(135deg);
  }
  /* line 124, ../sass/_sp-960.scss */
  .menuOpen header .spMenu span:nth-child(2) {
    left: 50%;
    width: 0;
  }
  /* line 128, ../sass/_sp-960.scss */
  .menuOpen header .spMenu span:nth-child(3) {
    top: 50%;
    bottom: auto;
    transform: rotate(-135deg);
  }
  /* line 135, ../sass/_sp-960.scss */
  .menuOpen header .headNav {
    max-height: 100vh;
    background-color: rgba(255, 255, 255, 0.9);
    margin-top: 20vw;
    padding: 0 0 80px;
  }
  /* line 143, ../sass/_sp-960.scss */
  .menuOpen header nav ul li {
    display: block;
    margin-bottom: 0;
  }

  /****** footer ******/
  /* line 154, ../sass/_sp-960.scss */
  .pageTop {
    bottom: 4vw;
    right: 4vw;
  }
  /* line 157, ../sass/_sp-960.scss */
  .pageTop a {
    width: 40px;
    height: 40px;
    background-size: 100%;
  }

  /* line 165, ../sass/_sp-960.scss */
  footer {
    border-top: 2px solid #136896;
  }
  /* line 167, ../sass/_sp-960.scss */
  footer ul {
    display: flex;
    border-bottom: 1px dotted #ccc;
    flex-wrap: wrap;
  }
  /* line 171, ../sass/_sp-960.scss */
  footer ul li {
    padding: 40px;
  }
  /* line 173, ../sass/_sp-960.scss */
  footer ul li a {
    text-decoration: none;
  }
  /* line 177, ../sass/_sp-960.scss */
  footer ul.footSns {
    justify-content: center;
  }
  /* line 179, ../sass/_sp-960.scss */
  footer ul.footSns li a {
    font-size: 161%;
    color: #136896;
  }
  /* line 185, ../sass/_sp-960.scss */
  footer ul.link {
    border: none;
    margin-bottom: 8vw;
  }
  /* line 188, ../sass/_sp-960.scss */
  footer ul.link li {
    width: 100vw;
    box-sizing: border-box;
    border-bottom: 1px dotted #ccc;
    padding: 0;
  }
  /* line 193, ../sass/_sp-960.scss */
  footer ul.link li a {
    display: block;
    padding: 4vw;
  }
  /* line 200, ../sass/_sp-960.scss */
  footer p {
    text-align: center;
    margin-bottom: 8vw;
  }
  /* line 205, ../sass/_sp-960.scss */
  footer section p {
    margin: 0 auto 8vw;
  }
  /* line 207, ../sass/_sp-960.scss */
  footer section p.logo {
    margin: 0 auto 8vw;
  }
  /* line 209, ../sass/_sp-960.scss */
  footer section p.logo a {
    background-size: contain;
    width: 62vw;
  }
  /* line 216, ../sass/_sp-960.scss */
  footer .footCopy {
    padding: 10px 0;
    background-color: #136896;
    color: #fff;
    margin: 0;
  }

  /******main******/
  /* line 226, ../sass/_sp-960.scss */
  h2 {
    font-size: 12vw;
  }

  /* line 229, ../sass/_sp-960.scss */
  .inner {
    width: 100vw;
    box-sizing: border-box;
  }

  /* line 235, ../sass/_sp-960.scss */
  #topics .inner {
    width: 92vw;
    box-sizing: border-box;
  }

  /* line 241, ../sass/_sp-960.scss */
  .itemList {
    width: 92vw;
  }
  /* line 243, ../sass/_sp-960.scss */
  .itemList h2 {
    text-align: center;
  }
  /* line 246, ../sass/_sp-960.scss */
  .itemList .item {
    margin-right: 0;
  }

  /* line 251, ../sass/_sp-960.scss */
  table {
    width: 100vw;
  }

  /* line 255, ../sass/_sp-960.scss */
  .tab {
    padding: 0 4vw;
  }
  /* line 257, ../sass/_sp-960.scss */
  .tab li {
    width: 92vw;
    margin-bottom: 4vw;
  }

  /******** index ********/
  /* line 266, ../sass/_sp-960.scss */
  #index section.vaArea {
    height: auto;
  }
  /* line 268, ../sass/_sp-960.scss */
  #index section.vaArea h1 {
    top: 46vh;
    font-size: 240%;
    color: #fff;
  }
  /* line 273, ../sass/_sp-960.scss */
  #index section.vaArea .mainVisual {
    height: 100vh;
    width: 100vw;
  }
  /* line 277, ../sass/_sp-960.scss */
  #index section.vaArea .news {
    position: static;
    display: block;
  }
  /* line 281, ../sass/_sp-960.scss */
  #index section.vaArea .news .leftArea h2 {
    font-size: 12vw;
  }
  /* line 284, ../sass/_sp-960.scss */
  #index section.vaArea .news .leftArea .btnw {
    margin: 0 auto;
  }
  /* line 288, ../sass/_sp-960.scss */
  #index section.vaArea .news .rightArea {
    box-sizing: border-box;
  }
  /* line 293, ../sass/_sp-960.scss */
  #index .about {
    width: 100vw;
    margin-bottom: 0;
    padding-top: 100px;
  }
  /* line 297, ../sass/_sp-960.scss */
  #index .about h2 {
    text-align: center;
  }
  /* line 299, ../sass/_sp-960.scss */
  #index .about h2 strong {
    font-size: 12vw;
  }
  /* line 304, ../sass/_sp-960.scss */
  #index .info {
    display: block;
    padding: 0;
    width: 100vw;
    background: none;
  }
  /* line 309, ../sass/_sp-960.scss */
  #index .info.last {
    margin-bottom: 0;
  }
  /* line 312, ../sass/_sp-960.scss */
  #index .info .detail {
    width: 100%;
    text-align: center;
    padding: 24vw 8vw 16vw;
    box-sizing: border-box;
    background-color: #136896;
  }
  /* line 318, ../sass/_sp-960.scss */
  #index .info .detail h2 {
    text-align: center;
  }
  /* line 320, ../sass/_sp-960.scss */
  #index .info .detail h2 strong {
    font-size: 12vw;
  }
  /* line 324, ../sass/_sp-960.scss */
  #index .info .detail .btnw {
    margin: 0 auto;
  }
  /* line 328, ../sass/_sp-960.scss */
  #index .info figure {
    width: 100vw;
    box-shadow: none;
  }
  /* line 335, ../sass/_sp-960.scss */
  #index .blog h2 strong {
    font-size: 12vw;
  }

  /******** ACCESS ********/
  /* line 345, ../sass/_sp-960.scss */
  #access .map {
    width: 100vw;
  }
  /* line 348, ../sass/_sp-960.scss */
  #access .detail {
    width: 100vw;
    padding: 0 4vw;
    box-sizing: border-box;
  }
  /* line 352, ../sass/_sp-960.scss */
  #access .detail dl {
    display: block;
    width: 92vw;
    text-align: center;
  }
  /* line 356, ../sass/_sp-960.scss */
  #access .detail dl dt, #access .detail dl dd {
    width: 100%;
    text-align: center;
    padding: 0;
    border: none;
  }

  /******** contact ********/
  /* line 368, ../sass/_sp-960.scss */
  #contact .telArea {
    padding: 0 4vw;
  }
  /* line 370, ../sass/_sp-960.scss */
  #contact .telArea dl {
    padding: 4vw;
  }
  /* line 378, ../sass/_sp-960.scss */
  #contact .formArea form table tr th, #contact .formArea form table tr td {
    display: block;
    width: 100%;
  }
  /* line 382, ../sass/_sp-960.scss */
  #contact .formArea form table tr th {
    border-bottom: 0;
  }
  /* line 385, ../sass/_sp-960.scss */
  #contact .formArea form table tr td {
    padding-top: 0;
  }

  /****** RECRUIT ******/
  /* line 398, ../sass/_sp-960.scss */
  #recruit .about h2 {
    font-size: 8vw;
  }
  /* line 401, ../sass/_sp-960.scss */
  #recruit .about p {
    padding: 0 4vw;
  }
  /* line 406, ../sass/_sp-960.scss */
  #recruit .detail h2 {
    font-size: 8vw;
  }

  /****** COMPANY ******/
  /* line 417, ../sass/_sp-960.scss */
  #company .about h2,
  #company .detail h2 {
    font-size: 8vw;
  }

  /****** blog ******/
  /* line 426, ../sass/_sp-960.scss */
  #blog .itemList,
  #blog .pager,
  #blog .cont,
  #blog #pageNavi {
    width: 92vw;
    margin: 0 auto 8vw;
    padding: 0 4vw;
  }
  /* line 435, ../sass/_sp-960.scss */
  #blog .cont img {
    max-width: 92vw;
    height: auto;
  }
  /* line 441, ../sass/_sp-960.scss */
  #blog #pageNavi a.btn {
    width: 28vw;
    box-sizing: border-box;
    margin: 4vw;
  }
  /* line 446, ../sass/_sp-960.scss */
  #blog #pageNavi p {
    padding: 4vw 0;
  }
}
@media screen and (max-width: 470px) {
  /* line 21, ../sass/sp.scss */
  div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fildset, input, textarea, p, blockquote, table, th, td, address {
    font-size: 3.4vw;
  }

  /* line 2, ../sass/_sp-470.scss */
  #index .h205 {
    background: linear-gradient(rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 12%, rgba(255, 255, 255, 0.9) 12%, rgba(255, 255, 255, 0.9) 100%), url(../img/index/bg04.jpg) no-repeat 50% 0;
    background-size: 150%;
  }
}
