﻿
@media (min-width: 1440px) {
    /*sub 공통 css 시작*/
    .sub_banner { 
        height: 550px; 
        background: #f3f5f7; 
        position: relative; 
        margin-bottom:120px;
    }
    .bn_name { 
        position: absolute; 
        top: 50%;
        transform: translate(0, -50%); 
        letter-spacing: -1px; 
        padding-left: 5%; 
        display: flex;
        justify-content: center;
        align-items: flex-end;
        font-size: 90px; 
        font-weight:300;
        margin:0;
    }
    #section { 
        padding: 0 5%; 
        clear: both;
        overflow: hidden;
        display: flex;
        flex-wrap: wrap;
        gap:5%;
    }
    #section > div {
        box-sizing: border-box;
        vertical-align: middle;
    }
    #section .sub_left {
        width:55%;
    }
    #section .sub_right { 
        width: 40%; 
    }
    .sub_tit {
        font-size:30px;
        line-height:45px;
    }

    footer { 
        border-top: 1px solid #eee;
        margin-top:20vh;
    }
    /*sub 공통 css 끝*/

    /*location 오시는길*/
    .location_ul {
        margin-top:30px;
    }
    .location_ul li {
        padding:30px 40px;
        border-radius:20px;
        box-shadow:rgba(0,0,0,0.1) 5px 5px 10px ;
        margin-bottom:20px;
    }
    .location_ul li > h2 {
        font-size:21px;
        font-weight:600;
        color:#9ec317;
    }
    .location_ul li > .ctt {
        padding-top:5px;
    }
    .location_ul li:last-child .ctt {
        letter-spacing:0.5px;
    }


    /*Notice 아자고소식*/
    .total {
        font-size:20px;
        padding-bottom:5px;
    }
    .total span { 
        color: #9ec317; 
    }
    .noti_table {
        border-top:3px solid #333;
        text-align:center;
        width:100%;
    }
    .noti_table a {
        color:#333;
    }
    .noti_table > thead th {
        line-height:80px;
        background:#f3f5f7;
        font-size:20px;
        text-align:center;
        font-weight:bold;
    }
    .noti_table > thead th:first-child {
        width:10%;
    }
    .noti_table > thead th:nth-child(2) {
        width:60%;
    }
    .noti_table > thead th:last-child {
        width:12%;
    }

    .noti_table > tbody tr {
        line-height:90px;
        font-size:22px;
        border-bottom:1px solid #eee;
        cursor:pointer;
    }
    .noti_table > tbody tr td:hover a {
        font-weight:600;
        color:#9ec317;
        transition-duration: 0.15s;
        cursor:pointer;
    }
    .noti_detail {
        width:100%;
        border-top:3px solid #333;
        text-align:center;
    }
    .noti_detail > .title {
        font-size:30px;
        padding:30px 0 20px;
    }
    .noti_detail > .date {
        font-size:20px;
        color:#aaa;
        padding-bottom:20px;
        border-bottom:1px solid #eee;
    }
    .noti_detail > .cttbox {
        padding:2%;
        min-height:70vh;
        border-bottom:1px solid #333;
    }
    .list_btn {
        width:230px;
        background:#333;
        border:1px solid #333;
        color:#fff;
        text-align:center;
        font-size:24px;
        font-weight:600;
        padding:15px 0;
        cursor:pointer;
        margin:5vh auto;
    }
    .list_btn a {
        color:#fff;
        display:block;
    }
    .list_btn:hover {
        background:none;
        border:1px solid #333;
        transition-duration: 0.2s;
    }
    .list_btn:hover a {
        color:#333;
    }
    .pagination {
        margin:5vh auto;
        text-align:center;
    }
    .pagination ul {
        display: flex;
        justify-content: center;
        gap: 30px; /* padding 대신 간격 조절 */
        padding: 0;
        margin: 0;
    }
    .pagination ul li a {
        font-size:22px;
        color:#111;
        font-weight:bold;
        padding:0 5px;
    }
    .pagination ul li a:hover {
        color:#555;
        text-decoration:underline;
    }
    .pagination ul li.active a {
        color:#d50000;
    }


    /*inquiry 온라인문의*/
    .inq_form {
        border-top:3px solid #111;
        margin-top:20px;
    }
    .form_div {
        display:flex;
        align-items:center;
        margin-top:30px;
    }
    .form_div > label {
        width:19%;
        padding-left:1%;
        cursor:default;
        font-size:22px;
        font-weight:500;
    }
    .form_div > label > span, .form_textarea > label > span {
        color:#d50000;
        padding-left:5px;
    }
    .form_div > input[type="text"] {
        width:80%;
        font-size:20px;
        padding:10px;
        border-bottom:1px solid #eee;
    }
    .form_div > input[type="text"]::placeholder, .form_textarea > textarea::placeholder {
        color:#ccc;
        font-weight:200;
    }
    .form_div > input[type="text"]::-webkit-input-placeholder {
        color:#ccc;
    }
    .form_div > input[type="text"]:focus {
        outline:none;
    }
    .form_textarea {
        margin-top:30px;
    }
    .form_textarea > label {
        width:100%;
        padding-left:1%;
        cursor:default;
        font-size:22px;
        font-weight:500;
    }
    .form_textarea > textarea {
        border:1px solid #eee;
        width:98%;
        padding:2%;
        margin:1%;
        resize:none;
        font-size:20px;
    }
    .privacy {
        background:#f3f5f7;
        padding:50px;
        margin-bottom:30px;
    }
    .privacy > .section_div {
        margin-top:4vh;
        font-size:18px;
        line-height:28px;
    }
    .privacy > .section_div > strong {
        color:#9ec317;
        display:block;
        margin-bottom:10px;
        font-size:24px;
    }
    .agree_div {
        border-top:1px solid #eee;
        padding-top:5vh;
        margin-top:5vh;
        text-align:right;
    }
    .agree_div > [type="checkbox"] {
        appearance: none; /* 기본(네이티브) 모양을 제거 */
        box-sizing: border-box;
        background-clip: content-box;
        width: 1.25em;
        height: 1.25em;
        border: 1px solid #777;
        cursor: pointer;
        margin:0 3px;
    }
    .agree_div > [type="checkbox"]:checked {
        border-color: #9ec317;
        background-color: #9ec317;
    }
    .privacy_btn {
        background:#333;
        color:#fff;
        text-align:center;
        font-size:24px;
        font-weight:600;
        padding:20px 0;
        cursor:pointer;
    }
    .privacy_btn span {
        transition: transform 0.1s ease-out;
        display:inline-block;
    }
    .privacy_btn:hover span {
         animation: shakeLeft 1s infinite;
    }
    @keyframes shakeLeft {
        0% { transform: translateX(0); }
        30% { transform: translateX(-7px); }
        60% { transform: translateX(0); }
        100% { transform: translateX(0); }
    }
}



