@charset "utf-8";

.ptb180 {
    padding-top: 180px;
    padding-bottom: 180px;
}

.pt160 {
    padding-top: 16rem;
}

.pd158 {
    padding: 15rem 0 8rem;
}

.pd1565 {
    padding: 15rem 0 6.5rem;
}

.bg_gray {
    background-color: #f5f5f5;
}

.bgf7 {
    background-color: #F7F7F7;
}

.bgee {
    background-color: #EDECE9;
}

.bg_cg{
    background: url('/img/sub/m42_sec03_bg.jpg') no-repeat center center/cover;
}

strong {
    font-weight: 500;
}

.sec06 {
    background: transparent;
}

.tac {
    text-align: center;
    margin-bottom: 100px;
}

/* 흘러가는 글자 */
.marquee_wr {
    width: 100%;
    height: 7vw;
    min-height: 80px;
    margin: auto;
    overflow: hidden;
    position: relative;
    z-index: 1;
}

.marquee {
    width: 200%;
    font-size: 120px;
    font-weight: 300;
    color: #EEEEEE;
    opacity: 0.5;
    position: absolute;
    top: 0;
    white-space: nowrap;
    text-transform: uppercase;
    animation: marquee 40s linear infinite;
    font-family: 'Pretendard';
}

@keyframes marquee {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-100%);
    }
}

/* 흘러가는 글자 */

/* 서브 비주얼 부분 */

.sub_visual {
    width: 1850px;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    margin-top: 96px;
    border-radius: 30px;
}

.sub_visual .inner {
    width: 1850px;
    margin: 0 auto;
    height: 550px;
    overflow: hidden;
}


.sub_visual_bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    z-index: -1;
    transform: translateX(-50%);
    background: no-repeat center center/cover;
    animation: zoom 2s linear both;
}


@keyframes tit_ani {
    0% {
        opacity: 0;
        transform: translate3d(0, 50%, 0);
    }

    100% {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}


@keyframes zoom {

    0% {
        transform: translateX(-50%) scale(1.1);
    }

    100% {
        transform: translateX(-50%) scale(1);
    }
}

.sub_txt_box.inner {
    position: relative;
    top: 165px;
    left: 188px;
    height: auto;
}

.sub_txt_box {
    color: #fff;
}

.sub_visual .sub_txt_box {
    animation: tit_ani 1.2s linear forwards;
}

.sub_txt_box .sub_bn_sub_tit {
    font-size: 28px;
}

.sub_txt_box .sub_bn_tit {
    font-size: 55px;
    font-weight: 600;
    margin-top: 12px;
    margin-bottom: 30px;
}

.sub_txt_box .sub_bn_desc {
    font-size: 20px;
}

/* 서브 비주얼 부분 */

/* 서브 snb메뉴 */

#snb {
    background: rgba(255, 255, 255, 0.4);
    position: relative;
    height: 60px;
    margin-top: 490px;
}

#snb .inner ul {
    width: 100%;
    display: flex;
    justify-content: center;
}

#snb .inner ul li {
    width: 11%;
    height: 60px;
}


#snb .inner ul li a {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #6C5443;
    font-size: 18px;
    font-weight: 500;
    transition: .5s;
    text-align: center;
}

#snb .inner ul li a:hover {
    background-color: rgba(108, 84, 67, 0.5);
    color: #fff;
}

#snb .inner ul li.active {
    background: #6C5443;
}

#snb .inner ul li.active a {
    color: #fff;
}

#hd.open #gnb>ul>li:nth-of-type(1)>a {
    color: #222;
}

#hd.open #gnb>ul>li:nth-of-type(3)>a {
    color: #AA815F;
}

.sub_ttl_row {
    text-align: center;
    position: relative;
}

.sub_ttl_row .ttl {
    font-size: 4.2rem;
    line-height: 1.6;
    margin-bottom: 2.6rem;
}

.sub_ttl_row .ttl b {
    font-size: 5rem;
    font-weight: 600;
    color: var(--main-color);
}

.sub_ttl_row .desc {
    font-size: 3.5rem;
    margin-top: 20.1rem;
}

.down_one .line {
    height: 0%;
    position: absolute;
    top: 158px;
    left: 50%;
    width: 2px;
    transform: translateX(-50%);
    --grad-opacity-mid: 0.5;
    --grad-opacity-end: 1;
    background: linear-gradient(180deg, rgba(170, 129, 94, 0) 0%,
            rgba(167, 111, 88, var(--grad-opacity-mid)) 50%,
            rgba(167, 111, 88, var(--grad-opacity-end)) 100%);
    transition: all 1s 0.5s;
}

.down_one .line .dot {
    position: absolute;
    width: 2.5rem;
    bottom: -1em;
    left: 50%;
    transform: translateX(-50%);
}

.down_one .line .dot svg {
    display: block;
    width: 100%;
    fill: none;
    background: transparent;
}

.sub_ttl_row.aos-animate .down_one .line {
    height: 38%;
}

/* 서브 snb메뉴 */

/* m11 */
.fixb_row {
    width: 100%;
    text-align: center;
}

.fixb_row h3 {
    color: #fff;
    font-size: 4.5rem;
    font-weight: 600;
    padding-top: 3.5rem;
    margin-bottom: 4.9rem;
    background: url('/img/sub/fixed_ico_h3.png') no-repeat top center/35px;
}

.fixb_row h3 span {
    color: #E4D3B9;
}

.fixb_row .desc {
    font-size: 2.5rem;
    line-height: 1.6;
    color: #CECECE;
}

.fixb_row .desc b {
    color: #fff;
    font-weight: 600;
}

.con0101 .fixb_row {
    padding: 12rem 0 8rem;
    min-height: 635px;
    background: url('/img/sub/m11_sec02_bg.jpg') no-repeat center center/cover;
    background-attachment: fixed;
}

.con0101 .sec1 {
    padding-bottom: 10rem;
}

.dl_row2_list {
    margin-top: 7.8rem;
}

.dl_row2_list li {
    display: flex;
    gap: 8rem;
    align-items: center;
}

.dl_row2_list li+li {
    margin-top: 7.6rem;
}

.dl_row2_list .imgbox {
    width: 50%;
}

.dl_row2_list .txtbox {
    width: 44.74%;
}

.dl_row2_list .subject {
    font-size: 4.5rem;
    font-weight: 600;
    margin-bottom: 4rem;
}

.dl_row2_list .subject span {
    color: var(--main-color);
}

.dl_row2_list .disc {
    color: #555;
    font-size: 2.3rem;
    line-height: 1.6;
    word-break: keep-all;
}

.con0101 .sec3 {
    padding: 16rem 0 13.8rem;
}

/* m11 */

/* m12 */

.con0102 .sec2 {
    padding: 9.4rem 0;
    text-align: center;
    background: url('/img/sub/m12_sec02_img.jpg') no-repeat center center/cover;
}

.con0102 .hmy_txt {
    color: #fff;
    font-size: 2.5rem;
    padding-top: 7.5rem;
    font-weight: 300;
    background: url('/img/sub/logo_ico50x52.png') no-repeat top center/5rem;
}

.con0102 .hmy_txt span {
    color: #E4D3B9;
    font-weight: 500;
}

.con0102 .sec3 {
    padding: 18.1rem 0 19.3rem;
}

.doc_int_row .top {
    margin-bottom: 4.5rem;
}

.doc_int_row .subject {
    font-size: 2.6rem;
    color: #777;
    margin-bottom: 0.5rem;
}

.doc_int_row .name {
    font-size: 5rem;
    color: #BBB;
}

.doc_int_row .name b {
    color: #222;
    font-weight: 600;
}

.doc_int_row .bot {
    display: flex;
    gap: 6.8rem;
}

.doc_int_row .txtbox {
    display: flex;
    gap: 8rem;
}

.doc_int_row .txtbox dl dt {
    width: 13.5rem;
    line-height: 4rem;
    font-size: 2.2rem;
    color: #fff;
    text-align: center;
    margin-bottom: 1.8rem;
    border-radius: 5rem;
    background-color: var(--main-color);
}

.doc_int_row .txtbox dl dd {
    color: #444;
    font-size: 2rem;
    line-height: 1.6;
    position: relative;
    padding-left: 1.8rem;
}

.doc_int_row .txtbox dl dd::before {
    content: '·';
    font-size: 2rem;
    line-height: 1.6;
    font-weight: 900;
    position: absolute;
    top: 0;
    left: 0;
}

/* m12 */

/* m13 장비소개 */

.equip_slide_wr {
    width: 1064px;
    height: 537px;
    position: relative;
    background: #F6F6F6;
    border-radius: 50px;
    margin: 0 auto;
    margin-bottom: 150px;
    margin-top: 100px;

}

.equip_slide_wr button {
    position: absolute;
    bottom: 38%;
    left: -13%;
    transition: .3s;
    z-index: 10;
}

.equip_slide_wr button:hover {
    color: #888;
}

.equip_slide_wr button.equip_next {
    width: 100%;
    margin-left: 116%;
}

.equip_slide .swiper-slide {
    display: flex;
    padding: 70px 70px 70px 70px;
    column-gap: 60px;
}

.equip_slide .swiper-slide .img_sec {
    width: 300px;
    height: 400px;
    flex-shrink: 0;
    border-radius: 50px;
    box-shadow: 0 0 15px rgba(0, 0, 0, .07);
    overflow: hidden;
}

.equip_slide .txt_sec {
    width: 550px;
}

.equip_slide .ttg {
    font-size: 28px;
    font-weight: 500;
    color: #AA815F;
    margin-bottom: 20px;
    padding-top: 40px;
}

.equip_slide .subject {
    font-size: 33px;
    font-weight: 600;
    margin-bottom: 40px;
}

.equip_slide .subject::after {
    content: "";
    display: block;
    height: 1px;
    background: #BBBBBB;
    margin-top: 40px;
    width: 100%;
}

.equip_slide .desc {
    line-height: 1.7;
    font-size: 20px;
    word-break: keep-all;
}

.equip_slide_wr .equip_pagination {
    position: absolute;
    text-align: center;
    bottom: -50px;
}

.equip_slide_wr .equip_pagination .swiper-pagination-bullet {
    width: 12px;
    height: 12px;
    margin: 0 12px;
}

.equip_slide_wr .equip_pagination .swiper-pagination-bullet-active {
    background: #AA815F;
}

.equip_list_wr {
    width: 1520px;
    margin: auto;
}

.equip_list {
    display: flex;
    flex-wrap: wrap;
    column-gap: 40px;
    row-gap: 50px;
    margin-bottom: 200px;
}

.equip_list li {
    width: 350px;
    cursor: pointer;
}

.equip_list figure {
    position: relative;
}

.equip_list figure img {
    border: 1px solid #CDCDCD;
    border-radius: 20px;
}

.equip_list figure::before {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    border: solid 3px #AA815F;
    border-radius: 20px;
    transition: opacity 0.3s;
    opacity: 0;
}

.equip_list figure:hover::before {
    opacity: 1;
}

.equip_list .act figure::before {
    opacity: 1;
}

.equip_list .txtbox {
    text-align: center;
    margin-top: 25px;
}

.equip_list .ttg {
    font-size: 20px;
    color: #AA815F;
    margin-bottom: 10px;
}

.equip_list .subject {
    color: #000;
    font-size: 25px;
    font-weight: 500;
}

/* m13 장비소개 */

/* m14 둘러보기 */

.around_slide_wr {
    margin-top: 200px;
}

.ar_slide .swiper-slide {
    width: 1000px;
    height: 600px;
    border-radius: 30px;
    overflow: visible;
    transition: all 0.6s ease;
    transform: scale(0.84);
    filter: brightness(0.7);
}

