body {
    overflow-x: hidden;
    font-family: 'Noto Sans JP', sans-serif;
    counter-reset: number 0 shadow 0;
}

main {
    overflow: hidden;
}

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

.pc-hidden {
    display: none;
}

.kome {
    font-size: 1.2rem;
    white-space: nowrap;
}


/* ヘッダー */
.header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 100;
    padding: 1.7rem;
    background-color: #fff;
}

.header .wrapper {
    display: flex;
    /* margin-left: 1.7rem;
    margin-right: 1.5rem; */

    justify-content: space-between;
    align-items: center;

}

.h_navi .menu_list {
    display: flex;
    align-items: center;
}

.h_navi .menu_list .list-item {
    font-size: 1.4rem;
    font-weight: bold;
    margin-right: 3.5rem;
}

.h_navi .menu_list .list-item:nth-child(4) {
    /* margin-right: 4.6rem; */
}

.h_navi .menu_list .list-item:nth-child(5) {
    margin-right: 1.8rem;
}

.menu_list .list-item.list-item--tel {
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 2.8rem;
    padding-left: 2.8rem;
    position: relative;
}

.menu_list .list-item.list-item--tel::before {
    content: "";
    background: url(../img/tel.svg) no-repeat center/contain;
    width: 2.5rem;
    height: 1.6rem;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    left: 0;
}

.menu_list .list-item.list-item--contact {
    font-weight: bold;
    font-size: 1.5rem;
    background-color: #2D52B7;
    border-radius: 7px;
    color: #FFF;
    filter: drop-shadow(0px 5px 0px #133a9c);
    margin-right: 0;
    transition: .3s;
}

.menu_list .list-item.list-item--contact:hover {
    filter: none;
    transform: translateY(5px);
    transition: .3s;
}

.menu_list .list-item.list-item--contact a {
    padding-top: 1.5rem;
    padding-bottom: 1.9rem;
    padding-left: 2.1rem;
    padding-right: 2.5rem;
    display: block;

}

/* ヘッダー */
/* MV */
.p-swiper-container {
    text-align: right;
    padding-top: 6.8rem;
    padding-bottom: 6.5rem;
    position: relative;
}

.mv {
    background: url(../img/bg_back.png) repeat center/1.4rem 1.4rem;
    position: relative;
    padding-bottom: 16rem;
}

.mv .inner {
    max-width: 120rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    position: relative;
}

.mv_ttl {
    color: #333;
    font-size: 6.3rem;
    font-weight: 900;
    margin-bottom: 1.9rem;
    line-height: 1.35;
}

.mv_ttl > img {
    width: 37.6rem;
}

.mv_ttl_text01 {
    font-size: 2.4rem;
    font-weight: bold;
    position: relative;
    top: -1px;
    left: 6px;
}

.mv_ttl strong {
    display: inline-block;
    font-weight: bold;
    font-size: 3.3rem;
    padding-bottom: 9px;
    position: relative;
}

.wave::after {
    content: "";
    background: url(../img/wave.svg) repeat-x center/1.4rem auto;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 4px;
}

.txt-line {
    font-family: 'Montserrat', sans-serif;
    color: #3BBF0C;
}

.y_line {
    position: relative;
}

.y_line::after {
    content: "";
    position: absolute;
    height: 1.4rem;
    width: 100%;
    background-color: #FFED62;
    mix-blend-mode: multiply;
    bottom: 0;
    left: 0;
}

.mv .read_txt {
    font-weight: bold;
    font-size: 2.2rem;
}

.mv .image_section {
    position: absolute;
    right: 4.9rem;
    top: 16.8rem;
    max-width: 35.3rem;
    width: 30%;
}

.mv .image_section img {
    filter: drop-shadow(3rem 3rem 3rem rgba(0, 0, 0, 0.15));
}

.swiper_text {
    max-width: 54.1rem;
    width: 100%;
    margin-right: 0;
    margin-left: auto;
    position: absolute;
    bottom: 17.2rem;
    left: 4.8rem;
    font-feature-settings: "palt";
    z-index: 1;
}

.swiper-slide {
    padding-bottom: 5.4rem;
    overflow: hidden;
    position: relative;
}

.swiper-slide img {
    max-width: 29rem;
    width: 64%;
    top: 5.3rem;
    position: relative;
    z-index: -1;
    margin-right: 23.4rem;
}

.swiper-button-next {
    right: 9.6rem;
    background: #57c0e2;
    opacity: 0.39;
    width: 7.8rem;
    height: 7.8rem;
    border-radius: 5rem;
    top: 41.6rem;
}

.swiper-button-next::after {
    content: "";
    background: url(../img/arrow-r.svg) no-repeat center/23px 17px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
}

.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets {
    bottom: 4.8rem;
}



.swiper-pagination-bullet {
    background: #2D52B7;
    opacity: 0.25;
    width: 10px;
    height: 10px;
}

.swiper-pagination-bullet-active {
    background: #2D52B7;
    opacity: 1;
}

.c_btn {
    position: relative;
    max-width: 35.6rem;
    width: 100%;
    background-color: #2D52B7;
    filter: drop-shadow(0px 5px 0px #133a9c);
    border-radius: 7px;
    transition: .3s;
}

.c_btn:hover {
    transform: translateY(5px);
    filter: none;
    transition: .3s;
}

.c_btn::after {
    content: "";
    background: url(../img/mail.svg) no-repeat center/contain;
    width: 2.4rem;
    height: 1.8rem;
    position: absolute;
    right: 2.9rem;
    top: 0;
    bottom: 0;
    margin: auto;
}

.c_btn a {
    color: #FFF;
    display: block;
    padding-top: 1.9rem;
    padding-bottom: 2.3rem;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    line-height: 2.9rem;
}

/* MV */
/* お問い合わせはこちら */
.contact_btn {
    display: none;
    /* 初期状態は非表示 */
    opacity: 0;
    /* 初期状態は透明 */
    transition: opacity 0.5s ease;
    position: fixed;
    bottom: 5%;
    right: 1%;
    width: 16.1rem;
    height: 16.1rem;
    border-radius: 50%;
    background-color: #FFED62;
    filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));
    justify-content: center;
    align-items: center;
    z-index: 100;

}

.contact_btn::before {
    content: "";
    width: 18.7rem;
    height: 18.7rem;
    background-color: #FFED62;
    filter: opacity(0.24);
    position: absolute;
    border-radius: 50%;
    top: -1.3rem;
    z-index: -1;
}

.contact_btn a {
    position: absolute;
    width: 100%;
    height: 100%;
    display: block;
    top: 0;
    left: 0;
}

.contact_btn .inner {
    width: 90%;
    margin-right: auto;
    margin-left: auto;

}

.contact_btn .inner .btn-txt {
    color: #133BA0;
    font-size: 2rem;
    line-height: 2.4rem;
    text-align: center;
    font-weight: bold;
    position: relative;
}



/* ハヤペイのご紹介 */
.sec01 {
    margin-bottom: 7.2rem;
    margin-top: -16.0rem;
    position: relative;
    z-index: 1;
}

.sec01 .inner {
    background-color: #FFF;
    border-radius: 3.7rem;
    box-shadow: 1rem 1rem 2.5rem rgba(0, 0, 0, 0.15);
    max-width: 120rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-top: 7.5rem;
    padding-bottom: 4.9rem;
    text-align: center;
}

.sec01 .ttl,
.sec02 .ttl,
.sec03 .ttl {
    display: inline-block;
    font-size: 7.0rem;
    font-weight: 900;
    color: #14358C;
    letter-spacing: 0.05em;
    text-align: center;
    padding-bottom: 2.1rem;
    position: relative;
    margin-bottom: 3rem;
}

.sec01 .ttl img,
.sec02 .ttl img,
.sec03 .ttl img {
    max-width: 29.3rem;
}

.sec01 .wave::after,
.sec02 .wave::after {
    background: url(../img/wave-b.svg) repeat-x center/1.4rem auto;
}

.sec01 .ttl span,
.sec02 .ttl span {
    font-size: 5.6rem;
    letter-spacing: 0.1em;
}

.sec01 .read_txt {
    font-size: 1.8rem;
    letter-spacing: 0.05em;
    font-weight: 500;
    margin-bottom: 1.6rem;
    line-height: 1.75;
}

.bg-blue {
    background-color: #14358C;
    color: #FFF;
}

.sec01 .bg-blue {
    font-size: 2.4rem;
    font-weight: normal;
    display: inline-block;
    max-width: 32rem;
    width: 100%;
    height: 5rem;
    line-height: 5rem;
    margin-bottom: 1rem;
}

.sec01 .image_section {
    margin-top: 2rem;
    width: 36%;
}

.sec01 .bottom_section {
    display: flex;
    max-width: 93.7rem;
    width: 100%;
    margin-left: 11.6rem;
    margin-right: auto;
    justify-content: space-between;
    position: relative;
    margin-bottom: 32px;
}

.sec01 .point_list {
    position: relative;
}

.sec01 .point_list .list-item {
    width: 25rem;
    height: 25rem;
    border-radius: 50%;
    background-color: #14358C;
    padding-top: 4.5rem;
}

.sec01 .point_list .list-item .ttl {
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 3.2rem;
    color: #FFF;
    padding-bottom: 1.3rem;
    border-bottom: 1px solid #FFF;
    width: 81%;
    margin-bottom: 8px;
}

.sec01 .point_list .list-item .txt {
    color: #FFF;
    font-size: 1.8rem;
    line-height: 2.5rem;
    font-weight: 500;
}

.sec01 .point_list .list-item::before {
    counter-increment: number 1;
    content: counter(number) " ";
    color: #FFED62;
    font-size: 6rem;
    line-height: 7.9rem;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    position: absolute;
    top: -2.5rem;
    left: 0;
    right: 0;
    z-index: 2;
}

.sec01 .point_list .list-item::after {
    counter-increment: shadow 1;
    content: counter(shadow) " ";
    color: #14358C;
    font-size: 6rem;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    -webkit-text-stroke: 1.4rem #14358C;
    text-stroke: 1.4rem #14358C;
    position: absolute;
    top: -2rem;
    left: 0;
    right: 0;
    margin: auto;
    z-index: 1;
}


.sec01 .point_list .list-item:first-child {
    position: relative;
    right: 17.6rem;
    top: 2.9rem;
}

.sec01 .point_list .list-item:nth-child(2) {
    position: relative;
    bottom: 0;
}

.sec01 .point_list .list-item:nth-child(3) {
    position: absolute;
    right: 34.1rem;
    bottom: 0;
}

