@charset "utf-8";


/**
 * スマホ用設定
 */
@media ( width < 768px ) {

    body.page-body {
        padding-top: calc( 100vw * 144 / 780 );
        background: url(../images/page-bg.png) no-repeat 100% calc( 100vw * 144 / 780 ) / 80% auto;
    }

    #page-mv {
        margin: 0 auto;
        padding: 0;
        width: 100%;
    }
    #page-mv > h1 {
        margin: 0;
        padding: 8.0vw 5%;
        text-align: left;
    }
    #page-mv > h1 span:nth-of-type(1) {
        position: relative;
        display: block;
        margin: 0;
        padding: 0;
        font-size: 4.0vw;
        font-weight: 500;
    }
    #page-mv > h1 span:nth-of-type(1)::after {
        position: absolute;
        content: "";
        top: calc( 100% + 0.8em );
        left: 0;
        width: 88px;
        height: 1px;
        background: #e2e2e2;
    }
    #page-mv > h1 span:nth-of-type(2) {
        display: block;
        margin: 0.8em 0 0;
        padding: 0;
        font-size: 12.0vw;
        font-weight: 700;
        font-family: var(--font-alphabet);
        line-height: 1.2;
    }
    #page-mv > h1 span:nth-of-type(2)::first-letter {
        color: #5aa7d1;
    }

    .breadcrumbs {
        margin: 0;
        padding: 0 5%;
        width: 100%;
        font-size: 2.8vw;
        font-weight: 400;
    }
    .breadcrumbs > a {
        display: inline-block;
        padding: 0 1.5em 0 0;
        color: #2e2e2e;
    }
    .breadcrumbs > span {
        display: inline-block;
        padding: 0 1.5em 0 0;
        color: #a7a7a7;
    }
    .breadcrumbs > :is(a,span) + :is(a,span)::before {
        display: inline-block;
        padding: 0 1.5em 0 0;
        content: ">";
        color: #5aa7d1;
    }

    .page-main {
        margin: 0 auto;
        padding: 12.0vw 0;
        width: 90%;
    }
    .page-main p {
        margin: 1.5em 0 0;
        padding: 0;
        width: 100%;
        font-size: 3.6vw;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }
    .page-main p.center {
        text-align: center;
    }

    .page-sec {
        margin: 0 auto;
        padding: 8.0vw 0;
        width: 100%;
    }
    .page-sec > .subtitle {
        margin: 0;
        padding: 0;
        font-size: 4.0vw;
        font-weight: 700;
        font-family: var(--font-alphabet);
        text-align: left;
        line-height: 1.0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0 2.0vw;
    }
    .page-sec > .subtitle::before {
        display: block;
        content: "";
        margin: 0;
        width: 3.0vw;
        height: 2.6vw;
        background: #5aa7d1;
        clip-path: polygon( 0 0, 100% 50%, 0 100% );
    }
    .page-sec > h2 {
        margin: 0.2em 0 0;
        padding: 0;
        font-size: 8.0vw;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 58 );
    }
    .page-sec > h2::first-letter {
        color: #5aa7d1;
    }
    .page-sec > h3 {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 6.0vw;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 33 );
    }
    .page-sec > p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 3.6vw;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }

    .page-sec-01 {
        margin: 0 auto;
        padding: 12.0vw 0;
        width: 100%;
    }
    .page-sec-01 > .page-sec-flex {
        margin: 0 auto;
        padding: 0;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 8.0vw 0;
    }
    .page-sec-01 > .page-sec-flex .page-sec-l {
        margin: 0;
        padding: 0;
        width: 100%;
        order: 2;
    }
    .page-sec-01 > .page-sec-flex .page-sec-r {
        margin: 0;
        padding: 0;
        width: 100%%;
        order: 2;
    }
    .page-sec-01 > .page-sec-flex .page-sec-l .subtitle {
        margin: 0;
        padding: 0;
        font-size: 4.0vw;
        font-weight: 700;
        font-family: var(--font-alphabet);
        text-align: left;
        line-height: 1.0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0 2.0vw;
    }
    .page-sec-01 > .page-sec-flex .page-sec-l .subtitle::before {
        display: block;
        content: "";
        margin: 0;
        width: 3.0vw;
        height: 2.6vw;
        background: #5aa7d1;
        clip-path: polygon( 0 0, 100% 50%, 0 100% );
    }
    .page-sec-01 > .page-sec-flex .page-sec-l h2 {
        margin: 0.2em 0 0;
        padding: 0;
        font-size: 8.0vw;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 58 );
    }
    .page-sec-01 > .page-sec-flex .page-sec-l h2::first-letter {
        color: #5aa7d1;
    }
    .page-sec-01 > .page-sec-flex .page-sec-l h3 {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 6.0vw;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 33 );
    }
    .page-sec-01 > .page-sec-flex .page-sec-l p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 3.6vw;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }
    .page-sec-01 > .page-sec-flex .page-sec-pic {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        order: 1;
    }
    .page-sec-01 > .page-sec-flex .page-sec-pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 2.0vw;
    }
    .page-sec-01 > .page-sec-flex .page-sec-pic:empty {
        background: #e2e2e2;
        border-radius: 2.0vw;
        aspect-ratio: 608 / 470;
    }

    .page-sec-02 {
        margin: 0 auto;
        padding: 12.0vw 0;
        width: 100%;
    }
    .page-sec-02 > .page-sec-flex {
        margin: 0 auto;
        padding: 0;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 8.0vw 0;
    }
    .page-sec-02 > .page-sec-flex .page-sec-l {
        margin: 0;
        padding: 0;
        width: 100%;
    }
    .page-sec-02 > .page-sec-flex .page-sec-l .subtitle {
        margin: 0;
        padding: 0;
        font-size: 4.0vw;
        font-weight: 700;
        font-family: var(--font-alphabet);
        text-align: left;
        line-height: 1.0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0 2.0vw;
    }
    .page-sec-02 > .page-sec-flex .page-sec-l .subtitle::before {
        display: block;
        content: "";
        margin: 0;
        width: 3.0vw;
        height: 2.6vw;
        background: #5aa7d1;
        clip-path: polygon( 0 0, 100% 50%, 0 100% );
    }
    .page-sec-02 > .page-sec-flex .page-sec-l h2 {
        margin: 0.2em 0 0;
        padding: 0;
        font-size: 8.0vw;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 58 );
    }
    .page-sec-02 > .page-sec-flex .page-sec-l h2::first-letter {
        color: #5aa7d1;
    }
    .page-sec-02 > .page-sec-flex .page-sec-l h3 {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 6.0vw;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 33 );
    }
    .page-sec-02 > .page-sec-flex .page-sec-l p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 3.6vw;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }
    .page-sec-02 > .page-sec-flex .page-sec-pic {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
    }
    .page-sec-02 > .page-sec-flex .page-sec-pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 2.0vw;
    }
    .page-sec-02 > .page-sec-flex .page-sec-pic:empty {
        background: #e2e2e2;
        border-radius: 2.0vw;
        aspect-ratio: 608 / 470;
    }
    .page-sec-02 > .page-sec-flex .page-sec-r {
        margin: 0;
        padding: 0;
        width: 100%;
    }
    .page-sec-02 > .page-sec-flex .page-sec-r .page-sec-table {
        margin: 0;
        padding: 0;
        width: 100%;
        border-top: 1px solid #e2e2e2;
        display: grid;
        grid-template-columns: 40% 60%;
        gap: 0;
    }
    .page-sec-02 > .page-sec-flex .page-sec-r .page-sec-table > dt {
        margin: 0;
        padding: 4.0vw 0;
        width: 100%;
        font-size: 3.6vw;
        font-weight: 500;
        line-height: calc( 40 / 16 );
        border-bottom: 1px solid #e2e2e2;
    }
    .page-sec-02 > .page-sec-flex .page-sec-r .page-sec-table > dd {
        margin: 0;
        padding: 4.0vw 0;
        width: 100%;
        font-size: 3.6vw;
        font-weight: 400;
        line-height: calc( 40 / 16 );
        border-bottom: 1px solid #e2e2e2;
    }

    .page-sec-03 {
        margin: 0 auto;
        padding: 12.0vw 0;
        width: 100%;
    }
    .page-sec-03 > .subtitle {
        margin: 0;
        padding: 0;
        font-size: 4.0vw;
        font-weight: 700;
        font-family: var(--font-alphabet);
        text-align: left;
        line-height: 1.0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0 2.0vw;
    }
    .page-sec-03 > .subtitle::before {
        display: block;
        content: "";
        margin: 0;
        width: 3.0vw;
        height: 2.6vw;
        background: #5aa7d1;
        clip-path: polygon( 0 0, 100% 50%, 0 100% );
    }
    .page-sec-03 > h2 {
        margin: 0.2em 0 0;
        padding: 0;
        font-size: 8.0vw;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 58 );
    }
    .page-sec-03 > h2::first-letter {
        color: #5aa7d1;
    }
    .page-sec-03 > h3 {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 6.0vw;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 33 );
    }
    .page-sec-03 > p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 3.6vw;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }
    .page-sec-03 > .page-sec-box {
        margin: 8.0vw 0 0;
        padding: 4.0vw;
        width: 100%;
        border: 1px solid #e2e2e2;
        border-radius: 2.0vw;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 4.0vw 0;
    }
    .page-sec-03 > .page-sec-box + .page-sec-box {
        margin-top: 4.0vw;
    }
    .page-sec-03 > .page-sec-box .page-sec-pic {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
    }
    .page-sec-03 > .page-sec-box .page-sec-pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 1.0vw;
    }
    .page-sec-03 > .page-sec-box .page-sec-pic:empty {
        background: #e2e2e2;
        border-radius: 1.0vw;
        aspect-ratio: 376 / 297;
    }
    .page-sec-03 > .page-sec-box .page-sec-r {
        margin: 0;
        padding: 0;
        width: 100%;
    }
    .page-sec-03 > .page-sec-box .page-sec-r h2 {
        margin: 0.2em 0 0;
        padding: 0;
        font-size: 4.8vw;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 28 );
    }
    .page-sec-03 > .page-sec-box .page-sec-r .attr {
        margin: 0.5em 0 0;
        padding: 0;
        font-size: 3.2vw;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 13 );
    }
    .page-sec-03 > .page-sec-box .page-sec-r p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 3.6vw;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }

    .page-sec-04 {
        margin: 0 auto;
        padding: 12.0vw 0;
        width: 100%;
    }
    .page-sec-04 > .page-sec-flex {
        margin: 0 auto;
        padding: 0;
        width: 100%;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 8.0vw 0;
    }
    .page-sec-04 > .page-sec-flex .page-sec-pic {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
    }
    .page-sec-04 > .page-sec-flex .page-sec-pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 1.0vw;
    }
    .page-sec-04 > .page-sec-flex .page-sec-pic:empty {
        background: #e2e2e2;
        border-radius: 1.0vw;
        aspect-ratio: 504 / 372;
    }
    .page-sec-04 > .page-sec-flex .page-sec-r {
        margin: 0;
        padding: 0;
        width: 100%;
    }
    .page-sec-04 > .page-sec-flex .page-sec-r .subtitle {
        margin: 0;
        padding: 0.4em 0.8em;
        width: max-content;
        color: #fff;
        font-size: 3.6vw;
        font-weight: 700;
        text-align: left;
        line-height: 1.0;
        background: #5aa7d1;
    }
    .page-sec-04 > .page-sec-flex .page-sec-r h2 {
        position: relative;
        margin: 0.2em 0 0;
        padding: 0 0 0.5em;
        font-size: 6.0vw;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 28 );
        border-bottom: 1px solid #e2e2e2;
    }
    .page-sec-04 > .page-sec-flex .page-sec-r h2::after {
        position: absolute;
        content: "";
        top: 100%;
        left: 0;
        width: 50.0vw;
        height: 2px;
        background: #5aa7d1;
    }
    .page-sec-04 > .page-sec-flex .page-sec-r h3 {
        position: relative;
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 4.8vw;
        font-weight: 500;
        text-align: left;
        line-height: calc( 65 / 28 );
    }
    .page-sec-04 > .page-sec-flex .page-sec-r p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 3.6vw;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }

    .page-sec-checks {
        margin: 8.0vw auto 0;
        padding: 0;
        width: 90%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 2.0vw 2.0vw;
        list-style: none;
    }
    .page-sec-checks > li {
        margin: 0;
        padding: 2.0vw 2.0vw;
        width: 100%;
        border: 1px solid #e2e2e2;
        border-radius: 1.0vw;
        font-size: 3.6vw;
        font-weight: 500;
        line-height: calc( 41 / 19 );
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 0 2.0vw;
        list-style: none;
    }
    .page-sec-checks > li::before {
        display: block;
        content: "";
        margin: 2.4vw 0 0;
        width: 8.0vw;
        height: auto;
        aspect-ratio: 1 / 1;
        background: url(../images/icon-check-cyan.svg) no-repeat center / contain;
    }

    .page-sec-cards {
        margin: 8.0vw auto 0;
        padding: 0;
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8.0vw 4.0vw;
    }
    .page-sec-cards > .page-sec-card {
        margin: 0;
        padding: 0;
        width: 100%;
    }
    .page-sec-cards > .page-sec-card .page-sec-pic {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
    }
    .page-sec-cards > .page-sec-card .page-sec-pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 1.0vw;
    }
    .page-sec-cards > .page-sec-card .page-sec-pic:empty {
        background: #e2e2e2;
        border-radius: 1.0vw;
        aspect-ratio: 588 / 331;
    }
    .page-sec-cards > .page-sec-card .head {
        margin: 0.8em 0 0;
        padding: 0 0 0 0.8em;
        font-size: 4.0vw;
        font-weight: 500;
        text-align: left;
        border-left: 4px solid #5aa7d1;
    }
    .page-sec-cards > .page-sec-card p {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 3.6vw;
        font-weight: 400;
        text-align: left;
        line-height: calc( 32 / 16 );
    }

    .page-sec-lists {
        margin: 8.0vw auto 0;
        padding: 0;
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8.0vw 4.0vw;
    }
    .page-sec-lists > .page-sec-list {
        margin: 0;
        padding: 0;
        width: 100%;
        list-style: none;
    }
    .page-sec-lists > .page-sec-list li {
        margin: 0.5em 0 0;
        padding: 0;
        font-size: 4.0vw;
        font-weight: 500;
        text-align: left;
        line-height: calc( 41 / 19 );
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 0 2.0vw;
    }
    .page-sec-lists > .page-sec-list .head {
        margin: 0 0 0.8em;
        padding: 0 0 0.8em;
        font-size: 4.8vw;
        font-weight: 700;
        text-align: left;
        border-bottom: 1px solid #e2e2e2;
    }
    .page-sec-lists > .page-sec-list .head::before {
        content: "";
        margin: 4.0vw 0 0;
        width: 3.0vw;
        height: 2.6vw;
        background: #5aa7d1;
        clip-path: polygon( 0 0, 100% 50%, 0 100% );
        border-radius: unset;
    }
    .page-sec-lists > .page-sec-list li::before {
        content: "";
        margin: 3.6vw 0 0;
        width: 1.6vw;
        height: 1.6vw;
        background: #5aa7d1;
        border-radius: 100%;
    }

    .page-cta-box {
        margin: 8.0vw auto 0;
        padding: 4.0vw;
        width: 90%;
        border: 1px solid #e2e2e2;
    }
    .page-cta-box > h2 {
        margin: 0;
        padding: 0;
        font-size: 4.0vw;
        font-weight: 700;
        text-align: center;
        line-height: calc( 42 / 23 );
    }
    .page-cta-box > p {
        margin: 0.5em 0 0;
        padding: 0;
        font-size: 3.6vw;
        font-weight: 400;
        text-align: center;
        line-height: calc( 26 / 16 );
    }
    .page-cta-box > p.small {
        margin-top: 0;
        font-size: 2.8vw;
    }
    .page-cta-box > a {
        display: block;
        margin: 0.5em 0 0;
        font-size: 6.0vw;
        font-weight: 400;
        font-family: var(--font-alphabet);
        text-align: center;
        letter-spacing: 0.06em;
    }

    .page-sec-form {
        margin: 0 auto;
        padding: 8.0vw 0;
        width: 100%;
    }
    .page-sec-form .form-main {
        margin: 0 auto;
        padding: 4.0vw 4.0vw;
        width: 100%;
        background: #f8fafc;
        border-radius: 2.0vw;
        display: grid;
        align-items: center;
        grid-template-columns: 1fr;
        gap: 0;
    }
    .page-sec-form .form-main > dt {
        margin: 0;
        padding: 1.5em 0 0.5em;
        width: 100%;
        font-size: 3.6vw;
        font-weight: 500;
    }
    .page-sec-form .form-main > dt.required::after {
        display: inline-block;
        content: "必須";
        margin: 0 0 0 1.0em;
        color: #5aa7d1;
        font-size: 3.2vw;
    }
    .page-sec-form .form-main > dt.not-required::after {
        display: inline-block;
        content: "任意";
        margin: 0 0 0 1.0em;
        color: #ccc;
        font-size: 3.2vw;
    }
    .page-sec-form .form-main > dd {
        margin: 0;
        padding: 0.5em 0 1.5em;
    }
    .page-sec-form .form-main > dd label {
        display: block;
        font-size: 3.6vw;
        font-weight: 400;
    }
    .page-sec-form .form-main > dd label + label {
        margin-top: 2.0vw;
    }
    .page-sec-form .form-main > dd :is(input[type="text"],input[type="email"],input[type="tel"],input[type="date"],textarea,select) {
        margin: 0;
        padding: 0.8em 1.0em;
        width: 100%;
        font-size: 16px;
        font-weight: 400;
        font-family: inherit;
        background: #fff;
        border: 1px solid #e2e2e2;
    }
    .page-sec-form .form-main > dd :is(input[type="text"],input[type="email"],input[type="tel"],input[type="date"],textarea,select)::placeholder {
        color: #a7a7a7;
    }
    .page-sec-form .form-main > dd textarea {
        height: 8.0em;
    }
    .page-sec-form .form-main > dd select {
        width: auto;
    }
    .page-sec-form .form-controls {
        margin: 0 auto;
        padding: 8.0vw 0;
        width: 100%;
    }
    .page-sec-form .form-controls p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 3.6vw;
        font-weight: 400;
        text-align: left;
        line-height: calc( 27 / 16 );
    }
    .page-sec-form .form-controls p.center {
        text-align: center;
    }
    .page-sec-form .form-controls .ws-agree {
        margin: 8.0vw auto 0;
        padding: 0;
        width: max-content;
        text-align: center;
    }
    .page-sec-form .form-controls .ws-agree label {
        display: block;
        margin: 0;
        padding: 0;
        width: max-content;
        font-size: 3.6vw;
        font-weight: 400;
        text-align: center;
    }
    .page-sec-form .form-controls .ws-submit {
        position: relative;
        margin: 8.0vw auto 0;
        padding: 0;
        width: 60%;
        height: auto;
        aspect-ratio: 224 / 44;
    }
    .page-sec-form .form-controls .ws-submit::after {
        position: absolute;
        content: "";
        top: calc( 50% - 2.0vw );
        right: 3.2vw;
        width: 4.0vw;
        height: auto;
        aspect-ratio: 1 / 1;
        background: url(../images/icon-arrow-r-white.svg) no-repeat center /contain;
    }
    .page-sec-form .form-controls .ws-submit input[type="submit"] {
        display: grid;
        place-items: center;
        margin: 0;
        padding: 0;
        width: 100%;
        height: 100%;
        color: #fff;
        font-size: 3.6vw;
        font-weight: 500;
        font-family: inherit;
        background: #4c7d97;
        border: 0;
        border-radius: 4.0em;
    }

    .guideline-tabs {
        margin: 0 auto 8.0vw;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-start;
        gap: 2.0vw 2.0vw;
    }
    .guideline-tabs .guideline-tab {
        position: relative;
        display: block;
        margin: 0;
        padding: 0.5em 2.0em;
        color: #999;
        font-size: 3.6vw;
        font-weight: 500;
        border-bottom: 1px solid #999;
    }
    .guideline-tabs .guideline-tab input[type="radio"] {
        position: absolute;
        top: 0;
        right: 0;
        width: 1px;
        height: 1px;
        opacity: 0;
    }
    .guideline-tabs .guideline-tab:has(input[type="radio"]:checked) {
        color: #4c7d97;
        border-bottom: 1px solid #4c7d97;
    }

    .guideline-tabs ~ .page-sec-flex {
        display: none;
    }
    .guideline-tabs:has([id="guideline-1"]:checked) ~ .page-sec-flex[target-id="guideline-1"] {
        display: flex;
    }
    .guideline-tabs:has([id="guideline-2"]:checked) ~ .page-sec-flex[target-id="guideline-2"] {
        display: flex;
    }
    .guideline-tabs:has([id="guideline-3"]:checked) ~ .page-sec-flex[target-id="guideline-3"] {
        display: flex;
    }

}


