We mainly focus on the field $\mathfrak{F}$ of all modular functions of all level whose Fourier coefficients belong to cyclotomic fields. $Aut(\mathfrak{F})$ is isomorphic to the adelization of $GL_2(\mathbb{Q})$ modulo rational scalar matrices and the archimedean part. Then reciprocity law in the maximal abelian extension of an imaginary quadratic field is given as a certain commutativity of the action of the adeles with the specialization of the functions of $\mathfrak{F}$. In chapter 1, we briefly review some elementary facts about elliptic curves and adelizations. In chapter 2, we introduce the modular function field of level $N$. In chapter 3, we obtain a canonical exact sequence for a number field in idelic language. Further we state the main theorem of complex multiplication of elliptic curves and how to construct class fields using elliptic curves. In the last chapter, we discuss the structure of $Aut(\mathfrak{F})$ and the Shimura reciprocity law at the fixed points of $GL_2(\mathbb{Q})$ on $\mathfrak{H}$. We apply the Shimura reciprocity law to determine when the values of modular functions of higher level can be used to generate the Hilbert class field of an imaginary quadratic field.