@charset "UTF-8";

@media (max-width: 768px) {
    .pc {
        display: none !important;
    }
}
@media (min-width: 769px) {
    .sp {
        display: none !important;
    }
}

html {
    -moz-tab-size: 4;
    -o-tab-size: 4;
    tab-size: 4;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    word-break: break-word;
    background-color: #fff;
}
body {
    padding: 0;
    min-width: 100%;
    margin: 0 auto;
}
div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, input, textarea {
    margin: 0;
    padding: 0;
    border: none;
    font-size: 100%;
    font-style: normal;
}

*, button, fieldset, hr, iframe, img {
    border: 0;
}
* {
    margin: 0;
}
*, html {
    font-size: 100%;
    border: 0;
}
*, ::after, ::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-repeat: no-repeat;
}
*, :focus[data-focus-method=mouse]:not(input):not(textarea):not(select), :focus[data-focus-method=touch]:not(input):not(textarea):not(select) {
    outline: 0;
}
*, progress, sub, sup {
    vertical-align: baseline;
}


a {
    text-decoration: none;
}
ul, ol {
    list-style: none;
}
::marker {
    content: none;
}


img {
    height: auto;
    border-style: none;
    max-width: 100%;
}


p {
    margin-bottom: 0;
}
body {
    background-color: #fff;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.5;
    color: #000;
    overflow-x: initial;
}
body.fixed {
    overflow: hidden;
}

.inner {
    width: 100%;
    max-width: 1290px;
    margin: 0 auto;
    padding: 0 30px;
}

/* header */
#header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10;
    /* 260331 */
    padding: 7px 0;
    /* END 260331 */
    transition: all 0.3s ease;
}
.admin-bar #header {
    top: 32px;
}
#header.scrollBg {
    background-color: #fff;
}
#header .inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
#header .headerBar .hdLogo {
    /* 260331 */
    width: 250px;
    transform: translateY(-2px);
    /* END 260331 */
}
#header .mainMenu {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 49px;
    flex: 1;
}
#header .mainMenu .menu {
    display: flex;
    flex-wrap: wrap;
    gap: 48px;
}
#header .mainMenu .menu li a {
    font-size: 18px;
    font-weight: bold;
    color: #000;
}
#header .mainMenu .menuConsutlBtn {
    width: 182px;
}
#header .mainMenu .menuConsutlBtn a {
    display: block;
    text-align: center;
    font-size: 18px;
    font-weight: bold;
    color: #000;
    background-color: #fff;
    border-radius: 50px;
    padding: 12px 5px 13px;
}
#header.scrollBg .mainMenu .menuConsutlBtn a {
    color: #fff;
    background-color: #c1272d;
}
/* header */

