@charset "UTF-8";
/* 業務内容
================================================== */
.kv {
  background-image: url(/img/business/kv_sp.png);
}
@media screen and (min-width: 768px) {
  .kv {
    background-image: url(/img/business/kv_pc.png);
  }
}

.sec-02,
.sec-04 {
  background-color: #F1F1F1;
}

/* sec-01
-------------------------------------------------- */
.sec-01 .listWrap {
  position: relative;
  border-left: 1px solid #000;
}
@media screen and (min-width: 768px) {
  .sec-01 .listWrap {
    border: none;
  }
}
.sec-01 .listWrap ul {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .sec-01 .listWrap ul {
    display: flex;
    margin-top: 40px;
    position: relative;
  }
}
@media screen and (min-width: 768px) {
  .sec-01 .listWrap ul::after {
    content: "";
    border-bottom: 1px solid #000;
    position: absolute;
    left: 0;
    bottom: -20px;
    height: 1px;
    width: 100%;
  }
}
.sec-01 .listWrap li {
  margin: 20px 0 0 20px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .sec-01 .listWrap li {
    margin: 0 2.5% 0 0;
    width: 31.66667%;
  }
}
.sec-01 .listWrap li::before {
  content: "";
  border-top: 1px solid #000;
  height: 1px;
  width: 50%;
  position: absolute;
  top: 50%;
  left: -20px;
}
@media screen and (min-width: 768px) {
  .sec-01 .listWrap li::before {
    border-left: 1px solid #000;
    height: 50%;
    width: 1px;
    top: initial;
    left: 50%;
    bottom: -20px;
  }
}
@media screen and (max-width: 767px) {
  .sec-01 .listWrap li:nth-child(1)::after {
    content: "";
    border-left: 3px solid #fff;
    height: calc(50% + 1px);
    width: 3px;
    position: absolute;
    top: -1px;
    left: -22px;
    z-index: 10;
  }
}
@media screen and (min-width: 768px) {
  .sec-01 .listWrap li:nth-child(1)::after {
    content: "";
    background-color: #fff;
    height: 10px;
    width: 50%;
    position: absolute;
    left: 0;
    bottom: -22px;
    z-index: 10;
  }
}
@media screen and (min-width: 768px) {
  .sec-01 .listWrap li:nth-child(3)::after {
    content: "";
    background-color: #fff;
    height: 10px;
    width: 50%;
    position: absolute;
    left: calc(50% + 1px);
    bottom: -22px;
    z-index: 10;
  }
}
@media screen and (min-width: 768px) {
  .sec-01 .listWrap li:nth-child(2)::before {
    bottom: -50px;
  }
}
@media screen and (min-width: 768px) {
  .sec-01 .listWrap li:last-child {
    margin-right: 0;
  }
}
.sec-01 .listWrap .list__inner {
  background-color: #F1F1F1;
  padding: 20px 10px;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .sec-01 .listWrap .list__inner {
    padding: 25px;
  }
}
.sec-01 .listWrap .list__inner .ttl {
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.48;
  text-align: center;
}
.sec-01 .listWrap .list__inner .txt {
  font-size: 2rem;
  line-height: 1.5;
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .sec-01 .listWrap .list__inner .txt {
    margin-top: 15px;
  }
}
.sec-01 .listWrap > p {
  background-color: #fff;
  border: 1px solid #000;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.48;
  text-align: center;
  margin-top: 20px;
  margin-left: -1px;
  padding: 20px 9px;
  position: relative;
  width: calc(100% + 1px);
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .sec-01 .listWrap > p {
    margin: 40px auto 0;
    padding: 20px;
    width: 525px;
  }
}

