@import url('reset.css');
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable-dynamic-subset.min.css");

:root {
    --wh: #fff;
    --bk: #000;
    --gr: #E4E4E4;
    --g: #8CF050;
    --b: #32C8FF;
    --y: #FFEC5A;
    --r: #FF9090;
    --p: #CF98FF;

    --fz-title-1: 56px;
    --fz-title-2: 28px;
    --fz-hd: 18px;
    --fz: 18px;
    --fz-label: 14px;

    --fw-title-1: 600;
    --fw-title-2: 600;
    --fw-hd: 700;
    --fw: 500;

    --fw-label-b: 700;

    --border: 2px solid transparent;
}

@media screen and (max-width: 1024px) {
    :root {
        --fz-title-1: 36px;
        --fz-title-2: 24px;
        --fz-hd: 16px;
        --fz: 16px;
        --fz-label: 14px;
    }
}

html,
body {
    font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;
    color: var(--bk);
    font-size: var(--fz);
    font-weight: var(--fw);
    font-style: normal;
    line-height: normal;
    letter-spacing: -0.01em;

    overscroll-behavior: none;
    -webkit-overflow-scrolling: touch;
}

* {
    color: var(--bk);
}

p {
    font-size: var(--fz);
    font-weight: var(--fw);
    line-height: 160%;
    letter-spacing: -0.01em;
}

.scroll-p {
    height: 100%;
    overflow: hidden;
}

.btn {
    display: block;
    padding: 0 16px;
    width: fit-content;
    height: 60px;
    line-height: 60px;
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    background: transparent;
    transition: background 50ms linear, color 50ms linear;

    cursor: pointer;
}

@media screen and (max-width: 1024px) {
    .btn {
        height: 56px;
        line-height: 56px;
    }

    .btn.type--b {
        font-size: var(--fz-title-1);
    }
}

.btn.gnb {
    text-transform: uppercase;
}

.btn.lnb {
    background: var(--g);
}

.btn.sns {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    width: 60px;
}

.btn.sns > svg {
    width: 40px;
    height: 40px;
}

@media (hover: hover) {
    .btn.gnb:hover {
        background: var(--g);
    }

    .btn.lnb:hover {
        color: var(--g);
        background: var(--bk);
    }

    .btn.sns:hover {
        background: var(--b);
    }
}

.btn.lnb.on {
    color: var(--g);
    background: var(--bk);
}

@media screen and (min-width: 1680px) {
    .btn.gnb.on {
        background: var(--g);
    }
}

@media screen and (max-width: 1024px) {
    .btn.sns > svg {
        width: 32px;
        height: 32px;
    }
}

.reserv-btn {
    display: block;
    position: relative;
    padding: 0 12px 0 24px;
    margin-bottom: 40px;
    width: 100%;
    height: 56px;
    line-height: 56px;
    color: var(--wh);
    font-weight: var(--fw-hd);
    background: var(--bk);
}

.reserv-btn:after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    right: 12px;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;

    background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_421_7600)'%3E%3Cpath d='M34.425 17.4543L20 3.0293L17.4544 5.57488L31.8794 19.9999L34.425 17.4543Z' fill='white'/%3E%3Cpath d='M26.6863 18.1943H4.82227V21.7943H26.6863V18.1943Z' fill='white'/%3E%3Cpath d='M34.4245 22.5456L31.8789 20L17.4539 34.425L19.9995 36.9706L34.4245 22.5456Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_421_7600'%3E%3Crect width='24' height='24' fill='white' transform='translate(20 3.0293) rotate(45)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

@media screen and (max-width: 1024px) {
    .reserv-btn {
        padding: 0 12px;
        margin-bottom: 20px;
        height: 48px;
        line-height: 48px;
    }

    .reserv-btn:after {
        width: 32px;
        height: 32px;
        background-image: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M22 14.4707H6V17.4707H22V14.4707Z' fill='white'/%3E%3Cpath d='M23.8788 13.8641L15.3936 22.3494L17.5149 24.4707L26.0002 15.9854L23.8788 13.8641Z' fill='white'/%3E%3Cpath d='M25.9999 15.9853L17.5146 7.5L15.3933 9.62132L23.8786 18.1066L25.9999 15.9853Z' fill='white'/%3E%3C/svg%3E%0A");
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
    }
}

.container {
    padding: calc(60px + 20px) 60px 0;
    min-height: 100vh;
}

@media screen and (max-width: 1024px) {
    .container {
        padding: calc(56px + 20px) 12px 0;
    }
}

.page-title {
    padding-bottom: 32px;
    font-size: var(--fz-title-1);
    font-weight: var(--fw-title-1);
    line-height: 130%;
    letter-spacing: -0.01em;
    text-transform: capitalize;
}

.page-info {
    padding-bottom: 40px;
}

.page-info > .page-sub-title {
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    line-height: 130%;
    letter-spacing: -0.01em;
}

.page-info > .page-desc {
    margin-top: 20px;
}

.contents {
    padding: 0 0 60px;
}

@media screen and (max-width: 1024px) {
    .contents {
        padding: 0 0 56px;
    }
}

.content-row {
    position: relative;
    padding: 20px 0;
    font-size: var(--fz-title-1);
    font-weight: var(--fw-title-1);
    line-height: 130%;
    letter-spacing: -0.01em;
    cursor: pointer;

    border-bottom: var(--border);
    border-color: var(--bk);

    background-color: transparent;
    transition: background 150ms linear;
}

.content-row:first-child {
    border-top: var(--border);
    border-color: var(--bk);
}

.content-row:after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    width: 52px;
    height: 60px;
    transform: translate(-10px, -50%);
    opacity: 0;
    pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg width='53' height='61' viewBox='0 0 53 61' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_200_3385)'%3E%3Cpath d='M52.9999 26.587L26.9129 0.5L22.9999 4.41305L49.0869 30.5L52.9999 26.587Z' fill='black'/%3E%3Cpath d='M41.1534 27.7332L0.571625 27.7332L0.571625 33.267L41.1534 33.267L41.1534 27.7332Z' fill='black'/%3E%3Cpath d='M52.9999 34.413L49.0869 30.5L22.9999 56.587L26.9129 60.5L52.9999 34.413Z' fill='black'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_200_3385'%3E%3Crect width='52.4283' height='60' fill='white' transform='translate(0.571655 0.5)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
    transition: opacity 150ms linear, transform 100ms 50ms linear;
}

@media (hover: hover) {
    .content-row:hover:after {
        opacity: 1;
        transform: translate(0, -50%);
    }
}

@media screen and (max-width: 1024px) {
    .content-row {
        padding: 12px 0;
        font-size: var(--fz-title-2);
    }

    .content-row:after {
        display: none;
    }
}

.content-card {
    cursor: pointer;
}

.card-label {
    margin-bottom: 12px;
    font-weight: var(--fw-hd);
}

.card-title {
    margin-top: 12px;
    margin-bottom: 12px;
}

.card-info {
    margin-bottom: 12px;
}

.card-info--em {
    font-weight: var(--fw-hd);
}

.card-desc {
    font-size: var(--fz-label);
    line-height: 150%;
    letter-spacing: -0.01em;
}

.content-card p {
    font-size: var(--fz-label);
    line-height: 150%;
    letter-spacing: -0.01em;
}

