/* 서브 공통 */
.eng{ font-family: "amandine", sans-serif; }
.br{ display: block; }

#header{ position: absolute; }

#header #logo svg *{ fill: #2B6845; }
#header .menu_open button i{ background-color: #2B2B2B; }
#header.wt #logo svg *{ fill: #fff; transition-delay: 0s; }
#header.wt .menu_open button i{ background-color: #fff; transition-delay: 0s; }

#header.bd #logo svg *{ fill: #2B6845; }
#header.bd .menu_open button i{ background-color: #2B2B2B; }

#sub .inner{ width: 1520px; }

#sub .sub_visual{ height: 100vh; width: 100%; position: relative; overflow: hidden; }
#sub .sub_visual .s_tit{ width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; flex-flow: column; gap: 40px; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); }
#sub .sub_visual .s_tit strong{ display: flex; }
#sub .sub_visual .s_tit strong i{ font-family: "amandine", sans-serif; font-size: 80px; color:#404040; }
#sub .sub_visual .s_tit .loc { opacity: 0; filter:blur(10px); transition: opacity 1s, filter 1s; transition-delay: .2s; }
#sub .sub_visual .s_tit .loc ul{ display: flex; justify-content: center; align-items: center; gap: 20px; }
#sub .sub_visual .s_tit .loc ul li{ font-size: 18px; color:#A8A8A8; transition: color .3s; transition-delay: .5s; }
#sub .sub_visual .s_tit .loc ul li:last-child{ font-weight: 600; color:#2B6845; }


#sub .sub_visual .s_img ul{ display: flex; width: 100%; height: 100%; }
#sub .sub_visual .s_img{ width: 100%; display: block; min-height: 100vh; min-width: 100vw; object-fit: fill; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); height: 100%; }
#sub .sub_visual .s_img ul li{ width: 33.3333%; position: relative; height: 100%; transition-delay: 2s; }
#sub .sub_visual .s_img ul li img{ width: calc(100% + 1px); display: block; min-height: 100vh; object-fit: fill; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); }


#sub .sub_visual .s_img ul li:nth-child(3){ transform: translateY(200%); }
#sub .sub_visual .s_img ul li:nth-child(2){ transform: translateY(150%); }
#sub .sub_visual .s_img ul li:nth-child(1){ transform: translateY(110%); }

#sub .sub_visual.on2 .s_img ul li:nth-child(3){ transform: translateY(0);transition: transform 1.5s; transition-delay: 0s; }
#sub .sub_visual.on2 .s_img ul li:nth-child(2){ transform: translateY(0);transition: transform 1.5s; transition-delay: 0s; }
#sub .sub_visual.on2 .s_img ul li:nth-child(1){ transform: translateY(0);transition: transform 1.5s; transition-delay: 0s; }

#sub .sub_visual.on .s_tit .loc{ opacity: 1; filter: blur(0); }


#sub .sub_visual .s_tit strong i{filter: blur(5px);opacity: 0;transform: translateY(-70px);transition: transform 1.5s, opacity 1.5s, color .3s; display: block; }
#sub .sub_visual.on .s_tit strong i{filter: blur(0);opacity: 1;transform: translateY(0); }
#sub .sub_visual.on .s_tit strong i:nth-child(1){transition-delay: 0.3s, 0.3s, 0.5s; }
#sub .sub_visual.on .s_tit strong i:nth-child(2){transition-delay: 0.4s, 0.4s, 0.5s; }
#sub .sub_visual.on .s_tit strong i:nth-child(3){transition-delay: 0.5s, 0.5s, 0.5s; }
#sub .sub_visual.on .s_tit strong i:nth-child(4){transition-delay: 0.6s, 0.6s, 0.5s; }
#sub .sub_visual.on .s_tit strong i:nth-child(5){transition-delay: 0.7s, 0.7s, 0.5s; }
#sub .sub_visual.on .s_tit strong i:nth-child(6){transition-delay: 0.8s, 0.8s, 0.5s; }
#sub .sub_visual.on .s_tit strong i:nth-child(7){transition-delay: 0.9s, 0.9s, 0.5s; }
#sub .sub_visual.on .s_tit strong i:nth-child(8){transition-delay: 1.0s, 1s, 0.5s; }
#sub .sub_visual.on .s_tit strong i:nth-child(9){transition-delay: 1.1s, 1.1s, 0.5s; }
#sub .sub_visual.on .s_tit strong i:nth-child(10){transition-delay: 1.2s, 1.2s, 0.5s; }
#sub .sub_visual.on .s_tit strong i:nth-child(11){transition-delay: 1.3s, 1.3s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(12){transition-delay: 1.4s, 1.4s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(13){transition-delay: 1.5s, 1.5s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(14){transition-delay: 1.6s, 1.6s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(15){transition-delay: 1.7s, 1.7s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(16){transition-delay: 1.8s, 1.8s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(17){transition-delay: 1.9s, 1.9s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(18){transition-delay: 2s, 2s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(19){transition-delay: 2.1s, 2.1s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(20){transition-delay: 2.2s, 2.2s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(21){transition-delay: 2.3s, 2.3s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(22){transition-delay: 2.4s, 2.4s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(23){transition-delay: 2.5s, 2.5s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(24){transition-delay: 2.6s, 2.6s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(25){transition-delay: 2.7s, 2.7s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(26){transition-delay: 2.8s, 2.8s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(27){transition-delay: 2.9s, 2.9s, .5s;}
#sub .sub_visual.on .s_tit strong i:nth-child(28){transition-delay: 3s, 3s, .5s;}


#sub .sub_visual.on2 .s_tit .loc ul li{ color: #fff !important; }
#sub .sub_visual.on2 .s_tit strong i{ color: #fff !important; }


#sub .con_w{ padding-top: 160px; } 
#sub .con_w:last-child{ padding-bottom: 200px; }

#sub.press .sub_visual.on2 .s_tit .loc ul li{ color: #A8A8A8 !important; }
#sub.press .sub_visual.on2 .s_tit .loc ul li:last-child{ color: #2B6845 !important; }
#sub.press .sub_visual.on2 .s_tit strong i{ color: #404040 !important; }

#sub.press .sub_tab{ position: static; transform: translate(0,0) !important; background-color: #F4F5F4; }
#sub.press .sub_tab .wrap > div > button{ color: #5B645F; }
#sub.press .sub_tab .wrap > div > button{ color: #5B645F; }
#sub.press .sub_tab .wrap > div > button svg path{ stroke: #5B645F; }
#sub.press .sub_tab .wrap > div > ul{ top: auto; bottom: -10px; transform: translate(0,100%); clip-path: polygon(0 0, 100% 0, 100% 0, 0 0); }
#sub.press .sub_tab .wrap > div > ul.on{ clip-path: polygon(0 100%, 100% 100%, 100% 0, 0 0);  }
.sub_tab{ position: absolute; left: 50%; bottom: 40px; transform: translate(-50%,150%); padding: 0 40px; height: 70px; border-radius: 80px; backdrop-filter: blur(20px) brightness(108%); }
.sub_tab .wrap{ height: 100%; display: flex; position: relative; gap: 40px; }
.sub_tab .wrap:after{ content:""; display: block; width: 1px; height: 30px; background-color: rgba(255,255,255,0.3); position: absolute; left: 50%; top: 50%; transform: translate(0,-50%); }
.sub_tab .wrap > div{ width: 320px; height: 100%; position: relative; }
.sub_tab .wrap > div > button{ width: 100%; height: 100%; font-size: 18px; font-weight: 500; color: #fff; text-align: left; padding: 0 20px; position: relative; }
.sub_tab .wrap > div > button svg{ display: block; position: absolute; right: 20px; top: 50%; transform: translate(0,-50%); }
.sub_tab .wrap > div > ul{ position: absolute; left: 0; top: -10px; transform: translate(0,-100%); width: 100%; border-radius: 10px; background-color: #fff; padding: 30px 20px;  clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0% 100%); transition: clip-path .3s; border: 1px solid #efefef; }
.sub_tab .wrap > div > ul > li > a{ font-size: 16px; color: #333; transition: color .3s; }
.sub_tab .wrap > div > ul > li > a:hover{ color: #2B6845; }
.sub_tab .wrap > div > ul > li{ margin-bottom: 15px;  }
.sub_tab .wrap > div > ul > li:last-child{ margin-bottom: 0; }
.sub_tab .wrap > div > ul.on{ clip-path: polygon(0 100%, 100% 100%, 100% 0, 0 0); }
#sub .sub_visual .sub_tab{ transition: transform 1s; transition-delay: .5s; }
#sub .sub_visual.on2 .sub_tab{ transform: translate(-50%,0); }

#sub .sub_visual .sub_tab {  transition: bottom 1s, opacity 1s; }
#sub .sub_visual .sub_tab.ac{ bottom: -40px; opacity: 0; }


#sub .sub_con{ position: relative; padding-top: 40px; }
#sub .sub_con > .sub_tab{ backdrop-filter: blur(0); transform: translate(0,0); bottom: auto; top: 40px; position: sticky; width: auto; left: 0; background-color: transparent; border-radius: 0; padding: 0; display: flex; justify-content: center; z-index: 99999; }
#sub .sub_con > .sub_tab .wrap{ background-color: #F4F5F4; border-radius: 80px; padding: 0 40px; }
#sub .sub_con > .sub_tab .wrap > div > button{ color: #5B645F; }
#sub .sub_con > .sub_tab .wrap > div> ul{ top: auto; bottom: -10px; transform: translate(0,100%); clip-path: polygon(0 0, 100% 0, 100% 0, 0 0); }
#sub .sub_con > .sub_tab .wrap > div> ul.on{ clip-path: polygon(0 100%, 100% 100%, 100% 0, 0 0); }

#sub .sub_con > .sub_tab.ac{ z-index: -1; }



/* 로운진료안내 */
#sub .sub_wrap{ display: flex; }
#sub .c_tit{ width: 340px; }
#sub .c_tit strong{ font-size: 60px; color:#404040; font-weight: 400; line-height: 70px; margin-bottom: 25px; display: block; text-align: left; }
#sub .c_tit p:before{ width: 32px; height: 1px; background-color: #E8E8E8; content:""; display: block; }
#sub .c_tit p{ display: flex; align-items: center; font-size: 22px; color:#404040; font-weight: 300; gap: 20px; }
#sub .sub_wrap .c_con{ width: calc(100% - 340px); margin-top: 180px; }


#sub .c_tit2{ width: 100%; }


#sub.info .con01{ height: 100vh; width: 100%; position: relative; display: flex; flex-flow: column; justify-content: center; align-items: center; text-align: center; }
#sub.info .con01 .bg{ position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); z-index: -1; }
#sub.info .con01 .wrap{ position: relative; display: flex; justify-content: center; }
#sub.info .con01 .wrap strong{ font-size: 44px; line-height: 64px; letter-spacing: -0.02em; font-weight: 400; color: #B9BFBC; }
#sub.info .con01 .wrap strong b{ font-weight: 600; }
#sub.info .con01 .wrap strong.cr2{ color:#202020; position: absolute; left: 50%; top: 0; transform: translate(-50%,0); width: 100%; clip-path: polygon(0 0, 0 0, 0 100%, 0 100%); transition: clip-path 2s; }
#sub.info .con01 .wrap strong.cr2 b{ color:#2B6845; }
#sub.info .con01 .wrap strong.cr3{ transition-delay: .3s; }
#sub.info .con01 .wrap strong.cr4{ transition-delay: .7s; }
#sub.info .con01.on strong.cr2{ clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }

#sub.info .con02{ background-color: #F6F7F8; padding-bottom: 160px; }

#sub.info .con02 .b_list{ display: flex; gap: 50px; }
#sub.info .con02 .b_list > div{ width: 33.333333333%; }
#sub.info .con02 .b_list > div dl{ background: #ECF0EE;
background: linear-gradient(180deg, rgba(236, 240, 238, 0) 0%, rgba(236, 240, 238, 1) 100%); padding: 40px; padding-top: 130px; position: relative; }
#sub.info .con02 .b_list > div dl:after{ content:""; display: block; width: 100%; height: 1px; background-color: #E7E9E8; position: absolute; left: -20px; top: 40%; }
#sub.info .con02 .b_list > div dl dt{ font-size: 24px; font-weight: 600; color:#3D413F; letter-spacing: -0.02em; margin-bottom: 20px; }
#sub.info .con02 .b_list > div dl dd{ font-size: 18px; font-weight: 400; color:#5B645F; letter-spacing: -0.02em; }
#sub.info .con02 .b_list > div dl dd span{ color:#2B6845; }
#sub.info .con02 .b_list > div > p{ text-align: right; margin-top: 30px; font-size: 16px; color: #969E99; }

#sub.info .con03 .i_box{ position: relative; height: 460px; width: 100%; overflow: hidden; border-radius: 20px; }
#sub.info .con03 .i_box .img{ position: relative; }
#sub.info .con03 .i_box .txt > div:nth-child(1):after{ width: 50%; height: 100%; content:""; display: block; background: #000000; z-index: 1; opacity: 0; transition: opacity .3s;
background: linear-gradient(270deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%); position: absolute; left: 0; top: 0; mix-blend-mode: soft-light; -webkit-mix-blend-mode: soft-light; }
#sub.info .con03 .i_box .img{ width: 100%; height: 100%; }
#sub.info .con03 .i_box .txt > div:nth-child(2):after{ width: 50%; height: 100%; content:""; display: block; background: #000000; z-index: 1; opacity: 0; transition: opacity .3s;
background: linear-gradient(90deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%); position: absolute; right: 0; top: 0; mix-blend-mode: soft-light; -webkit-mix-blend-mode: soft-light; }
#sub.info .con03 .i_box .img{ width: 100%; height: 100%; }
#sub.info .con03 .i_box .img img{display: block; width: 100%; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); border-radius: 20px; }
#sub.info .con03 .i_box .txt{ display: flex; position: absolute; left: 0; top: 0; width: 100%; height: 100%; }
#sub.info .con03 .i_box .txt > div .tt{ width: 100%; height: 100%; display: flex; flex-flow: column; align-items: center; justify-content: center; text-align: center; gap: 20px; transform: translateY(50px); transition: transform .5s; }
#sub.info .con03 .i_box .txt > div{ width: 50%; height: 100%; }
#sub.info .con03 .i_box .txt > div strong{ font-size: 28px; letter-spacing: 0.02em; color: #fff; font-weight: 600; display: block; }
#sub.info .con03 .i_box .txt > div p{ font-size: 18px; line-height: 32px; color:#FFFFFF; opacity: 0; transition: opacity .5s; }
#sub.info .con03 .i_box .txt > div:hover:after{ opacity: 1; }
#sub.info .con03 .i_box .txt > div:hover .tt{ transform: translateY(0); }
#sub.info .con03 .i_box .txt > div:hover p{ opacity: 1; }
#sub.info .con03 .i_box .txt > div:hove60r p{ opacity: 1; }
#sub.info .con04{ background: #FFFFFF;
background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(246, 247, 248, 1) 100%); }

