@charset "utf-8";

/* TOPページ
--------------------------------------------------------- */
@media screen and (max-width: 768px) {
  /* KVエリア
  --------------------------------------------------------- */
  .kv-area {
    padding-top: 58px;
    background-image: url("../../images/biz/top/img-kv-bg_01_sp.png"), url("../../images/biz/top/img-kv-bg_02_sp.png");
    background-size: 400px auto, 350px auto;
    background-position: right -250px top -50px, left -270px bottom 100px;
  }

  .kv-area .inner {
    max-width: 100%;
    padding: 30px 25px 40px;
  }

  .kv-content {
    display: block;
  }

  .kv-content .text {
    width: 100%;
    margin-top: 0;
  }

  .kv-content .img {
    width: 100%;
    max-width: 470px;
    margin: 0 auto;
  }

  .kv-content h1 {
    margin: 0 0 20px;
  }

  .kv-area .btn-wrap {
    margin-top: 30px;
  }

  .kv-area .btn {
    margin: 0 auto;
    font-size: 20px;
  }

  .kv-area .btn::after {
    right: 20px;
  }

  /* top-partner-area
--------------------------------------------------------- */
  .top-partner-area > .inner {
    display: block;
    padding: 30px 0 40px;
  }

  .top-partner-area .head {
    width: calc(100% - 50px);
    padding: 10px;
    margin: 0 auto 20px;
  }

  .top-partner-area .list-flex-partner {
    width: 100%;
  }

  .list-flex-partner p {
    display: flex !important;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 120px;
    height: 55px;
    border: 1px solid #eee;
    border-radius: 5px;
    margin: 0 5px;
    padding: 5px;
  }

  .list-flex-partner img {
    width: auto;
    max-height: 45px;
  }

  /* ループスライダー 逆戻り防止 */
  .slick-slider div {
    transition: none;
  }

  /* top-problem-area
  --------------------------------------------------------- */
  .top-problem-area .inner {
    padding: 40px 25px 20px;
  }

  .list-flex-problem {
    padding: 0;
  }

  .list-flex-problem > li {
    width: calc((100% / 2) - 10px);
    box-shadow: 0 0 20px rgba(20, 138, 164, 0.2);
    font-size: 14px;
    padding: 20px 15px;
    text-align: left;
  }

  .list-flex-problem > li:nth-child(n + 3) {
    margin-top: 20px;
  }

  .list-flex-problem > li .icon {
    width: 50%;
    margin: 0 auto 10px;
    position: static;
    transform: translateX(0);
  }

  /* top-about-area
  --------------------------------------------------------- */
  .top-about-area::before,
  .top-about-area::after {
    height: 100px;
  }

  .top-about-area .inner {
    padding: 100px 25px 100px;
  }

  .img-achievement,
  .img-problem-category {
    width: 100%;
  }

  .text-about-wrap {
    width: 100%;
    margin: 30px 0 0;
  }

  .img-problem-category {
    margin-top: 20px;
  }

  .text-lead-care > span::before {
    width: 5px;
    height: 5px;
  }

  /* top-merit-area
  --------------------------------------------------------- */
  .top-merit-area {
    background-position: -25px bottom;
    background-size: 90% auto;
  }

  .top-merit-area .inner {
    padding: 10px 25px 300px;
  }

  .top-merit-area .ttl-lead-text {
    width: 100%;
    margin: 0 0 30px;
  }

  .img-merit-point {
    width: 280px;
    top: auto;
    right: auto;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
  }

  .list-flex-merit {
    padding: 0;
  }

  .list-flex-merit > li {
    width: 100%;
    box-shadow: 0 0 20px rgba(20, 138, 164, 0.2);
    font-size: 14px;
    padding: 25px 20px;
  }

  .list-flex-merit > li + li {
    margin-top: 40px;
  }

  .list-flex-merit > li > .content {
    min-height: auto;
  }

  .list-flex-merit > li > .icon {
    width: 50px;
  }

  /* top-feature-area
  --------------------------------------------------------- */
  .list-box-feature > li {
    padding: 0;
  }

  .list-box-feature > li + li {
    margin-top: 70px;
  }

  .feature-wrap {
    display: block;
  }

  .list-box-feature > li:nth-child(2n) .feature-wrap > .text {
    order: 0;
  }

  .list-box-feature > li:nth-child(2n) .feature-wrap > .img {
    order: 1;
  }

  .feature-wrap > .text {
    width: 100%;
  }

  .feature-wrap > .img {
    width: 100%;
    max-width: 400px;
    margin: 30px auto 0;
  }

  .feature-wrap > .img::after {
    bottom: -20px;
  }

  /* カウンセラー紹介 */
  .feature-intro-wrap {
    box-shadow: 0 0 20px rgba(20, 138, 164, 0.2);
    width: 100%;
    padding: 25px;
    margin-top: 50px;
  }

  .ttl-intro {
    font-size: 20px;
    margin-bottom: 20px;
  }

  .ttl-intro::before,
  .ttl-intro::after {
    width: 8px;
    height: 39px;
  }

  .ttl-intro::before {
    margin-right: 10px;
  }

  .ttl-intro::after {
    margin-left: 10px;
  }

  .intro-item {
    width: 100%;
    height: auto;
    padding: 10px 10px;
    margin-bottom: 30px;
    position: relative;
    top: auto;
    right: auto;
  }

  .intro-item::before {
    height: 20px;
    width: 25px;
    left: 50%;
    bottom: -15px;
    transform: rotate(0) translateX(-50%);
  }

  .list-flex-intro > li {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    margin: 0;
  }

  .list-flex-intro > li + li {
    margin-top: 15px;
  }

  .list-flex-intro .photo {
    width: 90px;
    height: 90px;
  }

  .list-flex-intro .prof {
    width: calc(100% - 105px);
    margin: 0 0 0 15px;
  }

  .list-flex-intro .name {
    font-size: 18px;
    text-align: left;
  }

  .list-flex-intro .license {
    justify-content: flex-start;
    font-size: 14px;
  }

  /* 保有資格 */
  .feature-intro-item {
    padding: 20px;
    margin-top: 30px;
  }

  .list-license > li {
    width: 100%;
    margin-right: 0;
  }

  .feature-intro-item .text-etc {
    font-size: 14px;
    margin-top: 5px;
    position: static;
  }

  /* top-support-area
  --------------------------------------------------------- */
  .list-support {
    padding: 0;
  }

  .list-support > li {
    box-shadow: 0 0 20px rgba(20, 138, 164, 0.2);
    padding: 25px;
  }

  .list-support > li + li {
    margin-top: 40px;
  }

  .support-content-wrap {
    display: block;
    padding-top: 30px;
    margin-top: 20px;
  }

  .support-content-wrap > .content {
    width: 100%;
  }

  .support-content-wrap > .img {
    width: 100%;
    margin-top: 20px;
  }

  .list-support-text > li {
    padding: 1px 0 1px 27px;
  }

  .list-support-text > li + li {
    margin-top: 15px;
  }

  .list-support-text > li::before {
    width: 18px;
    height: 27px;
  }

  .list-support-text.is-solution {
    margin-top: 55px;
    position: relative;
  }

  .list-support-text.is-solution::before {
    height: 20px;
    width: 30px;
    top: -37px;
  }

  /* top-flow-area
  --------------------------------------------------------- */
  .top-flow-area {
    margin: 100px 0;
  }

  .top-flow-area::before,
  .top-flow-area::after {
    height: 100px;
  }

  .top-flow-area::before {
    top: -100px;
  }

  .top-flow-area::after {
    bottom: -100px;
  }

  .top-flow-area .inner {
    padding: 0 25px;
  }

  .list-flex-flow {
    padding: 0;
  }

  .list-flex-flow > li {
    width: 100%;
    box-shadow: 0 0 20px rgba(20, 138, 164, 0.2);
    padding: 30px 25px 25px;
  }

  .list-flex-flow > li + li {
    margin: 60px 0 0 0;
  }

  .list-flex-flow > li + li::before {
    height: 20px;
    width: 30px;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    top: -37px;
    left: 50%;
    transform: translate(-50%, 0);
  }

  .list-flex-flow .step {
    width: 60px;
    height: 60px;
    font-size: 14px;
    top: -10px;
    left: -10px;
  }

  .list-flex-flow .step .num {
    font-size: 22px;
  }

  .list-flex-flow .ttl-flow {
    font-size: 20px;
    min-height: auto;
    margin-bottom: 20px;
  }

  .list-flex-flow .icon {
    margin-bottom: 15px;
  }

  /* top-event-area
  --------------------------------------------------------- */
  .list-box-event > li + li {
    margin-top: 35px;
  }

  .event-wrap {
    display: block;
    box-shadow: 0 0 20px rgba(20, 138, 164, 0.2);
    padding: 50px 20px 20px;
  }

  .event-wrap > .img {
    width: 100%;
  }

  .event-wrap > .content {
    width: 100%;
    margin-top: 20px;
  }

  .event-wrap .status-event {
    font-size: 14px;
    border-radius: var(--border-biz-radius) 0;
    width: 88px;
    padding: 4px 12px;
    position: absolute;
    top: 0;
    left: 0;
  }

  .event-wrap .ttl-event {
    font-size: 18px;
  }

  .event-wrap .date-event,
  .event-wrap .place-event {
    font-size: 14px;
  }

  /* top-news-area
--------------------------------------------------------- */
  .list-news > li + li {
    padding-top: 25px;
    margin-top: 25px;
  }

  .news-list-wrap .date-news {
    width: auto;
    font-size: 14px;
    margin-right: 15px;
  }

  .news-list-wrap .label-news {
    font-size: 12px;
    padding: 2px 13px;
  }

  .news-list-wrap > .lower {
    display: block;
  }

  .news-list-wrap .ttl-news {
    width: 100%;
    font-size: 16px;
  }

  /* top-contact-area
  --------------------------------------------------------- */
  .top-contact-area > .inner {
    padding: 40px 25px;
  }

  .list-flex-contact > li {
    width: 100%;
    margin: 0;
  }

  .list-flex-contact > li + li {
    margin-top: 25px;
  }

  .list-flex-contact > li > .head {
    font-size: 20px;
    margin: 5px 0 15px;
  }

  /* 追従 ウェビナーお知らせ
  --------------------------------------------------------- */
  .floating-event {
    box-shadow: 0 0 20px rgba(20, 138, 164, 0.2);
    font-size: 14px;
    width: calc(100% - 50px);
    right: 0;
    left: 50%;
    transform: translateX(-50%);
  }

  .list-floating-event > li .img {
    width: 100px;
  }

  .list-floating-event > li .content {
    width: calc(100% - 115px);
  }
}
