.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 .membership-subtitle{max-width:800px;margin:0 auto 16px;padding:0 20px;font-size:13px;line-height:1.7;color:#6b7280}.membership form.from-beginner .birthday-input .birthday-select:disabled,.membership form.from-beginner input[readonly],.membership form.from-customer .birthday-input .birthday-select:disabled,.membership form.from-customer input[readonly]{background-color:#eef0f3;border-color:#d7dbe2;color:#6b7280;cursor:not-allowed;box-shadow:none}.membership form.from-beginner input[readonly]:focus,.membership form.from-customer input[readonly]:focus{outline:none;border-color:#d7dbe2}.membership form.from-beginner .postal-search-btn:disabled,.membership form.from-customer .postal-search-btn:disabled{opacity:.45;cursor:not-allowed}.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}.membership form .form-group .payment-methods .payment-method-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.membership form .form-group .payment-methods .payment-method-option{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:10px 12px;min-height:64px;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 input[type=radio]{position:absolute;opacity:0;width:0;height:0}.membership form .form-group .payment-methods .payment-method-option .payment-method-title{font-size:16px;line-height:1.2}.membership form .form-group .payment-methods .payment-method-option .payment-method-note{font-size:12px;line-height:1.2;color:#666}.membership form .form-group .payment-methods .payment-group-error{display:block;margin-top:-2px;margin-left:0}.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;cursor:pointer}.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 form .beginner-class-section{margin:24px 0;padding:20px;border:1px solid #e6c97a;background-color:#fffbf0;border-radius:4px}.membership form .beginner-class-section .beginner-notice{margin-bottom:20px}.membership form .beginner-class-section .beginner-notice h5{margin:0 0 8px;font-size:18px;font-weight:700;color:#8a6d3b;line-height:1.4}.membership form .beginner-class-section .beginner-notice p{font-size:16px;font-weight:600;margin:0 0 10px;color:#8a6d3b}.membership form .beginner-class-section .beginner-notice .beginner-notice-subtitle{margin:0 0 10px;font-size:13px;font-weight:400;color:#8a6d3b;line-height:1.6;opacity:.9}.membership form .beginner-class-section .beginner-notice ul{margin:0;padding-left:20px;font-size:14px;line-height:1.7;color:#555}.membership form .beginner-class-section .beginner-notice ul li{margin-bottom:4px}.membership form .beginner-class-section .beginner-notice ul strong{color:#c0392b;font-weight:600}.membership form .beginner-class-section .beginner-pricing{padding:12px 16px;background-color:#fff;border:1px solid #eaeaea;border-radius:4px}.membership form .beginner-class-section .beginner-pricing .pricing-row{display:flex;justify-content:space-between;align-items:center;padding:6px 0;font-size:14px}.membership form .beginner-class-section .beginner-pricing .pricing-row:not(:last-child){border-bottom:1px dashed #eaeaea}.membership form .beginner-class-section .beginner-pricing .pricing-row .label{color:#666}.membership form .beginner-class-section .beginner-pricing .pricing-row .value{font-weight:600;color:#222}.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}}