.ar_slide .swiper-slide .img_sec {
    width: 100%;
    height: 100%;
    border-radius: 30px;
    overflow: hidden;
}

.ar_slide .swiper-slide .img_sec img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ar_slide .swiper-slide-active {
    transform: scale(1);
    filter: brightness(1);
}

.ar-scrollbar-container {
    width: 52%;
    margin: 40px auto 0;
    position: relative;
}

.ar-swiper-scrollbar {
    position: relative;
    width: 100% !important;
    height: 3px;
    background: #f1f1f1;
    left: 0 !important;
}

.ar-swiper-scrollbar .swiper-scrollbar-drag {
    background: #AA815F !important;
}

/* m14 둘러보기 */

/* m15 이용안내 */

.time_box_wr {
    padding: 15rem 0 20rem;
    margin-top: 7rem;
    background: url('/img/sub/m15_sec01_bg.jpg') no-repeat top center/100%;
}

.time_box_wr .time_box {
    width: 100%;
    max-width: 1108px;
    min-height: 76.5rem;
    padding: 7rem 2rem 5rem;
    margin: 0 auto;
    border-radius: 8rem;
    background: #fff;
    box-shadow: 1.5rem 1.5rem 3rem rgba(0, 0, 0, 0.08);
}

.time_box .subject {
    font-size: 5rem;
    font-weight: 700;
    padding-top: 12.8rem;
    text-align: center;
    margin-bottom: 5rem;
    background: url('/img/sub/m15_ico_bell.png') no-repeat top center/9.8rem;
}

.time_box .time_table {
    width: 100%;
    max-width: 56rem;
    margin: 0 auto;
}

.time_box .time_table li {
    display: flex;
    align-items: center;
    gap: 3.9rem;
    font-size: 3.3rem;
    line-height: 1.85;
}

.time_box .time_table .day {
    width: 17.5rem;
    display: flex;
    justify-content: space-between;
    padding-left: 3.4rem;
    position: relative;
    color: #885A33;
    font-weight: 500;
}

.time_box .time_table .day::before {
    content: '';
    width: 1rem;
    height: 1rem;
    border-radius: 0.3rem;
    background-color: var(--main-color);
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.time_box .time_table .day.rest {
    color: #888;
}

.time_box .time_table .day.rest::before {
    background-color: #888;
}

.time_box .time_table .time {
    width: calc(100% - 21.4rem);
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 500;
}

.time_box .time_table .time p:not(.mid) {
    min-width: 15.4rem;
}

.time_box .time_table .time .mid {
    color: #BBB;
}

.time_box .time_table .time span {
    color: #888;
}

.time_box .t_message {
    max-width: 65rem;
    margin: 5rem auto 0;
}

.time_box .t_message p {
    width: 100%;
    text-align: center;
    font-size: 2.5rem;
    line-height: 5.9rem;
    border-radius: 5rem;
    background-color: #EEE;
    margin-top: 1.5rem;
}

.time_box .t_message p:nth-of-type(2) {
    color: #FFF;
    font-weight: 300;
    background-color: #6C5443;
}

/* m15 이용안내 */

/* m15 오시는길 */

.directions {
    display: flex;
    margin-left: 200px;
    margin-top: 80px;
    gap: 25px;
}

.sub_map {
    width: 1080px;
    height: 600px;
    border-radius: 50px;
    overflow: hidden;
    /* margin: 0 auto; */
    margin-bottom: 80px;
}

.sub_map .root_daum_roughmap .wrap_controllers {
    display: none;
}

.sub_map .root_daum_roughmap .cont {
    display: none;
}

.parking {
    width: 415px;
    height: 600px;
    overflow: hidden;
    border-radius: 50px;
    border: 1px solid #cdcdcd;
}

.parking img {
    width: 100%;
}

.add_map_txt {
    margin-bottom: 8rem;
    text-align: center;
}

.add_map_txt .add1 {
    font-size: 4rem;
    font-weight: 600;
}

.add_map_txt .add2 {
    font-size: 3rem;
    font-weight: 500;
    color: var(--main-color);
    margin-top: 0.5rem;
}

.add_info_row {
    padding-bottom: 20rem;
}

.add_info_row .subject {
    font-size: 3.5rem;
    font-weight: 500;
    padding-top: 11.8rem;
    text-align: center;
    background: no-repeat top center/9.8rem;
}

.add_info_row .subject.subw {
    background-image: url('/img/sub/m16_sec02_ico.png');
}

.add_info_row .subject.bus {
    background-image: url('/img/sub/m16_sec03_ico01.png');
}

.add_info_row .subject.car {
    background-image: url('/img/sub/m16_sec03_ico02.png');
}

.add_info_row .add_info {
    margin-top: 4rem;
}

.add_info ul {
    display: flex;
    justify-content: center;
    gap: 1rem;
}

.add_info ul+ul {
    margin-top: 1rem;
}

.add_info ul li {
    width: calc(100%/3);
    max-width: 50rem;
    padding: 4rem 2rem 4rem 4rem;
    border-radius: 2rem;
    border: solid 1px #E7E7E7;
}

.add_info dl {
    display: flex;
    gap: 2rem;
    align-items: center;
}

.add_info dl+dl {
    margin-top: 1.5rem;
}

.add_info dl dt {
    width: 9.8rem;
    line-height: 3.8rem;
    border-radius: 1rem;
    text-align: center;
    font-size: 2.3rem;
}

.add_info dl dt[class*='line'] {
    color: #fff;
    font-weight: 600;
}

.add_info dl dt.line1 {
    background-color: #F0602F;
}

.add_info dl dt.line2 {
    background-color: #3CB44A;
}

.add_info dl dt.line3 {
    background-color: #D4A556;
}

.add_info dl dt.line4 {
    background-color: #426FB5;
}

.add_info dl dt.lined {
    background-color: #A3C3E2;
}

.add_info dl:nth-of-type(2) dt {
    background-color: #E9E9E9;
}

.add_info dl:nth-of-type(3) {
    align-items: flex-start;
}

.add_info dl:nth-of-type(3) dt {
    background-color: #707070;
    color: #fff;
}

.add_info dl dd {
    font-size: 2.8rem;
    line-height: 1.5;
}

.add_info dl dd span {
    color: #888888;
    font-weight: 300;
}

.add_info dl dd strong {
    color: #222;
    font-weight: 600;
}

.add_info_row .top .add_info li {
    transform: translateY(50px);
    opacity: 0;
    transition: all 0.6s linear;
}

.add_info_row .top.aos-animate .add_info li {
    transform: translateY(0);
    opacity: 1;
}

.add_info_row .top ul:nth-of-type(1) li:nth-of-type(1) {
    transition-delay: 0.2s;
}

.add_info_row .top ul:nth-of-type(1) li:nth-of-type(2) {
    transition-delay: 0.4s;
}

.add_info_row .top ul:nth-of-type(1) li:nth-of-type(3) {
    transition-delay: 0.6s;
}

.add_info_row .top ul:nth-of-type(2) li:nth-of-type(1) {
    transition-delay: 0.8s;
}

.add_info_row .top ul:nth-of-type(2) li:nth-of-type(2) {
    transition-delay: 1s;
}

.add_info_row .bot {
    margin-top: 8rem;
}

.add_info_row .bot ul {
    display: flex;
    justify-content: center;
}

.add_info_row .bot ul li {
    width: 50%;
    text-align: center;
}

.add_info_row .bot ul li * {
    transform: translateY(50px);
    opacity: 0;
    transition: all 0.6s linear;
}

.add_info_row .bot.aos-animate * {
    transform: translateY(0);
    opacity: 1;
}

.add_info_row .bot .d_li {
    display: inline-block;
    background: #6C5443;
    margin: 3rem 0 2rem;
    border-radius: 3.6rem;
    font-size: 2.8rem;
    color: #fff;
    padding: 1rem 3.35rem;
    transition-delay: 0.4s;
}

.add_info_row .bot .arrow {
    display: block;
    width: 3.5rem;
    height: 2.3rem;
    background: url('/img/sub/arrow35x23.png') no-repeat center center/cover;
    margin: 0 auto 2rem;
    transition-delay: 0.8s;
}

.add_info_row .bot .arrow2 {
    width: 2.6rem;
    background-image: url('/img/sub/arrow26x23.png');
}

.add_info_row .bot .arrive {
    font-size: 2.8rem;
    line-height: 1.5;
    transition-delay: 1s;
}


/* m15 오시는길 */

/* m21 */


.con0201 .sec2 {
    padding: 13rem 0 18rem;
    background: url('/img/sub/m21_sec02_bg.jpg') no-repeat center center/cover;
}

.con0201 .sec2 .imgbox {
    display: flex;
    justify-content: center;
    margin-top: 7rem;
}

.int_f_row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.int_f_row .int_row {
    width: 50%;
}

.int_f_row .int_row .top {
    padding-bottom: 2.5rem;
    margin-bottom: 2.5rem;
    border-bottom: solid 1px #E9E9E9;
}

.int_f_row .img_row {
    width: 44.74%;
    border-radius: 3rem;
    box-shadow: 4px 4px 15px rgba(0, 0, 0, 0.07);
}

.con0201 .sec5 {
    padding: 15rem 0;
    background: url('/img/sub/m21_sec05_bg.jpg') no-repeat center center/cover;
}

.cir_box_row {
    display: flex;
    align-items: center;
}

.cir_box_row .txtbox {
    width: 53.29%;
}

.cir_box_row .txtbox.wh {
    color: #fff;
}

.cir_box_row .txtbox .tag {
    display: inline-block;
    font-size: 1.8rem;
    color: #cfc6c0;
    text-transform: uppercase;
    font-weight: 300;
    margin-bottom: 1.1rem;
}

.cir_box_row .txtbox .tit_txt {
    font-size: 3.5rem;
    line-height: 1.31;
    margin-bottom: 5rem;
}

.cir_box_row .txtbox .tit_txt b {
    font-size: 5rem;
    font-weight: 600;
}

.cir_box_row .txtbox .prog_bg_txt {
    font-size: 2.5rem;
    color: #222;
    padding: 1rem 0;
    position: relative;
    z-index: 1;
    margin-bottom: 4rem;
}

.cir_box_row .txtbox .prog_bg_txt::before {
    content: '';
    width: 0%;
    height: 5.8rem;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -30%;
    z-index: -1;
    background: linear-gradient(to right, #fff 80%, transparent);
    transition: width 0.5s linear;
}

.cir_box_row .txtbox .prog_bg_txt span {
    color: #916038;
    font-weight: 500;
}

.cir_box_row .txtbox .disc {
    font-size: 2.4rem;
    line-height: 1.44;
}

.cir_box_row .txtbox .disc span {
    color: #C9B7AA;
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 1.5;
}

.cir_box_row .txtbox .bot {
    margin-top: 5rem;
}

.numb_list li {
    display: flex;
    align-items: center;
    gap: 1.4rem;
}

.numb_list li .num {
    width: 5.5rem;
    line-height: 3.2rem;
    border-radius: 5rem;
    font-size: 2rem;
    text-align: center;
    color: #fff;
    background-color: var(--main-color);
}

.numb_list li:nth-of-type(2n) .num {
    background-color: #C9B7AA;
}

.numb_list li p {
    font-size: 2rem;
}

.numb_list li+li {
    margin-top: 2.5rem
}

.cir_box_row.aos-animate .txtbox .prog_bg_txt::before {
    width: 150%;
}

.cir_box_row .imgbox {
    width: 46.71%;
    position: relative;
    z-index: 1;
    transform: translateY(50px);
    opacity: 0;
    transition: all 0.6s linear;
}

.cir_box_row.aos-animate .imgbox {
    transform: translateY(0);
    opacity: 1;
    transition-delay: 0.6s;
}

.cir5_wr {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-top: 10rem;
}

.cir5_wr .line.before {
    content: '';
    position: absolute;
    right: 0;
    top: 50%;
    width: 100%;
    height: 1px;
    background-color: #695140;
    transform: translate(-100%, -50%);
}

.cir5_wr .line.before:before {
    content: '';
    position: absolute;
    display: block;
    right: 0;
    top: 50%;
    width: 100%;
    height: 10px;
    background-color: #fff;
    transform: translateY(-50%);
    transition: all 1s;
}

.cir5_wr .line.after {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 100%;
    height: 1px;
    background-color: #695140;
    transform: translate(100%, -50%);
}

.cir5_wr .line.after:before {
    content: '';
    position: absolute;
    display: block;
    right: -1px;
    top: 50%;
    width: 100%;
    height: 10px;
    background-color: #fff;
    transform: translateY(-50%);
    transition: all 1.5s;
    transition-delay: 2s;
}

.cir5_wr.on .line.before:before {
    width: 0;
}

.cir5_wr.on .line.after:before {
    width: 0;
}

.cir5_wr ul {
    width: 100%;
    display: flex;
}

.cir5_wr ul li {
    position: relative;
    width: 21.05%;
    padding-top: 20%;
    min-height: 32rem;
    border-radius: 50%;
}

.cir5_wr ul li+li {
    margin-left: -2rem;
}

.cir5_wr ul li .svg {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%);
    opacity: 0;
    transition-delay: 1s;
}

.cir5_wr.on ul li .svg {
    opacity: 1;
}

.cir5_wr ul li .svg svg {
    width: 100%;
    height: 100%;
    stroke-dasharray: 1214;
    stroke-dashoffset: 0;
    stroke-linecap: round;
    transform: rotate(-90deg);
}

.cir5_wr.on ul li .svg svg {
    animation: drawCircle 1s linear;
    animation-delay: 1s;
}

.cir5_wr ul li:nth-of-type(2n) .svg svg {
    transform: rotate(-270deg);
}

.cir5_wr ul li .txtbox {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 100%;
    transform: translate(-50%, -50%);
    text-align: center;
}

.cir5_wr ul li .txtbox .numb {
    display: inline-block;
    width: 7rem;
    height: 3.5rem;
    line-height: 3.5rem;
    font-size: 2rem;
    color: #fff;
    margin-bottom: 4.5rem;
    background: url('/img/sub/m21_sec07_ico01.png') no-repeat center center/cover;
}

.cir5_wr ul li .txtbox .subject {
    font-size: 2.5rem;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 1.5rem;
}

.cir5_wr ul li .txtbox .disc {
    font-size: 2rem;
    line-height: 1.5;
    color: #555;
}

@keyframes drawCircle {
    0% {
        stroke-dashoffset: 1214;
    }

    100% {
        stroke-dashoffset: 0;
    }
}

.cir5_wr.on ul.row4 li .svg svg {
    animation-name: drawCircle2;
}

.cir5_wr ul.row4 li {
    position: relative;
    width: 26.32%;
    padding-top: 20%;
    min-height: 40rem;
    border-radius: 50%;
}

.cir5_wr ul.row4 li+li {
    margin-left: -2.7rem;
}

.cir5_wr ul.row4 li .svg svg {
    stroke-dasharray: 1254;
}


@keyframes drawCircle2 {
    0% {
        stroke-dashoffset: 1254;
    }

    100% {
        stroke-dashoffset: 0;
    }
}

.con0201 .cir5_wr ul li .txtbox .numb,
.con0202 .cir5_wr ul li .txtbox .numb {
    margin-bottom: 2.5rem;
}

/* m21 */

/* m21_sec3 */

.dot_list_wr {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    /* 필수: sticky가 작동하려면 stretch가 아니어야 합니다 */
    position: relative;
    gap: 140px
}

.dot_img_box {
    position: sticky;
    top: 150px;
    /* 스크롤 시 상단에서 얼마큼 떨어져서 고정될지 설정 */
    width: 45%;
    /* 이미지 영역 너비 설정 (원하는 크기로 변경 가능) */
    flex-shrink: 0;
    /* flex 안에서 크기가 줄어들지 않도록 방지 */
}

.dot_img_box .img_box {
    width: 660px;
    height: 625px;
    border-radius: 30px;
    overflow: hidden;

    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
}

.dot_img_box .img_box.active {
    position: relative;
    /* 첫 번째 이미지나 활성화된 이미지가 높이값을 잡을 수 있도록 */
    opacity: 1;
    visibility: visible;
}

.dot_list_wr .dot_img_box figure img {
    width: 100%;
}

.dot_list_wr ul {
    width: 50%;
    /* 텍스트 영역 너비 설정 */
    list-style: none;
    padding: 0;
    margin: 0;
}

.dot_list_wr ul li {
    position: relative;
    display: flex;
    column-gap: 100px;
    align-items: center;
    margin-bottom: 30px;
}

.dot_list_wr ul li:nth-of-type(3) {
    margin-bottom: 0;
}

.dot_list_wr ul li .img_box {
    width: 450px;
    height: 300px;
    border-radius: 50px;
    overflow: hidden;
    box-shadow: 4px 4px 20px rgba(0, 0, 0, .1);
}

.dot_list_wr ul li .txt_box {
    width: 100%;
    position: relative;
}

.dot_list_wr ul li .txt_box::before {
    content: "";
    display: block;
    width: 1px;
    height: 130%;
    position: absolute;
    left: -50px;
    background: #DDD4CE;
}

.dot_list_wr ul li:nth-of-type(3) .txt_box::before {
    height: 100%;
}

.dot_list_wr ul li::before {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    position: absolute;
    left: -57px;
    top: 0;
    background: #DDD4CE;
    transition: .5s;
    z-index: 1;
}

.dot_list_wr ul li.active::before {
    background: #996C4B;
}

.dot_list_wr ul li .txt_box .type {
    font-size: 25px;
    color: #222222;
    font-weight: 600;
    margin-bottom: 12px;
}

.dot_list_wr ul li .txt_box .type span {
    font-size: 25px;
    color: #996C4B;
    font-weight: 600;
}

.dot_list_wr ul li .txt_box .type b {
    font-size: 25px;
    color: #BBBBBB;
    font-weight: 300;
    margin: 5px;
}

.dot_list_wr ul li .txt_box .desc {
    font-size: 21px;
    line-height: 1.6;

    display: flex;
    align-items: center;
    gap: 45px;
    margin-bottom: 20px;
}

.dot_list_wr ul li .txt_box .desc .desc_left,
.dot_list_wr ul li .txt_box .desc .desc_right {
    font-size: 21px;
    line-height: 1.6;
}

.dot_list_wr .state_txt dt {
    font-size: 2.5rem;
    font-weight: 600;
    color: #604939;
    margin-bottom: 1.2rem;
}

.dot_list_wr .state_txt dd {
    font-size: 2rem;
    line-height: 1.6;
    color: #333;
}

.dot_list_wr ul.g50 li {
    margin: 0;
}

.dot_list_wr ul.g50 li+li {
    margin-top: 5rem;
}

.dot_list_wr.a_c {
    align-items: center;
}

.dot_list_wr.a_c ul li:last-of-type .txt_box::before {
    display: none;
}

.dot_list_wr.a_c ul li .txt_box::before {
    height: 180%;
    max-height: 15.7rem;
}


.dot_list_wr ul li .txt_box {
    width: 100%;
    position: relative;
}

.dot_list_wr ul li .txt_box::before {
    content: "";
    display: block;
    width: 1px;
    height: 130%;
    position: absolute;
    left: -50px;
    background: #DDD4CE;
}

.dot_list_wr ul li:nth-of-type(3) .txt_box::before {
    height: 100%;
}

.dot_list_wr ul li::before {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    position: absolute;
    left: -57px;
    top: 0;
    background: #DDD4CE;
    transition: .5s;
    z-index: 1;
}

.dot_row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    gap: 14rem;
}

