h2 {
    font-size: 3.4rem;
}

@media only screen and (max-width: 640px) {
    h2 {
        font-size: 2.4rem;
    }
}

h3 {
    font-size: 2.4rem;
    margin-bottom: 2rem;
}

@media only screen and (max-width: 640px) {
    h3 {
        font-size: 1.8rem;
        margin-bottom: 2rem;
    }
}

.txt-wrapper {
    border: 1px solid #ff0000;
    padding: 2rem;
    margin-top: 2rem;
}

@media only screen and (max-width: 640px) {
    .txt-wrapper {
        padding: 1rem;
    }
}

.link-agreement {
    margin-top: 15px;
}

.icon img {
    width: 1.8rem;
    margin-left: 0.4rem;
}

.checkbox-wrapper {
    border: 1px solid #eeeeee;
    border-radius: 0.4rem;
    padding: 0.4rem;
    margin-top: 15px;
}
.checkbox-wrapper > label {
    cursor: pointer;
    width: 100%;
    font-weight: normal;
}
.checkbox-wrapper input {
    padding: 0.4rem;
    margin: 1rem;
}

.btn-agree {
    width: 340px;
    margin: 30px auto 0;
    position: relative;
}
.btn-agree::before {
    content: "";
    position: absolute;
    right: 10px;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 15px;
    height: 13px;
    background-image: url(/assets/img/icon_blank_01.gif);
    background-size: contain;
}
.btn-agree input {
    width: 100%;
    padding: 10px;
    border: none;
    border-radius: 0.4rem;
    margin-top: 0;
    overflow-wrap: break-word;
    white-space: pre-wrap;
}
.btn-agree input[type="button"] {
    border: 1px solid #eb7000;
    color: #eb7000;
    background-color: #fff;
}

.btn-agree input[type="button"]:disabled {
    border: 1px solid #b5b5b5;
    color: #535252;
    background-color: #b5b5b5;
}

@media only screen and (max-width: 640px) {
    .btn-agree {
        width: 100%;
        margin-top: 15px;
    }
    .btn-agree input[type="button"] {
        margin-top: 0;
    }
}

.btn-disagree {
    border: 1px solid #535252;
    border-radius: 0.4rem;
    margin: 15px auto 0;
    width: 340px;
}

.btn-disagree a {
    display: block;
    color: #535252;
    text-decoration: none;
    margin: 0 auto;
    width: 100%;
    padding: 10px;
}
@media only screen and (max-width: 640px) {
    .btn-disagree {
        width: 100%;
        margin-top: 15px;
    }
}
@media only screen and (max-width: 640px) {
    .c-ground-01 {
        padding-bottom: 3rem;
    }
}

.sty-checkbox-content > label {
    width: 100%;
    cursor: pointer;
    font-weight: normal;
}
@media only screen and (max-width: 640px) {
    .sty-height-lim {
        padding: 10px;
        background-color: #eee;
        max-height: 350px;
        overflow-y: auto;
        margin-top: 15px;
    }
    .sty-height-lim p{
        margin-top: 0;
    }
}

#status_01,#status_02,#agree_state,#disagree_01 {
    display: none;
}