#course_content {
    padding-bottom: 7rem;
    @media (min-width:768px) {
        padding-bottom: 10rem;
    }

    .inner {
        padding: 4rem 2rem;
        background: var(--pale-blue);
        @media (min-width:768px) {
            max-width: 93rem;
            margin: 0 auto;
            padding: 7rem 5rem;
        }

        .content_block.detail {
            margin-bottom: 5rem;

            .detail_list {
                & div {
                    display: flex;
                    margin-bottom: 2em;

                    & dt {
                        width: 6em;
                        flex-shrink: 0;
                    }
                    & dd {
                        font-weight: 700;
                        text-indent: -1em;
                        padding-left: 1em;

                        &::before{
                            content: "：";
                            @media (min-width:768px) {
                                display: inline-block;
                                margin: 0 2em;
                            }
                        }
                    }
                }
            }
        }

        .content_block.course {
            position: relative;
            @media (min-width:768px) {
                display: flex;
                gap: 8%;
            }

            &::after {
                @media (min-width:768px) {
                    display: block;
                    content: "";
                    width: 2rem;
                    height: 100%;
                    background-color: var(--pale-blue);
                    background-image: radial-gradient(#8AB5D4 20%, transparent 20%),
                    radial-gradient(#8AB5D4 20%, transparent 20%);
                    background-repeat: repeat-Y;
                    background-size: 1rem 1rem;
                    background-position: center;
                    position: absolute;
                    bottom: 0;
                    right: 50%;
                }
            }
            .item {
                margin-bottom: 4rem;
                @media (min-width:768px) {
                    width: 46%;
                }
                .block_title {
                    color: var(--main-blue);
                    font-size: clamp( 1.8rem, calc( 1.5857142857142858rem + 0.5952380952380952vw ), 2.3rem );
                    margin-bottom: 0.3em;

                    &::before {
                        content: "【";
                    }
                    &::after {
                        content: "】";
                    }
                }
                .purpose {
                    font-size: clamp( 1.8rem, calc( 1.7142857142857142rem + 0.2380952380952381vw ), 2rem );
                    font-weight: 700;
                    margin-bottom: 0.3em;
                }
                .price {
                    display: flex;

                    & dt {
                        flex-shrink: 0;

                        &::after {
                            content: "：";
                        }
                    }
                    & dd {
                        font-weight: 700;
                    }
                }
                .note {
                    margin-top: 1em;

                    & li {
                        font-size: 1.3rem;
                        font-weight: 700;

                        &::before {
                            content: "※";
                        }
                    }
                }
            }
        }
    }
}