@charset "utf-8";

/* FONT */
@import url('/core/fonts/KBO-dia/KBO-Dia.css');

:root {
    /* font */
    --font-type01: 'NotoSansKR';
    --font-type02: 'kbo';

    /* main */
    --main-color01: #033AA1;
    --main-color01-hover: #022361;
    --main-color02: #021F54;
    --main-color02-hover: #011332;

    /* point */
    --point-color01: #437DF0;
    --point-color01-hover: #3664c0;
    --point-color02: #039EA1;
    --point-color02-hover: #027e81;
    --point-color03: linear-gradient(0, #36BAC5, #0149D1);
    --white: #FFF;
    --tit-color: #333;
    --txt-color: #404040;
    --bg-color01: #F6F9FF;
    --bg-color02: #FAFAFA;
    --primary: #173DA7;
    --primary-hover: #1c1d21;
    --secondary: #545b62;
    --secondary-hover: #333;
    --danger: #cd2278;
    --danger-hover: #d63d54;

}

html,
body {
    font-family: var(--font-type01);
    letter-spacing: -0.044em;
    line-height: 1.5;
    color: var(--txt-color);
    scroll-behavior: smooth;
    overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    line-height: 1.5;
}

/*****************************************************
	Common
*****************************************************/
/* animation */
@keyframes jump {

    from,
    to {
        transform: scale(1, 1) translateY(-2px);
    }

    25% {
        transform: scale(0.9, 1.2) translateY(-4px);
    }

    50% {
        transform: scale(1.2, 0.9) translateY(-6px);
        opacity: 1;
    }

    75% {
        transform: scale(0.95, 1.05) translateY(0px);
        opacity: 1;
    }
}

/* Header */
#header {
    background: var(--white);
    border-bottom: 1px solid #EEE;
}

#mask {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 100;
    display: none;
    background: rgba(0, 0, 0, .5);
    z-index: 1001
}

.layout {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* utill */
.utill {
    background: #FCFCFC;
    border-bottom: 1px solid #E5E5E5;
}

.utill>div {
    display: flex;
    flex-wrap: wrap;
    gap: 3px 0;
    align-items: center;
    justify-content: space-between;
    height: auto;
}

.utill ul {
    display: flex;
    gap: 5px 10px;
}

.utill ul li {
    color: #686868;
    font-size: 15px;
}

.utill ul li:not(:first-child)::before {
    display: inline-block;
    content: '';
    width: 1px;
    height: 11px;
    background-color: #c4c4c4;
    vertical-align: middle;
    margin-right: 10px;
}

.utill ul li>a {
    position: relative;
    font-size: 14px;
}

.utill ul li a:hover,
.utill ul li a:focus {
    text-decoration: underline;
}

.utill ul li .popup-num {
    display: inline-block;
    width: 22px;
    height: 22px;
    background: var(--main-color01);
    color: #fff;
    border-radius: 50%;
    font-size: 12px;
    line-height: 22px;
    text-align: center;
}

.utill .utill-link .utill-pnu {
    background-color: var(--main-color01);
    color: var(--white);
    padding: 4px 8px;
}

.utill .utill-link .utill-pnu span:before {
    position: relative;
    top: 0;
    display: inline-block;
    content: "";
    width: 13px;
    height: 13px;
    background: url(/local/fund/images/utill-icon.svg) no-repeat center/contain;
    margin-right: 5px;
}

.utill .utill-link .utill-pnu a:hover,
.utill .utill-link .utill-pnu a:focus {
    color: var(--white);
}

/* top menu */
.top-menu-layout {
    justify-content: space-between;
    align-items: center;
    height: 55px
}

.top-menu-layout h1 {
    margin-bottom: 0;
}

.site-logo {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #333;
    font-weight: 600;
    margin-bottom: 0
}

.site-logo>img {
    width: 180px
}

.site-logo:hover,
.site-logo:focus {
    color: #333;
    text-decoration: none;
}

.site-logo span {
    font-size: 15px;
}

/* menu */
.menubar-box {
    position: fixed;
    top: 0;
    right: -100%;
    z-index: 110;
    width: 100%;
    height: 100vh;
    max-width: 100vw;
    background: rgba(2, 31, 84, .88);
    backdrop-filter: blur(30px);
    transition: right .3s;
    z-index: 1002
}

.menubar-box.on {
    right: 0
}

.menubar-box .menubar-header>ul {
    display: flex;
    justify-content: space-between;
    margin: 0
}

.menubar-box .menubar-header>ul>li {
    flex: 1
}

.menubar-box .menubar-header a {
    display: block;
    height: 100%;
    text-align: center
}

.menubar-title-box {
    display: flex;
    padding: 0 15px;
    height: 60px;
    justify-content: flex-end;
    align-items: center;
    background: var(--main-color02);
    border-bottom: 1px solid rgba(255, 255, 255, .2)
}

.menubar-title {
    color: #fff;
    display: flex;
    align-items: center;
    font-size: 15px;
    gap: 12px;
}

.menubar-title img {
    width: 120px;
}

.menubar-close {
    display: inline-block;
    color: #fff;
    width: 30px;
    height: 50px;
    text-align: center;
    background: 0 0;
    transition: .3s;
    position: relative;
    border-radius: 50%
}

.menubar-close:focus,
.menubar-close:hover {
    color: #fff
}

.menubar-close::before {
    content: "\F659";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 30px;
    height: 30px;
    transform: translate(-50%, -50%);
    padding: 0;
    font-family: var(--font-icon);
    font-size: 21px
}

.menubar {
    display: block;
    width: 100%;
    border-radius: 10px;
    overflow-y: auto;
    max-height: calc(100vh - 90px);
    padding: 0 15px 0 20px;
}

.menubar>li .menuitem {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.top-menu-layout .top-menu-right {
    display: inline-flex;
    align-items: center
}

.menu-ham {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    background-color: var(--main-color01);
    border: 0;
    border-radius: 50%;
    width: 40px;
    height: 40px;
}

.menu-ham span {
    display: none
}

.menu-ham.sitemap {
    display: none;
}

.menu-ham .sitemap-line {
    display: flex;
    flex-direction: column;
    gap: 4px 0;
}

.menu-ham .sitemap-line>span {
    display: inline-block;
    background: var(--white);
    border-radius: 5px;
}

.menu-ham .sitemap-line .line01 {
    width: 16px;
    height: 2px;
}

.menu-ham .sitemap-line .line02 {
    width: 12px;
    height: 2px;
}

.menu-ham .sitemap-line .line03 {
    width: 16px;
    height: 2px;
}

.menu-ham .sitemap-line .line01,
.menu-ham .sitemap-line .line02,
.menu-ham .sitemap-line .line03 {
    transition: 0.3s all ease;
}

.menu-ham:hover .sitemap-line .line01,
.menu-ham:focus .sitemap-line .line01 {
    width: 16px;
}

.menu-ham:hover .sitemap-line .line02,
.menu-ham:focus .sitemap-line .line02 {
    width: 16px;
}

.menu-ham:hover .sitemap-line .line03,
.menu-ham:focus .sitemap-line .line03 {
    width: 16px;
}

.depth1_list>li {
    border-bottom: 1px solid rgba(255, 255, 255, .15);
}

.depth1_list>li>.menuitem {
    height: 64px;
    font-size: 22px;
    color: var(--white);
    column-gap: 12px;
}

.depth1_list>li>.menuitem:hover,
.depth1_list>li>.menuitem:focus {
    color: var(--white);
    text-decoration: none;
}

.depth1_list>li>.menuitem>.toggle-btn {
    position: relative;
    width: 25px;
    height: 25px;
    background-color: transparent;
    display: none;
    border: 0;
}

.depth1_list>li:has(.depth2_list)>.menuitem>.toggle-btn {
    display: inline-block
}

.depth1_list>li>.menuitem.haspopup-true>.toggle-btn::after {
    display: inline-block;
    content: "\F64D";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: .3s;
    font-family: var(--font-icon);
    font-size: 22px;
    color: var(--white);
}

.depth1_list>li>.menuitem.haspopup-true.expanded-true>.toggle-btn:after {
    content: "\F63B";
    color: var(--white)
}

.depth1_list>li>.menubox {
    height: auto
}

.depth1_list>li>.menuitem.haspopup-true.expanded-true+.menubox>.menubox-inner>.depth2_list {
    display: flex;
    flex-wrap: wrap;
    gap: 6px 4px;
    background-color: transparent;
    padding: 0;
    margin-bottom: 20px
}

.depth1_list .menubox-inner>.depth2_list>li {
    position: relative;
    flex: 1 0 calc(50% - 4px);
}

.depth1_list .menubox-inner>.depth2_list>li::before {
    display: inline-block;
    content: "";
    width: 3px;
    height: 3px;
    background-color: var(--font-color02);
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 15px
}

.depth1_list .menubox-inner>.depth2_list>li>.menuitem {
    font-size: 15px;
    color: var(--white);
    word-break: keep-all;
    opacity: .7;
}

.depth1_list .menubox-inner>.depth2_list>li>.menuitem:hover,
.depth1_list .menubox-inner>.depth2_list>li>.menuitem:focus {
    opacity: 1;
    text-decoration: none;
}

.depth1_list .menubox-inner>.depth2_list>li>.menuitem.haspopup-true>.toggle-btn {
    position: absolute;
    top: 0;
    right: 0;
    width: 40px;
    height: 44px;
    cursor: pointer
}

.depth1_list .menubox-inner>.depth2_list>li>.menuitem.haspopup-true>.toggle-btn::after,
.depth1_list .menubox-inner>.depth2_list>li>.menuitem.haspopup-true>.toggle-btn::before {
    background: #a5a5a5
}

.depth1_list .menubox-inner>.depth2_list>li>.menuitem.haspopup-true>.toggle-btn::before {
    right: 20px;
    width: 13px;
    height: 2px
}

.depth1_list .menubox-inner>.depth2_list>li>.menuitem.haspopup-true>.toggle-btn::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: inline-block;
    width: 16px;
    height: 2px
}

.depth1_list .menubox-inner>.depth2_list>li>.menuitem.haspopup-true>.toggle-btn::after {
    right: 27px;
    width: 2px;
    height: 13px
}

.depth1_list .menubox-inner>.depth2_list>li>.menuitem.haspopup-true.expanded-true>.toggle-btn::before {
    background: #a5a5a5
}

.depth1_list .menubox-inner>.depth2_list>li>.menuitem.haspopup-true.expanded-true>.toggle-btn::after {
    display: none
}

.depth1_list .menubox-inner>.depth2_list>li>.menuitem.haspopup-true.expanded-true {
    color: var(--main-color01);
    border-bottom: 1px dashed #ccc
}

.depth1_list .menubox-inner>.depth2_list {
    display: none
}

@media (min-width:480px) {
    .utill ul li>a {
        font-size: 15px;
    }

    .menubar-box {
        width: 80%;
        right: -80%;
    }

    .depth1_list .menubox-inner>.depth2_list>li>.menuitem {
        font-size: 16px;
    }
}

@media (min-width:576px) {
    .depth1_list>li>.menuitem {
        height: 70px
    }
}

@media (min-width:992px) {
    #header {
        position: fixed;
        width: 100%;
        z-index: 1000;
        border-bottom: 1px solid #E5E5E5
    }

    .top-menu-layout {
        height: auto;
    }

    .site-logo .logo-txt {
        margin-left: 10px;
        font-size: 18px;
        display: flex;
        flex-direction: column;
        justify-content: center
    }

    .site-logo .logo-txt p {
        margin-bottom: 0
    }

    .site-logo .logo-txt span {
        text-transform: uppercase;
        font-size: 10px;
        font-weight: 400;
        color: #555
    }

    .site-logo span {
        font-size: 15px;
    }

    .menu-link {
        display: flex;
        column-gap: 5px
    }

    .menu-link a {
        background-color: var(--main-color01);
        color: #fff;
        border-radius: 100px;
        font-size: 14px;
        font-weight: 500;
        padding: 4px 20px;
        border: 1px solid var(--main-color01)
    }

    .menu-link a:hover {
        background-color: #fff;
        color: var(--main-color01)
    }

    .menu-ham {
        width: 44px;
        height: 44px;
        border-radius: 50%;
    }

    .menu-ham:after {
        display: none;
    }

    .menu-ham.sitemap {
        display: inline-flex;
        justify-content: center;
        align-items: center;
        gap: 0 10px;
    }

    .menubar {
        overflow-y: visible;
        width: auto;
        margin: 0;
        padding: 0
    }

    .menubar>li {
        border-bottom: 0
    }

    .menubar-box {
        position: static;
        display: flex;
        justify-content: flex-end;
        max-width: 100%;
        height: 100%;
        background: transparent;
        z-index: 20;
        flex: 1 1 10%;
        padding: 0 20px 0 0;
    }

    .menubar-title-box {
        display: none
    }

    .depth1_list {
        display: flex;
        background: 0 0;
        box-shadow: none;
        height: 60px
    }

    .depth1_list>li {
        position: relative;
    }

    .depth1_list>li>.menuitem {
        position: relative;
        max-width: 100%;
        height: 100%;
        font-weight: 500;
        border-bottom: 0;
        font-size: 18px;
        text-align: center;
        color: #333;
        justify-content: center;
        padding: 0 15px;
        z-index: 1;
    }

    .depth1_list>li>.menuitem:before {
        content: '';
        position: absolute;
        bottom: 6px;
        width: 12px;
        border-radius: 0 0px 3px 0;
        height: 12px;
        background: var(--white);
        background: var(--white);
        border-right: 2px solid var(--main-color01);
        border-bottom: 2px solid var(--main-color01);
        transform: rotate(45deg);
        opacity: 0;
        transition: .3s all ease-in-out;
    }

    .depth1_list>li>.menuitem:hover,
    .depth1_list>li>.menuitem:focus,
    .depth1_list>li.active>.menuitem {
        text-decoration: none;
        color: var(--main-color01);
    }

    .depth1_list>li>.menuitem:hover:before,
    .depth1_list>li>.menuitem:focus:before,
    .depth1_list>li.active>.menuitem:before {
        bottom: 0px;
        opacity: 1;
    }

    .depth1_list>li>.menuitem>.toggle-btn {
        display: none
    }

    .depth1_list>li:has(.depth2_list)>.menuitem>.toggle-btn {
        display: none
    }

    .depth1_list>li>.menuitem.expanded-true {
        max-width: 100%;
        background: 0 0;
        box-shadow: none;
        border: 0;
    }

    .depth1_list .menubox {
        position: absolute;
        top: 55px;
        left: 50%;
        width: 100%;
        min-width: 160px;
        min-height: 240px;
        transform: translateX(-50%);
        visibility: hidden
    }

    .depth1_list .menubox-inner>.depth2_list>li>.menuitem {
        opacity: 1;
    }

    .depth1_list>li.active>.menuitem+.menubox {
        width: calc(100% + 60px);
        top: 55px;
        height: auto;
        min-height: 0;
        background-color: var(--main-color01);
        color: #fff;
        text-align: center;
        border-radius: 8px;
    }

    .depth1_list>li>.menubox.focusin,
    .depth1_list>li:hover>.menubox,
    .depth1_list>li:focus>.menubox {
        visibility: visible;
        opacity: 1;
    }

    .depth1_list>li>.menubox>.menubox-inner {
        /* width:calc(100% + 50px); */
        height: auto;
        min-height: 0;
        background-color: var(--main-color01);
        color: #fff;
        text-align: center;
        box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
    }

    /* .depth1_list>li>.menubox>.menubox-inner{position:relative;padding:0;height:100%} */
    .depth1_list>li.active .menubox {
        visibility: visible
    }

    .depth1_list .menubox-inner>.depth2_list {
        position: relative;
        display: block;
        padding: 15px 10px;
    }

    .depth1_list .menubox-inner>.depth2_list>li {
        padding-left: 0
    }

    .depth1_list .menubox-inner>.depth2_list>li::before {
        display: none
    }

    .depth1_list .menubox-inner>.depth2_list>li>.menuitem {
        display: inline-block;
        height: auto;
        transition: 0s;
        color: #fff;
        margin-bottom: 15px;
        font-size: 16px
    }

    .depth1_list .menubox-inner>.depth2_list>li>.menuitem:before {
        content: '';
        ;
        display: block;
        position: absolute;
        right: 0;
        bottom: -2px;
        width: 0;
        height: 1px;
        background: var(--white);
        transition: .3s all ease;
    }

    .depth1_list .menubox-inner>.depth2_list>li>.menuitem:hover:before,
    .depth1_list .menubox-inner>.depth2_list>li>.menuitem:focus:before {
        width: 100%;
        left: 0;
    }

    .depth1_list .menubox-inner>.depth2_list>li:last-child>.menuitem {
        margin-bottom: 0
    }

    .depth1_list .menubox-inner>.depth2_list>li>.menuitem:focus,
    .depth1_list .menubox-inner>.depth2_list>li>.menuitem:hover {
        text-decoration: none;
    }

    .depth1_list .menubox-inner>.depth2_list>li>.menuitem.haspopup-true>.toggle-btn {
        display: none
    }

    .depth1_list .menubox-inner>.depth2_list>li>.depth3_list {
        display: block;
        border-bottom: 0;
        padding: 12px 10px 10px
    }

    .depth1_list .menubox-inner>.depth2_list>li>.depth3_list>li {
        padding: 0 0 0 18px;
        margin-bottom: 5px
    }

    .depth1_list .menubox-inner>.depth2_list>li>.depth3_list>li>a:before {
        width: 8px;
        height: 2px;
        background-color: #b5b5b5
    }
}