/* sec-02
-------------------------------------------------- */
/* sp */
@media screen and (max-width: 767px) {
  .sec-02 .tabs {
    margin-top: 30px;
  }
  /* スライドタイトル */
  .sec-02 .accordian_header {
    background-color: #fff;
    border: 1px solid #C6C6CE;
    color: #404360;
    display: block;
    font-size: 2.5rem;
    font-weight: bold;
    line-height: 1.44;
    padding: 6px 45px;
    position: relative;
    text-align: center;
  }
  .sec-02 .accordian_header:before {
    content: "";
    background-color: #404360;
    height: 2px;
    width: 25px;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
  }
  .sec-02 .accordian_header:after {
    content: "";
    background-color: #404360;
    height: 2px;
    width: 25px;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%) rotate(90deg);
  }
  .sec-02 .accordian_header.active {
    color: #fff;
    background-color: #404360;
  }
  .sec-02 .accordian_header.active:after {
    background-color: #fff;
    transform: translateY(-50%);
  }
  /*  */
  .sec-02 .panel {
    background-color: #fff;
    padding: 0 10px;
  }
  .sec-02 .panel > section {
    padding: 20px 0;
    border-bottom: 1px solid #C6C6CE;
  }
  .sec-02 .ttl {
    font-size: 2.5rem;
    font-weight: bold;
    line-height: 1.44;
  }
  .sec-02 .listType-01 .list {
    font-size: 2rem;
    line-height: 1.5;
    margin-top: 10px;
  }
  .sec-02 .listType-01 .list li {
    margin-top: 5px;
    padding-left: 1em;
    text-indent: -1em;
  }
  .sec-02 .listType-02 ul li {
    margin-top: 20px;
  }
  .sec-02 .listType-02 ul li:first-child {
    margin-top: 0;
  }
  .sec-02 .listType-02 .img {
    margin-top: 10px;
  }
  .sec-02 .listType-02 .name {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.45;
    margin-top: 5px;
    text-align: center;
  }
  .sec-02 .listType-02 .txt {
    font-size: 2rem;
    line-height: 1.5;
    margin-top: 5px;
  }
  .sec-02 .listType-03 .swiper {
    margin-top: 20px;
    padding-bottom: 20px;
  }
  .sec-02 .listType-03 .swiper figcaption {
    font-size: 1.4rem;
    line-height: 1.42858;
    margin-top: 5px;
    text-align: center;
  }
  .sec-02 .listType-03 .swiper .swiper-button-prev {
    background-color: rgba(64, 67, 96, 0.5);
    height: calc(100% - 45px);
    width: 25px;
    left: 0;
    top: 22px;
  }
  .sec-02 .listType-03 .swiper .swiper-button-prev::after {
    content: "";
    background-image: url(../img/cmn/icon-arrow-left.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    height: 28.78px;
    width: 7px;
  }
  .sec-02 .listType-03 .swiper .swiper-button-next {
    background-color: rgba(64, 67, 96, 0.5);
    height: calc(100% - 45px);
    width: 25px;
    right: 0;
    top: 22px;
  }
  .sec-02 .listType-03 .swiper .swiper-button-next::after {
    content: "";
    background-image: url(../img/cmn/icon-arrow-right.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    height: 28.78px;
    width: 7px;
  }
  .sec-02 .listType-03 .swiper .swiper-pagination {
    bottom: -5px;
  }
  /* 画像1枚の時 */
  .sec-02 .listType-03 .fewListWrap {
    margin-top: 20px;
  }
  .sec-02 .listType-03 .fewListWrap figure {
    display: block;
    width: 100%;
  }
}
/* pc */
@media screen and (min-width: 768px) {
  .sec-02 .tabs {
    margin-top: 70px;
  }
  .sec-02 .tab_list {
    display: flex;
    justify-content: center;
  }
  .sec-02 .tab_list li {
    background-color: #fff;
    color: #404360;
    cursor: pointer;
    display: block;
    font-size: min(1.98413vw, 25px);
    line-height: 1.44;
    margin-right: 4.16667%;
    padding: 19px min(0.79366vw, 10px);
    text-align: center;
    white-space: nowrap;
    width: 16.66667%;
  }
  .sec-02 .tab_list li:hover {
    font-weight: bold;
  }
  .sec-02 .tab_list li:last-child {
    margin-right: 0;
  }
  .sec-02 .tab_list li.active {
    background-color: #404360;
    color: #fff;
  }
  .sec-02 .panel {
    background-color: #fff;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
    padding: 24px 8.33334% 50px;
    position: relative;
    z-index: 10;
  }
  .sec-02 .panel > section {
    padding: 20px 0;
    border-bottom: 1px solid #A7A7A7;
  }
  .sec-02 .panel .ttl {
    font-size: 2.5rem;
    font-weight: bold;
    line-height: 1.44;
  }
  .sec-02 .panel .listType-01 .list {
    display: flex;
    flex-wrap: wrap;
    margin-top: 10px;
  }
  .sec-02 .panel .listType-01 li {
    font-size: 2rem;
    line-height: 1.5;
    margin: 10px 3% 0 0;
  }
  .sec-02 .panel .listType-02 .list {
    display: flex;
    flex-wrap: wrap;
    margin-top: 10px;
  }
  .sec-02 .panel .listType-02 li {
    margin-top: 20px;
    padding-right: 5%;
    width: 50%;
  }
  .sec-02 .panel .listType-02 li:nth-child(-n+2) {
    margin-top: 0;
  }
  .sec-02 .panel .listType-02 li:nth-child(even) {
    padding: 0 0 0 5%;
  }
  .sec-02 .panel .listType-02 .name {
    font-size: 2rem;
    font-weight: bold;
    line-height: 1.5;
    margin-top: 10px;
    text-align: center;
  }
  .sec-02 .panel .listType-02 .txt {
    font-size: 2rem;
    line-height: 1.5;
    margin-top: 10px;
  }
  .sec-02 .panel .listType-03 .swiper {
    margin-top: 10px;
    max-height: 450px;
    height: 35.71429vw;
  }
  .sec-02 .panel .listType-03 .swiper figure {
    display: block;
    max-height: 450px;
    height: 35.71429vw;
    width: auto;
  }
  .sec-02 .panel .listType-03 figcaption {
    font-size: 2rem;
    line-height: 1.5;
    margin-top: 5px;
    text-align: center;
  }
  .sec-02 .panel .listType-03 .swiper-button-prev {
    background-color: rgba(64, 67, 96, 0.5);
    height: 32.14286vw;
    max-height: 405px;
    width: 36px;
    left: 0;
    top: 0;
  }
  .sec-02 .panel .listType-03 .swiper-button-prev::after {
    content: "";
    background-image: url(../img/cmn/icon-arrow-left.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    height: 28.78px;
    width: 7px;
    position: absolute;
    top: 50%;
  }
  .sec-02 .panel .listType-03 .swiper-button-next {
    background-color: rgba(64, 67, 96, 0.5);
    height: 32.14286vw;
    max-height: 405px;
    width: 36px;
    right: 0;
    top: 0;
  }
  .sec-02 .panel .listType-03 .swiper-button-next::after {
    content: "";
    background-image: url(../img/cmn/icon-arrow-right.png);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    height: 28.78px;
    width: 7px;
    position: absolute;
    top: 50%;
  }
  .sec-02 .panel .listType-03 .swiper-pagination {
    bottom: -5px;
  }
  /* 画像1枚の時 */
  .sec-02 .panel .fewListWrap {
    margin-top: 10px;
  }
  .sec-02 .panel .fewListWrap figure {
    display: block;
    margin: 0 auto;
    width: 600px;
  }
}
/* sec-03
-------------------------------------------------- */
.sec-03 .sec__inner > section {
  margin-top: 50px;
}
@media screen and (min-width: 768px) {
  .sec-03 .sec__inner > section {
    margin-top: 130px;
    position: relative;
  }
}
.sec-03 .sec__inner > section:first-child {
  margin-top: 70px;
}
@media screen and (min-width: 768px) {
  .sec-03 .sec__inner > section:first-child {
    margin-top: 130px;
  }
}

.sec-03 .img {
  border: 1px solid #404360;
  width: 90.79366%;
}
@media screen and (min-width: 768px) {
  .sec-03 .img {
    width: 600px;
  }
}
.sec-03 .img picture {
  display: block;
  position: relative;
}
@media screen and (min-width: 768px) {
  .sec-03 .img picture {
    width: 600px;
  }
}

@media screen and (min-width: 768px) {
  .sec-03 .type-01 .img {
    margin: 0 auto 0 60px;
  }
}
.sec-03 .type-01 picture {
  bottom: 19px;
  left: 29px;
}
@media screen and (min-width: 768px) {
  .sec-03 .type-01 picture {
    bottom: 60px;
    right: 60px;
    left: initial;
  }
}

.sec-03 .type-02 .img {
  margin: 0 0 0 auto;
}
@media screen and (min-width: 768px) {
  .sec-03 .type-02 .img {
    margin: 0 60px 0 auto;
  }
}
.sec-03 .type-02 picture {
  bottom: 19px;
  right: 29px;
}
@media screen and (min-width: 768px) {
  .sec-03 .type-02 picture {
    bottom: 60px;
    left: 60px;
  }
}

/*  */
.sec-03 .wrap {
  margin-top: 10px;
}
@media screen and (min-width: 768px) {
  .sec-03 .wrap {
    background-color: #F1F1F1;
    margin: 0;
    padding: 25px;
    position: absolute;
    bottom: 25px;
    width: 625px;
  }
}

@media screen and (min-width: 768px) {
  .sec-03 .type-01 .wrap {
    right: 26px;
  }
}

@media screen and (min-width: 768px) {
  .sec-03 .type-02 .wrap {
    left: 26px;
  }
}

.sec-03 .ttl {
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.48;
}

.sec-03 .txt {
  font-size: 2rem;
  line-height: 1.5;
  margin-top: 5px;
}
@media screen and (min-width: 768px) {
  .sec-03 .txt {
    margin-top: 10px;
  }
}

/* sec-04
-------------------------------------------------- */
.sec-04 .list,
.sec-04 .txt {
  font-size: 2rem;
  line-height: 1.5;
}
.sec-04 .list {
  margin-top: 50px;
}
.sec-04 .list li {
  padding-left: 1em;
  text-indent: -1em;
}
.sec-04 .txt {
  margin-top: 30px;
}

/* sec-05
-------------------------------------------------- */
.sec-05 .qaList {
  margin-top: 50px;
}
.sec-05 .qaList > li {
  margin-top: 10px;
}

/* 質問部分 */
.sec-05 .question {
  background-color: #404360;
  color: #fff;
  padding: 10px 54px 10px 10px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .sec-05 .question {
    padding: 10px 50px 10px 20px;
  }
}
.sec-05 .question::before {
  content: "";
  background-color: #fff;
  height: 3px;
  width: 30px;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
}
.sec-05 .question::after {
  content: "";
  background-color: #fff;
  height: 3px;
  width: 30px;
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%) rotate(90deg);
}
@media screen and (min-width: 768px) {
  .sec-05 .question:hover {
    cursor: pointer;
  }
}

.sec-05 .question.is-open::after {
  transform: translateY(-50%);
}

/* アンサー部分 */
.sec-05 .answerWrap {
  border-bottom: 1px solid #C6C6CE;
  display: none;
  padding: 10px;
}
@media screen and (min-width: 768px) {
  .sec-05 .answerWrap {
    padding: 10px 20px;
  }
}
.sec-05 .answerWrap .answerTxt {
  font-size: 2rem;
  line-height: 1.5;
}
.sec-05 .answerWrap .answerBold {
  display: block;
  font-weight: bold;
}/*# sourceMappingURL=business.css.map */