/* footer */
.l-footer {
    position: relative;
    padding: 90px 0;
}


.f_inner_flex {
    position: relative;
    width: 100%;
    align-items: stretch;
    display: flex;
    justify-content: space-between;
}
.f_inner {
    width: 92%;
    max-width: 1600px;
    margin: 0 auto;
    position: relative;
}
.f_inner_flex_left {
    width: 30%;
    position: relative;
}
.f_inner_flex_right {
    width: 70%;
    position: relative;
}


.footer-menu li a {
    color: #222;
    position: relative;
    line-height: 2.5;
    padding-left: 20px;
}
.footer-menu li {
    font-family: "Shippori Mincho B1", serif;
    font-size: 100%;
    letter-spacing: 0.05em;
    position: relative;
}
.footer-menu {
    position: relative;
    display: grid;
    width: 100%;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 4px 40px;
    margin-bottom: 35px;
}
.footer-menu li a:before {
    content: "";
    position: absolute;
    top: 0.8em;
    left: 0;
    width: 12px;
    height: 1px;
    background: #333;
}

.footer-menu li span {
    position: relative;
    display: inline-block;
    transition: transform 0.3s ease;
}




.footer-menu li a:hover span {
    transform: translateX(5px);
}


.address_txt {
    font-family: "Shippori Mincho B1", serif;
    line-height: 1.6;
    letter-spacing: 0.05em;
}
.f_logo {
    width: 90%;
    margin: 0 0 27px;
    max-width: 330px;
}
.address_txt {
    font-family: "Shippori Mincho B1", serif;
    line-height: 1.6;
    letter-spacing: 0.05em;
    font-size: 95%;
    padding-left: 4%;
}


.f_link_flex {
    position: relative;
    display: grid;
    width: 100%;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px 40px;
}
.link_ttl {
    font-family: "Shippori Mincho B1", serif;
    font-size: 100%;
    border-bottom: solid 1px #777;
    padding: 0 5px 5px;
    margin-bottom: 25px;
}
.f_link_img a {
    display: block;
    position: relative;
    transition: 0.3s;
}
.f_link_img a:hover {
    opacity: 0.7;
}

.fcoinnner {
    font-family: "Shippori Mincho B1", serif;
    background: #000;
    text-align: center;
    color: #fff;
    padding: 5px 0;
    font-size: 14px;
}


@media only screen and (max-width: 1400px) {
.footer-menu {
    grid-template-columns: repeat(3, minmax(0, 1fr));}
}


@media only screen and (max-width: 1400px) {
.footer-menu {
    grid-template-columns: repeat(2, minmax(0, 1fr));}
}



@media only screen and (max-width: 767px) {
.f_inner_flex {
    align-items: unset;
    display: block;
}
.f_inner_flex_left {
    width: 100%;
    position: relative;
    margin: 0 auto 30px;
    text-align: center;
}
.link_ttl {
    padding: 0 0 5px;
    text-align: center;
}
.footer-menu {
    gap: 4px 30px;
}
.f_link_flex {
    display: block;
}
.f_link_img {
    width: 70%;
    margin: 0 auto;
}
.footer-menu li a:before {
    width: 8px;}
.f_inner {
    width: 86%;}
.f_inner_flex_right {
    width: 100%;
}
.footer-menu li a {
    padding-left: 15px;
}
.footer-menu li:has(span.wide) {
  grid-column: span 2;
}
.l-footer {
    position: relative;
    padding: 50px 0 50px;
}
.fcoinnner {
    padding: 5px 0 60px;
}
}