@charset "UTF-8";
/* 単位 */
.c-section-widget {
  container-type: inline-size;
}

/* ファーストビュー */
.main-visual {
  position: absolute !important;
  top: 0;
  left: 0;
}
@media (min-width: 768px) {
  .main-visual {
    height: 90vh;
  }
}
@media (max-width: 767px) {
  .main-visual {
    height: 85vh;
  }
}
.main-visual div {
  height: 100%;
}
.main-visual .header-image-slider__item.is-responsive {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.main-visual .header-image-slider::after {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-image: url("/wordpress/wp-content/site-parts/page/top/img/firstview_overlay.png");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
.main-visual .slick-prev {
  left: 8px;
}
.main-visual .slick-next {
  right: 8px;
}

#shortcod_section-3 {
  position: relative;
  width: 100vw;
  pointer-events: none;
}
#shortcod_section-3 .c-section-widget__inner,
#shortcod_section-3 .l-content-widget,
#shortcod_section-3 .alignfull,
#shortcod_section-3 .u-row,
#shortcod_section-3 .shortcod-content {
  width: 100%;
  height: 100%;
}
#shortcod_section-3 .firstview_text {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  color: #fff;
}
#shortcod_section-3 .firstview_text span {
  font-weight: 700;
  line-height: 1;
}
@media (min-width: 768px) {
  #shortcod_section-3 {
    height: 78vh;
  }
  #shortcod_section-3 .c-section-widget__inner {
    padding-top: 86px;
    width: 100%;
    height: 100%;
    padding: 0;
  }
  #shortcod_section-3 .firstview_text {
    width: 100%;
    height: 100%;
    padding: 5cqw;
  }
  #shortcod_section-3 .firstview_text span,
  #shortcod_section-3 .firstview_text h1 {
    text-shadow: 0.125cqw 0.125cqw 0.625cqw rgba(0, 0, 0, 0.42);
  }
  #shortcod_section-3 .firstview_text span {
    font-weight: 700;
    line-height: 1;
  }
  #shortcod_section-3 .firstview_text .fs-middle {
    font-size: 6cqw;
  }
  #shortcod_section-3 .firstview_text .fs-big {
    font-size: 7.5cqw;
  }
  #shortcod_section-3 .firstview_text .fs-mini {
    font-size: 3.4cqw;
  }
  #shortcod_section-3 .firstview_text h1 {
    margin-top: 3em;
    font-size: 1.35cqw;
  }
}
@media (max-width: 767px) {
  #shortcod_section-3 {
    height: calc(85vh - 60px);
  }
  #shortcod_section-3 .firstview_text {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 5cqw;
  }
  #shortcod_section-3 .firstview_text span,
  #shortcod_section-3 .firstview_text h1 {
    text-shadow: 0.1875cqw 0.1875cqw 0.935cqw rgba(0, 0, 0, 0.42);
  }
  #shortcod_section-3 .firstview_text span {
    font-weight: 700;
    line-height: 1;
  }
  #shortcod_section-3 .firstview_text .fs-middle {
    font-size: 11cqw;
  }
  #shortcod_section-3 .firstview_text .fs-big {
    font-size: 13.7cqw;
  }
  #shortcod_section-3 .firstview_text .fs-mini {
    margin-top: 2cqw;
    font-size: 6cqw;
  }
  #shortcod_section-3 .firstview_text h1 {
    margin-top: 2cqw;
    font-size: 4cqw;
  }
}

/* 自己紹介 */
#content_box_section-3 {
  background-image: url("/wordpress/wp-content/site-parts/page/top/img/intro_bg.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
#content_box_section-3 .content-box__body {
  overflow: visible;
}
@media (min-width: 768px) {
  #content_box_section-3 .c-section-widget__title {
    font-size: 2.6rem !important;
    line-height: 1.5 !important;
  }
}
@media (max-width: 767px) {
  #content_box_section-3 .content-box__thumbnail {
    order: 1;
  }
  #content_box_section-3 .c-section-widget__inner {
    padding-bottom: 0 !important;
  }
  #content_box_section-3 .c-section-widget__title {
    font-size: 200% !important;
    line-height: 1.8 !important;
  }
}