/* 노트북/기본 PC */
@media (min-width: 1024px) and (max-width: 1439px) {
     /*sub 공통 css 시작*/
    .sub_banner { 
        height: 500px; 
        background: #f3f5f7; 
        position: relative; 
        margin-bottom:100px;
    }
    .bn_name { 
        position: absolute; 
        top: 50%;
        transform: translate(0, -50%); 
        letter-spacing: -1px; 
        padding-left: 5%; 
        display: flex;
        justify-content: center;
        align-items: flex-end;
        font-size: 85px; 
        font-weight:300;
        margin:0;
    }
    #section { 
        padding: 0 5%; 
        clear: both;
        overflow: hidden;
        display: flex;
        flex-wrap: wrap;
        gap:5%;
    }
    #section > div {
        box-sizing: border-box;
        vertical-align: middle;
    }
    #section .sub_left {
        width:50%;
    }
    #section .sub_right { 
        width: 45%; 
    }
    .sub_tit {
        font-size:30px;
        line-height:42px;
    }

    footer { 
        border-top: 1px solid #eee;
        margin-top:20vh;
    }
    /*sub 공통 css 끝*/

    /*location 오시는길*/
    .location_ul {
        margin-top:30px;
    }
    .location_ul li {
        padding:25px 30px;
        border-radius:20px;
        box-shadow:rgba(0,0,0,0.1) 5px 5px 10px ;
        margin-bottom:20px;
    }
    .location_ul li > h2 {
        font-size:21px;
        font-weight:600;
        color:#9ec317;
    }
    .location_ul li > .ctt {
        padding-top:5px;
    }


    /*Notice 아자고소식*/
    .total {
        font-size:20px;
        padding-bottom:5px;
    }
    .total span { 
        color: #9ec317; 
    }
    .noti_table {
        border-top:3px solid #333;
        text-align:center;
        width:100%;
    }
    .noti_table a {
        color:#333;
    }
    .noti_table > thead th {
        line-height:80px;
        background:#f3f5f7;
        font-size:20px;
        text-align:center;
        font-weight:bold;
    }
    .noti_table > thead th:first-child {
        width:10%;
    }
    .noti_table > thead th:nth-child(2) {
        width:60%;
    }
    .noti_table > thead th:last-child {
        width:12%;
    }

    .noti_table > tbody tr {
        line-height:90px;
        font-size:20px;
        border-bottom:1px solid #eee;
        cursor:pointer;
    }
    .noti_table > tbody tr td:hover a {
        font-weight:600;
        color:#9ec317;
        transition-duration: 0.15s;
        cursor:pointer;
    }
    .noti_detail {
        width:100%;
        border-top:3px solid #333;
        text-align:center;
    }
    .noti_detail > .title {
        font-size:30px;
        padding:30px 0 20px;
    }
    .noti_detail > .date {
        font-size:20px;
        color:#aaa;
        padding-bottom:20px;
        border-bottom:1px solid #eee;
    }
    .noti_detail > .cttbox {
        padding:2%;
        min-height:70vh;
        border-bottom:1px solid #333;
    }
    .list_btn {
        width:230px;
        background:#333;
        border:1px solid #333;
        color:#fff;
        text-align:center;
        font-size:24px;
        font-weight:600;
        padding:20px 0;
        cursor:pointer;
        margin:5vh auto;
    }
    .list_btn a {
        color:#fff;
        display:block;
    }
    .list_btn:hover {
        background:none;
        border:1px solid #333;
        transition-duration: 0.2s;
    }
    .list_btn:hover a {
        color:#333;
    }
    .pagination {
        margin:5vh auto;
        text-align:center;
    }
    .pagination ul li {
        float:left;
        padding:0 20px;
    }
    .pagination ul li a {
        font-size:22px;
        color:#111;
        font-weight:bold;
    }
    .pagination ul li.active a {
        color:#d50000;
    }


    /*inquiry 온라인문의*/
    .inq_form {
        border-top:3px solid #111;
        margin-top:20px;
    }
    .form_div {
        display:flex;
        align-items:center;
        margin-top:30px;
    }
    .form_div > label {
        width:19%;
        padding-left:1%;
        cursor:default;
        font-size:21px;
        font-weight:500;
    }
    .form_div > label > span, .form_textarea > label > span {
        color:#d50000;
        padding-left:5px;
    }
    .form_div > input[type="text"] {
        width:80%;
        font-size:19px;
        padding:10px;
        border-bottom:1px solid #eee;
    }
    .form_div > input[type="text"]::placeholder, .form_textarea > textarea::placeholder {
        color:#ccc;
        font-weight:200;
    }
    .form_div > input[type="text"]::-webkit-input-placeholder {
        color:#ccc;
    }
    .form_div > input[type="text"]:focus {
        outline:none;
    }
    .form_textarea {
        margin-top:30px;
    }
    .form_textarea > label {
        width:100%;
        padding-left:1%;
        cursor:default;
        font-size:21px;
        font-weight:500;
    }
    .form_textarea > textarea {
        border:1px solid #eee;
        width:98%;
        padding:2%;
        margin:1%;
        resize:none;
        font-size:20px;
    }
    .privacy {
        background:#f3f5f7;
        padding:35px;
        margin-bottom:20px;
    }
    .privacy > .section_div {
        margin-top:4vh;
        font-size:16px;
    }
    .privacy > .section_div > strong {
        color:#9ec317;
        display:block;
        margin-bottom:10px;
        font-size:21px;
    }
    .agree_div {
        border-top:1px solid #eee;
        padding-top:4vh;
        margin-top:4vh;
        text-align:right;
    }
    .agree_div > [type="checkbox"] {
        appearance: none; /* 기본(네이티브) 모양을 제거 */
        box-sizing: border-box;
        background-clip: content-box;
        width: 1.25em;
        height: 1.25em;
        border: 1px solid #777;
        cursor: pointer;
        margin:0 3px;
    }
    .agree_div > [type="checkbox"]:checked {
        border-color: #9ec317;
        background-color: #9ec317;
    }
    .privacy_btn {
        background:#333;
        color:#fff;
        text-align:center;
        font-size:22px;
        font-weight:600;
        padding:20px 0;
        cursor:pointer;
    }
    .privacy_btn span {
        transition: transform 0.1s ease-out;
        display:inline-block;
    }
    .privacy_btn:hover span {
         animation: shakeLeft 1s infinite;
    }
    @keyframes shakeLeft {
        0% { transform: translateX(0); }
        30% { transform: translateX(-7px); }
        60% { transform: translateX(0); }
        100% { transform: translateX(0); }
    }
}

