@charset "UTF-8";
/********************************************/
/*layout Base */
/********************************************/
/***************************/
/**Color */
/***************************/
.co_green {
    color: #3C9A00;
    font-size: 1em;
}

.co_orange {
    color: #F27900;
    font-size: 1em;
}

/***************************/
/**bg */
/***************************/
.bg_cream {
    background: #FFFAEB;
}

/********************************************/
/* ttl */
/********************************************/
/********************************************/
/* btn */
/********************************************/
.register_btn {
    width: 100%;
    margin: auto;
    text-align: center;
    font-size: 4.9rem;
}

@media print, screen and (min-width: 769px) {
    .register_btn {
        max-width: 723px;
    }
}

.register_btn p {
    position: relative;
    display: inline-block;
    margin-bottom: 0.2em;
    padding: 0 0.6em;
    font-size: 0.73em;
    font-weight: bold;
}

.register_btn p:before, .register_btn p:after {
    position: absolute;
    bottom: 0.1em;
    content: "";
    width: 3px;
    height: 25px;
    background: #000;
}

.register_btn p:before {
    left: 0;
    transform: rotate(-34deg);
}

.register_btn p:after {
    right: 0;
    transform: rotate(34deg);
}

.register_btn a {
    position: relative;
    display: block;
    padding: 0.3em 1.3em 0.3em 3em;
    background: #3C9A00;
    border: solid 5px #3C9A00;
    border-radius: 50px;
    color: #fff;
    font-size: 1em;
    font-weight: bold;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.register_btn a:before {
    position: absolute;
    top: 50%;
    left: -20px;
    content: "";
    width: 165px;
    height: 147px;
    background: url(../img/btn-free.svg) no-repeat left center/contain;
    pointer-events: none;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.register_btn a:hover {
    background-color: #fff;
    color: #3C9A00;
}

/********************************************/
/* 追加 */
/********************************************/
.object_fit {
    position: relative;
}

.object_fit:after {
    content: "";
    display: block;
    padding-top: 100%;
}

.object_fit img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    /*IE対策*/
}

/*=============================================*/
/*media query    SmartPhone */
/*=============================================*/
@media screen and (max-width: 768px) {
    /********************************************/
    /* ttl */
    /********************************************/
    /********************************************/
    /* btn */
    /********************************************/
    .register_btn {
        margin: 0 calc(50% - 50vw);
        width: 100vw;
        font-size: 3.3rem;
    }
    .register_btn p:before, .register_btn p:after {
        content: none;
    }
    .register_btn a {
        padding: 0.2em 0.5em;
        border: none;
        border-radius: 0;
    }
    .register_btn a small {
        display: block;
        font-size: 0.67em;
    }
    .register_btn a small span {
        display: inline-block;
        margin-right: 0.2em;
        padding: 0.2em 0.6em;
        background: #F2BA00;
        border-radius: 10px;
        color: #fff;
        font-size: 1em;
    }
    .register_btn a:before {
        content: none;
    }
}