/* 事業内容・商品カタログ　グレー背景 */
#shortcod_section-21::before,
#shortcod_section-5::before,
#shortcod_section-8::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  display: block;
  background-color: rgba(231, 232, 234, 0.5);
  height: 100%;
}
@media (min-width: 768px) {
  #shortcod_section-21::before,
  #shortcod_section-5::before,
  #shortcod_section-8::before {
    width: 95%;
  }
}
@media (max-width: 767px) {
  #shortcod_section-21::before,
  #shortcod_section-5::before,
  #shortcod_section-8::before {
    width: 100%;
  }
}

#shortcod_section-21::before {
  top: auto;
  bottom: 0;
}
@media (min-width: 768px) {
  #shortcod_section-21::before {
    height: 65%;
  }
}
@media (max-width: 767px) {
  #shortcod_section-21::before {
    height: 25%;
  }
}

/* 事業内容 */
#shortcod_section-21 .l-content-widget {
  z-index: 1;
}
@media (min-width: 768px) {
  #shortcod_section-21 .service-list {
    margin-bottom: 2.5cqw;
  }
}

#shortcod_section-5 .ncButton {
  margin-top: 0;
}

/* 商品カタログ */
#shortcod_section-8 .wrapper-column {
  position: relative;
}
#shortcod_section-8 .wrapper-column::after {
  content: "";
  display: block;
  aspect-ratio: 261/339;
  background-image: url("/wordpress/wp-content/site-parts/page/top/img/catalog_img.png");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center left;
}
#shortcod_section-8 .wrapper-column .lead {
  color: #222;
}
@media (max-width: 767px) {
  #shortcod_section-8 .wrapper-column {
    background: linear-gradient(to bottom, #fff 0%, #fff 75%, transparent 76%, transparent 100%);
  }
  #shortcod_section-8 .wrapper-column::after {
    width: 60%;
    margin: auto;
  }
  #shortcod_section-8 .shortcod-content {
    padding: 5cqw;
    color: #222;
  }
}
@media (min-width: 768px) {
  #shortcod_section-8 .wrapper-column {
    background: linear-gradient(to right, transparent 0%, transparent 10%, #fff 11%, #fff 100%);
  }
  #shortcod_section-8 .wrapper-column::after {
    position: absolute;
    z-index: 1;
    top: 50%;
    left: 0;
    transform: translateY(-49%);
    width: 25cqw;
  }
  #shortcod_section-8 .shortcod-content {
    position: relative;
    z-index: 0;
    margin-left: auto;
    width: 85cqw;
    padding: 2cqw 4cqw 2cqw 15.5cqw;
  }
}
@media (min-width: 1200px) {
  #shortcod_section-8 .wrapper-column {
    padding: 48px 24px 48px 100px;
  }
  #shortcod_section-8 .wrapper-column::after {
    width: 300px;
  }
  #shortcod_section-8 .shortcod-content {
    width: 910px;
    padding: 24px 24px 24px 48px;
  }
}
@media (min-width: 768px) {
  #shortcod_section-8 .c-section-widget__header {
    flex-direction: row !important;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0;
  }
  #shortcod_section-8 .c-section-widget__title {
    order: 0 !important;
    transform: none !important;
  }
}
#shortcod_section-8 .c-section-widget__title {
  color: #222 !important;
}
#shortcod_section-8 .c-section-widget__sub-title {
  color: #a9cee3 !important;
}

/* 企業情報 */
#shortcod_section-11 .c-section-widget__title {
  color: #a9cee3;
}
#shortcod_section-11 .c-section-widget__sub-title {
  color: #fff;
}
#shortcod_section-11 .wrapper-column {
  background-color: #021b2f;
}
#shortcod_section-11 .shortcod-content {
  margin: 0;
}
@media (min-width: 768px) {
  #shortcod_section-11 .shortcod-content {
    width: 50% !important;
  }
}
#shortcod_section-11 .shortcod-content:first-of-type img {
  max-width: initial;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#shortcod_section-11 .shortcod-content:last-of-type {
  padding: 4cqw;
  color: #fff;
}
#shortcod_section-11 .shortcod-content:last-of-type .viewmore a {
  color: #fff;
  border-color: #fff;
}
#shortcod_section-11 .shortcod-content:last-of-type .viewmore a::after {
  color: #fff;
}

/* 施工事例 */
#shortcod_section-13 li,
#shortcod_section-13 li a {
  color: #fff;
}
#shortcod_section-13 .thumbnail {
  aspect-ratio: 377/251;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 1em;
  overflow: hidden;
}
#shortcod_section-13 .thumbnail img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100% !important;
  width: 100% !important;
  max-width: initial;
}
#shortcod_section-13 p {
  margin-bottom: 0;
}
#shortcod_section-13 .splide__arrow--prev {
  left: -2em;
}
#shortcod_section-13 .splide__arrow--next {
  right: -2em;
}
@media (max-width: 767px) {
  #shortcod_section-13 .ncSlider__track {
    gap: 0;
  }
  #shortcod_section-13 .ncSlider__item {
    flex: 0 0 100cqw;
  }
}

