.membership{padding-top:150px}@media screen and (max-width:768px){.membership{padding-top:80px}}.membership{margin-bottom:5em!important}@media screen and (max-width:576px){.membership{margin-bottom:4em!important}}.membership .inner-2{max-width:800px;margin:0 auto;padding:20px}.membership form .form-group{margin-bottom:30px}.membership form .form-group label{display:block;margin-bottom:10px;font-weight:700}.membership form .form-group .input-wrapper{flex:1 1;position:relative}.membership form .form-group .input-wrapper input,.membership form .form-group .input-wrapper select{width:100%;padding:12px;border:1px solid #ddd;border-radius:4px;font-size:16px;transition:border-color .3s}.membership form .form-group .input-wrapper input:focus,.membership form .form-group .input-wrapper select:focus{outline:none;border-color:#007bff}.membership form .form-group .input-wrapper input.error,.membership form .form-group .input-wrapper select.error{border-color:#dc3545}.membership form .form-group .input-wrapper .error-message{color:#dc3545;font-size:12px;margin-top:4px;display:block;position:absolute;bottom:-20px;left:0}.membership form .form-group .name-fields{display:flex;gap:.5em}.membership form .form-group .name-fields input{width:50%}.membership form .form-group .name-fields .name-field,.membership form .form-group .name-fields .name-field input{width:100%}.membership form .form-group .birthday-input{display:flex;flex-direction:column;gap:.5rem}.membership form .form-group .birthday-input .birthday-selects{display:flex;gap:.5rem}.membership form .form-group .birthday-input .birthday-select{flex:1 1;padding:.5rem .75rem;background-color:#fff}.membership form .form-group .address-fields{display:grid;grid-template-columns:35% 65%;grid-gap:.5rem;gap:.5rem}.membership form .form-group .address-fields .postal-code-wrapper{position:relative}.membership form .form-group .address-fields .postal-code-wrapper input{width:100%;padding-left:1.5rem!important;padding-right:2rem!important;box-sizing:border-box}.membership form .form-group .address-fields .postal-code-wrapper .postal-icon{position:absolute;top:50%;left:5px;transform:translateY(-50%);font-size:18px;color:#666;pointer-events:none}.membership form .form-group .address-fields .postal-code-wrapper .postal-search-btn{position:absolute;top:50%;right:0;transform:translateY(-50%);background:none;border:none;cursor:pointer;outline:none}.membership form .form-group .address-fields .postal-code-wrapper .postal-search-btn i{font-size:16px;color:#666}.membership form .form-group input:not(.name-fields input,input[type=month]),.membership form .form-group select{width:100%}.membership form .form-group .payment-methods{display:flex;flex-direction:column;gap:10px}@media screen and (min-width:768px){.membership form .form-group .payment-methods{flex-direction:row;gap:15px}}.membership form .form-group .payment-methods .payment-method-option{display:flex;align-items:center;justify-content:center;padding:12px;max-height:44px;border:1px solid #b9b9b9;cursor:pointer;transition:all .3s ease;flex:1 1;position:relative}.membership form .form-group .payment-methods .payment-method-option:hover{border-color:#b9b9b9}.membership form .form-group .payment-methods .payment-method-option.selected{border-color:#007bff;background-color:rgba(0,123,255,.05);font-weight:500}.membership form .form-group .payment-methods .payment-method-option.selected:before{content:"";position:absolute;left:15px;top:50%;transform:translateY(-50%);width:8px;height:8px;border-radius:50%}.membership form .form-group .payment-methods .payment-method-option input[type=radio]{position:absolute;opacity:0;width:0;height:0}.membership form .form-group .payment-methods .payment-method-option span{font-size:16px}.membership form .form-group.agreement{display:grid;justify-content:center}.membership form .form-group.agreement .checkbox-container{display:flex;align-items:center;justify-content:center;position:relative;margin-bottom:0;cursor:pointer;font-weight:400}.membership form .form-group.agreement .checkbox-container input[type=checkbox]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.membership form .form-group.agreement .checkbox-container .checkmark{margin-right:.5em;height:1em;width:1em;background-color:#fff;border:1px solid #ddd;border-radius:4px;transition:all .2s ease}.membership form .form-group.agreement .checkbox-container:hover input~.checkmark{border-color:#007bff}.membership form .form-group.agreement .checkbox-container input:checked~.checkmark{background-color:#007bff;border-color:#007bff}.membership form .form-group.agreement .checkbox-container .checkmark:after{content:"";display:none}.membership form .form-group.agreement .checkbox-container input:checked~.checkmark:after{display:block}.membership form .form-group.agreement .checkbox-container .checkmark:after{position:relative;left:4px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.membership form .form-group.agreement .checkbox-container .terms-link{color:#2272a9;border-bottom:1px solid #2272a9;font-weight:700}.membership form .form-group .submit-btn{width:100%;padding:15px;background:#007bff;color:#fff;border:none;border-radius:4px;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .3s}.membership form .form-group .submit-btn:hover{background:#0056b3}.membership form .form-group .submit-btn:disabled{background:#ccc;cursor:not-allowed}.membership .error-message{font-size:12px;margin-left:.5em;color:#ff203a}.thanks{padding-top:150px}@media screen and (max-width:768px){.thanks{padding-top:80px}}.thanks{margin-bottom:5em!important}@media screen and (max-width:576px){.thanks{margin-bottom:4em!important}}.thanks section{margin:0 auto;padding:40px;text-align:center}.thanks h3{font-size:28px;margin-bottom:20px}.thanks p{font-size:16px;line-height:1.6;margin-bottom:30px}.thanks .inner-2{background-color:initial}.thanks .topBox{width:100%;padding:10px 2em}.thanks .topBox button{margin:1em auto}.thanks .topBox button img{height:100%!important;width:auto!important}@media screen and (max-width:768px){.membership form button,.membership form input,.membership form select,.membership form textarea{font-family:Noto Sans JP,sans-serif!important;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit}.membership form select{background-color:#fff;color:#333;border:1px solid #ddd}.membership form select::-ms-expand{display:none}.join{padding-top:80px}}