.sec01 .sec01-btnarea {
    display: flex;
    gap: 0 32px;
    justify-content: center;
}

.sec01 .sec01-btnarea__btn01 {
    display: block;
    width: 100%;
    max-width: 38.0rem;
    height: 80px;
    border-radius: 8px;
    box-shadow: 0 6px 0 0 #009100;
    background-color: #00b900;
    padding: 16px 0;
    text-align: center;
    color: #fff;
}

.sec01 .sec01-btnarea__btn02 {
    display: block;
    width: 100%;
    max-width: 38.0rem;
    height: 80px;
    border-radius: 8px;
    box-shadow: 0 6px 0 0 #2352d5;
    background-color: #4473f1;
    padding: 16px 0;
    text-align: center;
    color: #fff;
}

.sec01 .sec01-btnarea__btn01 > p:nth-of-type(1),
.sec01 .sec01-btnarea__btn02 > p:nth-of-type(1) {
    font-size: 1.6rem;
    font-weight: bold;
    margin-bottom: 4px;
}

.sec01 .sec01-btnarea__btn01 > p:nth-of-type(1) > span,
.sec01 .sec01-btnarea__btn02 > p:nth-of-type(1) > span {
    color: #ffed62;
}

.sec01 .sec01-btnarea__btn01 > p:nth-of-type(2),
.sec01 .sec01-btnarea__btn02 > p:nth-of-type(2) {
    font-size: 2.4rem;
    font-weight: bold;
}

/* ハヤペイのご紹介 */
/* ハヤペイでできること */
.sec02 {
    margin-bottom: 18.2rem;
    counter-reset: number 0;
}

.sec02 .inner {
    max-width: 120rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.sec02 .can_list,
.flex_box {
    display: flex;
    column-gap: 1rem;
}

.sec02 .can_list>.list-item {
    border: 2px solid #14358c;
    border-radius: 1.5rem;
    padding-bottom: 1.8rem;
}

.sec02 .can_list .flex_box {
    column-gap: 3.6rem;
    justify-content: center;
}

.sec02 .can_list {
    padding-top: 5.5rem;
}

.sec02 .can_list .list-item:first-child,
.sec02 .can_list .list-item:last-child {
    max-width: 28rem;
    width: 100%;
}

.sec02 .can_list .list-item .ttl {
    font-size: 2.6rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #FFF;
    background-color: #14358C;
    border-radius: 1.5rem 1.5rem 0px 0px;
    height: 6rem;
    line-height: 6rem;
    width: 100%;
    padding-bottom: 0;
    margin-bottom: 2rem;
    position: relative;
}

.sec02 .can_list .list-item {
    position: relative;
}

.sec02 .can_list>.list-item::before {
    content: "";
    width: 10rem;
    height: 10rem;
    border-radius: 50%;
    background-color: #14358C;
    position: absolute;
    top: -5.5rem;
    left: 0;
    right: 0;
    margin: auto;
}

.sec02 .can_list>.list-item::after {
    content: "";
    counter-increment: number 1;
    content: counter(number, decimal-leading-zero) " ";
    color: #FFED62;
    font-size: 4.5rem;
    line-height: 5.9rem;
    letter-spacing: 0.05em;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    position: absolute;
    top: -4.6rem;
    left: 0;
    right: 0;
    z-index: 2;
}

.sec02 .can_list .list-item .ttl .txt-small {
    font-size: 1.2rem;
}

.txt-blue {
    color: #14358C;
    font-weight: bold;
}

.sec02 .can_list .list-item .top_txt {
    font-size: 2rem;
    font-weight: bold;
    letter-spacing: 0.05em;
}

.sec02 .can_list .list-item:first-child img {
    max-width: 19.4rem;
}

.sec02 .can_list .list-item:first-child .top_txt {
    margin-bottom: 2.1rem;
}

.sec02 .can_list .list-item:nth-child(2) .top_txt {
    margin-bottom: 1.6rem;
}

.sec02 .can_list .list-item:last-child .top_txt {
    margin-bottom: 2.7rem;
}

.sec02 .can_list .list-item:last-child .bottom_txt {
    margin-top: 2.5rem;
}

.sec02 .can_list .list-item:last-child img {
    max-width: 15.2rem;
}

.sec02 .can_list .list-item .bottom_txt {
    font-size: 1.8rem;
    line-height: 2.6rem;
    letter-spacing: 0.05em;
}

.sec02 .can_list .list-item .y_line::after {
    height: 1.2rem;
}

.sec02 .can_list .list-item:nth-child(2) {
    width: 100%;
    max-width: 62.8rem;
}

.sec02 .can_list .list-item:nth-child(2) .right_section,
.sec02 .can_list .list-item:nth-child(2) .left_section {
    max-width: 25rem;
    width: 100%;
}

.sec02 .can_list .list-item:nth-child(2) .left_section img,
.sec02 .can_list .list-item:nth-child(2) .right_section img {
    max-width: 15.3rem;
}

.sec02 .can_list .list-item:nth-child(2) .dot_list {
    margin-top: 1.8rem;
}

.dot_list .list-item {
    font-size: 1.4rem;
    line-height: 2.2rem;
    text-align: left;
    text-indent: -1em;
    margin-left: 1em;
}

.dot_list .list-item::before {
    content: "●";
    font-size: 1rem;
    color: #14358C;
}

/* ハヤペイでできること */
/* ご利用の流れ */
.sec03 {
    margin-bottom: 10.7rem;
}

.sec03 .inner {
    max-width: 120rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.sec03 .inner .ttl {
    margin-bottom: 4.9rem;
}

.sec03 .ttl-sub {
    font-size: 5.6rem;
}

.txt-circle {
    border: 2px solid #14358c;
    border-radius: 2.85rem;
    font-size: 3.2rem;
    font-weight: 900;
    letter-spacing: 0;
    margin-left: 1.4rem;
    width: 17.6rem;
    display: inline-block;
    height: 5.6rem;
    line-height: 5.1rem;
    position: relative;
    bottom: 10px;
}

.step_box {
    counter-reset: number 0 shadow 0;
}

.step_box .step_item {
    display: flex;
    flex-direction: column;
    border-radius: 1.5rem;
    border: 2px solid #14358C;
    position: relative;
}

.step_box .step_item .ttl {
    position: relative;
}

.step_box .step_item.step01 .ttl:before,
.step_box .step_item.step02 .ttl:before,
.step_box .step_item.step03 .ttl:before,
.step_box .step_item.step04 .ttl:before,
.step_box .step_item.step05:before,
.step_box .step_item.step06 .ttl:before,
.step_box .step_item.step07:before,
.step_box .step_item.step08>.ttl:before,
.step_box .step_item.step09>.ttl:before {
    content: "Step 01";
    color: #FFF;
    font-size: 3rem;
    line-height: 3.9rem;
    letter-spacing: 0.05em;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    position: absolute;
    top: -2.5rem;
    left: 0;
    right: 0;
    z-index: 2;
    -webkit-text-stroke: 1.2rem #14358C;
    text-stroke: 1.2rem #14358C;
}

.step_box .step_item.step01 .ttl:before,
.step_box .step_item.step09 .ttl:before {
    -webkit-text-stroke: 1.2rem #14358c;
    text-stroke: 1.2rem #14358c;
}

.step_box .step_item.step05:before {
    -webkit-text-stroke: 1.2rem #5D78BF;
    text-stroke: 1.2rem #5D78BF;
}

.step_box .step_item.step07:before {
    left: 49rem;
    right: auto;
    -webkit-text-stroke: 1.2rem #5D78BF;
    text-stroke: 1.2rem #5D78BF;
}




.step_box .step_item.step01 .ttl:after,
.step_box .step_item.step02 .ttl:after,
.step_box .step_item.step03 .ttl:after,
.step_box .step_item.step04 .ttl:after,
.step_box .step_item.step05 .ttl:after,
.step_box .step_item.step06 .ttl:after,
.step_box .step_item.step07 .ttl:after,
.step_box .step_item.step08>.ttl:after,
.step_box .step_item.step09>.ttl:after {
    content: "Step 01";
    color: #FFF;
    font-size: 3rem;
    line-height: 3.9rem;
    letter-spacing: 0.05em;
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    position: absolute;
    top: -2.5rem;
    left: 0;
    right: 0;
    z-index: 2;

}

.step_box .step_item.step05 .ttl:after {
    left: 4rem;
}

.step_box .step_item.step02 .ttl:before,
.step_box .step_item.step02 .ttl:after {
    content: "Step 02";
}
.step_box .step_item.step02 .ttl:before {
    -webkit-text-stroke: 1.2rem #5d78bf;
}

.step_box .step_item.step03 .ttl:before,
.step_box .step_item.step03 .ttl:after {
    content: "Step 03";
}

.step_box .step_item.step04 .ttl:before,
.step_box .step_item.step04 .ttl:after {
    content: "Step 04";
}

.step_box .step_item.step05:before,
.step_box .step_item.step05 .ttl:after {
    content: "Step 05";
}

.step_box .step_item.step06 .ttl:before,
.step_box .step_item.step06 .ttl:after {
    content: "Step 03";
}

.step_box .step_item.step07:before,
.step_box .step_item.step07 .ttl:after {
    content: "Step 04";
}

.step_box .step_item.step08>.ttl:before,
.step_box .step_item.step08>.ttl:after {
    content: "Step 05";
}

.step_box .step_item.step09>.ttl:before,
.step_box .step_item.step09>.ttl:after {
    content: "Step 06";
}

.step_box .step_item.step09>.ttl:before {
    -webkit-text-stroke: 1.2rem #3abe07;
}

.step_box .step_item>.ttl {
    font-size: 2.2rem;
    margin-bottom: 2.9rem;
    background-color: #14358C;
    border-radius: 1rem 1rem 0px 0px;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
    height: 6rem;
    line-height: 6rem;
    padding-bottom: 0;
}


.step_box .step_item.step09>.ttl {
    background-color: #3BBF0C;
}

.step_box .step_item.step01 {
    border: 2px solid #14358c;
    max-width: 55.0rem;
    flex-shrink: 0;
    width: 100%;
    position: relative;
    padding-bottom: 55px;
}

.step_box .step_item.step01 .txt {
    font-size: 1.8rem;
    line-height: 2.6rem;
    letter-spacing: 0.04em;
    text-align: left;
    max-width: 21rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.3rem;
    margin-bottom: 1.4rem;
}

.step_box .step_item.step01 .step01-item01 {
    display: flex;
    justify-content: center;
    gap: 0 12.5rem;
}

.step_box .step_item.step01 .step01-item01 > div {
    position: relative;
}

.step_box .step_item.step01 .step01-item01 > div:first-child:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: -90px;
    margin: auto;
    transform: rotate(90deg);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 2.7rem 1.9rem 2.7rem;
    border-color: transparent transparent #14358C transparent;
}


.step_box .step_item.step01 .step01-item01 .step01-item01__img {
    margin-bottom: 10px;
}

.step_box .step_item.step01 .step01-item01 .step01-item01__img > img {
    max-width: 14rem;
    width: 100%;
    height: auto;
}

.step_box .step_item.step01 .step01-item01 .step01-item01__txt {
    font-size: 1.4rem;
    line-height: 1.5;
    text-align: left;
}

.step_box .step_item.step01 .image_section img {
    max-width: 13.8rem;
    width: 56%;
}

.step_box:nth-child(2) {
    column-gap: 9rem;
    align-items: stretch;
    margin-bottom: 14.3rem;
    position: relative;
}

.step_box:nth-child(2)::after {
    content: "";
    background: url(../img/arrow-b.svg) no-repeat center/contain;
    width: 4.8rem;
    height: 3.7rem;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -7.0rem;
    margin: auto;
    transform: rotate(90deg);
}

.step_box .step_item.step01::after {
    content: "";
    background: url(../img/arrow-b.svg) no-repeat center/contain;
    width: 4.8rem;
    height: 3.7rem;
    position: absolute;
    top: 0;
    bottom: 0;
    right: -7.0rem;
    margin: auto;
}

.step_box:nth-child(2) .flex_box {
    column-gap: 2.8rem;
    max-width: 78.6rem;
    width: 100%;
    margin-right: 2.8rem;
    margin-left: auto;
    margin-bottom: 3.9rem;
}

.step_box:nth-child(2) .flex_box .image_section img {
    max-width: 14.3rem;
}

/* .step_box .step_item.step02::after {
    content: "";
    background: url(../img/arrow-b.svg) no-repeat center/contain;
    width: 3.6rem;
    height: 4.7rem;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -6.1rem;
    margin: auto;
    transform: rotate(90deg);
} */

.step_box .step_item.step02 {
    max-width: 55rem;
    width: 100%;
    position: relative;
    background-color: #5d78bf;
    border: 2px solid #5d78bf;
}

.step_box .step_item.step02 .ttl {
    height: 0;
    margin: 0;
}

.step_box .step_item.step02 .step02-item01 {
    padding-top: 142px;
}

.step_box .step_item.step02 .step02-item01__img {
    margin-bottom: 20px;
}

.step_box .step_item.step02 .step02-item01__txt {
    font-size: 3.2rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    text-align: center;
    color: #fff;
}

.step_box:nth-child(2) .right_section .txt {
    font-size: 1.8rem;
    text-align: left;
    letter-spacing: 0.05em;
    font-weight: 400;
    padding-bottom: 2.2rem;
    border-bottom: 1px solid #14358c;
    margin-bottom: 2.6rem;
}

.step_box:nth-child(2) .right_section .howto_list .list-item .txt {
    font-size: 1.4rem;
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
    text-align: center;
    white-space: nowrap;
}

.howto_list .list-item {
    position: relative;
}

.howto_list .list-item::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: -5.4rem;
    margin: auto;
    transform: rotate(90deg);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 2.7rem 1.9rem 2.7rem;
    border-color: transparent transparent #14358C transparent;
}