@media (min-width: 1200px) {
    .utill .utill-link {
        display: flex;
        height: 36px;
        align-items: center;
        gap: 0;
    }

    .utill .utill-link li {
        height: 100%;
        display: flex;
        align-items: center;
        border-right: 1px solid #e5e5e5;
        transition: .3s;
    }

    .utill .utill-link .utill-pnu {
        padding: 0 20px;
    }

    .utill .utill-link li:hover,
    .utill .utill-link li:focus {
        background-color: var(--main-color01);
    }

    .utill .utill-link li:not(:first-child)::before {
        display: none;
    }

    .utill .utill-link .utill-pnu {
        background-color: var(--main-color02);
        color: #fff;
    }

    .utill .utill-link .utill-pnu span:before {
        display: inline-block;
        content: '';
        width: 15px;
        height: 15px;
        background: url(/local/fund/images/utill-icon.svg) no-repeat center/contain;
        margin-right: 10px;
    }

    .utill .utill-link li:hover a,
    .utill .utill-link li:focus a {
        color: #fff;
        text-decoration: none;
    }

    .site-logo {
        gap: 20px;
    }

    .site-logo>img {
        width: 220px;
    }

    .site-logo span {
        font-size: 20px;
    }

    .site-logo .logo-txt p {
        font-size: 20px
    }

    .site-logo .logo-txt span {
        font-size: 11px
    }

    .depth1_list {
        height: 70px;
    }

    .depth1_list .menubox {
        top: 65px;
    }

    .depth1_list>li>.menuitem {
        font-size: 20px;
        padding: 0 20px;
    }

    .depth1_list>li.active>.menuitem+.menubox {
        top: 65px;
    }

    .depth1_list .menubox-inner>.depth2_list>li>.menuitem {
        font-size: 17px;
    }
}

@media (min-width:1400px) {
    .site-logo span {
        font-size: 20px;
    }

    .site-logo>img {
        width: 245px;
    }

    .depth1_list {
        height: 85px
    }

    .depth1_list>li>.menuitem {
        font-size: 22px;
        padding: 0 25px;
    }

    .depth1_list>li>.menuitem:hover:before,
    .depth1_list>li>.menuitem:focus:before,
    .depth1_list>li.active>.menuitem:before {
        bottom: 5px;
    }

    .depth1_list .menubox {
        top: 75px;
    }

    .depth1_list>li.active>.menuitem+.menubox {
        top: 75px;
    }

    .depth1_list .menubox-inner>.depth2_list {
        padding: 15px 20px;
    }

    .depth1_list .menubox .depth2_list>li {
        width: 100%
    }

    .depth1_list .menubox-inner>.depth2_list>li>.menuitem {
        font-size: 18px;
        margin-bottom: 15px
    }

    .depth1_list .menubox-inner>.depth2_list {
        padding: 25px 30px
    }

    .depth1_list .menubox-inner>.depth2_list>li>.depth3_list {
        padding: 16px 10px 10px
    }

    .depth1_list .menubox-inner>.depth2_list>li>.depth3_list>li {
        margin-bottom: 6px
    }

    .menu-ham {
        width: 50px;
        height: 50px;
    }

    .menu-ham .sitemap-line {
        gap: 6px 0;
    }

    .menu-ham .sitemap-line .line01 {
        width: 22px;
        height: 2px;
    }

    .menu-ham .sitemap-line .line02 {
        width: 16px;
        height: 2px;
    }

    .menu-ham .sitemap-line .line03 {
        width: 22px;
        height: 2px;
    }

    .menu-ham:hover .sitemap-line .line01,
    .menu-ham:focus .sitemap-line .line01 {
        width: 22px;
    }

    .menu-ham:hover .sitemap-line .line02,
    .menu-ham:focus .sitemap-line .line02 {
        width: 22px;
    }

    .menu-ham:hover .sitemap-line .line03,
    .menu-ham:focus .sitemap-line .line03 {
        width: 22px;
    }
}

/* Footer */
#footer {
    position: relative;
    word-break: keep-all;
    background: var(--main-color02);
    padding: 0 0 110px;
    z-index: 1
}

#footer .footer-box .f-utill {
    margin-bottom: 0;
}

#footer .f-utill>li:not(:first-child)::before {
    height: 15px;
    background-color: rgba(255, 255, 255, .2);
    margin: 0 15px 0 13px;
}

#footer .f-utill>li>a:hover,
#footer .f-utill>li>a:focus {
    text-decoration: none;
}

#footer .f-info {
    color: rgba(255, 255, 255, .8);
    text-align: left;
}

#footer .f-info .f-txt ul {
    justify-content: flex-start;
}

#footer .f-info .f-txt li:not(:first-child)::before {
    display: none;
}

.footer-box {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px 0;
    margin-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, .2);
    padding: 18px 0 15px;
}

.footer-box .f-utill>li a {
    position: relative;
}

.footer-box .f-utill>li a:before {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    bottom: -2px;
    width: 0;
    height: 1px;
    background: #FFF;
    transition: .3s all ease;
}

.footer-box .f-utill>li a:hover:before {
    width: 100%;
    left: 0;
}

.footer-box .family {
    position: relative
}

.footer-box .family .family-btn {
    position: relative;
    background: rgba(0, 0, 0, .2);
    text-align: left;
    word-break: keep-all;
    border: 0;
    color: #fff;
    width: 100%;
    min-width: 180px;
    padding: 8px 25px 10px 15px;
}

.footer-box .family .family-btn:before {
    content: '';
    position: absolute;
    top: calc(50% - 4px);
    right: 10px;
    transform: translateY(-50%);
    border: 6px solid transparent;
    border-bottom: 7px solid rgba(255, 255, 255, .5)
}

.footer-box .family.on .family-btn:before {
    transform: rotate(180deg);
    margin-top: -1px;
}

.footer-box .family .family-list {
    position: absolute;
    left: 0;
    bottom: calc(100% + 10px);
    width: 100%;
    display: none;
    border-radius: 10px 5px 5px 5px;
    background: var(--white);
    border-width: 1px 1px 0 1px;
    border-style: solid;
    padding: 15px 18px 15px 0;
}

.footer-box .family .family-list .list>li {
    color: var(--tit-color);
    font-weight: 400;
    padding: 3px 0 4px;
}

.footer-box .family .family-list a {
    position: relative;
    display: inline-block;
    width: 100%;
    padding: 0 0 0 20px;
}

.footer-box .family .family-list a:before {
    content: '';
    position: absolute;
    top: 12px;
    left: 0;
    width: 0;
    height: 1px;
    background: var(--main-color01);
    transition: .3s width;
}

.footer-box .family .family-list .list>li a:focus,
.footer-box .family .family-list .list>li a:hover {
    color: var(--main-color01);
    text-decoration: none;
}

.footer-box .family .family-list .list>li a:focus:before,
.footer-box .family .family-list .list>li a:hover:before {
    width: 10px;
}

.f-etc {
    display: flex;
    flex-direction: column;
    gap: 15px 0;
    width: 100%;
    justify-content: space-between;
    align-items: stretch;
}

.f-etc .sns-list {
    display: flex;
    gap: 0 10px;
    align-items: center;
    justify-content: center;
}

.f-etc .sns-list a {
    display: block;
    width: 32px;
    height: 32px;
    opacity: .7;
}

.f-etc .sns-list a:hover,
.f-etc .sns-list a:focus {
    animation: jump 0.3s 0.1s cubic-bezier(0, 0, 0.18, 0.99) alternate;
    opacity: 1;
}

.f-etc .sns-list .youtube {
    background: url(/local/fund/images/sns-youtube.svg);
}

.f-etc .sns-list .instagram {
    background: url(/local/fund/images/sns-instagram.svg);
}

.f-etc .sns-list .facebook {
    background: url(/local/fund/images/sns-facebook.svg);
}

.f-etc .sns-list .blog {
    background: url(/local/fund/images/sns-blog.svg);
}

.f-info .logo {
    font-size: 18px;
    font-weight: 600;
    color: rgba(255, 255, 255, .4);
}

.f-info .logo img {
    width: 220px;
    opacity: .4;
}

.f-info .logo span {
    margin-left: 5px;
}

.f-info .f-txt .copyright {
    letter-spacing: 0;
    color: rgba(255, 255, 255, .7);
}

@media(min-width:480px) {
    .footer-box .family .family-btn {
        background: transparent;
    }

    .footer-box .family .family-btn:before {
        top: 50%;
        right: 0;
    }

    .footer-box .family .family-list {
        width: 250px;
    }

    .f-etc {
        flex-direction: row;
        gap: 0 20px;
    }
}

@media(min-width:992px) {
    #footer {
        padding: 0 0 50px;
    }

    #footer .container {
        display: flex;
        flex-direction: column;
        justify-content: center;
    }

    #footer .footer-box .f-utill {
        margin-bottom: 0;
    }

    #footer .f-info {
        flex-direction: row;
        align-items: flex-start;
    }

    #footer .f-info .logo {
        flex: 0 0 280px;
    }

    #footer .f-info .f-txt ul {
        display: inline-block;
        margin-bottom: 30px;
    }

    .footer-box {
        flex: 0 0 60px;
        justify-content: space-between;
        align-items: center;
        padding: 0;
        margin-bottom: 25px;
    }

    .footer-box .family .family-btn {
        min-width: 160px;
        height: 60px;
    }

    .footer-box .family .family-list {
        left: 0;
        bottom: 100%;
        width: 240px;
        ;
        border-radius: 10px 10px 0 0;
    }

    .f-etc {
        display: flex;
        gap: 0 20px;
        width: auto;
    }

    .f-info .logo img {
        width: 245px;
    }

    .f-info .logo {
        font-size: 20px;
    }

    .f-info .logo span {
        margin-left: 8px;
    }
}

@media(min-width:1200px) {
    #footer {
        padding: 0 0 60px;
    }

    .footer-box {
        flex: 0 0 69px;
        margin-bottom: 30px;
    }

    .footer-box .family .family-btn {
        height: 69px;
    }
}

@media (min-width:1500px) {
    .container {
        max-width: 1400px
    }

    .container-sm {
        max-width: 1400px
    }
}

/*****************************************************
	Style Guide
*****************************************************/
/* title */
.tit-h3 {
    position: relative;
    font-family: var(--font-type02);
    font-size: 1.5em;
    letter-spacing: 0;
    color: var(--tit-color);
    padding: 0 0 0 35px;
    margin: 60px 0 8px
}

.tit-h3:before {
    content: '';
    position: absolute;
    top: 9px;
    left: 10px;
    transform: rotate(45deg);
    width: 5px;
    height: 25px;
    background: var(--point-color03);
    border-radius: 0;
}

.tit-h3:first-child {
    margin: 0 0 8px;
}

.tit-h4 {
    position: relative;
    font-family: var(--font-type02);
    font-size: 1.4em;
    font-weight: 400;
    color: var(--tit-color);
    background: transparent;
    padding: 0 0 0 28px;
    margin: 30px 0 8px;
}

.tit-h4:before {
    content: '';
    position: absolute;
    top: 8px;
    left: 0;
    width: 18px;
    height: 18px;
    border: 5px solid var(--main-color01);
    border-radius: 50%;
}

.tit-h5 {
    position: relative;
    font-size: 1.25em;
    color: var(--main-color02);
    padding: 0;
    margin: 20px 0 6px;
}

.tit-h5:before {
    display: none;
}

.tit-h6 {
    position: relative;
    font-size: 1.125em;
    color: #3E5F9C;
    padding: 0 0 0 28px;
    margin: 20px 0 6px;
}

.tit-h6:before {
    content: '';
    position: absolute;
    top: 11px;
    left: 0;
    width: 18px;
    height: 4px;
    background: url(/local/fund/images/tit-h6.png);
}

[class^="tit-h"]+[class^="tit-h"] {
    margin-top: 0;
}

.line_br {
    display: inline;
}

.tpoint {
    color: var(--main-color01);
}

.text-type01 {
    font-family: var(--font-type01);
}

.text-type02 {
    font-family: var(--font-type02);
}

.info-txt {
    color: var(--txt-color);
}

.info-txt,
.info-txt.type02,
.info-txt.type03 {
    padding: 0 0 0 28px;
}

.info-txt {
    margin: 8px 10px 0 0;
}

.info-txt+.info-txt {
    margin: 5px 10px 0 0;
}

.info-txt:before,
.info-txt.type02:before,
.info-txt.type03:before {
    width: 19px;
    height: 17px;
    top: 4px;
    font-family: var(--font-type02);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.7;
    border-radius: 0px;
    padding: 0 1px 0px 0;
}

.info-txt:before {
    color: var(--main-color01);
    background: url(/local/fund/images/info-txt01.png) no-repeat;
}

.info-txt.type02:before {
    color: #9b2236;
    background: url(/local/fund/images/info-txt02.png) no-repeat;
}

.info-list ul li {
    padding: 0 0 0 15px;
}

.info-list ul li:before {
    width: 6px;
    ;
    height: 2px;
}

.info-list:before,
.info-list.num2:before {
    width: 19px;
    height: 17px;
    top: 11px;
    font-family: var(--font-type02);
    font-size: 12px;
    font-weight: 400;
    line-height: 1.7;
    border: 0;
    border-radius: 0px;
    padding: 0 1px 0px 0;
}

.info-list:before {
    color: var(--main-color01);
    background: url(/local/fund/images/info-txt01.png) no-repeat;
}

.info-list.type02:before {
    color: #9b2236;
    background: url(/local/fund/images/info-txt02.png) no-repeat;
}

/* tab */
.tab-type01 .nav-tabs {
    display: flex;
    border-radius: 6px;
    background: #F9F9F9;
    margin-bottom: 30px;
}

.tab-type01 .nav-tabs .nav-link {
    position: relative;
    flex: 0 0 50%;
    max-width: 50%;
    font-size: 1em;
    letter-spacing: -0.044em;
    color: #606060;
    border: 0;
    border-bottom: 1px solid #E5E5E5;
    background: transparent;
    padding: 10px 10px 11px 10px;
}

.tab-type01 .nav-tabs .nav-link:nth-child(2n):after {
    display: none;
}

.tab-type01 .nav-tabs .nav-link:hover,
.tab-type01 .nav-tabs .nav-link:focus {
    border: 0;
    border-bottom: 1px solid #E5E5E5;
}

.tab-type01 .nav-tabs .nav-link:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    background-image: linear-gradient(#fff, #fff), linear-gradient(to right, rgba(54, 186, 197, 1) 25%, rgba(1, 73, 209, 1) 90%);
    background-clip: content-box, border-box;
    transition: all .4s ease-out;
    border-radius: 6px;
    opacity: 0;
    padding: 0px;
    margin: 0 -1px;
    z-index: 0;
}

.tab-type01 .nav-tabs .nav-link:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    width: 1px;
    height: 50%;
    background: #E5E5E5;
}

.tab-type01 .nav-tabs .nav-link.active {
    font-weight: 500;
    color: var(--main-color01);
    border: 0;
    border-bottom: 1px solid transparent;
}

.tab-type01 .nav-tabs .nav-link.active:before {
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 1;
    padding: 1px;
}

.tab-type01 .nav-tabs .nav-link.active:after {
    display: none;
}

.tab-type01 .nav-tabs .nav-link span {
    position: relative;
    z-index: 1;
}

.tab-type02 {
    background: url(/local/fund/images/bx-line-bg.png);
    padding: 3px 0;
    margin-bottom: 30px;
}

.tab-type02 .nav-tabs {
    display: flex;
    justify-content: center;
    gap: 7px 20px;
    background: var(--white);
    border-bottom: 0;
    padding: 8px 15px;
}

.tab-type02 .nav-tabs .nav-link {
    position: relative;
    display: inline-block;
    color: #888;
    background: transparent;
    border: 0;
    padding: 0 0 0 18px;
}

.tab-type02 .nav-tabs .nav-link:before {
    content: '';
    position: absolute;
    top: 12px;
    left: 0;
    width: 9px;
    height: 2px;
    background: #D0D0D0;
    transition: transform .3s
}

.tab-type02 .nav-tabs .nav-link:after {
    content: '';
    position: absolute;
    top: 12px;
    left: 0;
    width: 9px;
    height: 2px;
    background: #D0D0D0;
    opacity: 0;
    transition: opacity, transform .4s
}