#sub .txt_dl{ display:flex; flex-flow: column; gap: 120px; padding-left: 40px; position: relative; }
#sub .txt_dl:after{ content:""; display: block; width: 1px; height: calc(100% + 200px); position: absolute; left: 40px; bottom: 0; background-color: #EFEFEF; }
#sub .txt_dl dl{ display: flex; flex-flow: column; gap: 25px;  }
#sub .txt_dl dl dt{ font-size: 24px; font-weight: 600; color:#2B6845; padding-left: 40px; border-left: 2px solid #2B6845; }
#sub .txt_dl dl dd{ position: relative; padding-left: 40px; }

.dot_li{ display: flex; flex-flow: column; gap: 20px; }

.dot_li li{ padding-left: 12px; font-size: 18px; line-height: 32px; color:#5B645F; letter-spacing: -0.02em; position: relative; }

.dot_li li:after{content:""; display: block; box-sizing: border-box; border-radius: 50%; border: 1px solid #5B645F; position: absolute; left: 0; top: 13px; width: 5px; height: 5px; }


/* 의료진 인사말 */
#sub.greeting .con01 .img{ position: relative; display: flex; flex-flow: column; }
#sub.greeting .con01 .img .bg{ width: 100%; position: absolute; left: 50%; top: 43%; transform: translate(-50%,-50%); text-align: center; z-index: -2;  }
#sub.greeting .con01 .img .bg strong{ display: block; font-size: 100px; color:#E5E9E7; font-weight: 400; }
#sub.greeting .con01 .img .box{ display: flex; justify-content: center;  }
#sub.greeting .con01 .img .box .wrap{ position: relative; }
#sub.greeting .con01 .img .box .wrap:after{ content:""; display: block; width: 100%; height: 50%; border-radius: 20px 20px 0 0; background-color: #F6F7F8; position: absolute; left: 0; bottom: 0; z-index: -1; }
#sub.greeting .con01 .img .box .wrap img{ display: block; }
#sub.greeting .con01 .cw{ background: #FFFFFF;
background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(246, 247, 248, 1) 100%); padding-top: 80px; padding-bottom: 160px; border-top: 1px solid #EFEFEF; }
#sub.greeting .con01 .cw .txt{ text-align: center; }
#sub.greeting .con01 .cw .txt strong{ font-size: 28px; line-height: 48px; color:#404040; letter-spacing: -0.02em; font-weight: 400; display: block; margin-bottom: 40px; }
#sub.greeting .con01 .cw .txt strong b{ font-size: 32px; color:#2B6845; font-weight: 600; }
#sub.greeting .con01 .cw .txt p{ font-size: 18px; line-height: 34px; color:#404040;letter-spacing: -0.02em; margin-bottom: 60px; }
#sub.greeting .con01 .cw .txt em{ font-size: 18px; color:#404040; letter-spacing: -0.02em; }
#sub.greeting .con01 .cw .txt em b{ font-weight: 600; }
#sub.greeting .con01 .cw .case{ margin-top: 120px; border-top: 1px solid #EFEFEF; border-bottom: 1px solid #EFEFEF; }
#sub.greeting .con01 .cw .case .inner{ display: flex; }
#sub.greeting .con01 .cw .case dl{ width: 33.333333333%; height: 280px; displaY: flex; flex-flow: column; justify-content: center; border-right: 1px solid #EFEFEF; gap: 20px; }
#sub.greeting .con01 .cw .case dl:nth-child(1){ border-left: 1px solid #efefef; }
#sub.greeting .con01 .cw .case dl dt{ padding-left: 65px; font-size: 18px; font-weight: 500; color: #2B6845; border-left: 2px solid #2B6845; }
#sub.greeting .con01 .cw .case dl dd{font-size: 18px; color:#5B645F; font-weight: 400; padding-left: 65px; }
#sub.greeting .con01 .cw .case dl dd b{ font-size: 50px; font-weight: 500; }


#sub.greeting .img_wrap{ display: flex; position: relative; margin-top: 90px; }
#sub.greeting .img_wrap:after{ content:""; display: block; width: 100%; height: 1px; background-color: #EFEFEF; position: absolute; left: 0; top: -20px; }
#sub.greeting .img_wrap:before{ content:""; display: block; width: 100%; height: 1px; background-color: #EFEFEF; position: absolute; left: 0; bottom:-20px; }
#sub.greeting .img_wrap > div{ width: 50%; height: 640px; position: relative; }
#sub.greeting .img_wrap .img img{ position: absolute; right: 0; top: 0; }
#sub.greeting .img_wrap .txt{ display: flex; justify-content: center; flex-flow: column; padding-left: 100px; position: relative; gap: 50px; }
#sub.greeting .img_wrap .txt:after{ position: absolute; left: 20px; top: -20px; width: 1px; height: calc(100% + 40px); background-color: #efefef; content:""; display: block; }
#sub.greeting .img_wrap .txt p{ font-size: 18px; line-height: 34px; color:#404040; letter-spacing: -0.02em; }
#sub.greeting .img_wrap .txt strong{ font-weight: 400; font-size: 32px; line-height: 46px; color:#404040; letter-spacing: -0.02em; display: block; position: relative; }
#sub.greeting .img_wrap .txt strong:after{ content:""; display: block ;width: 2px; height: 100%; position: absolute; left: -80px; top: 0; background-color: #2B6845; z-index: 1; }
#sub.greeting .img_wrap .txt strong b{ font-weight: 600; color: #51956E; }

#sub.greeting .con03{ background: #FFFFFF; padding-bottom: 160px;
background: linear-gradient(180deg, rgba(255, 255, 255, 1) 0%, rgba(246, 247, 248, 1) 100%);  }


#sub.greeting .con04 { padding-top: 0 !important; }
#sub.greeting .con04 .img_wrap{ flex-flow: row-reverse; }
#sub.greeting .con04 .img_wrap .img img{ right: auto; left: 0; }
#sub.greeting .con04 .img_wrap .txt:after{ left: auto; right: 20px; }
#sub.greeting .con04 .img_wrap .txt{ padding-left: 0; }
#sub.greeting .con04 .img_wrap .txt strong{ font-size: 24px; line-height: 42px; color:#404040; }
#sub.greeting .con04 .img_wrap .txt strong b{ color: inherit; font-weight: 600; }
#sub.greeting .con04 .img_wrap .txt strong:after{ display: none; }


/* 의료진 소개 */
#sub.doctor .d_list ul{ display: flex; flex-flow: wrap; gap: 60px 30px; }
#sub.doctor .d_list ul li{ width: calc(25% - 22.5px); cursor: pointer; }
#sub.doctor .d_list ul li .img{ position: relative; }
#sub.doctor .d_list ul li .img .hover{ position: absolute; width: 100%; height: 0; background: #2B6845;
background: linear-gradient(180deg, rgba(43, 104, 69, 0) 0%, rgba(43, 104, 69, 1) 100%); left: 0; bottom: 0; transition: height .5s; }
#sub.doctor .d_list ul li .img:before{ content:""; display: block; width: 100%; height: 35%; border-radius: 20px 20px 0 0; background-color: #F6F7F8; position: absolute; left: 0; bottom: 0; z-index: -1; transition: background .5s, height .5s; }
#sub.doctor .d_list ul li .img img{ display: block; width: 100%; }
#sub.doctor .d_list ul li .txt{ margin-top: 25px; display: flex; align-items: center; justify-content: center; text-align: center; gap: 10px; }
#sub.doctor .d_list ul li .txt strong{ font-size: 24px; font-weight: 500; color:#404040; }
#sub.doctor .d_list ul li .txt p{ font-size: 20px; color:#8F9290; }

