There may also be a problem with your host using the $home_dir. In many cases this would take you back beyond the /web directory (which is how many hosts are set up) and of course they are not going to allow you to write to this directory.
It seems that you may just need a two liner...
$new = "../your_directory"; mkdir("$new", 0700);
The "../" signifies the "home" directory. This way you don't have to define it. So if you wanted to go further, youd just:
$new = "../$otherpath/$thispath";
There is no need for the . '/' . '/' in my opinion. I use double quotes.
If 'you' can create a sub dir but your 'httpd-user' cannot, it may be a problem with the permission setting of the dir (Arts/) above that sub dir. Make sure, that both your shell user as well as your webserver can write and execute that Arts/ directory, fiddling with chown user:group on that above-dir and then doing a chmod on Arts/ accordingly.