.tab-type02 .nav-tabs .nav-link.active {
    font-weight: 500;
    color: var(--tit-color);
    border: 0;
}

.tab-type02 .nav-tabs .nav-link.active:before {
    width: 6px;
    background: var(--point-color01);
    transform: rotate(45deg);
}

.tab-type02 .nav-tabs .nav-link.active:after {
    width: 10px;
    top: 11px;
    left: 3px;
    background: var(--point-color01);
    opacity: 1;
    transform: rotate(-45deg);
}

.tab-type02 .nav-tabs .nav-link:hover,
.tab-type02 .nav-tabs .nav-link:focus {
    border: 0;
}

/* list */
.list-style01,
.list-style02,
.list-num,
.list-han {
    margin: 0 0 1.5rem;
}

.list-style01>li .list-style02 {
    margin: 2px 0 6px;
}

[class*=list-] [class*=list-] {
    margin: 6px 0 10px;
}

.list-style01>li {
    color: var(--txt-color);
    padding: 0 0 0 16px;
    margin: 2px 0;
}

.list-style01>li:before {
    top: 10px;
    border-radius: 2px;
    background: var(--main-color01);
}

.list-style01>li .bltitle {
    color: var(--tit-color);
}

.list-style02>li {
    padding-left: 15px;
    margin: 0;
}

.list-style02>li:before {
    width: 6px;
    height: 2px;
    background: #b5b5b5;
}

.list-num>li {
    position: relative;
    counter-increment: list-num;
    padding: 0 0 0 28px;
    margin: 5px 0;
}

.list-num>li:before {
    content: counter(list-num);
    position: absolute;
    top: 3px;
    left: 0;
    width: 20px;
    height: 20px;
    font-size: 13px;
    text-align: center;
    color: var(--main-color01);
    background: #E4EAF7;
    border-radius: 4px;
}

.list-han>li {
    position: relative;
    padding: 0 0 0 28px;
    margin: 5px 0;
}

.list-han>li .bl {
    position: absolute;
    top: 3px;
    left: 0;
    width: 20px;
    height: 20px;
    font-size: 13px;
    text-align: center;
    color: var(--main-color01);
    background: #E4EAF7;
    border-radius: 4px;
}

[class*=list-] .list-num,
[class*=list-] .list-han {
    margin: 8px 0 12px;
}

[class*=list-] .list-num>li:before {
    color: #606060;
    background: #F5F5F5;
    border-radius: 50%;
}

[class*=list-] .list-han>li .bl {
    color: #606060;
    background: #F5F5F5;
    border-radius: 50%;
}

/* button */
.btn-text {
    position: relative;
    padding: 0;
    color: var(--main-color01);
    vertical-align: text-top;
    margin-right: 5px;
}

.btn-text::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 100%;
    border-bottom: 1px dashed var(--primary);
}

.btn-info {
    background-color: var(--point-color02);
    border-color: var(--point-color02);
}

.btn-info:hover,
.btn-info:focus {
    background-color: var(--point-color02-hover);
    border-color: var(--point-color02-hover);
}

.btn-outline-info {
    border-color: var(--point-color02);
    color: var(--point-color02);
}

.btn-outline-info:hover,
.btn-outline-info:focus {
    background-color: var(--point-color02-hover);
    border-color: var(--point-color02-hover);
}

/* table */
.table {
    position: relative;
}

.table thead th,
.table tbody th {
    color: var(--main-color02);
    font-weight: 500;
}

.table.table-board:before {
    content: '';
    position: absolute;
    top: -1px;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--main-color02);
    z-index: 1;
}

.table:not(.table-board) {
    position: relative;
}

.table:not(.table-board):before {
    content: '';
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    height: 2px;
    background: var(--main-color02);
    z-index: 1;
}

.table:not(.table-board) thead {
    position: relative;
}

.table:not(.table-board) thead:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: var(--main-color02);
}

.table:not(.table-board) th,
.table:not(.table-board) td {
    padding: 8px;
}

.table:not(.table-board) thead th {
    position: relative;
    font-weight: 500;
    color: var(--main-color02);
    border-left-color: transparent;
    border-color: transparent;
    background: var(--white);
    border-bottom: 1px solid #DEDEDE;
    padding: 10px 8px;
    padding-top: 10px;
}

.table:not(.table-board) thead th:after {
    content: '';
    position: absolute;
    right: -1px;
    top: 50%;
    display: inline-block;
    width: 1px;
    height: calc(100% - 34px);
    min-height: 18px;
    background: #DEDEDE;
    transform: translateY(-50%);
}

.table:not(.table-board) thead th[rowspan]:after {
    height: calc(100% - 34px);
}

.table:not(.table-board) thead th[colspan]:after {
    display: none;
}

.table:not(.table-board) thead th[colspan]+th:before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    display: inline-block;
    width: 1px;
    height: calc(100% - 34px);
    background: #DEDEDE;
    transform: translateY(-50%);
}

.table:not(.table-board) thead th[colspan]+[rowspan]:before {
    height: calc(100% - 34px);
}

.table:not(.table-board) thead th:last-child:after {
    display: none;
}

.table:not(.table-board) thead tr:last-child th {
    border-bottom: 0;
}

.table:not(.table-board) th:first-child,
.table:not(.table-board) td:first-child {
    border-left-color: transparent;
}

.table:not(.table-board) th:last-child,
.table:not(.table-board) td:last-child {
    border-right-color: transparent;
}

.table:not(.table-board) tbody th {
    font-weight: 500;
    color: var(--main-color02);
    background: var(--bg-color01);
}

.table:not(.table-board) tbody td {
    color: var(--txt-color);
}

.table:not(.table-board) thead+tbody th,
.table:not(.table-board) thead+tbody td {
    border-top: 0;
}

/* board */
.board-search .form-text {
    font-family: var(--font-type02);
    color: var(--tit-color);
}

.table thead+tbody th,
.table thead+tbody td {
    border-top: 0;
}

.notice .notice-icon::after {
    color: var(--main-color01);
}

.pagination .page-item.active .page-link {
    background-color: var(--main-color02);
    border-color: var(--main-color02);
}

.pagination .page-item .page-link:hover,
.pagination .page-item .page-link:focus {
    background-color: var(--main-color02-hover);
    color: #fff;
}

/* box - top */
[class*=info-top] {
    position: relative;
    border-radius: 15px 15px 0 0;
    background: var(--bg-color01);
    padding: 20px 0 0 0;
    margin: 0 0 30px;
}

[class*=info-top] .txt-box {
    position: relative;
    background: var(--white);
    border-radius: 15px 15px 0 0;
    padding: 15px 18px;
}

[class*=info-top] .txt-box:before {
    content: '';
    position: absolute;
    bottom: 0;
    width: calc(100% - 40px);
    height: 1px;
    background: #EEE;
}

[class*=info-top] .txt-box .tit {
    font-size: 1.2em;
}

[class*=info-top] .txt-box .tit:first-child {
    margin-top: 0;
}

.info-top02 {
    display: flex;
    flex-flow: column wrap;
    align-items: flex-end;
}

.info-top02 .ico-box {
    position: relative;
    z-index: 1;
    padding: 0 20px 0 0
}

.info-top02 .ico-box .ico {
    display: inline-flex;
    width: 70px;
    height: 70px;
    background: var(--white);
    border-radius: 10px 10px 20px 10px;
    box-shadow: 0 8px 15px rgba(69, 100, 157, .08);
}

.info-top02 .txt-box {
    width: 100%;
    text-align: left;
    padding: 30px 18px 15px;
    margin-top: -30px;
}

.info-top02 .txt-box .tit+.txt {
    margin-top: 8px;
}

.info-top03 {
    position: relative;
    background: url(/local/fund/images/info-top03-bg.png) no-repeat center top;
    background-size: cover;
    padding: 20px 25px;
}

.info-top03 .img-box {
    width: 60%;
    margin: 0 auto;
}

.info-top03 .img-box .thum {
    position: relative;
    width: 100%;
    padding-top: 60%;
    height: 0;
    border-radius: 15px 30px 15px 15px;
    overflow: hidden;
}

.info-top03 .img-box .thum img {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    max-width: 100%;
    max-height: 100%;
    transform: translate(-50%, -50%);
}

.info-top03 .txt-box {
    background: transparent;
    padding: 0;
}

.info-top03 .txt-box:before {
    display: none;
}

.info-top03 .txt-box .tit {
    font-family: var(--font-type02);
    font-weight: 700;
    color: var(--tit-color);
}

.info-top03 .img-box+.txt-box {
    margin-top: 20px;
}

/* box -contents */
[class*=cont-boxtype] p {
    margin-bottom: 0;
}

[class*=cont-boxtype] .tit {
    font-size: 1.125em;
    font-weight: 600;
}

[class*=cont-boxtype] .tit:first-child {
    margin-top: 0
}

[class*=cont-boxtype] .tit+.txt {
    margin-top: 10px;
}

.cont-boxtype01 {
    position: relative;
    background: #FAFAFA;
    border: 1px solid #DBDBDB;
    border-radius: 8px;
    padding: 18px 20px 22px;
}

.cont-boxtype02 {
    position: relative;
    background: var(--white);
    border: 1px solid #DBDBDB;
    border-radius: 8px;
    padding: 18px 20px 22px;
}

.cont-boxtype03 {
    position: relative;
    background: var(--bg-color01);
    padding: 20px 0 0 0;
    border-radius: 8px 8px 0 0;
}

.cont-boxtype03 .txt-box {
    position: relative;
    background: var(--white);
    border-radius: 8px 8px 0 0;
    padding: 18px 20px 22px;
}

.cont-boxtype03>* {
    position: relative;
    z-index: 1;
}

.cont-boxtype04 {
    position: relative;
    background: var(--main-color01);
    padding: 20px 25px 25px;
    border-radius: 12px 24px 12px 12px;
}

.cont-boxtype04.type02 {
    background: #0553c8;
}

.cont-boxtype04.type03 {
    background: #125f68;
}

.cont-boxtype04:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 100%;
    height: calc(100% + 10px);
    background: url(/local/fund/images/boxtype03-overlay.png) no-repeat center / cover;
    mix-blend-mode: overlay;
    z-index: 0;
}

.cont-boxtype04:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 100%;
    height: 100%;
    background: url(/local/fund/images/boxtype03-bg.png) no-repeat center / cover;
    z-index: 0;
}

.cont-boxtype04>* {
    position: relative;
    text-align: center;
    color: var(--white);
    z-index: 1;
}

.cont-boxtype04 .tit {
    color: var(--white);
}

.cont-boxtype04 [class*=tit-h] {
    padding: 0;
}

.cont-boxtype04 [class*=tit-h]:before {
    display: none;
}

.cont-boxtype04 [class*=tit-h] .light {
    opacity: .7;
}

.cont-boxtype04 .tit-h3 {
    font-size: 1.4em;
}

.cont-boxtype04 .tit-h4 {
    font-size: 1.2em;
    font-weight: 400;
}

.cont-boxtype04 .tit+.txt {
    margin-top: 8px;
}

.cont-boxtype04.top-info {
    margin: 25px 0 0 0;
    padding: 20px 28px 12px;
}

.cont-boxtype04 .num {
    position: absolute;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    font-family: var(--font-type02);
    font-size: 1.2em;
    font-weight: 700;
    letter-spacing: 0;
    color: var(--main-color01);
    border-radius: 50%;
    border: 2px solid var(--main-color01);
    background: var(--white);
    box-shadow: 0 20px 20px rgba(0, 0, 0, .2);
}

.cont-boxtype04 .num:before {
    content: '';
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    border-width: 7px 5px 0 5px;
    border-color: var(--white) transparent transparent transparent;
    border-style: solid;
}

.cont-boxtype04.type02 .num {
    border-color: var(--point-color01);
    color: var(--point-color01);
}

.cont-boxtype04.type03 .num {
    border-color: var(--point-color02);
    color: var(--point-color02);
}

.cont-boxtype04 .num+.tit {
    margin-top: 25px;
}

/* box - list */
[class*=list-boxtype] {
    position: relative;
}

.list-boxtype01 {
    background: var(--bg-color01);
    border-radius: 8px 8px 0 0;
    padding: 20px 0 0 0;
}

.list-boxtype01 .conlist {
    background: var(--white);
    border-radius: 8px 8px 0 0;
    padding: 18px 20px 0;
}

.list-boxtype01 .conlist .item {
    position: relative;
    border-bottom: 1px solid #EEE;
    padding: 12px 0;
}

.list-boxtype01 .conlist .item:first-of-type {
    padding: 0 0 12px;
}

.list-boxtype01 .conlist .item .tit-box .tit {
    font-size: 16px;
    font-weight: 700;
    color: var(--tit-color);
    margin-bottom: 0;
}

.list-boxtype01 .conlist .item .tit-box .tit+.tit-h6 {
    font-size: 14px;
    padding: 0 0 0 22px;
    margin: 0;
}

.list-boxtype01 .conlist .item .tit-box .tit+.tit-h6:before {
    width: 16px;
    top: 9px;
    background-size: 16px;
}

.list-boxtype01 .conlist .item .txt-box p:last-of-type {
    margin-bottom: 0;
}

.list-boxtype01 .conlist .item .tit-box .deco {
    display: flex;
    align-items: center;
    flex-flow: row wrap;
}

.list-boxtype01 .conlist .item .tit-box .deco span.num,
.list-boxtype01 .conlist .item .tit-box .deco span.ico {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    font-size: 13px;
    font-weight: 700;
    color: var(--main-color01);
    border-radius: 8px;
    background: var(--bg-color01);
    margin-right: 8px;
}

.list-boxtype01 .conlist .item .tit-box .deco .tit span.num:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 50%;
    height: 2px;
    background: var(--main-color01);
}

.list-boxtype01 .conlist .item .tit-box .deco span.num+*,
.list-boxtype01 .conlist .item .tit-box .deco span.ico+* {
    flex: 0 1 calc(100% - 38px);
}

.list-boxtype01 .conlist .item .tit-box+.txt-box {
    margin-top: 8px;
}

/* img */
.img-zoom {
    position: relative;
    text-align: center;
}

.img-zoom>img {
    max-width: 100%;
    margin: 0 auto;
}

.img-zoom>.btn {
    position: absolute;
    top: auto;
    bottom: 15px;
    right: 15px;
    display: block;
    width: 32px;
    height: 32px;
    transition: all 0.3s ease;
    opacity: 0.8;
}

.img-zoom>.btn:hover,
.img-zoom>.btn:focus {
    color: #fff;
    opacity: 1;
}

.img-zoom>.btn,
.img-lg-zoom>.btn,
.img-xl-zoom>.btn {
    background: var(--main-color02) url(/core/images/zoom-icon.png) no-repeat center center;
    background-size: 18px;
}

.img-boxtype01 {
    padding: 0;
    border: 0;
}

.img-boxtype02 {
    border: 1px solid #EAEAEA;
    border-radius: 10px 20px 10px 10px;
    padding: 15px;
}

/* step */
.step-type01 {
    display: flex;
    flex-flow: column nowrap;
    gap: 20px 0;
    background: #F5F5F5;
    padding: 15px;
}

.step-type01 .step-item {
    position: relative;
    flex: 0 0 100%;
}

.step-type01 .step-item:after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -14px;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-width: 8px 7px 0 7px;
    border-style: solid;
    border-color: #D5D5D5 transparent transparent transparent;
}

.step-type01 .step-item:last-child:after {
    display: none;
}

.step-type01 .step-item .step-inner {
    display: flex;
    flex-direction: row;
    gap: 0 15px;
    align-items: center;
    text-align: center;
    background: var(--white);
    border-radius: 5px 20px 5px 5px;
    padding: 8px;
}

.step-type01 .step-item .step-inner .tit {
    flex: 0 0 30%;
    max-width: 30%;
    text-align: center;
    font-weight: 400;
    color: var(--white);
    background: var(--main-color01);
    border-radius: 5px;
    padding: 5px 12px;
}

.step-type01 .step-item .step-inner .txt {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    text-align: left;
}

.step-type01 .step-item .step-inner .tit+.txt {
    width: auto;
}

.step-type01 .step-item:last-child .step-inner .tit {
    background: var(--main-color02);
    box-shadow: 0 5px 30px rgba(72, 72, 72, .2);
}

/* accordion */
.acc-style01 {
    border-bottom: 1px solid #EAEAEA;
}

.acc-style01 .card .card-header {
    border: 0;
}

.acc-style01 .card .card-header>.btn {
    font-size: 1em;
    border-style: solid;
    border-width: 1px 1px 0 1px;
    border-color: #EAEAEA;
    letter-spacing: inherit;
    padding: 14px 15px;
}

.acc-style01 .card .card-header>.btn.collapsed::before {
    width: 100%;
    height: 100%;
    opacity: 0;
}

