.special_top .page_content_border .inner {
    padding-bottom: 100px;
    min-height: 500px;
}

.btn {
    background-image: url(../images/special/btn_deco.svg);
    background-position: bottom;
    background-repeat: no-repeat;
}

.btn a {
    display: block;
    color: #fff;
    gap: 0 60px;
    padding: 10px 0;
    position: relative;
}

.btn a::after {
    content: '';
    background-image: url(../images/special/arrow.svg);
    background-repeat: no-repeat;
    background-position: right;
    position: absolute;
    max-width: 30px;
    max-height: 30px;
    width: 7%;
    height: 28%;
    bottom: 15px;
    right: 5%;
    fill: #fff;
}

.btn a:hover::after {
    background-image: url(../images/special/arrow_hov.svg);
}


.btn a .date {
    font-size: clamp(12px,2vw,20px);
}

.btn a .ttl {
    position: relative;
    width: 84%;
    color: #fff000;
    font-weight: bold;
    font-size: clamp(14px,2vw,25px);
}


@media screen and (max-width: 730px) {

    .special_top .page_content_border .inner {
        padding-bottom: 40px;
    }
    
    .btn a .date {
        margin-bottom: 2px;
    }
    
    .btn a::after {
        right: 4%;
        bottom: 10px;
        width: 20px;
        height: 20px;
    }
}


/* スペシャル記事共通 */
.special_content_ttl {
    background-image: url(../images/special/special_content_ttl.png);
    background-size: 100% 100%;
    padding: 20px 0;
    font-size: clamp(17px,2vw,25px);
    font-weight: bold;
    text-align: center;
    color: #fff000;
    margin-bottom: 30px;
}

.special_content_ttl .ttl {
    width: 80%;
    margin: 0 auto;
}


.wrap_lead {
    font-size: clamp(14px,2vw,21px);
    line-height: 1.7;
    font-weight: bold;
}

.wrap_txt {
    font-size: clamp(13px,1.4vw,15px);
    line-height: 1.7;
    margin-bottom: 18px;
}

.wrap_txt.wide {
    grid-column: 1/3;
}

.back_btn {
    max-width: 300px;
    width: 35%;
    margin: 30px auto 0;
}

@media screen and (max-width: 730px) {

    .special_content_ttl {
        background-image: url(../images/special/special_content_ttl_sp.png);
        padding: 10px 0;
        margin-bottom: 20px;
    }

    .back_btn {
        width: 80%;
        margin: 10px auto;
    }
}






/* スペシャル記事1 */

.special_1 .wrap01 .container {
    display: grid;
    grid-template-columns: 1fr 40%;
    gap: 0 30px;
    margin-top: 20px;
}


.special_1 .wrap02 {
    margin-top: 20px;
}

.special_1 .wrap01 .container .image {
    grid-column: 2;
    grid-row: 1/6;
    margin-bottom: 18px;
}

.special_1 .wrap02 .container {
    display: grid;
    grid-template-columns: 40% 1fr;
    gap: 0 30px;
}

.special_1 .wrap02 .container .image {
    grid-column: 1;
    grid-row: 1/5;
    margin-bottom: 18px;
}




.special_1 .wrap03 {
    display: grid;
    grid-template-columns: 35.5% 1fr;
    margin-top: 30px;
    gap: 0 30px;
}

.special_1 .wrap03 .image {
    grid-row: 1/4;
}

.special_1 .wrap03 .wrap_txt a {
    color: #65b7ec;
}

@media screen and (max-width: 1000px) {

    .special_1 .wrap01 .wrap_txt:nth-child(4),
    .special_1 .wrap01 .wrap_txt:nth-child(5) {
        grid-column: 1/3;
    }

    .special_1 .wrap02 .wrap_txt:nth-child(4) {
        grid-column: 1/3;
    }

    .special_1 .wrap03 .image {
        grid-row: 1/2;
        margin-bottom: 18px;
    }

    .special_1 .wrap03 .wrap_txt02 {
        grid-column: 1/3;
    }
}

@media screen and (max-width: 730px) {

    .special_1 .wrap01 .container {
        display: flex;
        flex-direction: column;
    }

    .special_1 .wrap02 {
        margin-top: 0;
    }

    .special_1 .wrap02 .container {
        display: flex;
        flex-direction: column;
    }

    .special_1 .wrap03 {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .special_1 .wrap03 .wrap_txt {
        width: 100%;
    }

    .special_1 .wrap03 .image {
        width: 100%;
    }
}




/* スペシャル記事2 */

.special_2 .wrap01 .container {
    display: grid;
    grid-template-columns: 1fr 30%;
    gap: 0 30px;
    margin-top: 20px;
}

.special_2 .wrap01 .container .image {
    grid-column: 2/3;
    grid-row: 1/5;
    margin-bottom: 18px;
}

.special_2 .wrap02 {
    margin: 20px 0 50px;
    border-top: 2px solid #fff;
    padding-top: 40px;
}

.special_2 .wrap02 .bnr {
    max-width: 760px;
    margin: 0 auto;
}

.special_2 .wrap02 .wrap_lead {
    text-align: center;
    margin-top: 20px;
}

@media screen and (max-width: 1000px) {

    .special_2 .wrap01 .container .wrap_txt:nth-child(3),
    .special_2 .wrap01 .container .wrap_txt:nth-child(4) {
        grid-column: 1/3;
    }

    .special_2 .wrap01 .container .image {
        grid-row: 1/3;
    }
}

@media screen and (max-width: 730px) {

    .special_2 .wrap01 .container {
        display: flex;
        flex-direction: column;
    }

    .special_2 .wrap02 {
        border-width: 1px;
        margin: 20px 0 50px;
        padding-top: 40px;
    }

    .special_2 .wrap02 .wrap_lead {
        text-align: justify;
    }
}