/* sectionCta */
.sectionCta {
    padding: 80px 0 77px;
}
.sectionCta .inner {
    max-width: 1162px;
}
.sectionCta .ctaContact {
    text-align: center;
    border: 10px solid #ebf5ff;
    padding: 22px 32px 30px;
    margin-bottom: 40px;
}
.sectionCta .ctaContact .ctaTitle {
    position: relative;
    display: inline-block;
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 14px;
}
.sectionCta .ctaContact .ctaTitle::before {
    content: "";
    position: absolute;
    bottom: -18px;
    left: 50%;
    transform: translateX(-50%);
    width: 110%;
    aspect-ratio: 648/12;
    background: url(../images/small-amount-common/section-cta-line.png) no-repeat center/ cover;
}
.sectionCta .ctaContact .ctaText {
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 23px;
}
.sectionCta .ctaContact .contactWrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}
.sectionCta .ctaContact .contactWrap .ctaMail {
    width: calc(50% - 21px);
}
.sectionCta .ctaContact .contactWrap .ctaMail a {
    position: relative;
    display: block;
    text-align: center;
    font-size: 26px;
    font-weight: bold;
    color: #fff;
    background: linear-gradient(90deg, rgba(193, 39, 45, 1) 0%, rgba(216, 71, 77, 1) 100%);
    border-radius: 10px;
    letter-spacing: -1px;
    padding: 25px 5px 26px;
    box-shadow: 0 5px 10px rgb(193, 39, 45,0.3);
}
.sectionCta .ctaContact .contactWrap .ctaMail a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 31px;
    transform: translateY(-50%);
    width: 38px;
    aspect-ratio: 38/29;
    background: url(../images/small-amount-common/icon-mail-white.png) no-repeat center/ cover;
}
.sectionCta .ctaContact .contactWrap .ctaMail a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 30px;
    transform: translateY(-50%);
    width: 36px;
    aspect-ratio: 1/1;
    background: url(../images/small-amount-common/icon-arrow-red.png) no-repeat center/ cover;
}
.sectionCta .ctaContact .contactWrap .ctaPhone {
    flex: 1;
    max-width: calc(50% - 5px);
}
.sectionCta .ctaContact .contactWrap .ctaPhone a {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 5px;
    text-align: center;
    font-weight: bold;
    color: #363686;
}
.sectionCta .ctaContact .contactWrap .ctaPhone a .icon {
    width: 44px;
    transform: translate(1px, 1px);
}
.sectionCta .ctaContact .contactWrap .ctaPhone a .phone {
    display: inline-block;
    font-size: 54px;
    letter-spacing: -4px;
    line-height: 1;
    transform: translate(1px, -3px);
    margin-right: 7px;
}
.sectionCta .ctaContact .contactWrap .ctaPhone a .note {
    font-size: 16px;
}
.sectionCta .ctaContact .contactWrap .ctaPhone a .note .time {
    font-size: 15px;
    letter-spacing: -1.4px;
}
.sectionCta .ctaContact .contactWrap .ctaPhone a .noteTitle {
    display: block;
    text-align: center;
    font-size: 14px;
    border: 1px solid #363686;
    padding: 2px 5px;
    margin-bottom: 3px;
    letter-spacing: 2px;
    line-height: 1;
}
.sectionCta .ctaConsult {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    text-align: center;
    background: #285ae1;
    overflow: hidden;
    padding: 26px 77px 32px;
}
.sectionCta .ctaConsult .consultPhoto {
    position: absolute;
    bottom: 0;
    left: 7.6%;
    width: 45.8%;
    aspect-ratio: 504/140;
}
.sectionCta .ctaConsult .consultWrap {
    width: 100%;
    max-width: 454px;
}
.sectionCta .ctaConsult .consultWrap .consutlNote {
    position: relative;
    display: inline-block;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
    padding: 0 30px;
    letter-spacing: -0.8px;
    margin-bottom: 6px;
}
.sectionCta .ctaConsult .consultWrap .consutlNote::before,
.sectionCta .ctaConsult .consultWrap .consutlNote::after {
    content: "";
    position: absolute;
    top: 52%;
    left: 0;
    transform: translateY(-50%);
    width: 11px;
    aspect-ratio: 11/32;
    background: url(../images/small-amount-common/icon-line-double-l-white.png) no-repeat center/ cover;
}
.sectionCta .ctaConsult .consultWrap .consutlNote::after {
    left: auto;
    right: 3px;
    transform: translateY(-50%) matrix(-1, 0, 0, 1, 0, 0);
}
.sectionCta .ctaConsult .consultWrap .consutlBtn {
    background-color: #fff;
    border-radius: 50px;
}
.sectionCta .ctaConsult .consultWrap .consutlBtn a {
    position: relative;
    display: block;
    text-align: center;
    font-size: 22px;
    font-weight: bold;
    color: #363532;
    background: #fff;
    border-radius: 50px;
    letter-spacing: -1px;
    padding: 12px 18px 15px 5px;
}
.sectionCta .ctaConsult .consultWrap .consutlBtn a::before {
    content: "";
    position: absolute;
    top: 53%;
    left: 34px;
    transform: translateY(-50%);
    width: 28px;
    aspect-ratio: 28/37;
    background: url(../images/small-amount-common/icon-simulator-blue.png) no-repeat center/ cover;
}
.sectionCta .ctaConsult .consultWrap .consutlBtn a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    width: 36px;
    aspect-ratio: 1/1;
    background: url(../images/small-amount-common/icon-arrow-white.png) no-repeat center/ cover;
}
/* sectionCta */

/* sectionTitle */
.sectionTitle {
    text-align: center;
    font-size: 60px;
    font-weight: bold;
    color: #000066;
    letter-spacing: -4px;
}
/* sectionTitle */

/* scrollToTop */
.scrollToTop {
    position: fixed;
    bottom: 120px;
    right: calc((100% - 1290px)/2 + 30px);
    width: 60px;
    aspect-ratio: 1/1;
    z-index: 9;
    display: none;
}
.scrollToTop a {
    display: block;
    width: 100%;
    border-radius: 50%;
    box-shadow: 0 5px 10px rgb(0, 0, 0, 0.3);
    transition: all .3s;
}
.scrollToTop a img {
    width: 100%;
}
/* scrollToTop */

