@charset "UTF-8";
/*!===========================
このcssはSassから生成されていますので、
直接編集しないようご注意ください。
===========================*/
@media (max-width: 767px) {
  html {
    font-size: 31.25%; }

  /* class
  ============================== */
  .pc {
    display: none; }

  .sp {
    display: block; }

  img.sp,
  span.sp {
    display: inline; }

  table.sp {
    display: table; }

  .alignleft,
  .alignright {
    float: none;
    max-width: 100% !important;
    margin-bottom: 0; }

  .alignleft {
    margin-right: 0; }

  .alignright {
    margin-left: 0; }

  .col:not(table) {
    display: block; }
    .col:not(table) > * {
      width: auto !important;
      margin-left: 0 !important; }
      .col:not(table) > *:nth-child(n+2) {
        margin-top: 2rem !important; }
    .col:not(table) > table {
      width: 100% !important; }

  .btn, .btn02, .form [type="button"],
  .form [type="submit"],
  .form [type="reset"] {
    font-size: 2.8rem; }

  .scroll {
    overflow-x: auto; }
    .scroll::-webkit-scrollbar {
      height: 5px; }
    .scroll::-webkit-scrollbar-track, .scroll::-webkit-scrollbar-thumb {
      border-radius: 5px; }
    .scroll::-webkit-scrollbar-track {
      background: #CCCCCC; }
    .scroll::-webkit-scrollbar-thumb {
      background: #666666; }
    .scroll table {
      white-space: nowrap; }

  /* form
  ============================== */
  .form [type="text"],
  .form [type="number"],
  .form [type="search"],
  .form [type="email"],
  .form [type="tel"],
  .form [type="url"],
  .form [type="password"],
  .form [type="date"],
  .form [type="datetime-local"],
  .form [type="month"],
  .form [type="week"],
  .form [type="time"],
  .form textarea,
  .form select {
    font-size: 1.6rem; }

  .form .form-table {
    display: block; }
    .form .form-table > dt,
    .form .form-table > dd {
      width: auto;
      padding-left: 0;
      padding-right: 0; }
    .form .form-table > dt {
      font-weight: bold; }
    .form .form-table > dd {
      padding-top: 0;
      border: 0; }

  /* ==================================================
  header
  ================================================== */
  header {
    padding: 6px 0; }

  #hlogo {
    width: 230px;
    margin: 0 auto; }

  #gnav {
    font-size: 4.0rem; }

  .drawer-hamburger {
    width: 20px; }

  .drawer-hamburger-icon {
    margin: 7px 0; }
    .drawer-hamburger-icon::before {
      top: -7px; }
    .drawer-hamburger-icon::after {
      top: 7px; }

  /* ==================================================
  footer
  ================================================== */
  #fnav li a {
    font-size: 2.6rem;
    line-height: 1.3; }

  #fnav1 li {
    width: 28%;
    max-width: inherit; }

  .btn-taiken {
    padding: .8em 0rem 18rem .8em; }

  /* ==================================================
  main
  ================================================== */
  /* top
  ============================== */
  #top-kv {
    padding: 0 20px 40px;
    background: url("../img/top-kv-bg01-sp.jpg") top center/cover no-repeat; }
    #top-kv .cp-txt {
      padding: 70px 20px 50px; }
    #top-kv .cp-txt02 {
      margin: 1.0em auto 0;
      padding: 5px; }

  #top-kv02 {
    padding: 156% 0 0;
    background: url("../img/top-kv-bg02-sp.jpg") center top/cover no-repeat; }

  .top-about {
    padding: 0 0 110% !important;
    background: url("../img/top-about-bg01-sp.jpg") bottom center/cover no-repeat;
    min-height: 640px; }
    .top-about .txt {
      font-size: 2.5rem;
      top: calc(50% - 33%); } }
    @media (max-width: 767px) and (max-width: 340px) {
      .top-about .txt {
        font-size: 2.3rem; } }

