/*
Theme Name: carttles-portal
Theme URI:
Description: カートルズポータルサイト用テーマ
Author: carttles
Version: 1.0.0
Tags:
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: blank
*/

.vehicle-service-details {
    margin: 1.5em 0 0.3em;
    padding: 1em;
    border-radius: 4px;
    background: #f2f5fa;
}

.sougaku-note {
    padding-bottom: 40px;
    text-align: center;
}

.car-no-copy {
    text-align: center;
    color: #cc1d29;
}

.car-no-copy span {
    margin-top: 1em;
    font-size: 1.3rem;
}

/* 微調整 */
.sec-purchasePrice ul li img {
    right: -33px !important;
}

/* 20250108 */
@media screen and (max-width: 599px) {
    .fixed-footer {
        background: #cc1d2a;
        border-top: 1px solid fff;
    }

    .fixed-footer li:not(:last-child) {
        border-right: 1px solid #fff;
    }

    .fixed-footer li a {
        color: #fff
    }
}

/*202410*/
@media (max-width: 768px) {
    .search-module .secInner {
        padding-top: 1px;
        padding-bottom: 1px;
    }

    .search-module .secInner h2 {
        color: #fff;
        background: #cc1d29;
        border-radius: 100px;
        font-size: 24px;
        margin: 10px auto;
    }

    .search-module .secInner h2 .material-icons {
        font-size: 33px;
    }

}

/* index */
.spBnr {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 15px;
    margin-top: -15px;
}

.spBnr li {
    width: calc((100% - 15px * 1) / 2);
}

.spBnr li img {
    width: 100%;
}

/* モーダル */
.modal-2__title {
    padding: 10px;
    /* タイトル周りの余白を追加 */
    text-align: center;
    /* タイトルのテキストを中央揃えに */
    font-size: 1.5rem;
    /* タイトルのフォントサイズを大きく */
    margin-bottom: 20px;
    /* タイトル下の余白を追加 */
    font-size: 2rem;
    border-bottom: 2px solid #cc1d29;
    color: #cc1d29;
}

.modal-2__wrap input {
    display: none;
}

.modal-2__open-label,
.modal-2__close-label {
    cursor: pointer;
}

.modal-2__open-label {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 250px;
    margin: 0 auto;
    padding: .8em 2em;
    border: none;
    border-radius: 5px;
    background-color: #2589d0;
    color: #ffffff;
    font-weight: 600;
    font-size: 1em;
}

.modal-2__open-label:hover {
    background-color: #fff;
    color: #2589d0;
    outline: 1px solid #2589d0;
}

.modal-2 {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    display: none;
}

.modal-2__open-input:checked+label+input+.modal-2 {
    display: block;
    animation: modal-2-animation .6s;
}

.modal-2__content-wrap {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    max-width: 650px;
    background-color: #fefefe;
    z-index: 2;
    border-radius: 5px;
}

.modal-2__close-label {
    background-color: #777;
    color: #fff;
    border: 2px solid #fff;
    border-radius: 20px;
    width: 36px;
    height: 36px;
    line-height: 1.6;
    text-align: center;
    display: table-cell;
    position: fixed;
    top: -15px;
    right: -2%;
    z-index: 99999;
    font-size: 1.3em;
}

.modal-2__content {
    max-height: 70vh;
    overflow-y: auto;
    padding: 39px 45px 40px;
}

.modal-2__background {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .45);
    z-index: 1;
}

@keyframes modal-2-animation {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@media only screen and (max-width: 520px) {
    .modal-2__open-label {
        max-width: 90%;
        padding: .94em 2.1em .94em 2.6em;
    }

    .modal-2__close-label {
        top: -17px;
        right: -4%;
    }

    .modal-2__content-wrap {
        width: 90vw;
    }

    .modal-2__content {
        padding: 33px 21px 35px;
        max-width: 100%;
    }
}

.modal-2__open-label {
    display: none !important;
}

.modal-2__content {
    padding: 20px;
}

.featured-button {
    display: block;
    margin: 0 auto 20px;
    padding: 15px 30px;
    background-color: #2589d0;
    color: white;
    text-align: center;
    text-decoration: none;
    font-size: 1.5rem;
    font-weight: bold;
    border-radius: 5px;
    cursor: pointer;
}

/* Line Button */
.forLine-car-no-copy {
    background: #eee;
    margin: 1em 0;
    padding: 0.5em;
    text-align: center;
    border-radius: 6px;
}

.forLine-car-no-copy p {
    color: #cc1d29 !important;
}

.forLine-car-no-copy p .material-icons {
    font-size: 14px !important;
}

.grid-container {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    /* グリッドアイテム間の間隔 */
}

.grid-button {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 10px;
    background: #aaa;
    color: #fff;
    font-size: 1.5rem;
    border: 1px solid #555;
    text-decoration: none;
    border-radius: 10px;
    cursor: pointer;
    height: 90px;
}

.grid-button span.linemodal-storename {
    font-size: 1.5rem;
    font-weight: bold;
}

.linemodal-storename,
.store-location {
    line-height: 1.2;
    display: block;
    font-weight: bold;
    font-size: smaller;
}

.area-east {
    color: #fff;
    border: 1px solid #b80f4d;
    background: #f03277;
}

.area-west {
    color: #fff;
    border: 1px solid #2c7dd2;
    background: #009fff;
}

/* モバイル対応 */
@media (max-width: 768px) {
    .modal-2__content {
        grid-template-columns: repeat(3, 1fr);
        /* モバイルでも3列を維持 */
        max-height: 85vh;
        /* モーダルの高さを75ビューポート高さに調整 */
        overflow-y: auto;
        /* コンテンツが高さを超えた場合にスクロール可能に */
    }
}

/* モーダルが開いているときの背景ページのスクロール禁止 */
body.modal-open {
    overflow: hidden;
    height: 100%;
}

/* モーダル内のスクロールを有効にする */
.modal-2__content {
    overflow-y: auto;
}

/* モーダル */

/* 車両詳細 画像モーダル ここから */

#detail__modal {
    position: fixed;
    z-index: 10000;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0, 0, 0, 0.4);
}

.detail__modal-header {
    /* margin-bottom: 35px; */
    padding: 10px;
    /* 適切なpaddingを追加 */
}

.detail__modal-content {
    width: 80%;
    background-color: #fefefe;
    margin: 5% auto;
    padding: 20px;
    border: none;
    border-radius: 10px;
    position: relative;
}

@media (min-width: 1080px) {
    .detail__modal-content {
        width: 45%;
    }
}

@media (max-width: 480px) {
    .detail__modal-content {
        width: 100%;
    }

    #detail__modal {
        padding-top: 40px;
    }
}

.close {
    color: #aaa;
    position: absolute;
    right: 15px;
    top: 3px;
    font-size: 28px;
    font-weight: bold;
}

.close:hover,
.close:focus {
    color: black;
    text-decoration: none;
    cursor: pointer;
}

.detail__modal-images {
    overflow-y: auto;
    max-height: 80vh;
    margin-top: 20px;
    /* 適切なmargin-topを追加 */
}

.detail__modal-images img {
    width: 100%;
    height: auto;
    margin-top: 15px;
}

.detail__img {
    position: relative;
}

.detail__img .thumbnails {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: hidden;
    /* 横スクロールを発生させない */
    white-space: nowrap;
    width: 100%;
    justify-content: space-between;
    /* サムネイルを均等に配置 */
}

