/* 6つの特長 */

.feature .content-block h3 {
    text-align: center;
}

.feature .content-block ol {
    margin: 60px 0 0;
    padding: 0;
    list-style: none;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 30px;
}

.feature .content-block ol li a {
    transition: all 0.3s ease;
}

.feature .content-block ol li a:hover {
    /* box-shadow: 0 10px 10px 2px rgb(0 0 0 / 30%); */
    opacity: .5;
}

.feature .content-block ol li a img {
    max-width: 187px;
}

@media screen and (max-width: 767px) {
    .feature .content-block ol {
        grid-template-columns: repeat(3, 1fr);
        gap: 1rem;
    }
}

/* 特長1 */

.feature1 {
    background: #f2f2f2;
}

.feature1 .content-block {
    display: grid;
    grid-template-columns: 1fr;
    gap: 60px;
}

.feature1 .content-block h3 {
    text-align: center;
}

.feature1 .content-block .image-box {
    max-width: 1030px;
    margin: 0 auto;
}

.feature1 .content-block p {
    text-align: center;
}

.feature1 .content-block .text-box {
    text-align: center;
    display: grid;
    grid-template-columns: 1fr;
    gap: 20px;
}

.feature1 .content-block .text-box .text-red,
.feature1 .content-block .text-box strong {
    color: #c02;
}

.feature1 .content-block .cta-box a {
    margin: 0 auto;
}

.feature1 .content-block .company-logo-box {
    max-width: 806px;
    margin: 0 auto;
}

.feature1 .content-block .company-logo-box img {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .feature1 .hedding-block h2 img {
        width: 120px;
    }
}

/* 特長2 */

.feature2 .wrapper {
    max-width: 970px;
}

.feature2 .content-block h3 {
    text-align: center;
}

.feature2 .content-block .description {
    margin-top: 60px;
    text-align: center;
    font-weight: 700;
}

.feature2 .content-block .table-scroll {
    margin: 60px auto 0;
    overflow-x: auto;
}

.feature2 .content-block table {
    width: 100%;
    min-width: 924px;
    border-collapse: separate;
    border-spacing: 11px;
    table-layout: fixed;
}

