.l-main {
    font-family: "Noto Sans JP", sans-serif;
    color: #3b4043;
    letter-spacing: 0.12em;
    background-color: #fff;
    border-top: 10px solid var(--color-green);
    border-left: 10px solid var(--color-green);
    border-right: 10px solid var(--color-green);
    border-top-left-radius: 40px;
    border-top-right-radius: 40px;
    overflow: hidden;
    position: relative;
    z-index: 1;
}

@media screen and (max-width: 767px) {
    .l-main {
        border-width: 4px;
    }
}

/* .l-main::after {
    content: "";
    width: 100%;
    height: 2480px;
    background: -webkit-gradient(linear, left bottom, left top, from(rgb(166, 206, 213)), to(rgba(166, 206, 213, 0)));
    background: linear-gradient(0deg, rgb(166, 206, 213) 0%, rgba(166, 206, 213, 0) 100%);
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: -1;
    overflow: hidden;
} */

@media screen and (max-width: 1024px) {
    .l-main::after {
        height: 2120px;
    }
}

.l-main a:hover {
    text-decoration: none;
}

.l-main a:hover img {
    opacity: 1;
}

.l-container {
    padding: 0 4%;
    margin: 0 auto;
    max-width: calc(900px + 8%);
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

@media screen and (max-width: 767px) {
    .l-container {
        max-width: 100%;
    }
}

.l-container-mx1200 {
    max-width: calc(1200px + 8%);
}

.l-container-mx1060 {
    max-width: calc(1060px + 8%);
}

.l-container-full {
    max-width: 100%;
    padding: 0;
}