When the caretaker registers a new born child at a local government, the name is submitted in handwritten form, and, until recent, that character became official even if there is a mistake such as missing or extra stroke, etc. Therefore, every time someone makes a mistake previously not made, that character was added to the inventory of the kanji used in Japanese. These are called 俗字 'folk character', 誤字 'wrong character', or 異体字 'character variant'. In my personal opinion, that is stupid. Recently, a law was passed that restricts usage of such characters.
Besides that, as a game, people sometimes create new kanjis by combining the existing ones, but those characters almost never come to be used.
It is less likely that a newly created kanji come to be assigned to some word. For one thing, there are laws and notes by the government that define what is the right way of writing in kanji. Second, in this digital age, being able to input and output on the computer has become one criterion for a character to be used, and is less likely that a newly created character will achive enough popularity despite not being in the list of characters usable on the computer. Third, in the recent history of Japan, several political claims/attempts have been made to discard or lessen the kanji characters, but going in the other way to add kanji characters is rare.
Explanation expanded since my intention does not seem to be understood
I think it is a general understanding shared by all countries using chinese characters that chinese characters take too much time to write, or require extra effort to input on the computers. It is a solid fact that putting East Asian languages on the computer was delayed because of the difficulty in handling chinese characters on the computers. First, chinese characters have much more strokes compared to phonograms like most western languages, so the display had to become higher in resolution, and still it would take more space to display them compared to latin alphabet. Second, since the number of Chinese characters are vast, it could not fit within one-byte character code, and required modification to the software architecture. Third, since the number of characters are vast, it cannot be simply mapped to a layout on an ordinary-sized keyboard; it had to wait for the development of input method programs for these langauges. Each of these was a major obstacle to computerization of the language. And it is true that this fact worked as a rationale for considering to dispence chinese characters in these languages. But as usual, an attempt to artificially change a language does not succeed that easily.