.howto_list .list-item:last-child::after {
    content: none;
}

.howto_list {
    display: flex;
    column-gap: 4.4rem;
}

.step_box:nth-child(3) {
    flex-direction: row-reverse;
    column-gap: 8rem;
    margin-bottom: 9rem;
}

.step_box .step_item.step03 {
    max-width: 68rem;
    width: 100%;
    position: relative;
}

.step_box .step_item.step03::after {
    content: "";
    background: url(../img/arrow-b.svg) no-repeat center/contain;
    width: 3.6rem;
    height: 4.7rem;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -6.3rem;
    margin: auto;
    transform: rotate(180deg);
}

.step_box .step_item.step03 .ttl {
    margin-bottom: 4rem;
}

.step_box .step_item.step03 .flex_box {
    margin-right: 2.8rem;
    margin-left: 4.4rem;
    margin-bottom: 2.4rem;
    column-gap: 2.8rem;
}

.step_box .step_item.step03 .flex_box .image_section img {
    max-width: 14.3rem;
}

.step_box .step_item.step03 .flex_box .right_section .txt {
    text-align: left;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: 0.05em;
    padding-bottom: 2.2rem;
    border-bottom: 1px solid #14358c;
    margin-bottom: 2.6rem;
}

.step_box .step_item.step03 .right_section .howto_list {
    column-gap: 4rem;
    align-items: center;
}

.step_box .step_item.step03 .right_section .howto_list .list-item .txt {
    font-size: 1.4rem;
    line-height: 2rem;
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
    text-align: center;
}

.step_box .step_item.step03 .right_section .howto_list .list-item:first-child .txt {
    text-align: left;
    white-space: nowrap;
}

.step_box .step_item.step03 .right_section .howto_list .list-item::after {
    right: -4.5rem;
}

.step_box .step_item.step03 .right_section .howto_list .list-item:first-child {
    display: flex;
    column-gap: 1rem;
    align-items: center;
}

.step_box .step_item.step03 .right_section .howto_list .list-item:first-child img {
    max-width: 14rem;
}

.step_box .step_item.step03 .right_section .howto_list .list-item:last-child img {
    max-width: 14rem;
}

.step_box .step_item.step04 {
    max-width: 44rem;
    width: 100%;
    position: relative;
}

.step_box .step_item.step04::after {
    content: "";
    background: url(../img/arrow-b.svg) no-repeat center/contain;
    width: 3.6rem;
    height: 4.7rem;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -6.3rem;
    margin: auto;
    transform: rotate(90deg);
}

.step_box .step_item.step04 .ttl {
    margin-bottom: 2.9rem;
}

.step_box .step_item.step04 .howto_list {
    margin-left: 3.7rem;
    margin-right: 4.1rem;
    column-gap: 6.1rem;
    margin-bottom: 2.7rem;
}

.step_box .step_item.step04 .howto_list .list-item {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.05em;
    text-align: left;
}

.step_box .step_item.step04 .howto_list .list-item:first-child {
    margin-top: 4.3rem;
}

.step_box .step_item.step04 .howto_list .list-item:first-child img {
    max-width: 14rem;
    margin-bottom: 8px;
}

.step_box .step_item.step04 .howto_list .list-item:last-child {
    max-width: 16rem;
    width: 100%;
}

.step_box .step_item.step04 .howto_list .list-item:last-child img {
    max-width: 14rem;
    margin-bottom: 6px;
}

.step_box .step_item.step04 .howto_list .list-item .txt {
    white-space: nowrap;
}

.step_box:nth-child(4),
.bottom_box .step_box:first-child {
    width: 100%;
    background-color: #5D78BF;
    color: #FFF;
    border-radius: 1.5rem;

}

.step_box .step_item.step05,
.bottom_box .step_box .step_item.step07 {
    border: none;
    display: block;
    margin-bottom: 9rem;
    position: relative;
}

.step_box .step_item.step05::after {
    content: "";
    background: url(../img/arrow-b.svg) no-repeat center/contain;
    width: 3.6rem;
    height: 4.7rem;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -6.3rem;
    margin: auto;
    transform: rotate(90deg);
}

.step_box:nth-child(4) .ttl,
.bottom_box .step_box:first-child .ttl {
    position: relative;
    background-color: transparent;
    height: 8rem;
    line-height: 8rem;
    font-size: 2.6rem;
    margin-bottom: 0;
    text-align: left;
    padding-left: 5.7rem;
}