#sub.doctor .d_list ul li:hover .img .hover{ height: 80px; }
#sub.doctor .d_list ul li .go_btn{ position: absolute; right: 25px; bottom: 20px; z-index: 2; }
#sub.doctor .d_list ul li .go_btn a{ height: 50px; padding: 0 25px; border-radius: 70px; background-color: #FFFFFF; display: flex; align-items: center; gap: 22px; font-size: 18px; font-weight: 600; color:#2B6845; transition: gap .5s, opacity .5s; opacity: 0; }
#sub.doctor .d_list ul li:hover .go_btn a{ gap: 38px; opacity: 1; }
#sub.doctor .d_list ul li:hover .img:before{ height: 50%; background-color: #2B6845; }


.sub_pop{ position: fixed; left:0; top: 0; width: 100%; height: 100%; z-index: 999999; background-color: rgba(0,0,0,0.2); display: none; }
.sub_pop .wrap{ display: flex; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; }
.sub_pop .wrap .box .close_b{ position:  absolute; right: 20px; top: 20px; }
.sub_pop .wrap .box .close_b button{ width: 60px; height: 60px; border-radius: 10px; background-color: #2B6845; display:flex; align-items: center; justify-content: center; transition: background .3s; }
.sub_pop .wrap .box .close_b button:hover{ background-color: #51956E;  }
.sub_pop .wrap .box .close_b button svg{ display: block; }
.sub_pop .wrap .box{ width: 1200px; display: flex; border-radius: 20px; background-color: #FFFFFF; box-shadow: 0 3px 40px rgba(0,0,0,0.16); align-items: flex-end; overflow: hidden; position: relative; }
.sub_pop .wrap .box .img{ width: 552px; position: relative; }
.sub_pop .wrap .box .img:after{ content:""; display: block; width: 80%; height: 100%; background-color: #EFEFEF; position: absolute; left: 0; top: 0; }
.sub_pop .wrap .box .img img{ width: 100%; display: block; position: relative; z-index: 1; }

.sub_pop .wrap .box .txt{ width: calc(100% - 552px); padding-left: 20px; display:  flex; flex-flow: column; gap: 40px; padding-right: 80px; }
.sub_pop .wrap .box .txt .tit{ display:flex; gap: 12px; align-items: center; padding-bottom: 20px; position: relative; }
.sub_pop .wrap .box .txt .tit:after{ content:""; display: block ; width: calc(100% + 200px); height: 1px; background-color: #EFEFEF; position: absolute; right: 0; bottom: 0; }
.sub_pop .wrap .box .txt .tit strong{ font-size: 32px; font-weight: 600; color:#404040; display: block; position: relative; }
.sub_pop .wrap .box .txt .tit strong:after{ content:""; display: block; width: 100%; height: 2px; background-color: #2B6845; position: absolute; left: 0; bottom: -20px; z-index: 2; }
.sub_pop .wrap .box .txt .tit p{ font-size: 20px; font-weight: 400; color:#8F9290; }
.sub_pop .wrap .box .txt .scrolls{ height: 430px; overflow-y: scroll; }
.sub_pop .wrap .box .txt .scrolls{ display: flex; flex-flow: column; gap: 40px; }
.sub_pop .wrap .box .txt .scrolls dl dt{ font-size: 20px; font-weight: 600; color: #404040; margin-bottom: 15px; }
.sub_pop .wrap .box .txt .scrolls dl dd .dot_li{ gap: 8px; }


/* center */
#sub.center .con01{ height: 100vh; }
#sub.center .con01 .inner{ display:flex; align-items: center; height: 100%; justify-content: space-between; } 
#sub.center .con01 .txt{ width: 500px; }
#sub.center .con01 .img_s { height: 685px; overflow: hidden;  }
#sub.center .con01 .txt .f_slide{ height: 75px; width: 40px; overflow: hidden; }
#sub.center .con01 .txt .f_slide .swiper-slide{ text-align: center; }
#sub.center .con01 .txt .f_slide p{ font-size: 59px; line-height: 75px; color:#2B6845; }
#sub.center .con01 .txt .f_slide .swiper-slide{ height: auto; }
#sub.center .con01 .txt  .flor{ display: flex; align-items: center; width: 110px; height: 110px; justify-content: center;  border: 1px solid #DDDDDD; position: relative; margin-top: 60px; margin-left: 60px; }
#sub.center .con01 .txt .flor:after{ content:""; display: block; width: 40px; height: 2px; background-color: #2B6845; position: absolute; left: 50%; top: -1px; z-index: 1; transform: translate(-50%,0); }
#sub.center .con01 .txt .flor span{ font-size: 24px; font-weight: 500; color:#2B6845; margin-top: 10px; }

#sub.center .con02 .visuals{ width: 100%; height: 100vh; background-color: #F6F7F8; position: sticky; top: 0; left: 0; }
#sub.center .con02 .visuals .txt .bg{ position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); z-index: -1;  }
#sub.center .con02 .visuals .txt{ position: absolute; left: 50%; top: 50%; width: 100%; text-align: center; display: flex; align-items: center; justify-content: center; gap: 20px; transform: translate(-50%,-50%); flex-flow: column; }
#sub.center .con02 .visuals .txt strong{ font-size: 60px; color:#404040; font-weight: 400;  }
#sub.center .con02 .visuals .txt p{ font-size: 22px; font-weight: 300; color:#404040; }
#sub.center .con02 .visuals .txt p b{ font-weight: 600; color:#2B6845; }

#sub.center .con02 .products{ width: 100%; height: 100vh; padding: 60px; }
#sub.center .con02 .products .wrap{ width: 100%; height: 100%; display: flex; }
#sub.center .con02 .products .wrap .box{ width: 100%; height: 100%; display: flex; border-radius: 20px; background-color: #fff; position: relative; }
#sub.center .con02 .products .wrap .box > div{ width: 50%; }
#sub.center .con02 .products .wrap .box > div{ overflow: hidden; }


#sub.center .con02 .products .wrap .box .txt{ display: flex; justify-content: center; flex-flow: column; height: 100%; text-align: left; }
#sub.center .con02 .products .wrap .box .txt .tit{ padding-bottom: 35px; border-bottom: 1px solid #EFEFEF; padding-left: 70px; display: flex; flex-flow: column; gap: 12px; position: relative; margin-bottom: 50px; }
#sub.center .con02 .products .wrap .box .txt .tit:after{ content:""; display: block ;width: 2px; height: 66px; background-color: #2B6845; position: absolute; left: 0; top: 0; z-index: 2;  }
#sub.center .con02 .products .wrap .box .txt .tit strong{ font-size: 32px; font-weight: 600; color: #404040; }
#sub.center .con02 .products .wrap .box .txt .tit em{ font-size: 20px; font-weight: 500; color:#2B6845; }
#sub.center .con02 .products .wrap .box .txt p{ padding-left: 70px; width: calc(100% - 220px); font-size: 18px; line-height: 32px; color:#5B645F; }
#sub.center .con02 .products .p_slide{ position: relative; }
#sub.center .con02 .products .p_slide .swiper-button-prev{ width: 60px; height: 60px; left: 40px; }
#sub.center .con02 .products .p_slide .swiper-button-prev:after, #sub.center .con02 .products .p_slide .swiper-button-next:after{ display: none; }
#sub.center .con02 .products .p_slide .swiper-button-next{ width: 60px; height: 60px; right: 40px; }

#sub.center .con02 .products .p_slide img{ display: block; width: 100%; }
#sub.center .con02 .products .wrap .box{ align-items: center; }

#sub.center .con02 .products .p_slide2{ border-left: 1px solid #EFEFEF; }
#sub.center .con02 .products .p_slide2 .swiper-slide{ opacity: 0 !important; }
#sub.center .con02 .products .p_slide2 .swiper-slide-active{ opacity:1 !important; }
#sub.center .con02 .products .swiper-pagination{ position: absolute; right: 70px; bottom :60px; width: auto !important; left: auto; }
#sub.center .con02 .products .swiper-pagination{ font-size: 16px; color: #abb7b0; overflow: visible !important; }
#sub.center .con02 .products .swiper-pagination .swiper-pagination-total{ font-size: 30px; font-weight: 500; color:#ABB7B0; font-family: "amandine", sans-serif; } 
#sub.center .con02 .products .swiper-pagination .swiper-pagination-current{ font-size: 59px; font-weight: 500; color:#2B6845; font-family: "amandine", sans-serif; }

#sub.center .con02 .products .p_tab{ position: absolute; left: 50%; bottom: 40px; transform: translate(-50%,0); width: auto !important; z-index: 2; height: 60px; padding: 0 40px; border-radius: 70px; background-color: #2B6845; display: flex; align-items: center; }
#sub.center .con02 .products .p_tab ul{ display: flex; align-items: center; gap: 40px; }
#sub.center .con02 .products .p_tab ul li a{ font-size: 18px; font-weight: 400; color: rgba(255,255,255,0.7); display: block; }
#sub.center .con02 .products .p_tab ul li.on a{ font-weight: 500; color: #fff; }


#sub.direction .c_tit2 p{  gap: 5px; }
#sub.direction .c_tit2 p:before{margin-right: 15px; }
#sub.direction .c_tit2 p b{ font-weight: 600; color:#2B6845; }

#sub.direction .sub_con .con01 .wrap{ display: flex; align-items: center; gap: 50px; margin-top: 60px; width: 100%; }
#sub.direction .sub_con .con01 .wrap .mapss{ width: calc(100% - 460px); height: 540px; border-radius: 20px; position: relative; overflow: hidden; }
#sub.direction .sub_con .con01 .wrap .mapss:after{ content:""; display: block ;width: 1px; height: 100%; background-color: #efefef; position: absolute; right: -50px; top: 0; }
#sub.direction .sub_con .con01 .wrap .mapss .root_daum_roughmap .wrap_map{ height: 100%; }
#sub.direction .sub_con .con01 .wrap .mapss .root_daum_roughmap{ width: 100%; height: 100%; border-radius: 20px; }
#sub.direction .sub_con .con01 .wrap .mapss .root_daum_roughmap .map_border{ display: none; }
#sub.direction .sub_con .con01 .wrap .mapss .add{ width: calc(100% - 40px); height: 58px; border-radius: 60px; background-color: rgba(43,104,69,0.8); backdrop-filter: blur(10px); position: absolute; left: 50%; bottom: 20px; transform: translate(-50%,0); z-index: 2; padding: 0 50px; display: flex; align-items: center; justify-content: center; }
#sub.direction .sub_con .con01 .wrap .mapss .add dl{ width: 100%; display:flex; justify-content: space-between; align-items: center; }
#sub.direction .sub_con .con01 .wrap .mapss .add dl dt{ font-size: 20px; font-weight: 500; color: #FFFFFF; }
#sub.direction .sub_con .con01 .wrap .mapss .add dl dd{ font-size: 20px; font-weight: 400; color: #FFFFFF; }
#sub.direction .sub_con .con01 .txts{ width: 410px; display: flex; justify-content: center; flex-flow: column;gap: 80px;  }

#sub.direction .sub_con .con01 .txts dl dt{ padding-left: 40px; border-left: 2px solid #2B6845; font-size: 24px; color:#2B6845; font-weight: 600; margin-bottom: 20px;  }
#sub.direction .sub_con .con01 .txts dl dd{ padding-left: 40px; }
#sub.direction .sub_con .con01 .txts dl dd .dot_li{ gap: 12px; }


/* 진료과목 공통 */
#sub.subject .con01 .sb_tit{ display: flex; flex-flow: column; gap: 30px; text-align: center; justify-content: center; align-items: center; margin-bottom: 140px; }
#sub.subject .con01 .sb_tit strong{ display: block; font-size: 42px; color:#404040; font-weight: 400; }
#sub.subject .con01 .sb_tit strong b{ font-weight: 600; }
#sub.subject .con01 .sb_tit ul{ display:flex; align-items: center; justify-content: center; width: 700px; border-radius: 70px; gap: 15px; background: #CAD6CF; height: 70px;
background: linear-gradient(90deg, rgba(202, 214, 207, 0) 0%, rgba(202, 214, 207, .2) 50%, rgba(202, 214, 207, 0) 100%); }
#sub.subject .con01 .sb_tit ul li{ display: flex; gap: 15px; align-items: center; font-size: 20px; font-weight: 400; color:#89948E;  }
#sub.subject .con01 .sb_tit ul li:after{ content:""; display: block; width: 1px; height: 12px; background-color: #CAD6CF; }
#sub.subject .con01 .sb_tit ul li:last-child:after{ display: none; }
#sub.subject .con01 .sb_wrap{ display: flex; align-items: center; width: 100%; }
#sub.subject .con01 .sb_wrap .img{ width: 50%; }
#sub.subject .con01 .sb_wrap .img img{ display: block; width: 100%; }
#sub.subject .con01 .sb_wrap .txt{ width: 50%; padding-left: 80px; }
#sub.subject .con01 .sb_wrap .txt .c_tit{ margin-bottom: 50px; }
#sub.subject .con01 .sb_wrap .txt > p{ font-size: 18px; line-height: 34px; letter-spacing: -0.02em; color:#5B645F; padding-left: 50px; }
#sub.subject .con01 .sb_wrap .txt > p b{ font-weight: 600; color:#2B6845; }
#sub.subject .con02{ background: #F6F7F8;
background: linear-gradient(180deg, rgba(246, 247, 248, 0) 0%, rgba(246, 247, 248, 1) 100%); position: relative; padding-top: 260px; overflow: hidden; }
#sub.subject .con02 .txt_bg{ position: absolute; left: 0; top: 100px; width: 100%; }
#sub.subject .con02 .txt_bg:before{ content:""; display: block ;width: 50%; height: 100%; background: #FFFFFF;
background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%); position: absolute; left: 0; top: 0; z-index: 1; }
#sub.subject .con02 .txt_bg:after{ content:""; display: block ;width: 50%; height: 100%; background: #FFFFFF;
background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%); position: absolute; right: 0; top: 0; z-index: 1; }
#sub.subject .con02 .txt_bg ul{ display: flex; animation: ac 30s linear infinite; }

#sub.subject .tits strong{ font-size: 34px; line-height: 52px ;color:#404040; letter-spacing: -0.02em; font-weight: 400; }
#sub.subject .tits strong b{ font-weight: 600; color: #2B6845; }

#sub.subject .con02 .line_bg span{ display: block; width: 1px; height: 100%; position: absolute; background-color: #E5EBE8; }
#sub.subject .con02 .line_bg span:nth-child(1){ left: 25%; }
#sub.subject .con02 .line_bg span:nth-child(2){ left: 50%; }
#sub.subject .con02 .line_bg span:nth-child(3){ left: 75%; }
#sub.subject .con02 .sb_info{  z-index: 1; position: relative; }
#sub.subject .con02 .sb_info .sb_con{ margin-top: 120px; margin-left: 227px; display: flex; flex-flow: column; gap: 120px; padding-left: 40px; }
#sub.subject .con02 .sb_info .sb_con > div > .img > img{ display: block; max-width: 100%; }
#sub.subject .con02 .sb_info .sb_con > div .s_t{ padding-left: 40px; border-left: 2px solid #2B6845;margin-bottom: 25px; transform: translateX(-40px); }
#sub.subject .con02 .sb_info .sb_con > div .s_t strong{ display: block; font-size: 24px; font-weight: 600; color:#2B6845; }
#sub.subject .con02 .sb_info .sb_con > div > p{ font-size: 18px; line-height: 34px; color:#5B645F; letter-spacing: -0.02em; }
#sub.subject .con02 .sb_info .sb_con > div b{ font-weight: 600; }
#sub.subject .con02 .sb_info .sb_con .dl_box{ display: flex; gap: 50px; margin: 40px 0; margin-bottom: 60px; }
#sub.subject .con02 .sb_info .sb_con .dl_box > dl{ width: 33.3333333333%; padding: 50px 40px; padding-bottom: 40px; background: #ECF0EE;
background: linear-gradient(180deg, rgba(236, 240, 238, 0) 0%, rgba(236, 240, 238, 1) 100%); }
#sub.subject .con02 .sb_info .sb_con .dl_box > dl > dt{ font-size: 24px; font-weight: 600; color:#3D413F; padding-bottom: 20px; margin-bottom: 20px; position: relative; }
#sub.subject .con02 .sb_info .sb_con .dl_box > dl > dt:after{ width: 100%; height: 1px; content:""; display: block; position: absolute; left: -20px; bottom: 0; background-color: #E7E9E8; }
#sub.subject .con02 .sb_info .sb_con .dl_box > dl > dt em{ font-size: 18px; display: block; font-weight: 400; color:#A2ABA6; margin-top: 12px; }
#sub.subject .con02 .sb_info .sb_con .dl_box > dl > dd{ font-size: 18px; line-height: 32px; color:#5B645F; word-break: keep-all; }
#sub.subject .con02 .sb_info .sb_con .dl_box > dl > dd b{ color: #51956E; font-weight: 600; }


#sub.subject01 .con02 .tits{ text-align: center; position: relative; z-index: 1; }
#sub.subject01 .con02 .sb_slide{ margin-top: 70px; }
#sub.subject01 .con02 .sb_slide .swiper-wrapper{ transition-timing-function: linear !important; }
#sub.subject01 .con02 .sb_slide .swiper-slide{ width: 480px; transition: margin-top 1s; }
#sub.subject01 .con02 .sb_slide .swiper-slide:nth-child(even){ margin-top: 80px; }
#sub.subject01 .con02 .sb_slide .swiper-slide .img img{ display: block; width: 100%; }
#sub.subject01 .con02 .sb_slide .swiper-slide .img{ position: relative; }
#sub.subject01 .con02 .sb_slide .swiper-slide .img .cate{ position: absolute; right: 20px; top: 20px; display: flex; align-items: center; padding: 0 20px; height: 36px; border-radius: 60px;  font-size: 18px; letter-spacing: -0.02em; color: #fff; backdrop-filter: blur(10px) brightness(115%); }
#sub.subject01 .con02 .sb_slide .swiper-slide .txt{ margin-top: 20px; }
#sub.subject01 .con02 .sb_slide .swiper-slide .txt p{ font-size: 22px; line-height: 34px; color:#5B645F; letter-spacing: -0.02em; }


#sub.subject .img_list{ margin-top: 50px; margin-bottom: 60px; }
#sub.subject .img_list ul{ display: flex; gap: 32px; }
#sub.subject .img_list ul li{ border-radius: 12px; background-color: #F2F6F4; padding: 10px; width: 25%; }
#sub.subject .img_list ul li .img img{ display: block; width: 100%; border-radius: 10px; }
#sub.subject .img_list ul li .txt{ padding: 30px 20px; display: flex; flex-flow: column; gap: 10px; }
#sub.subject .img_list ul li .txt strong{ font-size: 20px; font-weight: 600; color:#3D413F; letter-spacing: -0.02em; }
#sub.subject .img_list ul li .txt p{ font-size: 18px; line-height: 30px; color:#5B645F; letter-spacing: -0.02em; }

#sub.subject .dl_box2{ flex-flow: column; gap: 20px !important; }
#sub.subject .dl_box2 dl{ width: 100% !important; }

#sub.subject .dl_box3{ flex-flow: wrap; gap: 30px 50px !important;  }
#sub.subject .dl_box3 dl{ width: calc(50% - 25px) !important; }

#sub.subject04 .dl_box .dot_li{ gap: 12px !important; }

#sub.request .con02 .inner{ position: relative; z-index: 1; }
#sub.request .con02 .tits{ text-align: center; }
#sub.request .con02 .bn{ margin-top: 90px; padding: 0 60px; position: relative; z-index: 1; }
#sub.request .con02 .bn .wrap{ height: 438px; width: 100%; background: url('/img/sub/request_img02.jpg') center center no-repeat; background-size: cover; }
#sub.request .con02 .bn .txt{ position: absolute; width :100%; text-align: center; left: 50%; top: 50%; transform: translate(-50%,-50%); }
#sub.request .con02 .bn .txt strong{ font-size: 26px; line-height: 42px; font-weight: 300; letter-spacing: -0.02em; color:#E1F6ED; }
#sub.request .con02 .bn .txt strong b{ font-weight: 400; color: #fff; }

#sub.request .con03{ background-color: #F6F7F8; padding-bottom: 160px; }
#sub.request .con03 .inner{ display: flex; align-items: center; justify-content: space-between; flex-flow: wrap; }
#sub.request .con03 .info_p{ width: 100%; margin-top: 160px; text-align: center; }
#sub.request .con03 .info_p p{ font-size: 26px; line-height: 42px; color:#404040; letter-spacing: -0.02em; }
#sub.request .con03 .info_p p b{ font-weight: 600; color:#2B6845; }
#sub.request .con03 .left .step{ display: flex; flex-flow: column; padding-left: 50px; margin-top: 50px; gap: 10px; }
#sub.request .con03 .left .step dl{ display: flex; align-items: center; padding: 8px 10px; border-radius: 80px; background-color: #fff; border: 1px solid #CAD6CF; width: 490px; gap: 15px; }
#sub.request .con03 .left .step dl dt{ width: 100px; height: 42px; border-radius: 50px; background-color: #B6C2BB; display: flex; align-items: center; justify-content: center;font-size: 22px; font-weight: 500; color:#FFFFFF; }
#sub.request .con03 .left .step dl dd{ width: calc(100% - 115px); font-size: 18px; font-weight: 500; color:#5B645f; letter-spacing: -0.02em; }
#sub.request .con03 .left .result{ margin-left: 50px; margin-top: 30px; }
#sub.request .con03 .left .result dl{ display: flex; font-size: 16px; line-height: 28px; color:#7B847F; letter-spacing: -0.02em; gap: 5px; }

#sub.request .con03 .left .step dl.on{ border-color:#51956E;  }
#sub.request .con03 .left .step dl.on dt{ background-color: #51956E; }
#sub.request .con03 .left .step dl.on dd{ color: #51956E; }

#sub.request .con03 .left .step.on1 dl:nth-child(2){ border-color:#51956E;  }
#sub.request .con03 .left .step.on1 dl:nth-child(2) dt{ background-color: #51956E; }
#sub.request .con03 .left .step.on1 dl:nth-child(2) dd{ color: #51956E; }

#sub.request .con03 .left .step.on1 dl.on{ border-color:#CAD6CF;  }
#sub.request .con03 .left .step.on1 dl.on dt{ background-color: #B6C2BB; }
#sub.request .con03 .left .step.on1 dl.on dd{ color: #5B645f; }


#sub.request .con03 .left .step.on2 dl:nth-child(3){ border-color:#51956E;  }
#sub.request .con03 .left .step.on2 dl:nth-child(3) dt{ background-color: #51956E; }
#sub.request .con03 .left .step.on2 dl:nth-child(3) dd{ color: #51956E; }

#sub.request .con03 .left .step.on2 dl.on{ border-color:#CAD6CF;  }
#sub.request .con03 .left .step.on2 dl.on dt{ background-color: #B6C2BB; }
#sub.request .con03 .left .step.on2 dl.on dd{ color: #5B645f; }


#sub.request .con03 .left .step.on3 dl:nth-child(4){ border-color:#51956E;  }
#sub.request .con03 .left .step.on3 dl:nth-child(4) dt{ background-color: #51956E; }
#sub.request .con03 .left .step.on3 dl:nth-child(4) dd{ color: #51956E; }

#sub.request .con03 .left .step.on3 dl.on{ border-color:#CAD6CF;  }
#sub.request .con03 .left .step.on3 dl.on dt{ background-color: #B6C2BB; }
#sub.request .con03 .left .step.on3 dl.on dd{ color: #5B645f; }


#sub.request .con03 .left .step.on4 dl:nth-child(4){ border-color:#51956E;  }
#sub.request .con03 .left .step.on4 dl:nth-child(4) dt{ background-color: #51956E; }
#sub.request .con03 .left .step.on4 dl:nth-child(4) dd{ color: #51956E; }

#sub.request .con03 .left .step.on4 dl.on{ border-color:#CAD6CF;  }
#sub.request .con03 .left .step.on4 dl.on dt{ background-color: #B6C2BB; }
#sub.request .con03 .left .step.on4 dl.on dd{ color: #5B645f; }



#sub.request .con03 .left .step.on5 dl:nth-child(1){ border-color:#51956E;  }
#sub.request .con03 .left .step.on5 dl:nth-child(1) dt{ background-color: #51956E; }
#sub.request .con03 .left .step.on5 dl:nth-child(1) dd{ color: #51956E; }

/*
#sub.request .con03 .left .step.on5 dl.on{ border-color:#CAD6CF;  }
#sub.request .con03 .left .step.on5 dl.on dt{ background-color: #B6C2BB; }
#sub.request .con03 .left .step.on5 dl.on dd{ color: #5B645f; }
*/



#sub.request .con03 .right svg #step_wrap.on #step01 .dots{ stroke: #51956E; }
#sub.request .con03 .right svg #step_wrap.on #step01 rect{ fill:#51956E; }

#sub.request .con03 .right svg #step_wrap.on2 #step02 .dots{ stroke: #51956E; }
#sub.request .con03 .right svg #step_wrap.on2 #step02 rect{ fill:#51956E; }

#sub.request .con03 .right svg #step_wrap.on3 #step02 .dots{ stroke: #51956E; }
#sub.request .con03 .right svg #step_wrap.on3 #step02 rect{ fill:#51956E; }
#sub.request .con03 .right svg #step_wrap.on3 #step03 .dots{ stroke: #51956E; }
#sub.request .con03 .right svg #step_wrap.on3 #step03 rect{ fill:#51956E; }

#sub.request .con03 .right svg #step_wrap.on4 #step02 .dots{ stroke: #51956E; }
#sub.request .con03 .right svg #step_wrap.on4 #step02 rect{ fill:#51956E; }
#sub.request .con03 .right svg #step_wrap.on4 #step03 .dots{ stroke: #51956E; }
#sub.request .con03 .right svg #step_wrap.on4 #step03 rect{ fill:#51956E; }
#sub.request .con03 .right svg #step_wrap.on4 #step04 .dots{ stroke: #51956E; }
#sub.request .con03 .right svg #step_wrap.on4 #step04 rect{ fill:#51956E; }

#sub.request .con03 .right svg #step_wrap.on5 #step02 .dots{ stroke: #51956E; }
#sub.request .con03 .right svg #step_wrap.on5 #step02 rect{ fill:#51956E; }
#sub.request .con03 .right svg #step_wrap.on5 #step03 .dots{ stroke: #51956E; }
#sub.request .con03 .right svg #step_wrap.on5 #step03 rect{ fill:#51956E; }
#sub.request .con03 .right svg #step_wrap.on5 #step04 .dots{ stroke: #51956E; }
#sub.request .con03 .right svg #step_wrap.on5 #step04 rect{ fill:#51956E; }


#sub.request .con03 .right svg #circle02.on1 path{ stroke-dashoffset: 1439.835px; }
#sub.request .con03 .right svg #circle02.on2 path{ stroke-dashoffset: 959.89px; }
#sub.request .con03 .right svg #circle02.on3 path{ stroke-dashoffset: 479.945px; }
#sub.request .con03 .right svg #circle02.on4 path{ stroke-dashoffset: 0; }

#sub.request .con03 .right svg #circle02 path{ 
    stroke-dasharray: 1919.78px, 1919.78px;
    stroke-dashoffset: 1919.78px;
    transition: 1s ease-in-out;
}

@keyframes ac {
    0%{
        transform: translateX(0);
    }
    100%{
        transform: translateX(-50%);
    }
}


#sub.request .con01 .txt ul{ display: flex; flex-flow: column; gap: 10px; width: 620px; }
#sub.request .con01 .txt ul li{ font-size: 18px; color:#5B645F; letter-spacing: -0.02em; padding: 20px 30px; border-radius: 80px; border: 1px solid #CCDED3; }
#sub.request .con01 .go_link{ display: flex; margin-top: 50px; }
#sub.request .con01 .go_link a{ display: flex; align-items: center; gap: 30px; padding: 0 28px; height: 50px; border-radius: 70px; background-color: #2B6845;transition: background .3s; }
#sub.request .con01 .go_link a strong{ color: #FFFFFF; font-size: 18px; font-weight: 500; letter-spacing: -0.02em; }

#sub.request .con01 .go_link a:hover{ background-color: #51956E; }

#sub.request .con04 .list{ margin-top: 50px; display: flex; gap: 30px; }
#sub.request .con04 .list a{ align-items: center; width: 33.33333333%; padding: 20px; border-radius: 12px; background-color: #fff; border: 1px solid #D8E6DE; transition: box-shadow .4s, border .4s; }
#sub.request .con04 .list a dl{ display: flex; align-items: center; gap: 30px; }
#sub.request .con04 .list a dl dd p{ font-size: 18px; color:#2B6845; font-weight: 400; margin-bottom: 10px; }
#sub.request .con04 .list a dl dd strong{ font-size: 22px; font-weight: 500; color:#404040; }

#sub.request .con04 .list a:hover{ border-color: #fff; box-shadow: 0 0 40px rgba(144,169,155,0.2); }

#sub.request .con04 .email{ margin-top: 50px; background: #CAD6CF;
background: linear-gradient(90deg, rgba(202, 214, 207, 0) 0%, rgba(202, 214, 207, .2) 50%, rgba(202, 214, 207, 0) 100%); padding: 35px 0; }
#sub.request .con04 .email p{ font-size: 22px; color: #404040; letter-spacing: -0.02em; text-align: center; }