/* 태블릿 */
@media (min-width: 768px) and (max-width: 1023px) {
    /*sub 공통 css 시작*/
    .sub_banner { 
        height: 40vh; 
        background: #f3f5f7; 
        position: relative; 
        margin-bottom:5vh;
    }
    .bn_name { 
        position: absolute; 
        top: 50%;
        transform: translate(0, -50%); 
        letter-spacing: -1px; 
        padding-left: 5%; 
        display: flex;
        justify-content: center;
        align-items: flex-end;
        font-size: 6rem; 
        font-weight:500;
        margin:0;
    }
    #section { 
        padding: 0 5%; 
        clear: both;
        overflow: hidden;
        flex-wrap: wrap;
    }
    #section > div {
        box-sizing: border-box;
        vertical-align: middle;
        width:100%;
        padding-bottom:3vh;
    }
    .sub_tit {
        font-size:2.5rem;
        line-height:3.3rem;
    }
    footer { 
        border-top: 1px solid #eee;
        margin-top:5vh;
    }
    /*sub 공통 css 끝*/

    /*location 오시는길*/
    .location_ul {
        margin-top:2vh;
    }
    .location_ul li {
        padding:15px 25px;
        border-radius:20px;
        box-shadow:rgba(0,0,0,0.1) 5px 5px 10px ;
        margin-bottom:20px;
    }
    .location_ul li > h2 {
        font-size:2rem;
        font-weight:600;
        color:#9ec317;
    }
    .location_ul li > .ctt {
        padding-top:5px;
    }


    /*Notice 아자고소식*/
    .total {
        font-size:2rem;
        padding-bottom:5px !important;
    }
    .total span { 
        color: #9ec317; 
    }
    .noti_table {
        border-top:3px solid #333;
        text-align:center;
        width:100%;
    }
    .noti_table a {
        color:#333;
    }
    .noti_table > thead th {
        line-height:6vh;
        background:#f3f5f7;
        font-size:2rem;
        text-align:center;
        font-weight:bold;
    }
    .noti_table > thead th:first-child {
        width:12%;
    }
    .noti_table > thead th:nth-child(2) {
        width:60%;
    }
    .noti_table > thead th:last-child {
        width:15%;
    }

    .noti_table > tbody tr {
        line-height:7vh;
        font-size:1.8rem;
        border-bottom:1px solid #eee;
        cursor:pointer;
    }
    .noti_table > tbody tr td:hover a {
        font-weight:600;
        color:#9ec317;
        transition-duration: 0.15s;
        cursor:pointer;
    }
    .noti_detail {
        width:100%;
        border-top:3px solid #333;
        text-align:center;
    }
    .noti_detail > .title {
        font-size:2.5rem;
        padding-top:3vh;
    }
    .noti_detail > .date {
        font-size:2rem;
        color:#aaa;
        padding:2vh 0;
        border-bottom:1px solid #eee;
    }
    .noti_detail > .cttbox {
        padding:4%;
        min-height:70vh;
        border-bottom:1px solid #333;
    }
    .list_btn {
        width:35% !important;
        background:#333;
        border:1px solid #333;
        color:#fff;
        text-align:center;
        cursor:pointer;
        margin:2vh auto;
        padding:2.5vh 0 !important;
    }
    .list_btn a {
        color:#fff;
        display:block;
        font-size:2.2rem;
        font-weight:600;
    }
    .list_btn:hover {
        background:none;
        border:1px solid #333;
        transition-duration: 0.2s;
    }
    .list_btn:hover a {
        color:#333;
    }
    .pagination {
        margin:2vh auto;
        text-align:center;
    }
    .pagination ul {
        display:inline-block;
    }
    .pagination ul li {
        float:left;
        padding:0 15px;
    }
    .pagination ul li a {
        font-size:1.8rem;
        color:#111;
        font-weight:bold;
    }
    .pagination ul li.active a {
        color:#d50000;
    }


    /*inquiry 온라인문의*/
    .inq_form {
        border-top:3px solid #111;
        margin-top:2vh;
    }
    .form_div {
        display:flex;
        align-items:center;
        margin-top:2vh;
    }
    .form_div > label {
        width:19%;
        padding-left:1%;
        cursor:default;
        font-size:2rem;
        font-weight:500;
    }
    .form_div > label > span, .form_textarea > label > span {
        color:#d50000;
        padding-left:5px;
    }
    .form_div > input[type="text"] {
        width:80%;
        font-size:1.8rem;
        padding:10px;
        border-bottom:1px solid #eee;
    }
    .form_div > input[type="text"]::placeholder, .form_textarea > textarea::placeholder {
        color:#ccc;
        font-weight:200;
    }
    .form_div > input[type="text"]::-webkit-input-placeholder {
        color:#ccc;
    }
    .form_div > input[type="text"]:focus {
        outline:none;
    }
    .form_textarea {
        margin-top:30px;
    }
    .form_textarea > label {
        width:100%;
        padding-left:1%;
        cursor:default;
        font-size:1.8rem;
        font-weight:500;
    }
    .form_textarea > textarea {
        border:1px solid #eee;
        width:98%;
        padding:2%;
        margin:1%;
        resize:none;
        font-size:1.8rem;
    }
    .privacy {
        background:#f3f5f7;
        padding:40px 30px;
        margin-bottom:2vh;
    }
    .privacy > .section_div {
        margin-top:2vh;
        font-size:16px;
    }
    .privacy > .section_div > strong {
        color:#9ec317;
        display:block;
        margin-bottom:10px;
        font-size:2rem;
    }
    .agree_div {
        border-top:1px solid #eee;
        padding-top:4vh;
        margin-top:4vh;
        text-align:right;
    }
    .agree_div > [type="checkbox"] {
        appearance: none; /* 기본(네이티브) 모양을 제거 */
        box-sizing: border-box;
        background-clip: content-box;
        width: 1.25em;
        height: 1.25em;
        border: 1px solid #777;
        cursor: pointer;
        margin:0 3px;
    }
    .agree_div > [type="checkbox"]:checked {
        border-color: #9ec317;
        background-color: #9ec317;
    }
    .privacy_btn {
        background:#333;
        color:#fff;
        text-align:center;
        font-size:2.2rem;
        font-weight:600;
        padding:20px 0;
        cursor:pointer;
    }
    .privacy_btn span {
        transition: transform 0.1s ease-out;
        display:inline-block;
    }
    .privacy_btn:hover span {
         animation: shakeLeft 1s infinite;
    }
    @keyframes shakeLeft {
        0% { transform: translateX(0); }
        30% { transform: translateX(-7px); }
        60% { transform: translateX(0); }
        100% { transform: translateX(0); }
    }
}