.card-position {
    margin-top: 12px;
    margin-bottom: 6px;
}

.card-dates {
    margin-bottom: 6px;
}

.card-position,
.card-dates,
.card-sns {
    position: relative;
    padding-left: 26px;
    padding-top: 2px;
}

.card-position:after,
.card-dates:after,
.card-sns:after {
    content: '';
    display: block;
    position: absolute;
    top: 2.5px;
    left: 0;
    width: 20px;
    height: 20px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.card-position:after {
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='21' viewBox='0 0 20 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_334_2269)'%3E%3Cpath d='M10.0449 0.500122C5.62849 0.500122 2.04492 4.10781 2.04492 8.55397C2.04492 8.91551 2.07549 9.26166 2.12133 9.61551C2.13661 9.76166 2.16718 9.91551 2.1901 10.0617C2.20538 10.1386 2.22066 10.2232 2.23594 10.3001C3.405 16.354 10.0449 20.5001 10.0449 20.5001C10.0449 20.5001 16.6848 16.354 17.8539 10.3001C17.8692 10.2232 17.8844 10.1463 17.8997 10.0617C17.9227 9.91551 17.9532 9.76166 17.9685 9.61551C18.0143 9.26935 18.0449 8.91551 18.0449 8.55397C18.0525 4.10781 14.469 0.500122 10.0449 0.500122ZM10.0449 11.6386C8.35628 11.6386 6.98857 10.2617 6.98857 8.56166C6.98857 6.86166 8.35628 5.48474 10.0449 5.48474C11.7335 5.48474 13.1013 6.86166 13.1013 8.56166C13.1013 10.2617 11.7335 11.6386 10.0449 11.6386Z' fill='black'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_334_2269'%3E%3Crect width='20' height='20' fill='white' transform='translate(0 0.5)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
}

.card-dates:after {
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='21' viewBox='0 0 20 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_334_2272)'%3E%3Cpath d='M10 0.499756C15.5231 0.499756 20.0008 4.97665 20.001 10.4998C20.001 16.023 15.5233 20.5007 10 20.5007C4.47689 20.5006 0 16.0229 0 10.4998C0.000172609 4.97676 4.477 0.499928 10 0.499756ZM10 2.24585C5.44626 2.24602 1.74627 5.93833 1.74609 10.4998C1.74609 15.0613 5.44615 18.7545 10 18.7546C14.5617 18.7546 18.2549 15.0614 18.2549 10.4998C18.2547 5.93822 14.5539 2.24585 10 2.24585ZM10.4619 17.7156H9.53906V15.8152H10.4619V17.7156ZM6.56055 14.5847L5.2168 15.9285L4.56445 15.2761L5.9082 13.9324L6.56055 14.5847ZM15.4268 15.2742L14.7744 15.9265L13.4307 14.5828L14.084 13.9304L15.4268 15.2742ZM10.7695 9.7312H13.8389V11.2693H9.23145V3.28394H10.7695V9.7312ZM4.68457 10.9617H2.78418V10.0388H4.68457V10.9617ZM17.2158 10.9617H15.3154V10.0388H17.2158V10.9617ZM15.4297 5.72925L14.0869 7.073L13.4336 6.42065L14.7773 5.0769L15.4297 5.72925ZM6.56348 6.41187L5.91113 7.06421L4.56738 5.72144L5.21973 5.06812L6.56348 6.41187Z' fill='black'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_334_2272'%3E%3Crect width='20' height='20' fill='white' transform='translate(0 0.5)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
}

.card-sns:after {
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='21' viewBox='0 0 20 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 1.50024C12.4447 1.50024 12.75 1.50896 13.71 1.55396C14.6676 1.5982 15.3208 1.75018 15.8945 1.9729C16.4956 2.19804 17.0401 2.55248 17.4893 3.01099C17.9468 3.46066 18.3013 4.00437 18.5273 4.60474C18.7493 5.17773 18.9003 5.83255 18.9453 6.79028C18.988 7.74997 19 8.05561 19 10.5002C19 12.945 18.9903 13.2503 18.9453 14.2102C18.9011 15.1678 18.7493 15.8211 18.5273 16.3948C18.3019 16.9957 17.9475 17.5402 17.4893 17.9895C17.0393 18.4471 16.495 18.8013 15.8945 19.0276C15.3208 19.2495 14.6676 19.4006 13.71 19.4456C12.75 19.4883 12.4448 19.5002 10 19.5002C7.55537 19.5002 7.24972 19.4905 6.29004 19.4456C5.33231 19.4013 4.67898 19.2496 4.10449 19.0276C3.50389 18.802 2.96008 18.4474 2.51074 17.9895C2.05295 17.5398 1.69862 16.9954 1.47266 16.3948C1.24993 15.8211 1.09871 15.1679 1.05371 14.2102C1.01096 13.2503 1 12.945 1 10.5002C1 8.05564 1.00873 7.74994 1.05371 6.79028C1.09796 5.8318 1.24991 5.17848 1.47266 4.60474C1.70138 4.01244 2.01063 3.5111 2.51074 3.01099C3.01086 2.51087 3.51295 2.20238 4.10449 1.9729C4.67823 1.75015 5.33156 1.59895 6.29004 1.55396C7.2497 1.51122 7.55539 1.50024 10 1.50024ZM9.96582 3.0979C7.55966 3.0979 7.27817 3.10908 6.32227 3.14282C5.44491 3.18782 4.97124 3.33377 4.65625 3.45825C4.22951 3.615 3.93631 3.81784 3.62207 4.13208C3.30645 4.4477 3.10474 4.74001 2.94727 5.16724C2.82352 5.48222 2.67759 5.96561 2.63184 6.84302C2.59809 7.79921 2.58594 8.09184 2.58594 10.4885C2.58594 12.8844 2.5981 13.1767 2.63184 14.1213C2.67759 14.9988 2.82352 15.4831 2.94727 15.7981C3.0903 16.19 3.32107 16.5444 3.62207 16.8333C3.91203 17.1324 4.26553 17.3625 4.65625 17.5071C4.97123 17.6308 5.4549 17.7768 6.33301 17.8225C7.28774 17.8668 7.56934 17.8782 9.97754 17.8782C12.3845 17.8782 12.666 17.8682 13.6211 17.8254C14.4986 17.7857 14.9829 17.6389 15.2979 17.5159C15.6883 17.3714 16.0422 17.1419 16.333 16.844C16.6305 16.5519 16.8605 16.1982 17.0068 15.8079C17.1306 15.4914 17.2765 15.0151 17.3223 14.1379C17.3665 13.1892 17.3779 12.903 17.3779 10.5002C17.3779 8.09729 17.3679 7.81203 17.3252 6.86255C17.2854 5.98521 17.1386 5.50911 17.0156 5.19263C16.8529 4.77114 16.658 4.47149 16.3438 4.15649C16.0274 3.84239 15.729 3.64732 15.3076 3.48462C14.9912 3.36014 14.5149 3.21437 13.6377 3.1731C12.689 3.13185 12.402 3.12036 10 3.12036L9.96582 3.0979ZM10 5.87817C11.2256 5.87822 12.4009 6.36603 13.2676 7.23267C14.1341 8.09933 14.6211 9.27465 14.6211 10.5002C14.621 11.7259 14.1342 12.9012 13.2676 13.7678C12.4009 14.6345 11.2256 15.1213 10 15.1213C9.39317 15.1213 8.79209 15.002 8.23145 14.7698C7.67083 14.5376 7.16152 14.1969 6.73242 13.7678C6.30335 13.3388 5.96271 12.8294 5.73047 12.2688C5.49824 11.7082 5.37795 11.1071 5.37793 10.5002C5.37793 9.89337 5.49823 9.29237 5.73047 8.73169C5.96272 8.17099 6.30328 7.6618 6.73242 7.23267C7.16156 6.80353 7.67075 6.46296 8.23145 6.23071C8.79213 5.99848 9.39312 5.87817 10 5.87817ZM10 7.50024C8.34253 7.50024 7 8.84278 7 10.5002C7.0001 12.1576 8.34259 13.5002 10 13.5002C11.6573 13.5001 12.9999 12.1576 13 10.5002C13 8.84284 11.6574 7.50034 10 7.50024ZM14.8047 4.61646C15.091 4.61658 15.3659 4.73043 15.5684 4.93286C15.7707 5.13537 15.8838 5.41024 15.8838 5.69653C15.8733 5.97595 15.7551 6.24082 15.5537 6.43481C15.3525 6.62852 15.084 6.73645 14.8047 6.73657C14.5252 6.73657 14.256 6.62865 14.0547 6.43481C13.8533 6.24082 13.7351 5.97595 13.7246 5.69653C13.7246 5.4101 13.8385 5.1354 14.041 4.93286C14.2435 4.73043 14.5183 4.61646 14.8047 4.61646Z' fill='black'/%3E%3C/svg%3E%0A");
}

.card-position p,
.card-dates p {
    font-size: var(--fz-label);
    line-height: 150%;
    letter-spacing: -0.01em;
}

.card-sns {
    font-size: var(--fz-label);
    line-height: 150%;
    letter-spacing: -0.01em;
}

@media screen and (max-width: 1024px) {
    .card-position:after {
        background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.0359 2C6.50278 2 3.63593 4.88615 3.63593 8.44308C3.63593 8.73231 3.66038 9.00923 3.69705 9.29231C3.70928 9.40923 3.73373 9.53231 3.75207 9.64923C3.76429 9.71077 3.77652 9.77846 3.78874 9.84C4.72399 14.6831 10.0359 18 10.0359 18C10.0359 18 15.3479 14.6831 16.2831 9.84C16.2953 9.77846 16.3075 9.71692 16.3198 9.64923C16.3381 9.53231 16.3626 9.40923 16.3748 9.29231C16.4115 9.01539 16.4359 8.73231 16.4359 8.44308C16.442 4.88615 13.5752 2 10.0359 2ZM10.0359 10.9108C8.68501 10.9108 7.59084 9.80923 7.59084 8.44923C7.59084 7.08923 8.68501 5.98769 10.0359 5.98769C11.3868 5.98769 12.481 7.08923 12.481 8.44923C12.481 9.80923 11.3868 10.9108 10.0359 10.9108Z' fill='black'/%3E%3C/svg%3E%0A");
    }

    .card-dates:after {
        background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.99963 1.99976C14.4182 1.99976 18.0005 5.58127 18.0006 9.99976C18.0006 14.4184 14.4182 18.0007 9.99963 18.0007C5.58115 18.0006 1.99963 14.4183 1.99963 9.99976C1.99977 5.58136 5.58123 1.99989 9.99963 1.99976ZM9.99963 3.39624C6.35664 3.39638 3.39626 6.35061 3.39612 9.99976C3.39612 13.649 6.35656 16.6031 9.99963 16.6033C13.649 16.6033 16.6031 13.6491 16.6031 9.99976C16.603 6.35053 13.6427 3.39624 9.99963 3.39624ZM10.3688 15.7722H9.63049V14.2527H10.3688V15.7722ZM7.24866 13.2683L6.17346 14.3425L5.651 13.821L6.7262 12.7458L7.24866 13.2683ZM14.3414 13.8191L13.819 14.3416L12.7448 13.2664L13.2662 12.7439L14.3414 13.8191ZM10.6158 9.38452H13.0709V10.615H9.3844V4.22729H10.6158V9.38452ZM5.74768 10.3689H4.22717V9.63062H5.74768V10.3689ZM15.7721 10.3689H14.2526V9.63062H15.7721V10.3689ZM14.3434 6.18335L13.2692 7.25854L12.7467 6.73608L13.8219 5.66187L14.3434 6.18335ZM7.25061 6.72925L6.72815 7.25171L5.65393 6.17651L6.17542 5.65503L7.25061 6.72925Z' fill='black'/%3E%3C/svg%3E%0A");
    }

    .card-sns:after {
        background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.0003 2.80029C11.9559 2.80029 12.2002 2.80727 12.9681 2.84326C13.7343 2.87866 14.2571 3.00003 14.7161 3.17822C15.1968 3.35831 15.6323 3.64162 15.9915 4.0083C16.3577 4.36813 16.6407 4.80421 16.8216 5.28467C16.9991 5.74294 17.1205 6.26586 17.1566 7.03174C17.1908 7.79972 17.1995 8.04453 17.1995 10.0005C17.1995 11.9561 17.1926 12.2003 17.1566 12.9683C17.1212 13.7344 16.9992 14.2573 16.8216 14.7163C16.6413 15.1969 16.3581 15.6323 15.9915 15.9917C15.6317 16.3577 15.1964 16.6408 14.7161 16.8218C14.2571 16.9994 13.7343 17.1207 12.9681 17.1567C12.2002 17.1909 11.9559 17.1997 10.0003 17.1997C8.04434 17.1997 7.79954 17.1927 7.03156 17.1567C6.26568 17.1213 5.74395 16.9993 5.28448 16.8218C4.80383 16.6413 4.36768 16.3582 4.00812 15.9917C3.64201 15.632 3.35879 15.1967 3.17804 14.7163C2.99984 14.2573 2.87908 13.7344 2.84308 12.9683C2.80888 12.2004 2.80011 11.9561 2.80011 10.0005C2.80011 8.04453 2.80708 7.79972 2.84308 7.03174C2.87848 6.26531 2.99995 5.74351 3.17804 5.28467C3.36104 4.81068 3.60793 4.40849 4.00812 4.0083C4.40831 3.60811 4.81109 3.36182 5.28448 3.17822C5.74333 3.00013 6.26513 2.87927 7.03156 2.84326C7.79954 2.80906 8.04434 2.80029 10.0003 2.80029ZM9.97296 4.07861C8.04784 4.07861 7.82268 4.08775 7.05792 4.11475C6.35594 4.15075 5.97691 4.2671 5.72491 4.3667C5.38356 4.49209 5.14914 4.65438 4.89777 4.90576C4.64525 5.15827 4.48371 5.39207 4.35773 5.73389C4.25873 5.98588 4.14237 6.37272 4.10577 7.07471C4.07878 7.83956 4.06867 8.07363 4.06866 9.99072C4.06866 11.9077 4.07877 12.142 4.10577 12.8979C4.1424 13.5996 4.25875 13.9868 4.35773 14.2388C4.47216 14.5523 4.65699 14.8358 4.89777 15.0669C5.1297 15.3061 5.41242 15.4903 5.72491 15.606C5.97691 15.705 6.36413 15.8223 7.06671 15.8589C7.83038 15.8943 8.05548 15.9028 9.98175 15.9028C11.9077 15.9028 12.1334 15.895 12.8978 15.8608C13.5995 15.829 13.9866 15.7112 14.2386 15.6128C14.5509 15.4972 14.8341 15.314 15.0667 15.0757C15.3048 14.842 15.4887 14.5589 15.6058 14.2466C15.7048 13.9934 15.8221 13.6117 15.8587 12.9097C15.8941 12.1511 15.9026 11.9222 15.9026 10.0005C15.9026 8.07823 15.8949 7.84982 15.8607 7.09033C15.8289 6.38856 15.711 6.00759 15.6126 5.75439C15.4824 5.41722 15.3269 5.17727 15.0755 4.92529C14.8224 4.67399 14.5834 4.51835 14.2464 4.38818C13.9932 4.28859 13.6115 4.17216 12.9095 4.13916C12.1509 4.10618 11.9214 4.09619 10.0003 4.09619L9.97296 4.07861ZM10.0003 6.30322C10.9807 6.30331 11.9213 6.69296 12.6146 7.38623C13.3077 8.07954 13.6976 9.02011 13.6976 10.0005C13.6975 10.9809 13.3078 11.9215 12.6146 12.6147C11.9213 13.308 10.9807 13.6977 10.0003 13.6978C9.51479 13.6978 9.03382 13.6013 8.58527 13.4155C8.13686 13.2298 7.72929 12.9579 7.38605 12.6147C7.04274 12.2714 6.77009 11.8631 6.58429 11.4146C6.39863 10.9662 6.30308 10.4858 6.30304 10.0005C6.30304 9.51501 6.39852 9.03398 6.58429 8.58545C6.77009 8.13689 7.04274 7.72954 7.38605 7.38623C7.72936 7.04292 8.13671 6.77027 8.58527 6.58447C9.03379 6.3987 9.51483 6.30322 10.0003 6.30322ZM10.0003 7.6001C8.67433 7.6001 7.59991 8.67451 7.59991 10.0005C7.6001 11.3263 8.67444 12.3999 10.0003 12.3999C11.326 12.3997 12.3995 11.3262 12.3997 10.0005C12.3997 8.67463 11.3261 7.60028 10.0003 7.6001ZM13.8431 5.29346C14.0722 5.29346 14.2924 5.38436 14.4544 5.54639C14.6164 5.70841 14.7073 5.92859 14.7073 6.15771C14.6989 6.38101 14.6045 6.59247 14.4437 6.74756C14.2825 6.90278 14.0668 6.98975 13.8431 6.98975C13.6195 6.98964 13.4045 6.90269 13.2435 6.74756C13.0826 6.59246 12.9883 6.38104 12.9798 6.15771C12.9798 5.92857 13.0707 5.70842 13.2327 5.54639C13.3947 5.38448 13.6141 5.29357 13.8431 5.29346Z' fill='black'/%3E%3C/svg%3E%0A");
    }
}

.table-title {
    margin-bottom: 20px;
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    line-height: 130%;
    letter-spacing: -0.01em;
}

.table-wrapper {
    margin-bottom: 60px;
    border-top: 1px solid var(--bk);
}

.table-row {
    display: grid;
    grid-template-columns: 160px 1fr;
    padding: 8px 0;
    width: 100%;
    border-bottom: 1px solid var(--bk);
}

.table-label {
    line-height: 160%;
}

.table-cont {
    padding-right: 60px;
    line-height: 160%;
}

@media screen and (max-width: 1024px) {
    .table-wrapper {
        margin-bottom: 56px;
    }

    .table-wrapper .table-row {
        display: block;
    }

    .table-wrapper .table-label {
        font-size: var(--fz-label);
        font-weight: var(--fw-hd);
        line-height: 150%;
        letter-spacing: -0.01em;
    }
}

.sec-title {
    margin-bottom: 20px;
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    line-height: 130%;
    letter-spacing: -0.01em;
}

/*dim*/
.dim {
    display: none;
    position: fixed;
    z-index: 99;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    cursor: pointer;
}

.dim.show {
    display: block;
}

@media screen and (max-width: 1024px) {
    .dim {
        display: none;
    }

    .dim.show {
        display: none;
    }
}

/*header*/
header {
    position: fixed;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100%;
    height: 60px;
    background: var(--wh);
}

.header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 44px 0 60px;
}