#sub.press .sub_tab .wrap:after{ display: none; }
#sub.request .sub_tab .wrap:after{ display: none; }


#sub.press .sub_visual{ height: 552px; overflow: visible; z-index: 2; } 
#sub.press .sub_visual .s_tit{ justify-content: flex-end; }

#sub.press .con01{ background: #F6F7F8;
background: linear-gradient(180deg, rgba(246, 247, 248, 0) 0%, rgba(246, 247, 248, 1) 100%); }

#sub.press .con01 .p_list ul{ display: flex; flex-flow: wrap; gap: 50px 40px; }
#sub.press .con01 .p_list ul li{ width: calc(33.33333333% - 26.66666666666667px); }
#sub.press .con01 .p_list ul li a{ display: block; position: relative; }
#sub.press .con01 .p_list ul li a .img img{ display: block; width: 100%; }

#sub.press .con01 .p_list ul li a .img{ position: relative; overflow: hidden; border-radius: 12px;  }

#sub.press .con01 .p_list ul li a .img .hover{ position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); opacity: 0; z-index: 2; transition: opacity .4s; }

#sub.press .con01 .p_list ul li a .hover .more{ display: flex; align-items: center; height: 50px; padding: 0 22px; gap: 20px; border-radius: 70px; background-color: #fff; transition: gap .4s; }
#sub.press .con01 .p_list ul li a .hover .more strong{ font-size: 18px; font-weight: 600; color:#2B6845; }