/**
 * PC用設定
 */
@media ( width >= 768px ) {

    body.page-body {
        padding-top: 144px;
        background: url(../images/page-bg.png) no-repeat 100% 144px / 36% auto;
    }

    #page-mv {
        margin: 0 auto;
        padding: 112px max( 5%, calc( 50vw - 640px ) ) 48px;
        width: 100%;
    }
    #page-mv > h1 {
        margin: 0;
        padding: 0;
        text-align: left;
    }
    #page-mv > h1 span:nth-of-type(1) {
        position: relative;
        display: block;
        margin: 0;
        padding: 0;
        font-size: 19px;
        font-weight: 500;
    }
    #page-mv > h1 span:nth-of-type(1)::after {
        position: absolute;
        content: "";
        top: calc( 100% + 0.8em );
        left: 0;
        width: 88px;
        height: 1px;
        background: #e2e2e2;
    }
    #page-mv > h1 span:nth-of-type(2) {
        display: block;
        margin: 0.8em 0 0;
        padding: 0;
        font-size: 70px;
        font-weight: 700;
        font-family: var(--font-alphabet);
        line-height: 1.2;
    }
    #page-mv > h1 span:nth-of-type(2)::first-letter {
        color: #5aa7d1;
    }

    .breadcrumbs {
        margin: 0;
        padding: 0 max( 5%, calc( 50vw - 640px ) );
        width: 100%;
        font-size: 13px;
        font-weight: 400;
    }
    .breadcrumbs > a {
        display: inline-block;
        padding: 0 1.5em 0 0;
        color: #2e2e2e;
    }
    .breadcrumbs > span {
        display: inline-block;
        padding: 0 1.5em 0 0;
        color: #a7a7a7;
    }
    .breadcrumbs > :is(a,span) + :is(a,span)::before {
        display: inline-block;
        padding: 0 1.5em 0 0;
        content: ">";
        color: #5aa7d1;
    }

    .page-main {
        margin: 0 auto;
        padding: 104px 0;
        width: 90%;
        max-width: 1280px;
    }
    .page-main p {
        margin: 1.5em 0 0;
        padding: 0;
        width: 100%;
        font-size: 16px;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }
    .page-main p.center {
        text-align: center;
    }

    .page-sec {
        margin: 0 auto;
        padding: 80px 0;
        width: 100%;
    }
    .page-sec > .subtitle {
        margin: 0;
        padding: 0;
        font-size: 19px;
        font-weight: 700;
        font-family: var(--font-alphabet);
        text-align: left;
        line-height: 1.0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0 16px;
    }
    .page-sec > .subtitle::before {
        display: block;
        content: "";
        margin: 0;
        width: 15px;
        height: 13px;
        background: #5aa7d1;
        clip-path: polygon( 0 0, 100% 50%, 0 100% );
    }
    .page-sec > h2 {
        margin: 0.2em 0 0;
        padding: 0;
        font-size: 58px;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 58 );
    }
    .page-sec > h2::first-letter {
        color: #5aa7d1;
    }
    .page-sec > h3 {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 33px;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 33 );
    }
    .page-sec > p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 16px;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }

    .page-sec-01 {
        margin: 0 auto;
        padding: 80px 0;
        width: 100%;
    }
    .page-sec-01 > .page-sec-flex {
        margin: 0 auto;
        padding: 0;
        width: 100%;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
    }
    .page-sec-01 > .page-sec-flex .page-sec-l {
        margin: 0;
        padding: 0;
        width: calc( 50% - 56px );
    }
    .page-sec-01 > .page-sec-flex .page-sec-r {
        margin: 0;
        padding: 0;
        width: 50%;
    }
    .page-sec-01 > .page-sec-flex .page-sec-l .subtitle {
        margin: 0;
        padding: 0;
        font-size: 19px;
        font-weight: 700;
        font-family: var(--font-alphabet);
        text-align: left;
        line-height: 1.0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0 16px;
    }
    .page-sec-01 > .page-sec-flex .page-sec-l .subtitle::before {
        display: block;
        content: "";
        margin: 0;
        width: 15px;
        height: 13px;
        background: #5aa7d1;
        clip-path: polygon( 0 0, 100% 50%, 0 100% );
    }
    .page-sec-01 > .page-sec-flex .page-sec-l h2 {
        margin: 0.2em 0 0;
        padding: 0;
        font-size: 58px;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 58 );
    }
    .page-sec-01 > .page-sec-flex .page-sec-l h2::first-letter {
        color: #5aa7d1;
    }
    .page-sec-01 > .page-sec-flex .page-sec-l h3 {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 33px;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 33 );
    }
    .page-sec-01 > .page-sec-flex .page-sec-l p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 16px;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }
    .page-sec-01 > .page-sec-flex .page-sec-pic {
        margin: 0;
        padding: 0;
        width: 50%;
        height: auto;
    }
    .page-sec-01 > .page-sec-flex .page-sec-pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 16px;
    }
    .page-sec-01 > .page-sec-flex .page-sec-pic:empty {
        background: #e2e2e2;
        border-radius: 16px;
        aspect-ratio: 608 / 470;
    }

    .page-sec-02 {
        margin: 0 auto;
        padding: 80px 0;
        width: 100%;
    }
    .page-sec-02 > .page-sec-flex {
        margin: 0 auto;
        padding: 0;
        width: 100%;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
    }
    .page-sec-02 > .page-sec-flex .page-sec-l {
        margin: 0;
        padding: 0;
        width: calc( 35% - 56px );
    }
    .page-sec-02 > .page-sec-flex .page-sec-l .subtitle {
        margin: 0;
        padding: 0;
        font-size: 19px;
        font-weight: 700;
        font-family: var(--font-alphabet);
        text-align: left;
        line-height: 1.0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0 16px;
    }
    .page-sec-02 > .page-sec-flex .page-sec-l .subtitle::before {
        display: block;
        content: "";
        margin: 0;
        width: 15px;
        height: 13px;
        background: #5aa7d1;
        clip-path: polygon( 0 0, 100% 50%, 0 100% );
    }
    .page-sec-02 > .page-sec-flex .page-sec-l h2 {
        margin: 0.2em 0 0;
        padding: 0;
        font-size: 58px;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 58 );
    }
    .page-sec-02 > .page-sec-flex .page-sec-l h2::first-letter {
        color: #5aa7d1;
    }
    .page-sec-02 > .page-sec-flex .page-sec-l h3 {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 33px;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 33 );
    }
    .page-sec-02 > .page-sec-flex .page-sec-l p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 16px;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }
    .page-sec-02 > .page-sec-flex .page-sec-pic {
        margin: 0;
        padding: 0;
        width: 50%;
        height: auto;
    }
    .page-sec-02 > .page-sec-flex .page-sec-pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 16px;
    }
    .page-sec-02 > .page-sec-flex .page-sec-pic:empty {
        background: #e2e2e2;
        border-radius: 16px;
        aspect-ratio: 608 / 470;
    }
    .page-sec-02 > .page-sec-flex .page-sec-r {
        margin: 0;
        padding: 0;
        width: 65%;
    }
    .page-sec-02 > .page-sec-flex .page-sec-r .page-sec-table {
        margin: 0;
        padding: 0;
        width: 100%;
        border-top: 1px solid #e2e2e2;
        display: grid;
        grid-template-columns: 40% 60%;
        gap: 0;
    }
    .page-sec-02 > .page-sec-flex .page-sec-r .page-sec-table > dt {
        margin: 0;
        padding: 32px 0;
        width: 100%;
        font-size: 16px;
        font-weight: 500;
        line-height: calc( 40 / 16 );
        border-bottom: 1px solid #e2e2e2;
    }
    .page-sec-02 > .page-sec-flex .page-sec-r .page-sec-table > dd {
        margin: 0;
        padding: 32px 0;
        width: 100%;
        font-size: 16px;
        font-weight: 400;
        line-height: calc( 40 / 16 );
        border-bottom: 1px solid #e2e2e2;
    }

    .page-sec-03 {
        margin: 0 auto;
        padding: 80px 0;
        width: 100%;
    }
    .page-sec-03 > .subtitle {
        margin: 0;
        padding: 0;
        font-size: 19px;
        font-weight: 700;
        font-family: var(--font-alphabet);
        text-align: left;
        line-height: 1.0;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0 16px;
    }
    .page-sec-03 > .subtitle::before {
        display: block;
        content: "";
        margin: 0;
        width: 15px;
        height: 13px;
        background: #5aa7d1;
        clip-path: polygon( 0 0, 100% 50%, 0 100% );
    }
    .page-sec-03 > h2 {
        margin: 0.2em 0 0;
        padding: 0;
        font-size: 58px;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 58 );
    }
    .page-sec-03 > h2::first-letter {
        color: #5aa7d1;
    }
    .page-sec-03 > h3 {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 33px;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 33 );
    }
    .page-sec-03 > p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 16px;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }
    .page-sec-03 > .page-sec-box {
        margin: 52px 0 0;
        padding: 32px;
        width: 100%;
        border: 1px solid #e2e2e2;
        border-radius: 16px;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
    }
    .page-sec-03 > .page-sec-box + .page-sec-box {
        margin-top: 24px;
    }
    .page-sec-03 > .page-sec-box .page-sec-pic {
        margin: 0;
        padding: 0;
        width: 30%;
        height: auto;
    }
    .page-sec-03 > .page-sec-box .page-sec-pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 8px;
    }
    .page-sec-03 > .page-sec-box .page-sec-pic:empty {
        background: #e2e2e2;
        border-radius: 8px;
        aspect-ratio: 376 / 297;
    }
    .page-sec-03 > .page-sec-box .page-sec-r {
        margin: 0;
        padding: 0;
        width: calc( 70% - 56px );
    }
    .page-sec-03 > .page-sec-box .page-sec-r h2 {
        margin: 0.2em 0 0;
        padding: 0;
        font-size: 28px;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 28 );
    }
    .page-sec-03 > .page-sec-box .page-sec-r .attr {
        margin: 0.5em 0 0;
        padding: 0;
        font-size: 13px;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 13 );
    }
    .page-sec-03 > .page-sec-box .page-sec-r p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 16px;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }

    .page-sec-04 {
        margin: 0 auto;
        padding: 80px 0;
        width: 100%;
    }
    .page-sec-04 > .page-sec-flex {
        margin: 0 auto;
        padding: 0;
        width: 100%;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
    }
    .page-sec-04 > .page-sec-flex .page-sec-pic {
        margin: 0;
        padding: 0;
        width: 40%;
        height: auto;
    }
    .page-sec-04 > .page-sec-flex.reverse .page-sec-pic {
        order: 2;
    }
    .page-sec-04 > .page-sec-flex .page-sec-pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 8px;
    }
    .page-sec-04 > .page-sec-flex .page-sec-pic:empty {
        background: #e2e2e2;
        border-radius: 16px;
        aspect-ratio: 504 / 372;
    }
    .page-sec-04 > .page-sec-flex .page-sec-r {
        margin: 0;
        padding: 0;
        width: calc( 60% - 56px );
    }
    .page-sec-04 > .page-sec-flex.reverse .page-sec-r {
        order: 1;
    }
    .page-sec-04 > .page-sec-flex .page-sec-r .subtitle {
        margin: 0;
        padding: 0.4em 0.8em;
        width: max-content;
        color: #fff;
        font-size: 16px;
        font-weight: 700;
        text-align: left;
        line-height: 1.0;
        background: #5aa7d1;
    }
    .page-sec-04 > .page-sec-flex .page-sec-r h2 {
        position: relative;
        margin: 0.2em 0 0;
        padding: 0 0 0.5em;
        font-size: 33px;
        font-weight: 700;
        text-align: left;
        line-height: calc( 65 / 28 );
        border-bottom: 1px solid #e2e2e2;
    }
    .page-sec-04 > .page-sec-flex .page-sec-r h2::after {
        position: absolute;
        content: "";
        top: 100%;
        left: 0;
        width: 264px;
        height: 2px;
        background: #5aa7d1;
    }
    .page-sec-04 > .page-sec-flex .page-sec-r h3 {
        position: relative;
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 24px;
        font-weight: 500;
        text-align: left;
        line-height: calc( 65 / 28 );
    }
    .page-sec-04 > .page-sec-flex .page-sec-r p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 16px;
        font-weight: 400;
        text-align: left;
        line-height: calc( 40 / 16 );
    }

    .page-sec-checks {
        margin: 32px auto 0;
        padding: 0;
        width: 90%;
        max-width: 1024px;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 16px 16px;
        list-style: none;
    }
    .page-sec-checks > li {
        margin: 0;
        padding: 16px 24px;
        width: 100%;
        border: 1px solid #e2e2e2;
        border-radius: 8px;
        font-size: 16px;
        font-weight: 500;
        line-height: calc( 41 / 19 );
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 0 16px;
        list-style: none;
    }
    .page-sec-checks > li::before {
        display: block;
        content: "";
        margin: 6px 0 0;
        width: 24px;
        height: auto;
        aspect-ratio: 1 / 1;
        background: url(../images/icon-check-cyan.svg) no-repeat center / contain;
    }

    .page-sec-cards {
        margin: 32px auto 0;
        padding: 0;
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 56px 56px;
    }
    .page-sec-cards > .page-sec-card {
        margin: 0;
        padding: 0;
        width: 100%;
    }
    .page-sec-cards > .page-sec-card .page-sec-pic {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
    }
    .page-sec-cards > .page-sec-card .page-sec-pic img {
        margin: 0;
        padding: 0;
        width: 100%;
        height: auto;
        border-radius: 8px;
    }
    .page-sec-cards > .page-sec-card .page-sec-pic:empty {
        background: #e2e2e2;
        border-radius: 16px;
        aspect-ratio: 588 / 331;
    }
    .page-sec-cards > .page-sec-card .head {
        margin: 0.8em 0 0;
        padding: 0 0 0 0.8em;
        font-size: 23px;
        font-weight: 500;
        text-align: left;
        border-left: 4px solid #5aa7d1;
    }
    .page-sec-cards > .page-sec-card p {
        margin: 1.0em 0 0;
        padding: 0;
        font-size: 16px;
        font-weight: 400;
        text-align: left;
        line-height: calc( 32 / 16 );
    }

    .page-sec-lists {
        margin: 32px auto 0;
        padding: 0;
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 56px 40px;
    }
    .page-sec-lists > .page-sec-list {
        margin: 0;
        padding: 0;
        width: 100%;
        list-style: none;
    }
    .page-sec-lists > .page-sec-list li {
        margin: 0.5em 0 0;
        padding: 0;
        font-size: 19px;
        font-weight: 500;
        text-align: left;
        line-height: calc( 41 / 19 );
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 0 16px;
    }
    .page-sec-lists > .page-sec-list .head {
        margin: 0 0 0.8em;
        padding: 0 0 0.8em;
        font-size: 28px;
        font-weight: 700;
        text-align: left;
        border-bottom: 1px solid #e2e2e2;
    }
    .page-sec-lists > .page-sec-list .head::before {
        content: "";
        margin: 22px 0 0;
        width: 15px;
        height: 13px;
        background: #5aa7d1;
        clip-path: polygon( 0 0, 100% 50%, 0 100% );
        border-radius: unset;
    }
    .page-sec-lists > .page-sec-list li::before {
        content: "";
        margin: 16px 0 0;
        width: 8px;
        height: 8px;
        background: #5aa7d1;
        border-radius: 100%;
    }

    .page-cta-box {
        margin: 32px auto 0;
        padding: 32px;
        width: 90%;
        max-width: 1016px;
        border: 1px solid #e2e2e2;
    }
    .page-cta-box > h2 {
        margin: 0;
        padding: 0;
        font-size: 23px;
        font-weight: 700;
        text-align: center;
        line-height: calc( 42 / 23 );
    }
    .page-cta-box > p {
        margin: 0.5em 0 0;
        padding: 0;
        font-size: 16px;
        font-weight: 400;
        text-align: center;
        line-height: calc( 26 / 16 );
    }
    .page-cta-box > p.small {
        margin-top: 0;
        font-size: 13px;
    }
    .page-cta-box > a {
        display: block;
        margin: 0.5em 0 0;
        font-size: 32px;
        font-weight: 400;
        font-family: var(--font-alphabet);
        text-align: center;
        letter-spacing: 0.06em;
    }

    .page-sec-form {
        margin: 0 auto;
        padding: 40px 0;
        width: 100%;
    }
    .page-sec-form .form-main {
        margin: 0 auto;
        padding: 72px 60px;
        width: 100%;
        background: #f8fafc;
        border-radius: 16px;
        display: grid;
        align-items: center;
        grid-template-columns: 30% 70%;
        gap: 32px 0;
    }
    .page-sec-form .form-main > dt {
        margin: 0;
        width: 100%;
        font-size: 16px;
        font-weight: 500;
    }
    .page-sec-form .form-main > dt.required::after {
        display: inline-block;
        content: "必須";
        margin: 0 0 0 1.0em;
        color: #5aa7d1;
        font-size: 13px;
    }
    .page-sec-form .form-main > dt.not-required::after {
        display: inline-block;
        content: "任意";
        margin: 0 0 0 1.0em;
        color: #ccc;
        font-size: 13px;
    }
    .page-sec-form .form-main > dd {
    }
    .page-sec-form .form-main > dd label {
        display: block;
        font-size: 16px;
        font-weight: 400;
    }
    .page-sec-form .form-main > dd label + label {
        margin-top: 16px;
    }
    .page-sec-form .form-main > dd :is(input[type="text"],input[type="email"],input[type="tel"],input[type="date"],textarea,select) {
        margin: 0;
        padding: 0.8em 1.0em;
        width: 100%;
        font-size: 16px;
        font-weight: 400;
        font-family: inherit;
        background: #fff;
        border: 1px solid #e2e2e2;
    }
    .page-sec-form .form-main > dd :is(input[type="text"],input[type="email"],input[type="tel"],input[type="date"],textarea,select)::placeholder {
        color: #a7a7a7;
    }
    .page-sec-form .form-main > dd textarea {
        height: 8.0em;
    }
    .page-sec-form .form-main > dd select {
        width: auto;
    }
    .page-sec-form .form-controls {
        margin: 0 auto;
        padding: 40px 0;
        width: 100%;
    }
    .page-sec-form .form-controls p {
        margin: 1.5em 0 0;
        padding: 0;
        font-size: 16px;
        font-weight: 400;
        text-align: left;
        line-height: calc( 27 / 16 );
    }
    .page-sec-form .form-controls p.center {
        text-align: center;
    }
    .page-sec-form .form-controls .ws-agree {
        margin: 40px auto 0;
        padding: 0;
        width: max-content;
        text-align: center;
    }
    .page-sec-form .form-controls .ws-agree label {
        display: block;
        margin: 0;
        padding: 0;
        width: max-content;
        font-size: 16px;
        font-weight: 400;
        text-align: center;
    }
    .page-sec-form .form-controls .ws-submit {
        position: relative;
        margin: 40px auto 0;
        padding: 0;
        width: 224px;
        height: auto;
        aspect-ratio: 224 / 44;
    }
    .page-sec-form .form-controls .ws-submit::after {
        position: absolute;
        content: "";
        top: calc( 50% - 12px );
        right: 16px;
        width: 24px;
        height: auto;
        aspect-ratio: 1 / 1;
        background: url(../images/icon-arrow-r-white.svg) no-repeat center /contain;
    }
    .page-sec-form .form-controls .ws-submit input[type="submit"] {
        display: grid;
        place-items: center;
        margin: 0;
        padding: 0;
        width: 100%;
        height: 100%;
        color: #fff;
        font-size: 16px;
        font-weight: 500;
        font-family: inherit;
        background: #4c7d97;
        border: 0;
        border-radius: 4.0em;
    }

    .guideline-tabs {
        margin: 0 auto 60px;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-start;
        gap: 16px 16px;
    }
    .guideline-tabs .guideline-tab {
        position: relative;
        display: block;
        margin: 0;
        padding: 0.5em 2.0em;
        color: #999;
        font-size: 19px;
        font-weight: 500;
        border-bottom: 1px solid #999;
    }
    .guideline-tabs .guideline-tab input[type="radio"] {
        position: absolute;
        top: 0;
        right: 0;
        width: 1px;
        height: 1px;
        opacity: 0;
    }
    .guideline-tabs .guideline-tab:has(input[type="radio"]:checked) {
        color: #4c7d97;
        border-bottom: 1px solid #4c7d97;
    }

    .guideline-tabs ~ .page-sec-flex {
        display: none;
    }
    .guideline-tabs:has([id="guideline-1"]:checked) ~ .page-sec-flex[target-id="guideline-1"] {
        display: flex;
    }
    .guideline-tabs:has([id="guideline-2"]:checked) ~ .page-sec-flex[target-id="guideline-2"] {
        display: flex;
    }
    .guideline-tabs:has([id="guideline-3"]:checked) ~ .page-sec-flex[target-id="guideline-3"] {
        display: flex;
    }

}



.wpcf7-spinner {
    position: absolute;
    top: 100%;
    left: 50%;
    translate: -50% 0;
    margin: 0;
}

.wpcf7-radio .wpcf7-list-item {
    display: block;
}
.wpcf7-radio .wpcf7-list-item + .wpcf7-list-item  {
    margin-top: 16px;
}