.logo--nav {
    display: flex;
    align-items: center;
    column-gap: 12px;
}

.logo--nav > span {
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    line-height: 130%;
    letter-spacing: -0.01em;
}

.logo--nav > span > em {
    display: none;
}

.gnb-wrapper {
    display: flex;
    align-items: center;
}

.gnb-wrapper > nav {
    display: flex;
    align-items: center;
}

.util-wrapper {
    display: flex;
    align-items: center;
}

.sns-list {
    display: flex;
    align-items: center;
}

.lang-list {
    display: flex;
    align-items: center;
    margin-left: 16px;
}

.lang-list > * {
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    line-height: 130%;
    letter-spacing: -0.01em;
}

.lang-list > .lang-item.on {
    text-decoration: underline;
}

.lang-list > span {
    display: block;
    padding: 0 4px;
    cursor: pointer;
}

.gnb-btn--m {
    display: none;
}

@media screen and (max-width: 1680px) {
    .gnb-btn--m {
        display: block;
        cursor: pointer;
    }

    .gnb-wrapper {
        position: fixed;
        z-index: 999;
        top: 60px;
        left: 0;
        padding: 0 60px 32.5px;
        width: 100%;
        display: none;

        background: var(--wh);
    }

    .gnb-wrapper.show {
        display: block;
    }

    .gnb-wrapper > nav {
        display: block;
    }

    .gnb-wrapper > nav .gnb {
        margin: auto;
        font-size: var(--fz-title-1);
    }

    .util-wrapper {
        display: block;
    }

    .sns-list {
        margin-top: 6px;
        justify-content: center;
    }

    .lang-list {
        margin-top: 20px;
        justify-content: center;
    }
}

