/*
Theme Name: Gate to Japan
Requires at least: 3.2
Tested up to: 6.7
Requires PHP: 5.2.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: Gate to Japan
*/
.c-form-search__btn:hover span{
    opacity: 0.6;
}
.c-form-search__btn span{
    transition: all 0.5s;
}
.en{
    letter-spacing: normal;
}
.c-plan__title{line-height: 1.25;font-weight: bold;}
.c-plan__package{
    margin-left: auto;
    align-self: flex-end;
    padding-bottom: 5px;
    padding-top: 6px;
    border-radius: 19px;
}
.c-plan__package.osusume{
    background-color: #9500FF;
}
.c-plan{
    display: flex;
    flex-wrap: wrap;
}
.c-plan__title{
    width: 100%;
}
.c-plan__price{
    letter-spacing: normal;
}
.c-plan__price span{
    font-weight: normal;
    font-size: 50%;
}
.c-plan__btn{
    width: 100%;
}
.c-plan__infor li{
    line-height: 1.25;
    letter-spacing: normal;
}
.c-plan{
    padding-top: 24px;
    padding-bottom: 24px;
}
.w-100{
    width: 100%;
}
 .p-plan__flex-right{
    width: 45%;
}
.p-plan__flex a.c-button-gradient{
    max-width: 400px;
    display: block;
    margin-top: 40px;
}
.p-plan__flex-right p.en{
    letter-spacing: normal;
}
.wpcf7-acceptance a{
    text-decoration: underline;
}
.wpcf7-acceptance a,
.wpcf7-acceptance span{
    color: #61646B;
}

.wpcf7-acceptance label{
    cursor: pointer;
}
.wpcf7-acceptance input[type="checkbox"]{
    width: 20px;
    height: 20px;
    margin-right: 10px;
    position: relative;
    cursor: pointer;
    top:3px
}
.p-contact__form .wpcf7 .form_group .wpcf7-form-control.wpcf7-acceptance{
    background-color: #E7E8EC;
    height: fit-content;
}
.p-contact__form .wpcf7 .form_group > label span{
    letter-spacing: normal;
}
.p-contact__form .wpcf7 .form_group > label::before{
    content: '任意・OPTIONAL';
    font-weight: 400;
}
.p-contact__form .wpcf7 .form_group > label.required::before{
    content: '必須・REQUIRED';
    font-weight: 400;
}
.p-contact__form-title span{
    font-size: 75%;
}
.p-contact__form-desc{
    margin-bottom: 40px;
}
.p-contact__form .wpcf7 .form_group > label{
    flex-wrap: wrap;
}
.p-contact__form .wpcf7 .form_group .wpcf7-form-control{
    color: black;
}
.c-post-company__cat span{
    text-align: center;
    font-weight: normal;
    line-height: 1.25;
    font-size: 14px;
    padding-top: 8px;
    padding-bottom: 8px;
    border-radius: 10px;
}
.l-footer__flex{
    flex-wrap: wrap;
}
.l-footer__flex .l-footer__socials{
    width: 100%;
    justify-content: flex-end;
}
.p-single__anchor ul li a{
    letter-spacing: normal;
    text-align: center;
}
.p-single__anchor ul li a:hover{
    font-weight: normal;
}
.p-single__anchor.fixed ul li a{
    padding-top: 15px;
    padding-bottom: 15px;
}
.p-single__review-heading-en{
    letter-spacing: normal;
}
.p-single__review-date span:first-child::before{
    content: "";
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: #B1B5C3;
    display: inline-block;
    margin-left: 5px;
    margin-right: 5px;
    vertical-align: middle;
}
@media(min-width: 767px) {
    .l-footer__menu-link{
        word-break: keep-all;
    }
    .l-footer__menu{
        flex-wrap: nowrap;
    }
    .l-footer__infor p{
        display: flex;
    }
    span.infor_left{
        display: block;
        width: 95px;
        flex-shrink: 0;
    }
}
@media(max-width: 767px) {
   .p-contact__form .wpcf7 .form_group > label{
    gap: 2px;
   }
   .p-contact__form .wpcf7 .form_group > label::before{
    margin-right: 50%;
   }
   .p-contact__form .wpcf7 .form_group + .form_group{
    margin-top: 30px;
   }
   .p-contact__form .wpcf7 .form_group > label::before{
    margin-right: 47%;
   }
   .c-banner{
    min-height: 135px;
   }
   .c-banner__title-ja{
    font-size: 3rem;
    margin-top: 0;
   }
   .c-banner__title-en{
    font-size: 2.2rem;
   }
}
.p-company-discovered__right{
    flex-shrink: 0;
}
@media (max-width: 1024px) {
    .l-header__link span:nth-child(2),.l-header__item.--btn span:nth-child(2){
        top: normal;
        left: normal;
        position: static;
        transform: none;
        display: block;
    }
    body.is-open .c-banner{
        margin-top: 80px;
    }
}
.plan-note{
    padding-top: 20px;
}