@charset "utf-8";

body {
    font-family: Roboto, noto sans jp, open sans, Meiryo, hiragino kaku gothic pron, sans-serif;
    /* margin: 0; */
}

.mv__wrap {
    display: flex;
    width: 100%;
    justify-content: space-between
}

.mv_l {
    padding: 60px 20px 30px;
    width: calc(100% - 360px)
}

.mv_r {
    width: 360px;
    box-sizing: border-box;
    background: #ebf3f9;
    padding: 30px 35px
}

#top_intro .mv__wrap .coment {
    color: #e65549;
    font-size: 12px;
    text-align: right
}

#top_intro .mv__wrap .ttl {
    text-align: center;
    color: #000;
    font-size: 21px;
    font-weight: 700
}

#top_intro .mv__wrap .ttl_sub {
    text-align: center;
    color: #000;
    font-size: 9px
}

p.reqire-comment {
    text-align: right;
    color: #e65549;
    font-size: 12px;
    font-weight: 700;
    margin-bottom: -34px
}

#top_intro .mv__wrap .subttl {
    color: #3c95c1;
    text-align: center;
    font-size: 18px;
    font-weight: 700
}

#top_intro .mv__wrap .subttl span {
    position: relative
}

#top_intro .mv__wrap .subttl span:before,
#top_intro .mv__wrap .subttl span:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 20px;
    height: 1px;
    background-color: #3c95c1
}

#top_intro .mv__wrap .subttl span:before {
    left: -20px;
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg)
}

#top_intro .mv__wrap .subttl span:after {
    right: -20px;
    -webkit-transform: rotate(-60deg);
    transform: rotate(-60deg)
}

#pardot-form {
    text-align: left
}

.required {
    color: #e65549;
    font-size: 12px
}

div.error p {
    color: #e65549;
    font-size: 12px;
    padding-top: 30px;
    padding-left: 4px
}

span.error {
    margin-top: -5px;
    margin-left: 4px;
    display: inline-block;
    color: #e65549;
    font-size: 12px
}

.field-label {
    font-weight: 700;
    padding: 0 3px;
    font-size: 14px;
    display: none;
}

#pardot-form input[type=text] {
    border: 1px solid #b2cee6;
    border-radius: 8px;
    padding: 14px;
    box-sizing: border-box;
    width: 100%;
    margin-bottom: 0;
    margin: 6px 0 5px;
    -webkit-appearance: none
}

#top_intro #pardot-form input.text.size_s[type=text] {
    width: 48%;
    margin-right: 1%
}

#pardot-form p.txt_c {
    text-align: center
}

#pardot-form dl {
    margin-bottom: 10px;
}

.pc-text {
    text-align: center;
    color: #fff;
}

.pc-text .subttl {
    color: #fff;
    text-align: center;
    font-size: 15px;
    font-weight: 700;
    margin: 0 auto;
}

.pc-text .subttl span {
    position: relative;
}

.pc-text .subttl span:before {
    left: -20px;
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
}

.pc-text .subttl span:before,
.pc-text .subttl span:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 20px;
    height: 1px;
    background-color: #fff;
}

.pc-text .subttl span:before,
.pc-text .subttl span:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 20px;
    height: 1px;
    background-color: #fff;
}

.pc-text .subttl span:after {
    right: -20px;
    -webkit-transform: rotate(-60deg);
    transform: rotate(-60deg);
}

#pardot-form input[type=submit],
.sp_btn a {
    background: #e65549;
    color: #fff;
    font-weight: 700;
    border: none;
    border-radius: 50px;
    width: 88%;
    box-sizing: border-box;
    padding: 10px;
    font-size: 15px;
    margin: 8px 0;
    position: relative;
    display: inline-block;
    -webkit-appearance: none
}

.input__arrow {
    position: relative
}

.input__arrow:before,
.input__arrow:after,
.sp_btn a:before,
.sp_btn a:after {
    content: '';
    position: absolute;
    background: #fff;
    z-index: 2
}

.input__arrow:before,
.sp_btn a:before {
    top: 50%;
    right: 20px;
    height: 1px;
    width: 24px
}

.input__arrow:after,
.sp_btn a:after {
    top: calc(50% - 3px);
    right: 20px;
    height: 1px;
    width: 7px;
    transform: rotate(45deg)
}

p.txt_s {
    color: #fff;
    font-size: 13px;
    margin: 0 5px;
}

.list-arrow-blue li {
    text-align: left;
    margin: 5px 0;
    position: relative;
    padding-left: 15px;
    font-size: 12px
}

.list-arrow-blue li a {
    text-decoration: none;
    color: #fff;
}

.list-arrow-blue li:before {
    left: 4px;
    top: 5px;
    box-sizing: border-box;
    width: 5px;
    height: 5px;
    border: 5px solid transparent;
    border-left: 5px solid #fff;
    content: '';
    position: absolute
}

