:root {
    --color-black: #010101;
    --color-navy: #11124E;
    --color-blue: #00A0E9;
    --color-red: #E60012;
    --color-white: #FFFFFF;
    --color-background: #EFEFEF;
}

/* ---------------- COMMON ---------------- */

::selection {
    -ms-user-select: none;
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    user-select: none;
}

* {
    margin: 0;
    padding: 0;
    list-style: none;
    text-decoration: none;
    box-sizing: border-box;
}

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

body {
    min-width: 360px;
    max-width: 100vw;
    min-height: 100vh;
    line-height: 0%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    background-color: var(--color-background);
}

section{
    position: relative;
    max-width: 800px;
    width: 100%;
}

.background{
    max-width: 800px;
    width: 100%;
    object-fit: contain;
}

p{
    font-family: 'GmarketSans', sans-serif;
    font-size: 1rem;
    letter-spacing: calc(-1 * 0.025rem);
    font-weight: 500;
    line-height: 125%;
    color: var(--color-black);
}

.ff-esmr{
    font-family: 'EsaManru', sans-serif;
}

.ff-prtd{
    font-family: 'Pretendard Variable', sans-serif;
}

.fw-light{
    font-weight: 300;
}

.fw-bold{
    font-weight: 800;
}

.c-navy{
    color: var(--color-navy);
}

.c-blue{
    color: var(--color-blue);
}

.c-red{
    color: var(--color-red);
}

.fs-15{
    font-size: 0.5rem;
    letter-spacing: calc(-1 * 0.0125rem);
}

.fs-18{
    font-size: 0.6rem;
    letter-spacing: calc(-1 * 0.013rem);
}

.fs-25{
    font-size: 0.83rem;
    letter-spacing: calc(-1 * 0.0208rem);
}

.fs-35{
    font-size: 1.16rem;
    letter-spacing: calc(-1 * 0.029rem);
}

.fs-40{
    font-size: 1.33rem;
    letter-spacing: calc(-1 * 0.0333rem);
}

.fs-50{
    font-size: 1.66rem;
    letter-spacing: calc(-1 * 0.0416rem);
}

.fs-55{
    font-size: 1.83rem;
    letter-spacing: calc(-1 * 0.0458rem);
}

.fs-60{
    font-size: 2rem;
    letter-spacing: calc(-1 * 0.05rem);
}

.fs-65{
    font-size: 2.17rem;
    letter-spacing: calc(-1 * 0.0543rem);
}

.fs-70{
    font-size: 2.33;
    letter-spacing: calc(-1 * 0.0583rem);
}

/* ---------------- SECTION-01 ---------------- */

.section-01 > p:nth-of-type(1){
    position: absolute;
    top: 4.45%;
    left: 6.8%;
}

.section-01 > p:nth-of-type(2){
    position: absolute;
    top: 30%;
    left: 6.2%;
}

.section-01 > p:nth-of-type(3){
    position: absolute;
    top: 37.5%;
    left: 6.2%;
}

.section-01 > p:nth-of-type(4){
    position: absolute;
    top: 52%;
    left: 6.2%;
}

.section-01 > p:nth-of-type(5){
    position: absolute;
    bottom: 2.5%;
    left: 6.2%;
}