@media screen and (max-width: 1024px) {
    header {
        height: 56px;
    }

    .header-inner {
        position: relative;
        padding: 0;
    }

    .logo--nav {
        padding: 0 22px 0 12px;
    }

    .logo--nav > span {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-size: var(--fz-label);
        font-weight: var(--fw-label-b);
        line-height: 100%;
        letter-spacing: -0.01em;
        text-align: center;
    }

    .logo--nav > span > em {
        display: block;
    }

    .gnb-wrapper {
        top: 56px;
        padding: 0 12px 32.5px;
    }
}

/*footer*/
footer {
    padding: 60px 60px 0;
}

.footer-inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    padding: 40px 0;
}

.site-info {
    display: flex;
    column-gap: 40px;
}

.site-info-col:last-child {
    flex: 1;
}

.site-info-item {
    white-space: pre-wrap;
    line-height: 160%;
}

.site-info-item.site-info-item--ex,
.site-info-item.site-info-item--logo {
    white-space: normal;
}

.site-info-item--logo {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
}

.site-info-item + .site-info-item {
    margin-top: 20px;
}

@media screen and (max-width: 1440px) {
    .footer-inner {
        display: block;
        padding: 40px 0;
    }

    .site-info {
        display: block;
        padding-top: 40px;
    }

    .site-info-item--logo {
        display: block;
        margin-top: 40px !important;
    }
}