.feature2 .content-block table thead th {
    box-sizing: border-box;
    height: 73px;
    background: linear-gradient(113deg, #AC020E 26.99%, #91000A 85.99%);
    text-align: center;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
    color: #fff;
}

.feature2 .content-block table thead th:first-child {
    background: none;
}

.feature2 .content-block table thead th:nth-child(2) {
    border-radius: 20px 0 0 0;
}

.feature2 .content-block table thead th:last-child {
    border-radius: 0 20px 0 0;
}

.feature2 .content-block table tbody th {
    box-sizing: border-box;
    width: 267px;
    height: 106px;
    border: 3px solid #c02;
    background: #fff;
    color: #c02;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 24px;
    white-space: nowrap;
}

.feature2 .content-block table tbody tr:nth-child(1) th {
    border-radius: 20px 0 0 0;
}

.feature2 .content-block table tbody tr:last-child th {
    border-radius: 0 0 0 20px;
}

.feature2 .content-block table tbody td {
    width: 317px;
    background: #F2F2F2;
    text-align: center;
    font-weight: 700;
}

.feature2 .content-block h4 {
    max-width: 525px;
    margin: 80px auto 0!important;
    height: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
    border: 1px solid #c02;
}

.feature2 .content-block ul {
    margin-top: 43px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 56px;
}

.feature2 .content-block ul li .title {
    max-width: 434px;
    height: 59px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    border-radius: 10px 10px 0 0;
    background: linear-gradient(113deg, #AC020E 26.99%, #91000A 85.99%);
}

.feature2 .content-block ul li .text {
    padding: 30px 20px;
    background: #f2f2f2;
    font-weight: 700;
    font-family: var(--bold-font-family);
}

.feature2 .cta-block {
    margin-top: 60px;
}

.feature2 .cta-block a {
    margin: 0 auto;
}

@media screen and (max-width: 767px) {
    .feature2 .hedding-block h2 img {
        width: 120px;
    }

    .feature2 .content-block table {
        min-width: 616px;
    }

    .feature2 .content-block table thead th {
        font-size: 1rem;
    }

    .feature2 .content-block table tbody th {
        width: 178px;
        height: 90px;
        font-size: 1rem;
    }

    .feature2 .content-block table tbody td p {
        padding: 5px;
    }

    .feature2 .content-block table tbody td img {
        width: 1.5rem;
    }

    .feature2 .content-block ul {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
}

/* 特長3 */

.feature3 .content-block {
    display: grid;
    grid-template-columns: 1fr;
    gap: 60px;
}

.feature3 .content-block h3,
.feature3 .content-block p {
    text-align: center;
}

.feature3 .content-block .flex-box {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 50px;
}

.feature3 .content-block .flex-box .image-box {
    max-width: 380px;
}

.feature3 .content-block .flex-box .image-box img {
    width: 100%;
}

.feature3 .content-block .image-box img {
    max-width: 580px;
}

@media screen and (max-width: 767px) {
    .feature3 .hedding-block h2 img {
        width: 120px;
    }

    .feature3 .content-block .image-box {
        flex-direction: column;
        gap: 3rem;
    }
}

/* 特長4 */

.feature4 {
    background: #f2f2f2;
}

.feature4 .content-block {
    text-align: center;
    display: grid;
    grid-template-columns: 1fr;
    gap: 60px;
}

.feature4 .content-block h3 {
    text-align: center;
}

.feature4 .content-block ul {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 50px;
}

.feature4 .content-block ul li {
    width: 400px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 30px;
}

.feature4 .content-block ul li .title {
    color: #c02;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: auto;
    text-decoration-thickness: 15%;
    text-underline-offset: 10px;
}

.feature4 .content-block .text-box {
    display: grid;
    grid-template-columns: 1fr;
    gap: 40px;    
}

.feature4 .content-block .image-box {
    margin-top: 20px;
}

.feature4 .content-block .image-box img {
    width: 100%;
}

@media screen and (max-width: 994px) {
    .feature4 .content-block ul li {
        width: 300px;
    }
}

@media screen and (max-width: 767px) {
    .feature4 .hedding-block h2 img {
        width: 120px;
    }

    .feature4 .content-block ul {
        flex-direction: column;
        gap: 3rem;
    }

    .feature4 .content-block ul li {
        width: 100%;
    }
}

/* 特長5 */

.feature5 .content-block {
    text-align: center;
    display: grid;
    grid-template-columns: 1fr;
    gap: 60px;
}

.feature5 .content-block .cta-box a {
    width: 564px;
    margin: 0 auto;
}

.feature5 .content-block .image-box {
    max-width: 1100px;
    margin: 20px auto 0;
}

.feature5 .content-block .image-box img {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .feature5 .hedding-block h2 img {
        width: 120px;
    }

    .feature5 .content-block .cta-box a {
        width: 100%;
    }
}

/* 特長6 */

.feature6 {
    background: #f2f2f2;
}

.feature6 .wrapper {
    max-width: 995px;
}

.feature6 .content-block h3 {
    text-align: center;
}

.feature6 .content-block .image-text {
    margin-top: 60px;
    display: flex;
    justify-content: center;
    gap: 50px;
}

.feature6 .content-block .image-text .image-box {
    max-width: 295px;
}

.feature6 .content-block .image-text .image-box img {
    width: 100%;
}

.feature6 .content-block .image-text .text-box h4 {
    margin-top: 35px!important;
    background: #f2f2f2!important;
    font-size: var(--font-size-h4)!important;
}

.feature6 .content-block .image-text .text-box h4:first-child {
    margin-top: 0!important;
}

.feature6 .content-block .image-text .text-box p {
    margin-top: 15px;
}

@media screen and (max-width: 767px) {
    .feature6 .hedding-block h2 img {
        width: 120px;
    }

    .feature6 .content-block .image-text {
        flex-direction: column;
        gap: 3rem;
    }

    .feature6 .content-block .image-text .image-box {
        max-width: 100%;
    }

    .feature6 .content-block .image-text .text-box h4 {
        font-size: var(--sp-font-size-h4)!important;
    }
}

/* 相談会 */

.consultation {
    background: #f2f2f2;
    padding-top: 0;
}

.consultation .wrapper {
    max-width: 995px;
}

.consultation .content-block .recommend {
    margin-top: 80px;
}

.consultation .content-block .recommend h3 {
    text-align: center;
}

.consultation .content-block .recommend .recommend-list {
    margin-top: 60px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 50px;
}

.consultation .content-block .recommend .recommend-list a {
    position: relative;
    border-radius: 20px;
    transition: all 0.3s ease;
}

.consultation .content-block .recommend .recommend-list a:hover {
    box-shadow: 0 10px 10px 2px rgb(0 0 0 / 30%);
    opacity: .8;
    top: -2px;
}

@media screen and (max-width: 767px) {
    .consultation .content-block .image-text {
        flex-direction: column;
        gap: 2rem;
    }

    .consultation .content-block .image-text .text-box .cta-box a {
        margin: 0 auto;
    }

    .consultation .content-block .recommend .recommend-list {
        gap: 1rem;
    }
}