<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "utf-8";

html {
    font-family: "Shippori Mincho", serif;
    font-weight: 400;
    font-style: normal;
}
.font_crimson {
    font-family: "Crimson Pro", serif;
    font-weight: 400;
    font-optical-sizing: auto;
    font-style: normal;
}
.font_gothic {
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 400;
    font-style: normal;
}

/* remの設定 */
body {
    line-height: 1;
    color: #061a36;
}
@media (min-width: 1441px) {
    html {
        font-size: 1px;
    }
}
@media (max-width: 1440px) and (min-width: 769px) {
    html {
        font-size: calc(1vw / 1440 * 100);
    }
}
@media (max-width: 768px) {
    html {
        font-size: calc(1vw / 375 * 100);
    }
}

/* common */
.wrap {
    overflow: clip;
}
.section,
.section_inner {
    position: relative;
}
.section {
    position: relative;
    overflow: clip;
    z-index: 1;
}
@media (min-width: 769px) {
    .sp_only {
        display: none !important;
    }
    .section_inner {
        width: 1440rem;
        margin: 0 auto;
    }
}
@media (max-width: 768px) {
    .pc_only {
        display: none !important;
    }
}
.fade_up {
    opacity: 0;
    transform: translateY(20rem);
    transition: opacity 1s, transform 1s;
}
.fade_up.animated {
    opacity: 1;
    transform: translateY(0);
}

/* header */
.header {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
}
@media (min-width: 769px) {
    .header {
        padding: 36rem 40rem;
    }
    .header_logo {
        width: 147rem;
    }
}
@media (max-width: 768px) {
    .header {
        padding: 16rem;
    }
    .header_logo {
        width: 90rem;
    }
}

/* mv */
.mv_wrap {
    overflow: hidden;
}
.mv_ttl {
    line-height: 1.6;
    color: #fff;
    position: relative;
    z-index: 2;
}
.mv_ttl_l,
.mv_ttl_m,
.mv_ttl_s {
    display: block;
}
.mv_ttl_l,
.mv_ttl_m {
    font-weight: 700;
}
.mv_ttl_l {
    line-height: 1.65;
    letter-spacing: 0.05em;
}
.mv_ttl_m {
    line-height: 1.8;
}
.mv_ttl_s {
    font-weight: 600;
    line-height: 1.9;
    letter-spacing: 0.03em;
}
.mv_dec {
    display: block;
    position: absolute;
    z-index: 3;
    animation: mv_dec 12s linear infinite;
}
.mv_img_1,
.mv_img_2 {
    position: absolute;
    z-index: 3;
}
.mv_bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.mv_bg_1,
.mv_bg_2 {
    display: block;
    position: absolute;
}
.mv_bg_1 {
    top: 0;
    z-index: 1;
}
.mv_bg_2 {
    top: 0;
}
@media (min-width: 769px) {
    .mv {
        height: 768rem;
    }
    .mv_ttl {
        padding-top: 155rem;
        padding-left: 80rem;
    }
    .mv_ttl_l {
        font-size: 60rem;
        letter-spacing: 0.08em;
    }
    .mv_ttl_l_dot {
        margin: 0 -15rem;
    }
    .mv_ttl_l_inner {
        font-size: 52rem;
    }
    .mv_ttl_m {
        margin-top: 36rem;
        font-size: 29rem;
    }
    .mv_ttl_s {
        margin-top: 24rem;
        font-size: 20rem;
    }
    .mv_dec {
        width: 171rem;
        top: 54rem;
        left: 631rem;
    }
    .mv_img_1,
    .mv_img_2 {
        width: 776rem;
        margin-top: 18rem;
        position: absolute;
    }
    .mv_img_1 {
        top: -126rem;
        right: 194rem;
    }
    .mv_img_2 {
        top: -13rem;
        right: -164rem;
    }
    .mv_bg_1 {
        width: 1445rem;
        right: 635rem;
    }
    .mv_bg_2 {
        width: 1608rem;
        left: 552rem;
    }
}
@media (max-width: 768px) {
    .mv,
    .mv_inner {
        height: 640rem;
    }
    .mv_ttl {
        padding-top: 81rem;
        padding-left: 17rem;
    }
    .mv_ttl_l {
        font-size: 28rem;
        letter-spacing: 0.1em;
    }
    .mv_ttl_l_inner {
        font-size: 24rem;
    }
    .mv_ttl_l_dot {
        margin: 0 -10rem;
    }
    .mv_ttl_m {
        margin-top: 18rem;
        font-size: 17rem;
    }
    .mv_ttl_s {
        margin-top: 10rem;
        font-size: 13rem;
    }
    .mv_dec {
        width: 100rem;
        top: 17rem;
        right: 7rem;
    }
    .mv_img_1_wrap,
    .mv_img_2_wrap {
        width: 289rem;
        position: absolute;
        bottom: 0;
        overflow: hidden;
    }
    .mv_img_1_wrap {
        height: 260rem;
        right: 172rem;
    }
    .mv_img_2_wrap {
        height: 410rem;
        right: -31rem;
    }
    .mv_img_1,
    .mv_img_2 {
        width: 289rem;
        position: absolute;
    }
    .mv_img_1 {
        top: 0;
        right: 0;
    }
    .mv_img_2 {
        top: 0;
        right: 0;
    }
    .mv_bg_1 {
        width: 336rem;
        left: 0;
    }
    .mv_bg_2 {
        width: 100%;
        left: 0;
    }
}
@keyframes mv_dec {
    0% {
        rotate: 0deg;
    }
    100% {
        rotate: 360deg;
    }
}
@media (min-width: 769px) {
    @keyframes mv_img_1 {
        0% {
            translate: 413rem -1640rem;
        }
        100% {
            translate: -413rem 1640rem;
        }
    }
    @keyframes mv_img_2 {
        0% {
            translate: -413rem 1648rem;
        }
        100% {
            translate: 413rem -1648rem;
        }
    }
    .mv_img_1_1 {
        animation: mv_img_1 100s linear infinite;
    }
    .mv_img_1_2 {
        animation: mv_img_1 100s -50s linear infinite;
    }
    .mv_img_2_1 {
        animation: mv_img_2 100s linear infinite;
    }
    .mv_img_2_2 {
        animation: mv_img_2 100s -50s linear infinite;
    }
}
@media (max-width: 768px) {
    @keyframes mv_img_1 {
        0% {
            translate: 126rem -747rem;
        }
        100% {
            translate: -126rem 747rem;
        }
    }
    @keyframes mv_img_2 {
        0% {
            translate: -125rem 750rem;
        }
        100% {
            translate: 125rem -750rem;
        }
    }
    .mv_img_1_1 {
        animation: mv_img_1 60s linear infinite;
    }
    .mv_img_1_2 {
        animation: mv_img_1 60s -30s linear infinite;
    }
    .mv_img_2_1 {
        animation: mv_img_2 60s linear infinite;
    }
    .mv_img_2_2 {
        animation: mv_img_2 60s -30s linear infinite;
    }
    
}