.acc-style01 .card .card-header>.btn:before {
    top: 0;
    left: 0;
    background: transparent;
    width: 100%;
    height: 100%;
    border: none;
    box-shadow: 0 8px 24px rgb(47 53 127 / 10%);
    background-image: linear-gradient(#fff, #fff), linear-gradient(to right, rgba(54, 186, 197, 1) 25%, rgba(1, 73, 209, 1) 90%);
    background-clip: content-box, border-box;
    padding: 1px 1px 0 1px;
    z-index: 1;
}

.acc-style01 .card .card-header>.btn.focus,
.acc-style01 .card .card-header>.btn:focus {
    box-shadow: none;
}

.acc-style01 .card .card-header>.btn .question {
    position: relative;
    font-family: var(--font-type01);
    color: var(--tit-color);
    font-weight: 700;
    padding: 3px 10px 3px 40px;
    z-index: 1;
}

.acc-style01 .card .card-header>.btn .question:before {
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-type02);
    font-size: 14px;
    font-weight: 400;
    background: var(--main-color02);
    top: 0px;
    transform: none;
    padding: 0;
}

.acc-style01 .card .card-header>.btn.collapsed .question {
    font-weight: 400;
    color: var(--txt-color);
}

.acc-style01 .card .card-header>.btn.collapsed:hover .question::before,
.acc-style01 .card .card-header>.btn.collapsed:focus .question::before {
    background-color: var(--tit-color);
}

.acc-style01 .card .card-header>.btn .bi {
    font-size: 1.25em;
    margin-top: 0;
    z-index: 1;
}

.acc-style01 .card .card-header .btn-link {
    overflow: visible;
}

.acc-style01 .card .card-body {
    position: relative;
    border-width: 0 1px 0;
    background-color: var(--bg-color01);
    padding: 20px 10px 20px 15px;
}

.acc-style01 .card .card-body:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-image: linear-gradient(var(--bg-color01), var(--bg-color01)), linear-gradient(to right, rgba(54, 186, 197, 1) 25%, rgba(1, 73, 209, 1) 90%);
    background-clip: content-box, border-box;
    padding: 0 1px 1px 1px;
}

.acc-style01 .card .card-body .answer::before {
    top: 2px;
    transform: none;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-type02);
    font-size: 14px;
    background: var(--point-color03);
    padding: 0;
}

@media(min-width: 576px) {}

@media(min-width: 768px) {
    .step-type01 {
        flex-flow: row wrap;
        gap: 18px;
    }

    .step-type01 .step-item {
        flex: 0 0 calc(calc(100% - 18px)/2);
    }

    .step-type01 .step-item:after {
        left: auto;
        right: -13px;
        bottom: 50%;
        transform: translateY(50%);
        border-width: 7px 0 7px 8px;
        border-color: transparent transparent transparent #D5D5D5;
    }

    .step-type01 .step-item .step-inner {
        display: block;
        height: 100%;
        border-radius: 12px 20px 12px 12px;
        overflow: hidden;
    }

    .step-type01 .step-item .step-inner .tit {
        display: inline-block;
        width: 100%;
        max-width: 100%;
        border-radius: 30px;
        padding: 8px 12px;
    }

    .step-type01 .step-item .step-inner .tit+.txt {
        display: inline-block;
        width: 100%;
        text-align: center;
        padding: 8px 8px 5px;
    }

    .info-top03 {
        display: flex;
        flex-direction: row;
        gap: 0 30px;
        margin: 0 0 70px;
    }

    .info-top03 .img-box {
        position: absolute;
        top: 0;
        left: 0;
        width: 280px;
        margin: 20px 25px;
    }

    .info-top03 .txt-box {
        flex: 1 1 auto;
        padding: 30px 0 10px 0;
    }

    .info-top03 .img-box+.txt-box {
        min-height: 110px;
        padding: 15px 0 0 310px;
        margin-top: 0;
    }

    .list-boxtype01 .conlist .item .tit-box .deco span.num,
    .list-boxtype01 .conlist .item .tit-box .deco span.ico {
        width: 36px;
        height: 36px;
        flex: 0 0 36px;
    }

    .list-boxtype01 .conlist .item .tit-box .deco span.num+*,
    .list-boxtype01 .conlist .item .tit-box .deco span.ico+* {
        flex: 0 0 calc(100% - 44px);
    }
}

@media(min-width: 992px) {
    .line_br {
        display: block;
    }

    .tit-h3 {
        font-size: 1.75em;
        margin: 60px 0 14px;
    }

    .tit-h3:first-child {
        margin: 0 0 14px;
    }

    .tit-h4 {
        font-size: 1.5em;
    }

    .info-txt:before,
    .info-txt.type02:before,
    .info-txt.type03:before {
        padding: 0;
    }

    .tab-type02 .nav-tabs {
        gap: 8px 24px;
        padding: 12px 20px;
    }

    .list-style01>li .list-style02 {
        margin: 4px 0 8px;
    }

    .list-style02>li {
        margin: 2px 0;
    }

    .table:not(.table-board) thead th {
        font-size: 17px;
        padding: 15px 12px 15px;
    }

    .table:not(.table-board) th,
    .table:not(.table-board) td {
        padding: 15px 12px 14px;
    }

    .table th,
    .table td {
        padding: 15px 12px 14px;
    }

    .table thead th {
        font-size: 17px;
        padding: 15px 12px 15px;
    }

    .table-board tbody th,
    .table-board tbody td,
    .table-board tbody td.subject {
        padding: 15px 12px 14px;
    }

    [class*=info-top] .txt-box {
        padding: 28px 32px;
        border-radius: 15px 15px 0 0;
    }

    [class*=info-top] .ico-box+.txt-box {
        border-radius: 30px 15px 0 0;
    }

    [class*=info-top] .txt-box .tit {
        font-size: 1.25em;
        margin-bottom: 12px;
    }

    .info-top02 {
        padding: 36px 0 0 0;
    }

    .info-top02 {
        flex-flow: row wrap;
        align-items: inherit;
    }

    .info-top02 .ico-box {
        position: relative;
        display: flex;
        justify-content: center;
        flex: 1 0 150px;
        max-width: 150px;
        padding: 0;
    }

    .info-top02 .ico-box:before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background: linear-gradient(to bottom, #eef3fc, var(--bg-color01));
        border-radius: 15px 30px 0 0;
        z-index: 0;
    }

    .info-top02 .ico-box .ico {
        position: relative;
        width: 90px;
        height: 90px;
        border-radius: 15px 15px 30px 15px;
        box-shadow: 0 20px 28px rgba(69, 100, 157, .08);
        margin: -15px 0 0 0;
        z-index: 1;
    }

    .info-top02 .txt-box {
        flex: 1 0 calc(100% - 180px);
        max-width: calc(100% - 180px);
        margin-top: 0;
    }

    .info-top03 {
        padding: 30px;
    }

    .info-top03 .img-box {
        width: 320px;
        ;
        margin: 30px;
    }

    .info-top03 .img-box+.txt-box {
        padding: 20px 0 0 360px;
    }

    [class*=cont-boxtype] .tit {
        font-size: 1.25em;
    }

    [class*=cont-boxtype] .tit+.txt {
        margin-top: 15px;
    }

    .cont-boxtype01,
    .cont-boxtype02 {
        border-radius: 20px;
        padding: 25px 28px 28px;
    }

    .cont-boxtype04 {
        border-radius: 20px 40px 20px 20px;
        padding: 35px 28px 36px;
    }

    .cont-boxtype04.top-info {
        padding: 30px 28px 20px;
        margin: 40px 0 0 0;
    }

    .cont-boxtype04 .tit-h3 {
        font-size: 1.75em;
        letter-spacing: 0
    }

    .cont-boxtype04 .tit-h4 {
        font-size: 1.5em;
        line-height: 1.6;
        letter-spacing: 0
    }

    .cont-boxtype04 .tit+.txt {
        margin-top: 10px;
    }

    .cont-boxtype04 .num {
        font-size: 1.5em;
        top: -35px;
        width: 70px;
        height: 70px;
    }

    .cont-boxtype04 .num:before {
        bottom: -27px;
        border-width: 9px 7px 0 7px;
    }

    .cont-boxtype04 .num+.tit {
        margin-top: 40px;
    }

    .cont-boxtype03 {
        padding: 36px 0 0 0;
        border-radius: 20px 20px 0 0;
    }

    .cont-boxtype03 .txt-box {
        border-radius: 20px 20px 0 0;
        padding: 35px 36px 30px;
    }

    .list-boxtype01 {
        border-radius: 20px 20px 0 0;
        padding: 36px 0 0 0;
    }

    .list-boxtype01 .conlist {
        display: flex;
        flex-flow: row wrap;
        border-radius: 20px 20px 0 0;
        padding: 36px 32px 0;
    }

    .list-boxtype01 .conlist .item {
        flex: 1 0 50%;
    }

    .list-boxtype01 .conlist .item:nth-of-type(2n) {
        padding: 20px 0 20px 32px;
    }

    .list-boxtype01 .conlist .item:nth-of-type(2n + 1) {
        padding: 20px 32px 20px 0;
    }

    .list-boxtype01 .conlist .item:nth-of-type(-n + 2) {
        padding-top: 0px;
    }

    .list-boxtype01 .conlist .item:before {
        content: '';
        position: absolute;
        top: 50%;
        left: 0;
        transform: translateY(-50%);
        display: inline-block;
        width: 1px;
        height: calc(100% - 40px);
        background: url(/local/fund/images/list-box-line.png);
    }

    .list-boxtype01 .conlist .item:nth-of-type(-n + 2):before {
        height: calc(100% - 30px);
        top: calc(50% - 5px);
    }

    .list-boxtype01 .conlist .item:nth-of-type(2n + 1):before {
        display: none;
    }

    .list-boxtype01 .conlist .item .tit-box .tit {
        font-size: 18px;
    }

    .list-boxtype01 .conlist .item .tit-box .tit+.tit-h6 {
        font-size: 16px;
    }

    .list-boxtype01 .conlist .item .tit-box .deco span.num,
    .list-boxtype01 .conlist .item .tit-box .deco span.ico {
        width: 40px;
        height: 40px;
        flex: 0 0 40px;
        font-size: 15px;
        margin-right: 12px;
    }

    .list-boxtype01 .conlist .item .tit-box .deco span.num+*,
    .list-boxtype01 .conlist .item .tit-box .deco span.ico+* {
        flex: 0 0 calc(100% - 52px);
    }

    .list-boxtype01 .conlist .item .tit-box .deco span.num:before {
        width: 20px;
    }

    .list-boxtype01 .conlist .item .tit-box+.txt-box {
        margin-top: 12px;
    }

    .img-zoom>.btn {
        display: none;
    }

    .img-boxtype02 {
        border-radius: 20px 40px 20px 20px;
        padding: 30px;
    }

    .step-type01 .step-item .step-inner .tit {
        padding: 9px 15px 11px;
        border-radius: 22px;
    }

    .step-type01 .step-item .step-inner .txt {
        padding: 0 5px;
    }

    .step-type01 .step-item .step-inner .tit+.txt {
        padding: 10px 12px 8px;
    }

    .acc-style01 .card .card-header>.btn {
        font-size: 1.125em;
        padding: 22px 25px;
    }

    .acc-style01 .card .card-header>.btn .question {
        padding: 0 20px 0 48px;
    }

    .acc-style01 .card .card-header>.btn .question::before {
        width: 32px;
        height: 32px;
    }

    .acc-style01 .card .card-body {
        padding: 20px 15px 20px 25px;
    }

    .acc-style01 .card .card-body .answer {
        padding: 0 12px 0 50px;
    }

    .acc-style01 .card .card-body .answer::before {
        width: 32px;
        height: 32px;
    }
}

@media(min-width: 1200px) {
    .tab-type01 .nav-tabs .nav-link {
        flex: 0 0 25%;
        max-width: 25%;
        font-size: 1.125em;
        padding: 15px 10px 16px 10px;
    }

    .tab-type01 .nav-tabs .nav-link:nth-child(2n):after {
        display: block;
    }

    .tab-type01 .nav-tabs .nav-link:nth-child(4n):after {
        display: none;
    }

    .tab-type02 .nav-tabs {
        gap: 8px 28px;
        padding: 18px 25px;
    }

    [class*=info-top] {
        border-radius: 20px 20px 0 0;
        padding: 36px 0 0 36px;
        margin: 0 0 40px;
    }

    [class*=info-top] .txt-box {
        border-radius: 20px 20px 0 0;
        padding: 40px 40px 30px;
    }

    [class*=info-top] .ico-box+.txt-box {
        border-radius: 40px 20px 0 0;
        padding: 36px 40px 32px;
    }

    .info-top02 {
        padding: 40px 0 0 0;
    }

    .info-top02 .ico-box {
        flex: 1 0 180px;
        max-width: 180px;
    }

    .info-top02 .ico-box:before {
        border-radius: 20px 40px 0 0;
    }

    .info-top02 .ico-box .ico {
        width: 100px;
        height: 100px;
        border-radius: 20px 20px 40px 20px;
    }

    .info-top03 {
        border-radius: 20px 100px 20px 20px;
        padding: 50px 50px 0 50px;
        margin: 0 0 90px;
    }

    .info-top03 .img-box {
        width: 400px;
        margin: 50px 50px 0;
    }

    .info-top03 .img-box .thum {
        border-radius: 20px 40px 20px 20px;
    }

    .info-top03 .txt-box {
        padding: 0;
        margin-bottom: 40px;
    }

    .info-top03 .txt-box .tit {
        font-size: 2em;
    }

    .info-top03 .img-box+.txt-box {
        min-height: 200px;
        padding: 12px 0 40px 450px;
        margin-bottom: 0;
    }

    .cont-boxtype04 .num {
        top: -40px;
        width: 80px;
        height: 80px;
    }

    .cont-boxtype04 .num:before {
        bottom: -27px;
        border-width: 9px 6px 0 6px;
    }

    .cont-boxtype04 .num+.tit {
        margin-top: 45px;
    }

    .list-boxtype01 .conlist .item:before {
        height: calc(100% - 50px);
    }

    .list-boxtype01 .conlist .item:nth-of-type(2n) {
        padding: 25px 0 25px 32px;
    }

    .list-boxtype01 .conlist .item:nth-of-type(2n + 1) {
        padding: 25px 32px 25px 0;
    }

    .list-boxtype01 .conlist .item:nth-of-type(-n + 2) {
        padding-top: 0;
    }

    .list-boxtype01 .conlist .item:nth-of-type(-n + 2):before {
        top: calc(50% - 10px);
        height: calc(100% - 25px);
    }

    .list-boxtype01 .conlist .item .tit-box .deco span.num,
    .list-boxtype01 .conlist .item .tit-box .deco span.ico {
        width: 48px;
        height: 48px;
        flex: 0 0 48px;
        font-size: 18px;
        border-radius: 8px;
        margin-right: 18px;
    }

    .list-boxtype01 .conlist .item .tit-box .tit {
        font-size: 20px;
    }

    .list-boxtype01 .conlist .item .tit-box+.txt-box {
        margin-top: 15px;
    }

    .list-boxtype01 .conlist .item .tit-box .deco span.num+*,
    .list-boxtype01 .conlist .item .tit-box .deco span.ico+* {
        flex: 0 0 calc(100% - 66px);
    }

    .step-type01 {
        gap: 24px;
        padding: 20px 30px;
    }

    .step-type01 .step-item {
        flex: 0 0 calc(calc(100% - 72px)/4);
    }

    .step-type01 .step-item:after {
        right: -16px;
        border-width: 8px 0 8px 10px;
    }

    .step-type01 .step-item .step-inner {
        border-radius: 15px 25px 15px 15px;
        padding: 10px;
    }

    .step-type01 .step-item .step-inner .tit {
        font-size: 17px;
        height: 45px;
        overflow: hidden;
    }

    .step-type01 .step-item .step-inner .txt {
        min-height: 60px;
        padding: 0 8px;
    }

    .step-type01 .step-item .step-inner .tit+.txt {
        min-height: 75px;
        padding: 12px 12px 5px;
    }

    .acc-style01 .card .card-body {
        padding: 30px 15px 35px 25px;
    }

    .acc-style01 .card .card-body .answer {
        padding: 3px 12px 0 50px;
    }

    .acc-style01 .card .card-header>.btn .question:before,
    .acc-style01 .card .card-body .answer::before {
        font-size: 16px;
    }
}

/*****************************************************
	Main
*****************************************************/
/* layout */
section {
    position: relative;
}

#fp-nav {
    display: none;
}

#fp-nav ul li:last-child {
    display: none;
}

.fp-inner {
    overflow: hidden;
}

/* common */
.m-tit01,
.m-tit02 {
    font-family: var(--font-type02);
    line-height: 1;
}

.m-tit01 {
    position: relative;
    font-size: 2.667em;
}

.m-tit02 {
    position: relative;
    font-size: 2em;
    font-weight: 700;
}

