        :root {
            --frm-point-color: #4086b1;
        }
        section > div.frm__title_in {
            padding: 0;
        }
        #mfp_phase_confirm {
            display: none !important;
        }
        .frm__wrapper .mfp_element_all {
            max-width: calc(100% - 32px);
        }
        .consultation__area-free {
            background: #fff;
            border-radius: 50%;
            color: #4086b1;
            font-size: 0.58em;
            letter-spacing: 0.05em;
            transform: rotate(-17deg);
            display: flex;
            width: 60px;
            height: 60px;
            align-items: center;
            line-height: 1;
            justify-content: center;
        }
        .point-l {
            font-size: 1.2em;
        }
        .color02 {
            color: #01316b;
        }
        .h2_cap {
            font-size: 0.8em;
            margin-bottom: 8px;
            position: relative;
        }
        .h2_cap::before, .h2_cap::after {
            content: "";
            position: absolute;
            border-left: double 4px;
            width: 4px;
            height: 24px;
        }
        .h2_cap::before {
            transform: rotate(-35deg) translateX(-16px) translateY(-5px);
        }
        .h2_cap::after {
            transform: rotate(35deg) translateX(12px) translateY(-4px);
        }
        .type_h2 {
            font-size: 6.4vw;
            letter-spacing: -0.05em;
            margin-bottom: 40px;
            text-align: center;
        }
        .frm__wrapper {
            background-color: #f8f8f8;
            padding: 40px 16px;
        }

        .frm__title_text {
            position: relative;
            font-size: 0.92em;
            width: 13em;
            margin: auto;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .frm__title_text .consultation__area-free {
            position: absolute;
            transform: translate(0, -50%) rotate(-17deg);
            top: calc(50% + 0.2em);
            left: -2.1em;
            width: 3.3em;
            height: 3.3em;
            font-size: 0.7em;
            font-weight: 700;
            box-shadow: 0.12em 0.17em 0 0 rgba(0,0,0,0.15);
        }
        div.mfp_ok {
            position: relative;
            height: 16px;
            width: 24px;
            background: none;
            border: none;
        }
        div.mfp_ok::before {
            content: "";
            position: absolute;
            display: block;
            top: 50%;
            left: 50%;
            width: 8px;
            height: 14px;
            transition: ease all .5s;
            transform: translate(-50%, -50%) rotate(45deg);
            border-right: 2px solid var(--frm-point-color);
            border-bottom: 2px solid var(--frm-point-color);
        }
        .frm__block:not(:first-child) {
            padding-top: 16px;
        }
        .ui-datepicker table th:first-child {
            color: #db2323;
        }
        .ui-datepicker table th:last-child {
            color: #3a8be1;
        }
        .ui-widget-content span.ui-state-default {
            color: #666;
        }
        .ui-widget-content a.ui-state-default {
            color: #222;
        }
        .ui-widget-content td:first-child a.ui-state-default {
            color: #db2323;
        }
        .ui-widget-content td:last-child a.ui-state-default {
            color: #3a8be1;
        }
        @media screen and (min-width: 768px) {
            .frm__block:not(:first-child) {
                padding-top: 20px;
            }
            .frm__title_text .consultation__area-free {
                top: 50%;
                left: -2.3em;
            }
            .type_h2 {
                font-size: 40px;
            }
        }

        .frm__block {
            padding-bottom: 16px;
            padding-left: 16px;
            padding-right: 16px;
            border-bottom: 1px solid #ccc;
        }

        .frm__input {
            padding: 16px;
            background-color: #fff;
            border: 1px solid #eee;
            width: 100%;
            font-size: 14px;
            line-height: 1.2;
        }

        .frm__block-header {
            position: relative;
            margin-bottom: 12px;
            padding-left: 8px;
        }

        .frm__inner {
            width: calc(736px + (1200 - 736) * (100% - 768px) / (1920 - 768));
            max-width: 100%;
            margin-left: auto;
            margin-right: auto;
            background-color: #f8f8f8;
        }

        .frm__inner-02 {
            width: 500px;
            max-width: 100%;
            margin-left: auto;
            margin-right: auto;
        }

        @media screen and (min-width: 768px) {
            .frm__inner-02 {
                width: 900px;

            }

            .frm__wrapper {
                max-width: 700px;
                margin: auto;
                background: none;
                padding: 56px 40px;
                background-image: radial-gradient(rgba(200, 200, 200, 0.2) 10%, rgba(255, 255, 255, 0) 20%), radial-gradient(rgba(200, 200, 200, 0.2) 10%, rgba(255, 255, 255, 0) 20%);
                background-position: 0 8px, 8px 0;
                background-size: 16px 16px;
            }

            .frm__inner {
                padding: 24px;
                padding-top: 48px;
                padding-bottom: 48px;
            }

            .frm__block {
                display: flex;
                padding-left: 0;
                padding-right: 24px;
                color: #555;
                padding-bottom: 20px;
            }

            .frm__block-body {
                width: calc(100% - 200px);

            }

            .frm__block-header {
                padding: 0;
                margin: 0;
                display: flex;
                align-items: center;
                justify-content: center;
                width: 200px;
                line-height: 1.2;
            }

            .frm__input {
                font-size: 16px;
            }
        }

        @media screen and (min-width: 1024px) {
            .frm__block-header {
                width: 250px;
            }

            .frm__block-body {
                width: calc(100% - 250px);

            }

            .frm__inner {
                padding: 56px 24px;
            }
        }

        @media screen and (min-width: 1280px) {
            .frm__inner {
                width: 1300px;
                max-width: 90%;
            }
        }

        .frm__date-item:not(:last-child) {
            padding-bottom: 12px;
            border-bottom: 1px dashed #ccc;
            margin-bottom: 12px;
        }

        .frm__date-item {
            display: flex;
            justify-content: flex-start;
            gap: 8px;
            flex-direction: column;
        }
        .frm__date-title-01 {
            padding-left: 8px;
            position: relative;
        }
        .frm__date-title {
            font-size: 14px;
            margin: 8px 0;
            width: 7em;
        }

        .frm__date-item-01 {
            width: 70%;
        }

        .frm__date-item-02 {
            width: 70%;
            display: flex;
            align-items: center;
        }

        @media screen and (min-width: 768px) {
            .frm__date-item-01 {
                display: flex;
                align-items: center;
            }

            .frm__date-title {
                padding: 0;
                margin: 0;
                white-space: nowrap;
                font-size: 15px;
            }
        }

        .frm__checkbox {
            display: none;
        }

        .frm__check-item {
            position: relative;
            display: inline-block;
            padding-left: 24px;
            margin-right: 16px;
            font-size: 15px;
        }

        .frm__checkbox-parts::before {
            position: absolute;
            content: none;
            display: block;
            top: 40%;
            left: 50%;
            transition: ease all .5s;
            transform: translate(-50%, -50%) rotate(45deg);
            border-right: 2px solid #d480b6;
            border-bottom: 2px solid #d480b6;
        }

        .frm__checkbox-parts {
            position: absolute;
            background-color: #fff;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            width: 16px;
            height: 16px;
            transition: ease all .5s;
            border: 1px solid #eee;

        }

        .frm__checkbox:checked~.frm__checkbox-txt .frm__checkbox-parts::before {
            content: "";
            animation-name: displayCheck;
            animation-duration: .2s;
            animation-fill-mode: forwards;
        }
        @keyframes displayCheck {
            from{
                width: 0;
                height: 0;
            }to{

            width: 10px;
            height: 20px;
            }
        }

        .frm__checkbox:checked~.frm__checkbox-txt .frm__checkbox-parts {
            border-color: #d480b6;
            border: none;
        }
        
        .frm__checkbox:checked~.frm__checkbox-txt .frm__checkbox-parts {
            background-color: rgba(200, 200, 200, 0);
        }

        .frm__checked-tel-area {
            display: flex;
            align-items: center;
        }

        .frm__checked-tel-title {
            font-size: 14px;
            white-space: nowrap;
            padding-right: 16px;

        }

        .frm__check-area-01 {
            margin-bottom: 16px;
        }

        .frm__attention {
            font-size: 12px;
            color: #666;
        }

        @media screen and (min-width: 768px) {
            .frm__attention {
                font-size: 14px;
            }

            .frm__checkbox-parts {
                width: 24px;
                height: 24px;
            }

            .frm__check-item {
                padding-left: 32px;
            }
        }

        .frm__attention-01 {
            vertical-align: bottom;
            display: inline-block;
            margin-top: 8px;

        }

        @media screen and (min-width: 768px) {
            .frm__checked-tel-title {
                font-size: 15px;
            }

            .frm__check-item:not(:last-child) {
                margin-bottom: 16px;
            }

            .frm__check-item {
                display: block;
            }

            .frm__flex-01 {
                display: flex;
            }

            .frm__check-area-01 {
                margin-bottom: 0;
                width: 100px;
            }

            .frm__checked-tel-area {
                width: calc(100% - 100px);
                justify-content: flex-start;
            }
        }

        @media screen and (min-width: 1024px) {
            .frm__checked-tel-title {
                padding-right: 32px;
            }
        }

        .frm__textarea {
            height: 130px;
            max-width: 100%;
            width: 450px;
        }

        .frm__block-area-attention {
            display: block;
            text-align: right;
            font-size: 14px;
            padding-top: 12px;

        }

        .frm__block-area-attention-kome img {
            width: 12px;
            height: auto;
            display: inline-block;
            vertical-align: middle;
            position: relative;
            top: -2px;
            margin-right: 2px;
        }

        .frm__list-area {
            color: #666;
        }

        .frm__list {
            font-size: 14px;
            padding-left: 28px;
            line-height: 1.4;
            position: relative;
        }

        @media screen and (min-width: 768px) {
            .frm__list {
                padding-left: 36px;
            }
        }

        .frm__list:not(:last-child) {
            margin-bottom: 12px;
        }

        .frm__list-parts {
            display: block;
            position: absolute;
            left: 8px;
            top: 3px;
            width: 9px;
            height: 9px;
            border-top: 2px solid var(--frm-point-color);
            border-right: 2px solid var(--frm-point-color);
            transform: rotate(45deg);
        }
        div.mfp_buttons {
            display: flex;
            align-items: stretch;
            justify-content: center;
            gap: 5px;
        }
        div.mfp_buttons button#mfp_button_send,
        div.mfp_buttons button#mfp_button_cancel {
            background: var(--frm-point-color);
            color: #fff;
            border: none;
            padding: 0.8em 2.2em;
            cursor: pointer;
        }
        div.mfp_buttons button#mfp_button_send:hover,
        div.mfp_buttons button#mfp_button_cancel:hover {
            opacity: 0.8;
        }
        .frm__list-area {
            display: inline-block;
        }

        .frm__list-wrapper {
            margin-top: 24px;
            margin-bottom: 48px;
        }

        @media screen and (min-width: 768px) {
            .frm__list-wrapper {
                text-align: center;
            }

            .frm__list-area {
                text-align: left;
            }

            .frm__list:not(:last-child) {
                margin-bottom: 16px;
            }
        }

        .frm__button-area {
            text-align: center;
            width: 90%;
            margin-left: auto;
            margin-right: auto;
            max-width: 90%;
            transition: ease all .5s;
        }

        .frm__button::after {
            content: "";
            display: block;
            position: absolute;
            right: 0;
            top: 0;
            width: 50%;
            height: 100%;
            clip-path: polygon(10% 0, 100% 0, 100% 100%, 0% 100%);
            background-color: rgba(255, 255, 255, 0.2);
            z-index: 10;
        }

        .frm__button-txt {
            position: relative;
            z-index: 100;
        }

        .frm__button-area:hover {
            opacity: .8;
        }
        .frm__button {
            display: block;
            padding: 24px;
            background-color: var(--frm-point-color);
            border: none;
            line-height: 1.15;
            width: 400px;
            max-width: 100%;
            text-align: center;
            color: #fff;
            font-size: 18px;
            position: relative;
            z-index: 100;
        }

        .frm__button-parts {
            position: absolute;
            display: block;
            width: 80%;
            height: 100%;
            background-color: #c1c2c2;
            right: -8px;
            bottom: -8px;
            z-index: 10;
        }

        .frm__button-parts-area {
            display: inline-block;
            position: relative;
            max-width: 100%;
        }

        .frm__button-area {
            margin-bottom: 48px;
        }

        .frm__input-type-01 {
            width: 344px;
            max-width: 100%;
        }

        .frm__input-type-02 {
            width: 250px;
            max-width: 100%;
        }

        .frm__input-type-03 {
            margin-right: 8px;
            width: 90px;
            max-width: 100%;
        }

        .frm__checked-tel-select {
            width: 254px;
            max-width: 100%;
        }

        .frm__img-01 {
            width: 450px;
            max-width: 90%;
            margin-left: auto;
            margin-right: auto;
            margin-bottom: 24px;
        }

        .frm__img-02 {
            width: 600px;
            max-width: 100%;
            margin-left: auto;
            margin-right: auto;
            margin-bottom: 32px;
        }

        @media screen and (min-width: 768px) {
            .frm__img-02 {
                margin-bottom: 40px;
            }
            .frm__checked-tel-select {
                width: 277px;
            }
        }

        @media screen and (min-width: 1024px) {
            .frm__wrapper {
                padding: 80px 0;
            }
        }

        .frm__attention-02 {
            padding-top: 8px;
            display: block;
        }

        @media screen and (min-width: 768px) {
            .frm__attention-02 {
                padding-top: 16px;
            }
        }

        img.frm__required {
            width: 8px;
            height: auto;
            display: inline-block;
            margin-left: 8px;
            vertical-align: middle;
        }

        @media screen and (min-width: 768px) {
            img.frm__required {
                position: absolute;
                right: 24px;
                top: 50%;
                transform: translateY(-50%);
                width: 12px;
            }

            .frm__date-title-01 .frm__required {
                right: 12px;
            }
        }
        @media screen and (min-width: 1024px) {
            img.frm__required {
                right: 32px;
            }
        }

        .frm__date-nes {
            width: 100%;
            display: flex;
            align-items: center;
        }

        .frm__attention-box {
            padding: 16px;
            border: 2px solid #ccc;
        }

        .frm__attention-list-area {
            color: #666;
        }

        .frm__attention-list::before {
            content: "※";
            position: absolute;
            left: 0;
            color: #d480b6;
        }

        .frm__attention-list:not(:last-child) {
            margin-bottom: 16px;
        }

        .frm__attention-list {
            padding-left: 24px;
            font-size: 14px;
            position: relative;
            line-height: 1.4;
        }

        @media screen and (min-width: 768px) {
            .frm__attention-box {
                padding: 32px;
                width: 90%;
                margin-left: auto;
                margin-right: auto;
            }
        }
        