/* footer */
#footer {
    background-color: #000066;
}
#footer .ftWrap {
    padding: 79px 0 85px;
}
#footer .ftWrap .ftLogo {
    width: 280px;
    margin-bottom: 55px;
}
#footer .ftWrap .ftInfo {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}
#footer .ftWrap .ftInfo .infoCertify {
    width: 281px;
    transform: translateX(1px);
}
#footer .ftWrap .ftInfo .infoCertify .certifyList {
    margin-bottom: 9px;
}
#footer .ftWrap .ftInfo .infoCertify .certifyList li {
    position: relative;
    display: block;
}
#footer .ftWrap .ftInfo .infoCertify .certifyList li a {
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    letter-spacing: -0.3px;
    line-height: 2.1;
    margin-bottom: 9px;
}
#footer .ftWrap .ftInfo .infoCertify .certifyLogo {
    width: 60px;
}
#footer .ftWrap .ftInfo .infoCompany {
    position: relative;
    flex: 1;
    max-width: calc(96.8% - 304px);
    padding-left: 6.7%;
    transform: translateY(6px);
}
#footer .ftWrap .ftInfo .infoCompany::before {
    content: "";
    position: absolute;
    top: 51%;
    left: 0;
    transform: translateY(-50%);
    width: 1px;
    height: 99%;
    background-color: #333385;
}
#footer .ftWrap .ftInfo .infoCompany .companyWrap {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 20px;
    color: #fff;
}
#footer .ftWrap .ftInfo .infoCompany .companyWrap:not(:last-child) {
    margin-bottom: 8px;
}
#footer .ftWrap .ftInfo .infoCompany .companyWrap .companyName {
    width: 121px;
    font-size: 16px;
    font-weight: 500;
}
#footer .ftWrap .ftInfo .infoCompany .companyWrap .companySub {
    flex: 1;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: -0.7px;
}
#footer .ftWrap .ftInfo .infoCompany .companyWrap .companyList {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 39px;
    flex: 1;
}
#footer .ftWrap .ftInfo .infoCompany .companyWrap .companyList li {
    padding-left: 13px;
}
#footer .ftWrap .ftInfo .infoCompany .companyWrap .companyList li .name {
    position: relative;
    display: block;
    font-size: 16px;
    margin-bottom: 5px;
}
#footer .ftWrap .ftInfo .infoCompany .companyWrap .companyList li .name::before {
    content: "";
    position: absolute;
    top: 54%;
    left: -13px;
    transform: translateY(-50%);
    width: 5px;
    height: 1px;
    background-color: #fff;
}
#footer .ftWrap .ftInfo .infoCompany .companyWrap .companyList li .sub {
    font-size: 14px;
    font-weight: 500;
    letter-spacing: -0.9px;
    line-height: 1.7;
    color: #c9d0d9;
}
#footer #copyright {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 15px;
    font-weight: 500;
    color: #fff;
    background-color: #00003f;
    padding: 20px 0;
}
/* footer */

/* ctaFixed */
.ctaFixed {
    position: sticky;
    display: inline-block;
    bottom: -200px;
    left: 0;
    width: 100%;
    z-index: 100;
    transition: bottom 0.4s ease, opacity 0.4s ease;
    opacity: 0;
    visibility: hidden;
}

.ctaFixed.show {
    bottom: 0;
    opacity: 1;
    visibility: visible;
}
.ctaFixedPc {
    display: inline-block;
    width: 100%;
    background: #fff;
    padding: 17px 0;
}

.ctaFixedPc .inner {
    max-width: 1260px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 0 15px;
}

.ctaFixedPc .ctaTitle {
    text-align: center;
    margin-left: 7px;
    transform: translateY(4px);
}

.ctaFixedPc .ctaTitle .sub {
    position: relative;
    display: inline-block;
    font-size: 16px;
    font-weight: bold;
    color: #555;
    letter-spacing: -0.7px;
}

.ctaFixedPc .ctaTitle .sub::before,
.ctaFixedPc .ctaTitle .sub::after  {
    content: "";
    position: absolute;
    top: 57%;
    left: -15px;
    transform: translateY(-50%);
    width: 9px;
    aspect-ratio: 9/26;
    background: url(../images/small-amount-common/icon-line-double-l-black.png) no-repeat center/ cover;
}
.ctaFixedPc .ctaTitle .sub::after {
    right: -14px;
    left: auto;
    transform: translateY(-50%) matrix(-1, 0, 0, 1, 0, 0);
}

.ctaFixedPc .ctaTitle .main {
    display: block;
    font-size: 26px;
    font-weight: bold;
    color: #363532;
    letter-spacing: -1.5px;
}

.ctaFixedPc .ctaPhoneWrap {
    text-align: center;
    margin-left: 27px;
    transform: translateY(4px);
}

.ctaFixedPc .ctaPhoneWrap .number {
    display: flex;
    align-items: center;
    color: #000066;
    font-size: 36px;
    font-weight: bold;
    line-height: 1;
    letter-spacing: -2px;
    margin-bottom: 2px;
}

.ctaFixedPc .ctaPhoneWrap .number .icon {
    width: 29px;
    margin-right: 3px;
    transform: translateY(2px);
}

.ctaFixedPc .ctaPhoneWrap .time {
    font-size: 16px;
    color: #000066;
    font-weight: bold;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateX(17px);
}

