:root{
    --main-color: #;
    --heading1:1.6rem;
    --heading2:1.4rem;
    --heading3:1.25rem;
    --heading4:1rem;
    --body:1rem;
    --body2:0.9rem;
    --weight1:700;
    --weight2:400;
    --lnh120:1.2;
    --lnh150:1.5;
}

@media (min-width:2000px){
    main{
        width: 1920px;
        margin: 0 auto;
    }
}

h1{
    font-size: var(--heading1);
    font-weight: var(--weight1);
}
h2{
    font-size: var(--heading2);
    font-weight: var(--weight1);
}
h3{
    font-size: var(--heading3);
    font-weight: var(--weight1);
}
h4{
    font-size: var(--heading4);
    font-weight: var(--weight1);
}
p{
    line-height: var(--lnh150);
}

html{
    font-size: 20px;
    scroll-behavior: smooth;
}

body.no-scroll{
    overflow: hidden;
}

.common-frame{
    margin: 0 7rem;
}



@media (max-width:1024px){
    html{font-size: 18px;}
    .common-frame{width: auto;
    margin: 0 2rem;}
}

@media (max-width:768px){
    html{font-size: 14px;}
    .common-frame{width: auto;
    margin: 0 1rem;}
}

/* 입력 필드가 컨테이너를 넘지 않도록 기본 스타일 */
input[type="email"],
input[type="password"],
input[type="text"],
input[type="tel"],
input[type="number"] {
    max-width: 100%;
    box-sizing: border-box;
}

form,
[class*="form"],
[class*="login"] {
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
}