/* Theme Name: WithComi */


@media only screen and (max-width: 450px) {

    body {
        font-family: "Century Gothic", sans-serif;
        background-color: #fff;
    }

    a {
        color: black;
    }

    span {
        font-family: "游ゴシック体", "yugothic", "游ゴシック medium", "yu gothic medium", "游ゴシック", "yu gothic", "メイリオ", sans-serif !important;
    }

    main {
        overflow: hidden;
        max-width: 450px;
    }

    /*     reCAPTCHA非表示 */
    .grecaptcha-badge {
        visibility: hidden;
    }

    /*     reCAPTCHA非表示 */

    .logo_pc {
        display: none;
    }

    @keyframes fadeIn {
        0% {
            opacity: 0
        }

        /* 始め */
        100% {
            opacity: 0.8
        }

        /* 終わり */
    }

    .fadein {
        opacity: 0;
        transform: translate(0, 0);
        transition: all 0.8s;

        &.fadein-left {
            transform: translate(-30px, 0);
        }

        &.fadein-right {
            transform: translate(30px, 0);
        }

        &.fadein-up {
            transform: translate(0, -30px);
        }

        &.fadein-bottom {
            transform: translate(0, 30px);
        }

        &.scrollin {
            opacity: 1 !important;
            transform: translate(0, 0) !important;
        }
    }



    .reflection {
        display: inline-block;
        position: relative;
        overflow: hidden;
    }

    .reflection:after {
        content: "";
        height: 100%;
        width: 30px;
        position: absolute;
        top: -180px;
        left: 0;
        background-color: #fff;
        opacity: 0;
        -webkit-transform: rotate(45deg);
        -webkit-animation: reflection 2s ease-in-out infinite;
    }

    @keyframes reflection {
        0% {
            -webkit-transform: scale(0) rotate(45deg);
            opacity: 0;
        }

        80% {
            -webkit-transform: scale(0) rotate(45deg);
            opacity: 0.5;
        }

        81% {
            -webkit-transform: scale(4) rotate(45deg);
            opacity: 1;
        }

        100% {
            -webkit-transform: scale(50) rotate(45deg);
            opacity: 0;
        }
    }

    .shake01 {
        animation-name: shake01;
        animation-duration: 3s;
        animation-timing-function: ease-in-out;
        animation-iteration-count: infinite;
    }

    .button_gr {
        position: absolute;
        left: 10%;
        bottom: 3%;
        width: 79%;
    }

    .button_wh {
        position: absolute;
        left: 10%;
        bottom: 5%;
        width: 79%;
    }


    @keyframes shake01 {
        from {
            transform: none;
        }

        10% {
            transform: translate3d(1%, 0, 0);
        }

        20% {
            transform: translate3d(-1%, 0, 0);
        }

        30% {
            transform: translate3d(1%, 0, 0);
        }

        40% {
            transform: translate3d(0, 0, 0);
        }

        50% {
            transform: translate3d(0, 0, 0);
        }

        60% {
            transform: translate3d(0, 0, 0);
        }

        70% {
            transform: translate3d(0, 0, 0);
        }

        80% {
            transform: translate3d(0, 0, 0);
        }

        90% {
            transform: translate3d(0, 0, 0);
        }

        99% {
            transform: translate3d(0, 0, 0);
        }

        to {
            transform: none;
        }
    }




    img {
        width: 100%;
        height: auto;
        display: block;
    }

    .anchor {
        padding-top: 70px;
        margin-top: 70px;
    }

    #countdownArea {
        position: fixed;
        z-index: 9999;
        top: 0;
        width: 100%;
        height: 50px;
        color: #3a3937;
        background-color: #b8e8d7;
        display: flex;
        justify-content: center;
        align-items: center;
        font-weight: bold;
        font-size: 10px;
    }

    .countdown-text1 {
        display: block;
        font-size: 12px;
        line-height: 40px;
    }

    .countdown-text2 {
        display: block;
        font-size: 20px;
        background-color: #FFF;
        color: #3A3937;
        line-height: 36px;
        padding: 0 0.5%;
        margin: 0 0.5%;
    }


    .sankaku {
        width: 100%;
        height: auto;
        display: block;
        margin: 0px auto;
    }

    .flex_nav_top {
        display: flex;
        justify-content: space-between;
        position: fixed;
        z-index: 1000;
        width: 100%;
        background-color: #fff;
    }

    .logo_size_sp {
        width: 47px;
        margin: 14px 0px 14px 12px;
        z-index: 100;
        display: block;
    }

    .logo_size_pc {
        display: none;
    }

    .nav_top {
        display: none;
    }

    .logo_size_sp_qa {
        width: 60px;
        margin: 10px 0px 10px 20px;
    }

    /* ハンバーガーメニューここから */

    #nav-drawer {
        position: relative;
        right: 15px;
        width: 55px;
    }

    .nav-unshown {
        display: none;
    }

    #nav-open {
        vertical-align: middle;
        height: 65px;
        width: 65px;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: .3s ease-in-out;
    }

    #nav-open span,
    #nav-open span:before,
    #nav-open span:after {
        position: absolute;
        height: 3px;
        width: 38px;
        border-radius: 2px;
        background: #7dccb8;
        display: block;
        content: '';
        cursor: pointer;
        margin-right: 5px;
    }

    #nav-open span:before {
        bottom: 12px;
    }

    #nav-open span:after {
        bottom: -12px;
    }

    @keyframes show {
        from {
            opacity: 0;
        }

        to {
            opacity: 0.9;
        }
    }

    #nav-close {
        display: none;
        position: fixed;
        z-index: 99;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: black;
        transition: .3s ease-in-out;
    }

    #nav-content {
        overflow: auto;
        position: fixed;
        top: 50px;
        right: -25px;
        z-index: 8000;
        width: 275px;
        background: #fff;
        transition: .3s ease-in-out;
        display: none;
        opacity: 0.95;
    }

    #nav-content_pc {
        display: none;
    }

    #nav-input:checked+#nav-open span {
        transform: rotate(135deg);
        transition: .3s ease-in-out;
        z-index: 9999;
    }

    #nav-input:checked+#nav-open span:before {
        transform: translateY(12px) translateX(0px) rotate(-272deg);
        transition: .3s ease-in-out;
    }

    #nav-input:checked+#nav-open span:after {
        opacity: 0;
    }

    #nav-input:checked~#nav-content {
        display: block;
        animation: show .3s linear 0s;
        transition: .3s ease-in-out;
        box-shadow: 0px 4px 6px 0px rgba(0, 0, 0, 0.2);
        top: 70px;
        width: 380px;
        height: 100vh;
        padding-top: 50px;
        right: 0;
    }

    .menu {
        display: block;
        width: 100%;
        height: 65px;
        box-sizing: border-box;
        font-size: 20px;
        font-weight: 600;
    }


    .menu_img {
        width: 225px;
        height: auto;
        display: block;
        margin: 5px 0;
        margin-left: 11%;
    }

    .menu_of {
        display: block;
        box-sizing: border-box;
        font-size: 20px;
        font-weight: 600;
        margin: 0 auto;
    }

    .menu7 {
        position: absolute;
        bottom: 235px;
        width: 300px;
        margin: 0 auto;
        display: block;
        left: 38px;
    }

    .menu8 {
        position: absolute;
        bottom: 155px;
        width: 300px;
        margin: 0 auto;
        display: block;
        left: 38px;
    }

    .menu7_pc {
        display: none;
    }

    .menu8_pc {
        display: none;
    }


    .header2_sp {
        display: inline-block;
        width: 100%;
        height: 70px;
        border-bottom: 2px solid #FABE00;
        background-color: #FABE00;
        box-sizing: border-box;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .header2_sp:hover {
        border-bottom: 4px solid #EEEEEE;
    }

    .header2_sp img {
        width: 100px;
        height: 46px;
    }

    /* ハンバーガーメニューここまで */




    /* FV */


    .fv {
        position: relative;
        padding-bottom: 32%;
    }

    .fv_img {
        width: 100%;
        height: auto;
        display: block;
        margin: 0px 0;

    }


    .fv_down {
        width: 94%;
        height: auto;
        display: block;
        margin: 0 auto;
        margin-top: 15px;
    }


    .coupon_bg {
        position: relative;
        height: 483px;
        width: auto;
    }

    .coupon_bg_img {
        position: absolute;
        display: block;
        height: 483px;
    }

    .coupon1 {
        position: absolute;
        top: 10%;
        left: 28%;
        width: 45%;
        height: auto;
        display: block;
    }

    .coupon2 {
        position: absolute;
        width: 80%;
        top: 49%;
        left: 50%;
        height: auto;
        display: block;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
    }

    .button_wh {
        position: absolute;
        bottom: 9%;
        width: 80%;
        left: 10%;
    }


    /* fv */



    /* 悩み */

    .nayami1 {
        display: block;
        width: 50%;
        padding-top: 12%;
        margin: 0 auto;
    }

    .nayami2 {
        display: block;
        width: 50%;
        margin: 0 auto;
        margin-top: 5%;
        z-index: 20;
    }

    .nayami3 {
        display: block;
        width: 59%;
        margin: 0 auto;
        margin-top: 7%;
    }

    .nayami_bg {
        position: relative;
        width: 100%;
        height: 770px;
    }

    .nayami_bg_img {
        position: absolute;
        display: block;
        width: 450px;
        /* height: 770px; */
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        left: 50%;
        top: 43%;
    }

    .nayami4 {
        position: absolute;
        display: block;
        width: 300px;
        top: 125px;
        right: 4%;
    }

    .nayami5 {
        position: absolute;
        display: block;
        width: 300px;
        top: 280px;
        left: 4%;
    }

    .nayami6 {
        position: absolute;
        display: block;
        width: 300px;
        bottom: 199px;
        right: 4%;
    }

    .nayami7 {
        position: absolute;
        display: block;
        width: 230px;
        bottom: 10%;
        left: 26%;
    }

    .nayami8 {
        display: block;
        width: 75%;
        margin: 0 auto;
    }

    .nayami9_bg {
        position: relative;
        width: 100%;
        height: 530px;
    }

    .nayami9_1_img {
        position: absolute;
        display: block;
        width: 450px;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        top: 49%;
        left: 50%;
    }

    .nayami9_1 {
        position: absolute;
        display: block;
        width: 66%;
        bottom: 43%;
        left: 17%;
    }

    .nayami9_2 {
        position: absolute;
        display: block;
        width: 77%;
        bottom: 3%;
        left: 12%;
    }


    /* 悩み */




    /* 失敗 */

    .error {
        width: 100%;
        padding-bottom: 10%;
    }

    .error1 {
        display: block;
        width: 100%;
        margin: 3% auto;
    }

    .error2 {
        width: 6%;
        margin: 3% auto 1% auto
    }

    .error3 {
        display: block;
        width: 100%;
        margin: 0% auto 12%
    }

    .error4 {
        display: block;
        width: 100%;
        margin: 3% auto;
    }

    .error5 {
        width: 6%;
        margin: 3% auto 1% auto
    }

    .error6 {
        display: block;
        width: 100%;
        margin: 0% auto 12%
    }

    .error7 {
        display: block;
        width: 100%;
        margin: 3% auto;
    }

    .error8 {
        width: 6%;
        margin: 3% auto 1% auto
    }

    .error9 {
        display: block;
        width: 100%;
        margin: 0% auto 12%
    }

    .error10 {
        display: block;
        width: 82%;
        margin: 17% auto 1% auto;
    }

    .error11 {
        display: block;
        width: 82%;
        margin: 3% auto 1% auto;
    }

    .error12 {
        display: block;
        width: 73%;
        margin: 3% auto 1% auto;
    }


    /* 失敗 */



    /* 実績 */

    .achievement_bg1 {
        position: relative;
        width: 100%;
    }

    .achievement_bg1_img {
        margin-bottom: 0;
    }

    .achievement1 {
        position: absolute;
        display: block;
        width: 56%;
        margin: 0 auto;
        top: 3.2%;
        left: 23%;
    }

    .achievement_bg2 {
        position: absolute;
        display: block;
        width: 90%;
        margin: 0 auto;
        top: 12%;
        left: 5%;
    }

    .achievement2 {
        position: absolute;
        display: block;
        width: 75%;
        margin: 0 auto;
        top: 4.9%;
        left: 13%;
    }

    .achievement3 {
        position: absolute;
        display: block;
        width: 75%;
        margin: 0 auto;
        top: 17%;
        left: 13%;
    }

    .achievement4 {
        position: absolute;
        display: block;
        width: 75%;
        margin: 0 auto;
        top: 29.1%;
        left: 13%;
    }

    .achievement5 {
        position: absolute;
        display: block;
        width: 86%;
        margin: 0 auto;
        bottom: 4.9%;
        left: 7%;
    }

    .achievement6 {
        position: absolute;
        display: block;
        width: 88%;
        margin: 0 auto;
        bottom: 3.5%;
        left: 6%;
    }

    .achievement7 {
        position: relative;
        width: 100%;
    }

    .achievement7_img {
        width: 100%;
        display: block;
        margin: 0 auto;
    }

    .achievement8_button_gr {
        position: absolute;
        left: 10%;
        bottom: 11%;
        width: 79%;
    }

    /* 実績 */




    /* 5つの特徴 */

    .features_bg1 {
        position: relative;
        width: 100%;
    }

    .features_bg1_img {
        margin: 0;
    }

    .features1 {
        position: absolute;
        display: block;
        width: 56%;
        margin: 0 auto;
        top: 3.9%;
        left: 23%;
    }

    .features2 {
        position: absolute;
        display: block;
        width: 75%;
        margin: 0 auto;
        top: 14.5%;
        left: 13%;
    }

    .features3 {
        position: absolute;
        display: block;
        width: 75%;
        margin: 0 auto;
        top: 27.5%;
    }

    .features4 {
        position: absolute;
        display: block;
        width: 37%;
        margin: 0 auto;
        top: 30%;
        right: 5%;
    }

    .features5 {
        position: absolute;
        display: block;
        width: 66%;
        margin: 0 auto;
        top: 39%;
        right: 7%;
    }

    .features6 {
        position: absolute;
        display: block;
        width: 84%;
        margin: 0 auto;
        bottom: 38.7%;
        left: 8%;
    }

    .features7 {
        position: absolute;
        display: block;
        width: 70%;
        margin: 0 auto;
        bottom: 22%;
        right: 0%;
    }

    .features8 {
        position: absolute;
        display: block;
        width: 63%;
        margin: 0 auto;
        bottom: 27.6%;
        left: 6%;
    }

    .features9 {
        position: absolute;
        display: block;
        width: 69%;
        margin: 0 auto;
        bottom: 14.3%;
        left: 7.3%;
    }

    .features10 {
        position: absolute;
        display: block;
        width: 84%;
        margin: 0 auto;
        bottom: 2.2%;
        left: 8%;
    }



    .features_bg2 {
        position: relative;
        width: 100%;
    }

    .features_bg2_img {
        margin: 0;
    }

    .features11 {
        position: absolute;
        display: block;
        width: 82%;
        margin: 0 auto;
        top: 2%;
        left: 11%;
    }

    .features12 {
        position: absolute;
        display: block;
        width: 77%;
        margin: 0 auto;
        top: 10.5%;
    }

    .features13 {
        position: absolute;
        display: block;
        width: 84%;
        margin: 0 auto;
        top: 22.5%;
        left: 8%;
    }

    .features14 {
        position: absolute;
        display: block;
        width: 82%;
        margin: 0 auto;
        bottom: 56%;
        left: 10%;
    }

    .features15 {
        position: absolute;
        display: block;
        width: 75%;
        margin: 0 auto;
        bottom: 45.5%;
        right: 0%;
    }

    .features16 {
        position: absolute;
        display: block;
        width: 62%;
        margin: 0 auto;
        bottom: 30.3%;
        left: 19%;
    }

    .features17 {
        position: absolute;
        display: block;
        width: 62%;
        margin: 0 auto;
        bottom: 19.3%;
        left: 19%;
    }

    .features18 {
        position: absolute;
        display: block;
        width: 62%;
        margin: 0 auto;
        bottom: 2.6%;
        left: 19%;
    }


    .features_bg3 {
        position: relative;
        width: 100%;
    }

    .features_bg3_img {
        margin: 0;
    }

    .features19 {
        position: absolute;
        display: block;
        width: 86%;
        margin: 0 auto;
        top: 0.9%;
        left: 8.7%;
    }

    .features20 {
        position: absolute;
        display: block;
        width: 80%;
        margin: 0 auto;
        top: 10%;
    }

    .features21 {
        position: absolute;
        display: block;
        width: 75%;
        margin: 0 auto;
        top: 25.5%;
        left: 13%;
    }

    .features22 {
        position: absolute;
        display: block;
        width: 75%;
        margin: 0 auto;
        top: 34.5%;
        left: 13%;
    }

    .features23 {
        position: absolute;
        display: block;
        width: 69%;
        margin: 0 auto;
        bottom: 37%;
        left: 15%;
    }

    .features24 {
        position: absolute;
        display: block;
        width: 77%;
        margin: 0 auto;
        bottom: 32%;
        left: 11%;
    }

    .features25 {
        position: absolute;
        display: block;
        width: 75%;
        margin: 0 auto;
        bottom: 2%;
        left: 12%;
    }


    .features_bg4 {
        position: relative;
        width: 100%;
    }

    .features_bg4_img {
        margin: 0;
    }

    .features26 {
        position: absolute;
        display: block;
        width: 85%;
        margin: 0 auto;
        top: 1.7%;
        left: 7.4%;
    }

    .features27 {
        position: absolute;
        display: block;
        width: 75%;
        margin: 0 auto;
        top: 12.9%;
        left: 13%;
    }

    .features28 {
        z-index: 0;
        position: absolute;
        display: block;
        width: 76.5%;
        margin: 0 auto;
        top: 35.2%;
        left: 10%;
    }

    .features29 {
        position: absolute;
        display: block;
        width: 80%;
        margin: 0 auto;
        top: 32.9%;
        left: 11%;
    }

    .features30 {
        position: absolute;
        width: 100%;
        display: block;
        margin: 0 auto;
        bottom: 0;
        left: 0;
    }

    .features30_button_gr {
        position: absolute;
        left: 10%;
        bottom: 3.5%;
        width: 79%;
    }


    /* 5つの特徴 */




    /* お客様の声 */

    .slick {
        width: 89%;
        margin: 0 auto;
    }

    .voice1 {
        display: block;
        margin: 15% auto 4% auto;
        width: 35%;
    }

    .slider_img {
        width: 300px;
        margin: 0 10px;
    }

    .slick-dots li.slick-active button:before {
        color: #7DCCB8;
        font-size: 12px !important;
    }

    .slick-dots {
        bottom: -40px !important;
    }

    /* お客様の声 */



    /* 料金プラン */

    .price1 {
        display: block;
        width: 32%;
        margin: 110px auto 20px;
    }

    .price2 {
        display: block;
        margin: 0 auto;
    }


    .price3 {
        width: 27%;
        margin: 13% auto 2% auto;
    }

    .price4 {
        display: flex;
        overflow-x: scroll;
    }

    .price4::-webkit-scrollbar {
        display: none;
    }

    .price5 {
        display: block;
        width: 41%;
        margin: 0 auto;
        margin-bottom: 15%;
    }

    .price4 img {
        width: 200%;
        margin-bottom: 0;
    }


    /* 料金プラン */




    /* カウンセリング */

    .counseling_bg {
        position: relative;
        width: 100%;
    }

    .counseling1_img {
        margin: 0;
    }

    .counseling1 {
        position: absolute;
        display: block;
        width: 80%;
        margin: 0 auto;
        top: 1.6%;
        left: 11%;
    }

    .counseling2 {
        position: absolute;
        display: block;
        width: 67%;
        margin: 0 auto;
        top: 5.6%;
        left: 19%;
    }

    .counseling3 {
        position: absolute;
        display: block;
        width: 82.5%;
        margin: 0 auto;
        top: 12.2%;
        left: 9.3%;
    }

    .counseling4 {
        position: absolute;
        display: block;
        width: 80%;
        margin: 0 auto;
        top: 25.9%;
        left: 10%;
    }

    .counseling5 {
        position: absolute;
        width: 19%;
        display: block;
        margin: 0 auto;
        bottom: 27%;
        left: 41%;
    }

    .counseling6 {
        position: absolute;
        width: 86%;
        display: block;
        margin: 0 auto;
        bottom: 8.5%;
        left: 10%;
    }

    .counseling7_button_wh {
        position: absolute;
        left: 10.3%;
        bottom: 2.2%;
        width: 79%;
    }


    /* カウンセリング */




    /* よくある質問 */

    .qa {
        display: block;
        margin: 15% auto 12% auto;
        width: 80%;
    }

    .qa_bt {
        width: 52%;
        height: auto;
        display: block;
        margin: 15px auto;
        margin-bottom: 12%;
    }

    /* よくある質問 */




    /* フッター */


    footer {
        padding: 20px 20px 20px 20px;
        background-color: #f3f3f3;
    }

    .res {
        display: flex;
        justify-content: center;
    }

    .logo_size_sp2 {
        width: 100px;
        margin: 9px 0px 10px 0;
    }

    .res_w {
        display: block;
        margin: 17px;
        font-size: 13px;
        color: black;
    }

    .copyright {
        width: 100%;
        height: 50px;
        font-size: 11px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .copyright p {
        display: inline-block;
        color: #080808;
        font-size: 12px;
    }


    /* フッター */


    /* ------------------------------ */


    /* 購入ページ */


    .buy {
        position: relative;
    }

    .buy .buy_all {
        width: 100%;
        height: auto;
        display: block;
        margin: 0px 0;
    }

    .gtm_link_fv {
        width: 70%;
        margin: 30px auto;
        padding-bottom: 20px;
    }

    /* 購入ページ */


    /* ------------------------------ */


    /* Q&A */


    #qa_1 {
        width: 100%;
        height: 65px;
    }

    #qa_2 {
        width: 100%;
        height: 65px;
    }

    #qa_3 {
        width: 100%;
        height: 65px;
    }

    #qa_4 {
        width: 100%;
        height: 65px;
    }

    #qa_5 {
        width: 100%;
        height: 65px;
    }

    #qa_6 {
        width: 100%;
        height: 65px;
    }

    #qa_7 {
        width: 100%;
        height: 65px;
    }

    #qa_8 {
        width: 100%;
        height: 65px;
    }

    #qa_9 {
        width: 100%;
        height: 65px;
    }

    #qa_10 {
        width: 100%;
        height: 65px;
    }

    #qa_11 {
        width: 100%;
        height: 65px;
    }

    .qa_main {
        margin: 0 auto;
        padding-top: 100px;
        padding-bottom: 65px;
    }

    .QA-wrapper {
        padding-top: 20px;
    }

    .QA {
        width: 100%;
        max-width: 1000px;
        padding-bottom: 30px;
        text-align: left;
        z-index: 999;
        padding: 0px 20px 0px 20px;
    }

    .QA h2 {
        font-size: 20px;
        font-weight: bold;
        border-left: 7px solid black;
        padding-top: 7px;
        padding-bottom: 7px;
        padding-left: 10px;
        margin-bottom: 33px;
    }

    .qa_tx {
        padding-bottom: 32px;
    }

    .QA-header {
        margin-top: 10px;
    }

    /* .QA-section {
padding: 10px 0 10px 0;
} */

    .QA-sublist {
        list-style: decimal inside;
        padding: 10px 20px;
    }

    .QA-update {
        text-align: right;
    }

    .QA-section-title {
        font-size: 18px;
        font-weight: bold;
        padding-bottom: 4px;
        margin-bottom: 40px;
        border-bottom: 2px solid #000;
    }

    .QA-section-subtitle {
        font-size: 14px;
        font-weight: bold;
    }

    .qa_back {
        text-align: center;
        display: block;
        padding-top: 33px;
        color: black;
    }

    /* Q&A */



    /* 新規登録 */


    #username {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #first_name {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #last_name {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #billing_address_1 {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #billing_address_2 {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #billing_city {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #billing_state {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #billing_postcode {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #billing_country {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #billing_phone {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #user_email {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #username {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #username {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    #username {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }


    /* 新規登録 */





    /* 受講生ログインページ */

    .student {
        max-width: 1100px;
        width: 100%;
        margin: 0 auto;
    }

    .fv_student {
        width: 100%;
        height: auto;
        margin-bottom: 35px;
    }

    .login {
        display: none;
        margin: 0 auto;
        text-align: center;
        padding: 70px 0;
        font-size: 14px;
        background-color: #fbfbfb;
        margin: 0px auto 100px;
        width: 390px;
    }

    .login ul li a {
        display: block;
        margin: 30px auto;
    }

    .wpmem_login {
        display: block;
        margin: 0 auto;
        text-align: center;
        padding: 50px;
    }

    #wpmem_reg {
        padding-top: 100px;
    }

    legend {
        font-size: 0;
    }

    label {
        display: block;
        margin: 28px auto 10px;
        width: 245px;
        text-align: left;
    }

    .username {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    .username:focus {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    .username:valid {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    .password {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    .password:focus {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    .password:valid {
        width: 245px;
        height: 33px;
        background-color: #FFF !important;
        border: 1px solid;
        border-radius: 3px;
    }

    .button_div {
        display: flex;
        width: 245px;
        flex-direction: row;
        margin: 0px auto;
        flex-wrap: wrap;
        align-items: center;
    }

    .button_div label {
        display: block;
        margin: 20px auto 10px;
        width: 200px;
        text-align: left;
    }

    #rememberme {
        margin: 11px auto 0;
    }

    .buttons {
        width: 245px;
        height: 39px;
        margin: 30px auto;
        background-color: #75c2b2;
        border: solid 0px;
        border-radius: 3px;
        font-weight: bold;
        color: white;
        font-size: 13px;
    }

    .link-text-forgot {
        display: block;
        margin: 74px auto 10px;
    }

    .link-text {
        display: block;
        margin: 10px auto;
        font-size: 13px;
    }

    /* 受講生ログインページ */



    /* 受講者専用ページ */

    .student_nav {
        display: flex;
        margin: 0 auto;
        flex-wrap: wrap;
        justify-content: center;
        max-width: 400px;
    }

    .student_bt {
        width: 160px;
        margin: 15px 10px;
    }

    .student_content {
        display: flex;
        margin: 25px auto 70px auto;
        flex-wrap: wrap;
        justify-content: center;
        max-width: 400px;
    }

    .student_content_bt {
        max-width: 347px;
        margin-top: 25px;
    }


    /* 受講者専用ページ 勉強コンテンツ */


    .student_study_content {
        display: block;
        margin: 30px auto;
        padding: 0 15px;
    }

    .student_study_content2 {
        display: block;
        margin: 3%;
    }

    .student_study_content2 p {
        margin-bottom: 5px;
    }

    .comment {
        line-height: 25px;
    }

    .title {
        position: relative;
        overflow: hidden;
        padding: 19px 27px 18px 127px;
        border: 2px solid #000;
        font-style: italic;
        display: inline-block;
        margin: 33px 0;
        transform: scale(0.8);
        top: 0;
        left: -30px;
        line-height: 20px;
    }

    .title::before {
        position: absolute;
        top: -150%;
        left: -100px;
        width: 200px;
        height: 300%;
        content: '';
        -webkit-transform: rotate(25deg);
        transform: rotate(25deg);
        background: #000;
    }

    .title p {
        margin-bottom: 5px;
    }

    .title span {
        font-size: 31px;
        position: absolute;
        z-index: 1;
        top: 18px;
        left: 29px;
        display: block;
        color: #fff;
    }

    .banner {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        flex-wrap: wrap;
        width: 100%;
        height: auto;
        margin: 0 auto;
    }

    .student_study_content2 .banner_title {
        position: relative;
        display: inline-block;
        margin-top: 95px;
        margin-bottom: 4em;
        font-size: 22px;
        transform: translateX(-50%);
        left: 50%;
        font-weight: 600;
    }

    .banner_title:before {
        content: '';
        position: absolute;
        bottom: -15px;
        display: inline-block;
        width: 60px;
        height: 3px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        background-color: black;
        border-radius: 2px;
    }

    .banner_list {
        width: 100%;
        min-width: 420px;
    }

    .banner_t {
        margin-top: 10px;
    }

    .text_dl {
        display: table;
        color: black;
        font-style: italic;
        margin: 20px 0;
        margin-bottom: 43px;
    }

    .text_dl span {
        border-bottom: 1px solid;
    }

    .student_move {
        margin-bottom: 85px;
        height: auto;
    }

    .responsive {
        width: 100%;
        /* aspect-ratio: 16/9; */
    }

    .responsive2 {
        width: 100%;
        margin-bottom: 20px;
    }

    .responsive3 {
        width: 100%;
        margin-bottom: 20px;
    }

    .video16x9 {
        width: 100%;
        aspect-ratio: 16 / 9;
    }

    .studentsonly_back {
        display: block;
        color: black;
        font-style: italic;
        margin-bottom: 43px;
        text-align: center;
        width: 112px;
        margin: 0 auto;
        font-size: 31px;
        position: absolute;
        z-index: 1;
        top: 18px;
        left: 29px;
        display: block;
        color: #fff;
    }

    .studentsonly_back span {
        display: inline-block;
        border-bottom: solid 1px;
    }


    /* 受講者専用ページ 勉強コンテンツ */


    /* 受講者専用ページ */


}
