@charset "UTF-8";
/*変数*/
/*色の変数*/
/*font*/
/*画面マックスサイズ*/
@media screen and (max-width: 768px) {
  .spacer {
    height: 177px; }

  .spacer-ex {
    height: 70px !important; }

  header {
    transition: all 0.1s cubic-bezier(0, 0, 0, 1);
    width: 100%;
    height: 177px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    background-color: #000000; }
    header .header-inner {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      display: flex;
      justify-content: space-between;
      align-items: flex-start; }
      header .header-inner .header-title {
        width: 100px;
        margin: 20px auto;
        transition: all 0.1s cubic-bezier(0, 0, 0, 1); }
        header .header-inner .header-title img {
          width: 100%; }
      header .header-inner nav .menu2 {
        width: auto;
        padding-top: 50px; }
        header .header-inner nav .menu2 > li {
          box-sizing: inherit;
          margin: auto;
          margin-top: 50px;
          width: 100%; }
          header .header-inner nav .menu2 > li img {
            width: 100%;
            margin: auto; }
        header .header-inner nav .menu2 .menu2-title1 img {
          width: 129px; }
        header .header-inner nav .menu2 .menu2-title2 img {
          width: 46.8px; }
        header .header-inner nav .menu2 .menu2-title3 img {
          width: 100px; }
        header .header-inner nav .menu2 .menu2-title4 img {
          width: 99.4px; }
        header .header-inner nav .menu2 .menu2-title5 img {
          width: 46.4px; }
        header .header-inner nav .menu2 .menu2-title6 img {
          width: 90.4px; }
        header .header-inner nav .menu2 .menu2-title7 img {
          width: 149.2px; }

  .headerAdjust {
    height: 70px;
    transition: all 0.1s cubic-bezier(0, 0, 0, 1); }
    .headerAdjust .header-title {
      width: 40px !important;
      margin: 7.5px auto !important; }
      .headerAdjust .header-title img {
        width: 100%; }

  main {
    display: block; }
    main .main002 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      z-index: 1;
      background-color: #1a1a1a;
      background-image: url("../img/main001-003_sp.png");
      background-size: 85.73vw auto;
      background-position: top -85vw right 0;
      background-repeat: no-repeat;
      padding-top: 30vw; }
      main .main002-img1 {
        width: 72.07%;
        max-width: autp;
        margin: 0 auto 30vw; }
      main .main002-parts1 {
        width: 100%;
        position: relative;
        margin-top: 40px;
        z-index: 2; }
        main .main002-parts1--img1 {
          width: 100%; }
      main .main002-parts2 {
        width: 100%;
        margin-top: -18vw;
        position: relative;
        z-index: 3; }
        main .main002-parts2--img1 {
          width: 96.8%;
          margin-left: auto;
          margin-right: 0; }
      main .main002-parts3 {
        width: 100%;
        position: relative;
        z-index: 4; }
        main .main002-parts3--img2 {
          position: absolute;
          top: -18.2vw;
          left: 8.9vw;
          width: 15vw; }
        main .main002-parts3_1 {
          position: relative;
          width: 100%; }
          main .main002-parts3_1--img3 {
            width: 57.19vw;
            max-width: auto;
            margin-left: 20.39vw; }
          main .main002-parts3_1--img4 {
            width: 70vw;
            max-width: auto;
            margin-left: 20.39vw;
            margin-top: 3.65vw; }
    main .main003 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      z-index: 1;
      margin-top: 18.29vw; }
      main .main003-parts1 {
        width: 100%;
        position: relative;
        z-index: 2; }
        main .main003-parts1--img1 {
          width: 100%;
          margin-left: auto;
          margin-right: 0; }
        main .main003-parts1--img2 {
          position: absolute;
          top: 72vw;
          left: 4vw;
          width: 21.21vw; }
        main .main003-parts1_1 {
          position: static;
          width: 100%;
          transform: none;
          margin-top: 7.3vw; }
          main .main003-parts1_1--img3 {
            width: 62.31vw;
            max-width: auto;
            margin-left: 16.2vw; }
          main .main003-parts1_1--img4 {
            width: 74.14vw;
            max-width: auto;
            margin-top: 4.87vw;
            margin-left: 16.2vw; }
    main .main004 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      z-index: 1;
      margin-top: 12.19vw; }
      main .main004-parts1 {
        width: 100%;
        position: relative;
        z-index: 2; }
        main .main004-parts1--img1 {
          width: 100%; }
        main .main004-parts1--img2 {
          position: absolute;
          top: 6.9vw;
          left: 40%;
          width: 15%; }
        main .main004-parts1_1 {
          position: absolute;
          top: 57.5%;
          left: 52.5%;
          transform: translate(0, -50%);
          width: 42.6%; }
          main .main004-parts1_1--img3 {
            width: 100%;
            max-width: 580px; }
          main .main004-parts1_1--img4 {
            width: 64.1%;
            max-width: 372px;
            margin-top: 60px; }
      main .main004-parts2 {
        width: 100%;
        margin-top: -12.6vw;
        position: relative;
        z-index: 3; }
        main .main004-parts2--img1 {
          width: 91.46vw;
          margin-left: auto;
          margin-right: 0; }
      main .main004-parts3 {
        width: 100%;
        margin-top: -16.1vw;
        position: relative;
        z-index: 2; }
        main .main004-parts3--img1 {
          width: 100%;
          margin-left: 0;
          margin-right: auto; }
      main .main004-parts4 {
        width: 100%;
        position: relative;
        z-index: 2; }
        main .main004-parts4--img1 {
          width: 100%; }
        main .main004-parts4--img2 {
          position: absolute;
          top: -16.9vw;
          left: 3vw;
          width: 27.8vw; }
        main .main004-parts4_1 {
          width: 100%;
          padding-top: 15vw; }
          main .main004-parts4_1--img3 {
            width: 91.5vw;
            max-width: auto;
            margin-left: 4vw; }
          main .main004-parts4_1--img4 {
            width: 69.75vw;
            max-width: auto;
            margin-left: 4vw;
            margin-top: 4.87vw; }
    main .main005 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      z-index: 1;
      position: relative;
      margin-top: 70px; }
      main .main005-inview {
        width: 100%;
        height: 48.78vw;
        background-image: url("../img/main005-001_sp.jpg");
        background-attachment: inherit; }
        main .main005-inview__bg {
          width: 100%;
          height: 100%;
          background-color: rgba(62, 33, 4, 0.5); }
        main .main005-inview__title {
          position: absolute;
          width: 66.21%;
          top: 50%;
          left: 9.14vw;
          transform: translate(0, -50%); }
          main .main005-inview__title--img1 {
            width: 100%;
            max-width: auto; }
          main .main005-inview__title--img2 {
            width: 55.06%;
            max-width: auto;
            margin-top: 4.87vw; }
      main .main005 .main005-dots {
        width: 100%;
        margin: auto;
        margin-top: 80px;
        height: 1600px; }
        main .main005 .main005-dots--img1 {
          width: 16px;
          margin: auto; }
        main .main005 .main005-dots--img2 {
          width: 16px;
          margin: 40px auto 0; }
        main .main005 .main005-dots .main005-fixed {
          position: fixed;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%); }
    main .main006 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      margin-top: 40px;
      background-color: #1a1a1a; }
      main .main006-img1 {
        position: relative;
        width: 100%;
        z-index: 3; }
      main .main006 video, main .main006 iframe {
        position: relative;
        width: 100%;
        z-index: 3; }
      main .main006-parts1 {
        position: relative;
        z-index: 1;
        width: 100%;
        margin-top: 0px; }
        main .main006-parts1--img1 {
          width: 100%; }
        main .main006-parts1__item {
          width: 100%;
          position: absolute;
          top: 50%;
          left: 0;
          transform: translate(0, -50%); }
          main .main006-parts1__item--img2 {
            width: 30.48vw;
            margin-left: 5.68vw;
            max-width: auto; }
          main .main006-parts1__item--img3 {
            width: 90.68vw;
            max-width: auto;
            margin-left: 3.68vw;
            margin-top: 4.87vw; }
          main .main006-parts1__item--img4 {
            width: 36.58vw;
            margin-left: 5.68vw;
            margin-top: 4.87vw;
            display: block; }
            main .main006-parts1__item--img4 img {
              width: 100%; }
    main .main007 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      z-index: 1; }
      main .main007-inview {
        width: 100%;
        height: 48.78vw;
        background-image: url("../img/main007-001_sp.jpg");
        background-attachment: inherit; }
        main .main007-inview__bg {
          width: 100%;
          height: 100%;
          background-color: rgba(62, 33, 4, 0.5); }
        main .main007-inview__title {
          position: absolute;
          width: 13%;
          top: 50%;
          left: 9.14vw;
          transform: translate(0, -50%); }
          main .main007-inview__title--img1 {
            width: 27.8vw;
            max-width: auto; }
          main .main007-inview__title--img2 {
            width: 16.34vw;
            max-width: auto;
            margin-top: 4.87vw; }
    main .main007-other .main007-inview {
      background-attachment: inherit; }
    main .main008 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      padding: 4.87vw 3.65vw;
      background-color: #1a1a1a; }
      main .main008-list {
        width: 100%;
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap; }
        main .main008-list li {
          width: calc(50% - 1.83vw);
          margin-right: 3.65vw;
          margin-top: 4.87vw; }
          main .main008-list li a {
            display: block; }
            main .main008-list li a .news {
              margin-top: 10px; }
        main .main008-list li:nth-child(2n) {
          margin-right: 0; }
      main .main008-img2 {
        margin: 6.9vw auto 0;
        width: 48.2vw;
        max-width: auto; }
        main .main008-img2 img {
          width: 100%; }
    main .main009 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      padding: 8.94vw 3.65vw;
      background-color: #1a1a1a; }
      main .main009-list {
        width: 100%;
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap; }
        main .main009-list li {
          position: relative;
          width: 100%; }
          main .main009-list li a {
            display: block; }
            main .main009-list li a .frame {
              width: 100%;
              overflow: hidden; }
            main .main009-list li a .main {
              width: 100%;
              max-width: 100%;
              transform: scale(1);
              transition: .3s ease-in-out; }
            main .main009-list li a .title1-1 {
              position: absolute;
              top: 0;
              left: 0;
              width: 36.7vw;
              max-width: auto; }
            main .main009-list li a .title1-2 {
              position: absolute;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              width: 31.22vw;
              max-width: auto; }
            main .main009-list li a .title2-1 {
              position: absolute;
              top: 0;
              left: 0;
              width: 22.68vw;
              max-width: auto; }
            main .main009-list li a .title2-2 {
              position: absolute;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              width: 47.31vw;
              max-width: auto; }
            main .main009-list li a .title3-1 {
              position: absolute;
              top: 0;
              left: 0;
              width: 26.4vw;
              max-width: auto; }
            main .main009-list li a .title3-2 {
              position: absolute;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              width: 31.09vw;
              max-width: auto; }
            main .main009-list li a .title4-1 {
              position: absolute;
              top: 0;
              left: 0;
              width: 26.4vw;
              max-width: auto; }
            main .main009-list li a .title4-2 {
              position: absolute;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              width: 31.09vw;
              max-width: auto; }
          main .main009-list li a:hover {
            filter: alpha(opacity=100);
            opacity: 1; }
            main .main009-list li a:hover .main {
              transform: scale(1.1);
              transition: .3s ease-in-out; }
            main .main009-list li a:hover img {
              filter: alpha(opacity=100);
              opacity: 1; }
        main .main009-list li::after {
          content: "";
          position: absolute;
          width: 80%;
          height: 80%;
          border: 5px solid transparent;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          transition: all 0.5s ease;
          pointer-events: none; }
        main .main009-list li:hover::after {
          content: "";
          position: absolute;
          width: 80%;
          height: 80%;
          border: 5px solid #ffffff;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          transition: all 0.5s ease;
          pointer-events: none; }
    main .main010 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      padding: 0 0 0;
      background-color: #1a1a1a; }
      main .main010-recruit {
        width: 91.4vw;
        margin: auto;
        display: block; }
        main .main010-recruit img {
          width: 100%; }
      main .main010-list {
        width: 100%;
        display: flex;
        justify-content: flex-start;
        flex-wrap: wrap;
        margin-top: 8.53vw; }
        main .main010-list li {
          width: 50%; }
          main .main010-list li a {
            display: block; }
            main .main010-list li a img {
              width: 100%; }
    main .main011 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      padding: 4.87vw 3.65vw;
      background-color: #1a1a1a; }
      main .main011 .kiji h1 {
        font-family: "NotoSansCJKjp-Regular", sans-serif;
        font-size: 22px;
        color: #ffffff;
        margin-top: 20px; }
      main .main011 .kiji .time {
        font-family: "NotoSansCJKjp-Regular", sans-serif;
        font-size: 10px;
        color: #e0e0e0;
        margin-top: 10px; }
      main .main011 .kiji .category {
        margin-top: 10px; }
        main .main011 .kiji .category span {
          font-size: 12px; }
      main .main011 .kiji .kiji-contents {
        width: 100%;
        margin-top: 30px;
        font-size: 14px; }
        main .main011 .kiji .kiji-contents img {
          margin: 10px 0; }
        main .main011 .kiji .kiji-contents .contact-form {
          width: 100%;
          display: block;
          justify-content: flex-start;
          flex-wrap: wrap;
          box-sizing: border-box; }
          main .main011 .kiji .kiji-contents .contact-form dt {
            width: 100%;
            font-family: "NotoSansCJKjp-Medium", sans-serif;
            font-size: 18px;
            color: #ffffff;
            padding: 20px 10px 0;
            box-sizing: border-box; }
          main .main011 .kiji .kiji-contents .contact-form dd {
            width: 100%;
            padding: 10px 10px 20px;
            box-sizing: border-box; }
            main .main011 .kiji .kiji-contents .contact-form dd input[type="text"], main .main011 .kiji .kiji-contents .contact-form dd input[type="tel"], main .main011 .kiji .kiji-contents .contact-form dd input[type="email"] {
              width: 100%;
              height: 30px;
              line-height: 30px;
              font-size: 16px;
              padding: 0 5px; }
            main .main011 .kiji .kiji-contents .contact-form dd textarea {
              width: 100%;
              height: 150px;
              line-height: 1.5em;
              font-size: 16px;
              padding: 0 5px; }
            main .main011 .kiji .kiji-contents .contact-form dd .w50 {
              width: 100% !important; }
            main .main011 .kiji .kiji-contents .contact-form dd .w30 {
              width: 100% !important; }
      main .main011 .pager a {
        font-family: "NotoSansCJKjp-Medium", sans-serif;
        font-size: 14px;
        color: #ffffff; }
        main .main011 .pager a i {
          padding-right: 5px;
          padding-left: 5px; }
    main .main012 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      z-index: 1; }
      main .main012-inview {
        width: 100%;
        height: 200px;
        background-image: url("../img/company/company000-001_sp.jpg");
        background-position: center center;
        background-attachment: inherit;
        background-size: cover;
        background-repeat: no-repeat;
        position: relative; }
    main .main014 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      z-index: 1; }
      main .main014-inview {
        width: 100%;
        height: 200px;
        background-image: url("../img/main005-001.jpg");
        background-position: center center;
        background-attachment: inherit;
        background-size: cover;
        background-repeat: no-repeat;
        position: relative; }
        main .main014-inview img {
          width: 70.3vw;
          max-width: 549px;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%); }
    main .main015 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      z-index: 1; }
      main .main015-inview {
        width: 100%;
        height: 200px;
        background-image: url("../img/contact/contact001-001.jpg");
        background-position: center center;
        background-attachment: inherit;
        background-size: cover;
        background-repeat: no-repeat;
        position: relative; }
        main .main015-inview img {
          width: 70.3vw;
          max-width: 549px;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%); }
    main .main013 {
      width: 100%;
      max-width: 2000px;
      margin: auto;
      position: relative;
      padding: 20px 40px;
      background-color: #1a1a1a;
      z-index: 2; }
      main .main013 h2 {
        font-family: "yumin", sans-serif;
        background-color: #1a1a1a;
        width: calc(100% - 100px);
        height: 60px;
        line-height: 60px;
        color: #ffffff;
        font-size: 22px;
        text-align: center;
        position: absolute;
        top: -30px;
        left: 50%;
        transform: translate(-50%, 0); }
      main .main013 .store-list {
        margin: 50px auto 0;
        width: 100%; }
        main .main013 .store-list__items {
          width: 100%;
          margin-top: 50px;
          flex-wrap: wrap; }
          main .main013 .store-list__items__desc {
            width: 100%;
            order: 2;
            margin-top: 20px; }
            main .main013 .store-list__items__desc h3 {
              font-size: 20px; }
            main .main013 .store-list__items__desc p {
              margin-top: 20px;
              font-family: "YuGothM", sans-serif;
              color: #ffffff;
              font-size: 14px;
              line-height: 1.8em; }
              main .main013 .store-list__items__desc p .gmap {
                text-decoration: underline; }
            main .main013 .store-list__items__desc .btn {
              display: block;
              width: 180px;
              height: 40px;
              line-height: 40px;
              text-align: center;
              position: relative;
              font-family: "YuGothM", sans-serif;
              color: #1a1a1a;
              font-size: 14px;
              background-color: #ffffff;
              margin-top: 20px; }
              main .main013 .store-list__items__desc .btn i {
                width: 20px;
                display: block;
                position: absolute;
                top: 50%;
                right: 20px;
                transform: translate(0, -50%); }
          main .main013 .store-list__items .left-padding {
            padding-left: 0; }
          main .main013 .store-list__items__imglist {
            order: 1;
            width: 100%;
            display: flex;
            justify-content: space-between; }
            main .main013 .store-list__items__imglist img {
              width: calc(50% - 5px);
              display: block; }
      main .main013 .btnlist {
        width: auto;
        margin-top: 40px; }
        main .main013 .btnlist a {
          width: 150px;
          height: 40px;
          line-height: 40px;
          font-size: 14px; }
        main .main013 .btnlist a:first-child {
          margin-right: 10px; }
      main .main013 .greeting {
        margin-top: 50px; }
        main .main013 .greeting h3 {
          text-align: center;
          font-family: "yumin", sans-serif;
          color: #ffffff;
          font-size: 22px; }
        main .main013 .greeting__data {
          width: 100%;
          max-width: 1200px;
          margin: 30px auto 0;
          flex-wrap: wrap; }
          main .main013 .greeting__data__obj1 {
            width: 100%;
            order: 2;
            margin-top: 20px; }
            main .main013 .greeting__data__obj1 h4 {
              font-size: 16px; }
            main .main013 .greeting__data__obj1 .moreread {
              display: block;
              position: relative;
              cursor: pointer;
              margin-top: 10px; }
              main .main013 .greeting__data__obj1 .moreread i {
                display: block;
                text-align: center;
                font-size: 20px; }
            main .main013 .greeting__data__obj1 .moreread:before {
              content: "";
              position: absolute;
              top: 50%;
              left: calc(50% - 60px);
              transform: translate(0, -50%);
              width: 40px;
              height: 2px;
              background-color: #ffffff; }
            main .main013 .greeting__data__obj1 .moreread:after {
              content: "";
              position: absolute;
              top: 50%;
              right: calc(50% - 60px);
              transform: translate(0, -50%);
              width: 40px;
              height: 2px;
              background-color: #ffffff; }
            main .main013 .greeting__data__obj1 .spread {
              display: block;
              max-height: 0;
              overflow: hidden;
              transition: all 0.5s cubic-bezier(0, 0, 0, 1); }
            main .main013 .greeting__data__obj1 .open_spread {
              display: block;
              max-height: 1000px;
              transition: all 3s cubic-bezier(0, 0, 0, 1); }
          main .main013 .greeting__data__obj2 {
            width: 100%;
            order: 1; }
            main .main013 .greeting__data__obj2 img {
              width: 100%; }
            main .main013 .greeting__data__obj2 h4 {
              font-size: 20px; }
            main .main013 .greeting__data__obj2 p {
              font-size: 14px;
              line-height: 1.8em; }
      main .main013 .profile {
        width: 100%;
        max-width: 900px;
        margin: 70px auto 0; }
        main .main013 .profile h3 {
          text-align: center;
          font-size: 22px; }
        main .main013 .profile ul {
          margin-top: 30px; }
          main .main013 .profile ul li {
            display: block; }
            main .main013 .profile ul li .ttl {
              width: 100%;
              padding: 20px 10px 0;
              font-family: "YuGothM", sans-serif;
              color: #ffffff; }
            main .main013 .profile ul li .contents {
              width: 100%;
              padding: 10px 10px 20px;
              font-family: "YuGothM", sans-serif;
              color: #ffffff; }
    main .main099 {
      width: 100%;
      max-width: 2000px;
      margin: auto; }
      main .main099-img1 {
        width: 100%; }
    main .main099_fixed {
      position: fixed;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      z-index: -1; }

  footer {
    width: 100%;
    max-width: 2000px;
    margin: auto;
    position: relative;
    padding: 12.19vw 0 8vw;
    background-color: #1a1a1a; }
    footer .footer-logo {
      width: 20vw;
      max-width: 116px;
      margin: auto;
      display: block; }
      footer .footer-logo img {
        width: 100%; }

  .returnTop {
    display: block;
    width: 50px;
    transition: all 0.5s cubic-bezier(0, 0, 0, 1);
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 10; }
    .returnTop img {
      width: 100%; }

  .returnTopHidden {
    bottom: -70px; } }
