﻿@media screen and (max-width: 768px) {
  .sec-8 {
    position: relative;
    width: 100%;
    max-width: 375px;
    height: 1460px; /* form-cardが1431pxで終わるのでその分詰める */
    margin: 0 auto;
    overflow: visible; /* common.cssのsection{overflow-x:hidden}を上書き。top:-50pxの要素が切れないようにする */
    z-index: 10;
  }

  .sec-8__inner {
    position: absolute;
    width: 375px;
    height: 100%;
    left: calc(50% - 375px/2);
    top: 0;
  }

  .sec-8__form-bg {
    position: absolute;
    width: 375px;
    left: 0;
    top: -50px;
    height: 1510px;
    background: #00A179;
    z-index: 0;
  }

  .sec-8__footer-bg {
    position: absolute;
    width: 375px;
    left: 0;
    top: 1500px;
    height: 108px;
    background: #1E333B;
    z-index: 0;
  }

  .sec-8__privacy {
    position: absolute;
    width: 100%;
    text-align: center;
    left: 0;
    top: 1525px;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 14px;
    line-height: 1.7;
    color: #FFFFFF;
    text-decoration: none;
    z-index: 2;
  }

  .sec-8__copyright {
    position: absolute;
    width: 100%;
    text-align: center;
    left: 0;
    top: 1560px;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 14px;
    line-height: 1.7;
    color: #FFFFFF;
    z-index: 2;
  }

  .sec-8__bg {
    position: absolute;
    width: 335px;
    height: 332px;
    left: 20px;
    top: 0px;
    background: url('../images/sp/sec8/グループ 108@2x 1.png') no-repeat center center / contain;
    z-index: 1;
  }

  .sec-8__cta-btn {
    display: block;
    position: absolute;
    width: 305px;
    height: 61.82px;
    left: 35px;
    border-radius: 31px;
    z-index: 2;
    /* 光のアニメーションがはみ出さないように */
    overflow: hidden;
  }

  /* スマホ版にも光が走るアニメーションを全復旧 */
  .sec-8__cta-btn::after {
    content: "";
    position: absolute;
    width: 40%;
    height: 100%;
    top: 0;
    left: -40%;
    background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.15) 30%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0.15) 70%, transparent 100%);
    z-index: 3;
    pointer-events: none;
    animation: sweepLight 3s ease-in-out infinite;
  }

  .btn-line {
    top: 188px;
    background: url('../images/sp/sec8/CTA(LINE) 1.png') no-repeat center center / contain;
  }

  .btn-chatwork {
    top: 260px;
    background: url('../images/sp/sec8/CTA(chatwork) 1.png') no-repeat center center / contain;
  }

  .sec-8__mail-icon {
    position: absolute;
    width: 35px;
    height: 35px;
    left: calc(50% - 17.5px);
    top: 372px;
    background: url('../images/sp/sec8/メールの無料アイコンその8 1.png') no-repeat center center / contain;
    z-index: 2;
  }

  .sec-8__mail-text {
    position: absolute;
    width: 324px;
    height: 64px;
    left: calc(50% - 162px);
    top: 417px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 18px;
    line-height: 1.75;
    text-align: center;
    color: #FFFFFF;
    z-index: 2;
  }

  .sec-8__mail-subtext {
    position: absolute;
    width: 264px;
    height: 42px;
    left: calc(50% - 132px);
    top: 501px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 1.75;
    text-align: center;
    color: #FFFFFF;
    z-index: 2;
  }

  .sec-8__mail-arrow {
    position: absolute;
    width: 15px;
    height: 16px;
    left: calc(50% - 7.5px);
    top: 558px;
    background: url('../images/sp/sec8/7896986 1.png') no-repeat center center / contain;
    z-index: 2;
  }

  .sec-8__form-card {
    position: absolute;
    width: 335px;
    height: 842px;
    left: calc(50% - 167.5px);
    top: 589px;
    background: #FFFFFF;
    border-radius: 5px;
    z-index: 1;
  }

  .sec-8__label-category-title {
    position: absolute;
    width: 112px;
    height: 25px;
    left: 35px;
    top: 614px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.75;
    color: #000000;
    z-index: 2;
  }

  .sec-8__tag-required-bg-category {
    position: absolute;
    width: 35px;
    height: 17px;
    left: 152px;
    top: 618px;
    background: #CC1512;
    border-radius: 100px;
    z-index: 2;
  }

  .sec-8__tag-required-text-category {
    position: absolute;
    width: 24px;
    height: 21px;
    left: 158px;
    top: 616px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 12px;
    color: #FFFFFF;
    z-index: 3;
  }

  .sec-8__checkbox-web-wrapper {
    position: absolute;
    display: flex;
    align-items: center;
    cursor: pointer;
    left: 35px;
    top: 649px;
    z-index: 2;
  }

  .sec-8__checkbox-lp-wrapper {
    position: absolute;
    display: flex;
    align-items: center;
    cursor: pointer;
    left: 164px;
    top: 649px;
    z-index: 2;
  }

  .sec-8__checkbox-hp-wrapper {
    position: absolute;
    display: flex;
    align-items: center;
    cursor: pointer;
    left: 35px;
    top: 679px;
    z-index: 2;
  }

  .sec-8__checkbox-other-wrapper {
    position: absolute;
    display: flex;
    align-items: center;
    cursor: pointer;
    left: 164px;
    top: 679px;
    z-index: 2;
  }

  .sec-8__label-web,
  .sec-8__label-lp,
  .sec-8__label-hp,
  .sec-8__label-other {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.75;
    color: #000000;
  }

  .sec-8__input-checkbox {
    box-sizing: border-box;
    width: 20px;
    height: 20px;
    margin-right: 5px;
    border: 1px solid #000000;
    border-radius: 3px;
  }

  .sec-8__label-company {
    position: absolute;
    width: 82px;
    height: 25px;
    left: 35px;
    top: 724px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.75;
    color: #000000;
    z-index: 2;
  }

  .sec-8__tag-optional-bg {
    position: absolute;
    width: 35px;
    height: 17px;
    left: 122px;
    top: 728px;
    background: #9E9E9E;
    border-radius: 100px;
    z-index: 2;
  }

  .sec-8__tag-optional-text {
    position: absolute;
    left: 128px;
    top: 726px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 12px;
    color: #FFFFFF;
    z-index: 3;
  }

  .sec-8__input-company {
    box-sizing: border-box;
    position: absolute;
    width: 305px;
    height: 40px;
    left: 35px;
    top: 759px;
    background: #F7F7F7;
    border: 1px solid #E3E3E3;
    border-radius: 5px;
    padding: 0 15px;
    z-index: 2;
  }

  .sec-8__label-name {
    position: absolute;
    width: 28px;
    height: 25px;
    left: 35px;
    top: 814px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.75;
    color: #000000;
    z-index: 2;
  }

  .sec-8__tag-required-bg-name {
    position: absolute;
    width: 35px;
    height: 17px;
    left: 68px;
    top: 818px;
    background: #CC1512;
    border-radius: 100px;
    z-index: 2;
  }

  .sec-8__tag-required-text-name {
    position: absolute;
    left: 74px;
    top: 816px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 12px;
    color: #FFFFFF;
    z-index: 3;
  }

  .sec-8__input-name {
    box-sizing: border-box;
    position: absolute;
    width: 305px;
    height: 40px;
    left: 35px;
    top: 849px;
    background: #F7F7F7;
    border: 1px solid #E3E3E3;
    border-radius: 5px;
    padding: 0 15px;
    z-index: 2;
  }

  .sec-8__label-email {
    position: absolute;
    width: 98px;
    height: 25px;
    left: 35px;
    top: 904px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.75;
    color: #000000;
    z-index: 2;
  }

  .sec-8__tag-required-bg-email {
    position: absolute;
    width: 35px;
    height: 17px;
    left: 138px;
    top: 908px;
    background: #CC1512;
    border-radius: 100px;
    z-index: 2;
  }

  .sec-8__tag-required-text-email {
    position: absolute;
    left: 144px;
    top: 906px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 12px;
    color: #FFFFFF;
    z-index: 3;
  }

  .sec-8__input-email {
    box-sizing: border-box;
    position: absolute;
    width: 305px;
    height: 40px;
    left: 35px;
    top: 939px;
    background: #F7F7F7;
    border: 1px solid #E3E3E3;
    border-radius: 5px;
    padding: 0 15px;
    z-index: 2;
  }

  .sec-8__label-budget {
    position: absolute;
    width: 42px;
    height: 25px;
    left: 35px;
    top: 994px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.75;
    color: #000000;
    z-index: 2;
  }

  .sec-8__tag-optional-bg-budget {
    position: absolute;
    width: 35px;
    height: 17px;
    left: 82px;
    top: 998px;
    background: #9E9E9E;
    border-radius: 100px;
    z-index: 2;
  }

  .sec-8__tag-optional-text-budget {
    position: absolute;
    left: 88px;
    top: 996px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 12px;
    color: #FFFFFF;
    z-index: 3;
  }

  .sec-8__input-budget {
    box-sizing: border-box;
    position: absolute;
    width: 305px;
    height: 40px;
    left: 35px;
    top: 1029px;
    background: #F7F7F7;
    border: 1px solid #E3E3E3;
    border-radius: 5px;
    padding: 0 15px;
    z-index: 2;
  }

  .sec-8__label-consult {
    position: absolute;
    width: 70px;
    height: 25px;
    left: 35px;
    top: 1084px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.75;
    color: #000000;
    z-index: 2;
  }

  .sec-8__tag-required-bg-consult {
    position: absolute;
    width: 35px;
    height: 17px;
    left: 110px;
    top: 1088px;
    background: #CC1512;
    border-radius: 100px;
    z-index: 2;
  }

  .sec-8__tag-required-text-consult {
    position: absolute;
    left: 116px;
    top: 1086px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 12px;
    color: #FFFFFF;
    z-index: 3;
  }

  .sec-8__textarea-consult {
    box-sizing: border-box;
    position: absolute;
    width: 305px;
    height: 170px;
    left: 35px;
    top: 1119px;
    background: #F7F7F7;
    border: 1px solid #E3E3E3;
    border-radius: 5px;
    padding: 10px 15px;
    resize: none;
    z-index: 2;
  }

  .sec-8__checkbox-agree-wrapper {
    position: absolute;
    display: flex;
    align-items: center;
    cursor: pointer;
    left: 67px;
    top: 1314px;
    z-index: 2;
  }

  .sec-8__checkbox-agree-wrapper .sec-8__input-checkbox {
    width: 18px;
    height: 18px;
    margin-right: 10px;
    border: 1px solid #000000;
    border-radius: 3px;
  }

  .sec-8__privacy-link,
  .sec-8__agree-text {
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 14px;
    line-height: 1.75;
  }

  .sec-8__privacy-link {
    color: #00A179;
    text-decoration: underline;
  }

  .sec-8__submit-btn {
    box-sizing: border-box;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 305px;
    height: 42px;
    left: 35px;
    top: 1364px;
    background: #FFFFFF;
    border: 2px solid #00A179;
    border-radius: 5px;
    z-index: 2;
    cursor: pointer;
  }

  .sec-8__submit-text {
    width: 208px;
    height: 28px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 700;
    font-size: 16px;
    color: #00A179;
  }

  .sec-8__submit-btn::after {
    content: "";
    position: absolute;
    right: 20px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-top: 2px solid #00A179;
    border-right: 2px solid #00A179;
    transform: translateY(-50%) rotate(45deg);
  }
}

/* end @media */