@charset "UTF-8";
/* ==========================================================================
共通パーツ
========================================================================== */
body {
    font-size: 16px;
    font-weight: 500;
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif;
    color: #100e12;
}
@media screen and (max-width: 559px) {
    body {
        padding-bottom: 0;
    }
}

:is(.l-header, #breadcrumb, .w-beforeFooter, .l-footer) {
    display: none !important;
}
.l-content:has(.lp_freelance) {
    padding-top: 0;
    margin: 0 auto;
    position: static;
}
.lp_freelance figure {
    margin: 0;
}
.wp-block-image img {
    width: 100%;
}
.lp_freelance .swell-block-fullWide__inner {
    padding: 0;
}

@media screen and (max-width: 767px) {
    .show--pc {
        display: none !important;
    }
}

@media screen and (min-width: 768px) {
    .show--sp {
        display: none !important;
    }
}

.inner {
    max-width: calc(1050px + 5% * 2);
    margin: 0 auto;
    padding: 0 5%;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .inner {
        max-width: calc(350px + 5% * 2);
    }
}

.swell-block-fullWide + .swell-block-fullWide {
    margin-top: 0;
}
.swell-block-fullWide__inner {
    max-width: none;
}
@media screen and (min-width: 1220px) {
    .swell-block-fullWide__inner {
        padding: 0;
    }
}

