/* ===== Elementor Pro の要素別カスタムCSSを移設（2026-10-23。Pro 停止に伴い post-*.css から転記。元は各要素の Advanced > Custom CSS） ===== */
/* post-37 button .elementor-element-ec37003 */
.elementor-37 .elementor-element.elementor-element-ec37003 .elementor-button{white-space:nowrap}
/* post-37 button .elementor-element-ec37004 */
.elementor-37 .elementor-element.elementor-element-ec37004 .elementor-button{white-space:nowrap}
/* post-219 heading .elementor-element-ec2001w */
.elementor-219 .elementor-element.elementor-element-ec2001w{position:absolute;right:-50px;bottom:9%;pointer-events:none;z-index:0}.elementor-219 .elementor-element.elementor-element-ec2001w .elementor-heading-title{font-size:168px;line-height:1;color:transparent;-webkit-text-stroke:1.5px rgba(11,24,48,0.08);letter-spacing:.02em;white-space:nowrap}@media(max-width:1024px){.elementor-219 .elementor-element.elementor-element-ec2001w .elementor-heading-title{font-size:96px}}@media(max-width:767px){.elementor-219 .elementor-element.elementor-element-ec2001w{bottom:5%;right:-24px}.elementor-219 .elementor-element.elementor-element-ec2001w .elementor-heading-title{font-size:54px;-webkit-text-stroke:1px rgba(11,24,48,0.10)}}
/* post-219 heading .elementor-element-ec2001o */
.elementor-219 .elementor-element.elementor-element-ec2001o{position:absolute;right:13%;top:17%;width:96px;height:96px;border-radius:50%;background:linear-gradient(135deg,#4FC3F7,#2B59FF);opacity:.32;animation:twFloat 7s ease-in-out infinite alternate;pointer-events:none;z-index:0}.elementor-219 .elementor-element.elementor-element-ec2001o::before{content:'';position:absolute;right:-170px;top:210px;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,#4FC3F7,#2B59FF);opacity:.5;animation:twFloat 9s ease-in-out infinite alternate-reverse;display:block}.elementor-219 .elementor-element.elementor-element-ec2001o::after{content:'';position:absolute;left:-340px;bottom:-360px;width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#4FC3F7,#2B59FF);opacity:.45;animation:twFloat 6s ease-in-out infinite alternate;display:block}@keyframes twFloat{from{transform:translateY(-13px)}to{transform:translateY(13px)}}@media(prefers-reduced-motion:reduce){.elementor-219 .elementor-element.elementor-element-ec2001o,.elementor-219 .elementor-element.elementor-element-ec2001o::before,.elementor-219 .elementor-element.elementor-element-ec2001o::after{animation:none}}@media(max-width:767px){.elementor-219 .elementor-element.elementor-element-ec2001o{width:60px;height:60px;right:7%;top:13%}.elementor-219 .elementor-element.elementor-element-ec2001o::before{right:-60px;top:150px;width:30px;height:30px}.elementor-219 .elementor-element.elementor-element-ec2001o::after{left:-40px;bottom:-200px}}
/* post-219 heading .elementor-element-ec20012 */
.elementor-219 .elementor-element.elementor-element-ec20012 .tw-grad{background:linear-gradient(120deg,#4FC3F7,#2B59FF,#4FC3F7);background-size:220% auto;-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;animation:twShine 7s ease-in-out infinite}@keyframes twShine{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}@media(prefers-reduced-motion:reduce){.elementor-219 .elementor-element.elementor-element-ec20012 .tw-grad{animation:none}}
/* post-219 heading .elementor-element-ec2001s2 */
.elementor-219 .elementor-element.elementor-element-ec2001s2 .elementor-heading-title,.elementor-219 .elementor-element.elementor-element-ec2001s2 .elementor-heading-title a{display:inline-flex;align-items:center;gap:12px}.elementor-219 .elementor-element.elementor-element-ec2001s2 .tw-c{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#4FC3F7,#2B59FF);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px;line-height:1;flex:none}
/* post-219 heading .elementor-element-ec20017 */
.elementor-219 .elementor-element.elementor-element-ec20017{position:absolute;right:26px;top:50%;transform:translateY(-50%);writing-mode:vertical-rl}
/* post-219 heading .elementor-element-ec20018 */
.elementor-219 .elementor-element.elementor-element-ec20018{position:absolute;left:48px;bottom:36px;display:flex;flex-direction:column;align-items:center;z-index:2}.elementor-219 .elementor-element.elementor-element-ec20018 .elementor-heading-title{writing-mode:vertical-rl}.elementor-219 .elementor-element.elementor-element-ec20018::after{content:'';width:2px;border-radius:2px;height:64px;background:linear-gradient(to bottom,#4FC3F7,rgba(79,195,247,0));margin-top:10px;display:block;margin-left:auto;margin-right:auto;animation:twScroll 2.2s cubic-bezier(.65,0,.35,1) infinite}@keyframes twScroll{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}@media(prefers-reduced-motion:reduce){.elementor-219 .elementor-element.elementor-element-ec20018::after{animation:none}}@media(max-width:1024px){.elementor-219 .elementor-element.elementor-element-ec20018{left:50%;bottom:6px;transform:translateX(-50%)}.elementor-219 .elementor-element.elementor-element-ec20018::after{height:48px}}
/* post-219 image .elementor-element-ec20019 */
.elementor-219 .elementor-element.elementor-element-ec20019{position:absolute;right:-70px;top:50%;transform:translateY(-50%);width:520px;opacity:.08;pointer-events:none;z-index:0}.elementor-219 .elementor-element.elementor-element-ec20019 img{width:100%}@media(max-width:1024px){.elementor-219 .elementor-element.elementor-element-ec20019{width:280px;right:-60px;top:auto;bottom:-40px;transform:none}}
/* post-219 heading .elementor-element-ec20901 */
.elementor-219 .elementor-element.elementor-element-ec20901 .elementor-heading-title{display:flex;align-items:center;gap:14px}.elementor-219 .elementor-element.elementor-element-ec20901 .elementor-heading-title::before{content:'';width:34px;height:8px;flex:none;background:radial-gradient(circle 4px at 4px 4px,#4FC3F7 98%,transparent),radial-gradient(circle 4px at 17px 4px,#3B8BF7 98%,transparent),radial-gradient(circle 4px at 30px 4px,#2B59FF 98%,transparent)}
/* post-219 text-editor .elementor-element-ec20903 */
.elementor-219 .elementor-element.elementor-element-ec20903{max-width:820px}
/* post-219 heading .elementor-element-ec20211 */
.elementor-219 .elementor-element.elementor-element-ec20211 .elementor-heading-title{display:flex;align-items:center;gap:14px}.elementor-219 .elementor-element.elementor-element-ec20211 .elementor-heading-title::before{content:'';width:34px;height:8px;flex:none;background:radial-gradient(circle 4px at 4px 4px,#4FC3F7 98%,transparent),radial-gradient(circle 4px at 17px 4px,#3B8BF7 98%,transparent),radial-gradient(circle 4px at 30px 4px,#2B59FF 98%,transparent)}
/* post-219 heading .elementor-element-ec20701 */
.elementor-219 .elementor-element.elementor-element-ec20701 .elementor-heading-title{display:flex;align-items:center;gap:14px}.elementor-219 .elementor-element.elementor-element-ec20701 .elementor-heading-title::before{content:'';width:34px;height:8px;flex:none;background:radial-gradient(circle 4px at 4px 4px,#4FC3F7 98%,transparent),radial-gradient(circle 4px at 17px 4px,#3B8BF7 98%,transparent),radial-gradient(circle 4px at 30px 4px,#2B59FF 98%,transparent)}
/* post-219 heading .elementor-element-ec20311 */
.elementor-219 .elementor-element.elementor-element-ec20311 .elementor-heading-title{display:flex;align-items:center;gap:14px}.elementor-219 .elementor-element.elementor-element-ec20311 .elementor-heading-title::before{content:'';width:34px;height:8px;flex:none;background:radial-gradient(circle 4px at 4px 4px,#4FC3F7 98%,transparent),radial-gradient(circle 4px at 17px 4px,#3B8BF7 98%,transparent),radial-gradient(circle 4px at 30px 4px,#2B59FF 98%,transparent)}
/* post-219 heading .elementor-element-ed20325 */
.elementor-219 .elementor-element.elementor-element-ed20325 .elementor-heading-title,.elementor-219 .elementor-element.elementor-element-ed20325 .elementor-heading-title a{display:inline-flex;align-items:center;gap:12px}.elementor-219 .elementor-element.elementor-element-ed20325 .tw-c{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#4FC3F7,#2B59FF);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px;line-height:1;flex:none}
/* post-219 image .elementor-element-ec20329 */
.elementor-219 .elementor-element.elementor-element-ec20329 img{aspect-ratio:16/10;object-fit:cover;width:100%;height:auto}@media(max-width:1024px){.elementor-219 .elementor-element.elementor-element-ec20329{order:-1}}
/* post-219 image .elementor-element-ec20335 */
.elementor-219 .elementor-element.elementor-element-ec20335 img{aspect-ratio:16/10;object-fit:cover;width:100%;height:auto}
/* post-219 heading .elementor-element-ec20331l */
.elementor-219 .elementor-element.elementor-element-ec20331l .elementor-heading-title,.elementor-219 .elementor-element.elementor-element-ec20331l .elementor-heading-title a{display:inline-flex;align-items:center;gap:12px}.elementor-219 .elementor-element.elementor-element-ec20331l .tw-c{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#4FC3F7,#2B59FF);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px;line-height:1;flex:none}
/* post-219 image .elementor-element-ec20345 */
.elementor-219 .elementor-element.elementor-element-ec20345 img{aspect-ratio:16/10;object-fit:cover;width:100%;height:auto}
/* post-219 heading .elementor-element-xc20332l */
.elementor-219 .elementor-element.elementor-element-xc20332l .elementor-heading-title,.elementor-219 .elementor-element.elementor-element-xc20332l .elementor-heading-title a{display:inline-flex;align-items:center;gap:12px}.elementor-219 .elementor-element.elementor-element-xc20332l .tw-c{width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,#4FC3F7,#2B59FF);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:13px;line-height:1;flex:none}
/* post-219 heading .elementor-element-ec20411 */
.elementor-219 .elementor-element.elementor-element-ec20411 .elementor-heading-title{display:flex;align-items:center;gap:14px}.elementor-219 .elementor-element.elementor-element-ec20411 .elementor-heading-title::before{content:'';width:34px;height:8px;flex:none;background:radial-gradient(circle 4px at 4px 4px,#4FC3F7 98%,transparent),radial-gradient(circle 4px at 17px 4px,#3B8BF7 98%,transparent),radial-gradient(circle 4px at 30px 4px,#2B59FF 98%,transparent)}
/* post-219 image .elementor-element-ec20421 */
.elementor-219 .elementor-element.elementor-element-ec20421{align-self:stretch}.elementor-219 .elementor-element.elementor-element-ec20421 .elementor-widget-container,.elementor-219 .elementor-element.elementor-element-ec20421 img{height:100%;object-fit:cover}@media(max-width:767px){.elementor-219 .elementor-element.elementor-element-ec20421 img{border:1px solid #E4E8F0;box-sizing:border-box}}
/* post-219 heading .elementor-element-ec20611 */
.elementor-219 .elementor-element.elementor-element-ec20611 .elementor-heading-title{display:flex;align-items:center;gap:14px}.elementor-219 .elementor-element.elementor-element-ec20611 .elementor-heading-title::before{content:'';width:34px;height:8px;flex:none;background:radial-gradient(circle 4px at 4px 4px,#4FC3F7 98%,transparent),radial-gradient(circle 4px at 17px 4px,#3B8BF7 98%,transparent),radial-gradient(circle 4px at 30px 4px,#2B59FF 98%,transparent)}
/* post-219 heading .elementor-element-ec20501 */
.elementor-219 .elementor-element.elementor-element-ec20501{width:260px;flex:none}@media(max-width:767px){.elementor-219 .elementor-element.elementor-element-ec20501{width:100%}}
/* post-219 heading .elementor-element-ec20511 */
.elementor-219 .elementor-element.elementor-element-ec20511{width:260px;flex:none}@media(max-width:767px){.elementor-219 .elementor-element.elementor-element-ec20511{width:100%}}
/* post-219 heading .elementor-element-ec20521 */
.elementor-219 .elementor-element.elementor-element-ec20521{width:260px;flex:none}@media(max-width:767px){.elementor-219 .elementor-element.elementor-element-ec20521{width:100%}}
/* post-219 heading .elementor-element-ec20531 */
.elementor-219 .elementor-element.elementor-element-ec20531{width:260px;flex:none}@media(max-width:767px){.elementor-219 .elementor-element.elementor-element-ec20531{width:100%}}
/* post-219 heading .elementor-element-ec20541 */
.elementor-219 .elementor-element.elementor-element-ec20541{width:260px;flex:none}@media(max-width:767px){.elementor-219 .elementor-element.elementor-element-ec20541{width:100%}}
/* post-219 heading .elementor-element-ec20551 */
.elementor-219 .elementor-element.elementor-element-ec20551{width:260px;flex:none}@media(max-width:767px){.elementor-219 .elementor-element.elementor-element-ec20551{width:100%}}
/* post-219 heading .elementor-element-ec20561 */
.elementor-219 .elementor-element.elementor-element-ec20561{width:260px;flex:none}@media(max-width:767px){.elementor-219 .elementor-element.elementor-element-ec20561{width:100%}}
/* post-219 heading .elementor-element-ec20571 */
.elementor-219 .elementor-element.elementor-element-ec20571{width:260px;flex:none}@media(max-width:767px){.elementor-219 .elementor-element.elementor-element-ec20571{width:100%}}
/* post-231 heading .elementor-element-ec23101 */
.elementor-231 .elementor-element.elementor-element-ec23101 .elementor-heading-title{display:flex;align-items:center;justify-content:center;gap:14px}.elementor-231 .elementor-element.elementor-element-ec23101 .elementor-heading-title::before{content:'';width:34px;height:8px;flex:none;background:radial-gradient(circle 4px at 4px 4px,#4FC3F7 98%,transparent),radial-gradient(circle 4px at 17px 4px,#3B8BF7 98%,transparent),radial-gradient(circle 4px at 30px 4px,#2B59FF 98%,transparent)}
/* post-238 heading .elementor-element-ec238l */
.elementor-238 .elementor-element.elementor-element-ec238l .elementor-heading-title{display:flex;align-items:center;gap:14px}.elementor-238 .elementor-element.elementor-element-ec238l .elementor-heading-title::before{content:'';width:34px;height:8px;flex:none;background:radial-gradient(circle 4px at 4px 4px,#4FC3F7 98%,transparent),radial-gradient(circle 4px at 17px 4px,#3B8BF7 98%,transparent),radial-gradient(circle 4px at 30px 4px,#2B59FF 98%,transparent)}
/* post-238 shortcode .elementor-element-7da8e3b */
.efo-form-right {
    width: 42.72727272727273%;
}

.efo-form-right-container {
    padding: 80px 0;
}

.efo-form-right-container>form {
    margin: 0 0 56px;
}

.efo-submit-container {
    max-width: 100%;
    padding: 0;
    text-align: center;
}

.service-form {
    position: relative;
    background: #F6F7F7;
}

.service-form:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background: #fff;
    box-shadow: -5px 0 20px rgb(0, 0, 0, .08);
    z-index: 1;
}

.service-form-inner {
    display: flex;
    justify-content: space-between;
    max-width: 1100px;
    margin: 0 auto;
    position: relative;
    z-index: 5;
}

.form-company-inner.area-inner {
    padding: 120px 0 0;
}

.form-company-inner.is-current input[type=text],
.form-company-inner.is-current textarea {
    background: #FDF3F0;
    border-color: #D93600;
}

.form-company-inner.post-inner {
    display: flex;
    align-items: flex-end;
}

.ttl {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    margin: 0 0 48px;
}

.ttl-txt {
    font-size: 12px;
    margin: 0 0 48px;
}

.form-sec-ttl {
    font-size: 14px;
    font-weight: bold;
    margin: 0 0 24px;
}

.form-flow {
    margin: 0 0 48px;
}

.step {
    display: flex;
    margin: 0 0 24px;
}

.step-num {
    width: 80px;
    line-height: 1;
    margin: 3px 20px 0 0;
    padding: 4px 0;
    border-radius: 20px;
    font-size: 12px;
    text-align: center;
    color: #999;
    background: #fff;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.step-num:after {
    content: "";
    width: 1px;
    height: 28px;
    position: absolute;
    bottom: -28px;
    left: 40px;
    background: #D6D6D6;
}

.step:last-of-type .step-num:after {
    content: none;
}

.step.is-current .step-num {
    color: #fff;
    background: #E65377;
}

.step.is-current .step-num:after {
    background: #E65377;
}

.step-ttl {
    font-size: 14px;
    color: #999;
}

.step.is-current .step-ttl {
    color: #E65377;
}

.form-type-item {
    padding: 0;
    margin: 0 0 48px;
}

.form-type-li {
    list-style: disc;
    margin: 0 0 16px 24px;
}

.company-file {
    margin: 0 0 24px;
}

.pdf-download a {
    color: #E65377;
    text-decoration: underline;
}


/* 右上メッセージ */

.pardot-description {
    margin: 0 0 40px;
}

.mandatory {
    display: inline-block;
    font-size: 10px;
    color: #fff;
    padding: 0 6px;
    margin: 0px 4px 0px 0px;
    background: #D93600;
    border-radius: 2px;
    position: relative;
    top: -2px;
}

.alert-danger {
    display: none;
    font-size: 12px;
    color: #D93600;
    line-height: 2;
    padding: 12px;
    margin: 0 0 40px;
    border: 1px solid #D93600;
    background: #FDF3F0;
    border-radius: 4px;
}


/* フォームタイトル */

.form-ttl {
    position: relative;
    font-size: 12px;
    font-weight: bold;
    line-height: 2;
    margin: 0 0 8px;
}

.form-ttl:after {
    color: #fff;
    display: inline-block;
    border-radius: 2px;
    padding: 2px 3px;
    font-size: 10px;
    font-weight: 400;
    line-height: 1;
    margin: 0 0 0 8px;
}

.form-ttl.ttl-mandatory:after {
    content: "必須";
    background: #D93600;
}

.form-ttl.ttl-any:after {
    content: "任意";
    background: #999;
}


/* チェックボタン */

.check-li {
    display: inline-block;
    max-width: 100%;
    margin: 0 0 8px;
    padding: 0;
}

.efo-input-checkbox {
    display: flex;
    flex-direction: column;
}

.efo-input-checkbox label {
    position: relative;
    cursor: pointer;
    margin: 0 0 8px;
}

.efo-input-checkbox label:after {
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    content: '';
    display: block;
    height: 9px;
    left: 6px;
    margin-top: -5px;
    top: 50%;
    transform: rotate(45deg);
    width: 5px;
}

.efo-input-checkbox label.check:after {
    border-color: #E65377;
}

label {
    display: inline-block;
    max-width: 100%;
}

label.inline {
    margin: 0;
    font-size: 12px;
    line-height: 14px;
    cursor: pointer;
}

.contact-check-input {
    margin: 4px 0 0;
}

.contact-check-label {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    position: relative;
    width: auto;
}

.contact-check-label::before {
    content: '';
    display: block;
    float: left;
    width: 18px;
    height: 18px;
    margin-right: 8px;
    margin-top: 4px;
    border: 1px solid #D5D8D8;
    border-radius: 3px;
}

.contact-check-label::after {
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    content: '';
    display: block;
    height: 9px;
    left: 6px;
    margin-top: -5px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 5px;
}

.contact-check-input:checked+.contact-check-label::before {
    background: #E65377;
    border-color: #E65377;
}

.contact-check-input:checked+.contact-check-label::after {
    opacity: 1;
}


/* ラジオボタン */

.efo-input-radio.required.input-ng {
    width: 100%;
    border-radius: 4px;
}

.efo-input-radio .radio-li {
    display: inline-block;
}

.efo-input-radio .radio-red {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    width: auto;
    margin: 0 0 8px;
    position: relative;
    text-indent: 1.8em;
    line-height: 1.8;
}

.efo-input-radio .radio-red:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 3px;
    width: 12px;
    height: 12px;
    margin-top: 1px;
    border: 1px solid transparent;
    background-color: transparent;
    border-radius: 50%;
    transform: translateY(-50%);
}

.efo-input-radio .radio-red::before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    width: 18px;
    height: 18px;
    margin: 1px 0 0;
    border: 1px solid #D5D8D8;
    border-radius: 50%;
    transform: translateY(-50%);
}

.efo-input-radio input[type=radio]:checked+label:after {
    content: '';
    border-color: #E65377;
    background-color: #E65377;
}

.efo-input-radio {
    display: flex;
    flex-direction: column;
}

.efo-input-radio .radio-red {
    position: relative;
}

.efo-input-radio .radio-red {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    width: auto;
    margin: 0 0 8px;
}

.efo-input-radio .radio-red.radio-label-form::before {
    background: #FFFFFF;
}

.efo-input-radio .radio-red.radio-label-form::after {
    content: '';
    display: block;
    position: absolute;
    top: 12px;
    left: 3px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #E65377;
}

.efo-input-radio .radio-red input {
    display: none;
}

.caution {
    font-size: 12px;
    color: #D93600;
    line-height: 2;
    margin: 0 0 40px;
}

.form-company-inner {
    margin: 0 0 48px;
}

.input-inner {
    margin: 0 0 8px;
}

.input-inner:empty {
    min-height: 3em;
}

.radio-box {
    margin: 0 0 16px;
}

.radio-li {
    display: inline-block;
    /*margin: ;*/
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.btn {
    display: inline-block;
    padding: 6px 12px;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 4px;
}

@media screen and (max-width: 1100px) {
    .service-form-inner {
        margin: 0 16px;
    }
}

@media screen and (max-width: 896px) {
    .efo-form-right {
        width: auto;
        background: #fff;
    }
    .efo-form-right-container {
        width: 82.935vw;
        padding: 56px 0;
        margin: 0 auto;
        max-width: initial;
    }
    .service-form-case {
        max-width: 460px;
        margin: 0 auto;
        padding: 56px 0;
    }
    .service-form-column.right .service-form-case {
        /* width: 82.935vw;
		margin: 0 auto;
		max-width: initial; */
    }
    .ttl {
        text-align: center;
    }
    .postal-code button {
        padding: 8px 24px 9px 16px;
    }
    .postal-code button:after {
        right: 12px;
        top: 15px;
    }
}

@media screen and (max-width: 460px) {
    .service-form-case {
        margin: 0 16px;
    }
    .efo-form-right-container {
        width: auto;
        margin: 0 16px;
    }
}


/* efo-submit-container
================================================== */

.efo-dummy-select {
    display: inline-block;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    position: absolute;
    top: 0;
    left: 0;
    width: 220px!important;
    height: 43px!important;
    padding: 10px 12px;
    color: #999;
    font-size: 12px;
}

.efo-dummy-select:after {
    content: "";
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    position: absolute;
    top: 18px;
    right: 16px;
    transform: rotate(135deg);
    display: block;
    width: 6px;
    height: 6px;
    z-index: 5;
}

.efo-input-wrap {
    position: relative;
}

.efo-search-address {
    position: absolute;
    top: 0;
    right: 0;
    background: #F6F6F6;
    border-radius: 4px;
    border: 1px solid #E6E6E6;
    text-align: center;
    padding: 8px 36px 7px 24px;
    font-size: 12px;
    height: 40px;
    cursor: pointer;
    transition: .3s;
}

.efo-search-address:hover {
    opacity: .7;
}

.efo-search-address:after {
    content: "";
    position: absolute;
    right: 22px;
    top: 16px;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0Ljk1IiBoZWlnaHQ9IjguOTUiIHZpZXdCb3g9IjAgMCA0Ljk1IDguOTUiPg0KICA8ZyBpZD0i44Kw44Or44O844OXXzE5IiBkYXRhLW5hbWU9IuOCsOODq+ODvOODlyAxOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEyMjAgLTI4OCkiPg0KICAgIDxyZWN0IGlkPSJsaW5lIiB3aWR0aD0iMSIgaGVpZ2h0PSI2IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMjIwIDI4OC43MDcpIHJvdGF0ZSgtNDUpIi8+DQogICAgPHJlY3QgaWQ9ImxpbmUtMiIgZGF0YS1uYW1lPSJsaW5lIiB3aWR0aD0iMSIgaGVpZ2h0PSI2IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMjI0LjI0MyAyOTIpIHJvdGF0ZSg0NSkiLz4NCiAgPC9nPg0KPC9zdmc+DQo=);
    background-size: 5px 9px;
    background-repeat: no-repeat;
    width: 5px;
    height: 9px;
}

.efo-input-title {
    display: flex;
    align-items: center;
    position: relative;
    font-size: 12px;
    font-weight: bold;
    line-height: 2;
    margin: 0 0 8px;
}

.efo-input-title:after {
    color: #fff;
    display: inline-block;
    border-radius: 2px;
    padding: 2px 3px;
    font-size: 10px;
    font-weight: 400;
    line-height: 1;
}

.icon-required {
    position: relative;
    margin: 0 0 0 8px;
}

.icon-required::after {
    content: "必須";
    background: #D93600;
    color: #fff;
    font-style: normal;
    font-size: 10px;
    border-radius: 2px;
    padding: 2px 3px;
    display: inline-block;
    line-height: 1;
}

.efo-input-wrap>input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 13px 16px;
    border: 1px solid #e6e6e6;
    box-shadow: none;
    max-width: 100%;
    display: block;
    width: 100%;
    font-size: 12px;
    line-height: 1.42857143;
    color: #999;
    background-color: #fff;
    background-image: none;
    border-radius: 4px;
    -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    height: 40px;
}

.efo-input-wrap>.efo-input-zip {
    display: inline-block;
    width: calc(100% - 240px);
    max-width: 230px;
}

.efo-input-container select {
    position: relative;
    width: 220px;
    height: 43px;
    z-index: 1;
    opacity: 0;
}

select.input-ng {
    width: 100%;
    border-radius: 4px;
    padding: 10px 12px;
    background: #fff;
    font-size: 12px;
    border: 1px solid #E6E6E6;
    cursor: pointer;
    position: relative;
    z-index: 1;
}

.efo-input-message {
    margin: 6px 0 10px 0!important;
    font-size: 12px;
    min-height: 1.8em;
}

.efo-input-message.error {
    color: #D93600;
    opacity: 1;
}

@media screen and (max-width: 896px) {
    .efo-search-address {
        display: inline-block;
        width: 180px;
        padding: 8px 24px 7px 4px;
    }
    .efo-search-address:after {
        right: 8px;
    }
    .efo-input-wrap>.efo-input-zip {
        width: calc(100% - 196px);
    }
}


/* ボタン */

.efo-submit-container button[type="submit"],
.efo-form-submit-button {
    display: inline-block;
    width: 100%;
    max-width: 280px;
    line-height: 3.5em;
    text-align: center;
    border-radius: 4px;
    color: #fff;
    font-size: 1.5rem;
    background: #313131;
    position: relative;
    cursor: pointer;
    -webkit-transition: opacity .2s ease-in-out;
    -moz-transition: opacity .2s ease-in-out;
    -ms-transition: opacity .2s ease-in-out;
    -o-transition: opacity .2s ease-in-out;
    transition: opacity .2s ease-in-out;
}

.efo-submit-container button[type="submit"]:disabled,
.efo-form-submit-button:disabled {
    background: #bfbfbf;
    cursor: default;
    opacity: 1;
}


/* 入力画面
================================================== */

.efo-input-checkbox.required.input-ng,
.efo-input-radio.required.input-ng {
    width: 100%;
    border-radius: 4px;
}

.efo-input-container .efo-input-checkbox {
    width: 100%;
}

.efo-input-container .efo-input-required-check {
    display: none;
}

.efo-input-container textarea {
    width: 100% !important;
    resize: vertical;
    border-radius: 4px;
    height: 100px;
    padding: 13px 16px;
    border: 1px solid #e6e6e6;
}

.efo-input-message {
    margin: 6px 0 10px 0!important;
    font-size: 12px;
    min-height: 1.8em;
    color: #D93600;
    opacity: 1;
}

.efo-input-message.error {
    color: #D93600;
    opacity: 1;
}

.efo-input-message:not(.error) {
    opacity: 0;
}


/* 確認画面
================================================== */

.efo-form.confirm .efo-submit-container {
    margin: 48px 0 0;
}

.efo-form.confirm .efo-submit-container button[type="submit"] {
    padding: 16px 100px;
    border: none;
    border-radius: 4px;
    background-color: #E65377;
    color: #fff;
    border: 3px solid #E65377;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    transition: .3s;
}

.efo-form.confirm .efo-submit-container button:hover[type="submit"] {
    opacity: .7;
}

.efo-input-row {
    margin: 0 0 16px;
}

.confirm .efo-input-wrap {
    padding: 0 0 16px;
    border-bottom: 1px solid #e6e6e6;
}

.efo-submit-container {}


/* 完了画面
================================================== */

.service-form-column {
    width: 42.72727272727273%;
}

.service-form-case {
    padding: 80px 0;
}

.complete-ttl {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    margin: 0 0 40px;
}

.complete-txt {
    line-height: 1.8;
    margin: 0 0 40px;
}

.area-ttl {
    font-weight: bold;
    margin: 0 0 24px;
}

.contact-box {
    padding: 32px;
    border: 1px solid #E6E6E6;
    border-radius: 4px;
    margin: 0 0 40px;
}

.contact-box:last-of-type {
    margin: 0 0 56px;
}

.tel a {
    font-size: 20px;
    line-height: 1.4;
}

.tel a:hover {
    text-decoration: none;
    cursor: inherit;
}

.complete-btn {
    text-align: center;
}

.complete-btn a {
    display: inline-block;
    position: relative;
    min-width: 280px;
    overflow: hidden;
    padding: 13px;
    border: 3px solid #111;
    border-radius: 4px;
    color: #fff!important;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    background: #111;
    transition: .3s;
}

.complete-btn a:hover {
    text-decoration: none;
    background: #fff;
    color: #111;
}

@media screen and (max-width: 896px) {
    .service-form:after {
        content: none;
    }
    .service-form-inner {
        display: block;
        margin: 0;
    }
    .service-form-column {
        width: auto;
    }
    .complete-ttl {
        text-align: center;
    }
}

.efo-form-container{
	    font-family: 'Noto Sans JP', sans-serif !important;
    width: 60rem;
    margin: 0 auto;
}


.tm2_pt2 .efo-input-row:last-of-type .efo-input-row__note {
    display: none;
    max-height: 150px;
    padding: 10px;
    font-size: 13px;
    border: solid 1px #ccc;
    border-radius: 4px;
    overflow-y: scroll;
}

.privacy-policy {
    max-height: 150px;
    padding: 10px;
    border: solid 1px #C4D6E1;
    overflow-y: scroll;
    border-radius: 4px;
    font-size: 13px;
    display: block;
    width: 750px;
    margin: 0 auto;
}

.check-contents{
    display: flex;
    flex-flow: column;
		margin-left: 1em!important;
	margin-bottom:1em!important;
}


.btn_send {
    text-align: center;
	margin-top: 4rem;
}

.wpcf7-spinner {
   display: block !important;
	display: none !important;
}
#submit_btn{
	width:500px;
	color: #7EB7DB!important;
	height:3rem;
}
#submit_btn:hover {
    color: #FFFFFF !important; /* hover時に白色に変更 */
}

.a_tag{
	color:#7EB7DB!important;
}

.a_tag:hover{
	color:#C4D6E1!important;
}

.wpcf7-list-item {
    display: inline-block;
    margin-bottom:1em!important;
	margin-left:0!important;
}

label{
	font-size:18px!important;
}

[type=button],[type=submit],button {
    border: 1px solid #C4D6E1!important;
}

[type=button]:focus,[type=button]:hover,[type=submit]:focus,[type=submit]:hover,button:focus,button:hover {
    background-color: #7EB7DB!important;
}
.sen{
	border: 1px solid #C4D6E1!important;
}



/* ここまでフォームCSS */

/* ここから下スマホフォーム */
@media (max-width: 500px){
	label{
		font-size:12px!important;
	}
	.efo-form-container {
    width: 19rem;
    margin: 0 auto;
}
	.efo-input-message{
		display:none;
	}
	.privacy-policy {
    max-height: 150px;
    padding: 10px;
    border: solid 1px #ccc;
    overflow-y: scroll;
    border-radius: 4px;
    font-size: 13px;
    display: block;
    width: 18rem;
    margin: 0 auto;
}
	#submit_btn {
    width: 13rem;
}
	input[type="date" i] {
    background-color: #FFFFFF!important;
}
	select:not(:-internal-list-box) {
    background-color: #FFFFFF!important;
}
	select {
   background-color: #FFFFFF!important;
		color:#000000!important;
}
}




/** Start Block Kit CSS: 69-3-4f8cfb8a1a68ec007f2be7a02bdeadd9 **/

.envato-kit-66-menu .e--pointer-framed .elementor-item:before{
	border-radius:1px;
}

.envato-kit-66-subscription-form .elementor-form-fields-wrapper{
	position:relative;
}

.envato-kit-66-subscription-form .elementor-form-fields-wrapper .elementor-field-type-submit{
	position:static;
}

.envato-kit-66-subscription-form .elementor-form-fields-wrapper .elementor-field-type-submit button{
	position: absolute;
    top: 50%;
    right: 6px;
    transform: translate(0, -50%);
		-moz-transform: translate(0, -50%);
		-webmit-transform: translate(0, -50%);
}

.envato-kit-66-testi-slider .elementor-testimonial__footer{
	margin-top: -60px !important;
	z-index: 99;
  position: relative;
}

.envato-kit-66-featured-slider .elementor-slides .slick-prev{
	width:50px;
	height:50px;
	background-color:#ffffff !important;
	transform:rotate(45deg);
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	left:-25px !important;
	-webkit-box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.32);
	-moz-box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.32);
	box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.32);
}

.envato-kit-66-featured-slider .elementor-slides .slick-prev:before{
	display:block;
	margin-top:0px;
	margin-left:0px;
	transform:rotate(-45deg);
	-moz-transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
}

.envato-kit-66-featured-slider .elementor-slides .slick-next{
	width:50px;
	height:50px;
	background-color:#ffffff !important;
	transform:rotate(45deg);
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	right:-25px !important;
	-webkit-box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.32);
	-moz-box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.32);
	box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.32);
}

.envato-kit-66-featured-slider .elementor-slides .slick-next:before{
	display:block;
	margin-top:-5px;
	margin-right:-5px;
	transform:rotate(-45deg);
	-moz-transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
}

.envato-kit-66-orangetext{
	color:#f4511e;
}

.envato-kit-66-countdown .elementor-countdown-label{
	display:inline-block !important;
	border:2px solid rgba(255,255,255,0.2);
	padding:9px 20px;
}

/** End Block Kit CSS: 69-3-4f8cfb8a1a68ec007f2be7a02bdeadd9 **/
/* post-425 heading .elementor-element-ec425l */
.elementor-425 .elementor-element.elementor-element-ec425l .elementor-heading-title{display:flex;align-items:center;gap:14px}.elementor-425 .elementor-element.elementor-element-ec425l .elementor-heading-title::before{content:'';width:34px;height:8px;flex:none;background:radial-gradient(circle 4px at 4px 4px,#4FC3F7 98%,transparent),radial-gradient(circle 4px at 17px 4px,#3B8BF7 98%,transparent),radial-gradient(circle 4px at 30px 4px,#2B59FF 98%,transparent)}
/* post-425 shortcode .elementor-element-7da8e3b */
.efo-form-right {
    width: 42.72727272727273%;
}

.efo-form-right-container {
    padding: 80px 0;
}

.efo-form-right-container>form {
    margin: 0 0 56px;
}

.efo-submit-container {
    max-width: 100%;
    padding: 0;
    text-align: center;
}

.service-form {
    position: relative;
    background: #F6F7F7;
}

.service-form:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 50%;
    height: 100%;
    background: #fff;
    box-shadow: -5px 0 20px rgb(0, 0, 0, .08);
    z-index: 1;
}

.service-form-inner {
    display: flex;
    justify-content: space-between;
    max-width: 1100px;
    margin: 0 auto;
    position: relative;
    z-index: 5;
}

.form-company-inner.area-inner {
    padding: 120px 0 0;
}

.form-company-inner.is-current input[type=text],
.form-company-inner.is-current textarea {
    background: #FDF3F0;
    border-color: #D93600;
}

.form-company-inner.post-inner {
    display: flex;
    align-items: flex-end;
}

.ttl {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    margin: 0 0 48px;
}

.ttl-txt {
    font-size: 12px;
    margin: 0 0 48px;
}

.form-sec-ttl {
    font-size: 14px;
    font-weight: bold;
    margin: 0 0 24px;
}

.form-flow {
    margin: 0 0 48px;
}

.step {
    display: flex;
    margin: 0 0 24px;
}

.step-num {
    width: 80px;
    line-height: 1;
    margin: 3px 20px 0 0;
    padding: 4px 0;
    border-radius: 20px;
    font-size: 12px;
    text-align: center;
    color: #999;
    background: #fff;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.step-num:after {
    content: "";
    width: 1px;
    height: 28px;
    position: absolute;
    bottom: -28px;
    left: 40px;
    background: #D6D6D6;
}

.step:last-of-type .step-num:after {
    content: none;
}

.step.is-current .step-num {
    color: #fff;
    background: #E65377;
}

.step.is-current .step-num:after {
    background: #E65377;
}

.step-ttl {
    font-size: 14px;
    color: #999;
}

.step.is-current .step-ttl {
    color: #E65377;
}

.form-type-item {
    padding: 0;
    margin: 0 0 48px;
}

.form-type-li {
    list-style: disc;
    margin: 0 0 16px 24px;
}

.company-file {
    margin: 0 0 24px;
}

.pdf-download a {
    color: #E65377;
    text-decoration: underline;
}


/* 右上メッセージ */

.pardot-description {
    margin: 0 0 40px;
}

.mandatory {
    display: inline-block;
    font-size: 10px;
    color: #fff;
    padding: 0 6px;
    margin: 0px 4px 0px 0px;
    background: #D93600;
    border-radius: 2px;
    position: relative;
    top: -2px;
}

.alert-danger {
    display: none;
    font-size: 12px;
    color: #D93600;
    line-height: 2;
    padding: 12px;
    margin: 0 0 40px;
    border: 1px solid #D93600;
    background: #FDF3F0;
    border-radius: 4px;
}


/* フォームタイトル */

.form-ttl {
    position: relative;
    font-size: 12px;
    font-weight: bold;
    line-height: 2;
    margin: 0 0 8px;
}

.form-ttl:after {
    color: #fff;
    display: inline-block;
    border-radius: 2px;
    padding: 2px 3px;
    font-size: 10px;
    font-weight: 400;
    line-height: 1;
    margin: 0 0 0 8px;
}

.form-ttl.ttl-mandatory:after {
    content: "必須";
    background: #D93600;
}

.form-ttl.ttl-any:after {
    content: "任意";
    background: #999;
}


/* チェックボタン */

.check-li {
    display: inline-block;
    max-width: 100%;
    margin: 0 0 8px;
    padding: 0;
}

.efo-input-checkbox {
    display: flex;
    flex-direction: column;
}

.efo-input-checkbox label {
    position: relative;
    cursor: pointer;
    margin: 0 0 8px;
}

.efo-input-checkbox label:after {
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    content: '';
    display: block;
    height: 9px;
    left: 6px;
    margin-top: -5px;
    top: 50%;
    transform: rotate(45deg);
    width: 5px;
}

.efo-input-checkbox label.check:after {
    border-color: #E65377;
}

label {
    display: inline-block;
    max-width: 100%;
}

label.inline {
    margin: 0;
    font-size: 12px;
    line-height: 14px;
    cursor: pointer;
}

.contact-check-input {
    margin: 4px 0 0;
}

.contact-check-label {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    position: relative;
    width: auto;
}

.contact-check-label::before {
    content: '';
    display: block;
    float: left;
    width: 18px;
    height: 18px;
    margin-right: 8px;
    margin-top: 4px;
    border: 1px solid #D5D8D8;
    border-radius: 3px;
}

.contact-check-label::after {
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    content: '';
    display: block;
    height: 9px;
    left: 6px;
    margin-top: -5px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 5px;
}

.contact-check-input:checked+.contact-check-label::before {
    background: #E65377;
    border-color: #E65377;
}

.contact-check-input:checked+.contact-check-label::after {
    opacity: 1;
}


/* ラジオボタン */

.efo-input-radio.required.input-ng {
    width: 100%;
    border-radius: 4px;
}

.efo-input-radio .radio-li {
    display: inline-block;
}

.efo-input-radio .radio-red {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    width: auto;
    margin: 0 0 8px;
    position: relative;
    text-indent: 1.8em;
    line-height: 1.8;
}

.efo-input-radio .radio-red:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 3px;
    width: 12px;
    height: 12px;
    margin-top: 1px;
    border: 1px solid transparent;
    background-color: transparent;
    border-radius: 50%;
    transform: translateY(-50%);
}

.efo-input-radio .radio-red::before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    width: 18px;
    height: 18px;
    margin: 1px 0 0;
    border: 1px solid #D5D8D8;
    border-radius: 50%;
    transform: translateY(-50%);
}

.efo-input-radio input[type=radio]:checked+label:after {
    content: '';
    border-color: #E65377;
    background-color: #E65377;
}

.efo-input-radio {
    display: flex;
    flex-direction: column;
}

.efo-input-radio .radio-red {
    position: relative;
}

.efo-input-radio .radio-red {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    width: auto;
    margin: 0 0 8px;
}

.efo-input-radio .radio-red.radio-label-form::before {
    background: #FFFFFF;
}

.efo-input-radio .radio-red.radio-label-form::after {
    content: '';
    display: block;
    position: absolute;
    top: 12px;
    left: 3px;
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: #E65377;
}

.efo-input-radio .radio-red input {
    display: none;
}

.caution {
    font-size: 12px;
    color: #D93600;
    line-height: 2;
    margin: 0 0 40px;
}

.form-company-inner {
    margin: 0 0 48px;
}

.input-inner {
    margin: 0 0 8px;
}

.input-inner:empty {
    min-height: 3em;
}

.radio-box {
    margin: 0 0 16px;
}

.radio-li {
    display: inline-block;
    /*margin: ;*/
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.btn {
    display: inline-block;
    padding: 6px 12px;
    margin-bottom: 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.42857143;
    text-align: center;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-image: none;
    border: 1px solid transparent;
    border-radius: 4px;
}

@media screen and (max-width: 1100px) {
    .service-form-inner {
        margin: 0 16px;
    }
}

@media screen and (max-width: 896px) {
    .efo-form-right {
        width: auto;
        background: #fff;
    }
    .efo-form-right-container {
        width: 82.935vw;
        padding: 56px 0;
        margin: 0 auto;
        max-width: initial;
    }
    .service-form-case {
        max-width: 460px;
        margin: 0 auto;
        padding: 56px 0;
    }
    .service-form-column.right .service-form-case {
        /* width: 82.935vw;
		margin: 0 auto;
		max-width: initial; */
    }
    .ttl {
        text-align: center;
    }
    .postal-code button {
        padding: 8px 24px 9px 16px;
    }
    .postal-code button:after {
        right: 12px;
        top: 15px;
    }
}

@media screen and (max-width: 460px) {
    .service-form-case {
        margin: 0 16px;
    }
    .efo-form-right-container {
        width: auto;
        margin: 0 16px;
    }
}


/* efo-submit-container
================================================== */

.efo-dummy-select {
    display: inline-block;
    border: 1px solid #e6e6e6;
    border-radius: 4px;
    position: absolute;
    top: 0;
    left: 0;
    width: 220px!important;
    height: 43px!important;
    padding: 10px 12px;
    color: #999;
    font-size: 12px;
}

.efo-dummy-select:after {
    content: "";
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    position: absolute;
    top: 18px;
    right: 16px;
    transform: rotate(135deg);
    display: block;
    width: 6px;
    height: 6px;
    z-index: 5;
}

.efo-input-wrap {
    position: relative;
}

.efo-search-address {
    position: absolute;
    top: 0;
    right: 0;
    background: #F6F6F6;
    border-radius: 4px;
    border: 1px solid #E6E6E6;
    text-align: center;
    padding: 8px 36px 7px 24px;
    font-size: 12px;
    height: 40px;
    cursor: pointer;
    transition: .3s;
}

.efo-search-address:hover {
    opacity: .7;
}

.efo-search-address:after {
    content: "";
    position: absolute;
    right: 22px;
    top: 16px;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI0Ljk1IiBoZWlnaHQ9IjguOTUiIHZpZXdCb3g9IjAgMCA0Ljk1IDguOTUiPg0KICA8ZyBpZD0i44Kw44Or44O844OXXzE5IiBkYXRhLW5hbWU9IuOCsOODq+ODvOODlyAxOSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTEyMjAgLTI4OCkiPg0KICAgIDxyZWN0IGlkPSJsaW5lIiB3aWR0aD0iMSIgaGVpZ2h0PSI2IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMjIwIDI4OC43MDcpIHJvdGF0ZSgtNDUpIi8+DQogICAgPHJlY3QgaWQ9ImxpbmUtMiIgZGF0YS1uYW1lPSJsaW5lIiB3aWR0aD0iMSIgaGVpZ2h0PSI2IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMjI0LjI0MyAyOTIpIHJvdGF0ZSg0NSkiLz4NCiAgPC9nPg0KPC9zdmc+DQo=);
    background-size: 5px 9px;
    background-repeat: no-repeat;
    width: 5px;
    height: 9px;
}

.efo-input-title {
    display: flex;
    align-items: center;
    position: relative;
    font-size: 12px;
    font-weight: bold;
    line-height: 2;
    margin: 0 0 8px;
}

.efo-input-title:after {
    color: #fff;
    display: inline-block;
    border-radius: 2px;
    padding: 2px 3px;
    font-size: 10px;
    font-weight: 400;
    line-height: 1;
}

.icon-required {
    position: relative;
    margin: 0 0 0 8px;
}

.icon-required::after {
    content: "必須";
    background: #D93600;
    color: #fff;
    font-style: normal;
    font-size: 10px;
    border-radius: 2px;
    padding: 2px 3px;
    display: inline-block;
    line-height: 1;
}

.efo-input-wrap>input {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 13px 16px;
    border: 1px solid #e6e6e6;
    box-shadow: none;
    max-width: 100%;
    display: block;
    width: 100%;
    font-size: 12px;
    line-height: 1.42857143;
    color: #999;
    background-color: #fff;
    background-image: none;
    border-radius: 4px;
    -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s;
    -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
    height: 40px;
}

.efo-input-wrap>.efo-input-zip {
    display: inline-block;
    width: calc(100% - 240px);
    max-width: 230px;
}

.efo-input-container select {
    position: relative;
    width: 220px;
    height: 43px;
    z-index: 1;
    opacity: 0;
}

select.input-ng {
    width: 100%;
    border-radius: 4px;
    padding: 10px 12px;
    background: #fff;
    font-size: 12px;
    border: 1px solid #E6E6E6;
    cursor: pointer;
    position: relative;
    z-index: 1;
}

.efo-input-message {
    margin: 6px 0 10px 0!important;
    font-size: 12px;
    min-height: 1.8em;
}

.efo-input-message.error {
    color: #D93600;
    opacity: 1;
}

@media screen and (max-width: 896px) {
    .efo-search-address {
        display: inline-block;
        width: 180px;
        padding: 8px 24px 7px 4px;
    }
    .efo-search-address:after {
        right: 8px;
    }
    .efo-input-wrap>.efo-input-zip {
        width: calc(100% - 196px);
    }
}


/* ボタン */

.efo-submit-container button[type="submit"],
.efo-form-submit-button {
    display: inline-block;
    width: 100%;
    max-width: 280px;
    line-height: 3.5em;
    text-align: center;
    border-radius: 4px;
    color: #fff;
    font-size: 1.5rem;
    background: #313131;
    position: relative;
    cursor: pointer;
    -webkit-transition: opacity .2s ease-in-out;
    -moz-transition: opacity .2s ease-in-out;
    -ms-transition: opacity .2s ease-in-out;
    -o-transition: opacity .2s ease-in-out;
    transition: opacity .2s ease-in-out;
}

.efo-submit-container button[type="submit"]:disabled,
.efo-form-submit-button:disabled {
    background: #bfbfbf;
    cursor: default;
    opacity: 1;
}


/* 入力画面
================================================== */

.efo-input-checkbox.required.input-ng,
.efo-input-radio.required.input-ng {
    width: 100%;
    border-radius: 4px;
}

.efo-input-container .efo-input-checkbox {
    width: 100%;
}

.efo-input-container .efo-input-required-check {
    display: none;
}

.efo-input-container textarea {
    width: 100% !important;
    resize: vertical;
    border-radius: 4px;
    height: 100px;
    padding: 13px 16px;
    border: 1px solid #e6e6e6;
}

.efo-input-message {
    margin: 6px 0 10px 0!important;
    font-size: 12px;
    min-height: 1.8em;
    color: #D93600;
    opacity: 1;
}

.efo-input-message.error {
    color: #D93600;
    opacity: 1;
}

.efo-input-message:not(.error) {
    opacity: 0;
}


/* 確認画面
================================================== */

.efo-form.confirm .efo-submit-container {
    margin: 48px 0 0;
}

.efo-form.confirm .efo-submit-container button[type="submit"] {
    padding: 16px 100px;
    border: none;
    border-radius: 4px;
    background-color: #E65377;
    color: #fff;
    border: 3px solid #E65377;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    transition: .3s;
}

.efo-form.confirm .efo-submit-container button:hover[type="submit"] {
    opacity: .7;
}

.efo-input-row {
    margin: 0 0 16px;
}

.confirm .efo-input-wrap {
    padding: 0 0 16px;
    border-bottom: 1px solid #e6e6e6;
}

.efo-submit-container {}


/* 完了画面
================================================== */

.service-form-column {
    width: 42.72727272727273%;
}

.service-form-case {
    padding: 80px 0;
}

.complete-ttl {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.6;
    margin: 0 0 40px;
}

.complete-txt {
    line-height: 1.8;
    margin: 0 0 40px;
}

.area-ttl {
    font-weight: bold;
    margin: 0 0 24px;
}

.contact-box {
    padding: 32px;
    border: 1px solid #E6E6E6;
    border-radius: 4px;
    margin: 0 0 40px;
}

.contact-box:last-of-type {
    margin: 0 0 56px;
}

.tel a {
    font-size: 20px;
    line-height: 1.4;
}

.tel a:hover {
    text-decoration: none;
    cursor: inherit;
}

.complete-btn {
    text-align: center;
}

.complete-btn a {
    display: inline-block;
    position: relative;
    min-width: 280px;
    overflow: hidden;
    padding: 13px;
    border: 3px solid #111;
    border-radius: 4px;
    color: #fff!important;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    background: #111;
    transition: .3s;
}

.complete-btn a:hover {
    text-decoration: none;
    background: #fff;
    color: #111;
}

@media screen and (max-width: 896px) {
    .service-form:after {
        content: none;
    }
    .service-form-inner {
        display: block;
        margin: 0;
    }
    .service-form-column {
        width: auto;
    }
    .complete-ttl {
        text-align: center;
    }
}

.efo-form-container{
	    font-family: 'Noto Sans JP', sans-serif !important;
    width: 60rem;
    margin: 0 auto;
}


.tm2_pt2 .efo-input-row:last-of-type .efo-input-row__note {
    display: none;
    max-height: 150px;
    padding: 10px;
    font-size: 13px;
    border: solid 1px #ccc;
    border-radius: 4px;
    overflow-y: scroll;
}

.privacy-policy {
    max-height: 150px;
    padding: 10px;
    border: solid 1px #C4D6E1;
    overflow-y: scroll;
    border-radius: 4px;
    font-size: 13px;
    display: block;
    width: 750px;
    margin: 0 auto;
}

.check-contents{
    display: flex;
    flex-flow: column;
		margin-left: 1em!important;
	margin-bottom:1em!important;
}


.btn_send {
    text-align: center;
	margin-top: 4rem;
}

.wpcf7-spinner {
   display: block !important;
	display: none !important;
}
#submit_btn{
	width:500px;
	color: #7EB7DB!important;
	height:3rem;
}
#submit_btn:hover {
    color: #FFFFFF !important; /* hover時に白色に変更 */
}

.a_tag{
	color:#7EB7DB!important;
}

.a_tag:hover{
	color:#C4D6E1!important;
}

.wpcf7-list-item {
    display: inline-block;
    margin-bottom:1em!important;
	margin-left:0!important;
}

label{
	font-size:18px!important;
}

[type=button],[type=submit],button {
    border: 1px solid #C4D6E1!important;
}

[type=button]:focus,[type=button]:hover,[type=submit]:focus,[type=submit]:hover,button:focus,button:hover {
    background-color: #7EB7DB!important;
}
.sen{
	border: 1px solid #C4D6E1!important;
}



/* ここまでフォームCSS */

/* ここから下スマホフォーム */
@media (max-width: 500px){
	label{
		font-size:12px!important;
	}
	.efo-form-container {
    width: 19rem;
    margin: 0 auto;
}
	.efo-input-message{
		display:none;
	}
	.privacy-policy {
    max-height: 150px;
    padding: 10px;
    border: solid 1px #ccc;
    overflow-y: scroll;
    border-radius: 4px;
    font-size: 13px;
    display: block;
    width: 18rem;
    margin: 0 auto;
}
	#submit_btn {
    width: 13rem;
}
	input[type="date" i] {
    background-color: #FFFFFF!important;
}
	select:not(:-internal-list-box) {
    background-color: #FFFFFF!important;
}
	select {
   background-color: #FFFFFF!important;
		color:#000000!important;
}
}




/** Start Block Kit CSS: 69-3-4f8cfb8a1a68ec007f2be7a02bdeadd9 **/

.envato-kit-66-menu .e--pointer-framed .elementor-item:before{
	border-radius:1px;
}

.envato-kit-66-subscription-form .elementor-form-fields-wrapper{
	position:relative;
}

.envato-kit-66-subscription-form .elementor-form-fields-wrapper .elementor-field-type-submit{
	position:static;
}

.envato-kit-66-subscription-form .elementor-form-fields-wrapper .elementor-field-type-submit button{
	position: absolute;
    top: 50%;
    right: 6px;
    transform: translate(0, -50%);
		-moz-transform: translate(0, -50%);
		-webmit-transform: translate(0, -50%);
}

.envato-kit-66-testi-slider .elementor-testimonial__footer{
	margin-top: -60px !important;
	z-index: 99;
  position: relative;
}

.envato-kit-66-featured-slider .elementor-slides .slick-prev{
	width:50px;
	height:50px;
	background-color:#ffffff !important;
	transform:rotate(45deg);
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	left:-25px !important;
	-webkit-box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.32);
	-moz-box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.32);
	box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.32);
}

.envato-kit-66-featured-slider .elementor-slides .slick-prev:before{
	display:block;
	margin-top:0px;
	margin-left:0px;
	transform:rotate(-45deg);
	-moz-transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
}

.envato-kit-66-featured-slider .elementor-slides .slick-next{
	width:50px;
	height:50px;
	background-color:#ffffff !important;
	transform:rotate(45deg);
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	right:-25px !important;
	-webkit-box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.32);
	-moz-box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.32);
	box-shadow: 0px 1px 2px 1px rgba(0,0,0,0.32);
}

.envato-kit-66-featured-slider .elementor-slides .slick-next:before{
	display:block;
	margin-top:-5px;
	margin-right:-5px;
	transform:rotate(-45deg);
	-moz-transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
}

.envato-kit-66-orangetext{
	color:#f4511e;
}

.envato-kit-66-countdown .elementor-countdown-label{
	display:inline-block !important;
	border:2px solid rgba(255,255,255,0.2);
	padding:9px 20px;
}

/** End Block Kit CSS: 69-3-4f8cfb8a1a68ec007f2be7a02bdeadd9 **/
/* post-173 heading .elementor-element-ec173l */
.elementor-173 .elementor-element.elementor-element-ec173l .elementor-heading-title{display:flex;align-items:center;gap:14px}.elementor-173 .elementor-element.elementor-element-ec173l .elementor-heading-title::before{content:'';width:34px;height:8px;flex:none;background:radial-gradient(circle 4px at 4px 4px,#4FC3F7 98%,transparent),radial-gradient(circle 4px at 17px 4px,#3B8BF7 98%,transparent),radial-gradient(circle 4px at 30px 4px,#2B59FF 98%,transparent)}
/* post-173 text-editor .elementor-element-6a4308e */
.elementor-173 .elementor-element.elementor-element-6a4308e{max-width:880px}.elementor-173 .elementor-element.elementor-element-6a4308e b,.elementor-173 .elementor-element.elementor-element-6a4308e strong{color:#0B1830}.elementor-173 .elementor-element.elementor-element-6a4308e table{border-collapse:collapse}.elementor-173 .elementor-element.elementor-element-6a4308e td,.elementor-173 .elementor-element.elementor-element-6a4308e th{border:1px solid #DFE4EE;padding:12px 16px}
/* post-15 heading .elementor-element-ec15l */
.elementor-15 .elementor-element.elementor-element-ec15l .elementor-heading-title{display:flex;align-items:center;gap:14px}.elementor-15 .elementor-element.elementor-element-ec15l .elementor-heading-title::before{content:'';width:34px;height:8px;flex:none;background:radial-gradient(circle 4px at 4px 4px,#4FC3F7 98%,transparent),radial-gradient(circle 4px at 17px 4px,#3B8BF7 98%,transparent),radial-gradient(circle 4px at 30px 4px,#2B59FF 98%,transparent)}
/* post-15 text-editor .elementor-element-6a4308e */
.elementor-15 .elementor-element.elementor-element-6a4308e{max-width:880px}.elementor-15 .elementor-element.elementor-element-6a4308e b,.elementor-15 .elementor-element.elementor-element-6a4308e strong{color:#0B1830}.elementor-15 .elementor-element.elementor-element-6a4308e table{border-collapse:collapse}.elementor-15 .elementor-element.elementor-element-6a4308e td,.elementor-15 .elementor-element.elementor-element-6a4308e th{border:1px solid #DFE4EE;padding:12px 16px}

/* ヘッダーのメニュー（Pro のメニュー部品 → Header & Footer Builder のメニュー部品に置換。1024px 以下は≡で開閉） */
.elementor-37 .elementor-element.elementor-element-414ab3b7{--container-widget-width:auto;--container-widget-flex-grow:0;width:auto;max-width:none;flex:0 1 auto}
.elementor-37 .elementor-element-414ab3b7 nav.hfe-nav-menu__layout-horizontal:not(.hfe-dropdown) .hfe-nav-menu{flex-wrap:nowrap;white-space:nowrap}
@media (max-width:1024px){
.elementor-37 .elementor-element-414ab3b7 nav.hfe-dropdown{position:absolute;left:0;right:0}
.elementor-37 .elementor-element-414ab3b7 nav.hfe-dropdown .menu-item a.hfe-menu-item{padding-left:20px;padding-right:20px}
}