/* read */
.read {
    overflow: hidden;
}
.read_ttl {
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: 0.05em;
    text-align: center;
}
.read_txt {
    font-weight: 600;
    line-height: 2;
    text-align: center;
}
.read_list_wrap,
.read_list {
    display: flex;
}
.read_list_wrap {
    position: relative;
}
.read_list &gt; li {
    position: relative;
}
.read_list_num,
.read_list_txt {
    position: absolute;
}
.read_list_num {
    font-weight: 200;
    line-height: 1;
    color: #bfc3c8;
}
.read_list_txt {
    font-weight: 700;
    line-height: 1.5;
    color: #fff;
}
@media (min-width: 769px) {
    .read {
        padding-bottom: 120rem;
    }
    .read_ttl {
        margin-top: 120rem;
        font-size: 38rem;
    }
    .read_txt {
        margin-top: 24rem;
        font-size: 18rem;
    }
    .read_list {
        margin-top: 56rem;
    }
    .read_list &gt; li {
        margin-left: -16rem;
    }
    .read_list_img {
        width: 332rem;
    }
    .read_list_num {
        font-size: 26rem;
        top: 8rem;
        left: 44rem;
    }
    .read_list_txt {
        font-size: 20rem;
        left: 34rem;
        bottom: 10rem;
    }
}
@media (max-width: 768px) {
    .read {
        padding-bottom: 80rem;
    }
    .read_ttl {
        margin-top: 80rem;
        font-size: 24rem;
    }
    .read_txt {
        margin-top: 24rem;
        font-size: 14rem;
    }
    .read_list {
        margin-top: 56rem;
    }
    .read_list &gt; li {
        margin-left: -4rem;
    }
    .read_list_img {
        width: 260rem;
    }
    .read_list_num {
        font-size: 22rem;
        top: 8rem;
        left: 35rem;
    }
    .read_list_txt {
        font-size: 17rem;
        left: 22rem;
        bottom: 8rem;
    }
}
.read_list_1 {
    animation: read_list 120s linear infinite;
}
.read_list_2 {
    position: absolute;
    top: 0;
    left: 0;
    animation: read_list 120s -60s linear infinite;
}
@keyframes read_list {
    0% {
        transform: translateX(100%);
    }
    100% {
        transform: translateX(-100%);
    }
}