.m-tit02 span {
    position: relative;
    display: inline-block;
    color: var(--main-color02);
    line-height: 1;
    padding-top: 26px;
}

.m-tit02 span:before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%) rotate(45deg);
    width: 4px;
    height: 24px;
    background: var(--point-color03);
    border-radius: 0;
}

.non-info {
    font-size: 1.2em;
}

/* section : intro */
.intro-tit {
    position: relative;
    padding: 30px 0 20px;
}

.intro-tit .sub-tit {
    position: relative;
    font-family: var(--font-type02);
    font-size: 1.2em;
    font-weight: 100;
    color: var(--main-color02);
    opacity: .8;
    padding-left: 28px;
    margin-bottom: 0;
}

.intro-tit .sub-tit:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: inline-block;
    width: 18px;
    height: 3px;
    background: linear-gradient(90deg, #0149D1, #36BAC5);
}

.intro-tit .m-tit01 {
    color: var(--tit-color);
}

.intro-tit .txt-box {
    color: var(--tit-color);
}

.intro-tit .txt-box p {
    margin-bottom: 0;
}

.intro-tit .sub-tit+.m-tit01 {
    margin-top: 5px;
}

.intro-tit .tit-box+.txt-box {
    margin-top: 20px;
}

.main-slide {
    position: relative;
    width: 100%;
}

.main-slide:before {
    content: '';
    position: absolute;
    top: 0%;
    right: 5%;
    transform: translateY(-90%);
    display: block;
    width: 180px;
    height: 177px;
    background: url(/local/fund/images/m-intro-bg.png) no-repeat;
    background-size: 180px;
    opacity: 0.02;
    transition: .3s all;
    z-index: -1;
}

.main-slide .swiper-slide>a {
    display: block;
    width: 100%;
}

.main-slide .swiper-slide .main-img {
    display: block;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    /*padding-top: 33.5%;*/
    padding-top: 25.5%;
}

.main-ctl {
    position: relative;
    text-align: center;
    padding: 20px 0;
}

.main-ctl .control {
    justify-content: center;
}

.main-ctl button {
    position: relative;
    width: 20px;
    height: 20px;
    border: none;
    background: transparent;
    padding: 0;
    margin: 0 3px;
}

.main-ctl button.prev-btn:before {
    content: '';
    position: absolute;
    left: 1px;
    top: 5px;
    display: inline-block;
    width: 2px;
    height: 10px;
    background: var(--main-color02);
    transform: rotate(45deg);
}

.main-ctl button.prev-btn:after {
    content: '';
    position: absolute;
    left: 0;
    top: calc(100% - 8px);
    display: inline-block;
    width: 20px;
    height: 2px;
    background: var(--main-color02);
}

.main-ctl button.next-btn:before {
    content: '';
    position: absolute;
    right: 1px;
    top: 5px;
    display: inline-block;
    width: 2px;
    height: 10px;
    background: var(--main-color02);
    transform: rotate(-45deg);
}

.main-ctl button.next-btn:after {
    content: '';
    position: absolute;
    left: 0;
    top: calc(100% - 8px);
    display: inline-block;
    width: 20px;
    height: 2px;
    background: var(--main-color02);
}

.main-ctl button.play-pause.stop:before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    display: inline-block;
    width: 8px;
    height: 14px;
    border-width: 0 2px;
    border-color: var(--main-color02);
    border-style: solid;
    transform: translate(-50%, -50%);
}

.main-ctl button.play-pause.play:before {
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    border-width: 6px 0 6px 10px;
    border-style: solid;
    border-color: transparent;
    border-left-color: var(--main-color02);
    transform: translate(-50%, -50%);
}

/* section : status */
#status {
    padding: 30px 0;
}

#status:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 70%;
    background: url(/local/fund/images/status-bg.png);
    border-radius: 0 0 0 60px;
    z-index: -1;
}

.status .status-tit {
    text-align: center;
    color: var(--white);
    margin-bottom: 20px;
}

.status .status-tit .m-tit02 span {
    color: var(--white);
}

.status-box {
    position: relative;
    background: var(--white);
    border-radius: 5px 15px 5px 5px;
    overflow: hidden;
    padding: 15px;
    margin: 0 -15px;
}

.status-box .slide-tit {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.status-box .slide-tit .tit {
    position: relative;
    font-family: var(--font-type02);
    font-size: 1.2em;
    font-weight: 700;
    color: var(--main-color02);
    padding-left: 36px;
    margin-bottom: 0;
}

.status-box .slide-tit .tit:before {
    content: '';
    position: absolute;
    top: 5px;
    left: 0;
    display: inline-block;
    width: 28px;
    height: 17px;
    background: url(/local/fund/images/dona-titbg.png) no-repeat;
    background-size: 28px;
}

.status-box .slide-tit .more-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: var(--main-color01);
    margin-left: 8px;
}

.status-box .slide-tit .more-btn:before {
    content: '\F4FE';
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: var(--font-icon);
    font-size: 20px;
    color: var(--white);
}

.status-box .slide-tit .more-btn:hover,
.status-slide .slide-tit .more-btn:focus {
    background: var(--main-color01-hover);
}

.status-box .slide-tit .status-btn {
    position: relative;
    display: inline-flex;
    gap: 0 7px;
    align-items: center;
    justify-content: center;
    color: var(--white);
    text-align: center;
    height: 30px;
    border-radius: 50px;
    background: var(--main-color02);
    padding: 0 10px;
    margin-left: 8px;
}

.status-box .slide-tit .status-btn:before {
    content: '\F17A';
    display: inline-block;
    font-family: var(--font-icon);
    font-size: 18px;
    color: var(--white);
}

.status-box .slide-tit .status-btn:hover,
.status-box .slide-tit .status-btn:focus {
    text-decoration: none;
    background: var(--main-color02-hover);
}

.status-slide {
    position: relative;
    border-radius: 5px;
    background: #F6F9FF;
    padding: 15px 30px;
}

.status-slide .status-swiper {
    overflow: hidden;
}

.status-slide .swiper-slide {
    position: relative;
    display: flex;
    flex-flow: column wrap;
    padding-left: 30px;
}

.status-slide .swiper-slide:before {
    content: '';
    position: absolute;
    top: 5px;
    left: 0;
    width: 18px;
    height: 18px;
    background: url(/local/fund/images/donation-icon.svg) no-repeat;
    background-size: 18px;
}

.status-slide .donation {
    color: #666;
}

.status-slide .donation strong {
    font-family: var(--font-type02);
    font-size: 1.067em;
    color: var(--tit-color);
}

.status-slide .sponsor {
    color: #666;
}

.status-slide .sponsor .tpoint {
    font-weight: 700;
}

.status-slide .no-list+.status-ctl {
    display: none;
}

.status-slide .no-list .non-info {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 5px 20px;
    font-size: 1em;
    padding-top: 0;
    padding-bottom: 0;
    background: none;
    margin: 0;
}

.status-slide .no-list .non-info:before {
    display: block;
    content: "\F3D3";
    font-family: var(--font-icon);
    font-size: 1.2em;
    color: var(--tit-color);
}


.status-ctl {
    position: absolute;
    bottom: -20px;
    right: 50%;
    transform: translateX(50%);
}

.status-info {
    display: flex;
    flex-flow: column nowrap;
}

.m-donate {
    position: relative;
    background: linear-gradient(90deg, #024AD1, #36BAC6);
    border-radius: 5px 5px 5px 15px;
    margin: 20px 0 0 0;
}

.m-donate .symbol {
    position: absolute;
    bottom: 5px;
    left: 0;
}

.m-donate .symbol:before {
    content: '';
    display: block;
    width: 80px;
    height: 0;
    padding-top: 106.93%;
    background: url(/local/fund/images/donate-growth.png) no-repeat;
    background-size: 80px;
}

.m-donate .donate-con {
    position: relative;
    padding: 15px 20px 15px 105px
}

.m-donate .donate-con:before {
    content: '';
}

.m-donate .donate-con .sub-tit {
    font-family: var(--font-type02);
    font-size: 1.067em;
    color: var(--white);
    margin-bottom: 0;
}

.m-donate .donate-con .tit {
    font-family: var(--font-type02);
    font-weight: 700;
    font-size: 1.2em;
    color: #FFE565;
    text-shadow: 0 5px 5px rgba(0, 0, 0, .3);
    margin-bottom: 0;
}

.m-donate .donate-con .tit small {
    font-family: var(--font-type01);
    color: var(--white);
    text-shadow: none;
}

.m-donate .donate-con .tit span {
    position: relative;
}

.m-donate .donate-con .tit span:before {
    content: '';
    content: '';
    ;
    display: block;
    position: absolute;
    right: 0;
    bottom: -3px;
    width: 0;
    height: 3px;
    background: #FFE565;
    transition: .3s all ease;
}

.m-donate>a:hover,
.m-donate>a:focus {
    text-decoration: none;
    color: inherit;
}

.m-donate>a:hover .tit span:before,
.m-donate>a:focus .tit span:before {
    width: 100%;
    left: 0;
}

.m-bank {
    margin-top: 10px;
}

.m-bank .info-con {
    background: #F9F9F9;
    border-radius: 5px;
    padding: 15px;
}

.m-bank .tit-box .tit {
    font-family: var(--font-type02);
    color: var(--main-color02);
    font-size: 1.2em;
    font-weight: 700;
}

.m-bank .txt-box .major-bank {
    font-family: var(--font-type02);
    color: var(--tit-color);
    margin-bottom: 0;
}

.m-bank .txt-box .target {
    color: var(--tit-color);
}

.m-bank .bank-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    margin-top: 8px;
    gap: 3px 6px;
}

.m-bank .bank-list>li {
    position: relative;
    font-weight: 400;
    padding-left: 6px;
}

.m-bank .bank-list>li:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: inline-block;
    width: 1px;
    height: 11px;
    background: #BCBCBC;
}

.m-bank .bank-list>li:first-child {
    padding-left: 0;
}

.m-bank .bank-list>li:first-child:before {
    display: none;
}

.m-bank .bank-list>li .tit {
    font-weight: 700;
    color: var(--tit-color);
}

/* section : story */
#story {
    padding: 30px 0;
}

.story {
    position: relative;
}

.story:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 90%;
    background: linear-gradient(45deg, #F0F5FF, #F4FBFA);
    border-radius: 0 60px 0 0;
    z-index: -1;
}

.story:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    display: none;
    width: 280px;
    height: 420px;
    background: url(/local/fund/images/story-bg02.png) no-repeat;
    background-size: 280px;
}

.story .fp-inner {
    position: relative;
}

.story .fp-inner:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: none;
    width: 400px;
    height: 195px;
    background: url(/local/fund/images/story-bg01.png) no-repeat;
    background-size: 400px;
}

.story .story-tit {
    text-align: center;
    margin-bottom: 20px;
}

.story .story-con .more-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 0 8px;
    font-family: var(--font-type02);
    color: var(--white);
    background: linear-gradient(90deg, #0149D1, #36BAC5);
    border-radius: 20px;
    padding: 7px 20px;
    overflow: hidden;
}

.story .story-con .more-btn:before {
    content: '';
    position: absolute;
    left: -100%;
    width: 0;
    height: 100%;
    background: rgba(0, 0, 0, .08);
    border-radius: 20px;
    transform: skew(10deg);
    transition: .3s all ease-in-out;
    z-index: 0;
}

.story .story-con .more-btn span {
    position: relative;
    display: inline-block;
    z-index: 1;
}

.story .story-con .more-btn .ico {
    position: relative;
    display: inline-block;
    width: 12px;
    height: 12px;
    margin-left: 15px;
    z-index: 1;
    transition: .3s all;
}

.story .story-con .more-btn .ico:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: inline-block;
    width: 2px;
    height: 12px;
    background: var(--white);
}

.story .story-con .more-btn .ico:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: inline-block;
    width: 12px;
    height: 2px;
    background: var(--white);
}

.story .story-con .more-btn:hover,
.story .story-con .more-btn:focus {
    text-decoration: none;
    box-shadow: 0 8px 12px rgba(0, 0, 0, .08);
}

.story .story-con .more-btn:hover .ico,
.story .story-con .more-btn:focus .ico {
    transform: rotate(90deg);
}

.story .story-con .more-btn:hover:before,
.story .story-con .more-btn:focus:before {
    width: calc(100% + 50px);
    left: -10%;
}

.story-slide {
    margin-bottom: 20px;
}

.story-slide .swiper-slide {
    width: 85%;
}

.story-slide .swiper-slide>a {
    display: inline-block;
    width: 100%;
    background: var(--white);
    border-radius: 5px 5px 15px 5px;
    overflow: hidden;
}

.story-slide .swiper-slide>a:hover,
.story-slide .swiper-slide>a:focus {
    text-decoration: none;
    box-shadow: 0 5px 15px rgba(60, 60, 60, .15);
}

.story-slide .swiper-slide .thum {
    position: relative;
    display: block;
    width: 100%;
    padding-top: 70%;
    background: #EEE url(/core/images/thumb-non.jpg) center no-repeat;
    mix-blend-mode: darken;
    background-size: cover;
    overflow: hidden;
}

.story-slide .swiper-slide .thum img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: .3s transform;
}

.story-slide .swiper-slide .thum+.story-box {
    margin-top: 10px;
}

.story-slide .swiper-slide .story-box {
    position: relative;
    padding: 0 12px 15px 12px;
}

.story-slide .swiper-slide .story-box .tit {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    width: fit-content;
    min-height: 24px;
    font-family: var(--font-type02);
    font-size: 1.067em;
    color: var(--main-color02);
    overflow: hidden;
    margin: 5px 0 3px;
}

.story-slide .swiper-slide .story-box .txt {
    position: relative;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    min-height: 47px;
    line-height: 1.3;
    color: var(--txt-color);
    overflow: hidden;
    padding-top: 10px;
    margin-top: 8px;
}

.story-slide .swiper-slide .story-box .txt:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    width: 12px;
    height: 3px;
    background: linear-gradient(90deg, #0149D1, #36BAC5);
}

.story-slide .swiper-slide .story-box .category {
    display: inline-block;
    font-size: .867em;
    color: var(--white);
    background: var(--main-color02);
    padding: 1px 6px 2px;
    border-radius: 4px;
}

.story-slide .swiper-slide .story-box .date {
    position: absolute;
    top: 2px;
    right: 15px;
    font-size: .867em;
    color: var(--txt-color);
}

.story-slide .swiper-slide>a:hover .thum img,
.story-slide .swiper-slide>a:focus .thum img {
    transform: scale(1.05);
}

.story-slide .swiper-slide>a:hover .story-box .tit {
    color: var(--main-color01);
}

.story-slide .swiper-slide>a:hover .story-box .category {
    background: var(--main-color01);
}

/* section : focus */
.control {
    position: relative;
    display: flex;
    align-items: center;
    text-align: center;
}

.control button {
    position: relative;
    width: 20px;
    height: 20px;
    border: none;
    background: transparent;
    padding: 0;
}

.control button:before {
    text-align: center;
    color: #666;
}

.control .prev-btn:before {
    content: '\F284';
    font-family: var(--font-icon);
    display: inline-block;
}

.control .next-btn:before {
    content: '\F285';
    font-family: var(--font-icon);
    display: inline-block;
}

.control .play-pause.stop:before {
    content: '\F4C4';
    position: relative;
    top: -5px;
    font-family: var(--font-icon);
    display: inline-block;
    font-size: 20px;
}

.control .play-pause.play:before {
    content: '\F4F4';
    position: relative;
    top: -5px;
    font-family: var(--font-icon);
    display: inline-block;
    font-size: 20px;
    left: 1px;
}

#focus {
    padding: 30px 0;
}

.focus {
    overflow: hidden;
}

.focus .fp-inner:before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    display: none;
    background: url(/local/fund/images/focus-bg.png);
    z-index: -2;
}

.focus .fp-inner:after {
    content: 'DEVELOPMENT';
    position: absolute;
    top: 10px;
    right: -10px;
    font-size: 40px;
    line-height: 1;
    font-family: var(--font-type02);
    font-weight: 700;
    color: #EBFCFC;
    z-index: -1;
}

.focus .focus-tit {
    text-align: center;
    margin-bottom: 20px;
}

.focus-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 60%;
    background: #F6FFFF;
    border-radius: 0 0 0 30px;
    overflow: hidden;
    z-index: -3;
}

.focus-bg:before {
    content: '';
    position: absolute;
    top: 40px;
    left: 0;
    width: 180px;
    height: 194px;
    background: url(/local/fund/images/focus-bgdot.png);
    background-size: 180px;
}

.focus-bg .inner-bg {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 100%;
    padding-top: 25%;
    background: var(--white);
    border-radius: 30px 0 0 0;
    box-shadow: -10px -10px 20px rgba(3, 158, 161, .03);
}

.focus-con {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
}

.focus-con .gallery,
.focus-con .banner {
    flex: 1 0 100%;
    max-width: 100%;
}

