/***
    The new CSS reset - version 1.11.3 (last updated 25.08.2024)
    GitHub page: https://github.com/elad2412/the-new-css-reset
***/

/*
    Remove all the styles of the "User-Agent-Stylesheet", except for the 'display' property
    - The "symbol *" part is to solve Firefox SVG sprite bug
    - The "html" element is excluded, otherwise a bug in Chrome breaks the CSS hyphens property (https://github.com/elad2412/the-new-css-reset/issues/36)
 */
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
    all: unset;
    display: revert;
}

/* Preferred box-sizing value */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* Fix mobile Safari increase font-size on landscape mode */
html {
    -moz-text-size-adjust: none;
    -webkit-text-size-adjust: none;
    text-size-adjust: none;
}

/* Reapply the pointer cursor for anchor tags */
a, button {
    cursor: revert;
}

/* Remove list styles (bullets/numbers) */
ol, ul, menu, summary {
    list-style: none;
}

/* Firefox: solve issue where nested ordered lists continue numbering from parent (https://bugzilla.mozilla.org/show_bug.cgi?id=1881517) */
ol {
    counter-reset: revert;
}

/* For images to not be able to exceed their container */
img {
    max-inline-size: 100%;
    max-block-size: 100%;
}

/* removes spacing between cells in tables */
table {
    border-collapse: collapse;
}

/* Safari - solving issue when using user-select:none on the <body> text input doesn't working */
input, textarea {
    -webkit-user-select: auto;
}

/* revert the 'white-space' property for textarea elements on Safari */
textarea {
    white-space: revert;
}

/* minimum style to allow to style meter element */
meter {
    -webkit-appearance: revert;
    appearance: revert;
}

/* preformatted text - use only for this feature */
:where(pre) {
    all: revert;
    box-sizing: border-box;
}

/* reset default text opacity of input placeholder */
::placeholder {
    color: unset;
}

/* fix the feature of 'hidden' attribute.
   display:revert; revert to element instead of attribute */
:where([hidden]) {
    display: none;
}

/* revert for bug in Chromium browsers
   - fix for the content editable attribute will work properly.
   - webkit-user-select: auto; added for Safari in case of using user-select:none on wrapper element*/
:where([contenteditable]:not([contenteditable="false"])) {
    -moz-user-modify: read-write;
    -webkit-user-modify: read-write;
    overflow-wrap: break-word;
    -webkit-line-break: after-white-space;
    -webkit-user-select: auto;
}

/* apply back the draggable feature - exist only in Chromium and Safari */
:where([draggable="true"]) {
    -webkit-user-drag: element;
}

/* Revert Modal native behavior */
:where(dialog:modal) {
    all: revert;
    box-sizing: border-box;
}

/* Remove details summary webkit styles */
::-webkit-details-marker {
    display: none;
}

.layout_header {
    width: 100%;
    height: 100px;
    padding: 0 40px;
    border-bottom: 1px solid #E9E9E9;
}

@media screen and (max-width: 768px) {
    .layout_header {
        height: 56px;
        padding: 8px 6px 8px 12px;
    }
}