.detail__img .main-img img {
    padding-bottom: 6px;
    width: 100%;
    height: auto;
    object-fit: cover;
}

.detail__img .thumbnails img {
    margin-right: 2px;
    /* flex: 0 0 calc((100% - 8px) / 5); */
    /* 5枚が表示されるように計算 */
    max-width: calc((100% - 8px) / 5);
    /* 5枚が表示されるように計算 */
    height: auto;
    object-fit: cover;
    /* 画像の比率を維持しつつ、親要素に収める */
}

.detail__img .thumbnails img:last-child {
    margin-right: 0;
    /* 最後のサムネイルの右マージンを削除 */
}

/* 車両詳細 画像モーダル ここまで */

/* 202407 */
/* lp */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Plaster&display=swap');

.pc-only {
    display: block !important;
}

.sp-only {
    display: none !important;
}

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

    .sp-only {
        display: block !important;
    }
}

.lp {
    color: #233044;
    font-family: "Noto Sans JP", sans-serif;
}

.lp_mv img {
    width: 100%;
    height: auto;
}

.lp_button {
    background: #CC1D29;
    width: calc(584px * .7);
    height: calc(88px * .7);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: calc(40px * .7);
    color: #fff;
    border-radius: 50px;
    margin: calc(40px * .7) auto 0;
}

@media (max-width: 768px) {
    .lp_button {
        width: 204px;
        height: 37px;
        margin: 24px auto 0;
        font-size: 16px;
    }
}

.lp_about {
    margin-top: calc(40px * .7);
    font-weight: 700;
    font-size: calc(22px * .7);
    line-height: calc(29 / 22);
    text-align: center;
    padding: calc(84px * .7) 20px calc(62px * .7);
    background-image: url(./assets/img/lp/lp_about.jpg);
    background-size: cover;
    background-position: center;
}

.lp_about .lg {
    font-weight: 700;
    font-size: calc(36px * .7);
    line-height: calc(49 / 36);
}

.lp_about .dots {
    position: relative;
    z-index: 1;
}

.lp_about .dots::before,
.lp_about .dots::after {
    position: absolute;
    content: "";
}

.lp_about .dots::before {
    background: #FFCD46;
    width: 100%;
    height: calc(8px * .7);
    bottom: 4px;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}

.lp_about .dots::after {
    background: #FFCD46;
    width: calc(12px * .7);
    height: calc(12px * .7);
    border-radius: 50px;
    top: -10px;
    left: 50%;
    transform: translateX(-50%);

}

.lp_about_text {
    font-size: calc(24px * .7);
    line-height: calc(34 / 24);
    text-align: center;
    max-width: calc(763px * .7);
    margin: calc(40px * .7) auto 0;
    font-weight: 700;
}

@media (max-width: 768px) {
    .lp_about {
        margin-top: 32px;
        font-size: 16px;
        line-height: calc(23 / 16);
        padding: 40px 10px;
        background-image: url(./assets/img/lp/lp_about_sp.jpg);
    }

    .lp_about .lg {
        font-weight: 700;
        font-size: 24px;
        line-height: 2;
    }

    .lp_about .dots::before {
        bottom: 4px;
    }

    .lp_about .dots::after {
        width: 6px;
        height: 6px;
    }

    .lp_about_text {
        font-size: 16px;
        line-height: calc(23/ 16);
        text-align: center;
        margin: 24px auto 0;
    }
}

.lp_title {
    background: #233044;
    color: #fff;
    font-weight: 700;
    font-size: calc(32px * .7);
    line-height: calc(46 / 32);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: calc(94px * .7);
    position: relative;
    z-index: 1;
    padding: 0 10px;
}

.lp_title::after {
    position: absolute;
    content: "";
    clip-path: polygon(0 0, 50% 100%, 100% 0);
    background: #233044;
    width: calc(80px * .7);
    height: calc(80px * .7);
    left: 50%;
    transform: translateX(-50%);
    bottom: -30px;
    z-index: -1;
}

@media (max-width: 768px) {
    .lp_title {
        font-size: 20px;
        line-height: calc(28 / 20);
        height: 52px;
        padding: 0 8px;
    }

    .lp_title::after {
        width: 32px;
        height: 32px;
        bottom: -20px;
    }
}

.lp_reco {
    background: #F2F5F9;
    padding: calc(80px * .7) 10px calc(40px * .7) 10px;
    position: relative;
    overflow: hidden;
}