.sp_btn {
    display: none;
    width: 100%;
    text-align: center;
    background: #ebf3f9
}

.close {
    display: none
}

.sp {
    display: none
}

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

.flex_coment>div:nth-child(2) {
    width: 70%
}

span.required {
    font-size: 10px;
    font-weight: 700;
    color: #e65549;
    vertical-align: text-bottom
}

#fv-form .form_name_l,
#fv-form .form_name_f {
    width: 100%;
    display: inline-block
}

#fv-form .form_name_l .error,
#fv-form .form_name_f .error {
    display: flex;
    flex-flow: column;
    justify-content: space-evenly;
    align-items: baseline;
    flex-direction: column;
    flex-wrap: wrap
}

input#Last_Namepi_Last_Name:empty::before {
    color: grey
}

input#Last_Namepi_Last_Name[data-placeholder]:not([data-placeholder=""]):empty::before {
    content: attr(data-placeholder);
    color: grey
}

input#Last_Namepi_Last_Name:empty::before {
    content: 'fallback placeholder'
}

.Customer_Type input {
    width: 20px;
    height: 20px;
    top: 4px;
    position: relative
}

.Customer_Type label {
    font-size: 14px;
    color: #000
}

.subttl_2 {
    color: #fff;
    text-align: center;
    font-size: 14px;
    font-weight: 700;
    margin: -10px auto;
}

.subttl_2 span {
    position: relative;
}

.subttl_2 span:before,
.subttl_2 span:after {
    content: '';
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 20px;
    height: 1px;
    background-color: #fff;
}

.subttl_2 span:before {
    left: -20px;
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
}

.subttl_2 span:after {
    right: -20px;
    -webkit-transform: rotate(-60deg);
    transform: rotate(-60deg);
}

#pardot-form p.txt_c {
    text-align: center;
    margin: 2px auto 9px;
}

@media only screen and (max-width:768px) {
    .form_tbl .field-label:nth-child(1) {
        padding-bottom: 0;
        padding-top: 10px
    }

    .sp_btn,
    .close,
    .sp {
        display: block
    }

    .close {
        text-align: left;
        color: #3c95c1;
        position: relative;
        padding-left: 10px
    }

    .close:before,
    .close:after {
        content: '';
        position: absolute;
        background: #3c95c1;
        z-index: 9
    }

    .close:before {
        top: 50%;
        left: -20px;
        height: 1px;
        width: 24px
    }

    .close:after {
        top: calc(50% - 3px);
        left: -20px;
        height: 1px;
        width: 7px;
        transform: rotate(-45deg)
    }

    .mv__wrap {
        flex-wrap: wrap
    }

    .mv_l,
    .mv_r {
        width: 100%
    }

    .mv_r {
        display: none
    }

    .mv_l {
        padding: 0 0 30px
    }

    #top_intro .inner {
        width: 100%
    }

    .form_tbl {
        padding: 0 6%
    }

    #pardot-form input[type=submit] {
        width: 100%
    }

    #top_intro h1 {
        text-align: center
    }

    ul.list-arrow-blue {
        width: 100%;
        margin: 0;
        display: contents
    }

    ol,
    ul {
        list-style: none
    }

    #top_intro #sp_btn.fixed {
        position: fixed;
        bottom: 0;
        width: 100%;
        z-index: 9999
    }

    #top_intro #sp_btn.fixed a {
        display: block;
        width: calc( 99% - 195px );
        margin-left: auto;
        margin-right: auto;
        font-size: 14px;
        padding-left: 0;
        padding-right: 0;
    }

    #top_intro #sp_btn.fixed a::before,
    #top_intro #sp_btn.fixed a::after {
        display: none
    }

    #fv-form fieldset {
        border: none;
        padding: 0;
    }

    #fv-form dd {
        margin: 0;
    }

    .modal {
        display: none;
        height: 100vh;
        position: fixed;
        top: 0;
        width: 100%;
        background: #ebf3f9;
        z-index: 9999;
        box-sizing: border-box
    }

    .modal__bg {
        height: 100vh;
        position: absolute;
        width: 100%;
        top: 0;
        left: 0
    }

    .modal__content {
        width: 100%;
        overflow-y: scroll;
        height: 100%;
        position: relative;
        z-index: 9999;
    }
}

@media only screen and (min-width:301px) {
    p.txt_s {
        color: #090909;
    }

    .list-arrow-blue li a {
        color: #3c95c1;
        text-decoration: none;
    }

    .list-arrow-blue li:before {
        border-left: 5px solid #3c95c1;
    }

    p.reqire-comment {
        display: none;
    }

    .pc-text {
        display: none;
    }
}

@media screen and (min-width:301px) and (max-width: 320px) {
    .close {
        left: 26px;
    }
}