@charset "utf-8";

.mafv,
.mabody,
.ma-sticky {
    --cta: #c44f28;
    --cta-edge: #8f391c;
}

.mafv__cta .btn--main,
.ma-cta__btn,
.ma-sticky__btn,
.mabody .ma-msg__cta .btn--main,
.mabody .ma-book__go .btn {
    background: var(--cta);
    color: var(--fs-white);
    box-shadow: 0 3px 0 var(--cta-edge);
    min-height: 58px;
}
.mafv__cta .btn--main .sub,
.ma-cta__btn .sub,
.ma-sticky__btn .sub,
.mabody .ma-msg__cta .btn--main .sub,
.mabody .ma-book__go .btn .sub { color: var(--fs-white) }

@media (min-width: 768px) {
    .mafv__person .pc-only { display: block !important }
    .mafv__person .sp-only { display: none !important }
}

@media (max-width: 767px) {
    .mafv__person img {
        -webkit-mask-image: linear-gradient(to bottom, #000 68%, rgba(0, 0, 0, .35) 88%, rgba(0, 0, 0, 0) 100%);
        mask-image: linear-gradient(to bottom, #000 68%, rgba(0, 0, 0, .35) 88%, rgba(0, 0, 0, 0) 100%);
    }
}

@media (max-width: 767px) {
    .mafv__person .pc-only { display: none !important }
    .mafv__person .sp-only { display: block !important }
}
.mafv__person { position: relative; border-bottom: 0 }

.mafv__person img { border-bottom: 0 }

.mafv .mafv__ref {
    font-size: .3em;
    font-weight: 700;
    vertical-align: super;
    margin-left: .1em;
    letter-spacing: 0;
    color: rgba(255, 255, 255, .95);
}

.mafv .mafv__credit {
    position: absolute;
    top: 0;
    left: 100%;
    height: 100%;
    margin: 0 0 0 .4em;
    writing-mode: vertical-rl;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .06em;
    text-align: left;
    white-space: nowrap;
    color: var(--fs-white);
    text-shadow: 0 1px 3px rgba(0, 0, 0, .5);
}
.mafv .mafv__credit span { display: block }
.mafv .mafv__credit span:last-child { margin-left: 0 }

.mafv .mafv__copy-sub {
    display: block;
    background: none;
    padding: 0;
    border-radius: 0;
    color: var(--fs-white);
    letter-spacing: .03em;
}

.mafv__after {
    color: var(--fs-white);
    font-weight: 700;
    line-height: 1.6;
}

@media (min-width: 1024px) {
    .mafv__inr { padding: calc(var(--fvw) * 36 / 1440) 0 calc(var(--fvw) * 32 / 1440) }
    .mafv__container {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.08fr);
        grid-template-areas:
            "logo  logo  person"
            "copy  copy  person"
            "talk  talk  person"
            "fee   rec   person"
            "cta   cta   person"
            "after after person"
            "cond  cond  person"
            "sup   sup   person";
        column-gap: calc(var(--fvw) * 16 / 1440);
        max-width: 1120px;
        text-align: left;
    }
    .mafv__btm { display: contents; border: 0 }
    .mafv__logo  { grid-area: logo; justify-content: flex-start; margin-bottom: calc(var(--fvw) * 18 / 1440) }
    .mafv__logo img { width: calc(var(--fvw) * 170 / 1440); min-width: 140px }
    .mafv__copy  { grid-area: copy }
    .mafv__talk  { grid-area: talk; justify-self: start; text-align: left; margin-top: calc(var(--fvw) * 18 / 1440) }
    .mafv__btm .item--fee { grid-area: fee }
    .mafv__btm .item--rec { grid-area: rec }
    .mafv__cta   { grid-area: cta; justify-self: start; justify-content: flex-start; margin-top: calc(var(--fvw) * 22 / 1440) }
    .mafv__after { grid-area: after; margin-top: 10px; font-size: max(13px, calc(var(--fvw) * 14 / 1440)) }
    .mafv__cond  { grid-area: cond; justify-content: flex-start; margin-top: 12px }
    .mafv__sup   { grid-area: sup; text-align: left; margin-top: calc(var(--fvw) * 22 / 1440) }

    .mafv__person {
        grid-area: person;
        order: 0;
        align-self: end;
        justify-self: center;
        width: 100%;
        max-width: 520px;
        margin: 0 calc(var(--fvw) * 34 / 1440) calc(var(--fvw) * -30 / 1440) calc(var(--fvw) * 24 / 1440);
    }
    .mafv .mafv__credit { font-size: max(12px, calc(var(--fvw) * 15 / 1440)) }

    .mafv__copy-main {
        font-size: max(40px, calc(var(--fvw) * 60 / 1440));
        line-height: 1.3;
    }
    .mafv .mafv__copy-sub {
        margin-top: calc(var(--fvw) * 14 / 1440);
        font-size: max(16px, calc(var(--fvw) * 20 / 1440));
    }
    .mafv__talk { font-size: max(14px, calc(var(--fvw) * 16 / 1440)); line-height: 1.8 }
    .mafv__talk .pc-br { display: inline }

    .mafv__btm .item {
        width: auto;
        margin: calc(var(--fvw) * 22 / 1440) 0 0;
        padding: calc(var(--fvw) * 14 / 1440) calc(var(--fvw) * 18 / 1440);
        align-items: flex-start;
        text-align: left;
    }
    .mafv__btm .val { font-size: max(30px, calc(var(--fvw) * 40 / 1440)) }
    .mafv__cta .btn:only-child { width: min(100%, 420px); min-width: 0 }
}

@media (max-width: 767px) {
    .mafv .mafv__copy-sub { font-size: 4.3vw; margin-top: 2.6vw }
    .mafv__person { flex: 0 0 54vw; margin: 3vw auto 0 }
    .mafv .mafv__credit { font-size: 12px }
    .mafv__after { order: 8; font-size: max(13px, 3.5vw); margin-top: 3vw }
    .mafv__cond { order: 9 }
    .mafv__sup { order: 10 }
}

@media (min-width: 768px) {
    .mabody section:not(.ma-price),
    .mabody .ma-price { padding: max(64px, calc(var(--w) * 88 / 1440)) 0 }
    .mabody .ma-head { margin-bottom: 32px }
}
@media (max-width: 767px) {
    .mabody section:not(.ma-price),
    .mabody .ma-price { padding: 14vw 0 }
    .mabody .ma-head { margin-bottom: 7vw }
}

.mabody .ma-case__note {
    margin: 10px 0 0;
    text-align: left;
    color: #a9b8c6;
}
.mabody .ma-case__item .summary {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px 14px;
    align-items: baseline;
    margin: 0;
}
.mabody .ma-case__item .summary dt {
    padding: 2px 10px;
    border: 1px solid #8fcbee;
    border-radius: 4px;
    color: #8fcbee;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.5;
}
.mabody .ma-case__item .summary dd {
    margin: 0;
    color: var(--fs-white);
    font-weight: 700;
    line-height: 1.7;
}
.mabody .ma-case__item .more { margin-top: 16px }
.mabody .ma-case__item .more > summary {
    display: inline-flex;
    align-items: center;
    gap: .5em;
    min-height: 44px;
    list-style: none;
    cursor: pointer;
    color: #8fcbee;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: .25em;
}
.mabody .ma-case__item .more > summary::-webkit-details-marker { display: none }
.mabody .ma-case__item .more > summary::after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
}
.mabody .ma-case__item .more[open] > summary::after { transform: translateY(2px) rotate(-135deg) }
.mabody .ma-case__item .more > summary:focus-visible { outline: 3px solid var(--fs-yellow); outline-offset: 2px }
.mabody .ma-case__item .more .detail { margin-top: 8px; padding: 0; border: 0 }
.mabody .ma-case__item .more .detail dd { font-weight: 400; color: #d6e1eb }

@media (min-width: 768px) {
    .mabody .ma-case__item .summary dd { font-size: max(15px, calc(var(--w) * 17 / 1440)) }
    .mabody .ma-case__item .more .detail dd { font-size: 15px }
}
@media (min-width: 1024px) {
    .mabody .ma-case__list.is-single .ma-case__item {
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        grid-template-rows: auto auto auto 1fr;
        grid-template-areas:
            "tags summary"
            "ttl  summary"
            "cmp  more"
            "note more";
    }
    .mabody .ma-case__list.is-single .tags { grid-area: tags }
    .mabody .ma-case__list.is-single .ttl { grid-area: ttl }
    .mabody .ma-case__list.is-single .cmp { grid-area: cmp }
    .mabody .ma-case__list.is-single .ma-case__note { grid-area: note; align-self: start }
    .mabody .ma-case__list.is-single .summary,
    .mabody .ma-case__list.is-single .more {
        padding-left: calc(var(--w) * 48 / 1440);
        border-left: 1px solid rgba(255, 255, 255, .18);
    }
    .mabody .ma-case__list.is-single .summary { grid-area: summary; align-self: stretch; align-content: start; padding-top: 4px }
    .mabody .ma-case__list.is-single .more { grid-area: more; margin-top: 0; padding-top: 16px }
}
@media (max-width: 767px) {
    .mabody .ma-case__item .summary { margin-top: 6vw }
    .mabody .ma-case__item .summary dd { font-size: max(14px, 3.9vw) }
    .mabody .ma-case__item .more .detail dd { font-size: max(14px, 3.7vw) }
}

.mabody .ma-reason__list .sum {
    margin: 0;
    color: var(--ink);
    font-weight: 700;
    line-height: 1.75;
}
.mabody .ma-reason__list .txt {
    font-weight: 400;
    color: var(--body);
}
.mabody .ma-reason__list .txt b { font-weight: 700 }
@media (min-width: 768px) {
    .mabody .ma-reason__list .sum { margin-top: 12px; font-size: max(15px, calc(var(--w) * 17 / 1440)) }
    .mabody .ma-reason__list .txt { margin-top: 10px; font-size: 15px; line-height: 1.85 }
}
@media (max-width: 767px) {
    .mabody .ma-reason__list .sum { margin-top: 3vw; font-size: max(15px, 4vw) }
    .mabody .ma-reason__list .txt { margin-top: 2.4vw; font-size: max(14px, 3.7vw); line-height: 1.85 }
}

.mabody .ma-faq__list .ans { font-weight: 400 }

@media (min-width: 768px) {
    .mabody .ma-flow__list { isolation: isolate }
    .mabody .ma-flow__list li { z-index: 1 }
    .mabody .ma-flow__list::after {
        content: "";
        position: absolute;
        z-index: -1;
        left: -12px;
        top: -12px;
        bottom: -12px;
        width: calc((100% - 4 * var(--w) * 20 / 1440) * .4 + var(--w) * 20 / 1440 + 24px);
        border-radius: 8px;
        background: rgba(24, 146, 206, .09);
    }
}
@media (max-width: 767px) {
    .mabody .ma-flow__list li:nth-child(-n+2) {
        background: rgba(24, 146, 206, .09);
        margin-left: -3vw;
        margin-right: -3vw;
        padding: 3vw 3vw 3vw 20vw;
        border-radius: 8px;
    }
    .mabody .ma-flow__list li:nth-child(1) { border-radius: 8px 8px 0 0; padding-bottom: 4.5vw }
    .mabody .ma-flow__list li:nth-child(2) { margin-top: 0; border-radius: 0 0 8px 8px; padding-top: 1.5vw }
    .mabody .ma-flow__list li:nth-child(-n+2)::before { left: 3vw; top: 3vw }
    .mabody .ma-flow__list li:nth-child(2)::before { top: 1.5vw }
    .mabody .ma-flow__list li:nth-child(1)::after { left: 9vw; top: 15vw; bottom: 0 }
    .mabody .ma-flow__list li:nth-child(2)::after { left: 9vw; top: 13.5vw; bottom: -9vw }
    .mabody .ma-flow__list li:nth-child(3) { margin-top: 6vw }
}

.mabody .ma-book__steps {
    display: flex;
    justify-content: center;
    gap: 0;
    list-style: none;
    padding: 0;
    margin: 0 auto 20px;
    max-width: 760px;
}
.mabody .ma-book__steps li {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 2px;
    color: var(--muted);
    font-weight: 700;
    font-size: 13px;
    line-height: 1.4;
    position: relative;
}
.mabody .ma-book__steps li + li::before {
    content: "";
    position: absolute;
    top: 13px;
    right: 50%;
    width: 100%;
    height: 1px;
    background: #b9cbd8;
    z-index: 0;
}
.mabody .ma-book__steps .no {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--fs-white);
    border: 1px solid #b9cbd8;
    font-family: var(--en);
    font-size: 13px;
    color: var(--muted);
}
.mabody .ma-book__steps li.is-now { color: var(--ink) }
.mabody .ma-book__steps li.is-now .no { background: var(--fs-blue); border-color: var(--fs-blue); color: var(--fs-white) }
.mabody .ma-book__steps li.is-done .no { background: var(--ink); border-color: var(--ink); color: var(--fs-white) }