.step_box:nth-child(4) .ttl::before {
    content: "";
    background: url(../img/icon01.svg) no-repeat center/contain;
    width: 4.1rem;
    height: 4.3rem;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.step_item.step06 {
    margin-bottom: 7rem;
    position: relative;
}

.step_box .step_item.step06::after {
    content: "";
    background: url(../img/arrow-b.svg) no-repeat center/contain;
    width: 3.6rem;
    height: 4.7rem;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -6.3rem;
    margin: auto;
    transform: rotate(90deg);
}

.step_item.step06 .ttl {
    margin-bottom: 3.5rem;
}

.step_item.step06 .flex_box {
    margin-left: 4.5rem;
    margin-right: 6.1rem;
    column-gap: 5.1rem;
    margin-bottom: 4rem;
    align-items: center;
}

.step_item.step06 .flex_box .left_section .howto_list {
    column-gap: 6rem;
}

.step_item.step06 .flex_box .left_section .howto_list .list-item .txt {
    font-size: 1.4rem;
    letter-spacing: 0.05em;
    font-weight: 400;
}

.step_item.step06 .flex_box .left_section {
    padding-right: 4.6rem;
    border-right: 1px solid #14358c;
}

.step_item.step06 .flex_box .left_section .howto_list .list-item:first-child {
    margin-top: 7px;
}

.step_item.step06 .flex_box .left_section .howto_list .list-item:first-child img {
    max-width: 35.6rem;
    margin-bottom: 1.4rem;
}

.step_item.step06 .flex_box .left_section .howto_list .list-item:last-child {
    margin-top: 3.4rem;
}

.step_item.step06 .flex_box .left_section .howto_list .list-item:last-child img {
    max-width: 19.5rem;
    margin-bottom: 2.5rem;
}

.step_item.step06 .flex_box .image_section {
    max-width: 38.5rem;
    flex-shrink: 0;
}

.step_item.step06 .flex_box .image_section img {}

.step_txt {
    font-weight: 900;
    font-size: 3.2rem;
    color: #14358C;
    margin-bottom: 3.2rem;
}

.bottom_box {
    background-color: #EFFAFE;
    border-radius: 3rem;
    border: 2px dashed #5d78bf;
    padding-top: 5.5rem;
    padding-bottom: 5.5rem;
}

.bottom_box .inner {
    max-width: 110rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.bottom_box .step_box:nth-child(2) {
    margin-bottom: 9rem;
}

.bottom_box .step_box:first-child,
.bottom_box .step_box:nth-child(2) {
    position: relative;
}

.bottom_box .step_box:first-child::after,
.bottom_box .step_box:nth-child(2)::after {
    content: "";
    background: url(../img/arrow-b.svg) no-repeat center/contain;
    width: 3.6rem;
    height: 4.7rem;
    position: absolute;
    left: 0;
    right: 0;
    bottom: -6.3rem;
    margin: auto;
    transform: rotate(90deg);
}

.bottom_box .step_box:first-child .ttl {
    padding-left: 5.7rem;
}

.bottom_box .step_box:first-child .ttl::before {
    content: "";
    background: url(../img/icon02.svg) no-repeat center/contain;
    width: 4.2rem;
    height: 4.3rem;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}

.step_box .step_item.step08,
.step_box .step_item.step09 {
    background-color: #FFF;
}

.step_item.step08>.flex_box {
    margin-left: 4.5rem;
    margin-right: 6.2rem;
    column-gap: 4rem;
    max-width: 99.3rem;
    margin-bottom: 3.7rem;
}

.step_item.step08 .flex_box .ttl {
    font-size: 2rem;
    margin-bottom: 3.48vw;
    color: #333333;
}

.step_item.step08 .flex_box .ttl .txt-blue {
    font-size: 2.4rem;
}

.step_item.step08 .flex_box .left_section .image_section {
    display: flex;
    column-gap: 2rem;
    align-items: center;
    padding-right: 3.2rem;
    border-right: 1px solid #14358c;
}

.step_item.step08 .flex_box .left_section .image_section img {
    max-width: 43.5rem;
}

.step_item.step08 .flex_box .left_section .image_section .txt,
.step_item.step08 .flex_box .right_section .txt {
    font-weight: 400;
    font-size: 1.4rem;
    line-height: 2rem;
    white-space: nowrap;
    letter-spacing: 0.05em;
    text-align: left;
    padding-bottom: 0;
    margin-bottom: 0;
    border-bottom: none;
}

.step_item.step08 .flex_box .right_section img {
    max-width: 18.4rem;
    margin-bottom: 1.4rem;
}

.step_box .step_item.step09 {
    border: 2px solid #3bbf0c;
}

.step_box .step_item.step09 .ttl {
    margin-bottom: 2.4rem;
}

.step_box .step_item.step09 .flex_box {
    margin-left: 26.5rem;
    margin-right: 22.4rem;
    align-items: center;
    column-gap: 3.2rem;
    margin-bottom: 2.5rem;
}

.step_box .step_item.step09 .flex_box img {
    max-width: 14.3rem;
}

.step_box .step_item.step09 .flex_box .txt_box {
    display: flex;
    flex-direction: column;
}

.step_box .step_item.step09 .flex_box .txt_box .ttl {
    font-size: 3rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    color: #333333;
    text-align: left;
    line-height: 4.5rem;
    padding-bottom: 0;
    margin-bottom: 1.6rem;
}

.step_box .step_item.step09 .flex_box .txt_box .txt {
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 3rem;
    letter-spacing: 0.05em;
    color: #333333;
}

.bottom_box .step_box:last-child {
    margin-bottom: 0;
}

/* ご利用の流れ */
/* よくある質問 */
.sec04 {
    text-align: center;
    margin-bottom: 10.6rem;
}

.sec04 .inner .ttl {
    font-size: 5.2rem;
    font-weight: 900;
    letter-spacing: 0.05em;
    display: inline-block;
    color: #14358C;
    margin-bottom: 4.3rem;
}

.sec04 .inner {
    max-width: 120rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.qa_inner .qa-box {
    border: 2px solid #14358c;
    border-radius: 1.5rem;
    margin-bottom: 2rem;
}

.qa_inner .qa-box:last-child {
    margin-bottom: 0;
}

.qa_inner .qa-box dt,
.qa_inner .qa-box dd {
    position: relative;
    font-size: 1.8rem;
    font-weight: 500;
    height: 7rem;
    display: flex;
    align-items: center;
    cursor: pointer;
}

.qa_inner .qa-box dt p {
    max-width: 83.3rem;
    width: 100%;
    text-align: left;
}

.qa_inner .qa-box dd p {
    margin-top: 2.2rem;
    margin-bottom: 2.3rem;
    border-bottom: none;
    max-width: 83.3rem;
    width: 100%;
}

.qa-box dt::before {
    position: absolute;
    content: '';
    width: 1.6rem;
    height: 1.6rem;
    border-right: 3px solid #14358C;
    border-bottom: 3px solid #14358C;
    right: 2.6rem;
    top: 0;
    bottom: 0;
    margin: auto;
    transform: rotate(45deg);
    transition: transform .4s;
}

.qa-box dt.open::before {
    transform: rotate(-135deg);
}

.qa_inner .qa-box dt span,
.qa_inner .qa-box dd span {
    font-family: 'Roboto', sans-serif;
    font-weight: bold;
    background-color: #14358C;
    color: #FFF;
    font-size: 4rem;
    margin-right: 2rem;
    width: 7rem;
    height: 100%;
    justify-content: center;
    align-items: center;
    display: flex;
}

.qa_inner .qa-box dt span {
    border-radius: 1rem 0px 0px 1rem;
    transition: .2s;
}

.qa_inner .qa-box dt.open span {
    border-radius: 1rem 0px 0px 0px;
    transition: .2s;
}

.qa_inner .qa-box dd span {
    height: 100%;
    color: #5D78BF;
    background-color: #EFF4F6;
    border-radius: 0px 0px 0px 1.5rem;
    max-width: 7rem;
    width: 100%;
}

.qa_inner .qa-box dd {
    font-size: 1.6rem;
    line-height: 2.4rem;
    font-weight: 400;
    text-align: left;
    border-top: 1px solid #14358c;
}

/* よくある質問 */
/* お問い合わせ */
#contact {
    margin-bottom: 10.6rem;
}

#contact .inner {
    text-align: center;
    max-width: 120rem;
    width: 90%;
    margin-right: auto;
    margin-left: auto;
}

#contact .inner .ttl {
    font-size: 5.2rem;
    font-weight: 900;
    letter-spacing: 0.05em;
    display: inline-block;
    color: #14358C;
    margin-bottom: 4.3rem;
}

.contact_form {
    display: flex;
    max-width: 103.8rem;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 2rem;
}

.contact_form dt {
    font-weight: bold;
    font-size: 1.8rem;
    color: #14358C;
    width: 30%;
    text-align: left;
}

.contact_form dt .required {
    font-size: 1.6rem;
    color: #333333;
    display: inline-block;
    margin-left: 1rem;
}

.contact_form dt .required::before {
    content: "※";
}

.contact_form dd {
    width: 70%;
}

.contact_form dd .check_item,
.contact_form dd label {
    display: flex;
}

.contact_form dd label {
    align-items: center;
    margin-right: 2rem;
    font-size: 1.6rem;
}

input[type="checkbox"] {
    width: 3rem;
    height: 3rem;
    margin-right: 1rem;
}

textarea {
    resize: none;
    width: 100%;
    height: 20rem;
    min-height: 20rem;
    text-align: left;
    padding: 4px;
    font-size: 1.6rem;
    line-height: 3.2rem;
    border: 2px solid #14358C;
    border-radius: 4px;
}

input {
    border: 2px solid #14358C;
    border-radius: 4px;
    width: 100%;
    height: 3.4rem;
    text-align: left;
    font-size: 1.6rem;
}

.button__body {
    max-width: 30rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    background-color: #2D52B7;
    color: #FFF;
    border-radius: 5rem;
    height: 5rem;
}

.button__body input {
    text-align: center;
    border-radius: 5rem;
    height: 5rem;
    line-height: 5rem;
}

.screen-reader-response {
    display: none;
}

span.wpcf7-not-valid-tip,
.wpcf7-response-output {
    text-align: left;
    text-align: left;
    display: block;
    font-size: 1.4rem;
    line-height: 2.4rem;
    color: red;
}

.wpcf7-response-output {
    text-align: center;
}


/* お問い合わせ */
/* 別ページリンク */
.blank_page {
    text-align: center;
    font-size: 1.8rem;
    font-weight: 400;
    line-height: 3rem;
    letter-spacing: 0.05em;
    color: #2D52B7;
    margin-bottom: 10.6rem;
}

.blank_page a {
    text-decoration: underline;
}

/* 特定商取引法に基づく表記 */
.dsct {
    margin-bottom: 10.6rem;
    padding-top: 16.8rem;
}

.dsct .inner {
    text-align: center;
    max-width: 120rem;
    width: 90%;
    margin-right: auto;
    margin-left: auto;
}

.dsct .inner .ttl {
    font-size: 5.2rem;
    font-weight: 900;
    letter-spacing: 0.05em;
    display: inline-block;
    color: #14358C;
    margin-bottom: 4.3rem;
}

.dsct table {
    width: 100%;
}

.dsct table th {
    padding-top: 2rem;
    padding-bottom: 2rem;
    background-color: #14358C;
    color: #FFF;
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 3.6rem;
    padding-left: 2rem;
    padding-right: 2rem;
    width: 32%;
}

.dsct table td {
    background-color: #FFF;
    font-size: 1.8rem;
    line-height: 3.6rem;
    padding-left: 2rem;
    padding-right: 2rem;
    padding-top: 2rem;
    padding-bottom: 2rem;
    text-align: left;
    width: 70%;
    border-top: 1px solid #333;
    border-right: 1px solid #333;
}

.dsct table tr:last-child td {
    border-bottom: 1px solid #333;
}

/* 特定商取引法に基づく表記 */
/* フッター */
.footer .image_section {
    text-align: center;
    padding-bottom: 5.4rem;
    border-bottom: 3px solid #222;
    position: relative;
    margin-bottom: 3.7rem;
}

.footer .image_section img {
    max-width: 27.8rem;
}

.footer .image_section::before {
    content: "";
    background: url(../img/f01.png) no-repeat center/100% auto;
    max-width: 16rem;
    width: 14%;
    height: 23.6rem;
    position: absolute;
    left: min(20%, 62rem);
    bottom: -1rem;
}

.footer .image_section::after {
    content: "";
    background: url(../img/f02.png) no-repeat center/100% auto;
    max-width: 21.1rem;
    width: 17%;
    height: 24.8rem;
    position: absolute;
    right: min(14%, 59rem);
    bottom: -2rem;
}

.foot_bottom {
    /* margin-bottom: 3.7rem; */
    border-top: 3px solid #222;
    /* padding-top: 4.0rem; */
}

.foot_bottom .logo img {
    max-width: 37.3rem;
}

.f_navi .menu_list {
    display: flex;
    column-gap: 1.9rem;
    align-items: flex-start;
}

.f_navi .menu_list .list-item.list-item--tel {
    font-size: 3.6rem;
    padding-left: 4.2rem;
}

.f_navi .menu_list .list-item.list-item--tel::before {
    background: url(../img/tel_foot.svg) no-repeat center/contain;
    width: 3.3rem;
    height: 2.2rem;
}

