@charset "UTF-8";
/*
ユーティリティ系おまとめファイル
*/
/*
██████   █████  ███████ ███████
██   ██ ██   ██ ██      ██
██████  ███████ ███████ █████
██   ██ ██   ██      ██ ██
██████  ██   ██ ███████ ███████
*/
/*
██████  ██████  ███████  █████  ██   ██ ██████   ██████  ██ ███    ██ ████████
██   ██ ██   ██ ██      ██   ██ ██  ██  ██   ██ ██    ██ ██ ████   ██    ██
██████  ██████  █████   ███████ █████   ██████  ██    ██ ██ ██ ██  ██    ██
██   ██ ██   ██ ██      ██   ██ ██  ██  ██      ██    ██ ██ ██  ██ ██    ██
██████  ██   ██ ███████ ██   ██ ██   ██ ██       ██████  ██ ██   ████    ██
*/
/*
 ██████  ██████  ██       ██████  ██████
██      ██    ██ ██      ██    ██ ██   ██
██      ██    ██ ██      ██    ██ ██████
██      ██    ██ ██      ██    ██ ██   ██
 ██████  ██████  ███████  ██████  ██   ██
*/
/*
████████ ███████ ██   ██ ████████
   ██    ██       ██ ██     ██
   ██    █████     ███      ██
   ██    ██       ██ ██     ██
   ██    ███████ ██   ██    ██
*/
.u-taL {
  text-align: left !important; }

.u-taC {
  text-align: center !important; }
  @media screen and (max-width: 568px) {
    .u-taC--xs-taL {
      text-align: left !important; } }
  @media screen and (max-width: 768px) {
    .u-taC--sm-taL {
      text-align: left !important; } }
  @media screen and (max-width: 1024px) {
    .u-taC--md-taL {
      text-align: left !important; } }
  @media screen and (max-width: 1280px) {
    .u-taC--lg-taL {
      text-align: left !important; } }

.u-taR {
  text-align: right !important; }

.u-only-xs {
  display: none !important; }
  @media screen and (max-width: 568px) {
    .u-only-xs {
      display: block !important; } }

.u-only-sm {
  display: none !important; }
  @media screen and (max-width: 768px) {
    .u-only-sm {
      display: block !important; } }
  @media screen and (max-width: 568px) {
    .u-only-sm {
      display: none !important; } }

.u-only-md {
  display: none !important; }
  @media screen and (max-width: 1024px) {
    .u-only-md {
      display: block !important; } }
  @media screen and (max-width: 768px) {
    .u-only-md {
      display: none !important; } }

@media screen and (max-width: 1024px) {
  .u-only-lg {
    display: none !important; } }

.u-under-sm {
  display: none !important; }
  @media screen and (max-width: 768px) {
    .u-under-sm {
      display: block !important; } }

.u-not-under-sm {
  display: block !important; }
  @media screen and (max-width: 768px) {
    .u-not-under-sm {
      display: none !important; } }

.u-overflow-hidden {
  overflow: hidden !important; }

#top .p-kv {
  position: relative;
  overflow: hidden;
  background-image: url(/inc/image/top/pic_kv.jpg);
  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;
  width: 100%;
  height: 100vh; }
  @media screen and (max-width: 1024px) {
    #top .p-kv {
      height: 60vh; } }
  @media screen and (max-width: 768px) {
    #top .p-kv {
      height: 100vh;
      background-image: url(/inc/image/top/pic_kv-sp.jpg); } }
  @media (orientation: landscape) {
    #top .p-kv {
      height: 100vh; } }
  #top .p-kv img {
    width: 95px;
    height: 100%;
    margin-top: 15px;
    -o-object-fit: cover;
       object-fit: cover; }
    @media screen and (max-width: 1024px) {
      #top .p-kv img {
        margin-top: 30px;
        width: 100px; } }
    @media screen and (max-width: 768px) {
      #top .p-kv img {
        width: 70px; } }
    @media screen and (max-width: 568px) {
      #top .p-kv img {
        width: 110px; } }
    @media (orientation: landscape) {
      #top .p-kv img {
        width: 60px; } }
  #top .p-kv__catch {
    position: absolute;
    top: 40%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
        justify-content: center;
    -ms-flex-align: center;
        align-items: center; }
    @media screen and (max-width: 768px) {
      #top .p-kv__catch {
        top: 43%; } }

