*{margin:0;padding:0;box-sizing:border-box}body{font-family:Noto Sans JP,sans-serif;background-color:#f8f9fa;color:#3b4043;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0;height:100%;min-height:auto}textarea{font-family:inherit}header{width:100%;padding:20px 0;text-align:center}.logo img{width:150px}.main{width:100%;max-width:480px;padding:20px}.top_register{background-color:#fff;border-radius:34px;padding:40px;box-shadow:0 4px 8px #0000001a;width:500px;margin-bottom:50px}.register_content_header h2{color:#3b4043;font-size:1.5rem;margin-bottom:20px;text-align:center}.type-area label{font-size:.9rem;color:#666;display:block;margin-bottom:5px}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;padding:0;font:inherit;color:inherit}input[type=password]::-ms-reveal{display:none}input,select,textarea{width:100%;padding:12px;border-radius:5px;border:1px solid #ddd;font-size:1rem;outline:none}input:focus{border-color:#f9db00}select:focus{border-color:#f9db00}textarea:focus{border-color:#f9db00}input::-moz-placeholder{color:#bbb;opacity:1}input::placeholder{color:#bbb;opacity:1}.nick_error{margin-top:10px;color:#f9db00;font-size:.9rem;text-align:center}p{font-size:.9rem;color:#666;margin-top:15px;text-align:center}.next_btn_wrap{text-align:center;margin-top:25px}.next_btn{background-color:#f9db00;color:#333;padding:12px 20px;border-radius:50px;font-size:1rem;text-decoration:none;display:inline-block;transition:background-color .3s ease;font-weight:700;border:none}.next_btn:hover{background-color:#e1c400}.code_error{background-color:#f8f8f8;border-radius:8px;padding:20px;margin-top:40px}.code_error h4{font-size:1rem;color:#333;margin-bottom:10px;text-align:center}.code_error p{font-size:.8rem;color:#666;line-height:1.6;text-align:center;margin-bottom:20px}.resubmit-button{text-align:center}.resubmit-button input[type=submit]{background-color:#969696;color:#fff;border:none;border-radius:5px;padding:10px 20px;font-size:1rem;cursor:pointer;transition:background-color .3s ease}.input-container{text-align:center;margin-top:20px}.code-input input[type=number]{width:220px;height:36px;margin:0 8px;padding:0 12px;font-size:24px;text-align:center;border:none;border-bottom:1px solid black;outline:none;background:#ededed66;font-weight:700;letter-spacing:20px;border-radius:0}.code-input input[type=number]::-webkit-inner-spin-button,.code-input input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.code-input input[type=number]{-moz-appearance:textfield}label{display:block;margin-top:25px}.required{background-color:#edd200;color:#fff;display:inline-block;margin:-6px 0 0 14px;font-size:12px;padding:3px 12px;border-radius:20px;vertical-align:middle;font-weight:700}.any{background-color:#acacac;color:#fff;display:inline-block;margin:-6px 0 0 14px;font-size:12px;padding:3px 12px;border-radius:20px;vertical-align:middle;font-weight:700}.checkbox-container{display:flex;align-items:center;margin-top:15px}.checkbox-container input[type=checkbox]{margin-right:10px;margin-top:5px}input[type=checkbox]{width:auto;height:auto;transform:scale(1.2)}.checkbox-wrap{margin-top:25px}.checkbox-container label{margin-top:0}.password-container{position:relative}#toggle-password,#toggle-passwordcfm{position:absolute;top:8px;right:6px;padding:5px;background-color:transparent;border:none;outline:none;cursor:pointer;opacity:.5}.nickname-area p{margin-top:5px;font-size:12px;text-align:left}.birthdate-container{display:flex;gap:10px;align-items:center}.birthdate-container select{width:33%;font-size:16px;border-radius:4px}.pass-field{letter-spacing:15px!important;padding-left:25px!important}.favorite-foods{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px}.favorite-foods label{position:relative;display:flex;align-items:center;justify-content:center;padding:7px 20px;border:2px solid #ccc;border-radius:20px;background-color:#f9f9f9;color:#333;font-size:14px;cursor:pointer;transition:background-color .3s ease,color .3s ease;margin-top:5px}.favorite-foods input[type=checkbox]{display:none}.favorite-foods input[type=checkbox]:checked+label{background-color:#f9db00;color:#333;border-color:#f9db00}.favorite-foods label:hover{background-color:#f0f0f0}.error-message{color:red;font-size:14px;margin-top:10px}.nickname-area{position:relative}#nick-error{background-color:red;border-radius:10px;color:#fff!important;padding:5px 10px;font-weight:700}@media (max-width: 767px){body{height:100%;background-color:#fff}main{width:100%}.top_register{padding:20px 15px;box-shadow:none;border-radius:0;width:100%}header{padding:10px 0}.logo img{width:120px}.register_content_header h2{font-size:1.3rem}.type-area input{padding:10px;font-size:.95rem}.next_btn{padding:15px 20px;font-size:.95rem}.code_error{padding:15px;border-radius:5px}.code_error h4{font-size:1rem}.code_error p{font-size:.85rem}.resubmit-button input[type=submit]{padding:8px 15px;font-size:.95rem}.input-container{text-align:center;margin-top:15px}.code-input input[type=number]{width:60vw;height:10vw;margin:0 2vw;padding:0 3vw;font-size:6vw;text-align:center;border:none;border-bottom:2px solid black;outline:none;background:#ededed66;font-weight:700;letter-spacing:5vw}input[type=checkbox]{width:14px;height:14px;transform:scale(1)}.checkbox-container input[type=checkbox]{margin-top:0}}.register_method_selection{margin-top:30px}.method_button_wrap{margin-bottom:20px}.method_btn{display:flex;align-items:center;justify-content:center;width:100%;padding:12px 20px;border-radius:10px;font-size:1.1rem;font-weight:700;text-decoration:none;transition:all .3s ease;border:2px solid;gap:12px}.method_btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.line_btn{background-color:#01c300;color:#fff;border-color:#01c300}.line_btn:hover{background-color:#01a500;border-color:#01a500;color:#fff}.email_btn{background-color:#fff;color:#666;border-color:#ddd}.email_btn:hover{background-color:#f8f9fa;border-color:#bbb;color:#333}.btn_icon{display:flex;align-items:center;justify-content:center;width:45px;height:45px}.method_separator{text-align:center;margin:30px 0;position:relative}.method_separator span{background-color:#fff;color:#999;padding:0 20px;font-size:.9rem;position:relative;z-index:2}.method_separator:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background-color:#ddd;z-index:1}.register_note{margin-top:40px;text-align:center}.register_note p{font-size:.9rem;color:#666;margin:0}.register_signup_section{margin-top:30px}#recapture_form label{font-weight:700}@media (max-width: 767px){.register_method_selection{margin-top:20px}.method_btn{padding:18px 15px;font-size:1rem}.method_separator{margin:25px 0}.method_separator span{padding:0 15px;font-size:.85rem}.register_note{margin-top:30px}.register_note p{font-size:.85rem}}.line_register_content{margin-top:20px}.line_icon_large{text-align:center;margin-bottom:25px}.nickname-notice{font-size:.85rem!important;color:#666!important;margin-top:8px!important;text-align:left!important;line-height:1.4}.line_register_info{text-align:center;margin-bottom:30px}.line_benefits{background-color:#f8f9fa;padding:20px;border-radius:10px;margin-top:20px}.line_benefits h3{color:#333;font-size:1.1rem;margin-bottom:15px;text-align:center}.line_benefits ul{list-style:none;padding:0;margin:0}.line_benefits li{padding:8px 0;color:#666;font-size:.95rem;text-align:left}.line_register_btn{background-color:#01c300!important;border-color:#01c300!important;display:flex;align-items:center;justify-content:center;gap:10px;color:#fff;margin:0 auto}.line_register_btn:hover{background-color:#01a500!important;border-color:#01a500!important}.back_to_selection{text-align:center;margin-top:30px}.back_link{color:#666;text-decoration:none;font-size:.9rem;padding:10px 15px;border-radius:5px;transition:all .3s ease}.back_link:hover{background-color:#f8f9fa;color:#333;text-decoration:none}@media (max-width: 767px){.line_register_content{margin-top:15px}.line_register_info{margin-bottom:25px}.line_benefits{padding:15px;margin-top:15px}.line_benefits h3{font-size:1rem;margin-bottom:12px}.line_benefits li{padding:6px 0;font-size:.9rem}.line_register_btn{padding:18px 15px;font-size:1rem}.back_to_selection{margin-top:25px}.back_link{font-size:.85rem;padding:8px 12px}}