.mabody .ma-book__remain {
    margin: 16px 0 0;
    text-align: center;
    color: var(--ink);
    font-weight: 700;
    font-size: 14px;
}
.mabody .ma-book__remain .n { font-family: var(--en); font-size: 1.25em; color: var(--fs-blue); margin: 0 .15em }
.mabody .ma-book__lock { margin-top: 8px }
.mabody .ma-book__check .sup { font-weight: 400 }
.mabody .ma-book__card { margin-top: 0 }

.mabody .ma-book__alt {
    background: transparent;
    border: 0;
    border-top: 1px solid var(--rule);
    border-radius: 0;
    padding-left: 0;
    padding-right: 0;
}
.mabody .ma-book__alt .ttl { font-size: 15px }
.mabody .ma-book__alt .txt { font-weight: 400; font-size: 14px }
.mabody .ma-book__alt .lnk {
    display: inline-flex;
    min-height: 44px;
    width: auto;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    text-decoration: underline;
    text-underline-offset: .25em;
    font-size: 14px;
}

@media (min-width: 1024px) {
    .mafv__container {
        grid-template-columns: auto auto minmax(0, 1fr) minmax(0, 44%);
        grid-template-areas:
            "logo  logo  logo  person"
            "copy  copy  copy  person"
            "talk  talk  talk  person"
            "fee   rec   .     person"
            "cta   cta   cta   person"
            "after after after person"
            "cond  cond  cond  person"
            "sup   sup   sup   person";
    }
    .mafv__btm .item { min-width: max(200px, calc(var(--fvw) * 230 / 1440)) }
    .mafv__cta { width: 100% }
    .mafv__cta .btn:only-child { width: 400px; max-width: 100% }
    .mafv__person { max-width: 480px }
}

