@charset "UTF-8";

.lg-main {
    padding-top: 0 !important;
}
.h1-text {
    margin-top: 80px;
}
.h1-text a:hover {
    text-decoration: none;
}
.h2-margin {
    margin: 0 0 20px;
    font-size: 1.38rem;
}

.center {
    text-align: center;
}
.top-margin {
    font-size: 1rem;
    margin: 5px auto;
}
.p-margin {
    margin: 20px auto 0;
    width: 87.5%;
    max-width: 400px;
}
.p-lgmargin {
    margin: 40px auto 20px;
}

.width-margin {
    margin: 0 auto;
    width: 87.5%;
    max-width: 400px;
}

.header-logo h1 span {
    display: block;
    font-size: 0.6rem;
    padding-bottom: 2px;
}
#culumo-footer .footer-inner {
    padding: 80px 0;
}

input.textarea {
    position: relative;
    font-size: 1rem;
    border: solid 1px #bdbdbd;
    margin: 5px 0 10px;
    padding: unset;
    text-indent: 5px;
    width: 100%;
    height: 54px;
    max-width: 400px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -webkit-appearance: none;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    transform: none;
    margin-left: unset !important;
    margin-right: unset !important;
}
.textarea::placeholder {
    color: #bdbdbd;
}
p.error.alert {
    font-size: 1rem;
}

/*error*/

