/* BASIC css start */
    #footer{position: relative; box-sizing: border-box; width: 100%; margin:0;}
    #footer .ftr_top{background: var(--gray-bg02); position: relative;z-index: 3;}
    #footer .ftr_top .w_custom{display: flex;flex-wrap: wrap;justify-content: space-between;gap:30px;padding: 15px 0;min-height: 60px;align-items: center;}
    #footer .link_list{display: flex;gap: 30px;font-size: 0;align-items: center;}
    #footer .link_list a{display: block; font-size: 16px; font-weight: 400; color: var(--black-color03);}
    #footer .link_list strong{font-weight: 600;}
    #footer .family_site{position: relative;}
    #footer .family_site dt span{position: relative; display: flex; width: 190px; padding:0 30px; box-sizing: border-box; font-size: 16px; font-weight: 600; color: var(--black-color03); cursor: pointer;}
        #footer .family_site dt span:before{position: absolute; content:''; width: 1px; height: 72%; background: var(--border-color01); top:50%; left:0; transform: translateY(-50%);}
        #footer .family_site dt span:after{position: absolute;content:'';border: 4px solid var(--trans-color);border-top: 4px solid var(--black-color05);top:50%;right:0;transform:translateY(-50%);transition: all 0.4s;}
        #footer .family_site dt.on span:after{transform: translateY(-50%) scale(-1,-1);top: 42%;}
    #footer .family_site dd{position: absolute; top:calc(100% + 10px); left:0; width: 100%; box-sizing: border-box; background: var(--point-white); border:1px solid var(--border-color01); padding:10px 0; opacity: 0; pointer-events: none; transition: all 0.4s;}
        #footer .family_site dt.on + dd{opacity: 1; pointer-events: all;}
    #footer .family_site dd a{display: block; padding:8px 30px; font-size: 15px; font-weight: 400; color: var(--black-color06);}
    #footer .cont{padding: 40px 0 60px; box-sizing: border-box;}
    #footer .cont .w_custom{display: flex;/* flex-wrap: wrap; */align-items: flex-start;justify-content: space-between;gap: 30px;}
    #footer .logo{font-size: 0;width: 226px;margin-bottom: 28px;}
    #footer .addr_list > li{display: flex;flex-wrap: wrap;gap: 0 20px;}
    #footer .addr_list .desc{display:flex; gap: 4px;}
    #footer .addr_list .desc :where(dt, dd){font-size: 16px; font-weight: 500; color: var(--black-color06); line-height: 1.625;}
    #footer .addr_list .desc dt{flex-shrink: 0;}
    #footer .copy{display: flex;flex-wrap: wrap;gap: 15px;margin-top: 10px;}
    #footer .copy :where(dt, dd){font-size: 15px;font-weight: 300;color: var(--black-color09);line-height: 1.625;}
    #footer .cs_list{display: flex;gap: 15px;justify-content: flex-end;}
    #footer .cs_list > li{position: relative;width: 220px;padding: 19px 23px;box-sizing: border-box;border:1px solid var(--border-color01);}
    #footer .cs_list .desc dt{font-size: 16px;font-weight: 500;color: var(--point-color01);}
        #footer .cs_list .desc dt + dd{margin-top:20px }
    #footer .cs_list .desc dd{font-size: 15px;font-weight: 400;color: var(--black-color08);line-height: 1.46;}
    #footer .cs_list .desc dd strong{font-size: 22px;font-weight: 400;color: var(--black-color03);line-height: 1;}
        #footer .cs_list .desc dd strong + span{margin-top: 15px;}
    #footer .cs_list .desc dd strong a{display:block; font-weight:600;}
    #footer .cs_list .desc dd span{display: block;}
/* BASIC css end */