.layout_header_inner {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.layout_header_logo {
    width: 233px;
    height: 54px;
}

@media screen and (max-width: 768px) {
    .layout_header_logo {
        width: 196px;
        height: 40px;
        display: flex;
        justify-content: center;
        align-items: start;
    }
}

.layout_header_logo_image {
    width: 100%;
    height: auto;
}

.layout_header_right_logo {
    width: 142px;
    height: 54px;
}

@media screen and (max-width: 768px) {
    .layout_header_right_logo {
        width: 94px;
        height: 37px;
    }
}

.layout_header_right_logo_image {
    width: 100%;
    height: auto;
}

.thanks {
    width: 100%;
    padding: 24px 0 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
}

@media screen and (max-width: 768px) {
    .thanks {
        padding: 40px 0 0 ;
        gap: 40px;
    }
}

.layout_section {
    width: 100%;
    padding: 32px 16px;
}

.layout_section[data-bg="orange"] {
    background: #FFD28D;
}

@media screen and (max-width: 768px) {
    .thanks_simulation {
        padding: 0 16px;
    }
}

.thanks_simulation_inner {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 40px;
}

@media screen and (max-width: 768px) {
    .thanks_simulation_inner {
        padding: 0 16px;
    }
}

.thanks_simulation_heading1 {
    color: #292C2E;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 30px;
    font-weight: 700;
    line-height: 1.5;
}

@media screen and (max-width: 768px) {
    .thanks_simulation_heading1 {
        font-size: 24px;
    }
}

.thanks_simulation_content {
    margin: 0 auto;
    padding: 32px 20px;
    max-width: 1000px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    border-radius: 16px;
    background: #FEFAEA;
}

.thanks_simulation_heading2 {
    color: #E46500;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 24px;
    font-weight: 700;
    line-height: 1.5;
}

.thanks_simulation_amount {
    color: #E46500;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 36px;
    font-weight: 700;
    line-height: 1.4;
}

@media screen and (max-width: 768px) {
    .thanks_simulation_amount {
        font-size: 30px;
        line-height: 1.5;
    }
}

.thanks_simulation_amount_value {
    font-size: 50px;
    line-height: 1;
}

@media screen and (max-width: 768px) {
    .thanks_simulation_amount_value {
        font-size: 40px;
    }
}

.thanks_simulation_inline {
    display: inline-block;
}

.thanks_simulation_text {
    color: #292C2E;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 18px;
    font-weight: 400;
    line-height: 1.5;
}

@media screen and (max-width: 768px) {
    .thanks_simulation_text {
        text-align: left;
        font-size: 16px;
        line-height: 1.7;
    }
}

@media screen and (max-width: 768px) {
    .thanks_fee {
        padding: 0 16px;
    }
}

.thanks_fee_inner {
    display: flex;
    flex-direction: row-reverse;
    justify-content: center;
    align-items: center;
    gap: 64px;
}

@media screen and (max-width: 768px) {
    .thanks_fee_inner {
        flex-direction: column;
        gap: 40px;
    }
}

.thanks_fee_ballon {
    padding: 44px 0;
    width: 558px;
    height: 230px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    border: 8px solid #F9E3AE;
    position: relative;
}

.thanks_fee_ballon::before {
    position: absolute;
    left: -42px;
    top: 50%;
    transform: translateY(-50%);
    width: 38px;
    height: 76px;
    background-color: #F9E3AE;
    clip-path: polygon(100% 0%, 0% 50%, 100% 100%);
    content: "";
}

.thanks_fee_ballon::after {
    position: absolute;
    left: -30px;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;
    height: 60px;
    background-color: #fff;
    clip-path: polygon(100% 0%, 0% 50%, 100% 100%);
    content: "";
}

@media screen and (max-width: 768px) {
    .thanks_fee_ballon {
        margin: 0 -4px;
        padding: 20px 12px;
        width: calc(100% + 8px);
        height: auto;
    }

    .thanks_fee_ballon::before {
        top: auto;
        bottom: -38px;
        left: 50%;
        transform: translateX(-50%) translateY(0);
        width: 76px;
        height: 38px;
        clip-path: polygon(0% 0%, 50% 100%, 100% 0%);
    }

    .thanks_fee_ballon::after {
        top: auto;
        bottom: -26px;
        left: 50%;
        transform: translateX(-50%) translateY(0);
        width: 60px;
        height: 30px;
        clip-path: polygon(0% 0%, 50% 100%, 100% 0%);
    }
}
.thanks_fee_ballon_text {
    color: #292C2E;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 30px;
    font-weight: 700;
    line-height: 1.5;
}

@media screen and (max-width: 768px) {
    .thanks_fee_ballon_text {
        font-size: 24px;
    }
}

.thanks_fee_ballon_text_line {
    padding: 0 7px;
    background: linear-gradient(transparent 71.11%, rgba(255, 153, 51, 0.3) 71.11%, rgba(255, 153, 51, 0.3) 91.11%, transparent 91.11%);
}

.thanks_fee_ballon_text_orange {
    color: #E46500;
}

@media screen and (max-width: 768px) {
    .thanks_fee_ballon_text_orange {
        font-size: 32px;
        line-height: 1.4;
    }
}

.thanks_fee_ballon_text_small {
    color: #292C2E;
    font-family: Roboto;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.5;
}

@media screen and (max-width: 768px) {
    .thanks_fee_ballon_text_small {
        font-size: 16px;
    }
}

.thanks_fee_ballon_sub_text {
    color: #292C2E;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 18px;
    font-weight: 700;
    line-height: 1.5;
}

@media screen and (max-width: 768px) {
    .thanks_fee_ballon_sub_text {
        font-size: 16px;
        line-height: 1.7;
    }
}


.thanks_fee_image_wrap {
    width: 194px;
    height: 224px;
}

.thanks_fee_image {
    width: 100%;
    height: auto;
}

.thanks_cta_inner {
    margin: 0 auto;
    width: 100%;
    max-width: 1000px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: center;
    border-radius: 16px;
    background: #fff;
}

@media screen and (max-width: 768px) {
    .thanks_cta_inner {
        padding: 24px 32px;
    }
}

.thanks_cta_heading {
    color: #292C2E;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 30px;
    font-weight: 700;
    line-height: 1.5;
}

@media screen and (max-width: 768px) {
    .thanks_cta_heading {
        font-size: 20px;
    }
}

.thanks_cta_number {
    height: 42px;
    display: flex;
    gap: 12px;
    justify-content: center;
    align-items: center;
}

@media screen and (max-width: 768px) {
    .thanks_cta_number {
        height: 34px;
    }
}

.thanks_cta_icon {
    width: 40px;
    height: 42px;
}

@media screen and (max-width: 768px) {
    .thanks_cta_icon {
        width: 24px;
        height: 25px;
    }
}

.thanks_cta_link {
    height: 42px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    color: #EF6A04;
    font-family: Roboto;
    font-size: 40px;
    font-weight: 700;
    line-height: 1;
}

@media screen and (max-width: 768px) {
    .thanks_cta_link {
        font-size: 30px;
    }
}

.thanks_cta_text {
    color: #292C2E;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
}

@media screen and (max-width: 768px) {
    .thanks_cta_text {
        font-size: 14px;
        line-height: 1.2;
    }
}

.thanks_cta_date {
    color: #292C2E;
    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 16px;
    font-weight: 400;
    line-height: 1.3;
}

@media screen and (max-width: 768px) {
    .thanks_cta_date {
        font-size: 14px;
        line-height: 1.2;
    }
}

.layout_footer {
    width: 100%;
    height: 80px;
    background: #222;
}

@media screen and (max-width: 768px) {
    .layout_footer {
        height: 70px;
    }
}

.layout_footer__inner {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.layout_footer__copy {
    color: #FFF;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
}

@media screen and (max-width: 768px) {
    .layout_footer__copy {
        font-size: 15px;
    }
}

.sp-only {
    display: none;
}

@media screen and (max-width: 768px) {
    .sp-only {
        display: block;
    }
}
.sp-none {
    display: inline-block;
}

@media screen and (max-width: 768px) {
    .sp-none {
        display: none;
    }
}