/* screen - footer */
.footer_wrap {
    margin-top: 0 !important;
}

.footer .footer_sns {
    min-width: 100%;
}

.footer .footer_sns_inner {
    align-items: center;
    background-color: var(--gallery-2);
    display: flex;
    flex-direction: column;
    gap: 37px;
    min-height: 600px;
    padding: 58px 0;
    width: 100%;
}

.footer .footer_sns_ttl {
    letter-spacing: 0;
    line-height: 44.8px;
    margin-left: 0.86px;
    min-height: 45px;
    min-width: 192px;
    text-align: center;
    white-space: nowrap;
    font-weight: 500;
}

.footer .x20 {
    height: 367px;
    object-fit: cover;
    width: 600px;
}

.footer .footer_contact {
    background-color: #fff;
    padding: 3vh 0 3vh 0;
}

.footer .footer_contact {
    color: #343434;
}

.footer .footer_contact_txt_1 {
    letter-spacing: 0;
    line-height: 3vw;
    margin-left: 0;
    margin-top: 0;
    min-height: 3vw;
    min-width: 100%;
    text-align: center;
    white-space: nowrap;
    font-weight: 600;
    color: #343434;
    font-size: 2.2vw;
}

.footer .footer_contact_txt_2 {
    letter-spacing: 0;
    line-height: 2.1vw;
    margin-left: 0;
    margin-top: 2vw;
    min-height: 4vw;
    text-align: center;
    color: #343434;
    font-size: 1.2vw;
    font-weight: 500;
}

.footer .footer_contact_btns {
    justify-content: center;
    display: flex;
    gap: 3vw;
    margin-top: 2vw;
}

.footer .footer_contact_btn_contact,
.footer .footer_contact_btn_mitsumori {
    display: flex;
    gap: 0;
    height: 5.5vw;
    min-width: 26vw;
    height: fit-content;
    min-width: 20vw;
    padding: 1.5vw 0;
    justify-content: center;
    transition: all 0.5s;
}

.footer .footer_contact_btn_contact {
    background-color: #595757;
    border: 1px solid #595757;
}

.footer .footer_contact_btn_mitsumori {
    background-color: #595757;
    border: 1px solid #595757;
}

/*.footer .footer_contact_btn_mitsumori_icon {
    height: 29px;
    width: 23px;
    transition: all 0.5s;
}

.footer .footer_contact_btn_contact_icon {
    height: 28px;
    width: 28px;
    transition: all 0.5s;
}
*/
.footer .footer_contact_btn_mitsumori_txt,
.footer .footer_contact_btn_contact_txt {
    letter-spacing: 0;
    line-height: 2.5vw;
    line-height: 1;
    min-width: 3vw;
    white-space: nowrap;
    transition: all 0.5s;
    font-size: 1.3vw;
    color: #fff;
}

.footer .footer_contact_btns a:hover {
    opacity: 1;
}

.footer .footer_contact_btns a:hover .footer_contact_btn_mitsumori {
    background-color: #fff;
}

.footer .footer_contact_btns a:hover .footer_contact_btn_mitsumori_txt {
    color: #343434;
}

.footer .footer_contact_btns a:hover .footer_contact_btn_contact {
    background-color: #fff;
}

.footer .footer_contact_btns a:hover .footer_contact_btn_contact_txt {
    color: #343434;
}

/*.footer .footer_contact_btns a:hover .footer_contact_btn_mitsumori_icon {
    filter: invert(100%) brightness(100%);
}

.footer .footer_contact_btns a:hover .footer_contact_btn_contact_icon {
    filter: invert(67%) sepia(100%) saturate(1000%) hue-rotate(357deg) brightness(94%) contrast(104%);
}
*/

.footer .footer_btm {
    min-width: 100%;
    padding: 1vw;
    padding-top: 0;
}

.footer .footer_inner {
    width: 80vw;
    margin: 0 auto;
    border: solid 1px #dddddd;
    border-width: 1px 0 0 0;
}

.footer .footer_inner a:hover {
    opacity: 0.3 !important;
}

.footer .flex {
    align-items: flex-start;
    display: flex;
}

.footer .group {
    align-items: flex-start;
    display: flex;
}

.footer .footer_inner_logoblock {
    width: 25vw;
    padding-top: 1.5vw;
    margin-bottom: 0.5vw;
}

.footer .footer_inner_list-0,
.footer .footer_inner_list-1,
.footer .footer_inner_list-2 {
    width: 100%;
    margin-bottom: 0vw;
}

.footer .footer_inner_list-0 ul {
    display: flex;
}

.footer .footer_inner_list-0 li {
    width: 20%;
    text-align: left;
    width: unset;
    padding-right: 10vw;
}

.footer .footer_inner_list-1 {
    border: solid 1px #dddddd;
    border-width: 1px 0 0 0;
    padding-top: 2vw;
}

.footer .footer_inner_list-1 ul {
    display: flex;
}

.footer .footer_inner_list-1 li {
    width: 20%;
    text-align: left;
}

.footer .footer_inner_list-1 li a {
    font-size: 0.9vw;
}

.footer .footer_inner_list-2 ul {
    display: flex;
}

.footer .footer_inner_list-2 li {
    width: 40%;
    text-align: left;
}

.footer .footer_inner_list-2 li a {
    font-size: 0.9vw;
}

.footer .footer_inner_copyright *,
.footer .footer_inner_list * {
    color: #343434;
    font-weight: 600;
    font-size: 1.1vw;
}

.footer .footer_inner_logoblock a:hover,
.footer .footer_inner_copyright a:hover,
.footer .footer_inner_list ul li a:hover {
    opacity: 0.8;
}

.footer .footer_inner_copyright {
    align-items: flex-start;
    display: flex;
    margin-top: 1vw;
    width: 100%;
    border: solid 1px #dddddd;
    border-width: 1px 0 0 0;
    padding-top: 1vw;
}

.footer .footer_inner_copyright div,
.footer .footer_inner_copyright p {
    width: 50%;
}

.footer .footer_inner_copyright div {
    text-align: left;
}

.footer .footer_inner_copyright p {
    text-align: right;
    font-size: 14px !important;
    font-weight: unset;
}

.footer .footer_inner_copyright_txt {
    font-weight: 600;
    color: #343434;
}