Player and some walls arent collise

Hi guys, can u help me, some walls the collise are good, but in others the player dont stop, like this image below:

Vector3 targetPos = transform.position;
                targetPos.x += input.x * moveSpeed * Time.deltaTime;
                targetPos.y += input.y * moveSpeed * Time.deltaTime;
 // Verificar se o Player pode andar no tilemap
    private bool isWalkable(Vector3 targetPos)
    {
        if (Physics2D.OverlapCircle(targetPos, 0.2f, solidObjectLayer) != null)
        {
            return false;
        }
        return true;
    }

Sounds like you wrote a bug… and that means… time to start debugging!

First place is to check all the colliders are where you think they are. Use Gizmos to see, or else press pause and look around the scene at runtime with the game paused.

Second, find out if the test itself is failing, or if your logic related the test is failing.

By debugging you can find out exactly what your program is doing so you can fix it.

Use the above techniques to get the information you need in order to reason about what the problem is.

You can also use Debug.Log(...); statements to find out if any of your code is even running. Don’t assume it is.

Once you understand what the problem is, you may begin to reason about a solution to the problem.

Remember with Unity the code is only a tiny fraction of the problem space. Everything asset- and scene- wise must also be set up correctly to match the associated code and its assumptions.

I try to debug and the only thing i see that works, its add more in radius here if (Physics2D.OverlapCircle(targetPos, 0.2f, solidObjectLayer) != null), but in the other walls now stop too far away.
I think the problem is collider detect player foot, but im not see any solution, im stuck…