.focus-con .gallery {
    margin-bottom: 20px;
}

.gall-slide {
    overflow: hidden;
}

.gall-slide .swiper-slide {
    position: relative;
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
}

.gall-slide .swiper-slide .thum {
    position: relative;
    display: block;
    height: 0;
    padding-top: 70%;
    border-radius: 8px;
    background: #EEE url(/core/images/thumb-non.jpg) center no-repeat;
    background-size: cover;
    overflow: hidden;
}

.gall-slide .swiper-slide .thum img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: .3s transform;
}

.gall-slide .swiper-slide .tit {
    position: absolute;
    bottom: 0;
    display: inline-block;
    width: 100%;
    color: var(--white);
    background: rgba(0, 0, 0, .5);
    padding: 6px 8px 8px 12px;
    margin-bottom: 0;
}

.gall-slide .swiper-slide .tit span {
    position: relative;
    color: var(--white);
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    min-height: 20px;
    overflow: hidden;
    padding: 0 0 0 18px
}

.gall-slide .swiper-slide .tit span:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    display: inline-block;
    width: 14px;
    height: 13px;
    background: url(/local/fund/images/gall-icon.svg) no-repeat;
    background-size: 14px;
}

.gall-slide .swiper-slide>a:hover .thum img,
.gall-slide .swiper-slide>a:focus .thum img {
    transform: scale(1.1);
}

.banner-slide .swiper-slide {
    position: relative;
    width: 100%;
}

.banner-slide .swiper-slide .img {
    position: relative;
    display: block;
    height: 0;
    padding-top: 70%;
    border-radius: 8px;
    background: #EEE;
    overflow: hidden;
}

.banner-slide .swiper-slide .img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.gallery .gall-ctl,
.banner .banner-ctl {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
    margin: 10px 0 0 0;
}

.gallery .gall-ctl {
    display: none;
}

.gallery .gall-slide+.gall-ctl {
    display: flex;
}

.gallery .gall-ctl .tit,
.banner .banner-ctl .tit {
    font-size: 1.2em;
    font-family: var(--font-type02);
    font-weight: 700;
    color: var(--tit-color);
    text-align: center;
    margin-bottom: 0;
}

.gallery .gall-ctl .more-btn,
.banner .banner-ctl .more-btn {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: 25px;
    height: 25px;
    border-radius: 50%;
    background: var(--point-color02);
    margin: 1px 0 0 6px;
}

.gallery .gall-ctl .more-btn::before,
.banner .banner-ctl .more-btn:before {
    content: '\F4FE';
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-family: var(--font-icon);
    font-size: 20px;
    color: var(--white);
}

.gallery .gall-ctl .more-btn:hover,
.gallery .gall-ctl .more-btn:hover,
.banner .banner-ctl .more-btn:hover,
.banner .banner-ctl .more-btn:focus {
    background: var(--point-color02-hover);
}

/* section : etc */
/* quick */
.etc {
    position: relative;
    overflow: hidden;
}

#quick {
    padding: 30px 0;
    width: 100%;
}

#quick:before {
    content: 'FOUNDATION';
    position: absolute;
    top: 0;
    left: -40px;
    font-size: 60px;
    line-height: 1;
    font-family: var(--font-type02);
    font-weight: 700;
    color: #ebfcfc;
    z-index: -1;
}

.quick-list {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    gap: 20px 0;
}

.quick-list .item {
    position: relative;
    display: flex;
    flex: 1 0 50%;
    max-width: 50%;
    justify-content: center;
}

.quick-list .item .quick-link {
    position: relative;
    display: inline-block;
    text-align: center;
    padding: 45px 0 0 0;
}

.quick-list .item .quick-link .ico {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: transparent url(/local/fund/images/quick-spr.png);
    background-size: 290px;
    transition: background-color .3s, background-position .3s;
}

.quick-list .item .quick-link .ico.q-ico01 {
    background-position: 0 0;
}

.quick-list .item .quick-link .ico.q-ico02 {
    background-position: -50px 0;
}

.quick-list .item .quick-link .ico.q-ico03 {
    background-position: -100px 0;
}

.quick-list .item .quick-link .ico.q-ico04 {
    background-position: -150px 0;
}

.quick-list .item .quick-link .ico.q-ico05 {
    background-position: -200px 0;
}

.quick-list .item .quick-link .ico.q-ico06 {
    background-position: -250px 0;
}

.quick-list .item .dropdown-menu {
    display: block;
    height: 0;
    top: inherit;
    left: inherit;
    bottom: 0;
    border: none;
    padding: 0;
    margin: 0;
}

.quick-list .item .btn-wrap {
    position: absolute;
    left: 50%;
    bottom: 10px;
    transform: translateX(-50%);
    display: flex;
    width: max-content;
    height: 0;
    background: var(--main-color01);
    border-radius: 20px;
    box-shadow: 0 12px 10px rgba(3, 58, 161, 0.2);
    padding: 0;
    opacity: 0;
    transition: bottom .5s cubic-bezier(.6, .32, .19, .8), height .2s cubic-bezier(.36, .26, .69, .42);
}

.quick-list .item .btn-wrap>li {
    position: relative;
}

.quick-list .item .btn-wrap>li:not(:first-child):before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    width: 1px;
    height: 100%;
    background: var(--white);
    opacity: .3;
}

.quick-list .item .btn-wrap>li {
    padding: 1px 8px 2px;
}

.quick-list .item .btn-wrap>li .quick-btn {
    position: relative;
    font-size: 0;
    color: var(--white);
    border-radius: 5px;
}

.quick-list .item .quick-link:hover,
.quick-list .item .quick-link:focus {
    text-decoration: none;
    color: var(--main-color01);
}

.quick-list .item .quick-link:hover .ico,
.quick-list .item .quick-link:focus,
.quick-list .item.open .quick-link .ico {
    font-weight: 500;
    text-decoration: none;
    color: var(--main-color01);
}

.quick-list .item .quick-link:hover .ico,
.quick-list .item .quick-link:hover .ico {
    background-color: var(--point-color01);
    background-position-y: -50px;
}

.quick-list .item.open .quick-link .ico {
    background-color: var(--point-color01);
    background-position-y: -50px;
}

.quick-list .item.open .btn-wrap {
    height: auto;
    padding: 5px;
    bottom: calc(100% - 8px);
    opacity: 1;
}

.quick-list .item.open .btn-wrap>li .quick-btn {
    position: relative;
    font-size: 14px;
}

.quick-list .item .btn-wrap>li .quick-btn {
    position: relative;
    display: inline;
}

.quick-list .item .btn-wrap>li .quick-btn:hover,
.quick-list .item .btn-wrap>li .quick-btn:focus {
    text-decoration: none;
}

.quick-list .item .btn-wrap>li .quick-btn:before {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    bottom: -2px;
    width: 0;
    height: 1px;
    background: #FFF;
    transition: .3s all ease;
}

.quick-list .item .btn-wrap>li .quick-btn:hover:before,
.quick-list .item.open .btn-wrap>li .quick-btn:focus:before {
    width: 100%;
    left: 0;
}

/* floating : line-news */
.line-news {
    position: fixed;
    bottom: 0;
    width: 100%;
    margin: 0;
    z-index: 99;
}

.line-news .hotline {
    width: 100%;
    border-radius: 0;
    background: #F9F9F9;
    border-radius: 0;
    box-shadow: 0 -10px 8px rgba(0, 0, 0, .1);
    overflow: hidden;
}

.line-news .hotline .hotline-tit {
    position: relative;
    display: flex;
    justify-content: space-between;
    background: linear-gradient(90deg, #024AD1, #36BAC6);
    z-index: 1;
}

.line-news .hotline .hotline-tit:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
}

.line-news .hotline .hotline-tit .tit {
    font-size: 18px;
    color: var(--white);
    padding: 4px 15px 8px;
    margin-bottom: 0;
}

.line-news .hotline .hotline-tit .tit a i {
    position: relative;
    top: 2px;
    font-size: 22px;
}

.line-news .hotline .hotline-tit .tit a:hover {
    color: inherit;
    text-decoration: none;
}

.hotline-ctl .control {
    position: relative;
    height: 100%;
}

.hotline-ctl .control .prev-btn {
    position: absolute;
    right: 10px;
    top: 4px;
}

.hotline-ctl .control .next-btn {
    position: absolute;
    right: 10px;
    bottom: 6px;
}

.hotline-ctl .control .prev-btn:before {
    content: '\F235';
    font-size: 14px;
    color: var(--white)
}

.hotline-ctl .control .next-btn:before {
    content: '\F229';
    font-size: 14px;
    color: var(--white)
}

.line-news .hotline .hotline-con {
    height: 48px;
    padding: 12px 15px 10px;
}

.line-news .hotline .hotline-con .hotline-slide {
    height: 100%;
}

.line-news .hotline .hotline-con .hotline-slide .hotline-swiper {
    overflow: hidden;
    height: 100%;
}

.line-news .hotline .hotline-con .hotline-slide .tit {
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    width: 100%;
    min-height: 25px;
    overflow: hidden;
}

.line-news .hotline .hotline-con .hotline-slide .tit:hover,
.line-news .hotline .hotline-con .hotline-slide .tit:focus {
    color: var(--main-color01);
    text-decoration: none;
}

@media(min-width: 480px) {
    #status:before {
        padding-top: 50%;
    }

    .status-slide {
        padding: 15px 20px;
    }

    .status-box {
        padding: 20px 15px;
        margin: 0
    }

    .status-ctl {
        position: absolute;
        bottom: calc(100% + 15px);
        right: 0;
        transform: translateY(0);
    }

    .m-donate .symbol {
        left: 20px;
    }

    .m-donate .symbol:before {
        width: 85px;
        background-size: 85px;
    }

    .m-donate .donate-con {
        padding: 20px 20px 20px 140px;
    }

    .m-donate .donate-con .sub-tit {
        font-size: 1.2em;
    }

    .m-donate .donate-con .tit {
        font-size: 1.6em;
    }

    .m-donate .donate-con .more-btn {
        right: 15px;
    }

    .m-bank {
        margin-top: 15px;
    }

    .m-bank .info-con {
        display: flex;
        padding: 18px 15px;
    }

    .m-bank .tit-box {
        flex: 1 0 30%;
    }

    .m-bank .tit-box .tit {
        margin-bottom: 0;
    }

    .m-bank .txt-box {
        position: relative;
        flex: 1 0 70%;
        padding-left: 20px;
    }

    .m-bank .txt-box:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 1px;
        height: 100%;
        background: #C7C7C7;
    }

    .m-bank .txt-box .major-bank {
        font-size: 1.067em;
    }

    .m-bank .bank-list {
        gap: 4px 9px;
    }

    .m-bank .bank-list>li {
        font-size: 1em;
        padding-left: 9px;
    }

    .m-bank .bank-list>li .tit {
        margin-right: 3px;
    }

    #story {
        padding: 40px 0;
    }

    .story-slide .swiper-slide {
        width: 60%;
    }

    .story-slide .swiper-slide .thum+.story-box {
        margin-top: 12px;
    }

    .story-slide .swiper-slide .story-box {
        padding: 0 15px 20px 15px;
    }

    #focus {
        padding: 50px 0 30px;
    }

    .focus .fp-inner:after {
        font-size: 52px;
    }

    .focus-bg {
        padding-top: 48%;
    }

    .focus-bg .inner-bg {
        width: 92%;
        padding-top: 20%;
    }

    .focus-con {
        gap: 0 10px;
        flex-flow: row nowrap;
    }

    .focus-con .gallery,
    .focus-con .banner {
        flex: 1 0 calc(50% - 5px);
        max-width: calc(50% - 5px);
    }

    .focus-con .gallery {
        margin-bottom: 0;
    }

    .gallery .gall-ctl,
    .banner .banner-ctl {
        gap: 8px 0;
        justify-content: center;
    }

    .gallery .gall-ctl .tit,
    .banner .banner-ctl .tit {
        flex: 1 0 100%;
    }

    #quick {
        padding: 50px 0 60px;
    }

    .quick-list {
        gap: 40px 0
    }

    .quick-list .item {
        flex: 0 0 33.3%;
    }

    .quick-list .item.open .btn-wrap {
        bottom: calc(100% - 35px);
    }
}

@media(min-width: 768px) {
    .status .status-tit .sub-tit {
        font-size: 1.067em;
    }

    .status-box {
        padding: 20px;
    }

    .status-box .slide-tit .tit {
        font-size: 1.4em;
    }

    .status-box .slide-tit .tit:before {
        width: 30px;
        height: 19px;
        background-size: 30px;
    }

    .status-slide .swiper-slide {
        padding-left: 35px;
    }

    .status-slide .swiper-slide:before {
        width: 20px;
        height: 20px;
        background-size: 20px;
    }

    .status-slide .donation {
        font-size: 1em;
    }

    .status-slide .donation strong {
        font-size: 1.2em;
    }

    .status-slide .sponsor {
        font-size: 1em;
    }

    .m-donate {
        margin: 60px 0 0 0;
    }

    .m-donate .symbol {
        left: 30px;
        bottom: 10px;
    }

    .m-donate .symbol:before {
        width: 100px;
        background-size: 100px;
    }

    .m-donate .donate-con {
        padding: 28px 30px 25px 180px;
    }

    .m-donate .donate-con .sub-tit {
        font-size: 1.4em;
    }

    .m-donate .donate-con .tit {
        font-size: 1.8em;
    }

    .m-bank {
        margin-top: 20px;
    }

    .m-bank .info-con {
        padding: 20px;
    }

    .m-bank .tit-box {
        display: flex;
        flex: 1 0 40%;
        max-width: 40%;
        align-items: center;
        gap: 0 15px;
    }

    .m-bank .tit-box .tit {
        font-size: 1.4em;
    }

    .m-bank .txt-box {
        flex: 1 0 60%;
        max-width: 60%;
    }

    .m-bank .bank-list {
        gap: 0 11px;
    }

    .m-bank .bank-list>li {
        font-size: 1.067em;
        padding-left: 12px;
    }

    .m-bank .bank-list>li:before {
        height: 14px;
    }

    #story {
        max-width: 720px;
        margin: 0 auto;
    }

    .story-slide {
        overflow-x: clip;
    }

    .story-slide .swiper-slide {
        width: 40%;
    }

    .story-slide .swiper-slide .thum+.story-box {
        margin-top: 25px;
    }

    .story-slide .swiper-slide .story-box {
        padding: 0 25px 20px 25px;
    }

    .story-slide .swiper-slide .story-box .tit {
        font-size: 1.2em;
    }

    .story-slide .swiper-slide .story-box .txt {
        font-size: 1em;
    }

    #focus {
        padding: 60px 0;
    }

    .focus .fp-inner:after {
        font-size: 60px;
    }

    .focus-con {
        gap: 0 30px;
    }

    .gallery .gall-ctl,
    .banner .banner-ctl {
        gap: 0;
        justify-content: space-between;
    }

    .gallery .gall-ctl .tit,
    .banner .banner-ctl .tit {
        flex: inherit;
    }

    #quick {
        padding: 60px 0 50px;
    }

    #quick:before {
        top: 10px;
    }

    .quick-list .item .quick-link {
        font-size: 16px;
        padding: 68px 0 0 0;
    }

    .quick-list .item .quick-link .ico {
        width: 60px;
        height: 60px;
        background-size: 435px;
    }

    .quick-list .item .quick-link .ico.q-ico02 {
        background-position: -75px 0;
    }

    .quick-list .item .quick-link .ico.q-ico03 {
        background-position: -150px 0;
    }

    .quick-list .item .quick-link .ico.q-ico04 {
        background-position: -225px 0;
    }

    .quick-list .item .quick-link .ico.q-ico05 {
        background-position: -300px 0;
    }

    .quick-list .item .quick-link .ico.q-ico06 {
        background-position: -375px 0;
    }

    .quick-list .item .btn-wrap {
        border-radius: 4px 4px 4px 8px;
    }

    .quick-list .item.open .quick-link .ico {
        background-position-y: -75px;
    }

    .quick-list .item .quick-link:hover .ico,
    .quick-list .item .quick-link:focus,
    .quick-list .item.open .quick-link .ico {
        background-position-y: -75px;
    }

    .line-news .hotline .hotline-tit .tit {
        font-size: 20px;
        padding: 8px 15px 12px;
    }

    .line-news .hotline .hotline-tit .tit a i {
        top: 0;
    }

    .hotline-ctl .control .prev-btn {
        top: 7px;
    }

    .hotline-ctl .control .next-btn {
        bottom: 9px;
    }

    .line-news .hotline .hotline-con {
        height: 54px;
        padding: 15px 15px 10px;
    }
}

@media(max-width: 991px) {
    #fp-nav {
        display: none !important;
    }

    .fp-section.fp-table,
    .fp-slide.fp-table,
    .fp-tableCell {
        height: auto !important;
    }
}