/* results */
.results {
    background-color: #061a36;
    position: relative;
    overflow: hidden;
}
.results::before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.05;
}
.results_ttl {
    text-align: center;
    color: #fff;
    position: relative;
}
.results_ttl_en {
    font-weight: 400;
    line-height: 1.1;
}
.results_ttl_ja {
    margin: auto;
    font-weight: 600;
    line-height: 1.7;
    letter-spacing: 0.05em;
    display: block;
}
.results_txt {
    line-height: 2;
    text-align: center;
    color: #fff;
}
.results_list &gt; li {
    background-color: rgba(136, 149, 160, 0.5);
    overflow: hidden;
}
.results_list_name_wrap {
    display: flex;
    align-items: center;
}
.results_list_name {
    font-weight: 500;
    color: #fff;
}
.results_list_point {
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    position: relative;
}
.results_list_point_ttl {
    margin: auto;
    font-weight: 700;
    line-height: 1.9;
    text-align: center;
    color: #fff;
    position: absolute;
    left: 0;
    right: 0;
}
.results_list_point_ttl::before {
    content: '';
    width: 100%;
    height: 100%;
    background-color: #152d46;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    transform: skew(-20deg);
}
.results_list_point_ttl_inner {
    position: relative;
    z-index: 1;
}
.results_list_point_txt {
    font-weight: 700;
    text-align: center;
    color: #fff;
}
.results_list_box {
    background-color: #fff;
}
.results_list_box_ttl {
    font-weight: 500;
    line-height: 1.9;
    text-align: center;
    color: #fff;
}
.results_list_box_next {
    position: relative;
}
.results_list_box_next::before {
    content: '';
    margin: auto;
    background: url(../images/results_list_arrow.svg) no-repeat 50% / contain;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
}
.results_list_box_prev .results_list_box_ttl {
    background-color: #8895a0;
}
.results_list_box_next .results_list_box_ttl {
    background-color: #00429e;
}
.results_list_box_txt {
    font-weight: 500;
    line-height: 1.5;
    text-align: center;
}
.results_list_box_prev .results_list_box_txt {
    border-left: 1px solid #8895a0;
    border-right: 1px solid #8895a0;
    border-bottom: 1px solid #8895a0;
}
.results_list_box_next .results_list_box_txt {
    border-left: 1px solid #00429e;
    border-right: 1px solid #00429e;
    border-bottom: 1px solid #00429e;
}
.results_list_box_txt_s {
    font-weight: 400;
    line-height: 1.1;
    display: block;
}
.results_list_box_txt_num {
    font-weight: 700;
    line-height: 1;
    display: inline-block;
}
.results_list_box_prev .results_list_box_txt_num {
    color: #8895a0;
}
.results_list_box_next .results_list_box_txt_num {
    background: linear-gradient(180deg, #dfb602 0%, #bd8f00 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.results_list_txt {
    line-height: 1.7;
    color: #fff;
}
@media (min-width: 769px) {
    .results {
        padding: 104rem 0 120rem;
    }
    .results::before {
        background: url(../images/results_bg.jpg) 50% 0 / 1440rem;
    }
    .results_ttl {
        font-size: 32rem;
    }
    .results_ttl_en {
        font-size: 68rem;
    }
    .results_ttl_ja {
        margin-top: 16rem;
        font-size: 20rem;
    }
    .results_txt {
        margin-top: 56rem;
        font-size: 18rem;
    }
    .results_list {
        margin-top: 48rem;
        display: flex;
        align-items: flex-start;
        justify-content: center;
        gap: 30rem;
    }
    .results_list &gt; li {
        width: 410rem;
        height: 800rem;
    }
    .results_list_name_wrap {
        padding: 20rem 24rem 0;
        gap: 12rem;
    }
    .results_list_img {
        width: 74rem;
    }
    .results_list_name {
        font-size: 16rem;
    }
    .results_list_item_inner {
        padding: 10rem 24rem 24rem;
    }
    .results_list_point {
        margin-top: 10rem;
        padding: 20rem 0 12rem;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .results_list_point_ttl {
        width: 128rem;
        height: 25rem;
        font-size: 12rem;
        border-radius: 12rem 0 12rem 0;
        top: -12rem;
    }
    .results_list_point_txt {
        font-size: 18rem;
        line-height: 1.7;
    }
    .results_list_point_txt_3 {
        padding: 0.85em 0;
    }
    .results_list_box_prev {
        margin-top: 20rem;
    }
    .results_list_box_next {
        margin-top: 34rem;
    }
    .results_list_box_next::before {
        width: 32rem;
        height: 22rem;
        top: -28rem;
    }
    .results_list_box_ttl {
        padding: 4rem 0;
        font-size: 13rem;
    }
    .results_list_box_txt {
        padding: 12rem 0 8rem;
        font-size: 16rem;
    }
    .results_list_box_prev .results_list_box_txt_s {
        font-size: 14rem;
    }
    .results_list_box_next .results_list_box_txt_s {
        font-size: 18rem;
    }
    .results_list_box_txt_num {
        margin: 4rem 5rem 0;
    }
    .results_list_box_prev .results_list_box_txt_num {
        font-size: 44rem;
    }
    .results_list_box_prev .results_list_box_txt_num_inner {
        font-size: 30rem;
    }
    .results_list_box_next .results_list_box_txt_num {
        font-size: 52rem;
    }
    .results_list_box_next .results_list_box_txt_num_inner {
        font-size: 36rem;
    }
    .results_list_txt {
        font-weight: 300;
        margin-top: 14rem;
        font-size: 15rem;
    }
}
@media (max-width: 768px) {
    .results {
        padding: 64rem 0 128rem;
    }
    .results::before {
        background: url(../images/results_bg.jpg) 50% 0 / 1440rem;
    }
    .results_ttl_en {
        font-size: 48rem;
    }
    .results_ttl_ja {
        margin-top: 6rem;
        font-size: 17rem;
    }
    .results_txt {
        margin-top: 48rem;
        font-size: 14rem;
    }
    .results_list {
        margin-top: 40rem;
        padding: 0 20rem;
    }
    .results_list &gt; li + li {
        margin-top: 25rem;
    }
    .results_list_name_wrap {
        padding: 20rem 24rem 0;
        gap: 16rem;
    }
    .results_list_img {
        width: 68rem;
    }
    .results_list_name {
        font-size: 14rem;
    }
    .results_list_item_inner {
        padding: 20rem 24rem;
    }
    .results_list_point {
        padding: 22rem 0 13rem;
    }
    .results_list_point_ttl {
        width: 131rem;
        height: 25rem;
        font-size: 13rem;
        top: -12rem;
    }
    .results_list_point_txt {
        font-size: 16rem;
        line-height: 1.6;
    }
    .results_list_box_prev {
        margin-top: 20rem;
    }
    .results_list_box_next {
        margin-top: 34rem;
    }
    .results_list_box_next::before {
        width: 32rem;
        height: 22rem;
        top: -26rem;
    }
    .results_list_box_ttl {
        padding: 4rem 0;
        font-size: 13rem;
    }
    .results_list_box_txt {
        padding: 6rem 0 10rem;
        font-size: 14rem;
    }
    .results_list_box_prev .results_list_box_txt {
        padding: 10rem 0 12rem;
    }
    .results_list_box_next .results_list_box_txt {
        padding: 12rem 0 10rem;
    }
    .results_list_box_prev .results_list_box_txt_s {
        font-size: 14rem;
    }
    .results_list_box_next .results_list_box_txt_s {
        font-size: 18rem;
    }
    .results_list_box_txt_num {
        margin: 2rem 5rem 0;
    }
    .results_list_box_prev .results_list_box_txt_num {
        font-size: 36rem;
        vertical-align: -1%;
    }
    .results_list_box_next .results_list_box_txt_num {
        font-size: 48rem;
        vertical-align: -2%;
    }
    .results_list_txt {
        font-weight: 400;
        margin-top: 14rem;
        font-size: 14rem;
    }
}
.results_list_item {
    opacity: 0;
    translate: 20rem 0;
    transition: opacity 1.5s, translate 1.5s;
}
.animated.results_list_item {
    opacity: 1;
    translate: 0 0;
}
@media (min-width: 769px) {
    .results_list_item_2 {
        transition-delay: 0.5s;
    }
    .results_list_item_3 {
        transition-delay: 1s;
    }
}

/* strengths */
.strengths {
    margin-top: -1px;
    color: #fff;
}
.strengths_bg {
    width: 100%;
    height: 100vh;
    position: sticky;
    top: 0;
    left: 0;
}
.strengths_inner {
    margin-top: -100vh;
}
.strengths_ttl {
    letter-spacing: 0.05em;
    color: #fff;
    position: relative;
}
.strengths_ttl_en {
    font-weight: 400;
    line-height: 1.1;
}
.strengths_ttl_ja {
    font-weight: 600;
    line-height: 1.7;
}
.strengths_content_list &gt; li {
    position: relative;
}
.strengths_content_list_inner {
    position: relative;
}
.strengths_content_ttl_num_wrap {
    line-height: 1;
    color: #bfc3c8;
    position: absolute;
}
.strengths_content_ttl_num_wrap::before {
    content: '';
    width: 100%;
    height: 1rem;
    background-color: #fff;
    display: block;
    position: absolute;
    opacity: 0.6;
    rotate: -30deg;
}
.strengths_content_ttl_num {
    font-weight: 200;
    display: inline-block;
}
.strengths_content_ttl {
    font-weight: 700;
    line-height: 1.5;
}
.strengths_content_txt {
    line-height: 1.7;
    letter-spacing: 0.03em;
}
.strengths_content_list_img {
    display: block;
}
@media (min-width: 769px) {
    .strengths_bg {
        background: url(../images/strengths_bg.jpg) no-repeat 50% 0 / 100vw 100vh;
    }
    .strengths_inner {
        width: 1280rem;
        margin: -100vh auto 0;
        padding: 120rem 0;
    }
    .strengths_ttl_en {
        font-size: 92rem;
    }
    .strengths_ttl_ja {
        margin-left: 28rem;
        font-size: 20rem;
    }
    .strengths_content {
        margin-top: 72rem;
        display: flex;
        gap: 70rem;
    }
    .strengths_content_img_wrap {
        width: 786rem;
        height: 540rem;
        position: sticky;
        top: calc(50% - 270rem);
        left: 0;
    }
    .strengths_content_list &gt; li {
        width: 424rem;
    }
    .strengths_content_list &gt; li:first-child {
        padding-top: 117rem;
    }
    .strengths_content_list &gt; li:last-child {
        padding-bottom: 101rem;
    }
    .strengths_content_list &gt; li + li {
        margin-top: 280rem;
    }
    .strengths_content_img {
        position: absolute;
        top: 0;
        left: 0;
    }
    .strengths_content_ttl_num_wrap {
        width: 60rem;
        height: 35rem;
        top: -30rem;
        left: -22rem;
    }
    .strengths_content_ttl_num_wrap::before {
        top: 25rem;
        left: -5rem;
    }
    .strengths_content_ttl_num {
        font-size: 24rem;
    }
    .strengths_content_ttl {
        font-size: 36rem;
    }
    .strengths_content_txt {
        font-weight: 300;
        margin-top: 24rem;
        font-size: 16rem;
    }
}
@media (max-width: 768px) {
    .strengths_bg {
        background: url(../images/strengths_bg_sp.jpg) no-repeat 50% 0 / 100vw 100vh;
    }
    .strengths_inner {
        margin: -100vh auto 0;
        padding: 64rem 0 80rem;
    }
    .strengths_ttl {
        text-align: center;
    }
    .strengths_ttl_en {
        font-size: 48rem;
    }
    .strengths_ttl_ja {
        margin-top: 6rem;
        font-size: 17rem;
        display: block;
    }
    .strengths_content_list {
        margin-top: 48rem;
        padding: 0 20rem;
    }
    .strengths_content_list &gt; li {
        position: relative;
    }
    .strengths_content_list &gt; li + li {
        margin-top: 64rem;
    }
    .strengths_content_list_inner {
        margin-top: 40rem;
        margin-left: 24rem;
    }
    .strengths_content_ttl_num_wrap {
        width: 55rem;
        height: 40rem;
        top: -27rem;
        left: -24rem;
    }
    .strengths_content_ttl_num_wrap::before {
        top: 29rem;
        left: -5rem;
    }
    .strengths_content_ttl_num {
        font-size: 24rem;
    }
    .strengths_content_ttl {
        font-size: 24rem;
    }
    .strengths_content_txt {
        font-weight: 400;
        margin-top: 16rem;
        font-size: 14rem;
    }
}
@media (min-width: 769px) {
    .strengths_content_img {
        opacity: 0;
        filter: blur(15rem);
        transition: opacity 0.4s, filter 0.4s;
    }
    .animated.strengths_content_img {
        opacity: 1;
        filter: blur(0);
    }
}

/* faq */
.faq {
    margin-top: -1px;
    background-color: #061a36;
}
.faq::before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.05;
}
.faq_ttl {
    text-align: center;
    color: #fff;
}
.faq_ttl_en {
    font-weight: 400;
    line-height: 1.1;
}
.faq_ttl_ja {
    font-weight: 600;
    line-height: 1.7;
    letter-spacing: 0.05em;
    display: block;
}
.faq_list &gt; li {
    color: #fff;
    background-color: rgba(136, 149, 160, 0.5);
    cursor: pointer;
}
.faq_list_q_icon,
.faq_list_a_icon {
    font-weight: 400;
    line-height: 1.1;
    color: #fff;
    display: inline-block;
}
.faq_list_q_txt,
.faq_list_a_txt_inner {
    letter-spacing: 0.03em;
    display: flex;
    align-items: center;
    position: relative;
}
.faq_list_q_txt {
    font-weight: 500;
    line-height: 1.9;
}
.faq_list_a_txt_inner {
    font-weight: 400;
    line-height: 1.7;
}
.faq_list_icon {
    margin: auto;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
}
.faq_list_icon::before,
.faq_list_icon::after {
    content: '';
    width: 100%;
    height: 2px;
    margin: auto;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.faq_list_icon::after {
    rotate: 90deg;
}
.faq_list_a_txt {
    border-top: 1px solid #fff;
    display: none;
}
@media (min-width: 769px) {
    .faq {
        padding: 104rem 0 120rem;
    }
    .faq::before {
        background: url(../images/results_bg.jpg) 50% 0 / 1440rem;
    }
    .faq_ttl_en {
        font-size: 68rem;
    }
    .faq_ttl_ja {
        margin-top: 16rem;
        font-size: 20rem;
    }
    .faq_list {
        width: 1120rem;
        margin: 56rem auto 0;
    }
    .faq_list &gt; li {
        padding: 24rem 40rem;
    }
    .faq_list &gt; li + li {
        margin-top: 32rem;
    }
    .faq_list_q_txt,
    .faq_list_a_txt {
        line-height: 1.9;
    }
    .faq_list_q_txt {
        font-size: 18rem;
        padding-right: 40rem;
    }
    .faq_list_q_icon {
        min-width: 46rem;
        font-size: 32rem;
    }
    .faq_list_a_icon {
        min-width: 46rem;
        font-size: 34rem;
    }
    .faq_list_icon {
        width: 25rem;
        height: 25rem;
    }
    .faq_list_a_txt {
        margin-top: 16rem;
        padding-top: 20rem;
        padding-right: 64rem;
        padding-bottom: 3rem;
        font-size: 16rem;
    }
}
@media (max-width: 768px) {
    .faq {
        padding: 64rem 0 80rem;
    }
    .faq::before {
        background: url(../images/results_bg.jpg) 50% 0 / 1440rem;
    }
    .faq_ttl_en {
        font-size: 48rem;
    }
    .faq_ttl_ja {
        margin-top: 6rem;
        font-size: 17rem;
    }
    .faq_list {
        margin-top: 48rem;
        padding: 0 20rem;
    }
    .faq_list &gt; li {
        padding: 16rem 20rem;
    }
    .faq_list &gt; li + li {
        margin-top: 24rem;
    }
    .faq_list_q_txt {
        line-height: 1.65;
    }
    .faq_list_a_txt {
        line-height: 1.7;
    }
    .faq_list_q_txt {
        font-size: 15rem;
        padding-right: 30rem;
    }
    .faq_list_q_icon,
    .faq_list_a_icon {
        margin-right: 20rem;
        font-size: 26rem;
    }
    .faq_list_icon {
        width: 26rem;
        height: 26rem;
    }
    .faq_list_icon::before,
    .faq_list_icon::after {
        width: 14rem;
        height: 2rem;
    }
    .faq_list_a_txt {
        margin-top: 16rem;
        padding-top: 14rem;
        font-size: 14rem;
    }
}
.faq_list_icon::after {
    transition: scale 0.3s;
}
.is_active .faq_list_icon::after {
    scale: 0 1;
}

/* flow */
.flow {
    margin-top: -1px;
    position: relative;
}
.flow_bg {
    width: 100%;
    height: 100vh;
    position: sticky;
    top: 0;
    left: 0;
}
.flow_inner {
    margin-top: -100vh;
}
.flow_ttl {
    text-align: center;
    color: #fff;
}
.flow_ttl_en {
    font-weight: 400;
    line-height: 1.1;
}
.flow_ttl_ja {
    font-weight: 600;
    line-height: 1.7;
    letter-spacing: 0.05em;
    display: block;
}
.flow_list {
    color: #fff;
}
.flow_list &gt; li {
    position: relative;
}
.flow_list_ttl {
    font-weight: 700;
    line-height: 1.6;
}
.flow_list_txt {
    line-height: 1.7;
}
@media (min-width: 769px) {
    .flow_bg {
        background: url(../images/strengths_bg.jpg) no-repeat 50% 0 / 100vw 100vh;
    }
    .flow_inner {
        margin-top: -100vh;
        padding: 120rem 0;
    }
    .flow_ttl_en {
        font-size: 68rem;
    }
    .flow_ttl_ja {
        margin-top: 16rem;
        font-size: 20rem;
    }
    .flow_list {
        width: 1120rem;
        margin: 64rem auto 0;
    }
    .flow_list_odd {
        width: 340rem;
        height: 263rem;
        display: block;
        position: absolute;
        top: 63rem;
        left: 24rem;
    }
    .flow_list_odd::before,
    .flow_list_odd::after {
        content: '';
        display: block;
        background-color: #fff;
        position: absolute;
        left: 0;
        opacity: 0.4;
    }
    .flow_list_odd::before {
        width: 2px;
        height: 100%;
        top: 0;
    }
    .flow_list_odd::after {
        width: 100%;
        height: 2px;
        bottom: 0;
    }
    .flow_list_even {
        width: 385rem;
        height: 205rem;
        display: block;
        position: absolute;
        top: 63rem;
        left: -353rem;
    }
    .flow_list_even::before,
    .flow_list_even::after {
        content: '';
        display: block;
        background-color: #fff;
        position: absolute;
        opacity: 0.4;
    }
    .flow_list_even::before {
        width: 2px;
        height: 100%;
        top: 0;
        right: 0;
    }
    .flow_list_even::after {
        width: 100%;
        height: 2px;
        bottom: 0;
        right: 0;
    }
    .flow_list_even_line {
        width: 2px;
        height: 32rem;
        display: block;
        background-color: #fff;
        position: absolute;
        opacity: 0.4;
        top: 100%;
        left: 0;
    }
    .flow_list &gt; li + li {
        margin-top: 40rem;
    }
    .flow_list &gt; li:nth-child(2n + 1) {
        margin-top: 49rem;
    }
    .flow_list &gt; li:nth-child(2n) {
        margin-top: 41rem;
        margin-left: 378rem;
    }
    .flow_list &gt; li:first-child {
        margin-top: 0;
    }
    .flow_list_item {
        display: flex;
        gap: 32rem;
    }
    .flow_list_item_inner {
        width: 408rem;
        padding-left: 76rem;
    }
    .flow_list_num {
        font-weight: 200;
        font-size: 32rem;
    }
    .flow_list_num_l {
        font-size: 56rem;
    }
    .flow_list_num_s {
        font-size: 22rem;
        vertical-align: 4rem;
    }
    .flow_list_ttl {
        padding-top: 24rem;
        font-size: 24rem;
    }
    .flow_list_txt {
        margin-top: 8rem;
        font-weight: 300;
        font-size: 16rem;
    }
    .flow_list_img {
        width: 302rem;
    }
}
@media (max-width: 768px) {
    .flow_bg {
        background: url(../images/strengths_bg_sp.jpg) no-repeat 50% 0 / 100vw 100vh;
    }
    .flow_inner {
        margin: -100vh auto 0;
        padding: 64rem 0 80rem;
    }
    .flow_ttl_en {
        font-size: 48rem;
    }
    .flow_ttl_ja {
        margin-top: 6rem;
        font-size: 17rem;
    }
    .flow_list {
        margin: 48rem 24rem 0 20rem;
    }
    .flow_list_num {
        font-weight: 300;
        font-size: 28rem;
    }
    .flow_list_num_l {
        font-size: 42rem;
    }
    .flow_list_num_s {
        font-size: 24rem;
        vertical-align: 4rem;
    }
    .flow_list_item {
        width: 311rem;
        margin-top: 6rem;
        margin-left: 20rem;
        padding-top: 8rem;
        padding-left: 24rem;
        padding-bottom: 36rem;
        position: relative;
    }
    .flow_list &gt; li:last-child .flow_list_item {
        padding-bottom: 0;
    }
    .flow_list_item::before {
        content: '';
        width: 1px;
        height: 100%;
        background-color: #fff;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        opacity: 0.4;
    }
    .flow_list_ttl {
        font-size: 20rem;
    }
    .flow_list_txt {
        margin-top: 8rem;
        font-weight: 400;
        font-size: 14rem;
    }
    .flow_list_img {
        margin-top: 20rem;
    }
}
@media (min-width: 769px) {
    .flow_list_num {
        opacity: 0;
        transform: translateY(20rem);
        transition: opacity 0.5s, transform 0.5s;
    }
    .animated .flow_list_num {
        opacity: 0.6;
        transform: translateY(0);
    }
    .flow_list_odd::before {
        scale: 1 0;
        transition: scale 0.3s 0.3s;
        transform-origin: 0 0;
    }
    .flow_list_odd::after {
        scale: 0 1;
        transition: scale 0.3s 0.6s;
        transform-origin: 0 0;
    }
    .animated .flow_list_odd::before,
    .animated .flow_list_odd::after {
        scale: 1 1;
    }
    .flow_list_even::before {
        scale: 1 0;
        transition: scale 0.3s 0.3s;
        transform-origin: 0 0;
    }
    .flow_list_even::after {
        scale: 0 1;
        transition: scale 0.3s 0.6s;
        transform-origin: 100% 0;
    }
    .flow_list_even_line {
        scale: 1 0;
        transition: scale 0.3s 0.9s;
        transform-origin: 0 0;
    }
    .animated .flow_list_even::before,
    .animated .flow_list_even::after,
    .animated .flow_list_even_line {
        scale: 1 1;
    }
    .flow_list_item {
        opacity: 0;
        transform: translateY(20rem);
        transition: opacity 0.5s 0.5s, transform 0.5s 0.5s;
    }
    .animated .flow_list_item {
        opacity: 1;
        transform: translateY(0);
    }
}
@media (max-width: 768px) {
    .flow_list_num {
        opacity: 0;
        transform: translateY(20rem);
        transition: opacity 0.5s, transform 0.5s;
    }
    .animated .flow_list_num {
        opacity: 0.6;
        transform: translateY(0);
    }
    .flow_list_item {
        opacity: 0;
        transform: translateY(20rem);
        transition: opacity 0.5s 0.3s, transform 0.5s 0.3s;
    }
    .animated .flow_list_item {
        opacity: 1;
        transform: translateY(0);
    }
    .flow_list_item::before {
        scale: 1 0;
        transition: scale 0.5s 0.5s;
        transform-origin: 0 0;
    }
    .animated .flow_list_item::before {
        scale: 1 1;
    }
}

/* apply */
.apply {
    margin-top: -1px;
    background: url(../images/apply_bg.jpg) no-repeat 50% / cover;
}
.apply_ttl {
    text-align: center;
    color: #fff;
}
.apply_ttl_en {
    font-weight: 400;
    line-height: 1.1;
}
.apply_ttl_ja {
    font-weight: 600;
    line-height: 1.7;
    letter-spacing: 0.05em;
    display: block;
}
.apply_form {
    display: block;
}
@media (min-width: 769px) {
    .apply {
        padding: 104rem 0 120rem;
    }
    .apply_ttl_en {
        font-size: 68rem;
    }
    .apply_ttl_ja {
        margin-top: 16rem;
        font-size: 20rem;
    }
    .apply_form {
        width: 1050rem;
        height: 1060rem;
        margin: 56rem auto 0;
    }
}
@media (max-width: 768px) {
    .apply {
        padding: 64rem 0 80rem;
    }
    .apply_ttl_en {
        font-size: 48rem;
    }
    .apply_ttl_ja {
        margin-top: 6rem;
        font-size: 17rem;
    }
    .apply_form {
        width: 335rem;
        height: 910rem;
        margin: 48rem auto 0;
    }
}

/* company */
.company {
    background-color: #061a36;
}
.company::before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0.05;
}
.company_ttl {
    color: #fff;
}
.company_ttl_en {
    font-weight: 400;
    line-height: 1.1;
}
.company_ttl_ja {
    font-weight: 600;
    line-height: 1.7;
    letter-spacing: 0.05em;
    display: block;
}
.company_list {
    color: #fff;
    border-bottom: 1px solid #fff;
}
.company_list &gt; li {
    border-top: 1px solid #fff;
}
.company_list_ttl,
.company_list_txt {
    line-height: 1.9;
    letter-spacing: 0.03em;
}
.company_list_txt_tel {
    text-decoration: none;
    color: #fff;
    pointer-events: none;
}
@media (min-width: 769px) {
    .company {
        padding: 120rem 0;
    }
    .company::before {
        background: url(../images/results_bg.jpg) 50% 0 / 1440rem;
    }
    .company_ttl_en {
        font-size: 64rem;
    }
    .company_ttl_ja {
        margin-top: 16rem;
        font-size: 20rem;
    }
    .company_inner {
        width: 1200rem;
        margin: 0 auto;
        display: flex;
        align-items: flex-start;
        justify-content: flex-end;
        gap: 120rem;
        position: relative;
    }
    .company_list {
        width: 804rem;
    }
    .company_list &gt; li {
        padding: 28rem 24rem;
        display: flex;
    }
    .company_list_ttl,
    .company_list_txt {
        font-size: 16rem;
    }
    .company_list_ttl {
        width: 264rem;
        font-weight: 500;
    }
    .company_list_txt {
        width: 372rem;
        font-weight: 400;
    }
}
@media (max-width: 768px) {
    .company {
        padding: 64rem 0 80rem;
    }
    .company::before {
        background: url(../images/results_bg.jpg) 50% 0 / 1440rem;
    }
    .company_ttl {
        text-align: center;
    }
    .company_ttl_en {
        font-size: 48rem;
    }
    .company_ttl_ja {
        margin-top: 6rem;
        font-size: 17rem;
    }
    .company_list {
        margin: 48rem 24rem 0;
    }
    .company_list &gt; li {
        padding: 24rem 0;
    }
    .company_list_ttl,
    .company_list_txt {
        font-size: 14rem;
    }
    .company_list_ttl {
        font-weight: 500;
    }
    .company_list_txt {
        font-weight: 400;
        margin-top: 12rem;
    }
}

/* footer */
.footer {
    background-color: #050d1b;
}
.footer_logo_wrap {
    display: flex;
    justify-content: center;
}
.footer_txt {
    line-height: 1.9;
    letter-spacing: 0.05em;
    text-align: center;
    color: #fff;
}
@media (min-width: 769px) {
    .footer {
        padding: 48rem 0;
    }
    .footer_logo_wrap {
        gap: 24rem;
    }
    .footer_logo_1 {
        width: 204rem;
    }
    .footer_logo_2 {
        width: 115rem;
    }
    .footer_txt {
        margin-top: 24rem;
        font-size: 14rem;
    }
}
@media (max-width: 768px) {
    .footer {
        padding: 40rem 0;
    }
    .footer_logo_wrap {
        gap: 24rem;
    }
    .footer_logo_1 {
        width: 152rem;
    }
    .footer_logo_2 {
        width: 86rem;
    }
    .footer_txt {
        margin-top: 24rem;
        font-size: 11rem;
    }
}
@media (min-width: 769px) {
    @media (hover:hover) {
        .footer_logo_wrap &gt; a {
            transition: opacity 0.3s;
        }
        .footer_logo_wrap &gt; a:hover {
            opacity: 0.7;
        }
    }
}

/* bnr */
.bnr {
    margin-left: auto;
    position: sticky;
    translate: 0 50%;
    z-index: 1;
}
.bnr::before {
    content: '';
    height: 100%;
    background-color: #00429e;
    display: block;
    position: absolute;
    top: 0;
}
.bnr_txt {
    font-weight: 700;
    line-height: 1.7;
    text-align: center;
    color: #fff;
    position: relative;
}
.bnr_txt_inner {
    background: linear-gradient(360deg, #d0a900 0%, #fff9e6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.bnr_txt_num {
    line-height: 1;
    font-weight: 700;
}
.bnr_link {
    font-weight: 600;
    line-height: 1.7;
    text-decoration: none;
    color: #061a36;
    display: block;
    position: relative;
}
.bnr_link::before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    border: 1px solid;
    border-image: linear-gradient(360deg, #d0a900 0%, #fff9e6 100%);
    border-image-slice: 1;
    background: linear-gradient(360deg, #d0a900 0%, #fff9e6 100%);
    position: absolute;
    top: 0;
    left: 0;
}
.bnr_link_hover::before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    border: 1px solid;
    border-image: linear-gradient(360deg, #d0a900 0%, #fff9e6 100%);
    border-image-slice: 1;
    background-color: #152d46;
    position: absolute;
    top: 0;
    left: 0;
}
.bnr_link_hover::after {
    content: '';
    margin: auto;
    border-top: 2px solid;
    border-right: 2px solid;
    border-image: linear-gradient(360deg, #d0a900 0%, #fff9e6 100%);
    border-image-slice: 1;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    rotate: 45deg;
}
.bnr_link_hover .bnr_link_inner {
    background: linear-gradient(360deg, #d0a900 0%, #fff9e6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.bnr_link_arrow {
    margin: auto;
    border-top: 2px solid #061a36;
    border-right: 2px solid #061a36;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    rotate: 45deg;
}
.bnr_link_inner {
    display: block;
    position: relative;
}
.bnr_link_hover {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: 1;
}
.bnr_icon {
    margin: auto;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 0.07em;
    text-align: center;
    text-decoration: none;
    color: #152d46;
    border-radius: 50%;
    background: linear-gradient(360deg, #d0a900 0%, #fff9e6 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.bnr_icon::before {
    content: '';
    margin: auto;
    border-right: 2px solid #152d46;
    border-bottom: 2px solid #152d46;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    rotate: 45deg;
}
.bnr_icon_hover {
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    margin: auto;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    text-decoration: none;
    border-radius: 50%;
    background: linear-gradient(360deg, #d0a900 0%, #fff9e6 100%);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}
.bnr_icon_hover_inner {
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    border-radius: 50%;
    background-color: #152d46;
    display: flex;
    align-items: center;
    justify-content: center;
}
.bnr_icon_hover_inner::after {
    content: '';
    margin: auto;
    border-right: 2px solid;
    border-bottom: 2px solid;
    border-image: linear-gradient(360deg, #d0a900 0%, #fff9e6 100%);
    border-image-slice: 1;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    rotate: 45deg;
}
.bnr_icon_hover_txt {
    background: linear-gradient(360deg, #d0a900 0%, #fff9e6 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    display: block;
}
@media (min-width: 769px) {
    .bnr {
        width: 410rem;
        height: 193rem;
        margin-top: -120rem;
        right: 0;
        bottom: 112rem;
    }
    .bnr::before {
        width: 470rem;
        right: -30rem;
        transform: skew(-15deg);
    }
    .bnr_item {
        padding: 26rem 43rem 30rem 20rem;
    }
    .bnr_txt {
        font-size: 20rem;
    }
    .bnr_txt_s {
        font-size: 18rem;
    }
    .bnr_txt_num {
        font-size: 34rem;
    }
    .bnr_link {
        margin-top: 12rem;
        padding: 1rem;
        font-size: 24rem;
    }
    .bnr_link::before {
        transform: skew(-15deg);
    }
    .bnr_link_hover::before {
        transform: skew(-15deg);
    }
    .bnr_link_inner {
        padding: 8rem 40rem;
    }
    .bnr_link_inner_s {
        font-size: 18rem;
    }
    .bnr_link_hover::after {
        width: 12rem;
        height: 12rem;
        right: 44rem;
    }
    .bnr_link_arrow {
        width: 12rem;
        height: 12rem;
        right: 44rem;
    }
    .bnr_icon {
        padding-bottom: 16rem;
        font-size: 18rem;
        display: block;
    }
    .bnr_icon_inner {
        margin-top: 17rem;
        display: inline-block;
    }
    .bnr_icon::before,
    .bnr_icon_hover_inner::after {
        width: 15rem;
        height: 15rem;
        bottom: 23rem;
    }
    .bnr_icon_hover {
        margin: -2px;
        padding-bottom: 0;
    }
    .bnr_icon_hover_inner {
        margin: 2px;
    }
    .bnr_icon_hover_txt {
        padding-bottom: 28rem;
    }
}
@media (max-width: 768px) {
    .bnr {
        width: 315rem;
        height: 135rem;
        margin-top: -92rem;
        right: 0;
        bottom: 62rem;
        translate: 0 30%;
    }
    .bnr::before {
        width: 360rem;
        right: -35rem;
        transform: skew(-10deg);
    }
    .bnr_item {
        padding: 12rem 24rem 16rem 11rem;
    }
    .bnr_txt {
        font-size: 15rem;
        letter-spacing: -0.05em;
    }
    .bnr_txt::after {
        right: -2rem;
    }
    .bnr_txt_num {
        font-size: 26rem;
    }
    .bnr_link {
        width: 265rem;
        margin: 8rem auto 0;
        padding: 1rem;
        font-size: 18rem;
    }
    .bnr_link::before {
        transform: skew(-10deg);
    }
    .bnr_link_hover::before {
        transform: skew(-10deg);
    }
    .bnr_link_inner {
        padding: 4rem 30rem;
    }
    .bnr_link_inner_s {
        margin-left: 3rem;
        font-size: 14rem;
    }
    .bnr_link_arrow {
        width: 12rem;
        height: 12rem;
        right: 32rem;
    }
    .bnr_icon {
        padding-bottom: 20rem;
        font-size: 15rem;
    }
    .bnr_icon::before,
    .bnr_icon_hover_inner::after {
        width: 12rem;
        height: 12rem;
        bottom: 15rem;
    }
    .bnr_icon_hover {
        margin: -2px;
        padding-bottom: 0;
    }
    .bnr_icon_hover_inner {
        margin: 2px;
    }
    .bnr_icon_hover_txt {
        padding-bottom: 16rem;
    }
}
.bnr {
    opacity: 0;
    transform: translateY(20rem);
    transition: width 0.5s 0.5s, height 0.5s 0.5s, border-radius 0.5s 0.5s, right 0.5s 0.5s, bottom 0.5s 0.5s, opacity 0.5s 0.5s, transform 0.5s 0.5s;
}
.loaded .bnr {
    opacity: 1;
    transform: translateY(0);
}
.is_fixed.bnr {
    border-radius: 50%;
}
.bnr::before {
    transition: width 1s, border-radius 0.5s, transform 0.5s, right 0.5s;
}
.is_fixed.bnr::before {
    border-radius: 500rem;
    transform: skew(0);
    transition: width 1s, border-radius 0.5s, transform 0.5s, right 0.5s;
}
.bnr_item {
    transition: opacity 0.5s 1s;
}
.is_fixed .bnr_item {
    opacity: 0;
    transition: opacity 0.5s;
    pointer-events: none;
}
.bnr_icon {
    opacity: 0;
    transition: opacity 0.5s;
    pointer-events: none;
}
.is_fixed .bnr_icon {
    opacity: 1;
    transition: opacity 0.5s 1s;
    pointer-events: all;
}
.bnr_icon_hover {
    opacity: 0;
    transition: opacity 0.5s;
}
@media (min-width: 769px) {
    .is_fixed.bnr {
        width: 120rem;
        height: 120rem;
        right: 48rem;
        bottom: 80rem;
    }
    .is_fixed.bnr::before {
        width: 120rem;
        right: 0;
    }
    @media (hover:hover) {
        .bnr_link_inner {
            transition: background-color 0.3s;
        }
        .bnr_link_arrow {
            transition: all 0.3s;
        }
        .bnr_link:hover::after {
            border-top: 2px solid #fb4e17;
            border-right: 2px solid #fb4e17;
        }
        .bnr_link_hover {
            transition: opacity 0.3s;
        }
        .bnr_link:hover .bnr_link_hover {
            opacity: 1;
        }
        .bnr_icon:hover .bnr_icon_hover {
            opacity: 1;
        }
    }
}
@media (max-width: 768px) {
    .is_fixed.bnr {
        width: 92rem;
        height: 92rem;
        right: 20rem;
        bottom: 46rem;
    }
    .is_fixed.bnr::before {
        width: 92rem;
        right: 0;
    }
}</pre></body></html>