#sub.press .con01 .p_list ul li a:hover .hover .more{ gap: 40px; opacity: 1; }
#sub.press .con01 .p_list ul li a:hover .hover{ opacity: 1; }

#sub.press .con01 .p_list ul li a .img:after{ content:""; display: block; width: 100%; height: 100%; background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.5) 100%); position: absolute; left: 0; top: 0; opacity: 0; transition: opacity .4s; }

#sub.press .con01 .p_list ul li a:hover .img:after{ opacity: 1; }
#sub.press .con01 .p_list ul li a .img img{ transition: transform .4s; }
#sub.press .con01 .p_list ul li a:hover .img img{ transform: scale(1.1); }
#sub.press .con01 .p_list ul li .txt{ padding: 25px 0; position: relative; }
#sub.press .con01 .p_list ul li .txt strong{ display: block; overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical; font-size: 22px; line-height: 36px; color:#404040; letter-spacing: -0.02em; font-weight: 500; }
#sub.press .con01 .p_list ul li .txt p{ font-size: 18px; color: #8F9290; margin-top: 30px;  }

#sub.press .con01 .p_list ul li .txt:after{ content:""; display: block; width: 0; height: 1px; background-color: #D6E1DB; position: absolute; left: 0; bottom: 0; transition: width .4s; }
#sub.press .con01 .p_list ul li a:hover .txt:after{ width: 100%; }

#sub.press .con01 .b_bt{ margin-top: 80px; display: flex; justify-content: space-between; align-items: center; }
#sub.press .con01 .b_bt .paging ul{ display: flex; align-items: center; gap: 10px; }
#sub.press .con01 .b_bt .paging ul li a{ display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; color: #5B645F; font-size: 18px; }
#sub.press .con01 .b_bt .paging ul li.on a{  border: 4px double #51956E; color:#2B6845; font-weight: 600; }
#sub.press .con01 .b_bt .search{ width: 370px; height: 54px; border-radius: 50px; background-color: #F1F3F2; position: relative; }
#sub.press .con01 .b_bt .search input{ width: 100%; height: 100%; border :none; background-color: transparent; font-size: 18px; font-weight: 400; color:#87988F; padding-left: 30px; }
#sub.press .con01 .b_bt .search button{ position: absolute; right: 30px; top: 50%; transform: translate(0,-50%); }

#sub.press.view .v_tit{ padding-bottom: 48px; border-left: 1px solid #EFEFEF; }
#sub.press.view .v_tit .wrap{ position: relative; padding-left: 38px; }
#sub.press.view .v_tit .wrap:after{ position: absolute; left: -1px; top: 0; width: 2px; height: 100%; background-color: #2B6845; content:""; display: block; }
#sub.press.view .v_tit .wrap strong{ display: block; font-size: 26px; font-weight: 500; color:#404040; letter-spacing: -0.02em; margin-bottom: 20px; }
#sub.press.view .v_tit .wrap p{ font-size: 18px; letter-spacing: -0.02em; color:#8F9290; }
#sub.press.view .v_con{ border-left: 1px solid #EFEFEF; border-right: 1px solid #EFEFEF; padding: 40px; min-height: 400px; position: relative; }
#sub.press.view .v_con:after{ content:""; display: block; width: 200%; height: 1px; background-color: #efefef; position: absolute; right: 0; top: 0; }
#sub.press.view .v_con:before{ content:""; display: block; width: 200%; height: 1px; background-color: #efefef; position: absolute; left: 0; bottom: 0; }

