@charset "UTF-8";
/* --------------------------------------------------
 Block
-------------------------------------------------- */

/* Common Block --------------- */

.comm-blc {
    max-width: 1000px;
    margin: 0 auto;
    position: relative;
    box-sizing: content-box;
}

/* member-blc --------------- */

.member-blc {
    background: #212121;
    padding: 10px;
}

.member-blc .border-blc {
    background: radial-gradient(100% 100% at 50% 0,#000000d8 0,#000000ab 100%);
    -webkit-backdrop-filter: blur(10px);
    backdrop-filter: blur(10px);
    background-origin: border-box;
    background-clip: content-box,border-box;
    width: 100%;
    max-width: 490px;
    border-radius: 10px;
    padding: 2px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    box-shadow: rgb(255 255 255 / 18%) 0px 0px 4px 2px inset;
    box-sizing: border-box;
}

.member-blc .border-blc .inner {
    padding: 4%;
}

.member-blc .ttl {
    color: #fff;
    font-size: 180%;
    text-align: center;
    margin-bottom: 10px;
}

.member-blc .ttl .txt01 {
    display: inline-block;
}

.member-blc .register-img {
    width: 100%;
    max-width: 50%;
    margin: 0 auto 15px;
    box-sizing: border-box;
}

.member-blc .form-blc {
    max-width: 400px;
    margin: 0 auto;
}

.member-blc .form-blc .row-blc {
    margin-bottom: 4%;
}

.member-blc .form-blc .txt-label {
    color: #fff;
}

.member-blc .form-blc .fill-item {
    display: flex;
}

.member-blc .form-blc .fill-item .icn {
    background-color: rgba(0, 0, 0, 0.4);
    color: #fff;
    width: 44px;
    text-align: center;
    border: 1px solid #ffffff3d;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    padding: 4px 7px;
    box-sizing: border-box;
}

.member-blc .form-blc .fill-item input[type=text],
.member-blc .form-blc .fill-item input[type=password],
.member-blc .form-blc .fill-item select {
    background-color: rgba(0, 0, 0, 0.4);
    color: #fff;
    width: calc(100% - 44px);
    border: 1px solid #ffffff3d;
    border-left: none;
    border-radius: 10px;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
    padding: 4px 7px;
    box-sizing: border-box;
}

.member-blc .form-blc .fill-item input[type=text]::placeholder,
.member-blc .form-blc .fill-item input[type=password]::placeholder,
.member-blc .form-blc .fill-item select::placeholder {
    color: #ffffffaf;
}

.member-blc .form-blc .btn-login,
.member-blc .form-blc .btn-style01 {
    text-align: center;
    margin-top: 30px;
}

.member-blc .form-blc .btn-login .btn-elem,
.member-blc .form-blc .btn-style01 .btn-elem {
    font-size: 120%;
}

.member-blc .form-blc .btn-login .btn-elem .txt01,
.member-blc .form-blc .btn-style01 .btn-elem .txt01 {
    padding: 8px 30px;
}

.member-blc .form-blc .txt-bottom {
    color: #fff;
    text-align: center;
    margin-top: 10px;
}

.member-blc .form-blc .txt-bottom .btn-txt {
    color: #ffd600;
    font-weight: 700;
    text-decoration: none;
}

.member-blc .form-blc .txt-bottom .btn-txt:hover {
    text-decoration: underline;
}

.member-blc .form-blc .bank-list {
    background-color: rgba(0,0,0,0.2);
    border-radius: 4px;
    padding: 2%;
    display: flex;
    flex-wrap: wrap;
}

.member-blc .form-blc .bank-list .item {
    width: 15%;
    text-align: center;
    cursor: pointer;
    margin: 0 2% 2% 0;
}

.member-blc .form-blc .bank-list .item:nth-of-type(6n+6) {
    margin-right: 0;
}

.member-blc .form-blc .bank-list .item .img {
    width: 100%;
    padding: 4px;
    border-radius: 15px;
    border: solid 1px #ccc;
    opacity: 0.7;
    box-sizing: border-box;
}

.member-blc .form-blc .bank-list .item:hover .img,
.member-blc .form-blc .bank-list .item .img.active {
    opacity: 1;
}

.member-blc .form-blc .invalid-feedback {
    display: block;
    color: #ff6574;
    padding: 5px 0px;
    margin-top: 0.25rem;
}

.member-blc .step-status {
    width: 50%;
    display: flex;
    justify-content: center;
    margin: 10px auto;
}

.member-blc .step-status .item {
    background: #5555559f;;
    width: calc(25% - 3px);
    height: 9px;
    margin-right: 1px;
}

.member-blc .step-status .item.active {
    background: linear-gradient(180deg, #ffe775 20%, #cead48 75%);
    box-shadow: #f5f1c2 0px 0px 4px 2px inset;
}

.member-blc .step-status .item:first-child {
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
}

.member-blc .step-status .item:last-child {
    border-top-right-radius: 5px;
    border-bottom-right-radius: 5px;
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .member-blc .ttl {
        font-size: 140%;
    }
}

@media screen and (max-width: 480px) {
    .member-blc .ttl {
        font-size: 115%;
    }
}

/* form-style01 --------------- */

.form-style01 {
    max-width: 585px;
    padding: 4%;
    margin: 0 auto;
}

.form-style01.non-max-width {
    max-width: none;
    padding: 0;
}

.form-style01 .border-blc {
    position: relative;
    z-index: 1;
}

.form-style01 .border-blc .inner {
    padding: 10px 12px 10px;
}

/* form-control --------------- */

.form-control {
    box-sizing: border-box;
}

/* modal-style01 --------------- */

.modal-style01 .modal-content {
    background-color: transparent;
    border-color: transparent;
}

/* form-style01 in modal-style01 --------------- */

.modal-style01 .form-style01 {
    padding: 2px;
    margin-left: 0;
    margin-right: 0;
    overflow: hidden;
}

.modal-style01 .form-style01 .btn-close {
    background:transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;
    color: #fff;
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 2;
    cursor: pointer;
}

.modal-style01 .form-style01 .form-check .form-check-input {
   margin-top: 7px;
}

.modal-style01 .form-style01 .form-blc .btn-style01 {
    text-align: center;
    margin-top: 30px;
}

.modal-style01 .form-style01 .form-blc .btn-style01 .btn-elem {
    font-size: 120%;
    padding-left: 30px;
    padding-right: 30px;
}

.modal-style01 .form-style01 .form-blc .fill-item .btn-style01 {
    margin-top: 0;
}

/* card-style01 --------------- */

.card.card-style01 {
    background: linear-gradient(180deg, #081944 0%, #060606 100%);
    color: #fff;
    border: none;
    box-shadow: 2px 2px 18px 0px rgba(0,0,0,0.47);
}

.card.card-style01 .card-header {
    background: linear-gradient(180deg, #3E56FF 0%, #372cd5 70%);
    color: #fff;
    font-size: 120%;
}

/* --------------------------------------------------
 title
-------------------------------------------------- */

/* ttl-style01 --------------- */

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

}

/* --------------------------------------------------
 Table
-------------------------------------------------- */

/* Common Table --------------- */

.tbl-comm {
    border-top: 1px dotted #fff;
}

.tbl-comm th, .tbl-comm td {
    padding: 7px 15px;
    border-bottom: 1px dotted #ccc;
    box-sizing: border-box;
}

.tbl-comm th {
    background-color: #fff;
    width: 20%;
}

.tbl-comm th[align="center"], .tbl-comm td[align="center"] {
    text-align: center;
}

.tbl-comm th[align="right"], .tbl-comm td[align="right"] {
    text-align: right;
}

.tbl-respon {
    overflow-x: auto;
}

.tbl-respon .tbl-comm {
    min-width: 600px;
}

.note-tbl {
    color: red;
    text-align: center;
    margin: 2% 0;
    display: none;
}

/* Form Table --------------- */

.tbl-form th {
    background-color: #fff;
    width: 25%;
    padding: 2%;
    text-align: left;
}

.tbl-form td {
    padding: 2%;
    text-align: left;
}

.tbl-form th, .tbl-form td {
    border-bottom: 1px dotted #ccc;
}

/* tblRespon --------------- */

.tbl-respon {
    overflow-x: auto;
}

.note-tbl-respon {
    font-size: 80%;
    color: red;
    margin: 2% 0;
    text-align: center;
    display: none;
}

@media screen and (max-width: 767px) {
    /* Common Table --------------- */
    .tbl-comm th, .tbl-comm td {
        font-size: 90%;
    }
    .tbl-comm th {
        width: 30%;
    }
    .tbl-comm.single-row th, .tbl-form.single-row th {
        display: block;
        font-weight: bold;
        padding-bottom: 0;
    }
    .tbl-comm.single-row td, .tbl-form.single-row td {
        display: block;
    }
    .note-tbl {
        display: block;
    }
    /* Form Table --------------- */
    .tbl-form th {
        width: auto;
    }
    /* tblRespon --------------- */
    .note-tbl-respon {
        display: none;
    }
}

@media screen and (max-width: 650px) {
    /* tblRespon --------------- */
    .note-tbl-respon {
        display: block;
    }
}

/* Dark Table --------------- */

.table-dark th,
.table-dark td {
    color: #fff;
}

/* --------------------------------------------------
 List
-------------------------------------------------- */

/* Common List --------------- */

.list-comm li {
    width: 48%;
    float: left;
}

.list-comm li:nth-of-type(2n) {
    float: right;
}

/* --------------------------------------------------
 Button
-------------------------------------------------- */
button:disabled{
    cursor: no-drop;
    opacity: 0.8;
}
/* btn-style01 --------------- */

.btn-style01 .btn-elem {
    color: #000;
    background: linear-gradient(180deg,#ffe66f,#fffb8f 31.25%,#debc50 70.31%,#fde26b), linear-gradient(180deg,#ffe66f,#fffb8f 31.25%,#debc50 70.31%,#fde26b);
    font-size: 11px;
    line-height: 1.2;
    border: none;
    border-radius: 10px;
    text-decoration: none;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    padding: 0;
    position: relative;
    box-sizing: border-box;
    transition: all 0.4s ease-in-out;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
    -webkit-appearance: none;
}

.btn-style01 .btn-elem:hover {
    filter: brightness(1.4);
}

.btn-style01 .btn-elem .txt01 {
    padding: 4px 7px;
    display: block;
}

.btn-style01 .btn-elem .icn {
    width: 15px;
    margin-right: 10px;
}

@media screen and (max-width: 767px) {
    .btn-style01 .btn-elem .txt01 {
        padding-top: 5px;
        padding-bottom: 5px;
    }
}

/* btn-style02 --------------- */

.btn-style02 {
    background: linear-gradient(180deg,#ffe66f,#fffb8f 31.25%,#debc50 70.31%,#fde26b), linear-gradient(180deg,#ffe66f,#fffb8f 31.25%,#debc50 70.31%,#fde26b);
    background-origin: border-box;
    background-clip: content-box,border-box;
    border-radius: 4px;
    padding: 2px;
    margin: 0 5px;
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
    transition: all 0.4s ease-in-out;
}

.btn-style02:hover {
    filter: brightness(1.1);
}

.btn-style02::after {
    content: "";
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(128, 186, 232, 0) 99%, rgba(128, 186, 232, 0) 100%);
    width: 300%;
    height: 300%;
    position: absolute;
    top: 0;
    transform: translateX(100%) rotate(30deg);
    z-index: 1;
    -webkit-animation: shine 3s infinite ease-in;
    animation: shine 3s infinite ease-in;
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}

.btn-style02 .elem {
    width: 100%;
    text-decoration: none;
    padding: 5px 15px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-style02 .elem .icn {
    width: 24px;
    text-decoration: none;
    margin-right: 5px;
    display: block;
}

.btn-style02 .elem .txt {
    color: #000;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    white-space: nowrap;
}

/* btn-style03 --------------- */

.btn-style03 {
    background: linear-gradient(180deg,#b6b6b6,#fafbfc 18.75%,#e5e5e5 37.5%,#ececec 70.83%,#a0a0a0), linear-gradient(180deg,#b6b6b6,#fafbfc 18.75%,#e5e5e5 37.5%,#ececec 70.83%,#a0a0a0);
    background-origin: border-box;
    background-clip: content-box,border-box;
    border-radius: 4px;
    padding: 2px;
    margin: 0 5px;
    display: flex;
    align-items: center;
    position: relative;
    overflow: hidden;
    transition: all 0.4s ease-in-out;
    box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}

.btn-style03::after {
    content: "";
    background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.8) 50%, rgba(128, 186, 232, 0) 99%, rgba(128, 186, 232, 0) 100%);
    width: 300%;
    height: 300%;
    position: absolute;
    top: 0;
    transform: translateX(100%) rotate(30deg);
    z-index: 1;
    -webkit-animation: shine 3s infinite ease-in;
    animation: shine 3s infinite ease-in;
    -webkit-animation-delay: 1s;
    animation-delay: 1s;
}

.btn-style03:hover {
    filter: brightness(1.1);
}

.btn-style03 .elem {
    width: 100%;
    text-decoration: none;
    padding: 5px 15px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-style03 .elem .icn {
    width: 24px;
    text-decoration: none;
    margin-right: 5px;
    display: block;
}

.btn-style03 .elem .txt {
    color: #000;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    white-space: nowrap;
}

@-webkit-keyframes shine {
    0% {
        transform: translateX(-100%) translateY(-100%) rotate(30deg);
    }
    80% {
        transform: translateX(-100%) translateY(-100%) rotate(30deg);
    }
    100% {
        transform: translateX(100%) translateY(100%) rotate(30deg);
    }
}

@keyframes shine {
    0% {
        transform: translateX(-100%) translateY(-100%) rotate(30deg);
    }
    80% {
        transform: translateX(-100%) translateY(-100%) rotate(30deg);
    }
    100% {
        transform: translateX(100%) translateY(100%) rotate(30deg);
    }
}

/* btn-fix --------------- */

.btn-fix {
    width: 100%;
    max-width: 1000px;
    margin: auto;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 999;
}

.btn-fix .inner {
    background-color: #212121;
    height: 70px;
    padding: 10px 0;
    display: flex;
    justify-content: center;
}

.btn-fix .btn-style01,
.btn-fix .btn-style02,
.btn-fix .btn-style03 {
    width: 48%;
}

/* paginator --------------- */

.paginator > .btn {
    background-color: #0000008A;
    color: #fff;
    border: 1px solid transparent;
    margin-left: 4px;
    margin-right: 4px;
    margin-bottom: 4px;
}

.paginator > .btn:first-child:hover,
.paginator > :not(.btn-check)+.btn:hover {
    background: #009dd8;
    color: #fff;
    border-color: transparent;
}

.paginator > .btn-primary {
    background: #009dd8c9;
    color: #fff;
}

.paginator > .btn.disabled, .paginator > .btn:disabled, .paginator > fieldset:disabled .btn {
    background-color: #00000047;
    color: #ccc;
}

@media screen and (max-width: 767px) {
    .paginator > .btn {
        padding: 4px 8px;
    }
}

/* --------------------------------------------------
 Text
-------------------------------------------------- */

.txt-center {
    text-align: center;
}

.txt-underline {
    text-decoration: underline;
}

.txt-big {
    font-size: 115%;
}

.txt-small {
    font-size: 85%;
}

.txt-weight {
    font-weight: bold;
}

.txt-italic {
    font-style: italic;
}

.txt-inline-blc {
    text-align: left;
    display: inline-block;
}

.txt-black {
    color: #000;
}

.txt-red {
    color: #BD2D2B;
}

/* --------------------------------------------------
 Other Classes
-------------------------------------------------- */

/* Spacing --------------- */

.mt-1 {
    margin-top: 1%;
}

.mt-2 {
    margin-top: 2%;
}

.mt-3 {
    margin-top: 3%;
}

.mt-4 {
    margin-top: 4%;
}

.mt-5 {
    margin-top: 5%;
}

.mt-6 {
    margin-top: 6%;
}

.mt-7 {
    margin-top: 7%;
}

.mb-1 {
    margin-bottom: 1%;
}

.mb-2 {
    margin-bottom: 2%;
}

.mb-3 {
    margin-bottom: 3%;
}

.mb-4 {
    margin-bottom: 4%;
}

.mb-5 {
    margin-bottom: 5%;
}

.mb-6 {
    margin-bottom: 6%;
}

.mb-7 {
    margin-bottom: 7%;
}

/* Clear fix --------------- */

.clear-fix:after {
    content: "";
    clear: both;
    display: block;
}

/* Clear --------------- */

.clear {
    clear: both;
}

/* Hide --------------- */

.hidden {
    opacity: 0;
}

.visible {
    opacity: 1;
}

.disnon {
    display: none;
}

/* PDF icon --------------- */

.icn-pdf {
    vertical-align: bottom;
    margin: 0px 3%;
}

@media screen and (max-width: 1000px) {
    /* Hide --------------- */
    .post.hidden {
        opacity: 1;
    }
}

/* Popup --------------- */

.mfp-bg {
    animation: openBg 0.4s;
}

.white-popup-block {
    animation: open 0.4s;
}

.mfp-removing{
  animation: close 0.4s;
}

@keyframes openBg {
    0%   {opacity: 0;}
    100% {opacity: 0.8;}
}

@keyframes open {
    0%   {opacity: 0;}
    100% {opacity: 1;}
}

@keyframes close {
    0%   {opacity: 1;}
    100% {opacity: 0;}
}

@media screen and (max-width: 767px) {
    /* Popup --------------- */
    .popup {
        display: block;
        position: relative;
    }
}