.lp_reco::after {
    position: absolute;
    content: "";
    background-image: url(./assets/img/lp/pc_worry.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: calc(247px * .7);
    height: calc(146px * .7);
    right: -30px;
    bottom: 0;
}

.lp_reco_list {
    margin: 0 auto 0;
    width: fit-content;
}

.lp_reco_item {
    font-weight: 700;
    font-size: calc(24px * .7);
    line-height: calc(34 / 24);
    width: fit-content;
    position: relative;
    padding-left: calc(69px * .7);
}

.lp_reco_item::after {
    position: absolute;
    content: "";
    background-image: url(./assets/img/lp/check.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: calc(45px * .7);
    height: calc(44px * .7);
    left: 0;
    top: -6px;
}

.lp_reco_item+.lp_reco_item {
    margin-top: calc(26px * .7);
}

.lp_reco_text {
    margin: calc(40px * .7) auto 0;
    font-weight: 700;
    font-size: calc(24px * .7);
    line-height: calc(34 / 24);
    text-align: center;
    position: relative;
    z-index: 1;
}

@media (max-width: 768px) {
    .lp_reco {
        padding: 62px 10px 40px 10px;
    }

    .lp_reco::after {
        position: unset;
        content: none;
    }

    .lp_reco_list {
        margin: 0 auto 0;
    }

    .lp_reco_item {
        font-size: 16px;
        line-height: calc(23 / 16);
        padding-left: 30px;
    }

    .lp_reco_item::after {
        width: 28px;
        height: 28px;
        top: -3px;
    }

    .lp_reco_item+.lp_reco_item {
        margin-top: 12px;
    }

    .lp_reco_text {
        margin: 40px auto 0;
        font-size: 16px;
        line-height: calc(23 / 16);
        position: relative;
        padding-right: 137px;
        text-align: left;
    }

    .lp_reco_text::after {
        position: absolute;
        content: "";
        background-image: url(./assets/img/lp/pc_worry.png);
        background-repeat: no-repeat;
        background-size: contain;
        width: 137px;
        height: 81px;
        right: 0;
        bottom: -50px;
    }
}

.lp_reason {
    padding: 0 10px;
}

.lp_reason_list {
    counter-reset: number 0;
    margin: calc(72px * .7) auto 0;
    max-width: calc(980px * .7);
}

.lp_reason_item {
    display: flex;
    align-items: flex-end;
    padding: calc(24px * .7);
    position: relative;

}

.lp_reason_item::before {
    position: absolute;
    content: "";
    top: -10px;
    background-size: contain;
    background-repeat: no-repeat;
    width: calc(132px * .7);
    height: calc(80px * .7);
}

.lp_reason_item:nth-of-type(1)::before {
    background-image: url(./assets/img/lp/01.png);
    width: calc(106px * .7);
}

.lp_reason_item:nth-of-type(2)::before {
    background-image: url(./assets/img/lp/02.png);
}

.lp_reason_item:nth-of-type(3)::before {
    background-image: url(./assets/img/lp/03.png);
}

.lp_reason_item:nth-of-type(4)::before {
    background-image: url(./assets/img/lp/04.png);
}

.lp_reason_item:nth-of-type(5)::before {
    background-image: url(./assets/img/lp/05.png);
}

.lp_reason_item:nth-of-type(even) {
    background-color: #FFF4BA;
}

.lp_reason_item:nth-of-type(odd) {
    background-color: #E0FBFF;
}

.lp_reason_item+.lp_reason_item {
    margin-top: calc(56px * .7);
}

.lp_reason_body {
    width: 60%;
    padding-right: calc(24px * .7);
}

.lp_reason_title {
    font-weight: 700;
    font-size: calc(36px * .7);
    line-height: calc(52 / 36);
    margin-top: 30px;
}

.lp_reason_text {
    font-weight: 400;
    font-size: calc(16px * .7);
    line-height: calc(23 / 16);
    margin-top: calc(16px * .7);
}

.lp_reason_small {
    font-weight: 400;
    font-size: calc(14px * .7);
    line-height: calc(20 / 14);
    background: #fff;
    border-radius: 50px;
    padding: calc(18px * .7) calc(8px * .7);
    margin-top: calc(16px * .7);
}

.lp_reason_small p {
    position: relative;
    padding-left: calc(52px * .7);
}

.lp_reason_small p::before {
    position: absolute;
    content: "";
    background-image: url(./assets/img/lp/ex_mark.png);
    background-repeat: no-repeat;
    background-size: contain;
    width: calc(40px * .7);
    height: calc(40px * .7);
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.lp_reason_thumb {
    width: 50%;
}

.lp_reason_thumb img {
    width: 100%;
    height: 100%;
    aspect-ratio: 458 / 333;
}

@media (max-width: 768px) {
    .lp_reason_list {
        margin-top: 50px;
    }

    .lp_reason_item {
        flex-direction: column-reverse;
        padding: 21px 16px 24px;
    }

    .lp_reason_item::before {
        font-size: 64px;
        top: -10px;
        left: 20px;
        width: 90px;
        height: 60px;

    }

    .lp_reason_item:nth-of-type(1)::before {
        width: 75px;
    }

    .lp_reason_item+.lp_reason_item {
        margin-top: 56px;
    }

    .lp_reason_body {
        width: 100%;
        padding-right: unset;
    }

    .lp_reason_title {
        font-size: 20px;
        line-height: calc(28 / 20);
        margin-top: 24px;
    }

    .lp_reason_text {
        font-size: 14px;
        line-height: calc(20 / 14);
        margin-top: 16px;
    }

    .lp_reason_small {
        font-size: 14px;
        padding: 16px 15px;
        margin-top: 16px;
    }

    .lp_reason_small p {
        position: relative;
        padding-left: 55px;
    }

    .lp_reason_small p::before {
        width: 44px;
        height: 40px;
    }

    .lp_reason_thumb {
        width: 100%;
    }
}

.lp_button_text {
    font-weight: 700;
    font-size: calc(24px * .7);
    line-height: calc(32 / 24);
    margin-top: calc(40px * .7);
    text-align: center;
}

@media (max-width: 768px) {
    .lp_button_text {
        font-size: 16px;
        line-height: calc(21 / 16);
        margin-top: 24px;
    }
}

.lp_flow {
    margin-top: calc(40px * .7);
    background: #E0FBFF;
    padding: calc(64px * .7) 10px calc((64px + 37px) * .7);
}

.lp_flow_title {
    font-weight: 700;
    font-size: calc(36px * .7);
    line-height: calc(49 / 36);
    text-align: center;
}

.lp_flow_title span {
    font-weight: 700;
    font-size: calc(64px * .7);
    line-height: calc(87 / 64);
}

.lp_flow_list {
    max-width: calc(874px * .7);
    margin: calc(53px * .7) auto 0;
}

.lp_flow_item {
    background: #fff;
    border: #233044 4px solid;
    border-radius: 20px;
    position: relative;
    max-width: calc(758px * .7);
    margin-left: auto;
    padding: calc(24px * .7) 0 calc(24px * .7) calc(104px * .7);
}

.lp_flow_item+.lp_flow_item {
    margin-top: calc(90px * .7);
}

.lp_flow_title2 {
    font-weight: 700;
    font-size: calc(24px * .7);
    line-height: calc(34 / 24);
    border-bottom: 4px solid #FFCD46;
    width: fit-content;
}

.lp_flow_thumb {
    position: absolute;
    width: calc(196px * .7);
    height: calc(196px * .7);
    left: -80px;
    top: 50%;
    transform: translateY(-50%);
}

.lp_flow_thumb img {
    width: 100%;
    height: auto;
}

@media (max-width: 768px) {
    .lp_flow {
        margin-top: 40px;
        padding: 40px 10px 40px;
    }

    .lp_flow_title {
        font-size: 16px;
        line-height: calc(21 / 16);
    }

    .lp_flow_title span {
        font-size: 32px;
        line-height: calc(43 / 32);
    }

    .lp_flow_list {
        max-width: 359px;
        margin: 30px auto 0;
    }

    .lp_flow_item {
        max-width: 303px;
        padding: 10px 14px 10px 68px;
    }

    .lp_flow_item+.lp_flow_item {
        margin-top: 41px;
    }

    .lp_flow_title2 {
        font-size: 16px;
        line-height: calc(23 / 16);
        border-bottom: unset;
        width: fit-content;
        position: relative;
    }

    .lp_flow_title2::after {
        background: #FFCD46;
        position: absolute;
        content: "";
        width: 50px;
        height: 4px;
        left: 0;
        bottom: -5px;
    }

    .lp_flow_text {
        margin-top: 5px;
    }

    .lp_flow_thumb {
        width: 112px;
        height: 112px;
        left: -56px;
    }
}

.lp_voice {
    background: #FFF4BA;
    padding: calc(64px * .7) 10px;
    overflow: hidden;
}

.lp_voice_title {
    font-weight: 700;
    font-size: calc(36px * .7);
    line-height: calc(49 / 36);
    text-align: center;
}

.lp_voice_list {
    margin-top: calc(24px * .7);
    display: flex;
    justify-content: center;
    column-gap: calc(32px * .7);
}

.lp_voice_item {
    display: flex;
    background: #fff;
    border: #233044 4px solid;
    border-radius: 10px;
    max-width: calc(223px * .7);
    padding: calc(16px * .7) calc(12px * .7) 0 calc(12px * .7);
}

.lp_voice_text1 {
    font-weight: 700;
    font-size: calc(16px * .7);
    line-height: calc(21 / 16);
}

.lp_voice_text2 {
    font-weight: 400;
    font-size: calc(14px * .7);
    line-height: calc(19 / 14);
    text-align: right;
}

.lp_voice_thumb {
    display: flex;
    align-items: flex-end;
}

.lp_voice_thumb img {
    width: 100%;
    height: auto;
}

.lp_voice_lead {
    font-weight: 700;
    font-size: calc(24px * .7);
    line-height: calc(32 / 24);
    text-align: center;
    margin-top: calc(40px * .7);
}

@media (max-width: 768px) {
    .lp_voice {
        background: #FFF4BA;
        padding: 40px 10px;
    }

    .lp_voice_title {
        font-size: 16px;
        line-height: calc(21 / 16);
    }

    .lp_voice_listbox {
        overflow-x: scroll;
        margin-right: calc(50% - 50vw);
    }

    .lp_voice_list {
        margin-top: 25px;
        column-gap: 32px;
        width: 753px;
    }

    .lp_voice_item {
        max-width: unset;
        width: 223px;
        padding: 12px 16px 0 0;
    }

    .lp_voice_text1 {
        font-size: 16px;
        line-height: calc(22 / 16);
    }

    .lp_voice_text2 {
        font-size: 14px;
        text-align: right;
        margin-bottom: 5px;
    }

    .lp_voice_thumb {
        margin-right: 10px;
    }

    .lp_voice_thumb img {
        width: 100%;
        height: auto;
    }

    .lp_voice_lead {
        font-weight: 700;
        font-size: 15px;
        line-height: calc(20 / 15);
        text-align: center;
        margin-top: 32px;
    }
}

.lp-buttons {
    display: flex;
    max-width: calc(846px * .7);
    column-gap: calc(30px * .7);
    margin: calc(40px * .7) auto 0;
}

.lp-button2.btn {
    width: 50%;
    height: calc(88px * .7);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: unset;
}

.lp-button2.btn p {
    font-weight: 700;
    font-size: calc(32px * .7);
}

@media (max-width: 768px) {
    .lp-buttons {
        display: flex;
        flex-direction: column;
        column-gap: unset;
        row-gap: 24px;
        margin: 32px auto 0;
    }

    .lp-button2.btn {
        width: 204px;
        height: 37px;
        display: flex;
        margin: 0 auto;
    }

    .lp-button2.btn p {
        font-size: 16px;
    }
}

/* 202407 */
/* top */
.pc-only {
    display: block !important;
}

.sp-only {
    display: none !important;
}

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

    .sp-only {
        display: block !important;
    }
}

.bannerList.new {
    padding: 0 calc(48px * .7);
}

.bannerList.new li div {
    background: #fff;
    box-shadow: 4px 4px 4px 0px rgba(0, 0, 0, .25);
    min-height: calc(68px * .7);
    padding: calc(12px * .7);

}

.bannerList.new li p {
    font-size: calc(16px * .7);
    line-height: calc(22 / 16);
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    /* 制限したい行数が3の場合 */
    overflow: hidden;
}

@media (max-width: 768px) {
    .bannerList.new {
        padding: 0 0;
        gap: 9px 14px;
    }

    .bannerList.new li {
        width: calc((100% - 20px* 1) / 2);
    }

    .bannerList.new li div {
        min-height: 47px;
        padding: 8px;
    }

    .bannerList.new li p {
        font-size: 12px;
        line-height: calc(16 / 12);
    }
}

.top_reason_title {
    font-size: calc(24px * .7);
    line-height: calc(32 / 24);
    font-weight: 700;
}

.top_reason {
    position: relative;
    padding-left: calc(23px * .7);
}

.top_reason_thumb {
    position: absolute;
    right: 0;
    bottom: -40px;
    width: calc(220px * .7);
    height: calc(276px * .7);
}

.top_reason_thumb img {
    width: 100%;
    height: auto;
}

.top_reason_list {
    counter-reset: number 0;
    margin-top: calc(12px * .7);
}

.top_reason_item {
    font-size: calc(20px * .7);
    line-height: calc(27 / 20);
    font-weight: 700;
    position: relative;
    padding: calc(12px * .7) calc(48px * .7);
    border-bottom: 2px #FAE2E2 dotted;
}

.top_reason_item::after {
    position: absolute;
    counter-increment: number 1;
    content: counter(number) " ";
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: calc(32px * .7);
    height: calc(32px * .7);
    background: #BB3232;
    color: #fff;
    font-size: calc(16px * .7);
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
}

@media (max-width: 768px) {
    .top_reason_title {
        font-size: 20px;
        line-height: calc(27 / 20);
    }

    .top_reason {
        padding-left: 0;
    }

    .top_reason_thumb {
        width: 132px;
        height: 165px;
    }

    .top_reason_list {
        margin-top: 2px;
    }

    .top_reason_item {
        font-size: 14px;
        line-height: calc(19 / 14);
        position: relative;
        padding: 14px 36px;
    }

    .top_reason_item::after {
        top: 22px;
        width: 24px;
        height: 24px;
        font-size: 14px;
    }
}

.top_service {
    background: #FAE2E2;
}

.top_service_title {
    font-size: calc(16px * .7);
    line-height: calc(21 / 16);
    font-weight: 700;
    text-align: center;
}

.top_service_list {
    max-width: calc(852px * .7);
    margin: calc(54px * .7) auto calc(40px * .7);
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: calc(38px * .7) calc(24px * .7);
}

.top_service_list li {
    width: calc(140px * .7);
    height: calc(140px * .7);
}

.top_service_list img {
    width: 100%;
    height: auto;
}

@media (max-width: 768px) {
    .top_service_title {
        font-size: 14px;
        line-height: calc(20 / 14);
    }

    .top_service_list {
        margin: 21px auto 32px;
        gap: 12px;
        max-width: 354px;
    }

    .top_service_list li {
        width: 110px;
        height: 110px;
    }
}

@media (max-width: 768px) {

    .sp-show.secTitle,
    .sp-show.sec {
        display: none !important;
    }

    .top_news .tab.tab-sp {
        display: none !important;
    }

    .top_news.sec-information .tab_contents.new {
        display: flex;
        flex-direction: column;
    }

    .top_news.sec-information .tab_contents>* {
        width: 100%;
    }

    .top_news.sec-information .tab_contents .secTitle {
        display: block;
    }

    .top_news .tab_contents .tab_content:not(.select) {
        display: block;
    }

    .top_news.sec-information .tab_contents .secTitle {
        display: block;
    }

    @media (max-width: 768px) {
        .top_near {
            background: #F2F5FA;
            border-radius: 8px;
            padding: 24px 10px;
            position: relative;

        }

        .top_near_contents {
            position: relative;
            z-index: 1;
        }

        .top_near_title {
            font-size: 14px;
            line-height: calc(19 / 14);
            font-weight: 700;
            text-align: center;
        }

        .top_near_button {
            font-size: 16px;
            font-weight: 700;
            color: #BB3232;
            background: #fff;
            border-radius: 50px;
            border: 1px solid;
            box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
            display: flex;
            align-items: center;
            justify-content: center;
            width: 182px;
            height: 40px;
            margin: 16px auto 0;
        }

        .top_near_thumb {
            position: absolute;
            right: 16px;
            bottom: 16px;
            width: 90px;
            height: 90px;
        }

        .top_spmv_thumb img {
            width: 100%;
            height: auto;
        }

        .top_spmv_buttons {
            display: flex;
            column-gap: 6px;
            margin-top: -20px;
            padding: 0 10px;
        }

        .top_spmv_button {
            font-size: 16px;
            font-weight: 700;
            display: flex;
            align-items: center;
            justify-content: center;
            height: 40px;
            width: 80%;
            margin: auto;
            border: #CC1D29 1px solid;
            border-radius: 50px;
            box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
        }

        .btn-anm {
            animation: btn-anm 2s infinite;
        }

        @keyframes btn-anm {
            0% {
                transform: translate(0px, 2px);
            }

            5% {
                transform: translate(0px, -2px);
            }

            10% {
                transform: translate(0px, 2px);
            }

            15% {
                transform: translate(0px, -2px);
            }

            20% {
                transform: translate(0px, 2px);
            }

            25% {
                transform: translate(0px, -2px);
            }

            30% {
                transform: translate(0px, 0px);
            }
        }

        .top_spmv_button.red {
            background: #CC1D29;
            color: #fff;
        }

        .top_spmv_button.white {
            color: #CC1D29;
            background: #fff;
        }
    }
}

.none {
    display: none;
}

/* 202407 */
/* footer */
.newfooter.sec-contact {
    background: #F3F5F9;
    color: #000;
    padding: calc(40px * .7) 0;
    position: relative;
    margin-top: 160px;
}

.newfooter.sec-contact::after {
    position: absolute;
    content: "";
    background-image: url(./assets/img/common/footer-car.png);
    background-size: contain;
    background-repeat: repeat-x;
    width: 100%;
    height: calc(148px * .7);
    top: -102px;
    left: 50%;
    transform: translateX(-50%);
}

@media (max-width: 1339px) {
    .newfooter.sec-contact::after {
        top: calc(1vw * -102 / 1340 * 100);
    }
}

.newfooter.sec-contact .telContent .btn-tel {
    color: #000;
}

.newfooter.sec-contact .telContent {
    display: flex;
    align-items: center;
    column-gap: calc(62px * .7);
    justify-content: center;
}

.newfooter.sec-contact .telContent_body {
    display: flex;
    column-gap: calc(20px * .7);
}

.newfooter.sec-contact .telContent_body a {
    width: calc(50px * .7);
    height: calc(50px * .7);
}

.newfooter.sec-contact .telContent_body a img {
    width: 100%;
    height: auto;
}

@media (max-width: 768px) {
    .newfooter.sec-contact {
        margin-top: 80px;
    }

    .newfooter.sec-contact::after {
        height: 82px;
        background-size: cover;
        top: -80px;
    }

    .newfooter.sec-contact .telContent {
        flex-direction: column;
    }

    .newfooter.sec-contact .telContent_body {
        margin-top: 20px;
    }

    .newfooter.sec-contact .telContent {
        justify-content: center;
    }
}

.shopDetail_virtualTour iframe {
    width: 100%;
}

/* 202408 */
/* satellite */
@import url('https://fonts.googleapis.com/css2?family=Righteous&family=Roboto+Mono:ital,wght@0,100..700;1,100..700&display=swap');

.satellite_title {
    font-size: 20px;
    line-height: calc(26 / 20);
    font-weight: 700;
    text-align: center;
    width: fit-content;
    margin: 0 auto 37px;
    position: relative;
    padding-bottom: 8px;
    font-family: "Roboto Mono", monospace;
}

.satellite_title::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 14px;
    left: 50%;
    transform: translateX(-50%);
    bottom: -10px;
    background: url(./assets/img/satellite/red_line.svg);
    background-size: cover;
    background-repeat: no-repeat;
}

.satellite_title-2::after {
    background: url(./assets/img/satellite/red_line2.svg);
}

.satellite_title-3::after {
    background: url(./assets/img/satellite/white_line.svg);
}

.satellite_title-4::after {
    background: url(./assets/img/satellite/white_line2.svg);
}

.satellite_redbg {
    background: #CC1D29;
}

.satellite_redbg .satellite_title {
    color: #fff;
}

.satellite-mv {
    position: relative;
}

.satellite-mv__textbox {
    position: absolute;
    left: 24px;
    top: 50%;
    transform: translateY(-50%);
}

.satellite-mv__lead {
    color: #fff;
    font-size: 20px;
    line-height: calc(29 / 20);
    text-align: center;
    font-weight: 700;
    margin-top: 42px;
}

.satellite-mv__button {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    color: #CC1D29;
    font-size: 20px;
    font-weight: 700;
    margin: 24px auto 0;
    width: fit-content;
    border-radius: 50px;
    padding: 10px 30px;
    font-family: "Roboto Mono", monospace;
}

@media (max-width: 768px) {
    .satellite-mv {
        background: #CC1D29;
        padding: 24px 0 39px;
    }

    .satellite-mv img {
        width: 100%;
        height: auto;
    }

    .satellite-mv__textbox {
        position: unset;
        transform: unset;
    }

    .satellite-mv__lead {
        font-size: 16px;
        line-height: calc(23 / 16);
        text-align: center;
        font-weight: 700;
        margin-top: 16px;
    }

    .satellite-mv__button {
        margin-top: 24px;
    }
}

.satellite-about_lead {
    font-size: 16px;
    line-height: calc(23 / 16);
    font-weight: 700;
    text-align: center;
}

.satellite-about_flexbox1 {
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 12px;
    margin: 16px auto 0;
}

.satellite-about_flexbox2 {
    display: flex;
    align-items: center;
    justify-content: center;
    column-gap: 12px;
    margin: 16px auto 0;
    max-width: 480px;
    width: 100%;
    column-gap: 30px;
}

.satellite-about_circle {
    background: #CC1D29;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 164px;
    height: 164px;
}

.satellite-about_circle p {
    font-size: 24px;
    line-height: calc(31 / 24);
    font-weight: 700;
    text-align: center;
    font-family: "Roboto Mono", monospace;
}

.satellite-about_plus {
    font-size: 64px;
    line-height: calc(84 / 64);
    font-weight: 700;
    color: #CC1D29;
}

.satellite-about_list {
    border: 2px solid #000;
    border-radius: 12px;
    position: relative;
    padding: 24px 17px 14px 24px;
    width: 340px;
}

.satellite-about_list::after {
    position: absolute;
    content: "";
    background: #FBF08E;
    border-radius: 12px;
    top: 10px;
    left: 7px;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.satellite-about_list li {
    font-size: 16px;
    line-height: calc(23 / 16);
    font-weight: 700;
}

@media (max-width: 768px) {
    .satellite-about_flexbox1 {
        column-gap: 8px;
    }

    .satellite-about_flexbox2 {
        column-gap: unset;
    }

    .satellite-about_circle {
        width: 130px;
        height: 130px;
    }

    .satellite-about_circle p {
        font-size: 20px;
    }

    .satellite-about_plus {
        font-size: 48px;
        line-height: calc(63 / 48);
    }

    .satellite-about_list {
        padding: 14px 8px 14px 14px;
    }

    .satellite-about_list::after {
        top: 6px;
        left: 6px;
    }
}

.satellite-reason {
    padding: 64px 10px;
}

.satellite-reason_title {
    position: relative;
}

.satellite-reason_title span {
    font-size: 32px;
}

.satellite-reason_title::before {
    position: absolute;
    content: "";
    background-image: url(./assets/img/satellite/fukidashi.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 152px;
    height: 54px;
    left: -100px;
    top: -55px;
}

.satellite-reason_flexbox {
    display: flex;
    align-items: center;
    column-gap: 24px;
    max-width: 740px;
    margin: 0 auto;
}

.satellite-reason_list1,
.satellite-reason_box {
    width: 50%;
}

.satellite-reason_list1 {
    counter-reset: number 0;
}

.satellite-reason_list1 li {
    background: #FFFFFF;
    border-radius: 12px;
    padding: 9px 16px;
}

.satellite-reason_list1 li p {
    font-size: 16px;
    line-height: calc(23 / 16);
    font-weight: 700;
    padding-left: 65px;
    position: relative;
}

.satellite-reason_list1 li p::before {
    counter-increment: number 1;
    content: "0" counter(number) " ";
    color: #CC1D29;
    font-size: 36px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-family: "Righteous", sans-serif;
}

.satellite-reason_list1 li+li {
    margin-top: 16px;
}

.satellite-reason_box {
    background-repeat: no-repeat;
    color: #fff;
    padding: 20px 24px;
    background-size: cover;
    aspect-ratio: 358 / 231;
    background-color: #fff;
    position: relative;
}

.satellite-reason_contents {
    position: relative;
    z-index: 10;
}

.satellite-reason_box::after {
    position: absolute;
    content: "";
    background: #CC1D29;
    border-radius: 10px;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    left: 1px;
    top: 1px;
    border-radius: 40px;
}

.satellite-reason_box p {
    font-size: 16px;
    line-height: calc(23 / 16);
    font-weight: 700;
    text-align: center;
    font-family: "Roboto Mono", monospace;
}

.satellite-reason_titlebox {
    display: flex;
    justify-content: center;
    column-gap: 12px;
}

.satellite-reason_box li {
    font-size: 16px;
    line-height: calc(23 / 16);
    font-weight: 700;
    margin-top: 18px;
}

.satellite-reason_box li+li {
    margin-top: 16px;
}

.satellite-reason_list2 li {
    position: relative;
    padding-left: 44px;
}

.satellite-reason_list2 li::after {
    position: absolute;
    content: "";
    background-image: url(./assets/img/satellite/check.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 28px;
    height: 28px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

@media (max-width: 768px) {
    .satellite-reason_title::before {
        left: -30px;
    }

    .satellite-reason_flexbox {
        flex-direction: column;
        row-gap: 24px;
    }

    .satellite-reason_list1,
    .satellite-reason_box {
        width: 100%;
    }

    .satellite-reason_box {
        aspect-ratio: unset;
    }
}

.satellite-step__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    row-gap: 32px;
    max-width: 672px;
    margin: 0 auto;
}

.satellite-step__item {
    width: 240px;
    height: 274px;
    margin-left: -16px;
}

.satellite-step__item:not(:last-of-type) {
    background-image: url(./assets/img/satellite/step_bg.png);
    background-repeat: no-repeat;
    background-size: contain;
    border-radius: 12px;
    position: relative;
    padding: 16px 41px 16px 16px;
}

.satellite-step__item:nth-of-type(4) {
    z-index: 1;
}

.satellite-step__item:nth-of-type(3) {
    z-index: 2;
}

.satellite-step__item:nth-of-type(2) {
    z-index: 3;
}

.satellite-step__item:nth-of-type(1) {
    z-index: 4;
}

.satellite-step__inner {
    max-width: 180px;
}

@media (max-width: 768px) {
    .satellite-step__list {
        row-gap: unset;
        justify-content: center;
        flex-direction: column;
        align-items: center;
    }

    .satellite-step__item {
        width: 100%;
        max-width: 364px;
        margin-left: unset;
    }

    .satellite-step__item:not(:last-of-type) {
        background-image: url(./assets/img/satellite/step_bg_sp.png);
        padding: 9px 16px 46px 19px;
        height: 202px;
    }

    .satellite-step__item:not(:first-of-type) {
        margin-top: -22px;
    }

    .satellite-step__item:last-of-type {
        max-width: 270px;
        height: 91px;
        margin: 0 auto;
    }

    .satellite-step__item:last-of-type img {
        width: 100%;
        height: auto;
    }

    .satellite-step__inner {
        max-width: 329px;
        display: flex;
        flex-direction: row-reverse;
        justify-content: space-between;
    }

    .satellite-step__inner>figure {
        width: 140px;
    }

    .satellite-step__inner>div {
        width: 168px
    }
}

.satellite-step__item-2 {
    display: flex;
    align-items: center;
    justify-content: center;
}

.satellite-step__item h3 {
    font-size: 16px;
    line-height: calc(23 / 16);
    font-weight: 700;
    height: 46px;
}

.satellite-step__item p {
    font-size: 14px;
    line-height: calc(20 / 14);
    margin-top: 8px;
}

.satellite-step__item a {
    color: #000000;
}

.satellite-step__item .color {
    color: #1B07FF;
    text-decoration: underline;
}

.satellite-reservation__title {
    font-size: 24px;
    font-weight: 700;
    height: 56px;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #CC1D29;
    font-family: "Roboto Mono", monospace;
}

.satellite-reservation__flexbox {
    display: flex;
    column-gap: 24px;
    max-width: 804px;
    margin: 40px auto 0;
}

.satellite-reservation__box1 {
    border: #CC1D29 2px solid;
    border-radius: 12px;
    padding: 24px 18px;
    width: 50%;
}

.satellite-reservation__box1 p {
    text-align: center;
    font-size: 16px;
    line-height: calc(23 / 16);
    font-weight: 700;
}

.satellite-reservation__box1 .btn-wrap {
    flex-direction: column;
    max-width: 225px;
    margin: 24px auto 0;
    gap: 16px;
}

.satellite-reservation__box1 .btn {
    box-shadow: unset;
    font-size: 16px;
    font-weight: 700;
    gap: 10px;
}

.satellite-reservation__box1 .btn span {
    display: flex;
    align-items: center;
}

.satellite-reservation__box1 .btn img {
    margin-right: unset;
    width: 23px;
}

.satellite-reservation__box1 .btn.btn-line {
    background: #06C755;
}

.satellite-reservation__box1 .telContent {
    border-top: #CC1D29 2px solid;
    padding-top: 24px;
    margin-top: 24px;
}

.satellite-reservation__box1 .btn-tel {
    margin: 0 auto;
    display: block;
    width: fit-content;
    display: flex;
    align-items: center;
    column-gap: 14px;
}

.satellite-reservation__box1 .btn-tel .text {
    font-size: 20px;
    font-weight: 700;
}

.satellite-reservation__box1 .telContent_head a {
    color: #000;
    margin-top: 16px;
}

.satellite-reservation__box1 .telContent_head a .text {
    border-bottom: 2px solid;
    line-height: 1;
}

.satellite-reservation__box2 {
    width: 50%;
}

.satellite-reservation__box2 div {
    background-image: url(./assets/img/satellite/near_bg.jpg);
    background-size: cover;
    background-position: center;
    border-radius: 12px;
    padding: 24px 0 42px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-right: 74px;
}

.satellite-reservation__neartitle {
    font-size: 14px;
    line-height: calc(19 / 14);
    font-weight: 700;
}

.satellite-reservation__nearbutton {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    color: #BB3232;
    border: 1px solid;
    border-radius: 50px;
    font-size: 16px;
    font-weight: 700;
    height: 40px;
    max-width: 186px;
    width: 100%;
    margin-top: 16px;
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}

.satellite-reservation__nearthumb {
    margin-top: 12px;
}

.satellite-reservation__nearthumb img {
    width: 100%;
    height: auto;
}

@media (max-width: 768px) {
    .satellite-reservation__flexbox {
        flex-direction: column;
        margin: 24px auto 0;
    }

    .satellite-reservation__box1 {
        width: 100%;
        padding: unset;
        border: unset;
    }

    .satellite-reservation__box1 .telContent {
        border: unset;
    }

    .btn-wrap .btn.btn-s {
        width: 100%;
    }

    .satellite-reservation__box2 {
        width: 100%;
        margin-top: 16px;
    }

    .satellite-reservation__box2 div {
        padding: 24px;
        max-width: 356px;
        margin: 0 auto 0;
    }
}

.satellite-faq {
    padding: 40px 10px;
}

.satellite-faq__list {
    display: flex;
    flex-wrap: wrap;
    row-gap: 16px;
    margin-left: -16px;
}

.satellite-faq__item {
    width: calc(100% / 2 - 16px);
    margin-left: 16px;
    background: #fff;
    border-radius: 12px;
    padding: 12px;
}

.satellite-faq__item p {
    font-size: 14px;
    line-height: 17px;
}

.satellite-faq__item small {
    font-size: 12px;
    line-height: 14px;
    display: block;
    margin-top: 8px;
}

.satellite-faq__q,
.satellite-faq__a {
    position: relative;
    padding-left: 42px;
}

.satellite-faq__q::after,
.satellite-faq__a::after {
    position: absolute;
    content: "";
    background-repeat: no-repeat;
    background-size: contain;
    left: 0;
    top: 0;
    width: 30px;
    height: 30px;
}

.satellite-faq__q::after {
    background-image: url(./assets/img/satellite/asset_q.svg);
}

.satellite-faq__a::after {
    background-image: url(./assets/img/satellite/asset_a.svg);
}

.satellite-faq__q p {
    border-bottom: 1px solid #CC1D29;
    padding-bottom: 12px;
    margin-bottom: 12px;
}

.satellite-faq__button {
    border-radius: 50px;
    background: #fff;
    width: 240px;
    height: 46px;
    color: #CC1D29;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 24px auto 0;
    font-size: 20px;
    font-weight: 700;
    font-family: "Roboto Mono", monospace;
}

@media (max-width: 768px) {
    .satellite-faq__list {
        flex-direction: column;
        margin-left: unset;
    }

    .satellite-faq__item {
        width: 100%;
        margin-left: unset;
    }

    .satellite-faq__item:nth-of-type(1) {
        order: 1;
    }

    .satellite-faq__item:nth-of-type(2) {
        order: 3;
    }

    .satellite-faq__item:nth-of-type(3) {
        order: 2;
    }

    .satellite-faq__item:nth-of-type(4) {
        order: 4;
    }

    .satellite-faq__button {
        font-size: 20px;
    }

    .satellite-faq__q::after,
    .satellite-faq__a::after {
        top: -7px;
    }
}

.satellite-pc {
    display: block;
}

.satellite-sp {
    display: none;
}

@media (max-width: 768px) {
    .satellite-pc {
        display: none;
    }

    .satellite-sp {
        display: block;
    }
}

/* 202412 */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

.appraisal {
    font-family: "Noto Sans JP", sans-serif;
    overflow: hidden;
}

@media (max-width: 768px) {
    .appraisal {
        margin: 0 calc(50% - 50vw);
        width: 100vw;
    }
}

.appraisal-mv {
    position: relative;
}

.appraisal-mv img {
    width: 100%;
    height: auto;
}

.appraisal-mv_button {
    position: absolute;
    bottom: 46px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 240px;
    height: 46px;
    width: 100%;
    background: #fff;
    border-radius: 50px;
}

.appraisal-mv_button p {
    color: #FF3203;
    font-size: 20px;
    font-weight: 700;
    font-family: "Roboto", sans-serif;
}

@media (max-width: 768px) {
    .appraisal-mv_button {
        bottom: unset;
        top: 57.5%;
        transform: translate(-50%);
    }
}

.appraisal-reason {
    margin-top: -18px;
}

.appraisal-reason_title {
    font-size: 32px;
    font-weight: 700;
    color: #FF5A03;
    text-align: center;
}

.appraisal-reason_list {
    margin-top: 38px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.appraisal-reason_item {
    display: flex;
    align-items: center;
    max-width: 724px;
    margin: 0 auto;
}

.appraisal-reason_head {
    width: 56%;
}

.appraisal-reason_head img {
    width: 100%;
    height: auto;
    vertical-align: middle;
}

.appraisal-reason_body {
    width: 50%;
    margin-left: -20px;
    margin-top: -5px;
    position: relative;
}

.appraisal-reason_item:nth-of-type(even) {
    flex-direction: row-reverse;
}

.appraisal-reason_item:nth-of-type(even) .appraisal-reason_head {
    width: 56%;
    margin-left: 0px;
    margin-right: 8px;
}

.appraisal-reason_item:nth-of-type(even) .appraisal-reason_body {
    width: 50%;
    margin-left: unset;
    margin-right: -20px;
    margin-top: -5px;
}

.appraisal-reason_body h3 {
    background: #FF5A03;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 20px;
    font-weight: 700;
    padding: 13px 10px 16px 10px;
}

.appraisal-reason_body h3 span {
    position: relative;
}

.appraisal-reason_body h3 span::after {
    position: absolute;
    content: "";
    width: 114px;
    height: 2px;
    background: #fff;
    left: 0;
    bottom: -1px;
}

.appraisal-reason_body p {
    background: #fff;
    font-size: 16px;
    padding: 8px;
    line-height: 1.2;
    min-height: 90px;
}

@media (max-width: 768px) {
    .appraisal-reason {
        margin-top: 0px;
    }

    .appraisal-reason_title {
        font-size: 20px;
    }

    .appraisal-reason_list {
        margin-top: 22px;
        gap: 21px;
    }

    .appraisal-reason_item {
        flex-direction: column;
        max-width: unset;
    }

    .appraisal-reason_head {
        margin: 0 calc(50% - 50vw);
        width: 100vw;
    }

    .appraisal-reason_body {
        width: 100%;
        margin-left: unset;
        margin-top: -36px;
        padding-left: 28px;
    }

    .appraisal-reason_item:nth-of-type(even) {
        flex-direction: column;
    }

    .appraisal-reason_item:nth-of-type(even) .appraisal-reason_head {
        margin: 0 calc(50% - 50vw);
        width: 100vw;
    }

    .appraisal-reason_item:nth-of-type(even) .appraisal-reason_body {
        width: 100%;
        margin-left: unset;
        margin-right: unset;
        margin-top: -30px;
        padding-right: 28px;
        padding-left: unset;
    }

    .appraisal-reason_body h3 {
        gap: 10px;
        padding: 13px 10px 16px 10px;
        margin-right: calc(50% - 50vw);
    }

    .appraisal-reason_body h3 span::after {
        position: absolute;
        content: "";
        width: 114px;
        height: 2px;
        background: #fff;
        left: 0;
        bottom: -1px;
    }

    .appraisal-reason_item:nth-of-type(even) .appraisal-reason_body h3 {
        margin-left: calc(50% - 50vw);
        margin-right: unset;
        padding-left: 25px;
    }

    .appraisal-reason_body p {
        background: #fff;
        font-size: 16px;
        padding: 8px;
        line-height: 1.2;
        min-height: 90px;
    }
}


.appraisal-reinforcement {
    background-image: url(./assets/img/202412/bg.jpg);
    background-size: cover;
    background-position: center;
    padding: 40px 10px;
}

.appraisal-reinforcement_title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    color: #fff;
    font-size: 36px;
    font-weight: 700;
}

.appraisal-reinforcement_list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 37px;
    gap: 10px 18px;
}

.appraisal-reinforcement_item {
    background-size: contain;
    background-repeat: no-repeat;
    width: 370px;
    height: 214px;
}

.appraisal-reinforcement_item.-item1 {
    background-image: url(./assets/img/202412/reinforcement1.png);
}

.appraisal-reinforcement_item.-item2 {
    background-image: url(./assets/img/202412/reinforcement2.png);
}

.appraisal-reinforcement_item.-item3 {
    background-image: url(./assets/img/202412/reinforcement3.png);
}

.appraisal-reinforcement_inner {
    padding: 28px 59px 0 18px;
    rotate: -6deg;
}

.appraisal-reinforcement_item h3 {
    font-size: 24px;
    font-weight: 700;
    color: #FF5A03;
    margin-left: 3px;

}

.appraisal-reinforcement_item p {
    font-size: 16px;
    line-height: calc(23 / 16);
    margin-top: 7px;
}

@media (max-width: 768px) {
    .appraisal-reinforcement {
        background-image: url(./assets/img/202412/bg_sp.jpg);
        padding: 40px 0px;
        margin: 0 calc(50% - 50vw);
        width: 100vw;
    }

    .appraisal-reinforcement_list {
        flex-direction: column;
        margin: 24px auto 0;
        width: fit-content;
        gap: 23px;
    }

    .appraisal-reinforcement_item.-item1 {
        width: 390px;
        height: 203px;
        margin-left: -10px;
    }

    .appraisal-reinforcement_item.-item2 {
        order: 3;
        width: 377px;
        height: 222px;
        margin-left: -10px;
    }

    .appraisal-reinforcement_item.-item3 {
        order: 2;
        width: 380px;
        height: 214px;
        margin-left: -10px;
    }

    .appraisal-reinforcement_item p {
        margin-top: 4px;
    }

    .appraisal-reinforcement_inner {
        padding: 28px 59px 0 16px;
    }
}

.appraisal-declaration_title {
    font-size: 32px;
    line-height: calc(46 / 32);
    font-weight: 700;
    color: #FF5A03;
    text-align: center;
}

.appraisal-declaration_list {
    display: flex;
    margin-left: -70px;
    margin-top: 40px;
}

.appraisal-declaration_item {
    width: calc(100% / 3 - 70px);
    margin-left: 70px;
}

.appraisal-declaration_item.-item1 figure {
    max-width: 128px;
}

.appraisal-declaration_item.-item2 figure {
    max-width: 82px;
}

.appraisal-declaration_item.-item3 figure {
    max-width: 82px;
}

.appraisal-declaration_item figure {
    width: 100%;
    height: auto;
}

.appraisal-declaration_item img {
    width: 100%;
    height: auto;
}

.appraisal-declaration_head {
    background: #FF5A03;
    border-radius: 50%;
    width: 100%;
    aspect-ratio: 1 / 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 20px;
}

.appraisal-declaration_head h3 {
    font-size: 19px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin-top: 10px;
}

.appraisal-declaration_body p {
    font-size: 16px;
    line-height: calc(23 / 16);
    margin-top: 15px;
}

@media (max-width: 768px) {
    .appraisal-declaration {
        padding-top: 40px;
    }

    .appraisal-declaration_title {
        font-size: 20px;
        line-height: calc(29 / 20);
    }

    .appraisal-declaration_list {
        flex-direction: column;
        margin-left: unset;
        margin-top: 25px;
        row-gap: 65px;
    }

    .appraisal-declaration_item {
        width: 100%;
        margin-left: unset;
    }

    .appraisal-declaration_item.-item1 figure {
        max-width: 160px;
        margin-top: -23px;
    }

    .appraisal-declaration_item.-item2 figure {
        max-width: 92px;
        margin-top: -29px;
    }

    .appraisal-declaration_item.-item3 figure {
        max-width: 82px;
    }

    .appraisal-declaration_head {
        max-width: 280px;
        padding: 0px 24px;
        margin: 0 auto;
    }

    .appraisal-declaration_head h3 {
        font-size: 24px;
        line-height: 1.2;
        margin-top: 20px;
    }

    .appraisal-declaration_body p {
        width: 76%;
        margin: 16px auto 0;
    }
}


.appraisal-consultation {
    background: #EDEDED;
    padding: 38px 40px 40px 40px;
}

.appraisal-consultation_title {
    font-size: 32px;
    line-height: calc(46 / 32);
    font-weight: 700;
    color: #FF5A03;
    text-align: center;
}

.appraisal-consultation_contents {
    display: flex;
    align-items: flex-end;
    gap: 115px;
}

.appraisal-consultation_head {
    width: 50%;
    display: flex;
    flex-direction: column;
    gap: 24px;
    margin-top: 32px;
}

.appraisal-consultation_item {
    background: #fff;
    border-radius: 8px;
    padding: 20px;
}

.appraisal-consultation_item h3 {
    font-size: 20px;
    font-weight: 700;
    line-height: calc(29 / 20);
}

.appraisal-consultation_item p {
    font-size: 16px;
    line-height: calc(23 / 16);
}

.appraisal-consultation_body {
    width: 50%;
}

.appraisal-consultation_body figure {
    margin-left: auto;
    max-width: 364px;
    width: 100%;
}

.appraisal-consultation_body img {
    width: 100%;
    height: auto;
}

@media (max-width: 768px) {
    .appraisal-consultation {
        padding: 40px 12px;
    }

    .appraisal-consultation_title {
        font-size: 20px;
        line-height: calc(29 / 20);
    }

    .appraisal-consultation_contents {
        flex-direction: column;
        gap: 24px;
    }

    .appraisal-consultation_head {
        width: 100%;
        gap: 16px;
        margin-top: 24px;
    }

    .appraisal-consultation_item {
        padding: 16px;
    }

    .appraisal-consultation_item h3 {
        font-size: 16px;
        line-height: calc(23 / 16);
    }

    .appraisal-consultation_item p {
        font-size: 14px;
        line-height: calc(20 / 14);
        margin-top: 8px;
    }

    .appraisal-consultation_body {
        margin: 0 calc(50% - 50vw);
        width: 100vw;
    }

    .appraisal-consultation_body figure {
        margin: 0 auto;
        max-width: 364px;
    }
}


.wpforms-entry-preview-label {
    background: #f2f5fa !important;
    font-weight: bold !important;
    color: #000 !important;
}

.wpforms-field-layout .wpforms-field-label {
    padding: 15px 0 0 0 !important;
    margin: 0 !important;
    font-size: 16px !important;
}

.wpforms-field-layout .wpforms-field-label:before {
    display: none !important;
}

.wpforms-page-next,
.wpforms-submit {
    border-radius: 100px !important;
    background: #cc1d2a !important;
    width: 40% !important;
    margin: 0 auto !important;
    display: block !important;
}

.wpforms-page-prev {
    border-radius: 100px !important;
    background: #707379 !important;
    width: 30% !important;
    margin: 0 auto !important;
    display: block !important;
}

.wpforms-page-next:hover,
.wpforms-submit:hover {
    background: #cc1d2a !important;
}

.wpforms-entry-preview-label,
.wpforms-entry-preview-label-layout {
    font-size: 13px !important;
}