#top .p-mainVisual--bgText {
  position: absolute;
  z-index: 1;
  bottom: 0;
  width: 200%;
  height: 160px;
  overflow: hidden;
  background-image: url("/inc/image/top/slider/img_slider-text.svg");
  background-repeat: repeat-x;
  background-size: auto 100%;
  animation: scrollText 30s linear infinite; }
  @media screen and (max-width: 1024px) {
    #top .p-mainVisual--bgText {
      height: 100px; } }
  @media screen and (max-width: 768px) {
    #top .p-mainVisual--bgText {
      animation: scrollText 10s linear infinite;
      height: 90px; } }

@keyframes scrollText {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(-50%); } }

#top #wrapper {
  padding: 0 0; }
  @media screen and (max-width: 1200px) {
    #top #wrapper {
      padding: 60px 0 0; } }

#top .p-reason__Bg {
  background-image: url(/inc/image/top/img_reason__bg.svg);
  background-size: cover;
  background-position: right bottom;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%; }
  @media screen and (max-width: 768px) {
    #top .p-reason__Bg {
      background-image: url(/inc/image/top/img_reason__bg--tab.svg);
      background-position: left top; } }
  @media screen and (max-width: 568px) {
    #top .p-reason__Bg {
      background-image: url(/inc/image/top/img_reason__bg--sm.svg);
      background-position: right bottom; } }

#top .p-service__Bg {
  background-image: url(/inc/image/top/img_service__bg.svg);
  background-size: cover;
  background-position: right bottom;
  background-repeat: no-repeat;
  width: 100%;
  height: 100%; }
  @media screen and (max-width: 768px) {
    #top .p-service__Bg {
      background-image: url(/inc/image/top/img_service__bg--tab.svg);
      background-position: left top; } }
  @media screen and (max-width: 568px) {
    #top .p-service__Bg {
      background-image: url(/inc/image/top/img_service__bg--sm.svg);
      background-position: right bottom; } }

#top .p-service__item {
  padding: 10px 0px;
  border-bottom: 1px solid #CCC;
  color: #333; }
  #top .p-service__item::after {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    position: absolute;
    right: 0;
    line-height: 1;
    transition: all 0.2s ease; }

@media screen and (max-width: 768px) {
  #top .c-list {
    padding-left: 0; } }

#top .c-list__item > a:hover {
  transform: translateY(-10px);
  transition: all .2s; }
  @media screen and (max-width: 1024px) {
    #top .c-list__item > a:hover {
      transform: none; } }
  #top .c-list__item > a:hover .c-card02__detail:after {
    right: -20px; }

#top .p-slider__item {
  width: 350px;
  height: 240px;
  padding-left: 10px; }
  @media screen and (max-width: 768px) {
    #top .p-slider__item {
      width: 250px;
      height: auto; } }

#top .p-slider__item img {
  width: 350px; }
  @media screen and (max-width: 768px) {
    #top .p-slider__item img {
      width: 250px; } }

#top .p-slider__second {
  padding-top: 10px;
  background-color: #FFFFFF; }
  @media screen and (max-width: 768px) {
    #top .p-slider__second {
      padding-top: 5px; } }

#top .p-sliderWrap {
  background-color: #FFFFFF; }

#top .p-case {
  margin: -120px auto 0;
  background-color: #FFFFFF;
  max-width: 1138px;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
  padding: 40px 60px;
  position: relative;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
      align-items: center; }
  @media screen and (max-width: 768px) {
    #top .p-case {
      margin-top: -80px;
      padding: 30px;
      -ms-flex-direction: column;
          flex-direction: column; } }
  @media screen and (max-width: 568px) {
    #top .p-case {
      margin-top: -60px; } }
  #top .p-case__Bg {
    background-image: url(/inc/image/top/img_case__bg.svg);
    background-size: cover;
    background-position: left bottom;
    background-repeat: no-repeat;
    width: 100%;
    height: 100%; }
    @media screen and (max-width: 768px) {
      #top .p-case__Bg {
        background-image: url(/inc/image/top/img_case__bg--tab.svg);
        background-position: top; } }
    @media screen and (max-width: 568px) {
      #top .p-case__Bg {
        background-image: url(/inc/image/top/img_case__bg--sm.svg); } }
  #top .p-case__text {
    width: 80%; }
    @media screen and (max-width: 1024px) {
      #top .p-case__text {
        width: 70%; } }
    @media screen and (max-width: 768px) {
      #top .p-case__text {
        width: 100%; } }
  #top .p-case__btn {
    text-align: right;
    width: 20%; }
    @media screen and (max-width: 1024px) {
      #top .p-case__btn {
        width: 30%; } }
    @media screen and (max-width: 768px) {
      #top .p-case__btn {
        width: 100%;
        padding-top: 30px; } }

#top .p-company {
  padding-top: 60px; }

#top .c-card02__thumb img {
  height: 240px;
  width: 100%; }

/*# sourceMappingURL=../_map/page/top.css.map */