@media(min-width: 992px) {
    .m-tit01 {
        font-size: 3.5em;
    }

    .m-tit02 {
        font-size: 3em;
    }

    .non-page,
    .non-info {
        padding-top: 17rem;
    }

    #fullpage section:not(.fp-auto-height) .container {
        height: 100%;
    }

    #fp-nav {
        display: block;
        width: 300px;
        height: 40px;
        border-radius: 20px 0 0 0;
        top: auto;
        bottom: 0;
        right: 0 !important;
        background: var(--point-color02);
        padding: 0 5px 10px 10px;
        box-sizing: border-box;
    }

    #fp-nav ul li {
        display: inline-block;
        width: auto;
        padding: 14px 9px 0px 10px;
        margin: 0;
    }

    #fp-nav ul li a {
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
    }

    #fp-nav ul li a span,
    .fp-slidesNav ul li a span {
        width: auto;
        ;
        width: 1px;
        height: 0;
        background: #FFF;
        border-radius: 0;
        top: 0;
        margin: 0;
        opacity: 0;
        transition: .6s all;
    }

    #fp-nav ul li a.active span,
    .fp-slidesNav ul li a.active span,
    #fp-nav ul li:hover a.active span,
    .fp-slidesNav ul li:hover a.active span {
        display: block;
        width: 1px;
        height: 10px;
        border-radius: 0;
        margin: 0;
        opacity: 1;
    }

    #fp-nav ul li .fp-tooltip {
        position: relative;
        opacity: 1;
        width: auto;
        right: auto;
        font-family: var(--font-type02);
        font-size: 14px;
        font-weight: 200;
        letter-spacing: 0;
        opacity: .8;
    }

    #fp-nav ul li .fp-tooltip.right {
        top: -1px;
        right: auto;
    }

    #fp-nav.fp-show-active a.active+.fp-tooltip {
        top: -2px;
        font-weight: 500;
    }

    .fp-inner {
        position: relative;
        height: calc(100dvh - 97px);
        margin-top: 97px;
    }

    .intro-tit {
        display: flex;
        flex-direction: column;
        justify-content: center;
        height: calc(100% - 50vh);
        padding: 0;
    }

    .intro-tit .txt-box {
        font-size: 1.25em;
    }

    .main-slide {
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        max-width: 90%;
        margin: 0 auto;
    }

    .main-slide:before {
        top: -70%;
        transform: translateY(50%);
        width: 254px;
        height: 250px;
        background-size: auto;
        background-repeat: no-repeat;
    }

    .main-slide .swiper-slide .main-img {
        padding-top: 50vh;
    }

    .main-ctl {
        position: absolute;
        bottom: calc(100% + 40px);
        width: 100%;
        text-align: right;
        padding: 0;
    }

    .main-ctl .control {
        justify-content: flex-end;
    }

    .main-ctl button {
        width: 28px;
        height: 24px;
        margin: 0 4px;
    }

    .main-ctl button.prev-btn:before {
        left: 3px;
        height: 14px;
    }

    .main-ctl button.prev-btn:after {
        width: 28px;
    }

    .main-ctl button.next-btn:before {
        right: 3px;
        height: 14px;
    }

    .main-ctl button.next-btn:after {
        width: 28px;
    }

    .main-ctl button.play-pause.stop:before {
        width: 10px;
        height: 18px;
    }

    .main-ctl button.play-pause.play:before {
        border-width: 8px 0 8px 12px;
    }

    #status {
        position: relative;
        height: 100%;
        padding: 0;
    }

    #status:before {
        padding-top: 50dvh;
        border-radius: 0 0 0 90px;
    }

    #status .container {
        display: flex;
        flex-flow: column nowrap;
        justify-content: center;
    }

    .status:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 97px;
        background: var(--main-color01);
    }

    .status .status-tit {
        margin-bottom: 30px;
    }

    .status .status-tit .m-tit02 {
        margin-bottom: 15px;
    }

    .status .status-tit .sub-tit {
        font-size: 1.25em;
    }

    .status-slide {
        min-height: 120px;
    }

    .status-slide .donation,
    .status-slide .sponsor {
        font-size: 1.125em;
    }

    .status-box {
        padding: 20px 25px;
    }

    .status-box .slide-tit .tit {
        font-size: 1.5em;
        padding-left: 44px;
    }

    .status-box .slide-tit .tit:before {
        width: 36px;
        height: 22px;
        background-size: 36px;
    }

    .status-box .slide-tit .more-btn {
        width: 30px;
        height: 30px;
    }

    .status-box .slide-tit .status-btn {
        font-size: 16px;
        height: 40px;
        padding: 0 18px;
        margin-left: 20px;
    }

    .status-slide .donation strong {
        font-size: 1.25em;
    }

    .status-slide .no-list .non-info {
        font-size: 1.2em;
    }

    .status-slide .no-list .non-info:before {
        font-size: 2em;
    }

    .status-info {
        flex-flow: row wrap;
        gap: 0 20px;
        margin: 20px 0 0;
    }

    .status-con {
        background: var(--white);
        border-radius: 8px 30px 0 0;
    }

    .m-donate {
        flex: 1 0 40%;
        max-width: 40%;
        margin: 0;
    }

    .m-donate .symbol {
        display: none;
    }

    .m-donate .symbol:before {
        width: 110px;
        background-size: 110px;
    }

    .m-donate .donate-con {
        padding: 25px 25px 22px 35px;
    }

    .m-bank {
        flex: 1 0 calc(60% - 20px);
        max-width: calc(60% - 20px);
        margin: 0;
    }

    .m-bank .tit-box .tit {
        font-size: 1.5em;
    }

    .m-bank .txt-box .major-bank {
        font-size: 1.125em;
    }

    .m-bank .txt-box .target {
        font-size: 1em;
    }

    .m-bank .info-con {
        border-radius: 10px;
    }

    .m-bank .bank-list>li {
        font-size: .94em;
    }

    #story {
        display: flex;
        flex-flow: column nowrap;
        justify-content: center;
        max-width: 960px;
        height: 100%;
        padding: 0 0 50px;
    }

    .story:before {
        width: 80%;
        height: 60%;
    }

    .story:after {
        display: block;
    }

    .story .fp-inner:before {
        display: block;
    }

    .story-slide {
        overflow-x: clip;
    }

    .story .story-tit {
        margin-bottom: 30px;
    }

    .story-slide .swiper-slide {
        width: 33.3%;
    }

    .story-slide .swiper-slide .thum+.story-box {
        margin-top: 20px;
    }

    .story-slide .swiper-slide .story-box {
        padding: 0 28px 25px;
    }

    .story-slide .swiper-slide .story-box .tit {
        font-size: 1.25em;
    }

    .story-slide .swiper-slide .story-box .txt {
        font-size: 1em;
    }

    .story-slide .swiper-slide .story-box .category {
        font-size: .875em;
    }

    .story-slide .swiper-slide .story-box .date {
        font-size: .875em;
        right: 32px;
    }

    .story .story-con .more-btn {
        padding: 10px 25px;
        border-radius: 30px;
    }

    #focus {
        height: 100%;
        padding: 0;
    }

    #focus .container {
        display: flex;
        flex-flow: column nowrap;
        justify-content: center;
    }

    .focus .fp-inner:before {
        display: block;
        width: 400px;
        height: 680px;
        background-size: 400px;
    }

    .focus .fp-inner:after {
        font-size: 80px;
    }

    .focus-bg {
        padding-top: 62dvh;
    }

    .focus-bg:before {
        left: 10%;
        width: 300px;
        height: 323px;
        background-size: 300px;
    }

    .focus-bg .inner-bg {
        padding-top: 25dvh;
    }

    .focus .focus-tit {
        margin-bottom: 30px;
    }

    .focus-con .gallery {
        flex: 1 0 calc(66.66% - 15px);
        max-width: calc(66.6% - 15px);
    }

    .focus-con .banner {
        flex: 1 0 calc(33.33% - 15px);
        max-width: calc(33.3% - 15px);
    }

    .gall-slide .swiper-slide .thum,
    .banner-slide .swiper-slide .img {
        border-radius: 10px;
    }

    .gall-slide .swiper-slide .tit {
        padding: 10px 0 12px 16px;
    }

    .gall-slide .swiper-slide .tit span {
        font-size: 1em;
        padding: 0 0 0 22px;
    }

    .gall-slide .swiper-slide .tit span:before {
        width: 16px;
        height: 15px;
        background-size: 16px;
    }

    .banner-slide .swiper-slide .img {
        padding-top: calc(70% - 2px);
    }

    .gallery .gall-ctl,
    .banner .banner-ctl {
        position: relative;
        margin: 15px 0 0 0;
    }

    .gallery .gall-ctl .control,
    .banner .banner-ctl .control {
        position: absolute;
        right: 0;
    }

    .gallery .gall-ctl .tit,
    .banner .banner-ctl .tit {
        position: relative;
        background: var(--white);
        padding-right: 20px;
        z-index: 1;
    }

    .gallery .gall-ctl:after,
    .banner .banner-ctl:after {
        content: '';
        position: relative;
        right: 110px;
        display: block;
        width: calc(100% - 110px);
        height: 1px;
        background: url(/local/fund/images/focus-line.png);
    }

    .gallery .gall-ctl:after {
        width: calc(100% - 140px);
    }

    .gallery .gall-ctl .more-btn,
    .banner .banner-ctl .more-btn {
        width: 30px;
        height: 30px;
    }

    #quick:before {
        left: -10px;
        font-size: 80px;
    }

    .quick-list .item {
        flex: 0 0 calc(100%/6);
        max-width: calc(100%/6);
    }

    .quick-list .item .quick-link {
        padding: 95px 0 45px 0;
    }

    .quick-list .item .quick-link .ico {
        width: 80px;
        height: 80px;
        background-size: 580px;
        transition: background-color .3s, background-position .5s;
    }

    .quick-list .item .quick-link .ico.q-ico01 {
        background-position: 0 0;
    }

    .quick-list .item .quick-link .ico.q-ico02 {
        background-position: -100px 0;
    }

    .quick-list .item .quick-link .ico.q-ico03 {
        background-position: -200px 0;
    }

    .quick-list .item .quick-link .ico.q-ico04 {
        background-position: -300px 0;
    }

    .quick-list .item .quick-link .ico.q-ico05 {
        background-position: -400px 0;
    }

    .quick-list .item .quick-link .ico.q-ico06 {
        background-position: -500px 0;
    }

    .quick-list .item.open .quick-link .ico {
        background-position-y: -100px;
    }

    .quick-list .item .quick-link:hover .ico,
    .quick-list .item .quick-link:focus,
    .quick-list .item.open .quick-link .ico {
        background-position-y: -100px;
    }

    .quick-list .item .dropdown-menu {
        height: 40px;
        width: 100%;
        z-index: 1;
    }

    .quick-list .item .btn-wrap {
        box-shadow: none;
        padding: 10px 15px 12px;
        border-radius: 5px 5px 5px 15px;
    }

    .quick-list .item.open .btn-wrap {
        bottom: 0;
    }

    .line-news {
        position: absolute;
        bottom: 0;
        margin: 0;
    }

    .line-news .container {
        max-width: 90%;
    }

    .line-news .hotline {
        display: flex;
        align-items: center;
        height: 40px;
    }

    .line-news .hotline .hotline-tit {
        width: 180px;
        height: 100%;
        overflow: hidden;
    }

    .line-news .hotline .hotline-tit:after {
        width: 0;
        height: 0;
        border-top: 80px solid transparent;
        border-left: 20px solid transparent;
        border-right: 30px solid #F9F9F9;
        border-bottom: 10px solid transparent;
        transform: rotate(360deg);
    }

    .line-news .hotline .hotline-tit .tit {
        font-size: 18px;
        padding: 2px 15px 4px;
    }

    .hotline-ctl {
        position: relative;
        right: 15px;
        z-index: 10;
    }

    .hotline-ctl .control .prev-btn {
        top: 2px;
    }

    .hotline-ctl .control .next-btn {
        bottom: 5px;
    }

    .line-news .hotline .hotline-con {
        width: calc(100% - 480px);
        height: 100%;
        padding: 8px 12px 10px;
    }
}

@media(min-width: 1200px) {
    .m-tit01 {
        font-size: 3.5em;
    }

    .m-tit02 {
        font-size: 3em;
    }

    .m-tit02 span {
        padding-top: 50px;
    }

    .m-tit02 span:before {
        width: 5px;
        ;
        height: 40px;
    }

    #fp-nav {
        width: 330px;
        padding: 0 10px 10px 20px;
    }

    .fp-inner {
        height: calc(100dvh - 107px);
        margin-top: 107px;
    }

    .intro-tit {
        padding: 15px 0 0 0;
    }

    .intro-tit .sub-tit {
        font-size: 1.375em;
        padding-left: 40px;
    }

    .intro-tit .sub-tit:before {
        width: 30px;
        height: 5px;
    }

    .intro-tit .txt-box {
        font-size: 1.375em;
    }

    .main-slide::before {
        top: -70%;
        right: 5%;
        transform: translateY(50%);
        display: block;
        width: 254px;
        height: 250px;
    }

    .status:before {
        height: 107px;
    }

    .status .status-tit .m-tit02+.sub-tit {
        margin-top: 12px;
    }

    .status .status-tit .sub-tit {
        font-size: 1.25em;
    }

    .status-slide {
        border-radius: 10px;
        padding: 32px 35px;
    }

    .status-slide .swiper-slide:before {
        width: 22px;
        height: 22px;
        background-size: 22px;
    }

    .status-slide .donation strong {
        font-size: 1.222em;
    }

    .status-box {
        padding: 30px 30px 0 30px;
    }

    .status-info {
        gap: 0 30px;
    }

    .m-donate {
        flex: 1 0 45%;
        max-width: 45%;
        margin: 30px 0 0 0;
    }

    .m-donate .symbol {
        display: block;
    }

    .m-donate .donate-con {
        display: flex;
        flex-direction: column;
        justify-content: center;
        height: 100%;
        padding: 20px 20px 20px 180px;
    }

    .m-donate .donate-con .tit {
        line-height: 1.3;
    }

    .m-donate .donate-con .more-btn {
        top: 20px;
        right: 20px;
    }

    .m-donate .donate-con .more-btn:before {
        font-size: 28px;
    }

    .m-bank {
        flex: 1 0 calc(55% - 30px);
        max-width: calc(55% - 30px);
        margin: 30px 0 0 0;
    }

    .m-bank .info-con {
        gap: 0 15px;
        padding: 25px 30px;
        align-items: center;
    }

    .m-bank .tit-box .ico {
        width: 50px;
        height: 50px;
        border-radius: 50%;
        background: var(--white) url(/local/fund/images/bank-icon.png) center no-repeat;
        background-size: 32px;
    }

    .m-bank .txt-box:before {
        height: 40px;
        top: 50%;
        transform: translateY(-50%);
    }

    .m-bank .txt-box {
        flex: 1 0 calc(60% - 15px);
        max-width: calc(60% - 15px);
    }

    .m-bank .bank-list {
        margin-top: 12px;
    }

    .m-bank .bank-list>li {
        font-size: 1em;
    }

    #story {
        max-width: 1140px;
    }

    .story .story-tit {
        margin-bottom: 20px;
    }

    .story-slide .swiper-slide>a {
        border-radius: 10px 10px 40px 10px;
    }

    .story-slide .swiper-slide>a:hover,
    .story-slide .swiper-slide>a:focus {
        box-shadow: 0 30px 40px rgba(60, 60, 60, .15);
    }

    .story-slide .swiper-slide .story-box .category {
        font-size: .94em;
        padding: 3px 8px 4px;
    }

    .story-slide .swiper-slide .story-box .date {
        font-size: .94em;
        top: 4px;
    }

    .story .story-con .more-btn {
        font-size: 1.375em;
        padding: 12px 90px;
    }

    .story .story-con .more-btn .ico {
        width: 14px;
        height: 14px;
    }

    .story .story-con .more-btn .ico:before {
        width: 2px;
        height: 14px;
    }

    .story .story-con .more-btn .ico:after {
        width: 14px;
        height: 2px;
    }

    .focus .fp-inner:before {
        width: 450px;
        height: 760px;
        background-size: 450px;
    }

    .focus .focus-tit {
        margin-bottom: 40px;
    }

    .focus-con {
        gap: 0 50px;
    }

    .focus-con .gallery {
        flex: 1 0 calc(66.66% - 25px);
        max-width: calc(66.6% - 25px);
    }

    .focus-con .banner {
        flex: 1 0 calc(33.33% - 25px);
        max-width: calc(33.3% - 25px);
    }

    .banner-slide .swiper-slide .img {
        padding-top: 70%;
    }

    .gallery .gall-ctl .tit,
    .banner .banner-ctl .tit {
        font-size: 1.625em;
    }

    .gallery .gall-ctl,
    .banner .banner-ctl {
        margin: 25px 0 0 0;
    }

    .gallery .gall-ctl:after,
    .banner .banner-ctl:after {
        right: 135px;
        width: calc(100% - 135px);
    }

    .gallery .gall-ctl:after {
        width: calc(100% - 170px);
    }

    .quick-list .item .quick-link {
        font-size: 1.125em;
        font-weight: 500;
        color: var(--tit-color);
        padding: 95px 0 66px 0;
    }

    .quick-list .item .dropdown-menu {
        height: 50px;
    }

    .quick-list .item .btn-wrap>li {
        padding: 0px 15px;
    }

    .quick-list .item .btn-wrap>li .quick-btn {}

    .quick-list .item.open .btn-wrap {
        bottom: 0;
        border-radius: 5px 5px 5px 20px;
        padding: 12px 15px 14px;
    }

    .quick-list .item.open .btn-wrap>li .quick-btn {
        font-size: 16px;
    }
}