.foot_bottom .inner {
    max-width: 120rem;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    row-gap: 3rem;
}

.foot_bottom .inner .logo,
nav.f_navi {
    width: fit-content;
}

nav.footer_nav {
    width: 100%;
}

ul.f_menu {
    display: flex;
    justify-content: center;
}

ul.f_menu .list-item {
    font-size: 1.4rem;
    font-weight: bold;
    margin-right: 3.5rem;
    position: relative;
}

ul.f_menu .list-item a {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.copy {
    width: 100%;
    background-color: #14358C;
    font-size: 1.6rem;
    font-weight: 400;
    text-align: center;
    color: #FFF;
    height: 5rem;
    line-height: 5rem;
}

/* フッター */
/* 送信完了 */

.complete {
    margin-bottom: 10.6rem;
    padding-top: 16.8rem;
}

.complete .inner {
    max-width: 120rem;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.complete h3 {
    font-size: 3.2rem;
    margin-bottom: 3rem;
}

.complete p {
    font-size: 1.6rem;
    line-height: 3.2rem;
    margin-bottom: 1rem;
}

.pt-5 {
    padding-top: 5rem;
}

.complete .btn-dark {
    display: inline-block;
    font-weight: 400;
    color: #212529;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 0.375rem 0.75rem;
    font-size: 1.6rem;
    line-height: 3.7rem;
    border-radius: 5px;
    transition: color .4s ease-in-out, background-color .4s ease-in-out, border-color .4s ease-in-out, box-shadow .4s ease-in-out;
}

.complete .btn-dark:hover {
    color: #fff;
    background-color: #23272b;
    border-color: #1d2124;
}


/* SP */
@media screen and (max-width: 860px) {
    .sp-hidden {
        display: none;
    }

    .pc-hidden {
        display: block;
    }

    .logo img {
        width: 110px;
        height: auto;
    }

    /* メニュー */
    /* CSS */
    /* ハンバーガーメニューのスタイル */
    .header_inner {
        position: relative;
    }

    .mobile-nav {
        right: 3.95vw;
        width: 8.13vw;
        height: 5.34vw;
        position: absolute;
    }

    .hamburger-menu {
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        width: 100%;
        height: 5.58vw;
        cursor: pointer;
        position: absolute;
        top: 0;
        bottom: 0;
        margin: auto;
        z-index: 99;
    }

    .bar {
        width: 100%;
        height: 0.93vw;
        background-color: #2D52B7;
        position: absolute;
        left: 0;
    }

    .bar:nth-child(1) {
        top: 0;
        transition: .6s;
    }

    .bar:nth-child(2) {
        top: 2.32vw;
        transition: .6s;
    }

    .bar:nth-child(3) {
        bottom: 0;
        transition: .6s;
    }

    .nav_inner {
        position: fixed;
        height: 100%;
        width: 100vw;
        left: 100%;
        margin: 0;
        top: 0;
        opacity: 0;
        padding-top: 15vw;
        background-color: #FFF;
        transition: .5s;
        visibility: hidden;
    }

    .nav_inner.active {
        left: 0;
        top: 0;
        opacity: 1;
        visibility: visible;
        width: 100vw;
        transition: .5s;
    }

    .nav_inner .h_navi .menu_list {
        display: flex;
        flex-direction: column;
        align-items: center;
        color: #222;
        margin: 0 0 10%;
    }

    #menu-btn-check:checked~.menu-content {
        left: 0;
        /*メニューを画面内へ*/
    }

    /* 閉じるボタンのスタイル */
    .hamburger-menu.active .bar:nth-child(1) {
        transform: rotate(45deg) translate(0, 3.02vw);
        transition: .6s;
    }

    .hamburger-menu.active .bar:nth-child(2) {
        opacity: 0;
        visibility: hidden;
        transition: .6s;
    }

    .hamburger-menu.active .bar:nth-child(3) {
        transform: rotate(-45deg) translate(0, -3.02vw);
        transition: .6s;
    }

    .sp-icon {
        display: flex;
        align-items: center;
    }

    .sp-icon .list-item {
        position: relative;
    }

    .sp-icon .list-item a {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        display: block;
    }

    .sp-icon .list-item:first-child {
        margin-right: 3.48vw;
    }

    .sp-icon .list-item:first-child img {
        max-width: 6.97vw;
    }

    .sp-icon .list-item:nth-child(2) img {
        max-width: 8.37vw;
    }

    .mobile-nav {
        display: block;
    }

    .header .wrapper {
        /* padding-top: 3.25vw; */
        align-items: center;
        column-gap: 26.2vw;
        font-size: 3.72vw;
        line-height: 5.58vw;
        margin-right: 18.3vw;
    }

    .header .wrapper .sns_list {
        display: flex;
        column-gap: 2.09vw;
        margin-top: 1.16vw;
    }

    .header .wrapper .sns_list img {
        width: 5.81vw;
        height: 5.81vw;
    }

    .foot_top,
    .f_navi,
    .foot_top .menu_list {
        flex-direction: column;
    }

    .h_navi {
        flex-direction: column;
        text-align: center;
    }

    .h_navi .menu_list .list-item {
        font-size: 4.18vw;
        margin-right: 0;
    }

    .h_navi .menu_list .list-item:nth-child(4),
    .h_navi .menu_list .list-item:nth-child(5) {
        margin-right: 0;
    }

    .h_navi .menu_list .list-item:nth-child(5) {
        font-size: 5.58vw;
    }


    .nav_inner .h_navi .menu_list {
        row-gap: 5.81vw;
        width: 100%;
    }

    .header .wrapper .h_navi .sns_list {
        margin-bottom: 11.6vw;
    }

    .header .wrapper .h_navi .sns_list img {
        width: 7.44vw;
        height: 7.44vw;
    }

    /* MV */
    .p-swiper-container {
        padding-top: 80vw;
        padding-bottom: 8.33vw;
        text-align: left;
    }

    .mv_ttl {
        text-align: center;
        font-size: 10.2vw;
        margin-bottom: 1.86vw;
        white-space: nowrap;
        text-align: left;
        line-height: 1.3;
    }

    .mv_ttl > img {
        width: calc(100% - 50px);
        max-width: 55.0rem;
        height: auto;
    }
    .mv_ttl_text01 {
        font-size: 5.194vw;
    }

    .mv_ttl strong {
        font-size: 5.58vw;
        padding-bottom: 1.62vw;
        margin-bottom: 1.27vw;
    }

    .wave::after {
        width: 100%;
        height: 1.86vw;
    }

    .y_line::after {
        height: 2.32vw;
    }

    .mv .read_txt {
        font-size: 3.61vw;
        /* margin-bottom: 4.41vw; */
    }

    .swiper_text {
        max-width: 86.2vw;
        width: 100%;
        margin-right: auto;
        top: 21.8vw;
        right: 0;
        left: 0;
        margin: auto;
        bottom: auto;
    }

    .mv .image_section {
        max-width: 45.1vw;
        filter: drop-shadow(6.97vw 6.97vw 6.97vw rgba(0, 0, 0, 0.15));
        bottom: 23vw;
        top: auto;
        width: 46%;
    }

    .swiper-slide {
        padding-left: 0;
    }

    .swiper-slide img {
        max-width: 50vw;
        width: 100%;
        right: 0;
        left: 0;
        margin: auto;
        display: block;
    }

    .swiper-button-next {
        right: 5.81vw;
        width: 10vw;
        height: 10vw;
        top: 68%;
    }

    .swiper-button-next::after {
        content: "";
        background: url(../img/arrow-r.svg) no-repeat center/2.2vw 1.51vw;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        margin: auto;
    }

    .swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets {
        display: none;
    }

    .c_btn {
        max-width: 84.4vw;
        filter: drop-shadow(0px 1.16vw 0px #133a9c);
        border-radius: 1.62vw;
    }

    .c_btn::after {
        content: "";
        background: url(../img/mail.svg) no-repeat center/contain;
        width: 4.06vw;
        height: auto;
        position: absolute;
        right: 3.37vw;
        top: 0;
        bottom: 0;
        margin: auto;
    }

    .c_btn a {
        padding-top: 3.95vw;
        padding-bottom: 4.88vw;
        font-size: 3.95vw;
        line-height: 5.81vw;
    }

    /* MV */
    /* ハヤペイのご紹介 */
    .sec01 {
        position: relative;
        top: -8.13vw;
        margin-bottom: 17.77vw;
    }

    .sec01 .inner {
        border-radius: 8.6vw;
        box-shadow: 2.32vw 2.32vw 5.81vw rgba(0, 0, 0, 0.15);
        max-width: 91.11vw;
        padding-top: 11.6vw;
        padding-bottom: 11.6vw;
    }

    .sec01 .ttl,
    .sec02 .ttl,
    .sec03 .ttl {
        font-size: 8.88vw;
        padding-bottom: 4vw;
        margin-bottom: 6.97vw;
        letter-spacing: -1px;
    }

    .sec02 .ttl {
        margin-bottom: 11.3vw;
    }

    .sec01 .ttl img,
    .sec02 .ttl img,
    .sec03 .ttl img {
        max-width: 43.7vw;
    }



    .sec01 .ttl span,
    .sec02 .ttl span {
        font-size: 6.66vw;
    }

    .sec01 .read_txt {
        font-size: 4.18vw;
        line-height: 7.44vw;
        width: 90%;
        margin-left: auto;
        margin-right: auto;
        text-align: left;
        margin-bottom: 6.66vw;
    }

    .sec01 .bg-blue {
        font-size: 5.11vw;
        max-width: calc(100% - 32px);
        height: 9.3vw;
        line-height: 9.3vw;
        margin-bottom: 2.32vw;
    }

    .sec01 .image_section {
        margin-top: 4.65vw;
        width: 80%;
    }

    .sec01 .bottom_section {
        flex-direction: column;
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }

    .sec01 .point_list .list-item {
        width: 53.4vw;
        height: 53.4vw;
        padding-top: 10.4vw;
        right: 0;
        left: 0;
        margin: auto;
        margin-bottom: 7.65vw;
    }

    .sec01 .point_list .list-item .ttl {
        font-size: 4.65vw;
        line-height: 6.51vw;
        padding-bottom: 3.02vw;
        width: 81%;
        margin-bottom: 1.86vw;
    }

    .sec01 .point_list .list-item .txt {
        font-size: 4.18vw;
        line-height: 5.58vw;
    }

    .sec01 .point_list .list-item::before {
        font-size: 12.7vw;
        line-height: 9.18vw;
        top: -2.9vw;
    }

    .sec01 .point_list .list-item::after {
        font-size: 12.7vw;
        -webkit-text-stroke: 1.62vw #14358C;
        text-stroke: 1.62vw #14358C;
        top: -5.81vw;
    }


    .sec01 .point_list .list-item:first-child {
        top: 0;
        margin-top: 4.65vw;
    }

    .sec01 .bottom_section::before {
        content: none;
    }

    .sec01 .point_list .list-item:nth-child(2) {
        position: relative;
        bottom: 0;
    }

    .sec01 .point_list .list-item:nth-child(3) {
        position: relative;

    }

    .sec01 .sec01-btnarea {
        flex-direction: column;
        gap: 6.66vw 0;
    }

    .sec01 .sec01-btnarea__btn01,
    .sec01 .sec01-btnarea__btn02 {
        width: calc(100% - 32px);
        height: 72px;
        margin: 0 auto;
    }

    .sec01 .sec01-btnarea__btn01 > p:nth-of-type(1),
    .sec01 .sec01-btnarea__btn02 > p:nth-of-type(1) {
        font-size: 1.4rem;
    }

    .sec01 .sec01-btnarea__btn01 > p:nth-of-type(2),
    .sec01 .sec01-btnarea__btn02 > p:nth-of-type(2) {
        font-size: 2.2rem;
    }

    /* ハヤペイのご紹介 */
    /* ハヤペイでできること */
    .sec02 {
        margin-top: 18.6vw;
        margin-bottom: 18.6vw;
    }

    .sec02 .inner {
        width: 94%;
    }

    .sec02 .can_list,
    .flex_box {
        flex-direction: column;
        column-gap: 1.16vw;
    }

    .sec02 .can_list>.list-item {
        border: 2px solid #14358c;
        border-radius: 1.74vw;
        padding-bottom: 2.09vw;
    }

    .sec02 .can_list .flex_box {
        row-gap: 4.65vw;
        justify-content: center;
        align-items: center;
    }

    .sec02 .can_list {
        padding-top: 6.39vw;
        align-items: center;
        row-gap: 18.6vw;
    }

    .sec02 .can_list .list-item:first-child,
    .sec02 .can_list .list-item:last-child {
        max-width: 100%;
        width: 90%;
        border-radius: 1.74vw;
    }

    .sec02 .can_list .list-item .ttl {
        font-size: 5.11vw;
        border-radius: 1.74vw 1.74vw 0px 0px;
        height: 10.4vw;
        line-height: 10.4vw;
        margin-bottom: 4.65vw;
    }

    .sec02 .can_list>.list-item::before {
        width: 23.2vw;
        height: 23.2vw;
        top: -12.7vw;
    }

    .sec02 .can_list>.list-item::after {
        font-size: 9.3vw;
        line-height: 12.5vw;
        top: -10.6vw;
    }

    .sec02 .can_list .list-item .ttl .txt-small {
        font-size: 2.7vw;
    }

    .sec02 .can_list .list-item .top_txt {
        font-size: 4.18vw;
    }

    .sec02 .can_list .list-item:first-child img {
        max-width: 45.1vw;
    }

    .sec02 .can_list .list-item:first-child .top_txt {
        margin-bottom: 4.88vw;
    }

    .sec02 .can_list .list-item:nth-child(2) .top_txt {
        margin-bottom: 3.72vw;
    }

    .sec02 .can_list .list-item:last-child .top_txt {
        margin-bottom: 6.27vw;
    }

    .sec02 .can_list .list-item:last-child .bottom_txt {
        margin-top: 5.81vw;
    }

    .sec02 .can_list .list-item:last-child img {
        max-width: 35.3vw;
    }

    .sec02 .can_list .list-item .bottom_txt {
        font-size: 4.18vw;
        line-height: 6.04vw;
    }

    .sec02 .can_list .list-item .y_line::after {
        height: 2.79vw;
    }

    .sec02 .can_list .list-item:nth-child(2) {
        width: 90%;
        border-radius: 1.74vw;
        max-width: 100%;
    }

    .sec02 .can_list .list-item:nth-child(2) .right_section,
    .sec02 .can_list .list-item:nth-child(2) .left_section {
        max-width: 90%;
    }

    .sec02 .can_list .list-item:nth-child(2) .left_section img,
    .sec02 .can_list .list-item:nth-child(2) .right_section img {
        max-width: 35.5vw;
    }

    .sec02 .can_list .list-item:nth-child(2) .dot_list {
        margin-top: 4.18vw;
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }

    .dot_list .list-item {
        font-size: 3.72vw;
        line-height: 5.58vw;
    }

    .dot_list .list-item::before {
        font-size: 2.32vw;
    }

    /* ハヤペイでできること */
    /* ご利用の流れ */
    .sec03 {
        margin-bottom: 12.4vw;
    }

    .sec03 .inner {
        /* width: 95%; */
    }

    .sec03 .inner .ttl {
        margin-bottom: 5.4vw;
        letter-spacing: normal;
    }

    .sec03 .ttl-sub {
        font-size: 6.66vw;
        letter-spacing: normal;
    }

    .txt-circle {
        margin-top: 6vw;
        border-radius: 6.51vw;
        font-size: 6.51vw;
        margin-left: 0;
        width: 35.8vw;
        height: 9.3vw;
        line-height: 8.3vw;
    }

    .step_box .step_item {
        border-radius: 3.48vw;
        width: 90%;
        margin-left: auto;
        margin-right: auto;
    }

    .step_box .step_item.step01 .ttl:before,
    .step_box .step_item.step02 .ttl:before,
    .step_box .step_item.step03 .ttl:before,
    .step_box .step_item.step04 .ttl:before,
    .step_box .step_item.step05:before,
    .step_box .step_item.step06 .ttl:before,
    .step_box .step_item.step07:before,
    .step_box .step_item.step08>.ttl:before,
    .step_box .step_item.step09>.ttl:before {
        font-size: 6.97vw;
        line-height: 9.06vw;
        top: -5.81vw;
        z-index: 2;
        -webkit-text-stroke: 2.79vw #14358C;
        text-stroke: 2.79vw #14358C;
    }

    .step_box .step_item.step02 .ttl:before {
        -webkit-text-stroke: 1.2rem #5d78bf;
    }

    .step_box .step_item.step01 .ttl:before,
    .step_box .step_item.step09 .ttl:before {
        -webkit-text-stroke: 2.79vw #14358c;
        text-stroke: 2.79vw #14358c;
    }

    .step_box .step_item.step05:before {
        -webkit-text-stroke: 2.79vw #5D78BF;
        text-stroke: 2.79vw #5D78BF;
    }

    .step_box .step_item.step07:before {
        left: 32%;
        -webkit-text-stroke: 2.79vw #5D78BF;
        text-stroke: 2.79vw #5D78BF;
    }

    .step_box .step_item.step09>.ttl:before {
        -webkit-text-stroke: 1.2rem #3abe07;
    }

    .step_box .step_item.step01 .ttl:after,
    .step_box .step_item.step02 .ttl:after,
    .step_box .step_item.step03 .ttl:after,
    .step_box .step_item.step04 .ttl:after,
    .step_box .step_item.step05 .ttl:after,
    .step_box .step_item.step06 .ttl:after,
    .step_box .step_item.step07 .ttl:after,
    .step_box .step_item.step08>.ttl:after,
    .step_box .step_item.step09>.ttl:after {
        font-size: 6.97vw;
        line-height: 9.06vw;
        letter-spacing: 0.05em;
        top: -5.81vw;
    }

    .step_box .step_item.step05 .ttl:after {
        left: 8.13vw;
    }

    .step_box .step_item>.ttl {
        font-size: 5.11vw;
        border-radius: 2.48vw 2.48vw 0px 0px;
        height: 14.4vw;
        line-height: 14.0vw;
        margin-bottom: 6.97vw;
    }

    .step_box .step_item.step01 {
        /* max-width: 90%; */
        width: calc(100% - 32px);
        padding-bottom: 32px;
    }

    .step_box .step_item.step01 .step01-item01 {
        flex-direction: column;
        gap: 26.66vw 0;
    }

    .step_box .step_item.step01 .step01-item01 .step01-item01__img > img {
        max-width: 38.88vw;
    }

    .step_box .step_item.step01 .step01-item01 > div:first-child:after {
        right: 0;
        left: 0;
        transform: rotate(-180deg);
        bottom: -16.66vw;
        top: auto;
    }

    .step_box .step_item.step01 .step01-item01 .step01-item01__txt {
        text-align: center;
        font-size: 3.88vw;
    }

    .step_box .step_item.step01 .txt {
        font-size: 4.18vw;
        line-height: 6.51vw;
        max-width: 100%;
        width: 80%;
        margin-top: 3.02vw;
        margin-bottom: 3.25vw;
        text-align: center;
    }

    .step_box .step_item.step01 .image_section img {
        max-width: 32vw;
    }

    .step_box:nth-child(2) {
        row-gap: 20.9vw;
        margin-bottom: 0;
    }

    .step_box .step_item.step01::after {
        width: 8.37vw;
        height: 10.9vw;
        left: 0;
        right: 0;
        bottom: -15.1vw;
        top: auto;
        margin: auto;
        transform: rotate(90deg);
    }

    .step_box:nth-child(2)::after {
        width: 8.37vw;
        height: 10.9vw;
        left: 0;
        right: 0;
        bottom: 6.66vw;
        top: auto;
        margin: auto;
        transform: rotate(90deg);
    }

    .step_box:nth-child(2) .flex_box {
        row-gap: 6.51vw;
        max-width: 100%;
        width: 90%;
        margin-right: auto;
        margin-bottom: 8.83vw;
    }

    .step_box:nth-child(2) .flex_box .image_section img {
        max-width: 40%;
    }

    .step_box .step_item.step02::after {
        width: 8.37vw;
        height: 10.9vw;
        left: 0;
        right: 0;
        bottom: -15.1vw;
        top: auto;
        margin: auto;
        transform: rotate(90deg);
    }

    .step_box .step_item.step02 {
        max-width: 100%;
        width: 90%;
        margin-bottom: 20.9vw;
    }

    .step_box .step_item.step02 .step02-item01 {
        padding-top: 0;
        display: flex;
        align-items: center;
        gap: 0 2.2vw;
        justify-content: center;
        padding: 3.3vw 0;
    }
    .step_box .step_item.step02 .step02-item01__img {
        margin-bottom: 0;
    }
    .step_box .step_item.step02 .step02-item01__img > img {
        width: 100%;
        max-width: 9.44vw;
        height: auto;
    }

    .step_box .step_item.step02 .step02-item01__txt {
        font-size: 5vw;
    }

    .step_box .step_item.step02 .step02-item01 .step02-item01__txt {

    }

    .step_box:nth-child(2) .right_section .txt {
        font-size: 4vw;
        text-align: left;
        letter-spacing: 0.05em;
        font-weight: 400;
        padding-bottom: 2.55vw;
        border-bottom: 1px solid #14358c;
        margin-bottom: 3.02vw;
    }

    .step_box:nth-child(2) .right_section .howto_list .list-item .txt {
        font-size: 3.72vw;
        line-height: 5.58vw;
        border-bottom: none;
        margin-bottom: 0;
        padding-bottom: 0;
        text-align: center;
        white-space: wrap;
    }

    .howto_list .list-item {
        position: relative;
    }

    .howto_list .list-item::after {
        top: auto;
        left: 0;
        right: 0;
        bottom: -7.9vw;
        transform: initial;
        border-width: 4.41vw 6.27vw 0 6.27vw;
        border-color: #14358C transparent transparent transparent;
    }

    .howto_list {
        flex-direction: column;
        row-gap: 10.2vw;
    }

    .step_box:nth-child(3) {
        row-gap: 20.9vw;
        margin-bottom: 0;
        flex-direction: column;
    }

    .step_box .step_item.step03 {
        max-width: 100%;
        width: 90%;
    }

    .step_box .step_item.step03::after {
        width: 8.37vw;
        height: 10.9vw;
        left: 0;
        right: 0;
        bottom: -15.1vw;
        top: auto;
        margin: auto;
        transform: rotate(90deg);
    }

    .step_box .step_item.step03 .ttl {
        margin-bottom: 6.97vw;
    }

    .step_box .step_item.step03 .flex_box {
        row-gap: 6.51vw;
        max-width: 100%;
        width: 90%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 8.83vw;
    }

    .step_box .step_item.step03 .flex_box .image_section img {
        max-width: 33.2vw;
    }

    .step_box .step_item.step03 .flex_box .right_section .txt {
        text-align: left;
        font-size: 4vw;
        font-weight: 400;
        letter-spacing: 0.05em;
        padding-bottom: 2.55vw;
        border-bottom: 1px solid #14358c;
        margin-bottom: 3.02vw;
    }

    .step_box .step_item.step03 .right_section .howto_list {
        column-gap: 9.3vw;
    }

    .step_box .step_item.step03 .right_section .howto_list .list-item .txt {
        font-size: 3.72vw;
        line-height: 5.58vw;
    }

    .step_box .step_item.step03 .right_section .howto_list .list-item:first-child .txt {
        text-align: left;
        white-space: nowrap;
    }

    .step_box .step_item.step03 .right_section .howto_list .list-item:first-child {
        display: flex;
        column-gap: 1.16vw;
        align-items: center;
    }

    .step_box .step_item.step03 .right_section .howto_list .list-item:first-child img {
        max-width: 40%;
    }

    .step_box .step_item.step03 .right_section .howto_list .list-item::after {
        left: 0;
        right: 0;
    }

    .step_box .step_item.step03 .right_section .howto_list .list-item:last-child img {
        max-width: 100%;
    }

    .step_box .step_item.step04 {
        max-width: 100%;
        width: 90%;
        margin-bottom: 20.9vw;
    }

    .step_box .step_item.step04::after {
        content: "";
        background: url(../img/arrow-b.svg) no-repeat center/contain;
        width: 8.37vw;
        height: 10.9vw;
        position: absolute;
        left: 0;
        right: 0;
        bottom: -15.1vw;
        margin: auto;
        transform: rotate(90deg);
    }

    .step_box .step_item.step04 .ttl {
        margin-bottom: 6.97vw;
    }

    .step_box .step_item.step04 .howto_list {
        align-items: center;
        row-gap: 9.3vw;
        max-width: 100%;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 8.83vw;
    }

    .step_box .step_item.step04 .howto_list .list-item {
        font-size: 3.72vw;
        line-height: 5.58vw;
        text-align: left;
    }

    .step_box .step_item.step04 .howto_list .list-item:first-child {
        text-align: center;
        margin-top: 0;
        margin-bottom: 1.97vw;
    }

    .step_box .step_item.step04 .howto_list .list-item:first-child img {
        max-width: 100%;
        margin-bottom: 8px;
    }

    .step_box .step_item.step04 .howto_list .list-item:last-child {
        max-width: 100%;
        width: 80%;
        text-align: center;
        margin-bottom: 0;
    }

    .step_box .step_item.step04 .howto_list .list-item:last-child img {
        max-width: 40%;
        margin-bottom: 6px;
    }

    .step_box .step_item.step04 .howto_list .list-item .txt {
        text-align: left;
        white-space: wrap;
    }

    .step_box:nth-child(4),
    .bottom_box .step_box:first-child {
        width: 90%;
        margin: auto;
        border-radius: 2.48vw;
        margin-bottom: 20.9vw;

    }

    .step_box .step_item.step05,
    .bottom_box .step_box .step_item.step07 {
        width: 100%;
        border: none;
        display: block;
        margin-bottom: 10.4vw;
        position: relative;
    }

    .step_box .step_item.step05::after {
        content: "";
        background: url(../img/arrow-b.svg) no-repeat center/contain;
        width: 8.37vw;
        height: 10.9vw;
        position: absolute;
        left: 0;
        right: 0;
        bottom: -15.1vw;
        margin: auto;
        transform: rotate(90deg);
    }

    .step_box:nth-child(4) .ttl,
    .bottom_box .step_box:first-child .ttl {
        height: 13.9vw;
        line-height: 13.9vw;
        font-size: 5.58vw;
        padding-left: 13.2vw;
        margin-bottom: 0;
    }

    .step_box:nth-child(4) .ttl::before {
        width: 9.53vw;
        height: 10vw;
    }

    .step_item.step06 {
        margin-bottom: 8.13vw;
        position: relative;
        margin-bottom: 20.9vw;
    }

    .step_box .step_item.step06::after {
        content: "";
        background: url(../img/arrow-b.svg) no-repeat center/contain;
        width: 8.37vw;
        height: 10.9vw;
        position: absolute;
        left: 0;
        right: 0;
        bottom: -15.1vw;
        margin: auto;
        transform: rotate(90deg);
    }

    .step_item.step06 .ttl {
        margin-bottom: 6.97vw;
    }

    .step_item.step06 .flex_box {
        row-gap: 6.51vw;
        max-width: 100%;
        width: 80%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 8.83vw;
    }

    .step_item.step06 .flex_box .left_section .howto_list {
        column-gap: 6.97vw;
    }

    .step_item.step06 .flex_box .left_section .howto_list .list-item .txt {
        font-size: 3.72vw;
        line-height: 5.58vw;
        letter-spacing: 0.05em;
        font-weight: 400;
    }

    .kome {
        font-size: 2.32vw;
    }

    .step_item.step06 .flex_box .left_section {
        padding-bottom: 10.6vw;
        padding-right: 0;
        border-bottom: 1px solid #14358c;
        border-right: none;
    }

    .step_item.step06 .flex_box .left_section .howto_list .list-item:first-child {
        margin-top: 0.81vw;
    }

    .step_item.step06 .flex_box .left_section .howto_list .list-item:first-child img {
        max-width: 90%;
        margin-bottom: 3.25vw;
    }

    .step_item.step06 .flex_box .left_section .howto_list .list-item:last-child {
        margin-top: 3.95vw;
    }

    .step_item.step06 .flex_box .left_section .howto_list .list-item:last-child img {
        max-width: 40%;
        margin-bottom: 2.9vw;
    }

    .step_item.step06 .flex_box .image_section {
        margin-top: 1.97vw;
    }

    .step_item.step06 .flex_box .image_section img {
        max-width: 90%;
    }

    .step_txt {
        font-size: 6.04vw;
        margin-bottom: 3.25vw;
    }

    .bottom_box {
        width: calc(100% - 32px);
        margin: 0 auto;
        background-color: #EFFAFE;
        border-radius: 2.48vw;
        border: 2px dashed #5d78bf;
        padding-top: 6.39vw;
        padding-bottom: 6.39vw;
    }

    .bottom_box .inner {
        max-width: 127.9vw;
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

    .bottom_box .step_box:nth-child(2) {
        margin-bottom: 10.4vw;
    }

    .bottom_box .step_box:first-child,
    .bottom_box .step_box:nth-child(2) {
        position: relative;
        margin-bottom: 20.9vw;
    }

    .bottom_box .step_box:first-child::after,
    .bottom_box .step_box:nth-child(2)::after {
        content: "";
        background: url(../img/arrow-b.svg) no-repeat center/contain;
        width: 8.37vw;
        height: 10.9vw;
        position: absolute;
        left: 0;
        right: 0;
        bottom: -15.1vw;
        margin: auto;
        transform: rotate(90deg);
    }

    .bottom_box .step_box:first-child .ttl {
        padding-left: 8.13vw;
        width: 36%;
    }

    .bottom_box .step_box:first-child .ttl::before {
        width: 8.13vw;
        height: auto;
    }

    .step_item.step08>.flex_box {
        row-gap: 6.51vw;
        max-width: 100%;
        width: 80%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 8.83vw;
    }

    .step_item.step08 .flex_box .ttl {
        font-size: 4.25vw;
        letter-spacing: 0.05em;
        font-weight: bold;
        color: #333333;
        padding-bottom: 0;
        margin-bottom: 1.74vw;
    }

    .step_item.step08 .flex_box .ttl .txt-blue {
        font-size: 5.95vw;
    }

    .step_item.step08 .flex_box .left_section .image_section {
        flex-direction: column;
        row-gap: 2.32vw;
        padding-right: 0;
        padding-bottom: 3.72vw;
        border-right: none;
        border-bottom: 1px solid #14358c;
    }

    .step_item.step08 .flex_box .left_section .image_section img {
        max-width: 80%;
    }

    .step_item.step08 .flex_box .left_section .image_section .txt,
    .step_item.step08 .flex_box .right_section .txt {
        font-size: 3.72vw;
        line-height: 5.58vw;
        white-space: inherit;
        display: inline-block;
        word-break: break-all;
    }

    .step_item.step08 .flex_box .right_section {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .step_item.step08 .flex_box .right_section img {
        max-width: 42.7vw;
        margin-bottom: 3.25vw;
    }

    .step_box .step_item.step09 .ttl {
        margin-bottom: 6.97vw;
    }

    .step_box .step_item.step09 .flex_box {
        row-gap: 6.51vw;
        max-width: 100%;
        width: 80%;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 8.83vw;
    }

    .step_box .step_item.step09 .flex_box img {
        max-width: 40%;
    }

    .step_box .step_item.step09 .flex_box .txt_box {
        display: flex;
        flex-direction: column;
    }

    .step_box .step_item.step09 .flex_box .txt_box .ttl {
        font-size: 6.27vw;
        line-height: 8.37vw;
        margin-bottom: 3.72vw;
    }

    .step_box .step_item.step09 .flex_box .txt_box .txt {
        font-size: 4.18vw;
        line-height: 6.97vw;
        text-align: left;
    }


    /* ご利用の流れ */
    /* よくある質問 */
    .sec04 {
        text-align: center;
        margin-bottom: 13.9vw;
    }

    .sec04 .inner .ttl {
        font-size: 8.13vw;
        margin-bottom: 5vw;
    }

    .sec04 .inner {
        width: 90%;
    }

    .qa_inner .qa-box {
        border: 2px solid #14358c;
        border-radius: 2.32vw;
        margin-bottom: 2.32vw;
    }

    .qa_inner .qa-box:last-child {
        margin-bottom: 0;
    }

    .qa_inner .qa-box dt,
    .qa_inner .qa-box dd {
        position: relative;
        font-size: 3.72vw;
        line-height: 5.58vw;
        font-weight: 500;
        height: auto;
        display: flex;
        align-items: stretch;
        cursor: pointer;
    }

    .qa_inner .qa-box dt p {
        max-width: 75%;
        margin-top: 4.65vw;
        margin-bottom: 4.65vw;
    }

    .qa_inner .qa-box dd p {
        border-bottom: none;
        max-width: 75%;
        margin-top: 4.65vw;
        margin-bottom: 4.65vw;
    }

    .qa-box dt::before {
        width: 3.72vw;
        height: 3.72vw;
        border-right: 0.69vw solid #14358C;
        border-bottom: 0.69vw solid #14358C;
        right: 3.25vw;
    }

    .qa-box dt.open::before {
        transform: rotate(-135deg);
    }

    .qa_inner .qa-box dt span,
    .qa_inner .qa-box dd span {
        font-size: 6.97vw;
        margin-right: 3.48vw;
        width: 9.76vw;
        height: auto;
    }

    .qa_inner .qa-box dt span {
        border-radius: 1.32vw 0px 0px 1.32vw;
    }

    .qa_inner .qa-box dt.open span {
        border-radius: 1.32vw 0px 0px 0px;
    }

    .qa_inner .qa-box dd span {
        font-size: 6.97vw;
        margin-right: 3.48vw;
        width: 9.76vw;
        height: auto;
        max-width: initial;
    }

    .qa_inner .qa-box dd {
        font-size: 3.72vw;
        line-height: 5.58vw;
        font-weight: 400;
        text-align: left;
        border-top: 1px solid #14358c;
    }

    /* よくある質問 */
    /* お問い合わせ */
    #contact {
        margin-bottom: 13.9vw;
    }

    #contact .inner .ttl {
        font-size: 8.13vw;
        margin-bottom: 5vw;
    }

    .contact_form {
        flex-direction: column;
        margin-bottom: 3.48vw;
    }

    .contact_form dt {
        font-size: 3.72vw;
        width: 100%;
        margin-bottom: 2.32vw;
    }

    .contact_form dt .required {
        font-size: 2.79vw;
        margin-left: 1.16vw;
    }

    .contact_form dd {
        width: 100%;
    }

    .contact_form dd label {
        margin-right: 2.32vw;
        font-size: 3.72vw;
    }

    input[type="checkbox"] {
        width: 4.48vw;
        height: 4.48vw;
        margin-right: 1.16vw;
    }

    textarea {
        height: 23.2vw;
        min-height: 23.2vw;
        padding: 0.46vw;
        font-size: 2.79vw;
        line-height: 3.72vw;
    }

    input {
        height: 5.81vw;
        font-size: 2.79vw;
        line-height: 5.81vw;
        padding: 0.46vw;
    }

    .button__body {
        max-width: 34.8vw;
        border-radius: 5.81vw;
        height: 6.97vw;
    }

    .button__body input {
        border-radius: 5.81vw;
        height: 6.97vw;
        line-height: 5.81vw;
    }

    span.wpcf7-not-valid-tip,
    .wpcf7-response-output {
        font-size: 2.09vw;
        line-height: 3.72vw;
    }

    /* お問い合わせ */
    /* 別ページ */
    .blank_page {
        font-size: 3.72vw;
        line-height: 5.58vw;
        margin-bottom: 13.9vw;
    }



    /* 特定商取引法に基づく表記 */
    .dsct {
        margin-bottom: 13.9vw;
    }

    .dsct .inner .ttl {
        font-size: 8.13vw;
        margin-bottom: 5vw;
    }

    .dsct table {
        width: 100%;
    }

    .dsct table th {
        width: 100%;
        display: block;
        font-size: 3.72vw;
        line-height: 6.3vw;
        text-align: center;
        padding-bottom: 2.32vw;
        padding-top: 2.32vw;
        padding-left: 2.32vw;
        padding-right: 2.32vw;
    }

    .dsct table td {
        width: 100%;
        display: block;
        font-size: 3.72vw;
        line-height: 5.81vw;
        padding-left: 2.32vw;
        padding-right: 2.32vw;
        padding-top: 2.32vw;
        padding-bottom: 2.32vw;
        border-left: 1px solid #333;
    }

    /* 特定商取引法に基づく表記 */
    /* 送信完了 */
    .contact_form dd .check_item {
        flex-direction: column;
        row-gap: 2.4vw;
    }

    /* フッター */
    .footer .image_section {
        padding-bottom: 6.97vw;
        border-bottom: 0.69vw solid #222;
        margin-bottom: 6.97vw;
    }

    .footer .image_section img {
        max-width: 40%;
    }

    .footer .image_section::before {
        max-width: 37.2vw;
        width: 19%;
        height: 28.3vw;
        left: 5%;
        bottom: -4%;
    }

    .footer .image_section::after {
        max-width: 49vw;
        width: 26%;
        height: 31.6vw;
        right: 3%;
        bottom: -8%;
    }

    .foot_bottom {
        margin-bottom: 4.3vw;
        padding-top: 8.8vw;
    }

    .foot_bottom .logo img {
        max-width: 55%;
        width: auto;
    }

    .f_navi .menu_list {
        display: flex;
        column-gap: 2.2vw;
        justify-content: space-between;
        margin-bottom: 3vw;
    }

    .f_navi .menu_list .list-item.list-item--tel {
        font-size: 5.58vw;
        padding-left: 9.76vw;
    }

    .f_navi .menu_list .list-item.list-item--tel::before {
        width: 7.67vw;
        height: 5.11vw;
    }

    .foot_bottom .inner {
        width: 90%;
        flex-direction: column;
        row-gap: 4.65vw;
    }

    .copy {
        font-size: 2.79vw;
        height: 6.97vw;
        line-height: 6.97vw;
    }

    ul.f_menu {
        flex-direction: column;
        row-gap: 5.81vw;
    }

    ul.f_menu .list-item {
        margin-right: 0;
        text-align: center;
        font-size: 4.18vw;
    }

}


.contact-form_wrap .contact-form-header {
    background-color: #005eae;
  }

  .contact-form_wrap .contact-form-header .contact-form-header_inner {
    padding: 60px 0;
  }

  @media screen and (max-width: 980px) {
    .contact-form_wrap .contact-form-header .contact-form-header_inner {
      padding: 30px 16px;
    }
  }

  .contact-form_wrap .contact-form-header .contact-form-header_inner .contact-form-header_text01 {
    text-align: center;
    color: #fff;
    font-size: 34px;
    font-weight: bold;
    margin-bottom: 24px;
  }

  @media screen and (max-width: 980px) {
    .contact-form_wrap .contact-form-header .contact-form-header_inner .contact-form-header_text01 {
      font-size: 26px;
      margin-bottom: 20px;
    }
  }

  .contact-form_wrap .contact-form-header .contact-form-header_inner .contact-form-header_text02 {
    text-align: center;
    color: #fff;
    font-size: 16px;
    margin-bottom: 24px;
  }

  @media screen and (max-width: 980px) {
    .contact-form_wrap .contact-form-header .contact-form-header_inner .contact-form-header_text02 {
      font-size: 14px;
      margin-bottom: 16px;
    }
  }

  .contact-form_wrap .contact-form-header .contact-form-header_inner .contact-form_telbox {
    width: 592px;
    height: 94px;
    background-color: #fff;
    border-radius: 15px;
    display: flex;
    align-items: center;
    gap: 0 72px;
    margin: 0 auto;
    position: relative;
  }

  @media screen and (max-width: 980px) {
    .contact-form_wrap .contact-form-header .contact-form-header_inner .contact-form_telbox {
      display: block;
      text-align: center;
      width: 100%;
      height: auto;
      max-width: 480px;
      margin: 0 auto 16px;
      padding: 16px 0;
    }
  }

  .contact-form_wrap .contact-form-header .contact-form-header_inner .contact-form_telbox:after {
    content: "";
    display: block;
    width: 1px;
    height: 62px;
    position: absolute;
    background-color: #d9d9d9;
    top: 16px;
    left: 248px;
  }

  @media screen and (max-width: 980px) {
    .contact-form_wrap .contact-form-header .contact-form-header_inner .contact-form_telbox:after {
      display: none;
    }
  }

  .contact-form_wrap .contact-form-header .contact-form-header_inner .contact-form_telbox > p {
    font-size: 16px;
    font-weight: bold;
    margin-left: 40px;
  }

  .contact-form_wrap .contact-form-header .contact-form-header_inner .contact-form_telbox > div > a {
    font-family: "Roboto", "Noto Sans JP", Meiryo, sans-serif;
    font-size: 32px;
    font-weight: bold;
    background: url(/wp-content/themes/hayaregiwp/images/logo_freedial.svg) no-repeat;
    background-size: 48px auto;
    background-position: left center;
    padding-left: 52px;
    text-decoration: none;
    color: inherit;
  }

  .contact-form_wrap .contact-form-header .contact-form-header_inner .contact-form_telbox > div > p {
    font-size: 12px;
    color: #888;
    line-height: 1.2;
  }

  .contact-form_wrap .contact-kintone-wrap {
    padding: 60px 0 0;
    background-color: #fff;
  }

  @media screen and (max-width: 980px) {
    .contact-form_wrap .contact-kintone-wrap {
      padding: 40px 16px;
    }
  }