@charset "UTF-8";

/* スタイル漏れ？（コンポーネントのstyleから移植）
-----------------------*/

.p-panel-link {
  position: relative;
  display: block;
}

/* 1カラム
-----------------------*/
.c-1column.c-1column--mt-8 > :not(:first-child) {
  margin-top: 8px;
}

@media (max-width: 767px) {
  .c-1column > :not(:first-child) {
    margin-top: 40px;
  }

  .c-1column.c-1column--mt-0 > :not(:first-child) {
    margin-top: 0;
  }

  .c-1column.c-1column--mt-x-large > :not(:first-child) {
    margin-top: 36px;
  }
}

@media (min-width: 768px) {
  .c-1column {
    display: flex;
    flex-direction: column;
  }

  .c-1column.c-1column--mt-8 > *:nth-child(2) {
    margin-top: 0;
  }

  .c-1column > * {
    width: 100%;
  }

  .c-1column > :nth-child(n + 2) {
    margin-top: 48px;
  }

  .c-1column.c-1column--mt-0 > :nth-child(n + 2) {
    margin-top: 0;
  }

  .c-1column.c-1column--mt-x-large > :nth-child(n + 2) {
    margin-top: 36px;
  }
}

@media (max-width: 767px) {
  .c-1column-sp {
    display: flex;
    flex-direction: column;
  }

  .c-1column-sp > * {
    width: 100%;
  }

  .c-1column-sp > :nth-child(n + 2) {
    margin-top: 48px;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .c-1column-tab {
    display: flex;
    flex-direction: column;
  }

  .c-1column-tab > * {
    width: 100%;
  }

  .c-1column-tab > :nth-child(n + 2) {
    margin-top: 48px;
  }
}

@media (min-width: 1024px) {
  .c-1column-pc {
    display: flex;
    flex-direction: column;
  }

  .c-1column-pc > * {
    width: 100%;
  }

  .c-1column-pc > :nth-child(n + 2) {
    margin-top: 48px;
  }
}

/* ==========================
      accountingbpo.html
   ========================== */

.accountingbpo {
  overflow-x: hidden;
}

.u-c--accountingbpo-light-blue {
  background-color: #e9f0f9;
}

.u-c--accountingbpo-blue {
  color: #4258e0;
}

.u-fw--bold {
  font-weight: 700;
}

.u-lh-15 {
  line-height: 1.5 !important;
}

.ab-point_list01,
.ab-point_list02 {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  /* margin-bottom: 50px; */
}

.ab-point_list02 {
  flex-direction: row-reverse;
}

.ab-point-img {
  z-index: 2;
}

.ab-point-number {
  color: #8c97db;
  letter-spacing: .18em;
}

.ab-point_description,
.ab-point_description2 {
  position: relative;
  height: 100%;
  padding: 33px 0;
}

.ab-point-text {
  position: relative;
}

.ab-point_description:before,
.ab-point_description2:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 5000px;
  height: 100%;
  background-color: #fff;
  border-radius: 12px;
}

.ab-point_description:before {
  left: 0;
}

.ab-point_description2:before {
  right: -62px;
}

@media (min-width: 0px) {
  .u-pt-20 {
    padding-top: 20px !important;
  }
  .u-fs-16 {
    font-size: 1.6rem !important;
  }
  .u-fs-20 {
    font-size: 2rem !important;
  }
  .u-fs-30 {
    font-size: 3rem !important;
  }
}

@media screen and (min-width: 768px) {
  .u-px-0-pc {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .u-py-100-pc {
    padding-top: 100px !important;
    padding-bottom: 100px !important;
  }
  .l-main > section.is-service:first-child > :not(:first-child):not(.is-w-full) > * {
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
  }
  .l-main > .hs_cos_wrapper > aside > *,
  .l-main > section:first-child > :not(:first-child):not(.is-w-full) > * {
    margin-left: auto;
    margin-right: auto;
    max-width: 1200px;
  }
  .u-max-w-1100-pc {
    max-width: 1100px !important;
  }
  .ab-point_list01,
  .ab-point_list02 {
    margin-bottom: 72px;
    padding: 0 32px;
  }
  .c-flex-justify-center-pc {
    display: flex;
    justify-content: center;
  }
  .ab-point-img {
    transform: translate(24px, 50px);
  }
  .u-ta-right-pc {
    text-align: right !important;
  }
  .u-w-35p-pc {
    width: 35% !important;
  }
  .u-w-65p-pc {
    width: 65% !important;
  }
  .u-pl-100-pc {
    padding-left: 100px !important;
  }
  .u-mb-30-pc {
    margin-bottom: 30px !important;
  }
  .ab-point_description--right {
    padding-left: 100px !important;
  }
}

@media screen and (max-width: 767px) {
  .ab-point_list01,
  .ab-point_list02 {
    display: block;
  }
  .ab-point-text-wrapper {
    background-color: #fff;
  }
  .u-w-100p-sp {
    width: 100% !important;
  }
  .u-px-15-sp {
    padding-left: 15px !important;
    padding-right: 15px !important;
  }
  .u-pb-60-sp {
    padding-bottom: 60px !important;
  }
  .u-w-80p-sp {
        width: 80% !important;
    }
}
  
/*========================================
Utility（接頭辞 u-）
==========================================*/

.u-ml-half-minus-vw {
  margin-left: calc(50% - 50vw);
}

.u-w-100vw {
  width: 100vw;
}