.bottomNavigation {
    width: 100%;
    max-width: 960px;
    position: fixed;
    bottom: 24px;
    left: 50%;
    transform: translateX(-50%);
    padding: 1rem;

    z-index: 999;
    border-radius: 12px;
    display: flex;
    column-gap: 48px;

    /* opacity: 0;
    transition: 1s ease; */

    .lineButton {
        padding: 16px;
        column-gap: 8px;
    }

    .lineButton--iconBox {
        padding: 4px;
    }

    .lineButton--arrow {
        width: 28px;
        height: 26px;
        border-radius: 50%;
        background-color: var(--white);
        position: relative;
    } 

    .mailFormButton {
        padding: 16px;
    }

    .mailFormButton--iconBox {
        padding: 4px;
    }

    .mailFormButton--arrow {
        width: 28px;
        height: 26px;
    } 
}

.bottomNavigation.isOffscreenHero {
    /* opacity: 1;
    transition: 1s ease; */
}

@media screen and (max-width: 1024px) {
    
    .bottomNavigation {
        column-gap: 24px;
    }

    .lineButton--text {
        font-size: var(--fontsize-xmedium);
    }

    .mailFormButton--text {
        font-size: var(--fontsize-xmedium);
    }
}

@media screen and (max-width: 599px) {
    /* 599pxまでの幅の場合に適応される */
    .bottomNavigation {
        width: 100%;
        bottom: 0;
        padding: 8px;
        display: grid;
        place-items: center;
        /* background-color: var(--white); */
        border-bottom-left-radius: 0;
        border-bottom-right-radius: 0;
        row-gap: 8px;

        .lineButton {
            padding: 8px;
            column-gap: 8px;
        }

        .lineButton--iconBox {
            padding: 4px;
            border-radius: 8px;
        }

        .lineButton--icon {
            width: 28px;
            height: 28px;
            line-height: 0;
        }

        .lineButton--text {
            /* flex: 1 0; */
            color: var(--white);
            font-size: 16px;
            font-weight: bold;
        }

        .lineButton--arrow {
            width: 28px;
            height: 26px;
            border-radius: 50%;
            background-color: var(--white);
            position: relative;
        } 

        .lineButton--arrow::before {
            content: '';
            width: 12px;
            height: 12px;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-70%, -50%) rotate(45deg);
        }

        .mailFormButton {
            background-color: var(--secondary-bland-color);
            width: 100%;
            padding: 8px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            column-gap: 8px;
            /* border-radius: 12px; */
            /* filter: drop-shadow(0 4px var(--deepgray)); */
            /* box-shadow: 0 4px 0 0 var(--deepgray); */
            position: relative;
        }

        .mailFormButton--iconBox {
            background-color: var(--white);
            padding: 4px;
            border-radius: 8px;
            line-height: 0;
            display: flex;
        }

        .mailFormButton--icon {
            width: 28px;
            height: 28px;
            line-height: 0;
        }

        .mailFormButton--text {
            color: var(--black);
            font-size: 16px;
            font-weight: bold;
        }

        .mailFormButton--arrow {
            width: 28px;
            height: 26px;
            border-radius: 50%;
            background-color: var(--white);
            position: relative;
        } 

        .mailFormButton--arrow::before {
            content: '';
            width: 12px;
            height: 12px;
            border: 0;
            /* border-top: solid 2px var(--secondary-bland-color);
            border-right: solid 2px var(--secondary-bland-color); */
            border-top: solid 2px var(--black);
            border-right: solid 2px var(--black);
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-70%, -50%) rotate(45deg);
        }
    }
}

.bottomNavigation .contact--btn {
    font-size: 16px;
    font-weight: bold;
    padding-top: 20px;
    padding-bottom: 20px;
    border-radius: 999px;
    border-bottom: solid 5px skyblue;
    background-color: navy;
    background-image: none;
    position: relative;
}

.bottomNavigation .contact--btnText {
    display: inline-block;
    position: relative;
    padding-left: 8px;
}

.bottomNavigation .contact--btnText::before {
    position: absolute;
    content: '';
    background-image: url(/img/icon_mail.png);
    background-size: contain;
    background-repeat: no-repeat;
    width: 40px;
    height: 32px;
    top: 50%;
    left: 0;
    transform: translate(-100%, -50%);
}