you are getting the transform's position which is the position of the gameobject itself that can be different from the center of your collider.
you can get a reference to object's collider by writing:
c1.collider
but Collider class don't have position/dimention information of your collider so you need to know the type of your collider and get it using GetComponent, let's say it's a SphereCollider
c1.GetComponent(SphereCollider).center
is the center of the sphereCollider attached to c1. it's a value in object's local space (0.3) as you said and you should add transform.position to it if you want to have it in world space.