/* =================> Header <================= */
.header { position: sticky; top: 0; left: 0; width: 100%; z-index: 999; background-color: #fff; }
.header .inner{padding:0 5%;position: relative;}
.header .logo{width:12.5rem;min-width:100px}
.header .nav{display: flex;width:50em;}
.header .nav > li {width:calc(100% / 5);}
.header .nav > li:hover > a {font-weight: bold;}
.header .depth02_box{display:none;position: absolute;bottom: 0;left: 0;width: 100%;transform:translateY(100%);padding:1.5em 0; }
.header .depth02_box.on{display: flex;justify-content: center;}
.header .depth02_box:before{top: 0;content:'';width:100%;height: 100%;;position: absolute;left: 0;background: rgba(255,255,255,0.8);z-index: -1;pointer-events: none;}
.header .depth01_txt { padding: 1.5em 0.5em; text-align: center; display: block; font-size: 1.25em; }
.header .depth01_txt span,
.header .depth02_txt span { display: none; }
.header .depth02_menu { display: flex; justify-content: center; gap: 1.5em; width: var(--layoutwidth); }
.header .depth02_menu > li { flex: 1; max-width: 8.75rem; position: relative; }
.header .depth02_menu > li:not(:last-child):after { content: ""; display: block; width: 1px; height: 100%;  position: absolute; top: 0; right: 0; transform: translateX(.625rem); box-shadow: inset 1px 0 0 1px #bababa; }
.header .depth02_menu > li > a { font-weight: 700; color: var(--pointcolor); flex: 1; }
.header .depth02_menu li > a { position: relative; }
.header .depth02_menu li > a:before { content: ""; display: block; width: 0; height: 2px; background: var(--pointcolor); position: absolute; bottom: -5px; left: 0; transition: width 0.3s cubic-bezier(0.5, 1, 0.89, 1); }
.header .depth02_menu li > a:hover:before { width: 100%; }
.header .depth02_menu a{color:#000}
.header .depth02[depthName="clinic"] {padding-bottom:2em}
.header .depth02[depthName="clinic"] > li > a{font-weight: bold; color:#444}
.header .depth03_menu ,
.header .depth03_menu > li + li{margin-top:0.8em}
.header .aside { border-radius: .75rem; background-color: #b2b2b2; color: #fff; }
.header .aside a{ color: #fff; font-weight: 700; display: inline-block; padding: .625rem; border-radius: 10px; transition: background-color 0.5s cubic-bezier(0.5, 1, 0.89, 1); }
.header .aside a:hover { background-color: var(--pointcolor); }
.header .aside a+a{margin-left:0.6em;position: relative;}
.header .aside a+a:before { position: absolute; left: -14%; content: '/'; width: 1px; display: block; top: 50%; transform: translateY(-50%); }
.header.open { background-color: #0b1c8b; }
.header.open .logo img { filter: invert(1) grayscale(1) contrast(3); }

.m_menu{ position: fixed; top: 0; right: -100%; background-color: var(--pointcolor); width: 768px; height: 100%; z-index: 900; display: none; overflow-y: scroll; transition: 1s ease-in-out; -webkit-transition: 0.5s ease-in-out; }
.m_menu.open{right: 0;}
.m_menu .m_menu_box{margin-top: 12rem; padding: 0 4rem 0;}
.m_menu .m_menu_box .menu{display: block; line-height: 1.8; }
.m_menu .m_menu_box .depth01{padding-right: 0; padding-left: 0;}
.m_menu .m_menu_box  .depth01 > a{font-size: 2.6rem; font-weight: 600; display: flex; align-items: center; justify-content: space-between;}
.m_menu .m_menu_box .depth01 > a span,
.m_menu .m_menu_box .depth02 > a span { opacity: 0.6; font-size: 2.5rem; font-weight: 300;}
.m_menu .m_menu_box .depth01 > a .down, 
.m_menu .m_menu_box .depth02 > a .down{display: none;}
.m_menu .m_menu_box .depth01.active > a .up,
.m_menu .m_menu_box .depth02.active > a .up{display: none;}
.m_menu .m_menu_box .depth01.active > a .down,
.m_menu .m_menu_box .depth02.active > a .down{display: block; opacity: 1;}
.m_menu .m_menu_box a{color: #fff;font-size: 1.6rem; line-height: 2;}
.m_menu .m_menu_box .depth02_box{display: none; padding: 1rem 0 2rem;}
.m_menu .m_menu_box .depth02_txt { display: flex; align-items: center; justify-content: space-between; }
.m_menu .m_menu_box .depth03_menu{display: none; padding: 0.5rem 0 1rem;}
.m_menu .m_menu_box .sns_box{height: 25px;}
.m_menu .m_menu_box .sns_box img{height: 100%;}


@media (max-width:1240px) { 
    .header { position: sticky; }
    .header .inner { padding: 1em 5% }
    .header .inner .menu_btn { position: absolute; right: 10px; top: 50%; transform: translateY(-50%); }
    .header .inner .menu_btn .flex { flex-wrap: wrap; width: 2.6em; height: 2.6em; align-content: space-between; justify-content: space-between; }
    .header .inner .menu_btn .box { width: 47%; height: 47%; background-color: var(--pointcolor); border-radius: 0.35rem; border: 2px solid var(--pointcolor); }
    .header .inner .menu_btn.open .box{background-color: transparent; border-color: #fff; }
    .m_menu{display: block;}
}
@media (max-width: 768px) {
    .m_menu{width: 100%;}
}


/* =================> Footer <================= */
#footer { --layoutwidth: 1500px; letter-spacing: 1px; color: #fff; }
#footer .container { width: 90%; }
#footer .box02 { width: 240px; }
#footer .info-text { font-size: 16px; }
#footer .link-item { display: flex;  justify-content: space-between; align-items: center; color: #fff; padding: 10px; border-bottom: 1px solid #888; transition: color .3s ease-in-out, box-shadow .3s ease-in-out; box-shadow: inset 0 0 0 0 #54b3d6; }
#footer .link-item img{left:0px; transition:all 0.5s ease;}
/*#footer .link-item:hover { color: #fff; box-shadow: inset 240px 0 0 0 #54b3d6; }*/
#footer .link-item:hover img{left:5px; transition:all 0.5s ease; position:relative;}
#footer .link-text { font-size: 1.25rem; }
@media (max-width: 1280px) {
    #footer .container .sm-direction { padding-bottom: 9.375rem; }
}
@media (max-width: 990px) {
    #footer { letter-spacing: 0; }
    #footer .box {width: 100%;}
    #footer .box02 { width: auto; margin-top: 3.125rem; margin-left: 0; margin-right: auto; }
    #footer .box.width30 {margin-top: 3rem;}
    #footer .info-text { font-size: 14px; text-align: left; line-height: 1.4; }
    #footer .link-text { font-size: 14px; margin-right: 6.25rem; }
    #footer .link-item img { width: 18px; }
}
@media (max-width: 768px) {
    #footer .footer-Logo { width: max(150px, 30vw); }
    #footer p {text-align: center;}
}


/* =================> quick menu <================= */
.quick_menu {
    position: fixed;
    top: 53%;
    right: 0;
    transform: translateY(-50%);
    z-index: 888;
    background-color: #fff;
}

.quick_call img {
    max-width: 100%;
    height: auto;
}

.quick_link .quick_item {
    display: block;
    padding: 15px 0;
    position: relative;
}

.quick_link .quick_item:not(:last-child):after {
    content: "";
    display: block;
    position: absolute;
    width: 80%;
    height: 1px;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    box-shadow: inset 1px 0 0 1px #b2b2b2;
}

.quick_link .quick_img, .quick_link .quickbar_img {
    margin-bottom: 10px;
}

.quick_link .quick_item p {
    font-size: 14px;
    font-weight: 500;
    line-height: 1.2;
    text-align: center;
}

@media (max-width: 1440px) {
    .quick_menu {
        width: 90%;
        top: auto;
        bottom: 0;
        right: 50%;
        transform: translateX(50%);
        background-color: transparent;
        display: flex;

    }

    .quick_call {
        background: var(--pointcolor);
        order: 2;
        padding: 15px 10px 5px;
        border-radius: 15px 15px 0 0;
    }

    .quick_call img {
        width: 26px;
    }

    .quick_call p {
        font-size: 14px;
        margin-top: 5px;
        color: #fff;
    }

    .quick_menu .quick_link {
        display: flex;
        flex: 1;
        background-color: #000;
        border-radius: 20px 20px 0 0;
    }

    .quick_link .quick_item {
        display: flex;
        justify-content: center;
        align-items: center;
        flex: 1;
        padding: 15px 10px;
        position: relative;
    }

    .quick_link .quick_img.eng img {filter: none !important;}

    .quick_link .quick_item p {
        color: #fff;
        /* text-align: left; */
    }

    .quick_link .quick_item:not(:first-child, :last-child):after {
        content: "";
        display: block;
        position: absolute;
        width: 1px;
        height: 60%;
        bottom: 50%;
        left: 0;
        transform: translateY(50%);
        box-shadow: inset 0 1px 0 1px #b2b2b2;
    }

    .quick_link .quick_item:first-child:after,
    .quick_link .quick_item:last-child:after {
        display: none;
    }



    .quick_link .quick_img {
        margin-right: 10px;
        margin-bottom: 0;
    }

    .quick_link .quick_img img {
        filter: invert(1);
        width: 26px;
    }
    
    .quick_link .quickbar_img img {
        width: 26px;
    }

    .quick_link .quick_top {
        position: absolute;
        right: 0;
        border-radius: 50%;
        background: rgba(0,0,0,0.4);
        width: 50px;
        height: 50px;
        bottom: 100px;
        align-items: center;
        justify-content: center;
    }

    .quick_link .quick_top .quick_img {
        margin: 0;
    }

    .quick_link .quick_top .quick_img img {
        width: 18px;
    }

    .quick_link .quick_top p {
        display: none;
    }
}

@media(max-width:768px) {
    .quick_menu {width: 100%;}

}

@media(max-width:600px) {
    .quick_link .quick_item {flex-direction: column; align-items: center;}
    .quick_link .quick_img, .quick_link .quickbar_img {margin-right: 0; margin-bottom: 5px;}
}

@media(max-width:380px) {
    .quick_link .quick_item p {font-size: 12px;}
}