#sub.press.view .list_b{ padding-top: 60px; display: flex; justify-content: flex-end; border-right: 1px solid #efefef; }
#sub.press.view .list_b a{ display: flex; align-items: center; height: 54px; padding: 0 25px; gap: 12px; width :168px; position: relative; transition: width .3s; position: relative; z-index: 1; }
#sub.press.view .list_b a:after{ content:""; display: block; width: 2px; height: 100%; position: absolute; right: -1px; top: 0; background-color: #51956E; }
#sub.press.view .list_b a:before{ content:""; display: block; width: 114px; height: 100%; position: absolute; left: 0; top: 0;     background: #51956E; z-index: -1; width: 0; transition: width .3s;
    background: linear-gradient(270deg, rgba(81, 149, 110, 0) 0%, rgba(81, 149, 110, .1) 100%); }
#sub.press.view .list_b a svg{ display: block; }
#sub.press.view .list_b a strong{ font-size: 24px; font-weight: 500; color:#2B6845; font-weight: 500; }
#sub.press.view .list_b a:hover:before{ width: 114px; }


/* 효과 */
#sub .c_tit strong{ transform: translateY(50px); opacity: 0; filter: blur(10px); transition: transform 1s, opacity 1s, filter 1s; }
#sub .on .c_tit strong{ opacity: 1; filter: blur(0); transform: translateY(0); }

#sub .c_tit p{ transform: translateY(50px); opacity: 0; filter: blur(10px); transition: transform 1s, opacity 1s, filter 1s; transition-delay: .2s; }
#sub .on .c_tit p{ opacity: 1; filter: blur(0); transform: translateY(0); }

#sub.info .con02 .b_list > div{ transform: translateY(40px); opacity: 0; transition: transform 1s, opacity 1s; opacity: 1s; }
#sub.info .con02 .b_list > div:nth-child(1){ transition-delay: .5s; }
#sub.info .con02 .b_list > div:nth-child(2){ transition-delay: .7s; }
#sub.info .con02 .b_list > div:nth-child(3){ transition-delay: .9s; }
#sub.info .con02.on .b_list > div{transform: translateY(0); opacity: 1; }

#sub.info .con03 .i_box{ transform: translateY(40px); opacity: 0; transition: transform 1s, opacity 1s; opacity: 1s; transition-delay: .5s; }
#sub.info .con03.on .i_box{transform: translateY(0); opacity: 1; }

#sub.center .con01 .img_s{ clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%); transition: clip-path 1.2s; }
#sub.center .con01.on .img_s{ clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }


#sub .txt_dl dl{ transform: translateY(40px); opacity: 0; transition: transform 1s, opacity 1s; }
#sub .txt_dl dl:nth-child(1){ transition-delay: .5s; }
#sub .txt_dl dl:nth-child(2){ transition-delay: .7s; }
#sub .txt_dl dl:nth-child(3){ transition-delay: .9s; }
#sub .txt_dl dl:nth-child(4){ transition-delay: 1.1s; }
#sub .txt_dl dl:nth-child(5){ transition-delay: 1.3s; }
#sub .txt_dl dl:nth-child(6){ transition-delay: 1.5s; }
#sub .txt_dl dl:nth-child(7){ transition-delay: 1.7s; }
#sub .on .txt_dl dl{ transform: translateY(0); opacity: 1; }

#sub.center .con01 .txt .flor{ transform: translateY(50px); opacity: 0; filter: blur(10px); transition: transform 1s, opacity 1s, filter 1s; transition-delay: .4s; }
#sub.center .con01.on .txt .flor{ opacity: 1; filter: blur(0); transform: translateY(0); }


#sub.greeting .con01 .img{ transform: translateY(50px); opacity: 0; transition: transform 1s, opacity 1s; }
#sub.greeting .con01.on .img{ transform: translateY(0); opacity: 1; }

#sub.greeting .con01 .cw .txt strong{ transform: translateY(50px); opacity: 0; transition: transform 1s, opacity 1s; transition-delay: .3s; }
#sub.greeting .con01.on .cw .txt strong{ transform: translateY(0); opacity: 1; }

#sub.greeting .con01 .cw .txt p{ transform: translateY(50px); opacity: 0; transition: transform 1s, opacity 1s; transition-delay: .5s; }
#sub.greeting .con01.on .cw .txt p{ transform: translateY(0); opacity: 1; }

#sub.greeting .con01 .cw .txt em{ transform: translateY(50px); opacity: 0; transition: transform 1s, opacity 1s; transition-delay: .7s; display: block; }
#sub.greeting .con01.on .cw .txt em{ transform: translateY(0); opacity: 1; }

#sub.greeting .con01 .cw .case{ transform: translateY(50px); opacity: 0; transition: transform 1s, opacity 1s; }
#sub.greeting .con01 .cw .case.on{ transform: translateY(0); opacity: 1; }

#sub.greeting .con01 .cw .case dl{ filter: blur(10px); opacity: 0; transition: filter 1s, opacity 1s; }
#sub.greeting .con01 .cw .case.on dl{ filter: blur(0); opacity: 1; }

#sub.greeting .img_wrap .img img{ clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%); transition: clip-path 1.2s; }
#sub.greeting .on .img_wrap .img img{ clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }

#sub.greeting .img_wrap .txt{ transform: translateY(50px); opacity: 0; transition: transform 1s, opacity 1s; transition-delay: .3s; }
#sub.greeting .on .img_wrap .txt{ transform: translateY(0); opacity: 1; }

#sub.center .con02 .visuals .txt strong{ transform: translateY(50px); opacity: 0; filter: blur(10px); transition: transform 1s, opacity 1s, filter 1s; }
#sub.center .con02.on .visuals .txt strong{ opacity: 1; filter: blur(0); transform: translateY(0); }

#sub.center .con02 .visuals .txt p{ transform: translateY(50px); opacity: 0; filter: blur(10px); transition: transform 1s, opacity 1s, filter 1s; transition-delay: .2s; }
#sub.center .con02.on .visuals .txt p{ opacity: 1; filter: blur(0); transform: translateY(0); }

#sub.subject .con01 .sb_wrap .txt > p{ transform: translateY(50px); opacity: 0; filter: blur(10px); transition: transform 1s, opacity 1s, filter 1s; transition-delay: .5s; }
#sub.subject .con01.on .sb_wrap .txt > p{ opacity: 1; filter: blur(0); transform: translateY(0); }

#sub.subject .con01 .sb_wrap .img{ clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%); transition: clip-path 1.2s; }
#sub.subject .con01.on .sb_wrap .img{ clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }



@media (max-width: 1540px) {
    html{ overflow-x: hidden; }
    #sub .inner{ width: 100%; padding: 0 20px; }
    #sub.info .con03 .i_box .img img{ width: auto; height: 100%; }
    #sub.info .con02 .b_list{ gap: 20px; }
    #sub.greeting .con01 .img .bg strong{ font-size: 60px; }
    #sub.center .con01 .img_s{ height: 400px; }
    #sub.center .con01 .img_s .img{ height: 100%; }
    #sub.center .con01 .img_s img{ height: 100%; }
    #sub.center .con02 .products .wrap .box .txt p{ width: 100%; padding-right: 40px; }
    #sub.center .con02 .products .wrap .box .txt .tit em{ font-size: 14px;}
    #sub.center .con02 .products .wrap .box .txt .tit{ padding-bottom: 20px; padding-left: 30px; gap: 4px; margin-bottom: 20px; }
    #sub.center .con02 .products .wrap .box .txt .tit strong{ font-size: 18px; line-height: 1.5em; }
    #sub.center .con02 .products .wrap .box .txt .tit strong br{ display: none; }
    #sub.center .con02 .products .wrap .box .txt .tit:after{ height: 50px; }
    #sub.center .con02 .products .wrap .box .txt p{ padding-left: 30px; font-size: 14px; line-height: 1.5em; }
    #sub.center .con02 .products .p_tab ul li a{ font-size: 14px; }
    #sub.center .con02 .products .p_tab ul{ gap: 10px; }
    #sub.center .con02 .products .p_tab{ bottom: 20px; height: 40px; padding: 0 20px; }
    #sub.center .con02 .products .swiper-pagination{ right: 30px; bottom: 30px; }
    #sub.center .con02 .products .swiper-pagination .swiper-pagination-current{ font-size: 20px; }
    #sub.center .con02 .products .swiper-pagination .swiper-pagination-total{ font-size: 16px; }
    #sub.request .con03 .right svg{ width: 100%; height: auto; }
    #sub.request .con03 .right{ width:calc(50% - 20px); }
    #sub.request .con03 .left{ width:calc(50% - 20px); }
    #sub.request .con03 .inner{ gap: 40px; }
    #sub.request .con03 .left .step dl{ width: 100%; }
}