.ctaFixedPc .ctaPhoneWrap .time .box {
    border: 1px solid #000066;
    padding: 2px 6px;
    margin-right: 5px;
    font-size: 14px;
    line-height: 1;
}
.ctaFixedPc .ctaPhoneWrap .time .detail {
    letter-spacing: 0;
}

.ctaFixedPc .ctaBtnList {
    display: flex;
    gap: 10px;
}

.ctaFixedPc .ctaBtnList li a {
    position: relative;
    display: block;
    text-align: center;
    width: 245px;
    padding: 14px 15px 13px 17px;
    border-radius: 10px;
    color: #fff;
    font-weight: bold;
    font-size: 22px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.15);
    letter-spacing: -1px;
}

.ctaFixedPc .ctaBtnList .btnRed a {
    background: #c92f2f;
}

.ctaFixedPc .ctaBtnList .btnBlue a {
    background: #285ae1;
}

.ctaFixedPc .ctaBtnList li a .icon {
    position: absolute;
    top: 52%;
    left: 10px;
    transform: translateY(-50%);
    width: 24px;
}
.ctaFixedPc .ctaBtnList .btnBlue a .icon {
    width: 19px;
    top: 50%;
    left: 15px;
}

.ctaFixedPc .ctaBtnList li a .arrow {
    position: absolute;
    top: 52%;
    right: 10px;
    transform: translateY(-50%);
    width: 23px;
    aspect-ratio: 1 / 1;
}

.ctaFixedPc .ctaBtnList li a .arrow img {
    width: 100%;
}
@media(max-width: 1300px) and (min-width: 769px) {
    .ctaFixedPc .ctaTitle {
        margin-left: 0;
    }
    .ctaFixedPc .ctaTitle .sub {
        font-size: 14px;
    }
    .ctaFixedPc .ctaTitle .sub::before {
        left: -10px;
    }
    .ctaFixedPc .ctaTitle .sub::after {
        right: -10px;
    }
    .ctaFixedPc .ctaTitle .main {
        font-size: 22px;
    }
    .ctaFixedPc .ctaPhoneWrap .number {
        font-size: 32px;
        letter-spacing: -2px;
    }
    .ctaFixedPc .ctaPhoneWrap {
        margin-left: 10px;
    }
    .ctaFixedPc .ctaPhoneWrap .time {
        font-size: 14px;
        transform: translateX(20px);
    }
    .ctaFixedPc .ctaBtnList li a {
        font-size: 18px;
    }

    .scrollToTop {
        right: 30px;
    }
}