.dot_row .img_box {
    width: 45%;
    flex-shrink: 0;
}

.dot_row ul {
    width: 50%;
}

.dot_row ul li {
    position: relative;
    display: flex;
    column-gap: 100px;
    align-items: center;
}

.dot_row ul li .txt_box {
    width: 100%;
    position: relative;
}

.dot_row ul li .txt_box::before {
    content: "";
    display: block;
    width: 1px;
    height: 180%;
    max-height: 15.7rem;
    position: absolute;
    left: -50px;
    top: 8px;
    background: #DDD4CE;
}

.dot_row ul li::before {
    content: "";
    display: block;
    width: 15px;
    height: 15px;
    border-radius: 50%;
    position: absolute;
    left: -57px;
    top: 8px;
    background: #DDD4CE;
    transition: .5s;
    z-index: 1;
}

.dot_row ul li:hover::before {
    background: #996C4B;
}

.dot_row .state_txt dt {
    font-size: 2.5rem;
    font-weight: 600;
    color: #604939;
    margin-bottom: 1.2rem;
}

.dot_row .state_txt dd {
    font-size: 2rem;
    line-height: 1.6;
    color: #333;
}

.dot_row ul li+li {
    margin-top: 5rem;
}

.dot_row ul li:last-of-type .txt_box::before {
    display: none;
}

/* m21_sec3 */

/* m21_sec05 */

.non_types {
    background: #F6F4F1;
    padding-top: 150px;
}

.non_types .inner {
    display: flex;
    height: 280rem;
    position: relative;
    align-items: flex-start;
    padding-bottom: 50rem;
}

.non_types .left {
    position: sticky;
    top: 15rem;
    flex: 0 0 auto;
    width: 58.5rem;
}

.non_types .tag {
    font-size: 1.8rem;
    color: #CDCDCD;
    font-weight: 300;
}

.non_types .bg_ttl {
    font-size: 5.0rem;
    font-weight: 600;
    margin-top: 1.8rem;
    margin-bottom: 2.2rem;
}

.non_types .disc {
    font-size: 2.5rem;
    line-height: 3.5rem;
    font-weight: 300;
}

.non_types_list_row {
    width: 84rem;
    min-height: 100vh;
    position: relative;
}

.non_types_list {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row-reverse;
    row-gap: 9.4rem;
    justify-content: space-between;
}


.non_types_list li .non_types_box {
    width: 650px;
    height: 455px;
}

.non_types_list li .non_types_box figure {
    width: 650px;
    height: 320px;
    border-radius: 20px;
    overflow: hidden;
}

.non_types_list li .non_types_box figure img {
    width: 100%;
}

.non_types_list li .non_types_box .point_ttl {
    font-size: 3.2rem;
    font-weight: 600;
    margin-top: 3.0rem;
    margin-bottom: 1.5rem;
    color: #6C5443;
}

.non_types_list li .non_types_box .desc {
    font-size: 2.2rem;
    color: #555;
    line-height: 3.2rem;
}

.non_types .line {
    /* height: 95%; */
    height: 0;
    position: absolute;
    top: 0px;
    left: 4%;
    width: 2px;
    --grad-opacity-mid: 0.5;
    --grad-opacity-end: 1;
    background: linear-gradient(180deg, rgba(170, 129, 94, 0) 0%,
            rgba(167, 111, 88, var(--grad-opacity-mid)) 50%,
            rgba(167, 111, 88, var(--grad-opacity-end)) 100%);
}

.non_types .line .dot {
    position: absolute;
    width: 2.5rem;
    bottom: -1em;
    left: 50%;
    transform: translateX(-50%);
    opacity: 1;
}

.non_types .line .dot svg {
    display: block;
    width: 100%;
    fill: none;
    background: transparent;
}