/* 모바일 이하 */
@media (max-width: 767px) {
    /*sub 공통 css 시작*/
    .sub_banner { 
        height: 40vh; 
        background: #f3f5f7; 
        position: relative; 
        margin-bottom:7vh;
    }
    .bn_name { 
        position: absolute; 
        top: 50%;
        transform: translate(0, -50%); 
        letter-spacing: -1px; 
        padding-left: 5%; 
        display: flex;
        justify-content: center;
        align-items: flex-end;
        font-size: 4.5rem; 
        font-weight:300;
        margin:0;
    }
    #section { 
        padding: 0 5%; 
        clear: both;
        overflow: hidden;
        flex-wrap: wrap;
    }
    #section > div {
        box-sizing: border-box;
        vertical-align: middle;
        width:100%;
        padding-bottom:2vh;
    }
    .sub_tit {
        font-size:2.2rem;
        line-height:3rem;
    }
    footer { 
        border-top: 1px solid #eee;
        margin-top:5vh;
    }
    /*sub 공통 css 끝*/

    /*location 오시는길*/
    .location_ul {
        margin-top:2.5vh;
    }
    .location_ul li {
        padding:5%;
        border-radius:20px;
        box-shadow:rgba(0,0,0,0.1) 5px 5px 10px ;
        margin-bottom:2vh;
    }
    .location_ul li > h2 {
        font-size:1.8rem;
        font-weight:600;
        color:#9ec317;
    }
    .location_ul li > .ctt {
        padding-top:5px;
        font-size:1.4rem;
    }


    /*Notice 아자고소식*/
    .total {
        font-size:1.4rem;
        padding-bottom:5px !important;
    }
    .total span { 
        color: #9ec317; 
    }
    .noti_table {
        border-top:3px solid #333;
        text-align:center;
        width:100%;
    }
    .noti_table a {
        color:#333;
    }
    .noti_table > thead th {
        line-height:7vh;
        background:#f3f5f7;
        font-size:1.6rem;
        text-align:center;
        font-weight:bold;
    }
    .noti_table > thead th:first-child {
        width:15%;
    }
    .noti_table > thead th:nth-child(2) {
        width:60%;
        font-size:1.3rem !important;
    }
    .noti_table > thead th:last-child {
        width:15%;
        display:none;
    }
    .noti_table > tbody tr td:last-child {
        display:none;
    }
    .noti_table > tbody tr {
        font-size:1.3rem;
        border-bottom:1px solid #eee;
        cursor:pointer;
    }
    .noti_table > tbody tr td {
        padding:2.5vh 0;
    }
    .noti_table > tbody tr td:hover a {
        font-weight:600;
        color:#9ec317;
        transition-duration: 0.15s;
        cursor:pointer;
    }
    .noti_detail {
        width:100%;
        border-top:3px solid #333;
        text-align:center;
    }
    .noti_detail > .title {
        font-size:2rem;
        padding-top:3vh;
    }
    .noti_detail > .date {
        font-size:1.2rem;
        color:#aaa;
        padding:1vh 0 2vh;
        border-bottom:1px solid #eee;
    }
    .noti_detail > .cttbox {
        padding:4%;
        min-height:70vh;
        border-bottom:1px solid #333;
        font-size:1.3rem;
    }
    .list_btn {
        width:35% !important;
        background:#333;
        border:1px solid #333;
        color:#fff;
        text-align:center;
        cursor:pointer;
        margin:2vh auto 5vh;
        padding:2vh 0 !important;
    }
    .list_btn a {
        color:#fff;
        display:block;
        font-size:1.6rem;
        font-weight:600;
    }
    .list_btn:hover {
        background:none;
        border:1px solid #333;
        transition-duration: 0.2s;
    }
    .list_btn:hover a {
        color:#333;
    }
    .pagination {
        margin:3vh auto;
        text-align:center;
    }
    .pagination ul {
        display:inline-block;
    }
    .pagination ul li {
        float:left;
        padding:0 10px;
    }
    .pagination ul li a {
        font-size:1.4rem;
        color:#111;
        font-weight:bold;
        padding:0 3px;
    }
    .pagination ul li.active a {
        color:#d50000;
    }


    /*inquiry 온라인문의*/
    .inq_form {
        border-top:3px solid #111;
        margin-top:2vh;
    }
    .form_div {
        display:flex;
        align-items:center;
        margin-top:2vh;
    }
    .form_div > label {
        width:24%;
        padding-left:1%;
        cursor:default;
        font-size:1.6rem;
        font-weight:500;
    }
    .form_div > label > span, .form_textarea > label > span {
        color:#d50000;
        padding-left:5px;
    }
    .form_div > input[type="text"] {
        width:75%;
        font-size:1.2rem;
        padding:10px;
        border-bottom:1px solid #eee;
    }
    .form_div > input[type="text"]::placeholder, .form_textarea > textarea::placeholder {
        color:#ccc;
        font-weight:200;
    }
    .form_div > input[type="text"]::-webkit-input-placeholder {
        color:#ccc;
    }
    .form_div > input[type="text"]:focus {
        outline:none;
    }
    .form_textarea {
        margin-top:30px;
    }
    .form_textarea > label {
        width:100%;
        padding-left:1%;
        cursor:default;
        font-size:1.6rem;
        font-weight:500;
    }
    .form_textarea > textarea {
        border:1px solid #eee;
        width:98%;
        padding:3%;
        margin:1%;
        resize:none;
        font-size:1.4rem;
    }
    .privacy {
        background:#f3f5f7;
        padding:5%;
        margin-bottom:2vh;
    }
    .privacy > .section_div {
        margin-top:2vh;
        font-size:1.3rem;
        line-height:2rem;
    }
    .privacy > .section_div > strong {
        color:#9ec317;
        display:block;
        margin-bottom:5px;
        font-size:1.6rem;
    }
    .agree_div {
        border-top:1px solid #eee;
        padding-top:4vh;
        margin-top:4vh;
        text-align:right;
        font-size:1.2rem;
    }
    .agree_div > [type="checkbox"] {
        appearance: none; /* 기본(네이티브) 모양을 제거 */
        box-sizing: border-box;
        background-clip: content-box;
        width: 1em;
        height: 1em;
        border: 1px solid #777;
        cursor: pointer;
        margin:0 3px;
    }
    .agree_div > [type="checkbox"]:checked {
        border-color: #9ec317;
        background-color: #9ec317;
    }
    .privacy_btn {
        background:#333;
        color:#fff;
        text-align:center;
        font-size:1.6rem;
        font-weight:600;
        padding:10px 0;
        cursor:pointer;
    }
    .privacy_btn span {
        transition: transform 0.1s ease-out;
        display:inline-block;
    }
    .privacy_btn img {
        width:5%;
    }
    .privacy_btn:hover span {
         animation: shakeLeft 1s infinite;
    }
    @keyframes shakeLeft {
        0% { transform: translateX(0); }
        30% { transform: translateX(-7px); }
        60% { transform: translateX(0); }
        100% { transform: translateX(0); }
    }
}