/* スライダー */
@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }
    to {
        transform: translateX(-100%);
    }
}
.scroll-infinity__wrap {
    display: flex;
    overflow: hidden;
    position: relative;
}
.fv__slider.scroll-infinity__wrap {
    height: calc((300 / 1500) * 100vw);
}
.info-session__slider.scroll-infinity__wrap {
    height: calc((250 / 1500) * 100vw);
}
.scroll-infinity__list {
    display: flex;
    list-style: none;
    padding: 0;
    margin: 0 !important;
    animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
.scroll-infinity__item {
    width: calc((400 / 1500) * 100vw);
}
.scroll-infinity__item > img {
    width: 100%;
}
@media screen and (max-width: 767px) {
    .fv__slider.scroll-infinity__wrap {
        height: calc((113 / 375) * 100vw);
    }
    .info-session__slider.scroll-infinity__wrap {
        height: calc((125 / 375) * 100vw);
    }
    .fv__slider .scroll-infinity__item {
        width: calc((150 / 375) * 100vw);
    }
    .info-session__slider .scroll-infinity__item {
        width: calc((200 / 375) * 100vw);
    }
}
/* スライダー  end */
/* CTA */
.cta-box {
    width: calc((950 / 1500) * 100vw);
    background: #fff;
    border-radius: calc((40 / 1500) * 100vw);
    padding: calc((55 / 1500) * 100vw) calc((70 / 1500) * 100vw) calc((65 / 1500) * 100vw);
    margin: 0 auto;
}
.cta-box .cta-box__txt {
    width: calc((809 / 1500) * 100vw);
    margin-bottom: calc((30 / 1500) * 100vw);
}
@media screen and (max-width: 767px) {
    .cta-box {
        width: calc((345 / 375) * 100vw);
        border-radius: calc((20 / 375) * 100vw);
        padding: calc((18 / 375) * 100vw) calc((22 / 375) * 100vw) calc((25 / 375) * 100vw);
    }
    .cta-box .cta-box__txt {
        width: calc((297 / 375) * 100vw);
        margin-bottom: calc((20 / 375) * 100vw);
    }
}
/* CTA  end */
.fv .fv__header {
    width: 100%;
    margin: 0;
    position: absolute;
    left: 0;
    top: 0;
}
.fv .fv__header .swell-block-columns__inner {
    justify-content: space-between;
    margin: 0;
}
.fv .fv__header-logo {
    width: calc((322 / 1500) * 100vw);
    margin: 0 0 0 calc((40 / 1500) * 100vw);
}
.fv .fv__header-btn {
    width: calc((270 / 1500) * 100vw);
    margin: calc((30 / 1500) * 100vw) calc((40 / 1500) * 100vw) 0 0;
}
@media screen and (max-width: 767px) {
    .fv .fv__header-logo {
        width: calc((184 / 375) * 100vw);
        margin: 0;
    }
    .fv .fv__header-btn {
        width: calc((162 / 375) * 100vw);
        margin: calc((18 / 375) * 100vw) calc((18 / 375) * 100vw) 0 0;
    }
}
.slider__smartphone-wrap {
    position: relative;
}
.slider__smartphone {
    width: calc((861 / 1500) * 100vw);
    height: calc((399 / 1500) * 100vw);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 3;
}
@media screen and (max-width: 767px) {
    .slider__smartphone-wrap {
        margin-top: calc((60 / 375) * 100vw);
    }
    .slider__smartphone {
        width: calc((323 / 375) * 100vw);
        height: calc((150 / 375) * 100vw);
    }
}
.fv .fv__scroll {
    width: calc((12 / 1500) * 100vw);
    margin: 0;
    position: absolute;
    top: calc((520 / 1500) * 100vw);
    right: calc((46 / 1500) * 100vw);
    z-index: 2;
    animation: fuwafuwa 2s ease-in-out infinite alternate-reverse;
}
@keyframes fuwafuwa {
    0% {
        transform: translateY(-10px);
    }
    100% {
        transform: translateY(10px);
    }
}
@media screen and (max-width: 767px) {
    .fv .fv__scroll {
        width: calc((9 / 375) * 100vw);
        top: calc((430 / 375) * 100vw);
        right: calc((15 / 375) * 100vw);
    }
}
.example {
    padding-top: calc((128 / 1500) * 100vw) !important;
    padding-bottom: 0 !important;
    background: linear-gradient(180deg, #90c31f 0%, #90c31f 63%, #e8ecf0 63%);
}
@media screen and (max-width: 767px) {
    .example {
        padding-top: calc((30 / 375) * 100vw) !important;
        background: linear-gradient(180deg, #90c31f 0%, #90c31f 47%, #e8ecf0 47%);
    }
}
.example__ttl {
    font-size: calc((30 / 1500) * 100vw);
    font-weight: bold;
    color: #fff;
    text-align: center;
    line-height: 1.5;
}
.example__ttl .swl-format-1 {
    font-size: calc((48 / 1500) * 100vw);
}
.example__list {
    width: calc((1140 / 1500) * 100vw);
    margin: 0 auto;
}
.example__list a:hover {
    opacity: 0.9;
}
.example__list .swell-block-columns__inner {
    justify-content: center;
    --swl-clmn-mrgn--x: calc((10 / 1500) * 100vw);
}
.example__list-item p {
    width: 90%;
    margin: calc((10 / 1500) * 100vw) auto 0;
    font-size: calc((14 / 1500) * 100vw);
    line-height: 1.6;
}
@media screen and (max-width: 767px) {
    .example__ttl {
        font-size: calc((18 / 375) * 100vw);
        margin-bottom: calc((30 / 375) * 100vw);
    }
    .example__ttl .swl-format-1 {
        font-size: calc((28 / 375) * 100vw);
    }
    .exampleList {
        width: 100%;
    }
    .exampleList * {
        margin: 0;
    }
    .exampleList a:hover {
        opacity: 1;
    }
    .exampleList .swiper-slide p {
        width: 90%;
        margin: calc((20 / 375) * 100vw) auto 0;
        font-size: calc((13 / 375) * 100vw);
        line-height: 1.6;
    }
}
.example-cta {
    padding-top: calc((80 / 1500) * 100vw) !important;
    padding-bottom: calc((90 / 1500) * 100vw) !important;
}

.example-cta .example-cta__catch {
    width: calc((784 / 1500) * 100vw);
    margin: 0 auto calc((61 / 1500) * 100vw);
}
@media screen and (max-width: 767px) {
    .example-cta {
        padding-top: calc((50 / 375) * 100vw) !important;
        padding-bottom: calc((50 / 375) * 100vw) !important;
    }
    .example-cta .example-cta__catch {
        width: calc((328 / 375) * 100vw);
        margin: 0 auto calc((28 / 375) * 100vw);
    }
}
.about {
    padding-top: calc((100 / 1500) * 100vw) !important;
    padding-bottom: calc((100 / 1500) * 100vw) !important;
}
@media screen and (max-width: 767px) {
    .about {
        padding-top: calc((50 / 375) * 100vw) !important;
        padding-bottom: calc((60 / 375) * 100vw) !important;
    }
}
.about :is(.about__txt01, .about__balloon, .about__list) {
    width: calc((950 / 1500) * 100vw);
    margin: 0 auto;
}
.about .about__txt01 {
    margin-bottom: calc((70 / 1500) * 100vw);
}
.about .about__balloon {
    margin-bottom: calc((68 / 1500) * 100vw);
}
.about .about__list {
    margin-bottom: calc((60 / 1500) * 100vw);
}
.about .about__partner {
    width: calc((663 / 1500) * 100vw);
    margin: 0 auto calc((60 / 1500) * 100vw);
}
.about .about__btn {
    width: calc((360 / 1500) * 100vw);
    margin: 0 auto;
}
@media screen and (max-width: 767px) {
    .about :is(.about__txt01, .about__balloon, .about__list) {
        width: calc((345 / 375) * 100vw);
        margin: 0 auto;
    }
    .about .about__txt01 {
        margin-bottom: calc((40 / 375) * 100vw);
    }
    .about .about__balloon {
        margin-bottom: calc((25 / 375) * 100vw);
    }
    .about .about__list {
        width: calc((325 / 375) * 100vw);
        margin-bottom: calc((35 / 375) * 100vw);
    }
    .about .about__partner {
        width: calc((258 / 375) * 100vw);
        margin: 0 auto calc((36 / 375) * 100vw);
    }
    .about .about__btn {
        width: calc((280 / 375) * 100vw);
    }
}
.flow {
    padding-top: calc((110 / 1500) * 100vw) !important;
    padding-bottom: calc((100 / 1500) * 100vw) !important;
}

.flow .flow__list {
    width: calc((806 / 1500) * 100vw);
    margin: 0 auto calc((67 / 1500) * 100vw);
}
.flow .flow__cta-catch {
    width: calc((784 / 1500) * 100vw);
    margin: 0 auto calc((61 / 1500) * 100vw);
}
@media screen and (max-width: 767px) {
    .flow {
        padding-top: calc((53 / 375) * 100vw) !important;
        padding-bottom: calc((50 / 375) * 100vw) !important;
    }
    .flow .flow__list {
        width: calc((305 / 375) * 100vw);
        margin: 0 auto calc((50 / 375) * 100vw);
    }
    .flow .flow__cta-catch {
        width: calc((328 / 375) * 100vw);
        margin: 0 auto calc((28 / 375) * 100vw);
    }
}

.last-cta {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    background: linear-gradient(180deg, #e8ecf0 0%, #e8ecf0 60%, #3d3f43 60%);
}
@media screen and (max-width: 767px) {
    .last-cta {
        background: linear-gradient(180deg, #e8ecf0 0%, #e8ecf0 26%, #3d3f43 26%);
    }
}
.last-cta .contact-box {
    padding: calc((70 / 1500) * 100vw) calc((70 / 1500) * 100vw) calc((60 / 1500) * 100vw);
}
.last-cta .contact-box__txt {
    width: calc((721 / 1500) * 100vw);
    margin: 0 auto calc((50 / 1500) * 100vw);
}
.last-cta .contact-box__btn-wrap {
    --swl-clmn-mrgn--x: calc((30 / 1500) * 100vw);
}
@media screen and (max-width: 767px) {
    .last-cta .contact-box {
        padding: calc((37 / 375) * 100vw) calc((46 / 375) * 100vw) calc((33 / 375) * 100vw);
    }
    .last-cta .contact-box__txt {
        width: calc((225 / 375) * 100vw);
        margin: 0 auto calc((23 / 375) * 100vw);
    }
    .last-cta .contact-box__btn-wrap {
        --clmn-w: 100%;
        --swl-clmn-mrgn--y: calc((10 / 375) * 100vw);
    }
}
.sec-footer {
    padding-top: calc((88 / 1500) * 100vw) !important;
    padding-bottom: calc((136 / 1500) * 100vw) !important;
}
@media screen and (max-width: 767px) {
    .sec-footer {
        padding-top: calc((50 / 375) * 100vw) !important;
        padding-bottom: calc((65 / 375) * 100vw) !important;
    }
}

.sec-footer .sec-footer__main {
    margin-bottom: calc((45 / 1500) * 100vw);
}
.sec-footer .sec-footer__main .swell-block-columns__inner {
    width: calc((800 / 1500) * 100vw);
    margin: 0 auto;
    flex-wrap: nowrap;
    gap: calc((83 / 1500) * 100vw);
}
.sec-footer .sec-footer__logo {
    width: calc((280 / 1500) * 100vw);
    margin: 0;
    flex-shrink: 0;
}
.sec-footer .sec-footer__link-list {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0;
    gap: calc((4 / 1500) * 100vw) calc((24 / 1500) * 100vw);
}
.sec-footer .sec-footer__link-list p {
    margin: 0;
    font-size: calc((15 / 1500) * 100vw);
}
.sec-footer .sec-footer__link-list p:first-of-type {
    width: 100%;
}
.sec-footer .sec-footer__link-list a,
.sec-footer .sec-footer__copyright {
    color: #fff;
}
.sec-footer .sec-footer__copyright {
    font-size: calc((16 / 1500) * 100vw);
    letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
    .sec-footer .sec-footer__main {
        margin-bottom: calc((26 / 375) * 100vw);
    }
    .sec-footer .sec-footer__main .swell-block-columns__inner {
        width: calc((298 / 375) * 100vw);
        margin: 0 auto;
        flex-wrap: wrap;
        justify-content: center;
        gap: calc((30 / 375) * 100vw);
    }
    .sec-footer .sec-footer__logo {
        width: calc((178 / 375) * 100vw);
    }
    .sec-footer .sec-footer__link-list {
        gap: calc((4 / 375) * 100vw) calc((18 / 375) * 100vw);
    }
    .sec-footer .sec-footer__link-list p {
        font-size: calc((13 / 375) * 100vw);
    }
    .sec-footer .sec-footer__copyright {
        font-size: calc((10 / 375) * 100vw);
    }
}
/* ============
contact
=============== */
.sec_form {
    padding-top: calc((50 / 1500) * 100vw) !important;
    padding-bottom: calc((100 / 1500) * 100vw) !important;
}
.sec_form-box {
    width: calc((950 / 1500) * 100vw);
    margin: 0 auto;
    padding: calc((55 / 1500) * 100vw) 0 calc((65 / 1500) * 100vw);
    background: #fff;
    /* box-shadow: 4px 8px 12px #e8ecf0; */
}

@media (max-width: 767px) {
    .sec_form {
        padding-top: 30px !important;
        padding-bottom: 50px !important;
    }
    .sec_form-box {
        width: calc((335 / 375) * 100vw);
        padding: 0;
    }
}

.form-item {
    display: block;
}

.form-item:not(:last-child) {
    margin-bottom: 25px;
}

@media (max-width: 959px) {
    .form-item:not(:last-child) {
        margin-bottom: 20px;
    }
}

.form-txt {
    line-height: 1.5;
    margin-bottom: 40px;
}

.form-item--textarea .form-label {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.form-item--textarea._time textarea {
    height: 100px;
}

.form-item--radio {
    border: none;
    margin-bottom: 10px !important;
}

.form-label {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-size: 22px;
    font-weight: 700;
}

@media screen and (max-width: 399px) {
    .form-label {
        font-size: min(calc((18 / 375) * 100vw), 18px);
    }
}

.form-label--required::after {
    content: "必須";
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f43838;
    margin-left: 10px;
    color: #fff;
    font-size: 18px;
    padding: 2px 10px 4px;
    line-height: 1;
}
@media (max-width: 767px) {
    .form-label--required::after {
        margin-left: 6px;
        font-size: min(calc((14 / 375) * 100vw), 14px);
    }
}
.form-text {
    color: #a3a3a3;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 8px;
}

@media (max-width: 767px) {
    .form-text {
        font-size: min(calc((18 / 375) * 100vw), 18px);
    }
}

.form-input {
    display: inline-block;
    width: 100%;
}

.form-input input,
.form-input textarea,
.form-input select {
    background: #f0f0f0;
    border: 2px solid #dddddd;
    border-radius: 2px;
    font-family: inherit;
    height: 48px;
    font-size: 20px;
}

@media (max-width: 767px) {
    .form-input input,
    .form-input textarea,
    .form-input select {
        height: 35px;
        font-size: min(calc((16 / 375) * 100vw), 16px);
    }
}

.form-input input::-webkit-input-placeholder,
.form-input textarea::-webkit-input-placeholder,
.form-input select::-webkit-input-placeholder {
    color: #b1b1b1;
}

.form-input input:-ms-input-placeholder,
.form-input textarea:-ms-input-placeholder,
.form-input select:-ms-input-placeholder {
    color: #b1b1b1;
}

.form-input input::-ms-input-placeholder,
.form-input textarea::-ms-input-placeholder,
.form-input select::-ms-input-placeholder {
    color: #b1b1b1;
}

.form-input input::placeholder,
.form-input textarea::placeholder,
.form-input select::placeholder {
    color: #b1b1b1;
}

.form-input input,
.form-input textarea {
    width: 100%;
}

.form-input select {
    font-family: inherit;
    font-size: inherit;
}

.form-input select::-ms-expand {
    display: none;
}

.form-radio {
    align-items: center;
    display: flex;
    font-size: 22px;
}
@media (max-width: 767px) {
    .form-radio {
        font-size: min(calc((16 / 375) * 100vw), 18px);
    }
}
.form-radio .wpcf7-list-item {
    display: block;
}
.form-radio .wpcf7-list-item > label {
    display: flex;
    align-items: center;
    gap: 10px;
}
.form-radio .wpcf7-list-item input[type="radio"] {
    transform: scale(1.4);
}
.form-radio .wpcf7-acceptance input[type="checkbox"] {
    transform: scale(1.3);
}
@media (max-width: 767px) {
    .form-radio .wpcf7-list-item > label {
        gap: 5px;
    }
    .form-radio .wpcf7-list-item input[type="radio"] {
        transform: scale(1);
    }
}
.sec_form .attention {
    margin-top: 40px;
    margin-bottom: 10px;
    font-size: 18px;
}
.form-accept {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
    margin-bottom: 10px;
}
.form-accept .wpcf7-list-item > label {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
}
@media (max-width: 767px) {
    .sec_form .attention {
        font-size: min(calc((14 / 375) * 100vw), 14px);
    }
    .form-accept {
        font-size: min(calc((14 / 375) * 100vw), 14px);
    }
}

.form-submit input[type="submit"] {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 450px;
    height: 90px;
    margin: 20px auto;
    background: #8fbf25;
    border-radius: 10px;
    border: 1px solid #8fbf25;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    color: #fff;
    font-family: inherit;
    font-size: 22px;
    font-weight: 700;
    transition: all 0.5s ease-in-out;
}

@media (max-width: 767px) {
    .form-submit input[type="submit"] {
        max-width: 450px;
        width: 80%;
        height: 60px;
        font-size: min(calc((18 / 375) * 100vw), 18px);
    }
}

.form-submit:hover input[type="submit"] {
    background: #fff;
    color: #8fbf25;
}

.seminar-form .attention {
    color: #f43838;
    display: inline-block;
    font-size: 22px;
    font-weight: 700;
    text-align: center;
}
@media (max-width: 767px) {
    .seminar-form .attention {
        font-size: min(calc((16 / 375) * 100vw), 16px);
        text-align: left;
    }
}

.seminar-form .attention-trouble {
    display: block;
    margin-top: 20px;
    text-align: center;
}

@media (max-width: 767px) {
    .seminar-form .attention-trouble {
        font-size: min(calc((16 / 375) * 100vw), 16px);
        text-align: left;
    }
}

.wpcf7-not-valid-tip {
    color: #f60a0a;
    font-weight: bold;
    margin-top: 5px;
}

.wpcf7-not-valid-tip::before {
    content: "※";
}

div.wpcf7-response-output {
    border: none !important;
    font-size: 2rem;
    font-weight: bold;
    margin-top: 60px;
    text-align: center;
}

div.wpcf7 .ajax-loader {
    -webkit-transform: translateX(-50%);
    bottom: -40px;
    left: 50%;
    margin: 0;
    position: absolute;
    transform: translateX(-50%);
}

span.wpcf7-list-item {
    margin: 0;
}

/* 送信ローダーの位置調整 */
.wpcf7 .wpcf7-spinner {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
}

.wpcf7-submit-block {
    position: relative;
    margin-bottom: 2em;
    /* 要調整(*1) */
}

.wpcf7-submit-block input[type="submit"] {
    min-width: 200px;
}

/* 送信ローダークリック時 */
.wpcf7-submit.wpcf7-active {
    pointer-events: none;
    opacity: 0.5;
}

.privacy-link {
    color: #1b94e0;
    text-decoration: underline;
}