@media (max-width: 1380px) {
    #sub .sub_wrap{ flex-flow: column; gap: 60px; }
    #sub .sub_wrap .c_con{ margin-top: 0; width: 100%; }
    #sub.info .con03 .i_box .img img{ min-width: 100%; }
    #sub .txt_dl:after{ height: 100%; }
    #sub .txt_dl{ padding-left: 0; }
    #sub .txt_dl:after{ left: 0; }
    #sub .sub_visual .s_tit strong i{ font-size: 50px; }
    #sub .sub_visual .s_tit{ gap: 20px; }
    #sub .sub_visual .s_tit .loc ul{ gap: 10px; }
    #sub .sub_visual .s_tit .loc ul li{ font-size: 14px; }
    .sub_tab .wrap > div > button{ font-size: 14px; padding: 0 12px; }
    .sub_tab .wrap{ gap: 20px; }
    .sub_tab .wrap > div{ width: 240px; }
    .sub_tab .wrap > div > ul > li > a{ font-size: 14px; }
    .sub_tab{ padding: 0 20px; }
    #sub .sub_con > .sub_tab .wrap{ padding: 0 20px; }
    #sub.greeting .con01 .cw .txt strong{ font-size: 20px; line-height: 1.5em; margin-bottom: 15px; }
    #sub.greeting .con01 .cw .txt strong b{ font-size: 24px; }
    #sub.greeting .con01 .cw .txt p{ font-size: 16px; line-height: 1.5em; margin-bottom: 20px; }
    #sub.greeting .con01 .cw .txt em{font-size: 16px; }
    #sub.greeting .con01 .cw .case dl dt{ padding-left: 30px; font-size: 14px; }
    #sub.greeting .con01 .cw .case dl dd{ font-size: 14px; padding-left: 30px;}
    #sub.greeting .con01 .cw .case dl dd b{ font-size: 30px; }
    #sub.greeting .con01 .cw .case dl{ height: 200px; }
    .sub_pop .wrap .box{ width: calc(100% - 40px); }
    #sub.center .con01 .txt{ width: 50%; }
    #sub.center .con02 .visuals .txt strong{ font-size: 30px; }
    #sub.center .con02 .visuals .txt p{ font-size: 16px; }
    #sub.center .con02 .visuals .txt{ gap: 8px; }
    #sub.center .con02 .visuals .txt .bg svg{ width: 200px; height: auto; }
    #sub.center .con02 .products{ padding: 20px; }
    #sub.center .con02 .products .p_slide .swiper-button-prev{ width: 32px; height: 32px; left: 20px; }
    #sub.center .con02 .products .p_slide .swiper-button-next{ width: 32px; height: 32px; right: 20px; }
    
    #sub.direction .sub_con .con01 .wrap .mapss{ height: 400px; }
    #sub.direction .sub_con .con01 .txts dl dt{ padding-left: 20px; font-size: 18px; margin-bottom: 8px; }
    #sub.direction .sub_con .con01 .txts dl dd .dot_li{ gap: 6px; }
    #sub.direction .sub_con .con01 .txts{ gap: 30px; }
    #sub.direction .sub_con .con01 .wrap .mapss .add dl dd{ font-size: 14px; }
    #sub.direction .sub_con .con01 .wrap .mapss .add dl dt{ font-size: 14px; }
    #sub.direction .sub_con .con01 .wrap .mapss .add{ padding: 0 20px; }
    #sub.subject .con01 .sb_tit strong{ font-size: 24px; }
    #sub.subject .con01 .sb_tit ul li{ font-size: 14px; gap: 6px; }
    #sub.subject .con01 .sb_tit ul{ gap: 6px; }
    #sub.subject .con01 .sb_tit ul{ width: 100%; height: 48px; }
    #sub.subject .con01 .sb_tit{ margin-bottom: 60px; gap: 12px; }
    #sub.subject .con02 .sb_info .sb_con{ margin-left: 0; gap: 80px; margin-top: 80px; }
    #sub.subject .img_list ul{ flex-flow: wrap; gap: 20px; }
    #sub.subject .img_list ul li{ width: calc(50% - 10px); }
    #sub.subject .img_list ul li .txt{ padding: 15px; gap: 4px; }
    #sub.subject .img_list ul li .txt strong{ font-size: 16px; }
    #sub.subject .img_list ul li .txt p{ font-size: 14px; line-height: 1.5em; }
    #sub.subject .img_list{ margin-top: 30px; margin-bottom: 30px; }
    #sub.press .con01 .p_list ul li{ width: calc(50% - 15px); }
    #sub.press .con01 .p_list ul{ gap: 30px; }
    #sub.press .con01 .p_list ul li .txt strong{ font-size: 18px; line-height: 1.5em; }
    #sub.press .con01 .p_list ul li .txt p{ font-size: 14px; margin-top: 12px; }
    #sub.press .con01 .p_list ul li a .hover .more strong{ font-size: 14px; }
    #sub.press .con01 .p_list ul li a .img .hover{ width: 100%; display: flex; align-items: center; justify-content: center; }
    #sub.press .con01 .p_list ul li a .hover .more{ height :42px; }
    #sub.request .con03 .left .result dl{ font-size: 13px; line-height: 1.5em; }
    #sub.request .con03 .left .step{ margin-top: 30px; }
    #sub.request .con03 .left .step dl{ padding: 6px; gap: 8px; }
    #sub.request .con03 .left .step dl dd{ font-size: 14px; width: calc(100% - 88px); }
    #sub.request .con03 .left .step dl dt{ height: 34px; font-size: 16px; width: 80px; }
    #sub.request .con04 .list a dl dt svg{ width: 80px; height: auto; }
    #sub.request .con04 .list a dl{ gap: 15px; }
    #sub.request .con04 .list a dl dd p{ font-size: 14px; margin-bottom: 4px; }
    #sub.request .con04 .list a dl dd strong{ font-size: 18px; }
    #sub.request .con04 .list a{ padding: 12px; }
}

@media (max-width: 880px) {
    #sub.info .con01 .wrap strong{ font-size: 24px; line-height: 1.5em; }
    #sub.info .con01 .bg svg{ width: 200px; height: auto; }
    #sub .sub_visual.on2 .s_img ul li:nth-child(1){ display: none; }
    #sub .sub_visual.on2 .s_img ul li:nth-child(2){ display: none; }
    #sub .sub_visual.on2 .s_img ul li:nth-child(3){ display: block; width: 100%; }
    #sub.subject .sub_visual.on2 .s_img ul li:nth-child(2){ display: block; width: 100%; }
    #sub.subject .sub_visual.on2 .s_img ul li:nth-child(3){ display: none; }
    #sub .sub_visual .s_tit strong i{ font-size: 30px; }
    #sub .sub_visual .s_img ul li img{ min-width: 100%; width: auto; height:100%; }
    #sub.info .con02 .b_list > div dl{  padding: 20px; padding-top: 50px; }
    #sub.info .con02 .b_list > div dl:after{ top: 20%; }
    #sub.info .con02 .b_list > div dl dt{ font-size: 16px; margin-bottom: 8px; }
    #sub.info .con02 .b_list > div dl dd{ font-size: 14px; }
    #sub.info .con02 .b_list > div > p{ margin-top: 15px; font-size: 13px; }
    #sub .c_tit strong{ font-size: 24px; line-height: 1.5em; margin-bottom: 10px; }
    #sub .c_tit p{ font-size: 14px; gap: 10px; }
    #sub .c_tit p:before{ width: 20px; }
    #sub .sub_wrap{ gap: 30px; }
    #sub .con_w{ padding-top: 70px; }
    #sub.info .con02{ padding-bottom: 70px; }
    #sub.info .con02 .b_list{ flex-flow: column; }
    #sub.info .con02 .b_list > div{ width: 100%; }
    #sub.info .con03 .i_box .txt > div strong{ font-size: 16px;  }
    #sub.info .con03 .i_box .txt > div p{ font-size: 14px; line-height: 1.5em; }
    #sub.info .con03 .i_box{ height: 600px; }
    #sub.info .con03 .i_box .txt{ flex-flow: column; }
    #sub.info .con03 .i_box .txt > div{ width: 100%; height: 50%; }
    #sub.info .con03 .i_box .txt > div:nth-child(2):after{ width: 100%; height: 50%; left: 0; bottom: 0; right: auto; top: auto; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%) }
    #sub.info .con03 .i_box .txt > div:nth-child(1):after{ width: 100%; height: 50%; left: 0;  top: 0; background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%) }
    #sub .txt_dl dl{ gap: 8px; }
    #sub .txt_dl dl dt{ font-size: 16px; padding-left: 20px; }
    .dot_li li{ font-size: 13px; line-height: 1.5em; }
    .dot_li{ gap: 8px; }
    .dot_li li:after{ top: 8px; width: 4px; height: 4px; }
    #sub .txt_dl dl dd{ padding-left: 20px; }
    #sub .txt_dl{ gap: 40px; }
    #sub .con_w:last-child{ padding-bottom: 70px; }
    #sub.greeting .img_wrap { flex-flow: column !important; }
    #sub.greeting .img_wrap .txt{ width: 100%; }
    #sub.greeting .img_wrap > div{ width: 100%; height: auto; }
    #sub.greeting .img_wrap .img img{ position: static; }
    #sub.greeting .img_wrap:before{ display: none; }
    #sub.greeting .img_wrap:after{ top: -8px; }
    #sub.greeting .img_wrap{ margin-top: 40px; }
    #sub.greeting .img_wrap .txt{ padding-left: 50px; margin-top: 20px; }
    #sub.greeting .img_wrap .txt p{ font-size: 14px; line-height: 1.5em; }
    #sub.greeting .img_wrap .txt strong{ font-size: 16px; line-height: 1.5em; }
    #sub.greeting .img_wrap .txt{ gap: 15px; }
    #sub.greeting .img_wrap .txt strong:after{ left: -31px; }
    #sub.greeting .con03{ padding-bottom: 70px; }
    #sub.greeting .con04 .img_wrap .txt strong{ font-size: 16px; line-height: 1.5em; }
    .br{ display: none; }
    #sub.greeting .con01 .cw .case .inner{ flex-flow: column; }
    #sub.greeting .con01 .cw .case .inner> dl{ width: 100%; border-bottom: 1px solid #efefef; }
    #sub.greeting .con01 .cw .case .inner > dl:last-child{ border-bottom: none; }
    #sub.greeting .con01 .cw{ padding-bottom: 70px; }
    #sub.greeting .con01 .cw .case dl{ height: 140px;     border-left: 1px solid #efefef; }
    #sub.greeting .con01 .cw .case dl dd b{ font-size: 20px; }
    #sub.greeting .con01 .cw .case{ margin-top: 40px; }
    #sub.greeting .img_wrap .img img{ width: 100%; }
    #sub.greeting .img_wrap .txt{ padding-right: 20px; }
    #sub.greeting .con01 .img .box .wrap img{ max-width: 80%; margin: 0 auto; }
    #sub.greeting .con01 .img .bg strong{ font-size: 20px; }
    #sub.doctor .d_list ul li{ width: calc(50% - 10px); }
    #sub.doctor .d_list ul{ gap: 40px 20px; }
    #sub.doctor .d_list ul li .txt{ margin-top: 12px;gap: 6px; }
    #sub.doctor .d_list ul li .txt strong{ font-size: 18px; }
    #sub.doctor .d_list ul li .txt p{ font-size: 14px; }
    #sub.doctor .d_list ul li .go_btn a{ height:40px; padding: 0 15px; gap: 12px; font-size: 14px; }
    #sub.doctor .d_list ul li .go_btn a:hover{ gap: 22px; }
    .sub_pop .wrap .box{ flex-flow: column; width: 360px; }
    .sub_pop .wrap .box .img{ width: 360px; }
    .sub_pop .wrap .box .txt{ width: 100%; }
    .sub_pop .wrap .box .close_b{ z-index: 3; right: 10px; top: 10px; }
    .sub_pop .wrap .box .close_b button{ width: 38px; height: 38px; }
    .sub_pop .wrap .box .txt .tit strong{ font-size: 18px; }
    .sub_pop .wrap .box .txt .tit p{ font-size: 14px; }
    .sub_pop .wrap .box .txt{ padding-right: 20px;gap: 20px; margin-top: 20px; }
    .sub_pop .wrap .box .txt .tit{ padding-bottom: 10px; gap: 6px; }
    .sub_pop .wrap .box .txt .tit strong:after{ bottom: -10px; }
    .sub_pop .wrap .box .txt .scrolls dl dt{ font-size: 14px; }
    .sub_pop .wrap .box .txt .scrolls dl dt{ margin-bottom: 6px; }
    .sub_pop .wrap .box .txt .scrolls dl dd .dot_li{ gap: 4px; }
    .sub_pop .wrap .box .txt .scrolls{ gap: 20px; height: 200px; }
    #sub.center .con02 .products .wrap .box > div{ width: 100%; }
    #sub.center .con02 .products .wrap .box { flex-flow: column; }
    #sub.center .con02 .products .wrap .box .p_slide{ width: 100%; }
    #sub.center .con02 .products .wrap .box .p_slide img{ width: 320px; margin: 0 auto; display: block; }
    #sub.center .con02 .products .wrap .box .txt{ justify-content: flex-start; }
    #sub.center .con01 .txt .f_slide{ width: 20px; height: 60px; }
    #sub.center .con01 .txt .flor span{ font-size: 16px; }
    #sub.direction .sub_con .con01 .wrap{ flex-flow: column; gap: 20px; margin-top: 30px; }
    #sub.direction .sub_con .con01 .wrap .mapss{ width: 100%; height: 280px; }
    #sub.direction .sub_con .con01 .wrap .mapss .add{ height: 38px; }
    #sub.direction .sub_con .con01 .txts{ width: 100%; }
    #sub.direction .sub_con .con01 .txts dl dt{ font-size: 16px; }
/*    body{ overflow-x: hidden; }*/
    #sub.subject .con01 .sb_wrap{ flex-flow: column; }
    #sub.subject .con01 .sb_wrap .img{ width: 100%; }
    #sub.subject .con01 .sb_wrap .txt{ width: 100%;}
    #sub.subject .con01 .sb_wrap .txt{ padding-left: 20px; padding-right: 20px; margin-top: 30px;  }
    #sub.subject .con01 .sb_wrap .txt > p{ font-size: 14px; line-height: 1.5em; padding-left: 20px; }
    #sub.subject .con01 .sb_wrap .txt .c_tit{ margin-bottom: 20px; }
    #sub.subject .con02 .txt_bg ul li img{ height: 80px; }
    #sub.subject .con02{ padding-top: 160px; }
    #sub.subject .tits strong{ font-size: 20px; line-height: 1.5em; }
    #sub.subject01 .con02 .sb_slide .swiper-slide{ width: 240px; }
    #sub.subject01 .con02 .sb_slide .swiper-slide .img .cate{ font-size: 14px; padding: 0 12px; height: 28px; }
    #sub.subject01 .con02 .sb_slide .swiper-slide .img .cate{ right: 10px; top: 10px;  }
    #sub.subject01 .con02 .sb_slide .swiper-slide .txt p{ font-size: 14px; line-height: 1.5em; }
    #sub.subject01 .con02 .sb_slide .swiper-slide .txt{ margin-top: 10px; }
    #sub.subject01 .con02 .sb_slide .swiper-slide:nth-child(even){ margin-top: 30px; }
    #sub.subject .con02 .line_bg { display: none; }
    #sub.subject01 .con02 .sb_slide{ margin-top: 30px; }
    #sub.subject .con02 .sb_info .sb_con .dl_box{ gap: 20px; flex-flow: column; }
    #sub.subject .con02 .sb_info .sb_con .dl_box > dl{ width: 100%; }
    #sub.subject .con02 .sb_info .sb_con{ margin-top: 30px; gap: 40px; }
    #sub.subject .con02 .sb_info .sb_con > div .s_t strong{ font-size: 16px; }
    #sub.subject .con02 .sb_info .sb_con > div .s_t p{ font-size: 14px; }
    #sub.subject .con02 .sb_info .sb_con > div .s_t{ padding-left: 20px; margin-bottom: 12px; }
    #sub.subject .con02 .sb_info .sb_con{ padding-left: 20px; }
    #sub.subject .con02 .sb_info .sb_con > div .s_t{ transform: translateX(-20px)}
    #sub.subject .con02 .sb_info .sb_con > div > p{ font-size: 14px; line-height: 1.5em; }
    #sub.subject .con02 .sb_info .sb_con .dl_box{ margin: 30px 0; margin-bottom: 30px; }
    #sub.subject .con02 .sb_info .sb_con .dl_box > dl{ padding: 20px; padding-bottom: 20px; }
    #sub.subject .con02 .sb_info .sb_con .dl_box > dl dt{ font-size: 14px; margin-bottom: 8px; padding-bottom: 8px; }
    #sub.subject .con02 .sb_info .sb_con .dl_box > dl > dt em{ font-size: 12px; margin-top: 4px; }
    #sub.subject .con02 .sb_info .sb_con .dl_box > dl dd{ font-size: 13px; line-height: 1.5em; }
    #sub.subject .con01 .sb_tit ul li{word-break: keep-all; }
    #sub.subject .dl_box3 dl{ width: 100% !important; }
    #sub.subject .dl_box3{ flex-flow: column; gap: 20px !important; }
    #sub.subject04 .dl_box .dot_li{ gap: 4px !important; }
    #sub.press.view .v_tit .wrap{ padding-left: 20px; }
    #sub.press.view .v_tit .wrap strong{ font-size: 18px; line-height: 1.5em; margin-bottom: 10px; }
    #sub.press.view .v_tit .wrap p{ font-size: 14px; }
    #sub.press.view .v_tit{ padding-bottom: 20px; }
    #sub.press.view .v_con{ padding: 20px; }
    #sub.request .con01 .txt ul{ width: 100%; }
    #sub.request .con01 .txt ul li{ padding: 12px; font-size: 13px; }
    #sub.request .con01 .go_link{ margin-top: 20px; }
    #sub.request .con01 .go_link a strong{ font-size: 14px; }
    #sub.request .con02 .bn{ padding: 0 20px; margin-top: 40px; }
    #sub.request .con01 .go_link a{height: 42px; padding: 0 18px; gap: 15px; }
    #sub.request .con02 .bn .wrap{ height: 300px; }
    #sub.request .con02 .bn .txt strong{ font-size: 16px; line-height: 1.5em; }
    #sub.request .con03 .inner{ flex-flow: column; }
    #sub.request .con03 .inner .left{ width: 100%; }
    #sub.request .con03 .inner .right{ width: 100%; }
    #sub.request .con03 .left .step{ padding-left: 20px; }
    #sub.request .con03 .left .result{ margin-left: 20px; margin-top: 20px; }
    #sub.request .con03 .left .result dl{ font-size: 12px; }
    #sub.request .con03 .info_p{ margin-top: 0; }
    #sub.request .con03 .info_p p{ font-size: 16px; line-height: 1.5em; word-break: keep-all; }
    #sub.request .con03 .info_p p br{ display: none; }
    #sub.request .con03{ padding-bottom: 70px; }
    #sub.request .con04 .list{ margin-top: 30px; gap: 12px; flex-flow: column; }
    #sub.request .con04 .list a{ width: 100%; }
    #sub.request .con04 .list a dl dt svg{ width: 60px; }
    #sub.request .con04 .list a dl dd strong{ font-size: 16px; }
    #sub.request .con04 .email{ margin-top: 20px; padding: 15px 0; }
    #sub.request .con04 .email p{ font-size: 14px; }
    #sub.request .con03 .left .result dl{ flex-flow: column; }
}