.text-error {
    position: relative;
    font-size: 1rem;
    background: #ffeaea;
    border: solid 1px #fc5454;
    margin: 0 0 10px;
    text-indent: 5px;
    width: 100%;
    height: 48px;
    max-width: 400px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -webkit-appearance: none;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.text-error::placeholder {
    color: #bdbdbd;
}

.error-font {
    color: #fc5454;
}
/*error*/

/* css checkbox */

input[type="checkbox"] {
    margin: 0;
    border: 1px solid #bdbdbd;
    -webkit-appearance: none;
    position: relative;
    -webkit-border-radius: 4px;
    border-radius: 4px;
    width: 15px;
    height: 15px;
    background: #fff;
    outline: none;
}

input[type="checkbox"]:checked {
    background: #666;
    border: 1px solid #666;
}

input[type="checkbox"]:checked:before {
    position: absolute;
    left: -2px;
    top: 10px;
    display: block;
    content: "";
    width: 8px;
    height: 2px;
    background: #ffffff;
    -webkit-transform: rotate(45deg);
    -webkit-transform-origin: right center;
}
input[type="checkbox"]:checked:after {
    display: block;
    position: absolute;
    left: 5px;
    top: 10px;
    content: "";
    width: 12px;
    height: 2px;
    background: #ffffff;
    -webkit-transform: rotate(-45deg);
    -webkit-transform-origin: left center;
}

/* css checkbox */
a.btn {
    font-size: 1rem;
    padding: 0.65rem 0 0.9rem;
    width: 87.5%;
    max-width: 400px;
    margin: 20px auto;
}
.btn-flex {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}

a.btn.signin {
    font-size: 1rem;
    padding: 0.65rem 0 0.9rem;
    width: 87.5%;
    max-width: 400px;
    margin: 0 auto;
}

a.btn.login {
    font-size: 1rem;
    text-align: center;
    font-weight: bolder;
    padding: 0.65rem 0 0.9rem;
    width: 87.5%;
    max-width: 400px;
    margin: 0 auto;
    box-shadow: 0px 4px 0px 0px #b6bdc4;
    background: #fdde00;
}

a.btn.login:hover {
    top: 2px;
    box-shadow: 0px 2px 0px 0px #b6bdc4;
}

a.btn.signin .ballon {
    width: 30px;
    height: 30px;
}

a.btn.signin_new .ballon {
    width: 30px;
    height: 30px;
    //background-color : #ffffff;
}

a.btn.passreset {
    /*gaipara
    background : #01c160;
    -webkit-box-shadow: 0px 4px 0px 0px #b6bdc4;
    box-shadow: 0px 4px 0px 0px #b6bdc4;
    color : #ffffff;
    */
    font-weight: bold;
    /* 新culumo */
    background: #fdde00;
    -webkit-box-shadow: 0px 4px 0px 0px #b59f01;
    box-shadow: 0px 4px 0px 0px #b59f01;
    color: #000;
    /*--------------------------------------------*/
}
a.btn.passreset:hover {
    top: 2px;
    -webkit-box-shadow: 0px 2px 0px 0px #b59f01;
    box-shadow: 0px 2px 0px 0px #b59f01;
}
a.btn.fb {
    text-align: left;
    color: white;
    background: #395283;
    -webkit-box-shadow: 0px 4px 0px 0px #313b50;
    box-shadow: 0px 4px 0px 0px #313b50;
    font-weight: bold;
}
a.btn.fb:hover {
    top: 2px;
    -webkit-box-shadow: 0px 2px 0px 0px #313b50;
    box-shadow: 0px 2px 0px 0px #313b50;
}
a.btn.gp {
    text-align: left;
    color: white;
    background: #da4f46;
    -webkit-box-shadow: 0px 4px 0px 0px #9a3b35;
    box-shadow: 0px 4px 0px 0px #9a3b35;
    font-weight: bold;
}
a.btn.gp:hover {
    top: 2px;
    -webkit-box-shadow: 0px 2px 0px 0px #9a3b35;
    box-shadow: 0px 2px 0px 0px #9a3b35;
}

a.btn.signin_new {
    /* 20191114 変更*/
    //background: #cdd3d9;
    background: #00d168;
    color: #ffffff; // 追加
    -webkit-box-shadow: 0px 4px 0px 0px #b6bdc4;
    box-shadow: 0px 4px 0px 0px #b6bdc4;
    font-weight: bold;
}
a.btn.signin_new:hover {
    top: 2px;
    -webkit-box-shadow: 0px 2px 0px 0px #b6bdc4;
    box-shadow: 0px 2px 0px 0px #b6bdc4;
}

.icon {
    font-size: 1.5rem;
    margin-left: 10%;
    margin-right: 20%;
}

/*side-bar*/
.lines-on-sides {
    display: table;
    text-align: center;
    white-space: nowrap;
}

.p-indent {
    padding-left: 1em;
    text-indent: -1em;
}

.lines-on-sides:after,
.lines-on-sides:before {
    content: "";
    display: table-cell;
    width: 50%;
    background: -webkit-linear-gradient(transparent 50%, currentColor 50%, currentColor -webkit-calc(50% + 1px), transparent -webkit-calc(50% + 1px));
    background: -webkit-gradient(
        linear,
        left top,
        left bottom,
        from(transparent),
        color-stop(50%, currentColor),
        color-stop(currentColor calc(50% + 1px)),
        to(transparent calc(50% + 1px))
    );
    background: linear-gradient(transparent 50%, currentColor 50%, currentColor calc(50% + 1px), transparent calc(50% + 1px));
    -webkit-background-clip: padding;
    background-clip: padding;
    color: #dde1e6;
}
.lines-on-sides:after {
    border-left: 0.5rem solid transparent;
}
.lines-on-sides:before {
    border-right: 0.5rem solid transparent;
}
.sp_hr {
    border-top: 1px solid #dde1e6;
}
/*side-bar*/

@media screen and (min-width: 801px) {
    body {
        background: #f5f5f5;
    }
    section {
        width: 400px;
        margin: 30px auto 0;
        background: white;
    }
    .sp_hr {
        display: none;
    }
    .section2 {
        width: 400px;
        margin: 1% auto;
        background: white;
        padding: 45px 0;
    }
    #culumo-footer .footer-inner {
        padding: 40px 0 80px;
    }
    .p-lgmargin {
        text-align: center;
        margin: 40px auto 20px;
    }
}

/* 新culumo */
.header-logo img {
    width: 115px;
}
.agree_check {
    position: relative;
}
.agree_check p {
    font-size: 0.9rem;
}
.agree_check span:nth-of-type(2) {
    padding-left: 20px;
    display: inline-block;
}
.agree_check a {
    font-size: 0.9rem;
}
.agree_check label {
    position: absolute;
    left: 20px;
}
.agree_check .left {
    margin: 15px 0 40px 0;
}
.agree_check p.error.validation.alert {
    position: relative;
    top: 25px;
}

@media screen and (max-width: 480px) {
    .agree_check label {
        width: 95%;
    }
}
@media screen and (max-width: 401px) {
    .agree_check label {
        width: 93%;
    }
}