@media(max-width: 1150px) and (min-width: 769px) {
    .sectionCta .ctaContact .contactWrap {
        justify-content: center;
    }
    .sectionCta .ctaContact .contactWrap .ctaMail {
        width: 500px;
    }
    .sectionCta .ctaContact .contactWrap .ctaPhone {
        flex: none;
        max-width: none;
        width: 500px;
    }
    #footer .ftWrap .ftInfo .infoCompany {
        max-width: calc(100% - 301px);
        padding-left: 0;
    }
    #footer .ftWrap .ftInfo .infoCompany::before {
        left: -35px;
    }

    .ctaFixedPc .ctaBtnList li a {
        width: 190px;
    }
}
@media(max-width: 1100px) and (min-width: 769px) {
    /* 260331 */
    #header .mainMenu {
        gap: 18px;
    }
    #header .mainMenu .menu {
        gap: 13px;
    }
    /* END 260331 */
    
    #header .mainMenu .menu li a {
        font-size: 16px;
    }
    #header .mainMenu .menuConsutlBtn {
        width: 160px;
    }
    #header .mainMenu .menuConsutlBtn a {
        font-size: 16px;
    }
    .sectionCta .ctaConsult .consultWrap {
        max-width: 415px;
    }
    .sectionCta .ctaConsult .consultPhoto {
        left: 1.5%;
        width: 47%;
    }
}
@media(max-width: 1050px) and (min-width: 769px) {
    .sectionTitle {
        font-size: 45px;
        letter-spacing: -3px;
    }

    .ctaFixedPc .ctaTitle .sub {
        font-size: 12px;
    }
    .ctaFixedPc .ctaTitle .main {
        font-size: 20px;
    }
    .ctaFixedPc .ctaPhoneWrap {
        margin-left: 0;
    }
    .ctaFixedPc .ctaPhoneWrap .number {
        font-size: 28px;
    }
    .ctaFixedPc .ctaPhoneWrap .time {
        font-size: 12px;
    }
    .ctaFixedPc .ctaBtnList li a {
        width: 170px;
        font-size: 16px;
    }
    .ctaFixedPc .ctaBtnList li a .icon {
        left: 8px;
        width: 20px;
    }
    .ctaFixedPc .ctaBtnList li a .arrow {
        width: 20px;
        right: 8px;
    }
    .ctaFixedPc .ctaBtnList .btnBlue a .icon {
        left: 10px;
        width: 16px;
    }
    .ctaFixedPc .ctaPhoneWrap .time .box {
        font-size: 10px;
    }
}
@media(max-width: 950px) and (min-width: 769px) {
    .sectionCta .ctaConsult {
        padding: 25px 50px;
    }

    #footer .ftWrap {
        padding: 60px 0;
    }
    #footer .ftWrap .ftLogo {
        margin: 0 auto 50px;
    }
    #footer .ftWrap .ftInfo {
        justify-content: center;
    }
    #footer .ftWrap .ftInfo .infoCertify {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: space-between;
        gap: 20px;
        width: 350px;
    }
    #footer .ftWrap .ftInfo .infoCompany {
        flex: none;
        max-width: none;
        width: 100%;
    }
    #footer .ftWrap .ftInfo .infoCompany::before {
        top: -20px;
        left: 0;
        transform: translate(0);
        width: 100%;
        height: 1px;
    }

    .ctaFixedPc .ctaTitle .sub {
        font-size: 10px;
    }
    .ctaFixedPc .ctaTitle .main {
        font-size: 18px;
    }
    .ctaFixedPc .ctaPhoneWrap .number {
        font-size: 24px;
    }
    .ctaFixedPc .ctaPhoneWrap .number .icon {
        width: 24px;
        transform: translateY(3px);
    }
    .ctaFixedPc .ctaPhoneWrap .time {
        font-size: 10px;
        transform: translateX(14px);
    }
    .ctaFixedPc .ctaPhoneWrap .time .box {
        font-size: 10px;
        padding: 2px 3px;
    }
    .ctaFixedPc .ctaBtnList li a {
        width: 155px;
    }
}
@media(max-width: 900px) and (min-width: 769px) {
    /* 260331 */
    #header .headerBar .hdLogo {
        width: 200px;
    }
    #header .mainMenu {
        gap: 15px;
    }
    #header .mainMenu .menu {
        gap: 10px;
    }
    /* END 260331 */
    #header .mainMenu .menu li a {
        font-size: 14px;
    }
    #header .mainMenu .menuConsutlBtn {
        width: 140px;
    }
    #header .mainMenu .menuConsutlBtn a {
        font-size: 14px;
    }

    .sectionCta .ctaContact .ctaTitle {
        font-size: 18px;
    }
    .sectionCta .ctaContact .ctaText {
        font-size: 36px;
    }
    .sectionCta .ctaConsult {
        padding: 25px 30px;
    }
}
@media(max-width: 850px) and (min-width: 769px) {
    .sectionCta .ctaConsult .consultWrap {
        max-width: 360px;
    }
    .sectionCta .ctaConsult .consultWrap .consutlBtn a::before {
        left: 20px;
        width: 22px;
    }

    .ctaFixedPc .inner {
        justify-content: center;
        gap: 30px;
    }
    .ctaFixedPc .ctaTitle {
        display: none;
    }
}
@media (min-width: 769px) {
    a[href^="tel:"] {
        pointer-events: none;
    }
    .hover:hover {
        opacity: 0.7;
    }
    #header .mainMenu .menu li a:hover {
        color: #c1272d;
        opacity: 1;
    }
    #footer .ftWrap .ftInfo .infoCertify .certifyList li a:hover {
        color: #c1272d;
        opacity: 1;
    }
    .scrollToTop a:hover {
        transform: translateY(-10px);
        opacity: 1;
    }
}
@media (max-width: 768px) {
    .inner {
        padding: 0 5.3%;
    }

    #header {
        padding: 0;
    }
    #header.scrollBg {
        background: transparent;
    }
    #header .inner {
        padding: 0 2.8%;
    }
    #header .headerBar {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        z-index: 2;
        padding: 10px 0 10px 10px;
        transition: all .3s;
    }
    #header.open .headerBar {
        background-color: #fee14f;
    }
    #header .headerBar .hdLogo {
        width: 38%;
        max-width: 200px;
        transform: translateY(0);
        transition: all .3s;
    }
    #header.scrollBg .headerBar .hdLogo {
        opacity: 0;
    }
    #header.open .headerBar .hdLogo {
        opacity: 1;
    }
    /* MENU */
    .hamburger {
        width: 50px;
        aspect-ratio: 1/1;
        padding: 12px;
        background: #fff;
        display: flex;
        justify-content: center;
        flex-direction: column;
        text-align: center;
        border-radius: 50%;
    }

    .hamburger span {
        display: block;
        height: 1px;
        width: 100%;
        background: #000;
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: .25s ease-in-out;
        -moz-transition: .25s ease-in-out;
        transition: .25s ease-in-out;
    }

    .hamburger span:nth-child(1) {
        margin-bottom: 6px;
    }

    .hamburger span:nth-child(2) {
        opacity: 1
    }

    .hamburger span:nth-child(3) {
        margin-top: 6px;
    }

    .hamburger.open span:nth-child(1) {
        margin-bottom: -1px;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        transform: rotate(45deg);
    }

    .hamburger.open span:nth-child(2) {
        opacity: 0;
    }

    .hamburger.open span:nth-child(3) {
        margin-top: -1px;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    
    #header .mainMenu {
        display: none;
        width: 100%;
        position: fixed;
        overflow-y: auto;
        height: 100%;
        top: 0;
        left: 0;
        width: 100%;
        background: #fee14f;
        padding: 70px 5.5% 50px;
        margin: 0;
        z-index: 1;
    }
    #header .mainMenu::-webkit-scrollbar {
        display: none;
    }
    #header .mainMenu .menu {
        gap: 0;
        margin-bottom: 28px;
    }
    #header .mainMenu .menu li {
        width: 100%;
    }
    #header .mainMenu .menu li:last-child a {
        border-bottom: 1px solid #ebc106;
    }
    #header .mainMenu .menu li a {
        position: relative;
        display: block;
        font-size: 16px;
        padding: 16px 0 19px;
        border-top: 1px solid #ebc106;
    }
    #header .mainMenu .menu li a::before {
        content: "";
        position: absolute;
        top: 45%;
        right: -1px;
        transform: translateY(-50%);
        width: 16px;
        aspect-ratio: 16/14;
        background: url(../images/small-amount-common/arrow-right-navy.png) no-repeat center/100%;
    }
    #header .mainMenu .menuContact {
        width: 100%;
        max-width: 350px;
        margin: 0 auto 5px;
    }
    #header .mainMenu .menuContact li:not(:last-child) {
        margin-bottom: 15px;
    }
    #header .mainMenu .menuContact a {
        position: relative;
        display: block;
        width: 100%;
        font-size: 19px;
        font-weight: bold;
        text-align: center;
        color: #fff;
        background-color: #285ae1;
        padding: 15px 5px 16px 8px;
        border-radius: 5px;
        letter-spacing: -0.8px;
        box-shadow: 0 5px 10px rgb(40, 90, 225,0.3);
    }
    #header .mainMenu .menuContact .consultation a {
        background-color: #c1272d;
        box-shadow: 0 5px 10px rgb(193, 39, 45,0.3);
    }
    #header .mainMenu .menuContact .phone a {
        background-color: #2e3e87;
        box-shadow: 0 5px 10px rgb(46, 62, 135,0.3);
    }
    #header .mainMenu .menuContact a::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 23px;
        transform: translateY(-50%);
        width: 18px;
        aspect-ratio: 36/47;
        background: url(../images/small-amount-common/icon-simulator-white.png) no-repeat center/100%;
    }
    #header .mainMenu .menuContact .consultation a::before {
        left: 20px;
        top: 52%;
        width: 23px;
        aspect-ratio: 47/35;
        background-image: url(../images/small-amount-common/icon-mail-white.png);
    }
    #header .mainMenu .menuContact .phone a::before {
        top: 55%;
        left: 20px;
        width: 23px;
        aspect-ratio: 1/1;
        background-image: url(../images/small-amount-common/icon-free-dial-white.png);
    }
    #header .mainMenu .menuContact a::after {
        content: "";
        position: absolute;
        top: 50%;
        right: 10px;
        transform: translateY(-50%);
        width: 21px;
        aspect-ratio: 1/1;
        background: url(../images/small-amount-common/icon-arrow-blue.png) no-repeat center/100%;
    }
    #header .mainMenu .menuContact .consultation a::after {
        background-image: url(../images/small-amount-common/icon-arrow-red.png);
    }
    #header .mainMenu .menuContact .phone a::after {
        background-image: url(../images/small-amount-common/icon-arrow-dark-blue.png);
    }
    #header .mainMenu .menuNote {
        text-align: center;
        font-size: 12px;
        font-weight: bold;
        color: #2e3e87;
    }
    #header .mainMenu .menuNote .note {
        display: inline-block;
        font-size: 12px;
        font-weight: normal;
        border: 1px solid #2e3e87;
        padding: 2px 6px;
        margin-right: 11px;
        line-height: 1;
    }

    .sectionTitle {
        font-size: 38px;
        letter-spacing: -2.6px;
        line-height: 1.3;
    }

    #footer .ftWrap {
        padding: 51px 0 52px;
    }
    #footer .ftWrap .ftLogo {
        width: 56.5%;
        max-width: 280px;
        margin: 0 auto 24px;
    }
    #footer .ftWrap .ftInfo .infoCertify {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        width: 100%;
    }
    #footer .ftWrap .ftInfo .infoCertify .certifyList {
        flex: 1;
        margin: 0;
    }
    #footer .ftWrap .ftInfo .infoCertify .certifyList li:not(:last-child) {
        margin-bottom: 6px;
    }
    #footer .ftWrap .ftInfo .infoCertify .certifyList li a {
        line-height: 1.4;
        letter-spacing: -0.7px;
    }
    #footer .ftWrap .ftInfo .infoCertify .certifyLogo {
        width: 16.5%;
        max-width: 80px;
    }
    #footer .ftWrap .ftInfo .infoCompany {
        flex: none;
        width: 100%;
        max-width: none;
        border-top: 1px solid #3f3385;
        padding: 26px 0 0;
    }
    #footer .ftWrap .ftInfo .infoCompany::before {
        content: none;
    }
    #footer .ftWrap .ftInfo .infoCompany .companyWrap {
        gap: 9px;
    }
    #footer .ftWrap .ftInfo .infoCompany .companyWrap .companyName {
        width: 112px;
    }
    #footer .ftWrap .ftInfo .infoCompany .companyWrap:not(:last-child) {
        margin-bottom: 4px;
    }
    #footer .ftWrap .ftInfo .infoCompany .companyWrap .companyList {
        gap: 7px 10px;
    }
    #footer .ftWrap .ftInfo .infoCompany .companyWrap .companyList li {
        padding-left: 2px;
    }
    #footer .ftWrap .ftInfo .infoCompany .companyWrap .companyList li .name {
        margin-bottom: 4px;
    }
    #footer .ftWrap .ftInfo .infoCompany .companyWrap .companyList li .name::before {
        top: 66%;
        left: -6px;
        width: 4px;
    }
    #footer .ftWrap .ftInfo .infoCompany .companyWrap .companyList li .sub {
        font-size: 12px;
    }
    #footer #copyright {
        font-size: 10px;
        padding: 7px 0 8px;
    }

    /* SP CTA */
    .ctaFixed {
        position: sticky;
        bottom: 0;
        left: 0;
    }
    .ctaFixedSp {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
        background: #ffffff;
        padding: 7px 10px;
    }

    .ctaFixedSp .spBtnList {
        display: flex;
        flex-wrap: wrap;
        gap: 10px;
        width: 48.6%;
        max-width: 200px;
    }

    .ctaFixedSp .spBtnList li {
        width: calc(50% - 5px);
    }

    .ctaFixedSp .spBtnList li a {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        height: 53px;
        color: #fff;
        font-size: 12px;
        font-weight: bold;
        position: relative;
        text-decoration: none;
        border-radius: 2px;
        padding-top: 4px;
    }
    .ctaFixedSp .spBtnList li a .small {
        font-size: 10px;
    }

    .ctaFixedSp .spBtnList .btnBlue a {
        background: #285ae1;
        box-shadow: 0 2.5px 5px rgb(67, 72, 224,0.3);
    }

    .ctaFixedSp .spBtnList .btnRed a {
        background: #c92f2f;
        box-shadow: 0 2.5px 5px rgb(181, 45, 49,0.3);
    }

    .ctaFixedSp .spBtnList li a .iconWrap {
        width: 16px;
        margin-bottom: 4px;
    }
    .ctaFixedSp .spBtnList .btnRed a .iconWrap {
        width: 23px;
        margin-bottom: 6px;
    }

    .ctaFixedSp .spBtnPhone {
        flex: 1;
        max-width: 250px;
        display: block;
        background: #2a3a78;
        color: #fff;
        text-align: center;
        padding: 4px 0 0;
        text-decoration: none;
        border-radius: 3px;
        position: relative;
        box-shadow: 0 2.5px 5px rgb(54, 54, 134,0.3);
    }

    .ctaFixedSp .spBtnPhone .note {
        font-size: 8px;
        font-weight: bold;
        margin-bottom: 4px;
    }

    .ctaFixedSp .spBtnPhone .numberWrap {
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 18px;
        font-weight: bold;
        line-height: 1;
        letter-spacing: -1.1px;
    }

    .ctaFixedSp .spBtnPhone .numberWrap .icon {
        width: 19px;
        margin-right: 5px;
    }

    .ctaFixedSp .spBtnPhone .numberWrap .number {
        transform: translateY(-2px);
    }

    .ctaFixedSp .spBtnPhone .time {
        font-size: 8px;
        letter-spacing: 0.4px;
    }
    .ctaFixedSp .spBtnPhone .time .timeNumber {
        font-size: 7px;
    }
    .ctaFixedSp .spBtnList li a::before {
        content: "";
        position: absolute;
        bottom: -3px;
        right: -9px;
        width: 17px;
        aspect-ratio: 1/1;
        background: url(../images/small-amount-common/icon-mouse-cursor.png) no-repeat center/100%;
        z-index: 10;
    }

    .ctaFixedSp .spBtnPhone::before {
        content: "";
        position: absolute;
        bottom: -3px;
        right: -9px;
        width: 17px;
        aspect-ratio: 1/1;
        background: url(../images/small-amount-common/icon-mouse-cursor.png) no-repeat center/100%;
        z-index: 10;
    }

    .sectionCta {
        padding: 50px 0 51px;
    }
    .sectionCta .ctaContact {
        border-width: 5px;
        padding: 16px 15px 20px;
        margin-bottom: 17px;
    }
    .sectionCta .ctaContact .ctaTitle {
        font-size: 17px;
        line-height: 1.25;
    }
    .sectionCta .ctaContact .ctaTitle::before {
        bottom: -8px;
        left: 50%;
        width: 100%;
        background-image: url(../images/small-amount-common/section-cta-line-sp.png);
    }
    .sectionCta .ctaContact .ctaText {
        font-size: 21px;
        line-height: 1.25;
        letter-spacing: -0.9px;
        margin-bottom: 7px;
    }
    .sectionCta .ctaContact .contactWrap {
        gap: 4px;
    }
    .sectionCta .ctaContact .contactWrap .ctaMail {
        width: 100%;
        max-width: 350px;
        margin: 0 auto;
    }
    .sectionCta .ctaContact .contactWrap .ctaMail a {
        font-size: 18px;
        padding: 16px 5px 17px 12px;
        border-radius: 5px;
        background: #b52d31;
        box-shadow: 0 2.5px 5px rgb(193, 39, 45, 0.3);
    }
    .sectionCta .ctaContact .contactWrap .ctaMail a::before {
        top: 52%;
        left: 21px;
        width: 23px;
    }
    .sectionCta .ctaContact .contactWrap .ctaMail a::after {
        right: 20px;
        width: 21px;
    }
    .sectionCta .ctaContact .contactWrap .ctaPhoneSub a {
        background: #363686;
        box-shadow: 0 2.5px 5px rgb(54, 54, 134, 0.3);
    }
    .sectionCta .ctaContact .contactWrap .ctaPhoneSub a::before {
        top: 54%;
        left: 21px;
        width: 23px;
        background-image: url(../images/small-amount-common/icon-free-dial-white.png);
        aspect-ratio: 1 / 1;
    }
    .sectionCta .ctaContact .contactWrap .ctaPhoneSub a::after {
        background-image: url(../images/small-amount-common/icon-arrow-dark-blue.png);
    }
    .sectionCta .ctaContact .contactWrap .ctaNote {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        font-size: 14px;
        font-weight: bold;
        letter-spacing: 0.4px;
        color: #000066;
        text-align: center;
        margin-bottom: 2px;
    }
    .sectionCta .ctaContact .contactWrap .ctaNote .noteTitle {
        display: inline-block;
        font-size: 11px;
        font-weight: 400;
        border: 1px solid #000066;
        padding: 2px 7px;
        margin-right: 10px;
        line-height: 1;
    }

    .sectionCta .ctaConsult {
        padding: 0 20px;
        background-color: #1534cd;
    }
    .sectionCta .ctaConsult .consultPhoto {
        position: relative;
        transform: translateY(8%);
        left: -2.4%;
        aspect-ratio: inherit;
        width: 97.4%;
        max-width: 500px;
        margin: -7px auto 0;
    }
    .sectionCta .ctaConsult .consultWrap {
        width: 100%;
        max-width: none;
    }
    .sectionCta .ctaConsult .consultWrap .consutlBox {
        width: calc(100% + 40px);
        background-color: #285ae1;
        padding: 14px 20px 0;
        margin-left: -20px;
    }
    .sectionCta .ctaConsult .consultWrap .consutlNote {
        font-size: 16px;
        margin-bottom: 0;
    }
    .sectionCta .ctaConsult .consultWrap .consutlNote::before,
    .sectionCta .ctaConsult .consultWrap .consutlNote::after {
        top: 65%;
        left: 10px;
        width: 9px;
    }
    .sectionCta .ctaConsult .consultWrap .consutlNote::after {
        left: auto;
        right: 9px;
    }
    .sectionCta .ctaConsult .consultWrap .consutlBtn {
        padding: 19px 0;
        background-color: transparent;
    }
    .sectionCta .ctaConsult .consultWrap .consutlBtn a {
        max-width: 350px;
        margin: 0 auto;
        font-size: 19px;
        padding: 15px 7px 16px 13px;
        letter-spacing: -1.3px;
    }
    .sectionCta .ctaConsult .consultWrap .consutlBtn a::before {
        top: 48%;
        left: 24px;
        width: 17px;
        aspect-ratio: 28 / 37;  
    }
    .sectionCta .ctaConsult .consultWrap .consutlBtn a::after {
        top: 47%;
        right: 10px;
        width: 22px;
    }
}