.mafv .mafv__credit span { white-space: nowrap }

@media (min-width: 1024px) {
    .mabody .ma-case__list.is-single .ma-case__item {
        grid-template-areas:
            "tags side"
            "ttl  side"
            "cmp  side"
            "note side";
    }
    .mabody .ma-case__list.is-single .ma-case__side {
        grid-area: side;
        padding-left: calc(var(--w) * 48 / 1440);
        border-left: 1px solid rgba(255, 255, 255, .18);
    }
    .mabody .ma-case__list.is-single .ma-case__side .summary,
    .mabody .ma-case__list.is-single .ma-case__side .more {
        padding-left: 0;
        border-left: 0;
    }
    .mabody .ma-case__list.is-single .ma-case__side .more { margin-top: 20px; padding-top: 0 }
}

@media (min-width: 768px) {
    .mabody .ma-flow__list li:nth-child(-n+2)::before { box-shadow: 0 0 0 8px #dbeaf4 }
}

.mabody .ma-case__item .summary dd,
.mabody .ma-reason__list .sum,
.mafv__after { word-break: auto-phrase }

.mabody .ma-case .ma-note.ma-case__note { text-align: left }
@media (min-width: 1024px) {
    .mabody .ma-case .ma-note.ma-case__note { text-align: center }
}

.mafv__btm .item,
.mafv .mafv__btm .item {
    background: var(--fs-white);
    border: 0;
    border-radius: 6px;
    box-shadow: 0 2px 0 rgba(0, 0, 0, .12);
}
.mafv__btm .lbl { color: var(--muted) }
.mafv__btm .val,
.mafv__btm .cap { color: var(--ink) }
.mafv__btm .val b { color: var(--fs-blue) }
.mafv__cond li {
    background: var(--fs-white);
    border: 0;
    border-radius: 4px;
}
.mafv__cond .lbl { color: var(--muted) }
.mafv__cond b { color: var(--ink) }

.mabody .ma-reason__list .sum {
    padding-left: 12px;
    border-left: 3px solid var(--fs-blue);
}
.mabody .ma-reason__list .txt { color: var(--muted) }
.mabody .ma-reason__list .txt b { color: var(--ink) }
@media (min-width: 768px) {
    .mabody .ma-reason__list .sum { margin-top: 14px }
    .mabody .ma-reason__list .txt { margin-top: 14px; font-size: 14.5px }
}
@media (max-width: 767px) {
    .mabody .ma-reason__list .sum { margin-top: 4vw }
    .mabody .ma-reason__list .txt { margin-top: 3.4vw; font-size: max(14px, 3.6vw) }
}

.mafv .mafv__btm .item {
    position: relative;
    background: none;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.mafv .mafv__btm .item::before,
.mafv .mafv__btm .item::after {
    content: "";
    position: absolute;
    top: 50%;
    height: 112%;
    aspect-ratio: 18.66 / 60.54;
    background: url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 18.6559 60.5441%22 width=%2218.6559%22 height=%2260.5441%22 fill=%22none%22%3E%3Cdefs%3E%3ClinearGradient id=%22g%22 x1=%220%22 y1=%220%22 x2=%220%22 y2=%221%22%3E%3Cstop offset=%220%22 stop-color=%22%23fff0b8%22/%3E%3Cstop offset=%22.55%22 stop-color=%22%23f2c542%22/%3E%3Cstop offset=%221%22 stop-color=%22%23d49a1c%22/%3E%3C/linearGradient%3E%3C/defs%3E %3Cg id=%22Group 5%22%3E %3Cpath id=%22Vector%22 d=%22M13.89 60.5438L13.2319 60.5379C11.2857 60.2417 9.82652 58.8302 8.58006 57.2895C11.4726 55.2578 14.1444 57.0808 16.3531 59.2954C15.6612 60.027 14.8104 60.3749 13.89 60.5438Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_2%22 d=%22M0 28.2812V26.9731C3.12908 27.1839 3.92228 29.7782 4.18867 32.7144C1.56255 32.8615 0.425427 31.1022 0.127231 28.6351C0.115303 28.5357 0.0496995 28.3349 0 28.2812Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_3%22 d=%22M16.7625 0C16.7009 2.78714 15.3829 4.35367 12.6017 4.91826C12.4526 3.22052 12.9536 1.61821 14.3968 0.733564C15.035 0.34392 15.8202 0.0954229 16.51 0.0238557L16.7625 0Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_4%22 d=%22M16.9833 58.6179L16.5798 59.0751C9.0672 51.5108 4.70956 41.3543 4.46901 30.6351C4.2881 22.5659 6.38343 14.4013 10.8226 7.58051C0.892639 24.1463 3.30406 44.9227 16.9833 58.6179Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_5%22 d=%22M11.3873 53.2739C9.88841 54.3494 8.05152 54.254 6.66193 53.0732C5.68185 52.2402 4.92443 51.2005 4.33202 49.9997C7.48495 48.5962 9.59022 50.7512 11.3854 53.272L11.3873 53.2739Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_6%22 d=%22M7.70489 46.6617C6.70295 47.1369 5.58173 47.1866 4.58775 46.7353C3.06495 46.0455 2.02723 43.9939 1.53024 42.3458C3.14447 41.8926 4.75672 42.3836 5.82228 43.636C6.60753 44.5187 7.1582 45.5087 7.70489 46.6617Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_7%22 d=%22M17.2619 58.4012C16.4468 57.608 15.8325 56.7214 15.4369 55.6956C14.7332 53.8746 15.3952 52.2703 16.9537 51.0676C17.4905 51.7991 17.902 52.5267 18.2757 53.3378C18.57 54.141 18.733 54.9541 18.6197 55.8069C18.4507 56.779 18.0054 57.6219 17.2639 58.4012H17.2619Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_8%22 d=%22M5.31149 39.7239C3.739 40.1891 2.16452 39.5689 1.30373 38.1634C0.639741 37.0779 0.293833 35.8653 0.160638 34.595C1.70132 34.418 3.08694 35.0959 3.9378 36.3682C4.57991 37.3781 4.98546 38.4616 5.31149 39.7239Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_9%22 d=%22M12.3853 52.5919C11.0216 50.5582 10.3596 48.0693 12.2024 46.3596C12.5781 46.0296 12.9439 45.7851 13.4111 45.5227L14.1248 47.3536C14.2838 48.0951 14.4011 48.8068 14.3514 49.5662C14.1407 50.7928 13.4727 51.8604 12.3853 52.5899V52.5919Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_10%22 d=%22M8.78112 46.1909C7.94617 44.3321 7.644 41.9863 9.14293 40.6086C9.65782 40.1355 10.2641 39.8353 10.9421 39.6325C11.7333 42.4058 11.5742 44.8669 8.77913 46.1909H8.78112Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_11%22 d=%22M8.81681 37.9524C8.1727 38.7297 7.36161 39.2287 6.40738 39.4593C6.09328 37.9186 6.00183 36.356 6.82485 35.0201C7.50276 34.1235 8.4868 33.6444 9.61001 33.541C9.65772 34.3521 9.65971 35.1096 9.60007 35.8988C9.45694 36.6343 9.26609 37.3182 8.81681 37.9504V37.9524Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_12%22 d=%22M4.23253 25.8122C2.70179 25.7386 1.47719 24.7287 1.14321 23.2079C0.89074 22.0569 0.9305 20.8919 1.18695 19.7011C4.06554 20.4029 4.44127 22.9495 4.23253 25.8102V25.8122Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_13%22 d=%22M5.35161 19.2259C3.84075 18.888 2.83881 17.6833 2.77917 16.1843C2.73345 15.0452 2.93622 13.9717 3.35568 12.9022C6.0315 14.0453 5.96789 16.5501 5.35161 19.2239V19.2259Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_14%22 d=%22M9.26397 27.4583C9.14072 30.1639 8.1845 32.3646 5.30193 32.6191C5.20651 31.5575 5.32579 30.5436 5.69953 29.5635C6.26412 28.0805 7.63582 27.3907 9.26397 27.4583Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_15%22 d=%22M9.91803 21.5738C9.34549 24.182 8.15469 26.0825 5.30393 25.9136C5.40929 24.9136 5.63592 23.9733 6.12099 23.1264C6.93208 21.707 8.28788 21.2657 9.91803 21.5758V21.5738Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_16%22 d=%22M7.42895 13.0829C6.02146 12.5462 5.22031 11.2202 5.40718 9.72525C5.54037 8.65572 5.8823 7.67564 6.44291 6.73533C8.86427 8.2283 8.36926 10.6536 7.43094 13.0829H7.42895Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_17%22 d=%22M11.4552 16.0252C10.4711 18.4028 9.13523 20.0807 6.36399 19.4823C6.61049 18.5082 7.01405 17.5599 7.70388 16.7786C8.67004 15.6614 10.0716 15.5044 11.4572 16.0272L11.4552 16.0252Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_18%22 d=%22M10.3078 7.49695C9.04946 6.77332 8.4809 5.39963 8.85066 4.02196C9.125 3.00014 9.60808 2.09561 10.278 1.27259C12.3753 3.0558 11.5802 5.30818 10.3078 7.49695Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_19%22 d=%22M13.7327 10.9061C12.4723 13.0491 10.874 14.4626 8.34928 13.4825C8.81247 12.3991 9.4526 11.417 10.4585 10.7848C11.4644 10.1526 12.701 10.3176 13.7327 10.9061Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_20%22 d=%22M16.6813 6.31576C15.1684 8.22025 13.3255 9.33749 11.1487 7.99362C11.8107 6.90023 12.6397 6.09709 13.743 5.64184C14.7827 5.34165 15.8344 5.62593 16.6813 6.31576Z%22 fill=%22url%28%23g%29%22/%3E %3Cpath id=%22Vector_21%22 d=%22M10.9656 7.36428C10.9876 7.18303 11.0652 7.04759 11.1947 6.94004C11.1728 7.12328 11.0971 7.25872 10.9656 7.36428Z%22 fill=%22url%28%23g%29%22/%3E %3C/g%3E %3C/svg%3E") center / contain no-repeat;
    transform: translateY(-50%);
    pointer-events: none;
}
.mafv .mafv__btm .item::before { left: 0 }
.mafv .mafv__btm .item::after { right: 0; transform: translateY(-50%) scaleX(-1) }
.mafv .mafv__btm .lbl,
.mafv .mafv__btm .val,
.mafv .mafv__btm .val b,
.mafv .mafv__btm .cap { color: var(--fs-white) }
.mafv .mafv__btm .val { text-shadow: 0 2px 6px rgba(0, 0, 0, .18) }
@media (min-width: 1024px) {
    .mafv .mafv__btm .item { padding: 14px 52px; min-width: 230px }
    .mafv .mafv__btm .val { font-size: max(34px, calc(var(--fvw) * 46 / 1440)) }
}
@media (min-width: 768px) and (max-width: 1023px) {
    .mafv .mafv__btm .item { padding: 12px 40px }
}
@media (max-width: 767px) {
    .mafv .mafv__btm .item { padding: 3vw 9vw }
    .mafv .mafv__btm .val { font-size: 9.4vw }
}

@media (min-width: 768px) and (max-width: 1023px) {
    .mafv__container { grid-template-areas: "logo" "copy" "btm" "talk" "cta" "after" "cond" "sup" }
    .mafv__after { grid-area: after; justify-self: center; text-align: center; margin-top: 10px }
    .mafv .mafv__btm .item { min-width: 200px }
    .mafv .mafv__btm .lbl { white-space: nowrap }
}

.mabody .ma-reason__list .txt { color: var(--body) }
.mabody .ma-reason__list .txt b { color: var(--ink); font-weight: 700 }
@media (min-width: 768px) {
    .mabody .ma-reason__list .txt { margin-top: 14px; font-size: 15.5px; line-height: 1.9 }
}
@media (max-width: 767px) {
    .mabody .ma-reason__list .txt { margin-top: 3.4vw; font-size: max(14px, 3.8vw); line-height: 1.9 }
}

@media (min-width: 768px) {
    .mabody .ma-case__item .more > summary { display: none }
    .mabody .ma-case__item .more .detail { margin-top: 0 }
}

/* 肩書き（縦書き）は肖像の右の「外側」に置いているので、肖像の右に
   50〜68px（3行 × line-height × font-size ＋ 余白）の空きが要る。
   768-1023px は .mafv__btm が flex 行（着手金｜肖像｜実績）になり、
   column-gap が 23〜31px しかないため実績カードに 30〜40px 食い込む。
   文字サイズで詰めるには 4px 相当まで縮める必要があり現実的でないので、
   この帯だけ肖像の右に肩書きぶんの余白を確保する。 */
@media (min-width: 768px) and (max-width: 1023px) {
    .mafv__person { margin-right: 64px }
}

/* 1024-1240px は肖像が画面の右端に来る帯。.mafv__container が width:92% なので
   左右の余白が 0.04 × ビューポート（1024px で 41px）しか残らず、肩書きが
   .mafv__inr の overflow:hidden に当たって 1 行目から切れる（1024px で 14px、
   1200px で 6px）。font-size は max(12px, …) の下限が 1152px 以下で効いて
   それ以上縮まないため、肖像を少し左へ寄せて逃げを作る。
   1241px 以上（デザイナー確認済みの幅）は従来どおり。 */
@media (min-width: 1024px) and (max-width: 1240px) {
    .mafv__person { margin-right: calc(var(--fvw) * 34 / 1440 + 44px) }
}

/* 320px 級の端末では肖像の右端から 2px だけはみ出して切れるので間隔を詰める */
@media (max-width: 359px) {
    .mafv .mafv__credit { margin-left: 0 }
}

/* 2026-10-07 予約の欄をFV直後へ移したのに合わせて、秘密保持の一言を予約の欄の頭に出す
   （LPで「運営会社」が訪問の約1割に押されていた＝誰がやっているか・知られないかを確かめている） */
.mabody .ma-book__trust {
    display: table;
    margin: 1.2em auto 0;
    padding: .55em 1.2em;
    background: #fff;
    border: 2px solid #c9dde9;
    border-radius: 999px;
    color: #1b2d41;
    font-weight: 700;
    font-size: max(14px, .95em);
    line-height: 1.7;
    text-align: center;
}
.mabody .ma-book__trust b { color: var(--fs-blue, #1892ce) }
@media (max-width: 767px) {
    .mabody .ma-book__trust { border-radius: 14px; font-size: 3.6vw; padding: .6em 1em }
}