.our-status{
    max-width: 800px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.our-status > a > img{
    width: 100%;
    object-fit: contain;
}

/* ---------------- SECTION-02 ---------------- */

.section-02 > p:nth-of-type(1){
    position: absolute;
    top: 5%;
    left: 6.2%;
}

.section-02 > p:nth-of-type(2){
    position: absolute;
    top: 27%;
    left: 17%;
}

.section-02 > p:nth-of-type(3){
    position: absolute;
    top: 47%;
    left: 6.2%;
}

.section-02 > p:nth-of-type(4){
    position: absolute;
    top: 61%;
    left: 6.2%;
}

.section-02 > p:nth-of-type(5){
    position: absolute;
    bottom: 1%;
    left: 6.2%;
}

/* ---------------- SECTION-03 ---------------- */

.section-03 > p:nth-of-type(1){
    position: absolute;
    top: 0.5%;
    left: 6.2%;
}

.section-03 > p:nth-of-type(2){
    position: absolute;
    top: 25%;
    left: 6.2%;
}

.section-03 > p:nth-of-type(3){
    position: absolute;
    top: 57%;
    left: 6.2%;
}

.section-03 > p:nth-of-type(4){
    position: absolute;
    top: 83.5%;
    left: 6.2%;
}

.section-03 > p:nth-of-type(5){
    position: absolute;
    top: 86%;
    left: 6.2%;
}

.section-03 > p:nth-of-type(6){
    position: absolute;
    bottom: 2.5%;
    left: 6.2%;
}

/* ---------------- SECTION-04 ---------------- */

.section-04 > p:nth-of-type(1){
    position: absolute;
    top: 6.5%;
    right: 5.5%;
}

.section-04 > p:nth-of-type(2){
    position: absolute;
    top: 15%;
    left: 11%;
}

.section-04 > p:nth-of-type(3){
    position: absolute;
    top: 56%;
    left: 11%;
}

/* ---------------- SECTION-05 ---------------- */

.section-05 > p:nth-of-type(1){
    position: absolute;
    top: 10.2%;
    right: 4%;
}

.section-05 > p:nth-of-type(2){
    position: absolute;
    top: 17.6%;
    left: 11%;
}

.section-05 > p:nth-of-type(3){
    position: absolute;
    top: 63.4%;
    left: 10.5%;
}

.section-05 > p:nth-of-type(4){
    position: absolute;
    top: 70%;
    left: 11%;
    line-height: 140%;
}

.section-05 > p:nth-of-type(5){
    position: absolute;
    top: 82%;
    left: 11%;
    line-height: 140%;
}

/* ---------------- SECTION-06 ---------------- */

.section-06 > p:nth-of-type(1){
    position: absolute;
    top: 7%;
    right: 3.5%;
}

.section-06 > p:nth-of-type(2){
    position: absolute;
    top: 13.8%;
    left: 11%;
    line-height: 140%;
}

.section-06 > p:nth-of-type(3){
    position: absolute;
    top: 33%;
    left: 11%;
}

.section-06 > p:nth-of-type(4){
    position: absolute;
    top: 60.5%;
    left: 15%;
    text-align: center;
}

.section-06 > p:nth-of-type(5){
    position: absolute;
    bottom: 0.5%;
    left: 8%;
}

.shortcut-kpx{
    max-width: 800px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.shortcut-kpx > a > img{
    width: 100%;
    object-fit: contain;
}

/* ---------------- SECTION-07 ---------------- */

.section-07 > p:nth-of-type(1){
    position: absolute;
    top: 18.5%;
    right: 4%;
}

.section-07 > p:nth-of-type(2){
    position: absolute;
    top: 25%;
    left: 11%;
    line-height: 140%;
}

/* ---------------- SECTION-08 ---------------- */

.section-08 > p:nth-of-type(1){
    position: absolute;
    top: 13%;
    right: 5%;
}

.section-08 > p:nth-of-type(2){
    position: absolute;
    top: 26%;
    left: 11%;
}

/* ---------------- SECTION-09 ---------------- */

.section-09{
    padding-bottom: 1.2rem;
}

.section-09 > p:nth-of-type(1){
    position: absolute;
    top: 26.5%;
    left: 18%;
}

.section-09 > p:nth-of-type(2){
    position: absolute;
    top: 41%;
    left: 6.2%;
}

.faq{
    max-width: 800px;
    width: 100%;
    padding-left: 1.75rem;

    padding-right: 1.75rem;
    background-color: var(--color-background);
}

.question{
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    padding-top: 0.35rem;
    padding-bottom: 0.2rem;
}

.answer{
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s;
    background-color: var(--color-white);
    border-top: 1px solid var(--color-black);
    border-bottom: 1px solid var(--color-black);
}

.faq.active .answer{
    max-height: 960px;
    border-top: 2px solid var(--color-black);
    border-bottom: 2px solid var(--color-black);
}

.faq img{
    max-width: 0.4rem;
    width: 100%;
    object-fit: contain;
    margin-right: 0.25rem;
    transition: transform 0.5s;
}

.faq.active img{
    transform: rotate(-180deg);
}

.answer > P{
    line-height: 150%;
    margin: 1rem 1.4rem;
}

/* ---------------- SECTION-10 ---------------- */

.section-10 > p:nth-of-type(1){
    position: absolute;
    bottom: 8%;
    left: 6.8%;
}

/* ---------------- FLOATING ---------------- */

.floating{
    max-width: 800px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: sticky;
    bottom: 0;
    background-color: var(--color-background);
}

.floating > a > img{
    width: 100%;
    object-fit: contain;
}

@media screen and (max-width: 800px) {
    html {
        font-size: calc(100vw * 0.0375);
    }
}

@media screen and (max-width: 360px) {
    html{
        font-size: 13.5px;
    }
}