@media screen and (max-width: 1024px) {
    footer {
        padding: 0 12px 0;
    }

    .logo-footer {
        display: block;
        width: 100%;
    }

    .logo-footer > svg {
        display: block;
        width: 100%;
        height: auto;
    }
}

/*layer popup*/
.hidden {
    width: 0;
    height: 0;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

.layer-wrapper {
    display: none;
    position: fixed;
    z-index: 99999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
}

.layer-inner {
    position: relative;
    width: 100%;
    height: 100%;
}

.layer-dim {
    position: absolute;
    z-index: 9999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: var(--bk);
    opacity: 0.5;
    cursor: pointer;
}

.layer {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 99999;
    width: 100%;
    height: 100%;
    max-width: 960px;
    background: var(--wh);
    border-left: 2px solid var(--bk);

    transform: translateX(100%);
    transition: transform 150ms linear;
}

.layer-wrapper.act .layer {
    transform: translateX(0);
}

.layer-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 44px 0 60px;
}

.layer-title {
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    line-height: 60px;
    letter-spacing: -0.01em;
}

.layer-cont {
    padding: 0 60px 40px;
    height: calc(100vh - 60px);
    overflow-y: auto;
}

.layer-cont strong {
    font-weight: var(--fw-hd);
}

.layer-cont p + p {
    margin-top: 40px;
}

@media screen and (max-width: 1024px) {
    .layer {
        border-left: 0;
    }

    .layer-top {
        padding: 0 12px;
    }

    .layer-title {
        padding: 12px 0;
        line-height: 130%;
        min-height: 56px;
    }

    .layer-cont {
        padding: 0 12px 32px;

        height: calc(100vh - 56px);
        overflow-y: auto;
    }

    .layer-close-btn,
    .detail-close-btn {
        width: 32px;
        height: 32px;
        color: transparent;
        font-size: 0;
        background-image: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7.86763 9.98958L22.0098 24.1317L24.1311 22.0104L9.98895 7.86826L7.86763 9.98958Z' fill='black'/%3E%3Cpath d='M9.98873 24.1317L24.1309 9.98956L22.0095 7.86824L7.8674 22.0104L9.98873 24.1317Z' fill='black'/%3E%3C/svg%3E%0A");
    }

}

/*about*/
.about-page .contents {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 60px;
}

.about-page .contents > .content-col:first-child {
    display: flex;
    flex-direction: column-reverse;
    row-gap: 60px;
    height: fit-content;
}

@media screen and (max-width: 1024px) {
    .about-page .contents {
        display: block;
    }

    .about-page .contents > .content-col:first-child {
        flex-direction: column;
        row-gap: 20px;
    }

    .about-page .content-col + .content-col {
        padding-top: 24px;
    }

    .about-page .content-col + .content-col .table-wrapper {
        margin-bottom: 0;
    }

    .about-page .content-col + .content-col .table-wrapper + .table-title {
        margin-top: 56px;
    }
}

/*program*/
.program-page .container {
    padding: calc(60px + 60px + 20px) 60px 0;
}

.lnb-wrapper {
    position: fixed;
    z-index: 999;
    top: 60px;
    left: 0;
    width: 100%;
    background: var(--g);
    display: flex;
    justify-content: center;
}

.lnb-wrapper > nav {
    display: flex;
    align-items: center;
}

@media screen and (max-width: 1280px) {
    .lnb-wrapper {
        display: block;
        top: 56px;
        overflow-x: auto;
    }

    .lnb-wrapper > nav {
        width: max-content;
    }
}

@media screen and (max-width: 1024px) {
    .program-page .container {
        padding: calc(56px + 56px + 6px) 12px 0;
    }
}

.program-page .page-sub-title {
    white-space: pre-wrap;
}

.program-page .page-info .table-wrapper {
    margin-bottom: 0;
}

.program-page .page-sub-title + .table-wrapper {
    margin-top: 32px;
}

@media screen and (max-width: 1024px) {
    .program-page .page-info {
        padding-bottom: 56px;
    }
}

.program-page .contents {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}