@media(min-width: 1500px) {
    .status-info {
        margin: 40px 0;
    }

    .m-donate {
        flex: 1 0 660px;
        max-width: 660px
    }

    .m-bank {
        flex: 1 0 calc(100% - 690px);
        max-width: calc(100% - 690px);
    }

    .m-bank .tit-box .tit {
        font-size: 1.625em;
    }

    .m-bank .bank-list>li {
        font-size: 1.125em;
    }

    #story {
        max-width: 1400px;
        margin: 0 auto;
    }

    .story-slide .swiper-slide {
        width: 30%;
    }
}

@media(min-width: 1600px) {
    .m-tit01 {
        font-size: 3.625em;
    }

    .m-tit02 {
        font-size: 3.5em;
    }

    #fp-nav {
        height: 48px;
    }

    #fp-nav ul li a.active span,
    .fp-slidesNav ul li a.active span,
    #fp-nav ul li:hover a.active span,
    .fp-slidesNav ul li:hover a.active span {
        height: 13px;
    }

    #fp-nav ul li .fp-tooltip {
        font-size: 15px;
    }

    #fp-nav ul li .fp-tooltip.right {
        top: 2px;
    }

    #fp-nav.fp-show-active a.active+.fp-tooltip {
        top: 3px;
    }

    .fp-inner {
        height: calc(100dvh - 122px);
        margin-top: 122px;
    }

    .intro-tit {
        height: calc(100% - 52vh);
    }

    .intro-tit .sub-tit {
        font-size: 1.5em;
        padding-left: 0;
    }

    .intro-tit .sub-tit:before {
        left: -55px;
        width: 40px;
        height: 5px;
    }

    .intro-tit .sub-tit+.m-tit01 {
        margin-top: 10px;
    }

    .intro-tit .tit-box+.txt-box {
        margin-top: 30px;
    }

    .main-slide {
        max-width: 1600px;
    }

    .main-slide .swiper-slide .main-img {
        padding-top: 52vh;
    }

    .main-ctl .control button {
        width: 28px;
        height: 24px;
    }

    .main-ctl button {
        margin: 0 6px;
    }

    #status:before {
        padding-top: 55dvh;
        border-radius: 0 0 0 150px;
    }

    .status:before {
        height: 122px;
    }

    .status .status-tit .sub-tit {
        font-size: 1.5em;
    }

    .status-con {
        border-radius: 10px 50px 0 0;
        overflow: hidden;
    }

    .status-box {
        padding: 40px 60px 0 60px;
    }

    .status-box .slide-tit .tit {
        font-size: 1.75em;
        padding-left: 55px;
    }

    .status-box .slide-tit .tit:before {
        width: 45px;
        height: 28px;
        background-size: 45px;
    }

    .status-box .slide-tit .more-btn {
        margin-left: 12px;
    }

    .status-info {
        margin: 30px 0 40px;
    }

    .m-donate {
        flex: 1 0 630px;
        max-width: 630px;
        border-radius: 10px 10px 10px 40px;
        margin: 31px 0 0 0;
    }

    .m-donate .symbol {
        left: 30px;
    }

    .m-donate .symbol:before {
        width: 120px;
        background-size: 120px;
    }

    .m-donate .donate-con {
        padding: 20px 20px 15px 190px;
    }

    .m-donate .donate-con .sub-tit {
        font-size: 1.5em;
    }

    .m-donate .donate-con .tit {
        font-size: 2.875em;
    }

    .m-donate .donate-con .tit small {
        font-size: 0.5em;
    }

    .m-bank {
        flex: 1 0 calc(100% - 660px);
        max-width: calc(100% - 660px);
    }

    .m-bank .tit-box .ico {
        width: 72px;
        height: 72px;
        background-size: 50px;
    }

    .m-bank .tit-box .tit {
        font-size: 1.5em;
    }

    .m-bank .txt-box .major-bank {
        font-size: 1.25em;
    }

    .m-bank .txt-box .target {
        font-size: 1.125em;
    }

    .story:after {
        width: 394px;
        height: 589px;
        background-size: 394px;
    }

    .story .fp-inner:before {
        width: 647px;
        height: 316px;
        background-size: 647px;
    }

    .story .story-con {
        max-width: 1400px;
        margin: 0 auto;
    }

    .story-slide {
        margin-bottom: 10px;
    }

    .story-slide .swiper-slide {
        width: calc(33.3% - 20px);
        max-width: 440px;
    }

    .story-slide .swiper-slide .story-box .txt {
        font-size: 1.125em;
        padding-top: 13px;
        margin-top: 12px;
    }

    .story-slide .swiper-slide .story-box .txt:before {
        width: 20px;
    }

    .focus .fp-inner:after {
        font-size: 125px;
        right: -10px;
    }

    .focus-con {
        margin-bottom: 50px;
    }

    .focus-bg {
        border-radius: 0 0 0 150px;
    }

    .focus-bg:before {
        top: auto;
        bottom: 90px;
        left: 55px;
    }

    .focus-bg .inner-bg {
        border-radius: 150px 0 0 0;
    }

    .gall-slide .swiper-slide .tit {
        padding: 15px 10px 16px 16px;
    }

    .gall-slide .swiper-slide .tit span {
        font-size: 1.25em;
        padding: 0 0 0 28px;
    }

    .gall-slide .swiper-slide .tit span:before {
        width: 18px;
        height: 17px;
        background-size: 18px;
    }

    .gallery .gall-ctl:after,
    .banner .banner-ctl:after {
        right: 140px;
        width: calc(100% - 140px);
    }

    .gallery .gall-ctl:after {
        width: calc(100% - 170px);
    }

    .gallery .gall-ctl .more-btn,
    .banner .banner-ctl .more-btn {
        width: 40px;
        height: 40px;
        margin-left: 15px;
    }

    .gallery .gall-ctl .more-btn::before,
    .banner .banner-ctl .more-btn:before {
        font-size: 28px;
    }

    .control button {
        width: 21px;
        height: 30px;
        margin-top: 1px;
    }

    .control button.play-pause {
        width: 28px;
        margin-top: 0;
    }

    .control .prev-btn:before,
    .control .next-btn:before {
        font-size: 21px;
    }

    .control .play-pause.stop:before {
        font-size: 28px;
    }

    .control .play-pause.play:before {
        font-size: 25px;
        top: -2px;
    }

    #quick {
        padding: 178px 0 72px;
    }

    #quick:before {
        font-size: 125px;
    }

    .line-news .hotline {
        height: 48px;
        border-radius: 0;
        box-shadow: 0 -15px 25px rgba(0, 0, 0, .12);
    }

    .line-news .hotline .hotline-tit {
        width: 300px;
    }

    .line-news .hotline .hotline-tit:after {
        border-top: 110px solid transparent;
        border-right: 50px solid #F9F9F9;
    }

    .line-news .hotline .hotline-tit .tit {
        font-size: 20px;
        font-weight: 700;
        text-shadow: 0 5px 10px rgba(0, 0, 0, .4);
        padding: 4px 25px 8px;
    }

    .line-news .hotline .hotline-tit .tit a i {
        top: 1px;
        font-size: 24px;
        font-weight: 700;
    }

    .hotline-ctl {
        right: 25px;
    }

    .hotline-ctl .control .prev-btn:before,
    .hotline-ctl .control .next-btn:before {
        font-size: 18px;
    }

    .hotline-ctl .control .prev-btn {
        top: 0px;
    }

    .hotline-ctl .control .next-btn {
        bottom: 0px;
    }

    .line-news .hotline .hotline-con {
        width: calc(100% - 630px);
        padding: 10px 30px 8px 18px;
    }

    .line-news .hotline .hotline-con .hotline-slide .tit {
        font-size: 18px;
    }
}

@media(min-width: 1920px) {
    .main-slide {
        max-width: 1400px;
    }

    .main-slide::before {
        width: 300px;
        height: 300px;
        background-size: cover;
    }
}

@media(max-height: 700px) {
    .m-tit01 {
        font-size: 3em;
    }

    .intro-tit {
        justify-content: center;
        height: calc(100% - 42vh);
        padding: 30px 0 0 0;
    }

    .intro-tit .txt-box {
        font-size: 1.125em;
    }

    .intro-tit .tit-box+.txt-box {
        margin-top: 10px;
    }

    .main-slide .swiper-slide .main-img {
        padding-top: 42dvh;
    }
}

@media(max-height: 550px) {
    .m-tit01 {
        font-size: 2.25em;
    }

    .intro-tit {
        justify-content: flex-start;
        height: calc(100% - 45vh);
        padding: 15px 0 0 0;
    }

    .intro-tit .tit-box+.txt-box {
        margin-top: 5px;
    }

    .main-slide .main-swiper {
        z-index: -1;
    }

    .main-slide .swiper-slide .main-img {
        padding-top: 45dvh;
    }
}

@media(max-height: 450px) {
    .m-tit01 {
        font-size: 2em;
    }

    .intro-tit {
        height: calc(100% - 35vh);
    }

    .intro-tit .sub-tit {
        font-size: 1.125em;
    }

    .intro-tit .txt-box {
        font-size: 1em;
    }

    .main-slide .swiper-slide .main-img {
        padding-top: 35dvh;
    }
}

/*****************************************************
	Sub
*****************************************************/
/* layout */
.sub-container {
    padding: 0 0 40px;
}

.sub-visual {
    position: relative;
    background-size: cover;
    background-position: right center;
    padding-top: 100px;
    overflow: hidden;
    ;
}

.sub-wrap {
    width: 100%;
    max-width: 1400px;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
}

/* snb */
.snb {
    display: none;
    margin-top: -90px;
    z-index: 1;
}

.snb .snb-wrap .snb-title {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #003598;
    width: 100%;
    height: 150px;
    border-radius: 10px 40px 0 0;
    font-family: var(--font-type02);
    font-size: 2em;
    font-weight: 500;
    color: #FFF;
    padding: 15px;
    overflow: hidden;
    word-break: keep-all
}

.snb .snb-wrap .snb-title span {
    position: relative;
    padding: 26px 0 0 0;
    line-height: 1.2;
    word-break: break-all
}

.snb .snb-wrap .snb-title span:before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    width: 5px;
    height: 25px;
    background: var(--point-color03);
    transform: rotate(45deg) translateX(-50%);
}

.snb .depth01-list .depth01-item {
    border-bottom: 1px solid #E3E6EF;
}

.snb .depth01-list .depth01-item>a {
    position: relative;
    display: inline-block;
    width: 100%;
    font-size: 1.125em;
    padding: 16px 40px 17px 20px;
    box-sizing: border-box;
    transition: all 0.3s;
}

.snb .depth01-list .depth01-item>a:after {
    content: "\F285";
    position: absolute;
    top: 17px;
    right: 20px;
    font-family: var(--font-icon);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    font-weight: bold;
    color: #000;
    transition: all 0.3s;
}

.snb .depth01-list .depth01-item>a:hover,
.snb .depth01-list .depth01-item>a:focus {
    text-decoration: none;
    color: var(--main-color01);
}

.snb .depth01-list .depth01-item>a:hover:after,
.snb .depth01-list .depth01-item>a:focus:after {
    color: var(--main-color01);
}

.snb .depth01-list .depth01-item.active {
    border-bottom: 0;
}

.snb .depth01-list .depth01-item.active>a {
    color: #FFF;
    background: var(--point-color01);
}

.snb .depth01-list .depth01-item.active>a:after {
    color: #FFF;
}

.snb .depth02-list {
    position: relative;
    display: none;
    background: #F9F9FD;
}

.snb .depth02-list .depth02-item {
    border-bottom: 1px solid #E3E6EF;
    padding: 12px 15px 13px 20px;
}

.snb .depth02-list .depth02-item>a {
    position: relative;
    display: inline-block;
    width: 100%;
    color: #333D4B;
}

.snb .depth02-list .depth02-item>a:before {
    content: '';
    position: absolute;
    top: 12px;
    left: 0;
    width: 0;
    height: 1px;
    transition: .3s all;
}

.snb .depth02-list .depth02-item.active>a,
.snb .depth02-list .depth02-item>a:hover,
.snb .depth02-list .depth02-item>a:focus {
    text-decoration: none;
    color: var(--main-color01);
    padding: 0 0 0 12px;
}

.snb .depth02-list .depth02-item.active>a:before,
.snb .depth02-list .depth02-item>a:hover:before,
.snb .depth02-list .depth02-item>a:focus:before {
    width: 6px;
    background: var(--main-color01);
}

.snb .depth01-list .depth01-item.active>.depth02-list {
    display: block;
}

/* cont navi */
.cont-wrap .cont-navi {
    display: flex;
    justify-content: flex-start;
}

.cont-wrap .page-navi {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 24px 0 0;
}

.cont-wrap .page-navi:before {
    display: none
}

.cont-wrap .page-navi .navbar {
    border: 0;
    padding: 0;
}

.cont-wrap .page-navi .navbar .navbar-nav {
    width: auto;
    flex-direction: row;
    justify-content: flex-start;
    overflow-x: auto;
    white-space: nowrap;
    text-overflow: ellipsis
}

.cont-wrap .page-navi .navbar .navbar-nav>.nav-item {
    position: relative;
    color: #767676;
    font-size: 15px;
    transition: .3s
}

.cont-wrap .page-navi .navbar .navbar-nav>.nav-item .nav-link.home {
    width: 18px;
    height: 18px
}

.cont-wrap .page-navi .navbar .navbar-nav>.nav-item .nav-link {
    padding: 0
}

.cont-wrap .page-navi .navbar .navbar-nav>.nav-item:not(:last-child) {
    margin-right: 6px;
    padding-right: 20px;
}

.cont-wrap .page-navi .navbar .navbar-nav>.nav-item:not(:last-child)::before {
    content: '';
    position: absolute;
    top: 10px;
    right: 0;
    display: block;
    border: 4px solid transparent;
    border-left: 7px solid #757575;
}

.cont-wrap .page-navi .navbar .navbar-nav>.nav-item .nav-link:not(.dropdown)::before {
    display: none
}

.cont-wrap .page-navi .navbar .navbar-nav>.nav-item .nav-link:hover,
.page-navi .navbar .navbar-nav>.nav-item .nav-link:focus {
    color: var(--main-color01);
    text-decoration: underline;
    text-underline-offset: 3px
}

/* cont title */
.cont-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 20px 0
}

.cont-title h2 {
    font-size: 28px;
    font-weight: 700;
    text-align: left;
    font-family: var(--font-type01);
    color: #333D4B;
    margin: 0;
}

.option-box {
    position: relative;
    display: flex;
    gap: 10px
}

.option-box button {
    font-size: 18px;
    color: #B0B3BD;
    border: 0;
    border-radius: 0;
    background: 0 0;
    transition: .3s
}

.option-box button:focus,
.option-box button:hover {
    background-color: #fff;
    color: var(--main-color01)
}

.option-box button.print {
    display: none
}

.option-box .dropdown-menu {
    right: 0;
    left: auto
}

.open>.dropdown-menu {
    display: block
}

.option-box .dropdown-menu img {
    margin-right: 8px
}

@media(min-width:768px) {
    .sub-container {
        padding: 0 0 60px;
    }
}

@media(min-width:992px) {
    .sub-container {
        padding: 96px 0 100px;
    }

    .cont-title {
        margin: 20px 0 30px;
    }
}

@media(min-width:1200px) {
    .sub-visual {
        padding-top: 180px;
    }

    .sub-wrap {
        gap: 0 60px;
    }

    .cont-wrap .page-navi .navbar .navbar-nav>.nav-item {
        font-size: 1em
    }

    .cont-wrap .page-navi .navbar .navbar-nav>.nav-item .nav-link.home {
        width: 24px;
        height: 24px
    }

    .option-box button.print {
        font-size: 20px;
        display: block
    }
}

@media(min-width:1400px) {
    .sub-container {
        padding: 120px 0;
    }

    .snb {
        display: block;
        flex: 0 0 260px;
        max-width: 260px;
    }
}

.board-gallery a .thum>img {
    object-fit: fill;
}