@media screen and (max-width: 860px) {
    .ft_opts .ft_info .ifs {
        gap: 5rem;
    }
    #ft .ft_inner {
        padding:30rem 20rem 130rem 20rem;
        gap:30rem;
        position: relative;
        flex-direction: column;
    }
    .ft_opts .ft_info .ifs .info_div {
        text-align: start;
        word-break: keep-all;
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
        width: 100%;
        gap:5rem;
    }
    .ft_opts .ft_info .ifs .info_div.pc_info_div {
        display: none;
    }
    .ft_opts .ft_info .ifs .info_div.mobile_info_div {
        display: flex;
    }
    .ft_opts .ft_info .ifs span {line-height:1.6;}
    .ft_opts .ft_info .ifs .info_div > span {white-space: nowrap;}
    .ft_opts .ft_info .ifs span + span {padding-left: 0;}
    .ft_opts .ft_info .ifs span + span::before {display: none;}
    .ft_opts .ft_info .ifs .info_div.non_bar {
        align-items: flex-start;
        flex-direction: row;
        flex-wrap: nowrap;
        width: 100%;
        margin: 0 0 5rem 0;
    }
    .info_div_wrap {
        display: flex;
            flex-direction: column;
            gap: 7rem;
    }
    .ft_sns.mobile_ft_sns ul {
        display: flex;
    }
    .ft_sns ul {
        display: none;
    }
    .ft_sns ul li a {
        font-size: 16rem;
    }
    .ft_opts .ft_opts_list {
        flex-direction: row;
        flex-wrap: wrap;
        max-width: 300px;
    }
    .ft_opts .ft_info p {
        word-break: keep-all;
    }
    .m_ft_logo {
        margin-bottom: 20rem;
        max-width: 100%;
        display: flex;
        justify-content: flex-start;
    }
    .m_ft_logo img {
        max-width: 80rem;
        width: auto;
        height: auto;
    }
    .ft_sns .ft_logo,
    .ft_sns .ft_sns_wrap ul {
        display: none;
    }
    .ft_sns,
    .fusion-text,
    .ft_sns_wrap {
        width: 100%;
    }
    .ft_sns {
        flex-direction: row !important;
        padding-top: 10rem !important;
    }
    .common_select select {
        background-size: 8rem auto;
        padding: 8rem 30rem 8rem 15rem;
        border-radius: 5px;
        font-size: 12rem;

    }

    .fusion-text {margin-top: 0 !important;max-width: 180rem;}
    .ft_sns_wrap {justify-content: center !important;position: relative;}
    .fusion-text {
        position: absolute;
        top: -41rem;
        right: 0;
    }
    #ft .ft_inner {
        flex-direction: column;
    gap: 50rem;
    }

}
@media screen and (max-width: 540px) {
    #ft .ft_inner {
        padding-bottom: 0;
    }
    .ft_opts {
        width:100%;
    }
    .m_ft_logo {
        justify-content: flex-end;
    }



    .ft_sns ul li a {
        font-size: 22rem;
    }

}
@media screen and (max-width: 499px) {
    #ft .ft_inner {
        padding-bottom: 70rem;
    }
}