/* ダウンロードページカスタムスタイル */

/* PC (1280px以上) */
@media (min-width: 1280px), print {
    .download-thumbnail {
        margin-bottom: 40px;
    }

    .download-thumbnail img {
        width: 100%;
        height: auto;
        border-radius: 8px;
        box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    }

    .js-column2-left {
        margin-bottom: 50px;
    }

    .section__title {
        margin-bottom: 40px;
    }

    .section__title h1 {
        color: var(--col_text);
        font-size: 2rem;
        font-weight: 700;
        line-height: 1.5;
        margin-bottom: 10px;
    }

    .section__title h4 {
        color: var(--col_8th);
        font-size: 1.4rem;
        font-weight: 400;
        line-height: 1.6;
    }

    .section__target {
        border-left: 4px solid var(--col_second);
        padding-left: 24px;
        margin-bottom: 40px;
    }

    .section__summary {
        margin-bottom: 40px;
    }

    .section__target h2 {
        color: var(--col_text);
        font-size: 1.6rem;
        font-weight: 700;
        margin-bottom: 16px;
        line-height: 1.5;
    }

    .section__summary h2 {
        color: var(--col_text);
        font-size: 1.6rem;
        font-weight: 700;
        margin-bottom: 16px;
        line-height: 1.5;
    }

    .section__target ul.target-list {
        list-style: none;
        padding-left: 0;
    }

    .section__target ul.target-list li {
        color: var(--col_text);
        font-size: 1.5rem;
        line-height: 1.86;
        margin-bottom: 12px;
        padding-left: 1.5em;
        position: relative;
    }

    .section__target ul.target-list li:before {
        content: "・";
        position: absolute;
        left: 0;
        color: var(--col_8th);
        font-weight: 400;
    }

    .section__target ul.target-list li:last-child {
        margin-bottom: 0;
    }

    .section__summary p {
        color: var(--col_text);
        font-size: 1.5rem;
        line-height: 1.86;
        margin-bottom: 16px;
    }

    .section__summary p:last-child {
        margin-bottom: 0;
    }

    /* STEPボックスの調整（説明文削除版） */
    .page-form .contact__side .step-box__direction {
        display: none;
    }
}

/* タブレット (769px - 1279px) */
@media (min-width: 769px) and (max-width: 1279px) {
    .download-thumbnail {
        margin-bottom: calc(var(--vw) * 3.125);
    }

    .download-thumbnail img {
        width: 100%;
        height: auto;
        border-radius: calc(var(--vw) * 0.625);
        box-shadow: 0 calc(var(--vw) * 0.15625) calc(var(--vw) * 0.625) rgba(0, 0, 0, 0.1);
    }

    .js-column2-left {
        margin-bottom: calc(var(--vw) * 3.90625);
    }

    .section__title {
        margin-bottom: calc(var(--vw) * 3.125);
    }

    .section__title h1 {
        color: var(--col_text);
        font-size: calc(var(--vw) * 1.5625);
        font-weight: 700;
        line-height: 1.5;
        margin-bottom: calc(var(--vw) * 0.78125);
    }

    .section__title h4 {
        color: var(--col_8th);
        font-size: calc(var(--vw) * 1.09375);
        font-weight: 400;
        line-height: 1.6;
    }

    .section__target {
        border-left: calc(var(--vw) * 0.3125) solid var(--col_second);
        padding-left: calc(var(--vw) * 1.875);
        margin-bottom: calc(var(--vw) * 3.125);
    }

    .section__summary {
        margin-bottom: calc(var(--vw) * 3.125);
    }

    .section__target h2 {
        color: var(--col_text);
        font-size: calc(var(--vw) * 1.25);
        font-weight: 700;
        margin-bottom: calc(var(--vw) * 1.25);
        line-height: 1.5;
    }

    .section__summary h2 {
        color: var(--col_text);
        font-size: calc(var(--vw) * 1.25);
        font-weight: 700;
        margin-bottom: calc(var(--vw) * 1.25);
        line-height: 1.5;
    }

    .section__target ul.target-list {
        list-style: none;
        padding-left: 0;
    }

    .section__target ul.target-list li {
        color: var(--col_text);
        font-size: calc(var(--vw) * 1.17188);
        line-height: 1.86;
        margin-bottom: calc(var(--vw) * 0.9375);
        padding-left: 1.5em;
        position: relative;
    }

    .section__target ul.target-list li:before {
        content: "・";
        position: absolute;
        left: 0;
        color: var(--col_8th);
        font-weight: 400;
    }

    .section__target ul.target-list li:last-child {
        margin-bottom: 0;
    }

    .section__summary p {
        color: var(--col_text);
        font-size: calc(var(--vw) * 1.17188);
        line-height: 1.86;
        margin-bottom: calc(var(--vw) * 1.25);
    }

    .section__summary p:last-child {
        margin-bottom: 0;
    }

    /* STEPボックスの調整（説明文削除版） */
    .page-form .contact__side .step-box__direction {
        display: none;
    }
}

/* モバイル (768px以下) */
@media only screen and (max-width: 768px) {
    .download-thumbnail {
        margin-bottom: 7.6923076923076925vw;
    }

    .download-thumbnail img {
        width: 100%;
        height: auto;
        border-radius: 2.051282051282051vw;
        box-shadow: 0 0.5128205128205128vw 2.051282051282051vw rgba(0, 0, 0, 0.1);
    }

    .js-column2-left {
        margin-bottom: 10.256410256410255vw;
    }

    .section__title {
        margin-bottom: 7.6923076923076925vw;
    }

    .section__title h1 {
        color: var(--col_text);
        font-size: 4.615384615384616vw;
        font-weight: 700;
        line-height: 1.5;
        margin-bottom: 2.564102564102564vw;
    }

    .section__title h4 {
        color: var(--col_8th);
        font-size: 3.5897435897435894vw;
        font-weight: 400;
        line-height: 1.6;
    }

    .section__target {
        border-left: 1.0256410256410255vw solid var(--col_second);
        padding-left: 5.128205128205128vw;
        margin-bottom: 7.6923076923076925vw;
    }

    .section__summary {
        margin-bottom: 7.6923076923076925vw;
    }

    .section__target h2 {
        color: var(--col_text);
        font-size: 3.8461538461538463vw;
        font-weight: 700;
        margin-bottom: 4.102564102564102vw;
        line-height: 1.5;
    }

    .section__summary h2 {
        color: var(--col_text);
        font-size: 3.8461538461538463vw;
        font-weight: 700;
        margin-bottom: 4.102564102564102vw;
        line-height: 1.5;
    }

    .section__target ul.target-list {
        list-style: none;
        padding-left: 0;
    }

    .section__target ul.target-list li {
        color: var(--col_text);
        font-size: 3.5897435897435894vw;
        line-height: 1.8;
        margin-bottom: 3.076923076923077vw;
        padding-left: 1.5em;
        position: relative;
    }

    .section__target ul.target-list li:before {
        content: "・";
        position: absolute;
        left: 0;
        color: var(--col_8th);
        font-weight: 400;
    }

    .section__target ul.target-list li:last-child {
        margin-bottom: 0;
    }

    .section__summary p {
        color: var(--col_text);
        font-size: 3.5897435897435894vw;
        line-height: 1.8;
        margin-bottom: 4.102564102564102vw;
    }

    .section__summary p:last-child {
        margin-bottom: 0;
    }

    /* STEPボックスの調整（説明文削除版） */
    .page-form .contact__side .step-box__direction {
        display: none;
    }
}