.view_button {
    position: fixed;
    /* 부모 요소를 기준으로 배치 */
    top: 0;
    left: 0;
    transform: translate(50%, 50%) scale(0);
    z-index: 10;
    transition: opactiy 0.3s, transform 0.1s ease-out;
    pointer-events: none;
}

/* .view_button figure{
    margin-left: 38px;
    margin-bottom: 5px;
} */

/* m21_sec05 */

/* m22 */

.mid_atc {
    width: 100%;
    text-align: center;
    min-height: 30rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: no-repeat center center/cover;
  /*   background-attachment: fixed; */
}

.mid_atc .coment {
    color: #fff;
    font-size: 2.5rem;
    padding-top: 7.5rem;
    line-height: 1.5;
    font-weight: 300;
    background: url('/img/sub/logo_ico50x52.png') no-repeat top center/5rem;
}

.mid_atc .coment span {
    color: #E4D3B9;
    font-weight: 500;
}

.con0202 .mid_atc {
    background-image: url('/img/sub/m22_sec01_bg.jpg');
}

.con0202 .sec3 {
    background: url('/img/sub/m22_sec03_bg.jpg') no-repeat center center/cover;
}

.con0202 .cir5_wr ul li:nth-of-type(2n-1) {
    background: rgba(255, 255, 255, 0);
    transition: background 0.5s 1.5s linear;
}

.con0202 .cir5_wr ul li:nth-of-type(2n) {
    background: transparent;
}

.con0202 .cir5_wr.on ul li:nth-of-type(2n-1) {
    background: rgba(255, 255, 255, 0.5);
}

.con0202 .cir5_wr .line.before:before {
    background-color: #eeede9;
}

.con0202 .cir5_wr .line.after::before {
    background-color: #f0efeb;
}

.tgt_row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.tgt_row .imgbox {
    width: 44.74%;
}

.tgt_row .row4_wr {
    width: 49.01%;
}

.row4_wr {
    display: flex;
    flex-wrap: wrap;
    gap: 2.5rem;
}

.row4_wr li {
    width: calc(50% - 1.25rem);
    min-height: 23.1rem;
    border-radius: 3rem;
    border: solid 1px #BBB;
    padding: 3.7rem 2rem;
    text-align: center;
    background-color: #fff;
    transform: translateY(50px);
    opacity: 0;
    transition: all 0.6s linear;
}