@media screen and (max-width: 1440px) {
    .program-page .contents {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 768px) {
    .program-page .contents {
        grid-template-columns: repeat(1, 1fr);
        gap: 28px;
    }
}

.program-page .card-img {
    position: relative;
    padding-top: 100%;
    overflow: hidden;
}

.program-page .card-img > img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.card-img--empty {
    background: var(--gr);
}

.program-sec--top {
    margin: 0 -60px;
}

.program-sec--top > img {
    display: block;
    width: 100%;
    height: auto;
}

.program-sec--info {
    margin-top: 20px;
    padding-bottom: 40px;
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 0 40px;
}

.program-sec--info .card-position {
    margin-top: 0;
}

.program-sec .table-wrapper {
    margin-bottom: 40px;
}

@media screen and (max-width: 1024px) {
    .program-sec--top {
        margin: 0 -12px;
    }

    .program-sec--top > img {
        margin-bottom: 20px;
    }

    .program-sec--info {
        margin-top: 0;
        padding-bottom: 20px;
        display: block;
    }

    .program-sec--info > .sec-col:last-child {
        margin-top: 22px;
    }

    .program-sec .table-wrapper {
        margin-bottom: 20px;
    }
}

.p-row {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 12px 40px;
}

.p-row > .reserv-btn {
    grid-area: 2 / 1 / 3 / 3;
}

.p-name {
    margin-bottom: 10px;
    font-weight: var(--fw-hd);
    line-height: 140%;
}

.p-desc p {
    font-size: var(--fz-label);
}

.program-page .sec-title {
    margin-bottom: 12px;
    font-size: var(--fz);
    font-weight: var(--fw-hd);
    line-height: 140%;
    letter-spacing: -0.01em;
}

.program-sec--p + .program-sec--p {
    margin-top: 20px;
}

.p-row + .p-row {
    margin-top: 20px;
}

.p-sns-list {
    display: flex;
    align-items: center;
    column-gap: 12px;

    margin-bottom: 14.5px;
}

.p-sns {
    display: flex;
    align-items: center;

    font-size: var(--fz-label);
    line-height: 150%;
    letter-spacing: -0.01em;
}

.p-sns > svg {
    display: block;
    width: 20px;
    height: 20px;
    margin-right: 6px;
}

.p-sns > svg.icon-pc {
    display: block;
}

.p-sns > svg.icon-m {
    display: none;
}

.p-row:last-child > .reserv-btn {
    margin-bottom: 0;
}

@media screen and (max-width: 1024px) {
    .p-row {
        display: block;
    }

    .p-img {
        margin-bottom: 12px;
    }

    .p-sns > svg.icon-pc {
        display: none;
    }

    .p-sns > svg.icon-m {
        display: block;
    }

    .p-row > .reserv-btn {
        margin-top: 20px;
    }
}

.program-page .layer-cont p + p {
    margin-top: 21px;
}

.program-sec--p > .p-row > .reserv-btn {
    margin-bottom: 40px;
}

.program-sec--p:last-child > .p-row > .reserv-btn {
    margin-bottom: 0;
}

/*fnb*/
.fnb-page .contents {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}

@media screen and (max-width: 1440px) {
    .fnb-page .contents {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 768px) {
    .fnb-page .contents {
        grid-template-columns: repeat(1, 1fr);
        gap: 28px;
    }
}

.fnb-page .page-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sort-list {
    display: flex;
    align-items: center;
    column-gap: 20px;
    margin-left: 16px;
}

.sort-list > * {
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    line-height: 130%;
    letter-spacing: -0.01em;
}

.sort-list > span {
    display: block;
    text-decoration: underline;
    cursor: pointer;
}

@media screen and (max-width: 768px) {
    .sort-list > * {
        font-size: var(--fz);
        font-weight: var(--fw-hd);
        line-height: 140%;
        letter-spacing: -0.01em;
    }
}

.fnb-page .layer-cont {
    padding: 0 60px;
}

.fnb-sec--top {
    margin-top: 20px;
    padding-bottom: 60px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0 40px;
}

.fnb-desc {
    margin-bottom: 40px;
}

.fnb-info {
    margin-bottom: 40px;
}

.dc {
    padding: 0 8px;
    width: fit-content;
    height: 29px;
    line-height: 29px;

    color: var(--wh);
    font-size: var(--fz-label);
    font-weight: var(--fw-hd);
    letter-spacing: -0.01em;

    background: var(--bk);
}

.fnb-sec--1,
.fnb-sec--2 {
    margin: 0 -60px;
    padding: 20px 60px 24px;
    border-top: 1px solid var(--bk);
}

.fnb-sec--1 {
    background: var(--b);
}

.fnb-sec--2 {
    background: var(--g);
    border-bottom: 1px solid var(--bk);
}

.fnb-row {
    display: grid;
    grid-template-columns: 160px 1fr;
    gap: 0 24px;
}

.fnb-row + .fnb-row {
    margin-top: 20px;
}

.fnb-img-s {
    width: 160px;
    height: 160px;
}

.fnb-img-s > img {

}

.fnb-cont em {
    display: block;
    margin-bottom: 12px;
    font-size: var(--fz);
    font-weight: var(--fw-hd);
    line-height: 140%;
    letter-spacing: -0.01em;
}

@media screen and (max-width: 1024px) {
    .fnb-page .layer-cont {
        padding: 0 12px;
    }

    .fnb-sec--top {
        display: flex;
        flex-direction: column-reverse;
        margin-top: 0;
        margin: 0 -12px;
        padding-bottom: 32px;
    }

    .sec-col--info {
        padding: 20px 12px;
    }

    .fnb-sec--1,
    .fnb-sec--2 {
        margin: 0 -12px;
        padding: 20px 12px 24px;
        border-top: 1px solid var(--bk);
    }
}

.card-img--thumb,
.fnb-img,
.fnb-img-s {
    border: 1px solid var(--bk);
}

.layer--jc .layer-top {
    background: var(--b);
    border-bottom: 1px solid var(--bk);
}

.layer--nw .layer-top {
    background: var(--g);
    border-bottom: 1px solid var(--bk);
}

.sec-wrapper {
    padding: 20px 60px 24px;
    margin: 0 -60px;
    border-bottom: 1px solid var(--bk);
}

@media screen and (max-width: 1024px) {
    .sec-wrapper {
        padding: 20px 12px 24px;
        margin: 0 -12px;
    }
}

/*res*/
.reserv-page .page-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.sec--cal {
    position: relative;
    display: none;
}

.calendar-wrapper--regular {
    position: absolute;
    top: 0;
    left: 0;
    padding-top: 60px;
    padding-right: 14.28%;
    width: 57.12%;

    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.cal-top {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding: 0 16px;
    height: 60px;
    line-height: 60px;
    border-bottom: 2px solid var(--bk);
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    letter-spacing: -0.01em;
}

.cal-item {
    padding: 16px;
}

.cal-title {
    margin-bottom: 6px;
    font-weight: var(--fw-hd);
    line-height: 140%;
    letter-spacing: -0.01em;
}

.cal-dates,
.cal-position {
    font-size: var(--fz-label);
    letter-spacing: -0.01em;
    line-height: 150%;
}

.cal-position.card-position {
    margin-top: 0;
}

.show-item {
    display: flex;
    justify-content: space-between;
    /*align-items: center;*/
    column-gap: 8px;
}

.show-label {
    font-size: var(--fz-label);
    letter-spacing: -0.01em;
    line-height: 150%;
}

.show-content {
    min-width: 112px;
}

.calendar-wrapper--weekly {
    display: flex;
    flex-wrap: wrap;
    row-gap: 12px;
}

.calendar-wrapper--weekly > .day-block {
    width: 14.28%;
}

@media screen and (max-width: 1680px) {
    .calendar-wrapper--weekly > .day-block {
        width: 20%;
    }

}

@media screen and (max-width: 1440px) {
    .calendar-wrapper--weekly > .day-block {
        width: 20%;
    }

}

.day-empty-block {
    width: 57.12%;
}

.day-header {
    padding: 0 16px;
    height: 60px;
    line-height: 60px;
    border-bottom: 2px solid var(--bk);
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    letter-spacing: -0.01em;
}

.sec--card {
    padding-top: 32px;
}

.card-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px
}

.card-day {
    margin-bottom: 12px;
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    line-height: 130%;
    letter-spacing: -0.01em;
}

.card-cont {
    aspect-ratio: 1 / 1;
    display: flex;
    flex-direction: column;
    padding: 24px 24px 0;

    position: relative;
    overflow: hidden;
}

.card-cont--d0 {
    background: var(--b);
}

.card-cont--d2 {
    background: var(--g);
}

.card-cont--d3 {
    background: var(--y);
}

.card-cont--d4 {
    background: var(--r);
}

.card-cont--d6 {
    background: var(--p);
}

.card-cont-category {
    margin-bottom: 8px;
    font-weight: var(--fw-hd);
    line-height: 140%;
}

.card-cont-title {
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    line-height: 130%;
    letter-spacing: -0.01em;
}

.card-cont-info {
    margin-top: auto;
    margin-bottom: 0;
}

.card-cont-desc {
    margin-bottom: 22px;
    min-height: 58px;
    line-height: 160%;
}

@media screen and (max-width: 1680px) {
    .card-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media screen and (max-width: 1440px) {
    .card-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 768px) {
    .card-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 28px;
    }

    .card-cont {
        margin: 0 -12px;
        padding: 16px 12px 12px;

        border-top: 1px solid var(--bk);
        border-bottom: 1px solid var(--bk);

        aspect-ratio: initial;
    }
}

@media screen and (max-width: 1024px) {
    .reserv-page .sort-list {
        display: none !important;
    }

    .sec--cal {
        display: none !important;
    }

    .card-cont {
        padding: 16px 12px 12px;
    }

    .card-day {
        margin-bottom: 8px;
    }
}

.card-cont .cal-position.card-position {
    margin-bottom: 0;
}

.main-sec .reserv-btn.cal-res-btn,
.reserv-page .reserv-btn.cal-res-btn {
    margin: -32px -24px 0;
    width: calc(100% + 48px);
    cursor: pointer;

    transform: translateY(100%);
}

.card-cont-info {
    transform: translateY(0);

    transition: transform 200ms linear;
}

@media (hover: hover) {
    .card-cont:hover .card-cont-info {
        transform: translateY(-56px);
    }
}

@media screen and (max-width: 1024px) {
    .main-sec .reserv-btn.cal-res-btn,
    .reserv-page .reserv-btn.cal-res-btn {
        margin: 22px -12px -12px;
        width: calc(100% + 24px);
        transform: translateY(0);
        background: transparent;
        color: var(--bk);
        font-size: var(--fz-title-2);
        font-weight: var(--fw-title-2);
        letter-spacing: -0.01em;
    }

    .main-sec .reserv-btn.cal-res-btn:after,
    .reserv-page .reserv-btn.cal-res-btn:after {
        width: 32px;
        height: 32px;
        background-image: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M22 14.4707H6V17.4707H22V14.4707Z' fill='black'/%3E%3Cpath d='M23.8788 13.8641L15.3936 22.3494L17.5149 24.4707L26.0002 15.9854L23.8788 13.8641Z' fill='black'/%3E%3Cpath d='M25.9999 15.9853L17.5146 7.5L15.3933 9.62132L23.8786 18.1066L25.9999 15.9853Z' fill='black'/%3E%3C/svg%3E%0A");
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
    }

    @media (hover: hover) {
        .card-cont:hover .card-cont-info {
            transform: translateY(0);
        }
    }
}

/*md*/
.md-page .contents {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
}

@media screen and (max-width: 1440px) {
    .md-page .contents {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 768px) {
    .md-page .contents {
        grid-template-columns: repeat(1, 1fr);
        gap: 28px;
    }
}

.md-page .page-sub-title + .table-wrapper {
    margin-top: 32px;
    margin-bottom: 0;
}

/*notice*/
@media (hover: hover) {
    .notice-page .content-row:hover {
        background: var(--y);
    }

    .notice-page .content-row:hover:after {
        opacity: 1;
        transform: translate(0, -50%);
    }
}

/*detail*/
.detail-content {
    margin: auto;
    width: 100%;
    height: 100%;
    max-width: 960px;
    background: var(--wh);
}

.detail-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0 44px 0 60px;
}

.detail-title {
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    line-height: 60px;
    letter-spacing: -0.01em;
}

.detail-cont {
    padding: 0 60px 40px;
}

.detail-cont strong {
    font-weight: var(--fw-hd);
}

.detail-cont p + p {
    margin-top: 40px;
}

@media screen and (max-width: 1024px) {
    .detail-top {
        padding: 0 12px;
    }

    .detail-title {
        line-height: 56px;
    }

    .detail-cont {
        padding: 0 12px 32px;
    }
}

/*main*/
.main {
    margin-bottom: 60px;
}

.main-text-wrapper {
    display: flex;
    justify-content: space-between;
}

.main-text {
    font-size: 80px;
    font-weight: 700;
    line-height: 100%;
    letter-spacing: -0.8px;
}

.main-text--i {
    padding-left: 68px;
}

.main-hero {
    margin: 0 -60px;
}

.main-hero-pc {
    display: block;
}

.main-hero-m {
    display: none;
}

@media screen and (max-width: 1024px) {
    .main {
        margin-bottom: 22px;
    }

    .main-text-wrapper {
        position: relative;
        z-index: 1;
        display: block;
    }

    .main-text {
        font-size: 40px;
        font-weight: 700;
        line-height: 100%;
        letter-spacing: -0.4px;
    }

    .main-text--i {
        padding-left: 32px;
    }

    .main-text-item:last-child {
        text-align: right;
    }

    .main-hero {
        margin: -20px -12px 0;
    }

    .main-hero-pc {
        display: none;
    }

    .main-hero-m {
        display: block;
    }
}

.main-page .sec--cal {
    display: block;
}

@media screen and (max-width: 1024px) {
    .main-page .sec--cal {
        display: block !important;
    }

    .calendar-wrapper--regular {
        position: static;
        padding-top: 0;
        padding-right: 0;
        width: 100%;
        display: block;
    }

    .cal-top {
        position: static;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0;
        width: 100%;
        height: 50px;
        line-height: 48px;
        border-bottom: 2px solid var(--bk);
        margin-bottom: 8px;
    }

    .cal-item {
        padding: 8px 0;
    }

    .calendar-wrapper--weekly {
        display: block;
    }

    .day-empty-block {
        display: none;
    }

    .calendar-wrapper--weekly > .day-block {
        width: 100%;
    }

    .day-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0;
        width: 100%;
        height: 50px;
        line-height: 48px;
        border-bottom: 2px solid var(--bk);
        margin-bottom: 8px;
    }

    .calendar-wrapper.calendar-wrapper--regular.is-collapsed .cal-top:after,
    .day-block.is-collapsed .day-header:after {
        content: '';
        display: block;
        width: 32px;
        height: 32px;
        background-image: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M14.5 6L14.5 26L17.5 26L17.5 6L14.5 6Z' fill='black'/%3E%3Cpath d='M6 17.5L26 17.5L26 14.5L6 14.5L6 17.5Z' fill='black'/%3E%3C/svg%3E%0A");

        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }

    .calendar-wrapper.calendar-wrapper--regular .cal-top:after,
    .day-block .day-header:after {
        content: '';
        display: block;
        width: 32px;
        height: 32px;
        background-image: url("data:image/svg+xml,%3Csvg width='32' height='32' viewBox='0 0 32 32' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 17.5L26 17.5L26 14.5L6 14.5L6 17.5Z' fill='black'/%3E%3C/svg%3E%0A");
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }

    .day-block {
        --collapsed-h: 100px;
    }

    .day-schedules {
        overflow: hidden;
    }

    .day-block.is-collapsed .day-schedules {
        height: var(--collapsed-h);
        mask-image: linear-gradient(to bottom, #000 10%, transparent);
    }

    @media (prefers-reduced-motion: reduce) {
        .day-schedules {
            transition: none;
        }
    }

    .calendar-wrapper.calendar-wrapper--regular.is-collapsed,
    .calendar-wrapper.calendar-wrapper--regular {
        --collapsed-preview: 120px;
        overflow: hidden;
    }

    .calendar-wrapper.calendar-wrapper--regular.is-collapsed {
        mask-image: linear-gradient(to bottom, #000 10%, transparent);
    }

    .day-block:nth-child(7) .day-header:after {
        display: none;

    }
}

@media (hover: hover) {
    .main-page .content-row:hover {
        background: var(--y);
    }

    .main-page .content-row:hover:after {
        opacity: 1;
        transform: translate(0, -50%);
    }
}

/*add*/
.btn-text {
    font-size: var(--fz);
    font-weight: var(--fw-hd);
    line-height: 140%;
    letter-spacing: -0.01em;

    cursor: pointer;
}

.sec-wrapper .sec-title,
.fnb-sec--1 .sec-title,
.fnb-sec--2 .sec-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/*map*/
.map-page .page-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.map-wrapper {
    display: grid;
    grid-template-columns: 1fr 560px;
    gap: 40px;
}

@media screen and (max-width: 1280px) {
    .map-wrapper {
        display: block;
    }
}

.map-info {
    display: none;
}

.mi-row {
    display: grid;
    grid-template-columns: 200px 1fr;
}

.mi-cont-row {
    display: grid;
    grid-template-columns: 100px 1fr;
}

.map-info-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
}

.info-mark-list {
    display: flex;
    align-items: center;
    column-gap: 12px;
}

.map-info-title {
    font-size: var(--fz-title-2);
    font-weight: var(--fw-title-2);
    line-height: 130%;
    letter-spacing: -0.01em;
}

.info-mark {
    display: flex;
    align-items: center;
    line-height: 160%
}

.info-mark:before {
    content: '';
    display: inline-block;
    margin-right: 8px;
    width: 16px;
    height: 16px;
}

.info-mark--g:before {
    background: var(--g);
}

.info-mark--b:before {
    background: var(--b);
}

.info-mark--p:before {
    background: var(--p);
}

.mi-row {
    border-top: 1px solid var(--bk);
}

.mi-row.on {
    background: var(--gr);
}

.mi-label {
    display: flex;
    align-items: center;
    padding: 8px 0 8px 12px;
    height: auto;
}

.mi-label span {
    display: block;
    position: relative;
    padding-left: 26px;
    padding-top: 2px;
    line-height: 160%;
    cursor: pointer;
}

.mi-label span:after {
    content: '';
    display: block;
    position: absolute;
    top: 5.5px;
    left: 0;
    width: 20px;
    height: 20px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.mi-label span:after {
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='21' viewBox='0 0 20 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_334_2269)'%3E%3Cpath d='M10.0449 0.500122C5.62849 0.500122 2.04492 4.10781 2.04492 8.55397C2.04492 8.91551 2.07549 9.26166 2.12133 9.61551C2.13661 9.76166 2.16718 9.91551 2.1901 10.0617C2.20538 10.1386 2.22066 10.2232 2.23594 10.3001C3.405 16.354 10.0449 20.5001 10.0449 20.5001C10.0449 20.5001 16.6848 16.354 17.8539 10.3001C17.8692 10.2232 17.8844 10.1463 17.8997 10.0617C17.9227 9.91551 17.9532 9.76166 17.9685 9.61551C18.0143 9.26935 18.0449 8.91551 18.0449 8.55397C18.0525 4.10781 14.469 0.500122 10.0449 0.500122ZM10.0449 11.6386C8.35628 11.6386 6.98857 10.2617 6.98857 8.56166C6.98857 6.86166 8.35628 5.48474 10.0449 5.48474C11.7335 5.48474 13.1013 6.86166 13.1013 8.56166C13.1013 10.2617 11.7335 11.6386 10.0449 11.6386Z' fill='black'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_334_2269'%3E%3Crect width='20' height='20' fill='white' transform='translate(0 0.5)'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
}

@media screen and (max-width: 1024px) {
    .mi-label span:after {
        background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.0359 2C6.50278 2 3.63593 4.88615 3.63593 8.44308C3.63593 8.73231 3.66038 9.00923 3.69705 9.29231C3.70928 9.40923 3.73373 9.53231 3.75207 9.64923C3.76429 9.71077 3.77652 9.77846 3.78874 9.84C4.72399 14.6831 10.0359 18 10.0359 18C10.0359 18 15.3479 14.6831 16.2831 9.84C16.2953 9.77846 16.3075 9.71692 16.3198 9.64923C16.3381 9.53231 16.3626 9.40923 16.3748 9.29231C16.4115 9.01539 16.4359 8.73231 16.4359 8.44308C16.442 4.88615 13.5752 2 10.0359 2ZM10.0359 10.9108C8.68501 10.9108 7.59084 9.80923 7.59084 8.44923C7.59084 7.08923 8.68501 5.98769 10.0359 5.98769C11.3868 5.98769 12.481 7.08923 12.481 8.44923C12.481 9.80923 11.3868 10.9108 10.0359 10.9108Z' fill='black'/%3E%3C/svg%3E%0A");
    }
}

.mic-label {
    display: flex;
    align-items: center;
    padding: 12px 0;
    height: auto;
}

.mic-cont {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 12px 0;
    height: auto;
}

.mi-cont-row + .mi-cont-row {
    border-top: 1px solid var(--bk);
}

.mi-row:last-child {
    border-bottom: 1px solid var(--bk);
}

.map-info-top--m {
    display: none;
}

@media screen and (max-width: 1280px) {
    .map-info-top--m {
        display: block;
    }

    .map-info-top--m > .map-info-title {
        display: none;
    }

    .map-info-top {
        display: block;
        margin: 20px 0;
    }

    .map-info-top > .map-info-title {
        display: none;
    }

    .mi-row {
        display: block;
    }

    .mi-row > .mi-cont {
        display: none;
    }

    .mi-label {
        position: relative;
        padding: 8px 0;
    }

    .mi-label:after {
        content: '';
        display: block;
        position: absolute;
        top: 50%;
        right: 8px;
        width: 12px;
        height: 12px;
        transform: translateY(-50%);
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none'%3E%3Cpath d='M2 4.15002L6 8.15002L10 4.15002' stroke='black' stroke-width='2' stroke-miterlimit='10'/%3E%3C/svg%3E");
        background-position: center;
        background-repeat: no-repeat;
        background-size: contain;
    }

    .mi-label.on:after {
        transform: translateY(-50%) rotate(180deg);
    }

    .mi-cont-row:first-child {
        border-top: 1px dashed var(--bk);
    }

    .mi-cont-row + .mi-cont-row {
        border-top: 1px dashed var(--bk);
    }

    .mi-cont-row:last-child {
        border-bottom: 0;
    }
}

/*add::main*/
.main-page {
    overflow-x: hidden;
}

.main-sec {
    margin-top: 60px;
}

.main-sec-title {
    margin-bottom: 8px;
    font-size: 36px;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: -0.36px;
}

.main-sec .swiper-p {
    padding: 40px 0;
    width: 100%;

    pointer-events: none;
}

.swiper-p .swiper-wrapper {
    transition-timing-function: linear !important;
}

.swiper-slide.partner-img {
    width: auto;
    height: 48px;
}

.partner-img > img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.swiper-c {
    padding-bottom: 60px;
}

.main-sec .card-block {
    width: 420px;
}

@media screen and (max-width: 1024px) {
    .main-sec {
        margin-top: 56px;
    }

    .main-sec .swiper-p {
        padding: 20px 0;
    }

    .swiper-c {
        padding-bottom: 56px;
    }

    .swiper-slide.partner-img {
        width: fit-content;
        height: 32px;
    }

    .partner-img > img {
        width: auto;
        height: 100%;
    }
}

/*.main-sec .reserv-btn {*/
/*    pointer-events: none;*/
/*}*/

@media screen and (max-width: 768px) {
    .swiper-c .swiper-wrapper {
        display: grid;
        grid-template-columns: repeat(1, 1fr);
        gap: 28px;
    }

    .main-sec .card-block {
        width: 100%;
    }
}

.share-btn {
    position: relative;
    display: inline-block;
    width: 36px;
    height: 100%;
    cursor: pointer;
}

.share-btn > svg {
    position: absolute;
    top: 50%;
    transform: translateY(-80%);
}

.share-btn-m {
    display: none;
}

@media screen and (max-width: 1024px) {
    .share-btn {
        display: none;
    }

    .share-btn-m {
        display: block;
        width: 56px;
        height: 56px;
        border-radius: 50%;
        overflow: hidden;
        position: fixed;
        z-index: 99;
        bottom: 20px;
        right: 10px;
    }
}