@media (max-width: 640px) {
    .sub_tab{ height:48px; width: calc(100% - 20px); padding: 0 10px; }
    .sub_tab .wrap{ width: 100%; }
    .sub_tab .wrap > div{ width: 50%; }
    .sub_tab .wrap > div > button{ font-size: 13px; }
    .sub_tab .wrap > div > ul{ padding: 15px; }
    .sub_tab .wrap > div > ul > li > a{ font-size: 12px; }
    .sub_tab .wrap > div > ul > li{ margin-bottom: 8px; }
    #sub .sub_con > .sub_tab{ width: calc(100%); padding: 0 10px; top: 20px; }
    #sub.info .con01 .wrap strong{ font-size: 16px; }
    #sub .sub_visual .s_tit strong i{ font-size: 22px; }
    #sub.greeting .con01 .cw .txt strong b{ font-size: 18px; }
    #sub.greeting .con01 .cw .txt strong{ font-size: 16px; }
    #sub.greeting .con01 .cw .txt p{ font-size: 14px; }
    #sub.greeting .con01 .cw{ padding-top: 30px; }
    .sub_tab{ bottom: 80px; }
    #sub.center .con02 .products .p_tab{ left: 20px; transform: translate(0,0); width: calc(100% - 100px) !important; }
    #sub.center .con01 .inner{ flex-flow: column;  }
    #sub.center .con01 .txt{ width: 100%; margin-top: 40px; }
    #sub.center .con01 .img{ width: 100%; }
    #sub.center .con02 .products .p_tab ul li a{ font-size: 13px; }
    #sub.center .con01 .inner{ justify-content: flex-start; }
    #sub.center .con01 .txt .flor{ width: 60px; height: 60px; margin-top: 20px; margin-left: 20px;  }
    #sub.center .con01 .txt .f_slide p{ font-size: 20px; line-height: 60px; }
    #sub.center .con01 .img_s{ height: 300px; }
    #sub.center .con01{ height: auto; padding-bottom: 70px; }
    #sub.center .con02 .products .p_tab{ width: calc(100% - 40px) !important; bottom: 60px; }
    #sub.center .con02 .products .wrap .box .p_slide img{ width: 280px; }
    #sub.center .con02 .products .p_tab{ padding: 0 12px; }
    #sub.center .con02 .products .p_tab ul li a{ font-size: 12px; }
    #sub.center .con02 .products .wrap .box .txt p{ padding-left: 20px; padding-right: 20px; font-size: 13px; }
    .sub_tab .wrap > div > button{ font-size: 12px; word-break: keep-all; }
    .sub_tab .wrap > div > button svg{ right: 0; }
    #sub.subject .con01 .sb_tit strong{ font-size: 20px; }
    #sub.press .sub_tab{ max-width: 280px; }
    #sub.request .sub_tab{ max-width: 280px; left: 50%; transform: translate(-50%,0)}
    #sub.press .sub_tab .wrap > div{ width: 100%; }
    #sub.request .sub_tab .wrap > div{ width: 100%; }
    #sub.request .sub_con > .sub_tab{ left: 50%; transform: translate(-35%,0); }
    #sub.press .con01 .p_list ul{ gap: 20px; }
    #sub.press .con01 .p_list ul li{ width: calc(50% - 10px); }
    #sub.press .con01 .p_list ul li .txt{ padding: 15px 0; }
    #sub.press .con01 .p_list ul li .txt strong{  font-size: 15px; }
    #sub.press .con01 .p_list ul li .txt p{ font-size: 13px; }
    #sub.press .con01 .b_bt .paging ul li a{ width: 30px; height: 30px; }
    #sub.press .con01 .b_bt .paging ul li svg{ width: 30px; height: auto; }
    #sub.press .con01 .b_bt .paging ul li a{ font-size: 14px; }
    #sub.press .con01 .b_bt .paging ul{ gap: 2px; }
    #sub.press .con01 .b_bt .search{ width: 100%; height: 38px; }
    #sub.press .con01 .b_bt{ align-items: center; flex-flow: column; gap: 12px; }
    #sub.press .con01 .b_bt .search input{ font-size: 13px; padding-left: 20px; }
    #sub.press .con01 .b_bt{ margin-top: 30px; }
/*    #sub .sub_con > .sub_tab .wrap{ display: none; }*/
    #sub.center .con02 .products{ height: auto; }
    #sub.center .con02 .products .wrap .box .p_slide img{ width: 220px; }
    #sub.center .con02 .products .wrap .box .txt{ height: 460px; }
    #sub.center .con02 .products .p_tab{ align-items: center; justify-content: center; }
    #sub.center .con02 .products .p_tab ul{ justify-content: center; }
    #sub.greeting .con04 .img_wrap .txt{ padding-right: 0; width: 100%; border-right: none; }
    #sub.greeting .con04 .img_wrap .txt:after{ display: none; } 
    
}
@media (max-width: 414px) { 
    .sub_pop .wrap .box{ flex-flow: column; width: 90%; }
    .sub_pop .wrap .box .img{ width: 100%; }
}

/**/