@charset "UTF-8";

.prologue {
    margin-top: 16rem;

    @media screen and (max-width: 767px) {
        margin-top: 8rem;
    }

    .big {
        font-family: 'Zen Kaku Gothic Antique';
        font-weight: 700;
        font-size: 3.2rem;
        line-height: 1.5;
        letter-spacing: 0.05em;
        color: var(--blue);

        @media screen and (max-width: 767px) {
            font-size: 2.4rem;
        }
    }

    .small {
        margin-top: 2.5rem;

        @media screen and (max-width: 767px) {
            margin-top: 1.5rem;
        }
    }
}

.one-day {
    margin-top: 14.8rem;
    margin-bottom: -6rem;

    @media screen and (max-width: 767px) {
        margin-top: 8rem;
        margin-bottom: -4rem;
    }

    .tasks {

        .task {
            border-left: 0.2rem solid var(--blue);
            padding-bottom: 6rem;
            padding-right: 12rem;
            margin-left: 0.5rem;
            display: grid;
            grid-template-columns: 11.4rem 1fr;

            @media screen and (max-width: 767px) {
                border-left: none;
                padding-bottom: 4rem;
                padding-right: 0;
                margin-left: 0;
                grid-template-columns: 1fr;
                gap: 1rem;
            }

            .time {
                font-family: 'Alexandria';
                font-weight: 700;
                font-size: 2rem;
                line-height: 1;
                letter-spacing: 0.05em;
                position: relative;
                padding-left: 2rem;
                transform: translateY(-0.3rem);

                &::before {
                    content: "";
                    width: 1.4rem;
                    height: 1.4rem;
                    background-color: var(--blue);
                    position: absolute;
                    left: -0.8rem;
                    top: 0.3rem;
                }

                @media screen and (max-width: 767px) {
                    font-size: 1.8rem;
                    transform: none;

                    &::before {
                        width: 1.1rem;
                        height: 1.1rem;
                        left: 0;
                        top: 0.4rem;
                    }
                }
            }

            .box {
                border: 0.2rem solid var(--blue);
                padding: 3.8rem 4rem;
                display: grid;
                grid-template-columns: 1fr 40rem;
                gap: 4rem;

                @media screen and (max-width: 767px) {
                    padding: 2rem;
                    grid-template-columns: 1fr;
                    gap: 2rem;
                }

                .lefty {
                    .title {
                        font-family: 'Zen Kaku Gothic Antique';
                        font-weight: 700;
                        font-size: 2rem;
                        line-height: 1;
                        color: var(--blue);

                        @media screen and (max-width: 767px) {
                            font-size: 1.8rem;
                        }
                    }

                    .content {
                        margin-top: 2rem;
                        font-size: 1.6rem;
                        line-height: 1.62;

                        @media screen and (max-width: 767px) {
                            margin-top: 1.5rem;
                            font-size: 1.4rem;
                        }
                    }
                }

                .righty {}
            }
        }

        .task:last-child {
            border-left: 0.2rem solid transparent;
        }
    }
}