/* 採用情報 */
/*テキスト用
#shortcod_section-15 {
    background: linear-gradient(to bottom right, #004d79, #00273d);

    .wrapper-column {
        justify-content: space-between;
        @include bg-image('common/img/bg_mark.svg');
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;

        @include ls-small {
            flex-direction: column-reverse;
        }
    }

    .shortcod-content {
        color: #fff;

        @include mr-small {
            margin: 0;

            &:first-of-type {
                width: 35%;
            }

            &:last-of-type {
                width: 60%;
            }
        }
    }

    .c-section-widget {
        &__header {
            margin-bottom: 0;
        }

        &__lead {
            font-weight: 700;
            line-height: 1.2;

            @include mr-small {
                font-size: 300%;
                margin-top: 2cqw;
                margin-bottom: 2cqw;
            }

            @include ls-small {
                font-size: 11cqw;
                margin-top: 4cqw;
                margin-bottom: 4cqw;
            }
        }
    }
}*/
/*採用情報*/
#shortcod_section-15 {
  display: none;
}

/* お知らせ */
#shortcod_section-17 .l-content-widget:nth-of-type(2) {
  width: min(100%, 800px);
}
#shortcod_section-17 li {
  display: flex;
  align-items: center;
  padding: 1em;
  border-bottom: 1px solid #fff;
  color: #fff;
}
#shortcod_section-17 li span {
  position: relative;
  width: 10em;
}
#shortcod_section-17 li span::after {
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 1em;
  transform: translateY(-50%) rotate(45deg);
  color: #70a7d5;
}
#shortcod_section-17 li a {
  display: block;
  width: calc(100% - 10em);
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: 0.3s ease;
}
#shortcod_section-17 li a:hover {
  transform: translateY(2px);
}

/* FAQ */
#shortcod_section-27 .ncAccordion_switch {
  display: flex;
  padding: 0.5em 1em;
  background-color: #021b2f;
  border-radius: 0.2em;
}
#shortcod_section-27 .ncAccordion_switch::before {
  flex: 0 0 1em;
  content: "Q";
  font-weight: 400;
}
#shortcod_section-27 .ncAccordion_switch span {
  flex: 1 1 calc(100% - 4em);
}
#shortcod_section-27 .ncAccordion_switch::after {
  flex: 0 0 1em;
  align-self: center;
  content: "＋";
  font-weight: 400;
  text-align: center;
  transition: 0.3s ease-out all;
}
#shortcod_section-27 .ncAccordion_switch.open {
  border-radius: 0.2em 0.2em 0 0;
}
#shortcod_section-27 .ncAccordion_switch.open::after {
  content: "－";
  transform: rotate(180deg);
}
#shortcod_section-27 .ncAccordion_content {
  max-height: 0;
  overflow: hidden;
  background-color: #fff;
  border-radius: 0 0 0.2em 0.2em;
  transition: max-height 0.3s ease-out;
}
#shortcod_section-27 .ncAccordion_content_inner {
  padding: 0.5em 1em;
}
#shortcod_section-27 .ncAccordion_content p {
  color: #222;
}

/* バナー */
#shortcod_section-28 .ncColumns {
  row-gap: 3cqw;
}
#shortcod_section-28 .ncColumns_panel {
  container-type: inline-size;
  background-color: #fff;
  height: 5em;
  margin: 0 !important;
  overflow: visible;
}
#shortcod_section-28 .ncColumns_panel a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 6cqw;
  transition: all 0.3s ease;
}
#shortcod_section-28 .ncColumns_panel a img {
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
  width: 100%;
  max-width: initial !important;
  height: 100% !important;
}
#shortcod_section-28 .ncColumns_panel.wilk a {
  padding: 4cqw;
}
#shortcod_section-28 .ncColumns_panel:hover a {
  transform: scale(1.1);
}
@media (max-width: 767px) {
  #shortcod_section-28 .wrapper-column {
    justify-content: space-between;
  }
  #shortcod_section-28 .ncColumns_panel {
    width: 48% !important;
  }
}/*# sourceMappingURL=style.css.map */