@charset "utf-8";
@keyframes br-btn-line {
    0% {
        transform: scaleX(0);
    }
    100% {
        transform: scaleX(1);
    }
}
.br-main {
    -webkit-text-size-adjust: none;
}
.br-main img {
    height: auto;
    display: block;
}
.br-main a {
    color: inherit;
    text-decoration: none;
}
.br-main a,
.br-main button {
    -webkit-tap-highlight-color: transparent;
}
.br-wbr {
    display: inline-block;
}
.br-related {
    position: relative;
    padding: 10.5% 0 10%;
}
.br-related:before {
    content: "";
    background: #E8F1FA;
    position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    height: 100%;
    transform: translateX(-50%);
    min-width: 1280px;
}
.br-related--tl {
    font-size: 2.4rem;
    text-align: center;
    color: #1432AA;
    font-weight: 700;
    position: relative;
    line-height: 1.8;
    word-break: keep-all;
    overflow-wrap: break-word;
}
.br-related--ctn {
    display: flex;
    position: relative;
    justify-content: center;
    margin: 4.4% 0 0;
    gap: 0 2%;
}
.br-related--item {
    width: 28.75%;
}
.br-related--item a {
    border: solid 2px #ccc;
    display: block;
}
.br-scroll-down {
    margin: 0 0 0 auto;
    width: 10.9rem;
    padding: 0 0 0;
    position: relative;
    opacity: 0;
}
.br-scroll-down--link {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.br-scroll-down--icon {
    border: solid 2px #000;
}
.br-scroll-down--icon-box {
    display: block;
    transform-style: preserve-3d;
}
.br-scroll-down--icon-box img {
    transform: translateZ(11px);
}
.br-scroll-down--icon {
    width: 23.8535%;
    border-radius: 100px;
    border: solid 2px #000;
    box-sizing: border-box;
    overflow: hidden;
}
.br-scroll-down--text {
    width: 67.89%;
}
.br-our-goals {
    position: relative;
    margin: 0 0 10%;
    opacity: 0;
}
.br-main .br-our-goals--link {
    display: flex;
    width: fit-content;
    margin: 0 auto;
    color: #1432AA;
    align-items: center;
    font-weight: 700;
    font-size: 4rem;
    letter-spacing: 0.04em;
    gap: 0 2.1rem;
    padding: 0 0 21px;
    position: relative;
}
.br-main .br-our-goals--link:after {
    content: "";
    display: block;
    width: 100%;
    border-top: solid 1px;
    position: absolute;
    left: 0;
    bottom: 0;
    transform-origin: 0 0;
}
.br-our-goals--icon {
    width: 4.2rem;
    margin: 0 0 -6px;
}
.br-for-print {
    display: none !important;
}
@media print,
(min-width:768px) {
    .br-for-sp {
        display: none !important;
    }
}
@media screen and (max-width:767px) {
    .br-for-pc {
        display: none !important;
    }
    .br-main {
        margin: 0 -12px;
    }
    .br-related {
        padding: 27.1% 6.1% 27.2%;
    }
    .br-related--tl {
        font-size: 2.2rem;
        line-height: 1.6;
    }
    .br-related--ctn {
        flex-direction: column;
        margin: 17.9% 0 0;
        gap: min(39px, 10vw) 0;
    }
    .br-related--item {
        width: 100%;
    }
    .br-our-goals {
        margin: 0 auto 31%;
        width: 87.7%;
    }
    .br-main .br-our-goals--link {
        font-size: 2.6rem;
        gap: 0 23px;
        padding: 0 0 15px;
    }
    .br-our-goals--icon {
        width: 2.4rem;
        margin: 0;
    }
}
@media (hover: hover) {
    .br-our-goals--link,
    .br-related--item a {
        transition: opacity 400ms ease-out;
    }
    .br-our-goals--link:focus-visible,
    .br-our-goals--link:hover,
    .br-related--item a:focus-visible,
    .br-related--item a:hover {
        opacity: .8;
    }
    .br-our-goals--link:focus-visible::after,
    .br-our-goals--link:hover::after {
        animation: br-btn-line 620ms cubic-bezier(0.075, 0.820, 0.165, 1.000) forwards;
    }
}
@media print {
    .br-for-screen {
        display: none !important;
    }
    .br-for-print {
        display: block !important;
    }
    .br-our-goals {
        opacity: 1;
    }
}