.row4_wr.t_c li {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.row4_wr li .subject {
    display: inline-block;
    font-size: 2rem;
    line-height: 3.8rem;
    border-radius: 5rem;
    padding: 0 3rem;
    color: #fff;
    text-align: center;
    margin-bottom: 2.3rem;
    background-color: var(--main-color);
}

.row4_wr li:nth-child(2) .subject,
.row4_wr li:nth-child(3) .subject {
    background-color: #C9B7AA;
}

.row4_wr li .disc {
    font-size: 2rem;
    line-height: 1.5;
    letter-spacing: -0.8px;
}

.tgt_row.aos-animate .row4_wr li {
    transform: translateY(0);
    opacity: 1;
}

.tgt_row.aos-animate .row4_wr li:nth-of-type(1) {
    transition-delay: 0.2s;
}

.tgt_row.aos-animate .row4_wr li:nth-of-type(2) {
    transition-delay: 0.4s;
}

.tgt_row.aos-animate .row4_wr li:nth-of-type(3) {
    transition-delay: 0.6s;
}

.tgt_row.aos-animate .row4_wr li:nth-of-type(4) {
    transition-delay: 0.8s;
}

.con0202 .sec5 {
    background-color: #F7F7F7;
}

.sq4_wr {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin-top: 10rem;
}

.sq4_wr .line {
    position: absolute;
    left: -15%;
    top: 50%;
    width: 0;
    height: 1px;
    background-color: #695140;
    transform: translateY(-50%);
    transition: width 0.7s 0.3s linear;
}

.sq4_list {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.sq4_list li {
    width: calc(25% - 8.1rem/4);
    min-height: 26rem;
    padding: 3.5rem 1rem;
    text-align: center;
    border-radius: 3rem;
    position: relative;
    z-index: 2;
    border: solid 1px #695140;
}

.sq4_list li:nth-of-type(2n-1) {
    background-color: #F7F7F7;
}

.sq4_list li:nth-of-type(2n) {
    background-color: #fff;
}

.sq4_list li .txtbox {
    width: 100%;
    position: absolute;
    top: 3.5rem;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
}

.sq4_list li .txtbox .numb {
    display: inline-block;
    width: 7rem;
    height: 3.5rem;
    line-height: 3.5rem;
    font-size: 2rem;
    color: #fff;
    margin-bottom: 2.5rem;
    background: url('/img/sub/m21_sec07_ico01.png') no-repeat center center/cover;
}

.sq4_list li .txtbox .subject {
    width: 7rem;
    height: 3.5rem;
    line-height: 3.5rem;
    font-size: 2rem;
    margin-bottom: 3.6rem;
    background: url('/img/sub/m21_sec07_ico01.png') no-repeat center center/cover;
}

.sq4_list li .txtbox .disc {
    font-size: 2rem;
    line-height: 1.5;
    color: #555;
}


.sq4_wr.aos-animate .line {
    width: 130%;
}

.sq4_wr .sq4_list li {
    transform: translateX(-50px);
    opacity: 0;
    transition: all 0.5s linear;
}

.sq4_wr.aos-animate .sq4_list li {
    transform: translateX(0);
    opacity: 1;
}

.sq4_wr.aos-animate .sq4_list li:nth-of-type(1) {
    transition-delay: 0.5s;
}

.sq4_wr.aos-animate .sq4_list li:nth-of-type(2) {
    transition-delay: 0.7s;
}

.sq4_wr.aos-animate .sq4_list li:nth-of-type(3) {
    transition-delay: 0.9s;
}

.sq4_wr.aos-animate .sq4_list li:nth-of-type(4) {
    transition-delay: 1.1s;
}


/* m22 */

/* m23 */

.con0203 .mid_atc {
    background-image: url('/img/sub/m23_sec01_bg.jpg');
}

.eff_row_wr {
    padding: 12rem 0 15rem;
    background: linear-gradient(to bottom, #fff, #F6F4F1);
}

.down_one_wr {
    position: relative;
    padding-top: 23.4rem;
}

.down_one_wr .down_one .line {
    top: 0;
}

.down_one_wr.aos-animate .down_one .line {
    height: 15.9rem;
}

.eft_row4 {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 8rem;
}

.eft_row4 li {
    width: calc(25% - 8.1rem/4);
    min-height: 25rem;
    padding: 4.5rem;
    border-radius: 2rem;
    position: relative;
    z-index: 2;
    background-color: #fff;
    box-shadow: 4px 4px 12px rgba(0, 0, 0, 0.08);
}

.eft_row4 li .numb {
    font-size: 2rem;
    font-weight: 600;
    color: var(--main-color);
    margin-bottom: 1rem;
}

.eft_row4 li .tt_only .numb {
    font-size: 2.2rem;
}

.eft_row4 li .subject {
    font-size: 2.2rem;
    line-height: 1.5;
}

.eft_row4 li .ico {
    position: absolute;
    bottom: 3rem;
    right: 3.5rem;
}

.eff_row_wr .coment_box {
    margin-top: 8rem;
}

.eff_row_wr .coment_box.t100 {
    margin-top: 10rem;
}

.eff_row_wr .coment {
    font-size: 2.5rem;
    text-align: center;
    line-height: 1.6;
    color: #333;
}

.eff_row_wr .coment strong {
    font-weight: 500;
    color: var(--main-color);
}

.eff_row_wr .coment+.coment {
    margin-top: 3rem;
}


/* m23 */

/* m23_sec05 */

.pro_box_wr {
    background: #F7F7F7;
    border-radius: 20px;
}

.pro_box_cont {
    display: flex;
    column-gap: 60px;
    padding: 80px 80px;
    align-items: center;
}

.pro_box_cont .img_box {
    width: 620px;
    height: 358px;
    border-radius: 20px;
    overflow: hidden;
}

.pro_box_cont .img_box figure {
    width: 120%;
}

.pro_box_cont .img_box figure img {
    width: 100%;
}

.pro_box_cont .txt_box {
    width: 50%;
}

.pro_box_cont .pro_box_sub {
    width: fit-content;
    height: 40px;
    background: #978274;
    color: #fff;
    border-radius: 8px;
    font-size: 18px;
    margin-bottom: 22px;
    text-align: center;
    padding: 10px;
}

.pro_box_cont .pro_box_tit {
    font-size: 32px;
    color: #6C5443;
    font-weight: 600;
    margin-bottom: 15px;
}

.pro_box_cont .desc {
    font-size: 21px;
    line-height: 1.6;
    margin-bottom: 35px;
}

.pro_box_cont ul {
    display: flex;
    gap: 30px;
}

.pro_box_cont ul li {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 150px;
    height: 150px;
    background: #fff;
    border-radius: 360px;
    text-align: center;
    font-size: 20px;
}

.pro_box_cont ul li span {
    display: block;
    font-size: 30px;
    color: #6C5443;
}

.pro_box_cont ul li p {
    line-height: 1.5;
    color: #555;
}


.swiper-pagination {
    bottom: 40px !important;
}

.swiper-pagination-bullet {
    width: 14px;
    height: 14px;
    margin: 10px 10px !important;
    background: #d9d9d9;
    border: none;
}

.swiper-pagination-bullet-active {
    background: #978274;
}

.swiper-pagination-bullets.swiper-pagination-horizontal {
    position: relative;
    margin: 0 !important;
    left: 50% !important;
    top: 40px !important;
    transform: translateX(-50%);
    width: auto !important;
    /* 너비를 콘텐츠에 맞춤 */
    display: flex;
    justify-content: center;
}

/* m23_sec05 */

/* m24 */

.con0204 .mid_atc {
    background-image: url('/img/sub/m24_sec01_bg.jpg');
}

.con0204 .sec5 {
    padding: 12.6rem 0 8.4rem;
    background: url('/img/sub/m24_sec05_bg.jpg') no-repeat center center/cover;
}

.con0204 .sec5 .imgbox {
    margin-top: 7.4rem;
}


/* m24 */

/* m25 */

.con0205 .mid_atc {
    background-image: url('/img/sub/m25_sec01_bg.jpg');
}

.con0205 .sec4 {
    padding: 16.8rem 0 17.1rem;
    background: url('/img/sub/m25_sec04_bg.jpg') no-repeat center center/cover;
}

.ban_txt_row * {
    color: #fff;
}

.ban_txt_row .t37 {
    font-size: 3.7rem;
    line-height: 1.4;
}

.ban_txt_row .t37 strong {
    font-weight: 600;
    color: #E4D3B9;
}

.ban_txt_row .disc20 {
    font-size: 2rem;
    margin-top: 2.5rem;
    line-height: 1.7;
}

.con0205 .cir5_wr ul li .txtbox {
    top: 5rem;
    transform: translateX(-50%);
}


/* m25 */

/* m26 */

.con0206 .mid_atc {
    background-image: url('/img/sub/m26_sec01_bg.jpg');
}

.con0206 .sec4 {
    padding: 16.8rem 0 17.1rem;
    background: url('/img/sub/m26_sec04_bg.jpg') no-repeat center center/cover;
}


/* m26 */

/* m31 */

.con0301 .sec2 {
    padding: 13rem 0 18rem;
    background: url('/img/sub/m31_sec01_bg.jpg') no-repeat center center/cover;
}

.con0301 .sec2 .imgbox {
    display: flex;
    justify-content: center;
    margin-top: 8rem;
}

.chk_list {
    display: flex;
    flex-wrap: wrap;
    row-gap: 2rem;
    column-gap: 4.6rem;
    margin-top: 9rem
}

.chk_list li {
    width: calc(50% - 2.3rem);
    padding: 2.65rem 3rem;
    border-radius: 1.5rem;
    background-color: #EDECE9;
    display: flex;
    align-items: center;
}

.chk_list li p {
    font-size: 2rem;
    padding-left: 2rem;
    margin-left: 2rem;
    position: relative;
}

.chk_list li p::before {
    content: '';
    width: 1px;
    height: 5rem;
    background: #D5D5D5;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.chk_list li .chk {
    width: 2.8rem;
    height: 2.4rem;
    background: url('/img/sub/check_ico28x24.png')no-repeat center center/cover;
}

.hov_circle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 13.3rem;
}

.hov_circle li .item {
    text-align: center;
    transition: transform 0.8s;
}

.hov_circle li:hover .item {
    transform: translateY(-3rem);
}

.hov_circle li figure {
    position: relative;
    border-radius: 50%;
    box-shadow: 0 4px 13px rgba(0, 0, 0, 0.12);
    transition: all 0.5s;
}

.hov_circle li figure img:nth-of-type(2) {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.7s;
}

.hov_circle li:hover figure img:nth-of-type(2) {
    opacity: 1;
}

.hov_circle li:hover figure {
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.12);
}

.hov_circle li p {
    font-size: 2.4rem;
    font-weight: 600;
    color: #604939;
    margin-top: 2.3rem;
}

.hov_step_list {
    margin-top: 13rem;
    display: flex;
    justify-content: space-between;
}

.hov_step_list li {
    width: 25%;
}

.hov_step_list .top {
    transition: transform 0.3s linear;
}

.hov_step_list figure {
    display: inline-block;
    border-radius: 2rem;
    overflow: hidden;
/*     box-shadow: 0 4px 4px rgba(0,0,0,0.25); */
}

.hov_step_list.circle figure {
    border-radius: 50%;
}

.hov_step_list .bot {
    padding-top: 3.68rem;
    margin-top: 6.8rem;
    position: relative;
}

.hov_step_list .bot::before {
    content: '';
    width: 250%;
    height: 1px;
    position: absolute;
    top: 0;
    left: -50%;
    background: #DDD4CE;
}

.hov_step_list .bot::after {
    content: '';
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    position: absolute;
    top: -0.75rem;
    left: 0;
    background: #DDD4CE;
    z-index: 3;
    transition: background 0.3s linear;
}

.hov_step_list .bot .subject {
    display: flex;
    align-items: center;
    font-size: 2.5rem;
    font-weight: 600;
    color: #604939;
}

.hov_step_list .bot .subject span {
    position: relative;
}

.hov_step_list .bot .subject span::before {
    content: '|';
    font-size: 2.5rem;
    font-weight: 600;
    color: #DDD4CE;
    margin: 0 1rem;

}

.hov_step_list .bot .disc {
    font-size: 2rem;
    line-height: 1.64;
    margin-top: 1.8rem;
}

.hov_step_list li:hover .top {
    transform: translateY(-3rem);
}

.hov_step_list li:hover .bot::after {
    background: #978274;
}

/* m31_sec04 */

.sd_con {
    position: relative;
    margin-top: 9rem;
}

.sd_img {
    width: 100%;
    height: 629px;
    overflow: hidden;
    border-radius: 50px;
    background: url('/img/sub/m31_sec04_img01.jpg') no-repeat;
    background-size: cover;
    transition: background 0.25s linear;
}

.sd_img:hover {
    background: url('/img/sub/m31_sec04_img01_hover.jpg') no-repeat;
    background-size: cover;
}

.sd_list {
    width: 190px;
    height: 51px;
    border-radius: 360px;
    background: #E88634;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    position: absolute;
    top: 19%;
    left: 33%;
}

.sd_con a:nth-of-type(2) .sd_list {
    top: 26.5%;
    left: 54.5%;
}

.sd_con a:nth-of-type(3) .sd_list {
    top: 46.5%;
    left: 30.2%;
}

.sd_con a:nth-of-type(4) .sd_list {
    top: 56.5%;
    left: 58.2%;
}

.sd_con a:nth-of-type(5) .sd_list {
    top: 68%;
    left: 36%;
}

.sd_list .check_icon {
    width: 24px;
    height: 24px;
    border-radius: 24px;
    background: #fff;
}

.sd_list .check_icon span {
    color: #503F33;
}

.sd_list p {
    font-size: 22px;
    font-weight: 600;
    color: #fff;
}


/* m31_sec04 */

/* m31 */

/* m32 */

.ht_list.t60 {
    margin-top: 6rem;
}

.con0302 .mid_atc {
    background-image: url('/img/sub/m32_sec01_bg.jpg');
}

.con0302 .sec4 {
    padding: 15.5rem 0 15.4rem;
    background: url('/img/sub/m32_sec04_bg.jpg') no-repeat center center/cover;
}

.int_f_row .mb7 {
    margin-bottom: 7rem;
}

.int_f_row .ctgr_list {
    display: flex;
    flex-wrap: wrap;
    row-gap: 2.5rem;
    column-gap: 2rem;
}

.int_f_row .ctgr_list dt {
    width: 19rem;
    height: 3.2rem;
    font-size: 2rem;
    text-align: center;
    line-height: 3.2rem;
    border-radius: 3rem;
    color: #fff;
    background: var(--main-color);
}


.int_f_row .ctgr_list dt:nth-of-type(2n) {
    background: #C9B7AA;
}

.int_f_row .ctgr_list dd {
    width: calc(100% - 21rem);
    font-size: 2rem;
    line-height: 1.6;
    transform: translateY(-0.5rem);
}

.row5_circle {
    display: flex;
    margin-top: 10rem;
}

.row5_circle li {
    width: 20%;
    text-align: center;
}

.row5_circle figure {
    display: inline-block;
    border-radius: 50%;
    position: relative;
    overflow: hidden;
}

.row5_circle figure::before {
    content: '';
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: solid 3px #C9B7AA;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.3s linear;
}

.row5_circle li:hover figure::before {
    opacity: 1;
}

.row5_circle li .mid {
    width: 100%;
    height: 3.5rem;
    line-height: 3.5rem;
    font-size: 1.8rem;
    font-weight: 300;
    text-transform: uppercase;
    color: #fff;
    background: #978274;
    margin: 4.5rem 0 1rem;
    transition: background 0.3s linear;
}

.row5_circle li:first-of-type .mid {
    border-radius: 3rem 0 0 3rem;
}

.row5_circle li:last-of-type .mid {
    border-radius: 0 3rem 3rem 0;
}

.row5_circle li .subject {
    font-size: 2.4rem;
    font-weight: 600;
    padding: 1.5rem 0;
    color: #604939;
    margin: 0 auto;
    position: relative;
}


.row5_circle li .subject::after {
    content: '';
    width: 20rem;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    border-bottom: solid 1px #DDD4CE;
}

.row5_circle li .disc {
    font-size: 2rem;
    color: #333;
    line-height: 1.6;
    margin-top: 1.5rem;
}

.row5_circle li:hover .mid {
    background: #C9B7AA;
}

/* m32 */

/* m33 */

.con0303 .mid_atc {
    background-image: url('/img/sub/m33_sec01_bg.jpg');
}

.con0303 .sec4 {
    padding: 16.8rem 0 17.1rem;
    background-image: url('/img/sub/m33_sec04_img.jpg');
}

.vs_2row {
    display: flex;
    text-align: center;
    margin-top: 7.8rem;
}

.vs_2row li {
    width: 50%;
}

.vs_2row dl dt {
    display: block;
    font-size: 2.8rem;
    font-weight: 600;
    height: 6rem;
    line-height: 6rem;
    color: #fff;
    border-radius: 5rem;
    background-color: #AA815F;
    margin-bottom: 1rem;
}

.vs_2row li:nth-of-type(2) dl dt {
    background-color: #6A6A6A;
    position: relative;
}

.vs_2row li:nth-of-type(2) dl dt::after {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: -50%;
    z-index: -1;
    background-color: #6A6A6A;
}

.vs_2row dl dd {
    display: block;
    font-size: 2rem;
    color: #333;
    padding: 2rem;
}

.vs_2row dl dd+dd {
    border-top: solid 1px #DDD4CE;
}

/* m33 */

/* m34 */

.con0304 .mid_atc {
    background-image: url('/img/sub/m34_sec01_bg.jpg');
}

.con0304 .sec4 {
    padding: 16.8rem 0 17.1rem;
    background-image: url('/img/sub/m34_sec04_bg.jpg');
}

.way_list_row {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.way_list_row .img_box {
    width: 44.7%;
    border-radius: 3rem;
    overflow: hidden;
    box-shadow: 4px 4px 15px rgba(0, 0, 0, 0.07);
}

.way_list_row .list_box {
    width: 50%;
}

.way_list_row ul li {
    padding: 2.1rem 0;
    display: flex;
    align-items: center;
    gap: 1.8rem;
    transform: translateY(50px);
    opacity: 0;
    transition: all 0.6s linear;
}

.way_list_row ul li+li {
    border-top: dotted 1px #9C9C9C;
}

.way_list_row ul li span {
    width: 8.2rem;
    line-height: 3.1rem;
    font-size: 2rem;
    color: #fff;
    text-align: center;
    border-radius: 15rem;
    background-color: var(--main-color);
}

.way_list_row ul li:nth-of-type(2n) span {
    background-color: #C9B7AA;
}

.way_list_row ul li p {
    font-size: 2rem;
    color: #333;
}

.way_list_row.aos-animate ul li {
    transform: translateY(0);
    opacity: 1;
}

.way_list_row.aos-animate ul li:nth-of-type(2) {
    transition-delay: 0.2s;
}

.way_list_row.aos-animate ul li:nth-of-type(3) {
    transition-delay: 0.4s;
}

.way_list_row.aos-animate ul li:nth-of-type(4) {
    transition-delay: 0.6s;
}

.way_list_row.aos-animate ul li:nth-of-type(5) {
    transition-delay: 0.8s;
}

/* m34 */

/* m35_sec01 */

.con0305 .mid_atc {
    background-image: url('/img/sub/m35_sec01_img.jpg');
}

.con0305 .sec4 {
    padding: 16.8rem 0 17.1rem;
    background-image: url('/img/sub/m35_sec04_img.jpg');
}

.int_row .center {
    text-align: center;
}

.int_row .sub_sec_tit_en {
    font-size: 18px;
    color: #cfc6c0;
    text-transform: uppercase;
    font-weight: 200;
}

.int_row .sub_sec_tit_en.cdcd {
    color: #CDCDCD;
}

.int_row .sub_sec_tit_center {
    font-size: 60px;
    color: #222;
    font-weight: 600;
    margin-top: 10px;
}

.int_row .sub_sec_desc_center {
    font-size: 2.8rem;
    color: #222;
    margin-top: 240px;
    line-height: 1.5;
}

.con0103 .int_row .sub_sec_desc_center,
.con0104 .int_row .sub_sec_desc_center,
.con0105 .int_row .sub_sec_desc_center,
.con0106 .int_row .sub_sec_desc_center {
    margin-top: 30px;
}

.int_row .sub_sec_desc_add {
    font-size: 25px;
    margin-top: 30px;
    color: #888888;
    font-weight: 400;
    line-height: 1.5;
}

.int_row .sub_ico_desc {
    font-size: 2.8rem;
    line-height: 1.4;
    color: #444;
    text-align: center;
    padding-top: 4rem;
    margin-top: 8rem;
    background: url('/img/sub/ico_set_39x33.png') no-repeat top center/3.9rem;
}

.int_row .sub_ico_desc span {
    color: var(--main-color);
    font-weight: 500;
}

.int_row.wh .sub_sec_tit {
    color: #fff;
}

.int_row.wh .sub_sec_tit span {
    color: #C9B7AA;
}

.int_row .sub_sec_tit .lite {
    font-weight: 200;
    color: #888;
    letter-spacing: -3.5px;
}

.int_row .sub_sec_disc23 {
    font-size: 2.3rem;
    line-height: 1.6;
    margin-top: 2.4rem;
    color: #888;
}

.sub_bn {
    width: 100%;
    height: 300px;
    margin-top: 65px;
    position: relative;
}

.sub_bn .sub_bn_bg {
    width: 100%;
    height: 300px;
    background-image: url('/img/sub/m35_sec01_img.jpg');
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: 0px -350px;
}

.sub_bn_txt .sub_logo {
    width: 50px;
    margin: 0 auto;
}

.sub_bn_txt {
    position: absolute;
    top: 22%;
    left: 50%;
    transform: translateX(-50%);
}

.sub_bn .sub_bn_desc {
    font-size: 25px;
    text-align: center;
    color: #fff;
    margin-top: 25px;
    line-height: 38px;
    font-weight: 300;
}

.sub_bn .sub_bn_desc strong {
    color: #E4D3B9;
}

.equipment_sec .line_gra .line {
    top: 260px;
    height: 70%;
}

.line_gra .line {
    height: 34%;
    position: absolute;
    top: 120px;
    left: 50%;
    width: 2px;

    /* ★ [추가] 2px 두께의 라인이 정확히 정중앙에 위치하도록 중심축 이동 */
    transform: translateX(-50%);

    --grad-opacity-mid: 0.5;
    --grad-opacity-end: 1;
    background: linear-gradient(180deg, rgba(170, 129, 94, 0) 0%,
            rgba(167, 111, 88, var(--grad-opacity-mid)) 50%,
            rgba(167, 111, 88, var(--grad-opacity-end)) 100%);
}


.line_gra .line .dot {
    position: absolute;
    width: 2.5rem;
    bottom: -1em;
    left: 50%;
    transform: translateX(-50%);
}

.line_gra .line .dot svg {
    display: block;
    width: 100%;
    fill: none;
    background: transparent;
}

.int_row.wh *:not(.sub_sec_tit_en) {
    color: #fff;
}

.int_row .sub_tit_desc {
    font-size: 3rem;
    color: #333;
    margin-top: 5rem;
}

.int_row .sub_tit_desc span {
    font-weight: 500;
    color: var(--main-color);
}

.int_row .sub_sec_desc2 {
    font-size: 2.5rem;
    color: #333;
    line-height: 1.5;
    margin-top: 5rem;
    letter-spacing: -1.2px;
}

.int_row .sub_sec_desc2 span {
    font-weight: 500;
    color: var(--main-color);
}

.int_row .sub_sec_disc2 {
    font-size: 2.2rem;
    line-height: 1.5;
    color: #555;
    letter-spacing: -1px;
}

.int_row .sub_sec_txtbox {
    display: inline-block;
    font-size: 2.2rem;
    line-height: 1.6;
    background-color: #F5F2EF;
    border-radius: 1rem;
    padding: 1rem 3.3rem 1rem 2rem;
    margin-top: 1.3rem;
}

.int_row .sub_sec_sbt {
    font-size: 3rem;
    color: #333;
    line-height: 1.5;
    margin-top: 1.9rem;
}

.int_row .sub_sec_sbt .t35 {
    font-size: 3.5rem;
    font-weight: 600;
    color: #E4D3B9;
}

.int_row .bot.t50 {
    margin-top: 5rem;
}

.int_row .sub_sec_tit .c_c {
    color: #C9B7AA;
}

.int_row .squre_txt {
    font-size: 2.5rem;
    font-weight: 600;
    color: #fff;
    padding: 0.2rem 7rem;
    background-color: #9F8D80;
    border-radius: 2rem;
}

.int_row .squre_txt+.disc22 {
    margin-top: 1.8rem;
}

.int_row .disc22 {
    font-size: 2.2rem;
    line-height: 1.6;
}

.int_row .sub_sec_desc25 {
    font-size: 2.5rem;
    line-height: 1.5;
    color: #555;
    letter-spacing: -0.8px;
    margin-top: -1rem;
}

.int_row .sub_sec_desc25 span {
    font-weight: 500;
    color: var(--main-color);
}

/* m35_sec01 */


/* m35_sec02 */

.sub_sec_tit_en {
    font-size: 18px;
    color: #cfc6c0;
}

.sub_sec_tit {
    font-size: 50px;
    font-weight: 600;
    margin-top: 18px;
    margin-bottom: 50px;
}

.int_row .sub_sec_tit.n_mb {
    margin-bottom: 0;
}

.sub_sec_desc {
    font-size: 25px;
    line-height: 1.5;
}

.sub_sec_desc::after {
    display: block;
    content: "";
    height: 1px;
    background: #e4e4e4;
    width: 110%;
    margin: 20px 0px;
}

.sub_sec_text {
    font-size: 22px;
    line-height: 35px;
}

.sub_sec_flex {
    display: flex;
    gap: 67px;
}

.sub_sec_img {
    width: 680px;
    height: 500px;
    overflow: hidden;
    border-radius: 30px;
    margin-top: -50px;
    box-shadow: 4px 4px 15px rgba(0, 0, 0, 0.07);
}

.sub_sec_img img {
    width: 100%;
}

/* m35_sec02 */

/* m35_sec03 */

.circle_list .circle_img {
    display: flex;
    gap: 30px;
    margin-bottom: 45px;
}

.circle_list .circle_img li {
    width: 280px;
    height: 280px;
    border-radius: 280px;
    overflow: hidden;
}

.circle_list .circle_img li img {
    width: 100%;
}

.circle_list_menu {
    width: 1520px;
    height: 35px;
    background-color: #978274;
    border-radius: 360px;
    display: flex;
    margin-bottom: 25px;
}

.circle_list_menu li {
    width: 304px;
    height: 35px;
    text-align: center;
    color: #fff;
    font-size: 18px;
    line-height: 35px;
    text-transform: uppercase;
}

.circle_list_menu li:hover {
    background-color: #C9B7AA;
    cursor: pointer;
    overflow: hidden;
}

.circle_list_menu li:nth-of-type(1):hover {
    border-radius: 30px 0px 0px 30px;
}

.circle_list_menu li:nth-of-type(5):hover {
    border-radius: 0px 30px 30px 0px;
}

.circle_list_desc {
    text-align: center;
    display: flex;
}

.circle_list_desc li {
    width: 260px;
    margin: 0 auto;
}

.circle_list_desc .circle_list_tit {
    font-size: 24px;
    color: #604939;
    font-weight: 600;
}

.circle_list_desc .circle_list_tit::after {
    content: "";
    display: block;
    height: 1px;
    background: #DDD4CE;
    margin: 20px 32px;
    width: 200px;
}

.circle_list_desc .circle_list_text {
    font-size: 20px;
    color: #333;
    line-height: 32px;
}

/* m35_sec03 */

/* m35_sec04 */

.sub_scroll_BN {
    position: relative;
}

.sub_scroll_BN_txt {
    position: absolute;
    top: 30%;
    left: 10%;
}

.sub_scroll_BN_txt .sub_scroll_BN_desc {
    font-size: 37px;
    line-height: 53px;
    margin-bottom: 25px;
    color: #fff;
}

.sub_scroll_BN_txt .sub_scroll_BN_desc strong {
    color: #E4D3B9;
}

.sub_scroll_BN_txt .sub_scroll_BN_desc span {
    font-weight: 600;
}

.sub_scroll_BN_txt .sub_scroll_BN_text {
    font-size: 20px;
    color: #fff;
}

/* m35_sec04 */


/* m35_sec05 */

.step_list {
    margin-top: 130px;
}

.step_list ul {
    display: flex;
    gap: 106px;
}

.step_list li figure {
    width: 300px;
    height: 300px;
    overflow: hidden;
    border-radius: 20px;
    transition: transform 1s ease;
}

.step_list li figure img {
    width: 100%;
}

.step_list li figure:hover {
    transform: translateY(-40px);
    ;
}



.step_list li .step_list_tit {
    font-size: 25px;
    color: #604939;
    font-weight: 600;
    margin-bottom: 18px;
    margin-top: 105px;
}

.step_list li .step_list_tit span {
    color: #DDD4CE;
    font-weight: normal;
}

.step_list li .step_list_desc {
    font-size: 20px;
    line-height: 32px;
}

.step_list_dot {
    position: relative;
}

.step_list_dot .step_line {
    width: 100%;
    border: 1px solid #DDD4CE;
    position: absolute;
    top: -195px;
    left: 0;
}

.step_dot div.active {
    background-color: #978274;
    transition: all 0.3s ease;
}

.step_dot div {
    transition: all 0.3s ease;
}

.step_dot .step_dot01 {
    width: 15px;
    height: 15px;
    border-radius: 15px;
    background-color: #DDD4CE;
    position: absolute;
    top: -200px;
    left: 192px;
}

.step_dot .step_dot02 {
    width: 15px;
    height: 15px;
    border-radius: 15px;
    background-color: #DDD4CE;
    position: absolute;
    top: -200px;
    left: 600px;
}

.step_dot .step_dot03 {
    width: 15px;
    height: 15px;
    border-radius: 15px;
    background-color: #DDD4CE;
    position: absolute;
    top: -200px;
    left: 1004px;
}

.step_dot .step_dot04 {
    width: 15px;
    height: 15px;
    border-radius: 15px;
    background-color: #DDD4CE;
    position: absolute;
    top: -200px;
    left: 1412px;
}

/* m35_sec05 */


/* m35_sec06 */

.cure ul {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 50px;
    row-gap: 40px;
}

.cure li {
    width: 48%;
    height: 268px;
    border-radius: 20px;
    border: 1px solid #978274;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: space-around;
}

.cure li figure {
    width: 160px;
    height: 160px;
    border-radius: 360px;
    background-color: #978274;
    padding: 45px;
    margin-left: -60px;
}


.cure li .step_list_tit {
    font-size: 28px;
    color: #604939;
    font-weight: 600;
}

.cure li .step_list_desc {
    font-size: 20px;
    line-height: 32px;
    color: #333;
    margin-top: 12px;
}

.cure li:nth-of-type(2) figure,
.cure li:nth-of-type(3) figure {
    background-color: #C9B7AA;
}

.cure li:nth-of-type(3) figure img {
    margin-top: 10px;
}

.cure li:nth-of-type(4) figure img {
    margin: 6px;
}

.cure_txt_box {
    margin-left: -160px;
}

/* m35_sec06 */


/* m35_sec07 */

.dark_tit_bg {
    padding-top: 150px;
    background: url('/img/sub/sub_bg.jpg') no-repeat top / 100%;
}

.dark_tit_bg .sub_tit {
    color: #fff;
    text-align: left;
    margin-bottom: 0;
}

.dark_tit_bg .sub_sec_tit_en {
    color: #cdcdcd;
}

.dark_tit_bg .sub_sec_tit {
    color: #fff;
    font-weight: 200;
}

.dark_tit_bg .sub_sec_tit strong {
    color: #E4D3B9;
    font-weight: 500;
}

.wh_box_wr {
    background: #fff;
    border-radius: 50px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, .1);
}

.wh_box_cont {
    display: flex;
    column-gap: 60px;
    padding: 80px 120px;
}

.wh_box_cont .img_box {
    width: 452px;
    height: 382px;
    border-radius: 30px;
    overflow: hidden;
    box-shadow: 0 0 15px rgba(0, 0, 0, .07);
}

.wh_box_cont .img_box figure {
    width: 120%;
}

.wh_box_cont .img_box figure img {
    width: 100%;
}

.wh_box_cont .txt_box {
    width: 600px;
    height: 340px;
    padding-top: 24px;
    position: relative;
}

.wh_box_cont .wh_box_tit_en {
    color: #CFC6C0;
    font-size: 18px;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.wh_box_cont .wh_box_tit {
    font-size: 50px;
    font-weight: 600;
    margin-bottom: 40px;
}

.wh_box_cont .desc {
    font-size: 22px;
    line-height: 1.6;
}

.wh_box_cont .more {
    width: 150px;
    height: 40px;
    border-radius: 360px;
    background-color: #978274;
    color: #fff;
    position: absolute;
    bottom: 0;
    font-size: 19px;
    padding-bottom: 5px;
    line-height: 40px;
}

.wh_box_cont .more p {
    margin-left: 20px;
}


.wh_box_cont .more span {
    color: #fff;
    font-size: 26px;
    position: absolute;
    top: 7px;
    left: 111px;
}

.wh_box_cont .logo_sec {
    margin-top: 200px;
}

.swiper-pagination {
    bottom: 40px !important;
}

.swiper-pagination-bullet {
    width: 14px;
    height: 14px;
    margin: 10px 10px !important;
    background: #d9d9d9;
    border: none;
}

.swiper-pagination-bullet-active {
    background: #978274;
}

.swiper-pagination-bullets.swiper-pagination-horizontal {
    margin: 40px 670px;
}

/* m35_sec07 */

/* m36 */

.con0306 .mid_atc {
    background-image: url('/img/sub/m36_sec01_bg.jpg');
}

.con0306 .sec4 {
    padding: 16.8rem 0 17.1rem;
    background: url('/img/sub/m36_sec04_bg.jpg') no-repeat center center/cover;
}

/* m36 */

/* m41 */

.con0401 .sec2 {
    padding: 13rem 0 18rem;
    background: url('/img/sub/m41_sec01_bg.jpg') no-repeat center center/cover;
}

.graph_ani_wr {
    margin-top: 5.6rem;
    text-align: center;
}

.graph_ani_wr .title {
    width: 100%;
    max-width: 22rem;
    padding: 0.8rem 1.5rem;
    text-align: center;
    font-size: 2.3rem;
    font-weight: 600;
    color: #fff;
    border-radius: 5rem;
    margin: 0 auto 11.8rem;
    border: solid 1px #D2D2D2;
    background-color: #503F33;
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.8s, transform 0.8s;
}

.graph_ani_wr .graph_box {
    max-width: 98.7rem;
    margin: 0 auto;
}

.graph_wrap {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5.2rem;
    height: 29rem;
    padding: 0 4.2rem;
    border-bottom: 1px solid #A3A3A3;
}

.graph_wrap .item {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3.5rem;
}
.graph_wrap .item .bar_wr {
    position: relative;
    display: flex;
    align-items: flex-end;
}

.graph_wrap .item .bar_wr .bar {
    position: relative;
    width: 100%;
    height: 0;
    background: linear-gradient(to bottom, #98735A, #32261E);
    border-radius: 2rem 2rem 0 0;
    transition: height 0.8s;
}

.graph_wrap .item .bar_wr .label {
    position: absolute;
    left: 50%;
    top: -0.9rem;
    color: #fff;
    font-size: 2.2rem;
    font-weight: 600;
    text-align: center;
    white-space: nowrap;
    opacity: 0;
    transform: translate(-50%, -70%);
    transition: opacity 0.8s, transform 0.8s;
}


.graph_wrap .item .bar_wr .label.bubble{
    width: 12.1rem;
    height: 4.8rem;
    top: -1.3rem;
    line-height: 4rem;
    font-weight: 700;
    background: url('/img/sub/bubble_121x48.png') no-repeat center center/cover;
    color: #BF5E1A;
}

.graph_wrap .item .bar_wr .year {
    position: absolute;
    left: 50%;
    bottom: 1rem;
    transform: translateX(-50%);
    color: #fff;
    font-size: 2.3rem;
    font-weight: 600;
    opacity: 0;
    transition: opacity 0.8s;
}

.graph_wrap .item .bar_wr.org .bar {
    background: #FF9950;
}

.graph_wrap .item .bar_wr.beig .bar {
    background: linear-gradient(to bottom, #E4D3B9, #7E7566);
}

.graph_box .subject_list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 5.2rem;
    margin-top: 1.8rem;
    padding: 0 3rem;
    text-align: center;
    font-size: 2.3rem;
    font-weight: 600;
}

.graph_box .subject_list li {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    opacity: 0;
    transform: translateY(-30px);
    transition: opacity 0.8s, transform 0.8s;
}

.graph_box .subject_list li span{
    display: block;
    width: 5rem;
    height: 5rem;
    border-radius: 50%;
    margin-right: 0.9rem;
    background: no-repeat center center/cover;
}

.graph_box .subject_list li span.ic01{
    background-image: url('/img/sub/m41_sec01_ico01.png');
}

.graph_box .subject_list li span.ic02{
    background-image: url('/img/sub/m41_sec01_ico02.png');
}

.graph_box .subject_list li span.ic03{
    background-image: url('/img/sub/m41_sec01_ico03.png');
}

.graph_box .txt_box .subject_list li {
    margin-top: 0.8em;
}

/*그래프 효과*/

.graph_ani_wr.aos-animate .title {
    opacity: 1;
    transform: unset;
}

.graph_wrap .item:nth-of-type(1) .bar_wr:nth-of-type(2) .bar {
    transition-delay: 0.2s;
}

.graph_wrap .item:nth-of-type(2) .bar_wr:nth-of-type(1) .bar {
    transition-delay: 0.4s
}

.graph_wrap .item:nth-of-type(2) .bar_wr:nth-of-type(2) .bar {
    transition-delay: 0.6s
}

.graph_wrap .item:nth-of-type(3) .bar_wr:nth-of-type(1) .bar {
    transition-delay: 0.8s
}

.graph_wrap .item:nth-of-type(3) .bar_wr:nth-of-type(2) .bar {
    transition-delay: 1s
}

.graph_wrap .item:nth-of-type(4) .bar_wr:nth-of-type(1) .bar {
    transition-delay: 1.2s
}

.graph_wrap .item:nth-of-type(4) .bar_wr:nth-of-type(2) .bar {
    transition-delay: 1.4s
}

.graph_ani_wr.aos-animate .graph_wrap .item .bar[data-bar="1"] {
    height: 59%;
}

.graph_ani_wr.aos-animate .graph_wrap .item .bar[data-bar="2"] {
    height: 92.1%;
}

.graph_ani_wr.aos-animate .graph_wrap .item .bar[data-bar="3"] {
    height: 36.7%;
}

.graph_ani_wr.aos-animate .graph_wrap .item .bar[data-bar="4"] {
    height: 55.1%;
}

.graph_ani_wr.aos-animate .graph_wrap .item .bar[data-bar="5"] {
    height: 22.5%;
}

.graph_ani_wr.aos-animate .graph_wrap .item .bar[data-bar="6"] {
    height: 33%;
}

.graph_wrap .item .bar[data-bar="1"] .year {
    transition-delay: 0.3s;
}

.graph_wrap .item .bar[data-bar="2"] .year {
    transition-delay: 0.5s;
}

.graph_wrap .item .bar[data-bar="3"] .year {
    transition-delay: 0.7s;
}

.graph_wrap .item .bar[data-bar="4"] .year {
    transition-delay: 0.9s;
}

.graph_wrap .item .bar[data-bar="5"] .year {
    transition-delay: 1.1s;
}

.graph_wrap .item .bar[data-bar="6"] .year {
    transition-delay: 1.3s;
}

.graph_ani_wr.aos-animate .graph_wrap .item .bar_wr .year {
    opacity: 1;
}

.graph_wrap .item .bar[data-bar="1"] .label {
    transition-delay: 0.5s;
}

.graph_wrap .item .bar[data-bar="2"] .label {
    transition-delay: 0.7s;
}

.graph_wrap .item .bar[data-bar="3"] .label {
    transition-delay: 0.9s;
}

.graph_wrap .item .bar[data-bar="4"] .label {
    transition-delay: 1.1s;
}

.graph_wrap .item .bar[data-bar="5"] .label {
    transition-delay: 1.3s;
}

.graph_wrap .item .bar[data-bar="6"] .label {
    transition-delay: 1.5s;
}

.graph_ani_wr.aos-animate .graph_wrap .item .bar_wr .label {
    opacity: 1;
    transform: translate(-50%, -100%);
}

.graph_ani_wr.aos-animate .graph_box .subject_list li {
    opacity: 1;
    transform: translateY(0);
}

.graph_box .subject_list li:nth-of-type(1) {
    transition-delay: 0.5s;
}

.graph_box .subject_list li:nth-of-type(2) {
    transition-delay: 0.8s;
}

.graph_box .subject_list li:nth-of-type(3) {
    transition-delay: 1.1s;
}

.hov_img_box {
    position: relative;
}

.hov_img_box img:first-of-type{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    transition: opacity 0.3s linear;
}

.hov_img_box:hover img:first-of-type{
opacity: 0;
}

/* m41 */

/* m42_sec05 */

.con0402 .mid_atc {
    background-image: url('/img/sub/m42_sec01_bg.jpg');
}

.con0402 .swiper-pagination-bullets.swiper-pagination-horizontal{
    left: 55% !important;
}

.major_wr {
    width: 100%;
    /* 고정 너비 대신 100%로 변경하여 화면에 꽉 차게 */
    max-width: 1920px;
    /* 최대 너비 제한 */
    margin: -40px auto;
}

.major_slide,
.major02_slide,
.major03_slide,
.major04_slide,
.major05_slide {
    width: 100%;
    margin-top: 84px;
}

.major_wr .swiper-slide {
    background: rgba(228, 211, 185, 0.1);
    width: 1520px;
    height: 675px;
    border-radius: 30px;
    border: 1px solid #aa815f;
}

.major_con {
    display: flex;
    column-gap: 60px;
    padding: 80px 120px;
}

.major_con .txt_box {
    width: 720px;
    height: 472px;
}

.major_con .major_tit {
    color: #604939;
    font-size: 45px;
    font-weight: 600;
    margin-bottom: 30px;
}

.major_con .major_desc {
    font-size: 20px;
    margin-bottom: 42px;
    line-height: 1.5;
}

.major_con .major_list .major_btn {
    position: relative;
    width: 205px;
    height: 63px;
    border: 1px solid #aa815f;
    border-radius: 150px;
    background: #fff;
    display: flex;
    align-items: center;
    margin-bottom: 24px;
}

.major_con .major_list .major_btn .btn_bg {
    position: absolute;
    left: 9px;
    width: 82px;
    height: 42px;
    background: #AA815F;
    border-radius: 150px;
    z-index: 1;
    transition: all 0.45s cubic-bezier(0.65, 0, 0.35, 1);
}


.major_con .major_list .major_btn ul {
    position: relative;
    z-index: 2;
    display: flex;
    width: 100%;
}

.major_con .major_list .major_btn ul li {
    flex: 1;
    height: 42px;
    line-height: 42px;
    font-size: 24px;
    font-weight: 600;
    color: #555;
    text-align: center;
    cursor: pointer;
    transition: color 0.3s;
}

.major_con .major_list .major_btn ul li.active {
    color: #fff;
}

.major_con .major_list>ul>li {
    display: flex;
    align-items: center;
    gap: 14px;
    width: 620px;
    height: 56px;
    border-radius: 15px;
    background: rgba(201, 183, 170, 0.11);
    font-size: 20px;
    margin-bottom: 6px;
}

.major_con .major_list>ul>li>span {
    display: block;
    width: 28px;
    height: 24px;
    margin-left: 34px;
}

.major_con .img_box {
    width: 616px;
    height: 500px;
    border-radius: 30px;
    overflow: hidden;
    box-shadow: 4px 4px 15px rgba(0, 0, 0, .07);
}

.major_con .img_box figure {
    width: 110%;
}

.major_con .img_box figure img {
    width: 100%;
}

.major_con .major_list .st,
.major_con .major_list .ca {
    position: relative;
    top: 0;
    left: 0;
}

.major_con .ca {
    display: none;
}

.major-swiper-button-prev,
.major-swiper-button-next {
    width: 74px;
    height: 74px;
    position: absolute;
    /* relative에서 absolute로 변경 */
    top: 50%;
    /* 부모 높이의 정확히 절반 지점 */
    transform: translateY(-50%);
    /* 버튼 높이의 절반만큼 위로 올려 완벽한 중앙 정렬 */
    z-index: 10;
    cursor: pointer;
}

.major-swiper-button-prev {
    left: 160px;
    /* 좌측 위치 */
    background: url('/img/sub/m40_prev_icon.png') no-repeat;
}

.major-swiper-button-next {
    right: 160px;
    /* right: -97.5% 대신 픽셀로 고정하는 것이 정확합니다 */
    background: url('/img/sub/m40_next_icon.png') no-repeat;
}


.major-swiper-pagination,
.major02-swiper-pagination,
.major03-swiper-pagination,
.major04-swiper-pagination,
.major05-swiper-pagination {
    display: flex;
    gap: 30px;
    margin-bottom: 20px;
    padding-left: 120px;
    /* 메인 콘텐츠 시작점과 맞춤 */
}

/* Swiper가 생성하는 기본 불렛 스타일 초기화 및 커스텀 */
.major-swiper-pagination .swiper-pagination-bullet,
.major02-swiper-pagination .swiper-pagination-bullet,
.major03-swiper-pagination .swiper-pagination-bullet,
.major04-swiper-pagination .swiper-pagination-bullet,
.major05-swiper-pagination .swiper-pagination-bullet {
    width: auto;
    height: auto;
    background: none;
    opacity: 1;
    font-size: 24px;
    font-weight: 600;
    color: #333;
    cursor: pointer;
    border-radius: 0;
    margin: 0 !important;
    position: relative;
    top: 0;
    left: -31.2%;
    padding-bottom: 13px;

}

.major02-swiper-pagination .swiper-pagination-bullet {
    left: -29.2% !important;
}

.major03-swiper-pagination .swiper-pagination-bullet {
    left: -33.2% !important;
}

.major04-swiper-pagination .swiper-pagination-bullet {
    left: -32.6% !important;
}

.major05-swiper-pagination .swiper-pagination-bullet {
    left: -35.5% !important;
}

/* 활성화된 탭 스타일 */
.major-swiper-pagination .swiper-pagination-bullet-active,
.major02-swiper-pagination .swiper-pagination-bullet-active,
.major03-swiper-pagination .swiper-pagination-bullet-active,
.major04-swiper-pagination .swiper-pagination-bullet-active,
.major05-swiper-pagination .swiper-pagination-bullet-active {
    color: #604939;
    font-weight: 600;
    border-bottom: 2px solid #AA815F;
}

/* m42_sec05 */

/* m43_sec04 */
.con0403 .mid_atc {
    background-image: url('/img/sub/m43_sec01_bg.jpg');
}

.con0403 .swiper-pagination-bullets.swiper-pagination-horizontal {
    position: relative;
    margin: 0 !important;
    left: 54% !important;
    top: 40px !important;
    transform: translateX(-50%);
    width: auto !important;
    /* 너비를 콘텐츠에 맞춤 */
    display: flex;
    justify-content: center;
}

/* m43_sec04 */

/* m4n */

.con0404 .swiper-pagination-bullets.swiper-pagination-horizontal{
    left: 51% !important;
}

.con0404 .mid_atc {
    background-image: url('/img/sub/m44_sec01_bg.jpg');
}

.con0405 .mid_atc {
    background-image: url('/img/sub/m45_sec01_bg.jpg');
}

.con0405 .mid_atc.atc2 {
    background-image: url('/img/sub/m45_sec06_bg.jpg');
}

/* m4n */

/* m5n */

.move_sec {
    display: flex;
}

.move_sec li {
    width: 50%;
}

.move_sec li a {
    display: block;
    padding-top: 31.25%;
    position: relative;
    background: no-repeat center center/cover;
}

.move_sec li a::before {
    content: '';
    width: 100%;
    height: 100%;
    background-color: rgba(86, 60, 43, 0.5);
    position: absolute;
    top: 0;
    left: 0;
    mix-blend-mode: multiply;
    opacity: 0;
    transition: opacity 0.5s;
}

.move_sec li:hover a::before {
    opacity: 1;
}

.move_sec li .txtbox {
    color: #fff;
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    opacity: 0.6;
    z-index: 2;
    transform: translate(-50%, -50%);
    transition: all 0.5s;
}

.move_sec li:hover .txtbox {
    opacity: 1;
}

.move_sec .txtbox .disc {
    font-size: 2rem;
}

.move_sec .txtbox .subject {
    font-size: 4rem;
    font-weight: 600;
}

.move_sec .txtbox .arrow {
    display: inline-block;
    height: 0;
    opacity: 0;
    width: 6rem;
    background: url('/img/sub/arrow_60x60.png') no-repeat center center/cover;
    margin-top: 2.5rem;
    transition: all 0.3s;
}

.move_sec li:hover .txtbox .arrow {
    height: 6rem;
    opacity: 1;
}


.move_sec li .dosu {
    background-image: url('/img/sub/m51_sec01_bg01.jpg');
}

.move_sec li .mulri {
    background-image: url('/img/sub/m51_sec01_bg02.jpg');
}

.con0502 .mid_atc {
    background-image: url('/img/sub/m52_sec01_bg.jpg');
}

.con0502 .sec4 {
    padding: 16.8rem 0 17.1rem;
    background: url('/img/sub/m52_sec04_bg.jpg') no-repeat center center/cover;
}

.con0503 .mid_atc {
    background-image: url('/img/sub/m53_sec01_bg.jpg');
}

.con0503 .sec4 {
    padding: 16.8rem 0 17.1rem;
    background: url('/img/sub/m53_sec04_bg.jpg') no-repeat center center/cover;
}

.cir5_wr ul.t55 li .txtbox .subject {
    margin-bottom: 5.5rem;
}

.con0504 .mid_atc {
    background-image: url('/img/sub/m54_sec01_bg.jpg');
}

.ht_list {
    display: flex;
    flex-wrap: wrap;
    column-gap: 12rem;
    row-gap: 4rem;
    margin-top: 10rem;
}

.ht_list li {
    width: calc(50% - 6rem);
    min-height: 26.8rem;
    padding: 0 3rem 0 5rem;
    border-radius: 2rem;
    border: solid 1px #978274;
    display: flex;
    gap: 5rem;
    align-items: center;
    transform: translateY(50px);
    opacity: 0;
    transition: all 0.6s linear;
    background: #fff;
}

.ht_list li dl dt {
    font-size: 2.8rem;
    font-weight: 600;
    color: #604939;
    margin-bottom: 2rem;
}

.ht_list li dl dd {
    font-size: 2rem;
    line-height: 1.5;
    color: #333;
    letter-spacing: -0.8px;
    white-space: nowrap;
}

.ht_list.aos-animate li {
    transform: translateY(0);
    opacity: 1;
}

.ht_list.aos-animate li:nth-of-type(2) {
    transition-delay: 0.2s;
}

.ht_list.aos-animate li:nth-of-type(3) {
    transition-delay: 0.4s;
}

.ht_list.aos-animate li:nth-of-type(4) {
    transition-delay: 0.6s;
}

.tgt_row_wr {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 10rem;
}

.tgt_row_wr.t65{
    margin-top: 6.5rem;
}

.tgt_row_wr .imgbox {
    width: 44.74%;
}

.tgt_row_wr .tgt_list {
    width: 50%;
}

.tgt_list li {
    display: flex;
    align-items: center;
    gap: 1.4rem;
    padding: 2.4rem 2.5rem;
    background: #fff;
    border-radius: 1.5rem;
    transform: translateY(50px);
    opacity: 0;
    transition: all 0.6s linear;
}

.tgt_list li .numb {
    display: inline-block;
    width: 5.5rem;
    line-height: 3.2rem;
    border-radius: 5rem;
    font-size: 2rem;
    text-align: center;
    color: #fff;
    background-color: var(--main-color);
}

.tgt_list li:nth-of-type(2n) .numb {
    background-color: #C9B7AA;
}

.tgt_list li p {
    font-size: 2rem;
}

.tgt_list li+li {
    margin-top: 1.4rem;
}

.tgt_row_wr.aos-animate .tgt_list li {
    transform: translateY(0);
    opacity: 1;
}

.tgt_row_wr.aos-animate .tgt_list li:nth-of-type(2) {
    transition-delay: 0.2s;
}

.tgt_row_wr.aos-animate .tgt_list li:nth-of-type(3) {
    transition-delay: 0.4s;
}

.tgt_row_wr.aos-animate .tgt_list li:nth-of-type(4) {
    transition-delay: 0.6s;
}

.tgt_row_wr.aos-animate .tgt_list li:nth-of-type(5) {
    transition-delay: 0.8s;
}

.con0505 .mid_atc {
    background-image: url('/img/sub/m55_sec01_bg.jpg');
}

/* m5n */


/* 퀵메뉴 */
.quick {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: fixed;
    right: 4rem;
    bottom: 9rem;
    z-index: 100;
}

.quick ul {
    width: 77px;
    height: 355px;
    border-radius: 3.9rem;
    background-color: #886E58;
}

.quick ul li {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 77px;
    height: 84px;
}

.quick ul li+li {
    position: relative;
}

.quick ul li a {
    display: block;
    transition: opacity 0.4s;
}

.quick ul li a:hover {
    opacity: 0.6;
}

.quick ul li .blog {
    width: 31px;
    height: 31px;
    margin-top: 25px;
    background: url('/img/common/quick_blog.png') no-repeat;
}

.quick ul li .map {
    width: 31px;
    height: 31px;
    margin-top: 25px;
    background: url('../img/common/quick_map_wh.png') no-repeat;
}


.quick ul li .reserve {
    width: 31px;
    height: 31px;
    margin-top: 25px;
    background: url('/img/common/quick_reserve_wh.png') no-repeat;
}

.quick ul li .naver {
    width: 31px;
    height: 31px;
    margin-top: 25px;
    background: url('/img/common/quick_naver_gr.png') no-repeat;
}


.quick ul li p {
    margin: 35px -30px;
    font-size: 12px;
    color: #fff;
    text-align: center;
    font-weight: 300;
}

.quick ul li:hover p {
    color: #fff;
}

/* .goTop {
	height: 0;
	transform: scale(0);
	overflow: hidden;
	transition: all .5s cubic-bezier(0.33, 1, 0.68, 1);
}

.goTop.fix {
	height: auto;
	margin-top: 2.6rem;
	transform: scale(1);
} */

.goTop span {
    display: block;
    width: 61px;
    height: 61px;
    margin: 15px;
    background: url('/img/common/quick_up_brown.png');
    opacity: 0.5;
}

.goTop span:hover {
    opacity: 1;
}

/* 퀵메뉴 */

/* 더보기버튼 */
.view_button02 {
    position: fixed;
    /* 부모 요소를 기준으로 배치 */
    top: 0;
    left: 0;
    transform: translate(50%, 50%) scale(0);
    z-index: 10;
    transition: opactiy 0.3s, transform 0.1s ease-out;
    pointer-events: none;
}

.view_button02 figure {
    margin-left: 38px;
    margin-bottom: 5px;
}

/* 더보기버튼 */