@media (max-width: 767px) {
  .top-feature {
    background: #000 url("../img/top-feature-bg01-2.jpg") center top/110% no-repeat; }
    .top-feature .wrap {
      margin-top: 67.5%; }
      .top-feature .wrap .title {
        width: inherit;
        max-width: inherit; }
      .top-feature .wrap .feature-list {
        margin-top: 2.0em; }
        .top-feature .wrap .feature-list li {
          text-align: center; }
        .top-feature .wrap .feature-list .no01 {
          padding-right: 0; }
        .top-feature .wrap .feature-list .no02 {
          padding-right: 0; }
          .top-feature .wrap .feature-list .no02::before {
            display: none; }
        .top-feature .wrap .feature-list .no04 {
          padding-right: 0;
          padding-bottom: 65%; }
          .top-feature .wrap .feature-list .no04::before {
            content: '';
            background: url("../img/top-feature-bg03.png") center bottom/contain no-repeat;
            width: 100%;
            height: 100%;
            position: absolute;
            bottom: 0;
            right: 0;
            z-index: -1; }

  .top-cp .title-area {
    margin-top: 3.0em;
    padding: 1.0em 0 2.5em; }
    .top-cp .title-area .txt01 {
      padding: 0 55px;
      top: -10%; }
    .top-cp .title-area .txt02 {
      padding: 0.4em 40px;
      font-size: 4.6rem; }
    .top-cp .title-area .title {
      padding: 0 20px; }
  .top-cp .cp-area {
    padding: 2.0em 20px;
    background: url("../img/top-cp-bg01.jpg") right -80px center/cover no-repeat; }
    .top-cp .cp-area .title {
      top: -0.8%; }
    .top-cp .cp-area.stop {
      background: url("../img/top-cp-bg01.jpg") right center/cover no-repeat; }
  .top-cp .cp-area02 {
    padding: 2.0em 15px; }
    .top-cp .cp-area02 .cp-main .cp-head::before, .top-cp .cp-area02 .cp-main .cp-head::after {
      width: 40px;
      height: 40px; }
    .top-cp .cp-area02 .cp-main .cp-head::before {
      border-top: 5px solid #fff000;
      border-left: 5px solid #fff000; }
    .top-cp .cp-area02 .cp-main .cp-head::after {
      border-top: 5px solid #fff000;
      border-right: 5px solid #fff000; }
    .top-cp .cp-area02 .cp-main .cp-foot::before, .top-cp .cp-area02 .cp-main .cp-foot::after {
      width: 40px;
      height: 40px; }
    .top-cp .cp-area02 .cp-main .cp-foot::before {
      border-bottom: 5px solid #fff000;
      border-left: 5px solid #fff000; }
    .top-cp .cp-area02 .cp-main .cp-foot::after {
      border-bottom: 5px solid #fff000;
      border-right: 5px solid #fff000; }
    .top-cp .cp-area02 .cp-main .cp-body {
      margin: -25px 15px;
      padding: 1.5em; }
  .top-cp .cp-area03 {
    padding: 2.0em 15px; }
  .top-cp .cp-area04 {
    padding: 2.0em 15px; }
  .top-cp .cp-area05 .cp-main {
    width: 100%;
    margin-left: 0vw; }
  .top-cp .cp-area05 .cp-btn {
    margin-top: 11em;
    padding: 0 15px; }
  .top-cp .cp-area05 .cta1 {
    margin-top: -49vw;
    margin-left: 41vw; }
  .top-cp .cp-area05 .cta2 {
    margin-top: 4.5vw;
    margin-left: 41vw; }
  .top-cp .cp-area05 .cta1 p img {
    width: 25px; }
  .top-cp .cp-area05 .cta2 p img {
    width: 25px; }
  .top-cp .cp-area05 .cp-men {
    width: 100%; }
  .top-cp .btn-area {
    padding: 2.0em 20px 0; }
    .top-cp .btn-area .cp-btn {
      padding: 0; }
    .top-cp .btn-area .flow {
      margin: 2.0em -20px 0;
      padding: 2.0em 1.0em; }
    .top-cp .btn-area .corona {
      margin: 0 -20px 0;
      padding: 2.0em 1.0em;
      border-radius: 0; }

  .top-facility02 .title-area .txt, .top-facility03 .title-area .txt {
    font-size: 3.4rem; }
  .top-facility02 .info-area, .top-facility03 .info-area {
    text-align: left; }
    .top-facility02 .info-area .txt, .top-facility03 .info-area .txt {
      font-size: 2.8rem; }
  .top-facility02 .info-area02 .logo-area dl dd, .top-facility03 .info-area02 .logo-area dl dd {
    font-size: 2.4rem; }
  .top-facility02 .photo, .top-facility03 .photo {
    padding: 45% 15px 0; }
    .top-facility02 .photo .wrap, .top-facility03 .photo .wrap {
      padding: 1.2em 15px; }
      .top-facility02 .photo .wrap .txt-atn, .top-facility03 .photo .wrap .txt-atn {
        font-size: 1.3rem; }
  .top-facility02 .machine-info, .top-facility03 .machine-info {
    padding: 2.0em 0; }
    .top-facility02 .machine-info .machine-title .title, .top-facility03 .machine-info .machine-title .title {
      font-size: 4.2rem; }
    .top-facility02 .machine-info .logo-area dl dd, .top-facility03 .machine-info .logo-area dl dd {
      font-size: 2.4rem; }
    .top-facility02 .machine-info .machine-name, .top-facility03 .machine-info .machine-name {
      margin: 2.0em auto 0;
      padding: 0 15px; }

  .top-facility02 .title-area .title {
    padding: 0 4.0em; }

  .top-facility03 .photo.no03 {
    padding: 45% 15px 0; }
  .top-facility03 .photo.no04 {
    padding: 35% 15px 0; }

  .top-support .wrap .title {
    padding: 0 0 100px;
    font-size: 3.0rem; }
    .top-support .wrap .title::after {
      width: 80px;
      height: 80px; }
  .top-support .wrap .system .system-title {
    font-size: 4.8rem; }
  .top-support .wrap .system .txt {
    font-size: 3.0rem;
    text-align: left; }

  .top-other .title-area {
    padding: 1.0em 15px 45%; }
    .top-other .title-area .title {
      font-size: 4.8rem; }
  .top-other .info-area {
    padding: 0 15px 220%;
    min-height: 975px; }
    .top-other .info-area .info-list {
      padding: 0 30px;
      max-width: 500px;
      top: -15px; }
      .top-other .info-area .info-list li {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%; }
        .top-other .info-area .info-list li:nth-child(n + 2) {
          margin-top: 1.0em; }
        .top-other .info-area .info-list li .photo {
          width: 32.5%; }
        .top-other .info-area .info-list li .txt-area {
          margin: 0;
          width: 62.5%; }
          .top-other .info-area .info-list li .txt-area .title {
            font-size: 3.8rem;
            text-align: left; }
          .top-other .info-area .info-list li .txt-area .txt {
            font-size: 2.6rem;
            text-align: left; }

  .top-price .wrap .title {
    font-size: 4.8rem; }
  .top-price .wrap .price-area .price-title {
    font-size: 4.0rem; }
  .top-price .wrap .price-area .price-title02 {
    font-size: 3.3rem; }
  .top-price .wrap .price-area .price {
    margin-top: 0.7em; }
    .top-price .wrap .price-area .price img {
      border-radius: 0.8em;
      box-shadow: -3px 3px 7px #ccc;
      width: 100%; }
  .top-price .wrap .price-area .col {
    display: flex !important; }
    .top-price .wrap .price-area .col li {
      /*width: 48% !important;
      &:nth-child(n + 2) {
      	margin-top: 0 !important;
      }
      &:nth-child(n + 3) {
      	margin-top: 2.0em !important;
      }*/ }

  #top-access .logo {
    max-width: 240px; }
  #top-access .shop-name {
    flex-direction: column; }
    #top-access .shop-name .ico {
      padding: 0.5em 1.5em;
      font-size: 2.2rem; }
    #top-access .shop-name .name {
      margin: 0.5em 0 0;
      font-size: 3.8rem; }
  #top-access .add {
    font-size: 2.6rem; }
  #top-access .gmap {
    margin-top: 4rem; }
  #top-access .parking {
    max-width: 150px; }

  #content .top-pr-anniv .wrap .btn-wrap {
    position: absolute;
    left: 9%;
    bottom: 10.5%;
    width: 82%; }
  #content .top-pr-anniv .wrap .btn-wrap1 {
    position: absolute;
    right: 9%;
    bottom: 7.8%;
    width: 82%; } }

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