/** Shopify CDN: Minification failed

Line 282:21 Unexpected "{"
Line 282:30 Expected ":"
Line 283:21 Unexpected "{"
Line 283:30 Expected ":"
Line 294:21 Unexpected "{"
Line 294:30 Expected ":"
Line 295:21 Unexpected "{"
Line 295:30 Expected ":"
Line 311:23 Unexpected "{"
Line 311:32 Expected ":"
... and 6 more hidden warnings

**/
.sticky-header.sticked .site-header__logo,
.sticky-header.sticked .site-title,
.sticky-header.sticked .site-header__logowrapper {
  transform: none !important;
}

@media screen and (min-width: 990px) {
  .site-header {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
  }

  .site-header__wrapper {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    position: relative !important;
  }

  /* ロゴ行 */
  .site-header__wrapper__center {
    width: 100% !important;
    order: 1 !important;
    display: flex !important;
    justify-content: center !important;
  }

  .site-title {
    padding: 0 !important;
  }

  /* ナビ行 */
  .site-header__wrapper__left,
  .site-header__wrapper__right {
    width: 100% !important;
    order: 2 !important;
    display: flex !important;
    justify-content: center !important;
  }

  #top_links_wrapper {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
  }

  #AccessibleNav {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: auto !important;
    margin: 0 auto !important;
    flex-wrap: nowrap !important;
  }

  /* SNSはヘッダーでは非表示 */
  .header-social--desktop {
    display: none !important;
  }

  /* 右上のログイン・カート */
  .site-header__links.top-links--icon-links {
    position: absolute !important;
    right: 20px !important;
    top: 12px !important;
    transform: none !important;
    width: auto !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
  }
}

@media screen and (min-width: 768px) {
  .homepage-indiv-section-wrapper {
    display: flex;
    flex-direction: column;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 36px;

    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 120px;
    padding-right: 120px;
    box-sizing: border-box;
  }

  .homepage-content--image,
  .feature_row__image_wrapper,
  .homepage-featured-content-box,
  .homepage-featured-content-box-inner,
  .no-overlap-content-box {
    width: 100% !important;
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    text-align: left !important;
  }

  .homepage-content--image img {
    width: 120px;
    height: auto;
    display: block;
    margin-left: 0 !important;
    margin-right: auto !important;
  }

  .sitewide--title-wrapper,
  .homepage-sections--title,
  .rte,
  .featured-row__subtext,
  .featured-row__subtext * {
    text-align: left !important;
  }

  .featured-row__subtext {
    max-width: 560px;
    line-height: 1.8;
  }
}

@media screen and (max-width: 767px) {

  .homepage-indiv-section-wrapper {
    display: flex;
    flex-direction: column;
    align-items: flex-start !important;
    justify-content: flex-start !important;

    gap: 28px;

    width: 100%;

    padding-left: 24px;
    padding-right: 24px;

    box-sizing: border-box;
  }

  .homepage-content--image,
  .feature_row__image_wrapper,
  .homepage-featured-content-box,
  .homepage-featured-content-box-inner,
  .no-overlap-content-box {
    width: 100% !important;
    max-width: none !important;

    margin-left: 0 !important;
    margin-right: auto !important;

    text-align: left !important;
  }

  .homepage-content--image img {
    width: 100px;
    height: auto;
    display: block;

    margin-left: 0 !important;
    margin-right: auto !important;
  }

  .sitewide--title-wrapper,
  .homepage-sections--title,
  .rte,
  .featured-row__subtext,
  .featured-row__subtext * {
    text-align: left !important;
  }

  .featured-row__subtext {
    font-size: 12px;
    line-height: 1.8;
  }

  .homepage-indiv-section-wrapper {
    padding-left: 32px;
    padding-right: 32px;
  }

  .featured-row__subtext {
    width: 100% !important;
    max-width: none !important;
  }




  .homepage-featured-content-box,
  .homepage-featured-content-box-inner,
  .no-overlap-content-box {
    width: 100% !important;
    max-width: 100% !important;
    padding: 0 !important;
  }

  .feature_row__image_wrapper {
    width: 100% !important;
    max-width: 100% !important;
  }

  .featured-row__subtext {
    width: 100% !important;
    max-width: 100% !important;
  }


}
@media screen and (min-width: 768px) {
  .navigation-banner .width--content {
    max-width: 1200px;
    margin: 0 auto;
    padding-left: 120px;
    padding-right: 120px;
    box-sizing: border-box;
  }

  .navigation-banner__grid-list {
    justify-content: flex-start;
  }
}
/* PCだけ会社情報の左ラインに合わせる */
@media screen and (min-width: 768px) {
  .navigation-banner .width--content {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding-left: 120px !important;
    padding-right: 120px !important;
    box-sizing: border-box !important;
  }

  .navigation-banner__grid-list {
    justify-content: flex-start !important;
  }
}

/* SPは中央寄せに戻す */
@media screen and (max-width: 767px) {
  .navigation-banner .width--content {
    padding-left: 28px !important;
    padding-right: 28px !important;
  }

  .navigation-banner__grid-list {
    justify-content: center !important;
  }

  .navigation-banner__grid-list li {
    width: 100%;
  }

  .navigation-banner__grid-list .btn,
  .navigation-banner__grid-list .button {
    width: 100%;
    justify-content: center;
    text-align: center;
  }
}

/* ========================================
   DAVI NAVIGATION BANNER BUTTON
======================================== */

.navigation-banner--{{ section.id }} .button,
.navigation-banner--{{ section.id }} .btn {
  position: relative;
  overflow: hidden;
  z-index: 1;

  transition:
    color 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    border-color 0.45s cubic-bezier(0.22, 1, 0.36, 1),
    background-color 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}

.navigation-banner--{{ section.id }} .button::after,
.navigation-banner--{{ section.id }} .btn::after {
  content: "";
  position: absolute;
  inset: 0;

  background:#a8a8a8;

  transform: scaleX(0);
  transform-origin: left center;

  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);

  z-index: -1;
}

@media (hover: hover) and (pointer: fine) {
  .navigation-banner--{{ section.id }} .button:hover,
  .navigation-banner--{{ section.id }} .btn:hover {
    color: #fff;
  }

  .navigation-banner--{{ section.id }} .button:hover::after,
  .navigation-banner--{{ section.id }} .btn:hover::after {
    transform: scaleX(1);
  }
}