@import url(./background.css);

.p18 {
	padding: 18rem 0;
}

.p20 {
	padding: 20rem 0;
}

.pt20{
	padding-top: 20rem;
}

.pb20{
	padding-bottom: 20rem;
}

.tal{
	text-align: left !important;
}

.inner {
	max-width: 1360px;
}


.maq_sec {
	width: 100%;
	white-space: nowrap;
	box-sizing: border-box;
	overflow: hidden;
}

.maq_sec span {
	font-size: 11rem;
	font-weight: 400;
	font-family: 'Paperlogy';
	color: #EEE;
	display: inline-block;
	animation: marquee 15s linear infinite;
}

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

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

/* ----------------------------------------------------------------------------------- */

#hd {
	background-color: #fff;
}

#hd .logo a {
	background-image: url('../img/common/logo_bk.png');
}

#hd .hd_right .login {
	background-image: url('../img/common/ico_login_bk.png');
}

#hd .hd_right .logout {
	background-image: url('../img/common/ico_logout_bk.png');
}

#hd .hd_right .ham_btn {
	background-image: url('../img/common/ham_btn_bk.png');
}

#hd #gnb .depth1 {
	color: #222;
}

/* sub_visual */

.sub_visual .top {
	min-height: 473px;
	padding: 20.5rem 0 15.9rem;
	position: relative;
	background: url('../img/sub/sub_top_visual.jpg') no-repeat right bottom;
}

.sub_visual .clinic_tag {
	font-size: 1.7rem;
	margin-bottom: 2.4rem;
	opacity: 0;
	transform: translateY(70px);
}

.sub_visual.on .clinic_tag {
	transform: translateY(0);
	opacity: 0.5;
	transition: all 1.2s ease;
}

.sub_visual .sub_title {
	transform: translateY(70px);
	opacity: 0;
	font-size: 6rem;
	font-weight: 600;
}

.sub_visual.on .sub_title {
	transform: translateY(0);
	opacity: 1;
	transition: all 1.2s ease;
	transition-delay: 0.5s;
}

.sub_visual .sub_bg {
	overflow: hidden;
}

.sub_visual .sub_bg img {
	width: 100%;
	animation: zoom 8s forwards;
}

#snb {
	max-height: 7.8rem;
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
}

#snb.fix {
	top: 0;
	bottom: auto;
	z-index: 1000;
	position: fixed;
	background: #ffff;
}

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

.snb_row i {
	display: block;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	opacity: 0.3;
	margin: 0 2.5rem;
	background-color: #222;
}

.snb_row .home {
	display: block;
	font-size: 2rem;
	font-weight: 500;
}

.snb_row>div {
	position: relative;
}

.snb_row button {
	display: flex;
	align-items: center;
	font-size: 2rem;
	font-weight: 500;
	gap: 1rem;
}

.snb_row button span {
	display: block;
	width: 2rem;
	height: 2rem;
	transition: transform 0.5s linear;
	background: url('../img/sub/dropdown_20x20.png')no-repeat center center/cover;
}

.snb_row button.on span {
	transform: rotate(-180deg);
}

.snb_row ul {
	display: none;
	position: absolute;
	min-width: 20rem;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	background-color: #fff;
	border-radius: 1.5rem;
	z-index: 3;
	padding: 2rem 0;
}

.snb_row ul li a {
	display: block;
	text-align: center;
	padding: 1rem 0.5rem;
	font-size: 1.7rem;
	word-break: keep-all;
	line-height: 1.4;
	color: rgba(0, 0, 0, 0.4);
}

.snb_row ul li.on a {
	font-weight: 500;
	color: #0C528D;
}

#snb .n_wr {
	position: relative;
	padding: 2.7rem 0;
	height: 100%;
}

#snb .n_logo {
	display: none;
	position: absolute;
	top: 50%;
	left: 9rem;
	transform: translateY(-50%);
}

#snb .nb_right {
	display: none;
	position: absolute;
	top: 50%;
	right: 9rem;
	transform: translateY(-50%);
	gap: 2.5rem;
	align-items: center;
}

#snb .nb_right .login {
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	font-size: 0;
	background: url('../img/common/ico_login_bk.png') no-repeat center center/cover;
}

#snb .nb_right .logout {
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	font-size: 0;
	background: url('../img/common/ico_logout_bk.png') no-repeat center center/cover;
}

#snb .nb_right .ham_btn {
	display: block;
	width: 2.5rem;
	height: 2.5rem;
	background: url('../img/common/ham_btn_bk.png') no-repeat center center/cover;
}

#snb.fix .n_logo {
	display: block;
}

#snb.fix .nb_right {
	display: flex;
}


.sub_visual .bot {
	position: relative;
	overflow: hidden;
}

.sub_visual .sub_visual_ttl {
	position: absolute;
	font-size: 13rem;
	line-height: 0.7;
	letter-spacing: 0;
	font-weight: 600;
	color: #fff;
	text-align: center;
	left: 14.01%;
	bottom: 0;
	opacity: 0;
	z-index: 2;
	white-space: nowrap;
	animation: ttup 1s 0.7s ease-in-out forwards;
}

/* sub_visual */

/* sub_title : sec1 common wrap */

.sub_ttl_row {
	text-align: center;
}

.sub_ttl_row .tag {
	font-size: 1.8rem;
	font-weight: 200;
	margin-bottom: 2rem;
	margin-bottom: 1.6rem;
	letter-spacing: 1px;
	color: rgba(34, 34, 34, 0.3);
}

.sub_ttl_row .tit {
	font-size: 4rem;
	font-weight: 200;
	line-height: 1.3;
}

.sub_ttl_row .tit b {
	font-weight: 600;
	font-size: 5rem;
}

.sub_ttl_row .f5 {
	font-size: 5rem;
	font-weight: 600 !important;
	color: var(--main-color);
}

.sub_ttl_row .f45 {
	font-weight: 400;
	font-size: 4.5rem;
}

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

.sub_ttl_row .disc {
	font-size: 2.1rem;
	font-weight: 200;
	margin-top: 5rem;
	line-height: 1.6;
	color: #444;
}

.sub_ttl_row .disc b {
	font-weight: 500;
	color: #222;
}

.sub_ttl_row.wh * {
	color: #fff;
}

.sub_ttl_row.wh .tag {
	color: rgba(255, 255, 255, 0.5);
}

.sub_ttl_row.wh .tit b {
	color: var(--sub-color);
}

.sub_ttl_row.wh .disc b {
	color: #fff;
}

/* .sub_ttl_row * {
	opacity: 0;
	transition: opacity 0.5s linear;
}

.sub_ttl_row.aos-animate * {
	opacity: 1;
} */

.sub_ttl_row.aos-animate .tit {
	transition-delay: 0.3s;
}

.sub_ttl_row.aos-animate .disc {
	transition-delay: 0.5s;
}

.sub_ttl_row.tl {
	text-align: left;
}

.sub_line {
	display: block;
	width: 1px;
	height: 15rem;
	background: #BBBBBB;
	margin: 3rem 0 -2rem;
}

/* sub_title : sec1 common wrap */

/* sub_title */
.sub_tit_wrap{
	text-align: center;
}

.sub_tit_wrap .tag{
	font-size: 18px;
	color: #222;
	opacity: 0.3;
	font-weight: 200;
	margin-bottom: 1.6rem;
	letter-spacing: 5%;
}

.sub_tit_wrap .tit{
	font-size: 40px;
	color: #222;
	font-weight: 200;
	line-height: 1.3;
}

.sub_tit_wrap .tit b{
	font-size: 45px;
	font-weight: 400;
	color: #222;
}

.sub_tit_wrap .tit span{
	font-size: 45px;
	color: #4365A3;
	font-weight: 600;
}

.sub_tit_wrap .desc{
	font-size: 21px;
	font-weight: 200;
	color: #444;
	margin-top: 4rem;
	line-height: 1.5;
}

.sub_tit_wrap .desc b{
	font-weight: 500;
	color: #222;
}

.wh{
	color: #fff !important;
}

.sky{
	color: #ABD2F3 !important;
}
/* sub_title */

/* --- m11 --- */

/* m11 : sec01 */
.sec1_flex {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10rem;
}

.sec1_flex .entry_img {
	width: 680px;
	height: auto;
	border-radius: 50px;
	overflow: hidden;
}

.sec1_flex .entry_img img {
	width: 100%;
}

/* m11 : sec01 */

/* m11 : sec02 */
/* 원들이 모이는 메인 섹션 */
.circle_section {
	/* min-height: 100vh; */
	height: 250vh;

	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	position: relative;

	overflow: visible;
	background: #222;
	padding-top: 20rem;
}

.circle_section > .tag {
	font-size: 18px;
	margin-bottom: 20px;
	text-align: center;
	color: #ffffff50;
}

.circle_section > .tit{
	font-size: 40px;
	color: #fff;
	text-align: center;
	margin-bottom: 60px;

	background: linear-gradient(to right, #ffffff 50%, rgba(255, 255, 255, 0.25) 50%);	
	background-size: 200% 100%;
	background-position: 100% 0; /* 초기 위치: 오른쪽 (흐릿한 색상) */

	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}

.circle_section .tit span{
	font-size: 50px;
	font-weight: 600;
	
	background: linear-gradient(to right, #ABD2F3 50%, rgba(171, 210, 243, 0.1) 50%);	
	background-size: 200% 100%;
	background-position: 100% 0; /* 초기 위치: 오른쪽 (흐릿한 색상) */

	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}

.circle_section .tit b {
	font-size: 50px;
	font-weight: 600;

	background: linear-gradient(to right, #ffffff 50%, rgba(255, 255, 255, 0.25) 50%);
	background-size: 200% 100%;
	background-position: 100% 0;

	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}

.circle_section .desc{
	font-size: 21px;
	line-height: 1.5;
	letter-spacing: -4%;
	color: #ffff;
	text-align: center;
}

.circle_section .desc span{
	font-weight: 500;
}

/* 3개 원 컨테이너 */
.circles_wrap {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 400px;
	margin-top: 25rem;
	margin-bottom: 40rem;
}

/* 각 원의 기본 스타일 */
.circle {
	position: absolute;
	width: 400px;
	height: 400px;
	border-radius: 50%;
	border: 1px solid #fff;
	background: rgba(255, 255, 255, 0);
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	transition: border-color 0.3s;
}

.circle dt {
	font-size: 50px;
	font-weight: 300;
	color: #fff;
}

.circle dd {
	font-size: 23px;
	margin-top: 8px;
	color: #fff;
	text-align: center;
}

/* 초기 위치 배치 (좌 / 중 / 우) */
.circle.c1 {
	transform: translateX(-360px);
}

.circle.c2 {
	transform: translateX(0);
}

.circle.c3 {
	transform: translateX(360px);
}

/* 최종 하나로 합쳐졌을 때 나타날 텍스트 */
.merged_text {
    position: absolute;
    z-index: 3;
    text-align: center;
    opacity: 0;
    transform: scale(0.8);
    pointer-events: none;
}

.merged_text .txt_main {
    font-size: 40px;
    font-weight: 500;
    letter-spacing: 0%;
    background: linear-gradient(120deg, #222222 0%, #8D8D8D 50%, #222222 100%);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}

.merged_text .logo{
	display: block;
	width: 120px;
	height: 45px;
	background: url('/img/sub/m11_sec02_logo.png') no-repeat;
	margin: 2rem auto 0;
}

.cont {
    position: relative;
    width: 70rem;
    transform: translateY(20%);
    z-index: 3;
	margin: 40rem 0 0;
}

.cont .cir_wrap {
    padding-top: 100%;
    transition: transform 0.6s linear;
    position: relative;
}

.cont .cir_wrap .cir_line {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.cont .cir_wrap .cir_line img {
    width: 100%;
}

.cont .cir_bg {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 85%;
    height: 85%;
    transform: translate(-50%,-50%) ;
    background: url('/img/sub/m11_sec02_circle_bg.png') no-repeat;
    background-size: cover;
    border-radius: 50%;
}

.cont.num1 .cir_wrap {
    transform: rotate(-80deg);
}

.cont.num2 .cir_wrap {
    transform: rotate(-40deg);
}

.cont.num3 .cir_wrap {
    transform: rotate(-5deg);
}

.cont.num4 .cir_wrap {
    transform: rotate(50deg);
}

.cont.num5 .cir_wrap {
    transform: rotate(90deg);
}

.cont.num6 .cir_wrap {
    transform: rotate(130deg);
}

.cont .txt_wrap {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.cont .txt_wrap .txt_cont {
    position: absolute;
}

.cont .txt_wrap .txt_cont .num_txt {
    color: rgba(0,0,0,0.2);
    font-weight: 700;
    font-size: 20px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: color 0.3s ease-in-out;
}

.cont .txt_wrap .txt_cont .num_txt .num {
    font-size: 20px;
    width: 2.5em;
    height: 2.5em;
    line-height: 1;
    background-color: #eeeeee70;
    color: #444;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: color 0.3s ease-in-out , background-color 0.3s ease-in-out;
}

.cont .spe_box {
    position: absolute;
    bottom: -20%;
    width: 349px;
    opacity: 0;
    pointer-events: none;
    transition: 0.3s ease-in-out;
}

.cont .spe_box .img {
    position: relative;
    width: 349px;
    height: 174px;
    padding-top: 56%;
    border-radius: 2rem 2rem 0 0;
    overflow: hidden;
}

.cont .spe_box .img img {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.cont .spe_box .txt_box {
    width: 100%;
    position: relative;
    padding: 2rem 3rem 4rem;
    background-color: #fff;
    border-radius: 0 0 2rem 2rem;
}


.cont .txt_wrap .spe_box .txt_box .tit_box .tit {
    font-size: 24px;
    font-weight: 500;
    color: #4365A3;
    text-align: center;
    letter-spacing: 10%;
}

.cont .spe_box .txt_box .txt {
    margin-top: 1rem;
    font-size: 22px;
    color: #555;
    text-align: center;
}

.cont .txt_wrap .txt_cont.left .spe_box {
    left: 0;
    transform: translate(-100%,0%);
}

.cont .txt_wrap .txt_cont.right .spe_box {
    right: 0;
    transform: translate(100%,0%);
}


.cont .txt_wrap .txt_cont.left .spe_box::before {
    right: 1.2em;
}

.cont .txt_wrap .txt_cont.right .spe_box::before {
    left: 1.2em;
}

.cont .spe_box_wrap {
    display: none;
}

.cont .txt_wrap .txt_cont.active {
    z-index: 5;
}

.cont .txt_wrap .txt_cont.active .spe_box {
    opacity: 1;
    pointer-events: visible;
}

.cont .txt_wrap .txt_cont.active.left .spe_box {
    left: -4rem;
}

.cont .txt_wrap .txt_cont.active.right .spe_box {
    right: -4rem;
}

.cont .txt_wrap .txt_cont.active .num_txt {
    color: #000;
}

.cont .txt_wrap .txt_cont.active .num_txt .num {
    color: #222222;
    background-color: #fff;
    cursor: pointer;
}

.cont .txt_wrap .txt_cont.num1 {
    left: -15% ;
    bottom: 35%;
}

.cont .txt_wrap .txt_cont.num2 {
    left: -11% ;
    top: 17%;
}

.cont .txt_wrap .txt_cont.num3 {
    left: 15% ;
    top: -9%;
}

.cont .txt_wrap .txt_cont.num6 {
    right: -15% ;
    bottom: 35%;
}

.cont .txt_wrap .txt_cont.num5 {
    right: -11% ;
    top: 17%;
}

.cont .txt_wrap .txt_cont.num4 {
    right: 15% ;
    top: -9%;
}
/* m11 : sec02 */

/* m11 : sec03 */
.con0101 .sec3{
	position: relative;
	background: #fff;
}

.sub_system{
	padding-top: 80px;
	padding-left: 28rem;
}

.sub_system .system_box{
	width: 500px;
	height: 450px;
	border-radius: 60px;
	overflow: hidden;
	position: relative;
	cursor: pointer;
}

.sub_system .system_box::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: transform 0.5s ease, filter 0.5s ease;
    z-index: 1;
}

.sub_system .system_box.img01::before{
	background: url('/img/sub/m11_sec03_img01.jpg') no-repeat center/cover;
}

.sub_system .system_box.img02::before{
	background: url('/img/sub/m11_sec03_img02.jpg') no-repeat center/cover;
}

.sub_system .system_box.img03::before{
	background: url('/img/sub/m11_sec03_img03.jpg') no-repeat center/cover;
}

.sub_system .system_box.img04::before{
	background: url('/img/sub/m11_sec03_img04.jpg') no-repeat center/cover;
}

.sub_system .system_box.img05::before{
	background: url('/img/sub/m11_sec03_img05.jpg') no-repeat center/cover;
}

.sub_system .system_box.img06::before{
	background: url('/img/sub/m11_sec03_img06.jpg') no-repeat center/cover;
}

.sub_system .system_box:hover::before {
    filter: blur(10px);
    transform: scale(1);
}

.sub_system .swiper-slide .system_box:hover::after{
	opacity: 1;
}

.sub_system .system_box .system_txt {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	z-index: 3;
}

.sub_system .system_box .tag{
	font-size: 20px;
	color: #ffffff60;
}

.sub_system .system_box .tit{
	font-size: 33px;
	color: #fff;
	margin: 8px 0 22px;
}

.sub_system .system_box .btn_link{
	display: block;
	width: 5rem;
	height: 5rem;
	margin: 0 auto;
	background: url('/img/sub/m11_sec03_btn.png') no-repeat;
	background-size: cover;
}
/* m11 : sec03 */

/* --- m11 --- */

/* --- m12 --- */

/* m12 : sec01 */
.con0102 .sub_ttl_row .disc span{
	font-size: 35px;
	font-weight: 600;
	color: #222;
}
/* m12 : sec01 */

/* m12 : sec02 */
.doc_intro_wrap{
	display: flex;
	align-items: center;
}

.doc_intro_wrap .doc_intro_img{
	width: 860px;
	height: auto;
}

.doc_intro_wrap .doc_intro_img img{
	width: 100%;
}

.doc_intro_wrap .intro_txt{
	padding: 0 0 0 100px ;
}

.doc_intro_wrap .intro_txt .logo{
	display: block;
	width: 230px;
	height: 31px;
	background: url('/img/sub/m12_logo.png')no-repeat;
	background-size: contain;
}

.doc_intro_wrap .intro_txt .h_tag{
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 80px 0 40px;
}

.doc_intro_wrap .intro_txt .h_tag p{
	width: fit-content;
	padding: 10px 20px;
	border-radius: 360px;
	background: #222222;
	font-size: 18px;
	color: #fff;
}

.doc_intro_wrap .intro_txt .name{
	font-size: 45px;
	color: #222222;
	font-weight: 600;
}

.doc_intro_wrap .intro_txt .name span{
	font-size: 28px;
	color: #444;
	font-weight: 200;
}

.doc_intro_wrap .doc_intro_list{
	padding-top: 80px;

	display: flex;
	flex-direction: column;
	gap: 40px;
}

.doc_intro_wrap .doc_intro_list ul .title{
	font-size: 22px;
	color: #222222;
	font-weight: 600;
	margin-bottom: 15px;
}

.doc_intro_wrap .doc_intro_list ul li{
	display: flex;
	align-items: center;
	gap: 10px;
}

.doc_intro_wrap .doc_intro_list ul li + li{
	margin-top: 12px;
}

.doc_intro_wrap .doc_intro_list ul li span{
	display: block;
	width: 6px;
	height: 6px;
	border-radius: 6px;
	background: #4365A3;

}

.doc_intro_wrap .doc_intro_list ul li p{
	font-size: 19px;
	color: #555555;
	font-weight: 200;
}
/* m12 : sec02 */

/* --- m12 --- */

/* --- m13 --- */

/* m13 : sec01 */
.machine_wrap{
	padding-top: 160px;
	position: relative;
}

.machine_wrap .machine_img{
	width: 100%;
	height: auto;
}

.machine_wrap .machine_img img{
	width: 100%;
}

.machine_wrap .machine_txt {
	color: #fff;
	position: absolute;
	top: 190px;
	left: 200px;
}

.machine_wrap .machine_txt .machin_sub_tit{
	font-size: 24px;
}

.machine_wrap .machine_txt .machin_tit{
	font-size: 70px;
	font-weight: 600;
	margin: 10px 0 30px;
}

.machine_wrap .machine_txt .machin_desc{
	font-size: 21px;
	line-height: 1.5;
	letter-spacing: 0;
}

.vi_control_box {
    position: absolute;
    top: 48%;
    left: 12.5%;
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
}

.vi_pagi_box {
    display: flex;
    align-items: center;
    gap: 28rem;
    line-height: 1;
}

.vi_pagi_box .current {
    display: block;
    font-size: 1.8rem;
    font-weight: 300;
    color: #fff;
	position: relative;
	left: -3.5rem;
	letter-spacing: 0%;
}

.vi_control_box .vi_pagi_box {
    position: relative;
    width: 15vw;
    height: 3px;
    background: #ffffffa4;
}

.vi_pagi_box .total {
    display: block;
    font-size: 1.8rem;
    font-weight: 300;
    color: #ffffffa4;
	letter-spacing: 0%;
}

.vi_control_box .vis_paging .swiper-pagination-progressbar-fill {
    height: 2px;
    background: #fff;
}

.vi_control_box .vis_arrow {
    display: block;
    width: 25px;
    height: 25px;
    z-index: 5;
    background: no-repeat center center/cover;
}

.vi_control_box .vis_prev{
    background: url('/img/sub/m13_sec01_prev_icon.png');
    background-size: contain;
	position: relative;
	left: -10%;
}

.vi_control_box .vis_next{
    background: url('/img/sub/m13_sec01_next_icon.png');
    background-size: contain;
	position: relative;
	left: 9%;
}

/* m13 : sec01 */

/* m13 : sec02 */

.machine_con {
    position: relative;
}

.inspection_wrap{
	height: 158rem;
}

.inspection01,.inspection02, .inspection03  {
    display: none;
    opacity: 0;
}

.inspection01.on, .inspection02.on, .inspection03.on {
    display: block;
    opacity: 1;
    transition: opacity 0.5s;
}

.inspection_list{
    position: relative;
}

.surgical_list ul,
.inspection_list ul{
    display: flex;
    flex-wrap: wrap;
    gap: 30px;
	padding-top: 70px;
}

.surgical_list ul li,
.inspection_list ul li {
	width: 420px;
	height: auto;
	padding: 30px 0;
	border-radius: 20px;
	border: 1px solid #6E6E6E50;
	background: #F7F7F7;
    cursor: pointer;

	position: relative;
	transition: all 0.2s ease;
}

.surgical_list ul li .img,
.inspection_list ul li .img{
    width: 100%;
    height: auto;
    border-radius: 20px;
    /* overflow: hidden; */
    /* transform: scale(1); */
}

.surgical_list ul li:hover img,
.inspection_list ul li:hover img{
    transform: translateY(20px);
}

.surgical_list ul li .img img,
.inspection_list ul li .img img{
    width: 100%;
    transition: all 0.3s ease-in-out;
}

.surgical_list ul li .type,
.inspection_list ul li .type{
    font-size: 22px;
    color: #005988;
    margin-top: 30px;
}

.inspection_list ul li .type span{
    font-size: 22px;
    color: #888;
}

.surgical_list ul li .name,
.inspection_list ul li .name{
    font-size: 21px;
    font-weight: 400;
    color: #000;
    margin: 20px 0 0;
	text-align: center;
}

.inspection_list .inspection_type{
    font-size: 26px;
    color: #555555;
    font-weight: 500;
    padding-top: 80px;
    padding-bottom: 20px;
    margin-left: 25px;
}

.inspection_list .inspection_type::before{
    content: "";
    display: block;
    width: 10px;
    height: 10px;
    border-radius: 10px;
    background: #BBBBBB;
    position: relative;
    top: 24px;
    left: -25px;
}

.inspection_list .inspection_type:nth-of-type(1){
    padding-top: 0px;
}

.inspection_list .inspection_type::marker{
    color: #BBBBBB;
}

.surgical_list ul li .hover_box,
.inspection_list ul li .hover_box {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(2px);
	border: 4px solid var(--main-color);
	border-radius: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 30px;
    box-sizing: border-box;
    opacity: 1;
    visibility: hidden;
    transition: all 0.2s ease;
}

.surgical_list ul li .hover_box .h_name,
.inspection_list ul li .hover_box .h_name {
    color: #fff;
    font-size: 25px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 50px;
	text-wrap: balance;
	text-align: center;
}

.surgical_list ul li .hover_box .icon,
.inspection_list ul li .hover_box .icon {
    width: 70px;
    height: 70px;
    border: 1px solid #fff;
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
}

.surgical_list ul li .hover_box .icon span,
.inspection_list ul li .hover_box .icon span{
	color: #fff;
	font-weight: 100;
	font-size: 40px;
	display: inline-block;
	transition: transform 0.3s ease;
	transform: rotate(0);
}

.surgical_list ul li:hover .hover_box ,
.inspection_list ul li:hover .hover_box {
    opacity: 1;
    visibility: visible;
}

.surgical_list ul li:hover .name,
.inspection_list ul li:hover .name{
	opacity: 0;
}


.surgical_list ul li:hover .hover_box .icon span,
.inspection_list ul li:hover .hover_box .icon span{
	transform: rotate(90deg);
}

/* 치료 및 수술 장비, 검사장비 : modal */

.surgical_list_modal,
.inspection_list_modal{
    width: 100%;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.5);
    background-attachment: fixed;
    z-index: 10000;
    display: none;
}

.surgical_list_modal ul li,
.inspection_list_modal ul li{
    width: 1160px;
    height: auto;
    border-radius: 20px;
    overflow: hidden;
    background: #fff;
    box-shadow: 10px, 10px, 10px, rgba(0,0,0,0.1);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50% , -50%);
    display: none;
}

.surgical_list_modal ul li .row_wrap,
.inspection_list_modal ul li .row_wrap{
	display: flex;
	align-items: center;
	gap: 60px;
}

.surgical_list_modal ul li .img,
.inspection_list_modal ul li .img{
    width: 45%;
	background: #C4C4C440;
}

.surgical_list_modal ul li .img img,
.inspection_list_modal ul li .img img{
    width: 100%;
}

.surgical_list_modal ul li .modal_txt,
.inspection_list_modal ul li .modal_txt{
	width: 55%;
}

.surgical_list_modal ul li .modal_txt .name,
.inspection_list_modal ul li .modal_txt .name{
	width: fit-content;
	border: 2px solid #4365A3;
	border-radius: 360px;
	background: #fff;
    font-size: 21px;
	padding: 7px 15px; 
    letter-spacing: -4%;
    color: var(--main-color);
    font-weight: 500;
    margin-bottom: 18px;
}

.surgical_list_modal ul li .modal_txt .type,
.inspection_list_modal ul li .modal_txt .type{
    font-size: 40px;
    color: #222;
	font-weight: 500;
	margin-bottom: 45px;
}

.inspection_list_modal ul li .modal_txt .type span{
    font-size: 22px;
    color: #888;
}

.surgical_list_modal ul li .modal_txt .txt,
.inspection_list_modal ul li .modal_txt .txt{
    font-size: 21px;
    color: #222;
    width: 90%;
    word-break: keep-all;
	line-height: 1.5;
	border-bottom: 1px solid #DDDDDD;
	padding: 0 0 30px 0;
}

.surgical_list_modal ul li .modal_txt .txt_list,
.inspection_list_modal ul li .modal_txt .txt_list{
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding: 30px 0 0 0;
}

.surgical_list_modal ul li .modal_txt .txt_list .list,
.inspection_list_modal ul li .modal_txt .txt_list .list{
	display: flex;
	align-items: center;
	gap: 10px;
}

.surgical_list_modal ul li .modal_txt .txt_list .list span,
.inspection_list_modal ul li .modal_txt .txt_list .list span{
	font-size: 18px;
	color: #666666;
}

.surgical_list_modal ul li .modal_txt .txt_list .list p,
.inspection_list_modal ul li .modal_txt .txt_list .list p{
	font-size: 18px;
	color: #666666;
	letter-spacing: -4%;
	font-weight: 300;
}

.surgical_list_modal ul li .modal_close,
.inspection_list_modal ul li .modal_close{
	width: 70px;
	height: 70px;
	border-radius: 50%;
	border: 1px solid #222;
    position: absolute;
    top: 30px;
    right: 30px;
    cursor: pointer;
}

.surgical_list_modal ul li .modal_close span,
.inspection_list_modal ul li .modal_close span{
	font-size: 30px;
    color: #222;
	font-weight: 300;
	padding: 19px;
    transform: rotate(0deg);
    transition: all 0.3s ease-in-out;
}

.surgical_list_modal ul li .modal_close:hover span,
.inspection_list_modal ul li .modal_close:hover span{
    transform: rotate(90deg);
}

/* tab btn */
.tab_btn{
    margin: 0 0 200px;
}

.tab_btn ul{
    width: 150px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
	gap: 35px;
}

.tab_btn ul li{
    background: transparent;
    font-size: 24px;
    color: #22222250;
    text-align: center;
	font-weight: 500;
    cursor: pointer;
    transition: all 0.5s ease-in-out;

	position: relative;
}

.tab_btn ul li::after{
	content: "";
	display: block;
	width: 7px;
	height: 7px;
	border-radius: 360px;
	background: #4365A3;

	position: absolute;
	top: 50%;
	left: 160%;
	transform: translate(-50%, -50%);
}

.tab_btn ul li:last-child::after{
	display: none;
}

.tab_btn ul li.active{
    color: #4365A3;
	border-bottom: 3px solid #4365A3;
}
/* tab btn */


/* m13 : sec02 */

/* --- m13 --- */

/* --- m14 --- */
.around_wrap{
	margin-top: 120px;
}

.around_wrap .around_swiper02{
	padding-bottom: 13rem;
	overflow: visible;
}

.around_wrap .around_swiper02 .swiper-slide {
    width: 80%;
    margin: 0 -32% ;
    transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1);
    transform: scale(0.85);
    opacity: 0;
    visibility: hidden;
    z-index: 1;
}

.around_wrap .around_swiper02 .swiper-slide-prev,
.around_wrap .around_swiper02 .swiper-slide-next {
	opacity: 0.9;
    visibility: visible;
    filter: brightness(0.3);
    z-index: 1;
}

.around_wrap .around_swiper02 .swiper-slide-active {
    transform: scale(1);
    opacity: 1;
    visibility: visible;
    filter: brightness(1);
    z-index: 2;
}

.around_wrap .around_swiper02 .swiper-slide-active .ar_img img{
	box-shadow: 0px 0px 24px rgba(0,0,0,0.25);
}

.around_wrap .around_swiper02 .ar_img{
	width: 100%;
	height: auto;
	border-radius: 50px;
	overflow: hidden;
}


.around_wrap .around_swiper02 .ar_img img{
	width: 100%;
}

.around_wrap .around_swiper .swiper-slide{
	filter: brightness(0.3);
}

.around_wrap .around_swiper .swiper-slide-active{
	filter: brightness(1);
}

.around_wrap .around_swiper .ar_img02{
	width: 175px;
	height: auto;
	border-radius: 20px;
	overflow: hidden;
}

.around_wrap .around_swiper .ar_img02 img{
	width: 100%;
}

.vi_control_box02 {
    position: absolute;
    bottom: 9%;
    left: 50%;
	transform: translateX(-50%);
    z-index: 5;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
}

.vi_pagi_box02 {
    display: flex;
    align-items: center;
    gap: 28rem;
    line-height: 1;
}

.vi_pagi_box02 .current {
    display: block;
    font-size: 1.8rem;
    font-weight: 300;
    color: #222222;
	position: relative;
	left: -3.5rem;
	letter-spacing: 0%;
}

.vi_control_box02 .vi_pagi_box02 {
    position: relative;
    width: 15vw;
    height: 3px;
    background: #22222250;
}

.vi_pagi_box02 .total {
    display: block;
    font-size: 1.8rem;
    font-weight: 300;
    color: #22222250;
	letter-spacing: 0%;
}

.vi_control_box02 .vi_pagi_box02 .swiper-pagination-progressbar-fill {
    height: 2px;
    background: #000;
}


/* --- m14 --- */

/* --- m15 --- */

.map{
	width: 100%;
	height: 560px;
	border-radius: 50px;
	overflow: hidden;
	margin-top: 80px;
}

.map .root_daum_roughmap,
.map .root_daum_roughmap_landing,
.map .root_daum_roughmap .wrap_map{
	width: 100% !important;
	min-width: 100% !important;
	max-width: 100% !important;
	height: 100% !important;
}

.map_desc{
	display: flex;
	gap: 200px;
	align-items: center;
	justify-content: center;

	padding-top: 70px;
}

.map_desc .place_con_wrap .place_con + .place_con{
	padding-top: 80px;
}

.map_desc .place_con_wrap .place_con .tit{
	font-size: 22px;
	font-weight: 200;
	color: #222222;
	margin-bottom: 20px;

	padding-left: 10px;
	border-left: 5px solid #222222;
}

.map_desc .place_con_wrap .place_con .add{
	font-size: 30px;
	color: #222222;
	line-height: 1.2;
}

.map_desc .place_con_wrap .place_con .add b{
	font-size: 40px;
	font-weight: 600;
}

.map_desc .place_con_wrap .place_con .subway_line{
	width: fit-content;
	padding: 5px 20px;
	border-radius: 360px;
	background: #EEBF29;
	font-size: 18px;
	color: #fff;
	margin-bottom: 15px;
	margin-top: 40px;
}

.map_desc .place_con_wrap .place_con .exit_desc{
	font-size: 24px;
	color: #444444;
	font-weight: 200;
	line-height: 1.5;
}

.map_desc .place_con_wrap .place_con .exit_desc b{
	font-weight: 500;
	color: #222222;
}

.map_desc .place_con_wrap .place_con .call{
	font-size: 50px;
	font-weight: 500;
	color: #222222;
}

.map_desc .place_con_wrap .place_con .call span{
	color: #898989;
}

.hours_intro{
	width: 600px;
	height: auto;
	border-radius: 50px;
	background: #F7F7F7;
	padding: 60px;
}

.hours_intro .tit{
	font-size: 28px;
	color: #222222;
	font-weight: 600;
	letter-spacing: -4%;
}

.hours_intro .hours_list{
	margin: 40px 0;
}

.hours_intro .hours_list ul li {
	display: flex;
	align-items: center;
	gap: 15px;
}

.hours_intro .hours_list ul li + li{
	margin-top: 25px;	
}

.hours_intro .hours_list ul li span{
	display: block;
	width: 8px;
	height: 8px;
	border-radius: 8px;
	background: #BBBBBB;
}

.hours_intro .hours_list ul li .date{
	width: 100px;
	font-size: 25px;
	color: #555555;
	letter-spacing: 5%;
}

.hours_intro .hours_list ul li .time{
	font-size: 25px;
	color: #222222;
	letter-spacing: -3%;
}

.hours_intro .hours_list ul li .desc{
	width: fit-content;
	padding: 5px 10px;
	font-size: 18px;
	color: #fff;
	border-radius: 360px;
	letter-spacing: -5%;
	background: #222222;
}

.hours_intro .notice{
	font-size: 20px;
	color: #555555;
	font-weight: 200;
}

.hours_intro .notice span{
	font-weight: 500;
}

.hours_intro .notice:last-child{
	margin-top: 15px;
}

/* --- m15 --- */

/* --- m21 --- */

/* m21 : sec02 */
.diff_flex{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.diff_flex .diff_img{
	width: 100%;
	height: auto;
	margin-top: 100px;
}

.diff_flex .diff_img img{
	width: 100%;
}

.diff_flex .diff_graph{
	display: flex;
	align-items: center;
	gap: 60px;
}

.diff_flex .diff_graph ul {
	padding: 35px;

	display: flex;
	flex-direction: column;
	align-items: center;
}

.diff_flex .diff_graph ul li{
	display: flex;
	justify-content: center;
	gap: 10px;
	padding: 30px 0;
	width: 100%;

	background-image: linear-gradient(to right, #BBBBBB 50%, rgba(255, 255, 255, 0) 0%);
    background-position: bottom;
    background-size: 12px 1px;
    background-repeat: repeat-x;
}

.diff_flex .diff_graph ul li:last-child{
	background-image: none;
	padding-bottom: 0;
}

.diff_flex .diff_graph ul p{
	width: 250px;
	font-size: 25px;
	color: #444444;
	border-radius: 360px;
	background: #EEEEEE;
	text-align: center;
	padding: 13px 0;
	font-weight: 500;
}

.diff_flex .diff_graph ul li{
	font-size: 21px;
	color: #444;
}

.diff_flex .diff_graph ul.on{
	border-radius: 50px;
	background: #fff;
	filter: drop-shadow(0 0 25px rgba(68,149,253,0.1));
}

.diff_flex .diff_graph ul.on p{
	background: linear-gradient(to right, #4495FD, #20589F);
	color: #fff;
}

.diff_flex .diff_graph ul.on li{
	color: #222;
	font-weight: 400;
}

.diff_flex .diff_graph ul.on li span{
	font-weight: 500;
	color: #4365A3;
}
/* m21 : sec02 */

/* m21 : sec03 */

.con0201 .sec3 .drop_img{
	max-width: 1070px;
}
/* m21 : sec03 */

/* m21 : sec04 */
.recom_list ul{
	display: flex;
	gap: 50px;

	margin-top: 80px;
}

.recom_list ul li{
	width: 300px;
	height: 300px;
	border-radius: 300px;
	border: 2px solid #4365A3;
	background: #fff;

	position: relative;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap :15px;
}

.recom_list ul li::after{
	content: "";
	display: block;
	width: 18%;
	height: 0;
	border: 1px dashed #4365A3;

	position: absolute;
	top: 50%;
	right: -18%;
}

.recom_list ul li:last-child::after{
	border: none;
}

.recom_list ul li span{
	display: block;
	width: 30px;
	height: 31px;
	background: url('/img/sub/check_icon.png') no-repeat;
	background-size: cover;
}

.recom_list ul li p{
	font-size: 20px;
	color: #222;
	line-height: 1.5;
	text-align: center;
}
/* m21 : sec04 */

/* m21 : sec05 */
.lineup_tab_btn {
	margin: 50px 0 80px;
	cursor: pointer;
}

.lineup_tab_btn ul{
	display: flex;
	gap: 20px;
	align-items: center;
	justify-content: center;
}

.lineup_tab_btn ul li {
	width: 200px;
	padding: 12px 0 ;
	border-radius: 360px;
	font-size: 18px;
	color: #22222250;
	background: #F7F7F7;
	text-align: center;
}

.lineup_tab_btn ul li.on{
	color: #ffffff;
	background: #222222;
}

.tab_box02{
	position: relative;
}

.tab_box01, .tab_box02, .tab_box03, .tab_box04, .tab_box05 {
    display: none;
}

.tab_box01.on, .tab_box02.on, .tab_box03.on, .tab_box04.on, .tab_box05.on {
    display: block;
}

.lineup_tab_con .flex_wrap{
	display: flex;
	align-items: center;
	gap: 80px;
}

.lineup_tab_con .flex_wrap .img{
	width: 100%;
	max-width: 600px;
	height: auto;
	border-radius: 50px;
	overflow: hidden;
}

.lineup_tab_con .flex_wrap .img img{
	width: 100%;
}

.lineup_tab_con .flex_wrap .line_txt_box .tit{
	font-size: 32px;
	color: #4365A3;
	font-weight: 600;
}

.lineup_tab_con .flex_wrap .line_txt_box .tit span{
	font-size: 22px;
	color: #888888;
	font-weight: 300;
}

.lineup_tab_con .flex_wrap .line_txt_box .detail{
	display: flex;
	align-items: center;
	gap: 10px;
	margin : 15px 0 40px;
}

.lineup_tab_con .flex_wrap .line_txt_box .detail p {
	font-size: 24px;
}

.lineup_tab_con .flex_wrap .line_txt_box .detail span{
	display: block;
	width: 10px;
	height: 10px;
	border-radius: 10px;
	background: #7F9BCE;
}

.lineup_tab_con .flex_wrap .line_txt_box .desc{
	width: 80%;
	font-size: 21px;
	font-weight: 300;
	line-height: 1.5;
	color: #444;
	margin-bottom: 50px;
}

.lineup_tab_con .flex_wrap .line_txt_box .list_tag{
	width: 58%;
}

.lineup_tab_con .flex_wrap .line_txt_box .list_tag ul{
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
}

.lineup_tab_con .flex_wrap .line_txt_box .list_tag ul li{
	width: fit-content;
	padding: 10px 10px;
	border-radius: 360px;
	background: #EEEEEE;
	font-size: 18px;
	color: #444;
}

/* 애니메이션 효과 */

.lineup_tab_con .flex_wrap .line_txt_box .tit,
.lineup_tab_con .flex_wrap .line_txt_box .detail,
.lineup_tab_con .flex_wrap .line_txt_box .desc,
.lineup_tab_con .flex_wrap .line_txt_box .list_tag {
    opacity: 0;
}

.tab_box01.on .line_txt_box .tit,
.tab_box01.on .line_txt_box .detail,
.tab_box01.on .line_txt_box .desc,
.tab_box01.on .line_txt_box .list_tag,
.tab_box02.on .line_txt_box .tit,
.tab_box02.on .line_txt_box .detail,
.tab_box02.on .line_txt_box .desc,
.tab_box02.on .line_txt_box .list_tag,
.tab_box03.on .line_txt_box .tit,
.tab_box03.on .line_txt_box .detail,
.tab_box03.on .line_txt_box .desc,
.tab_box03.on .line_txt_box .list_tag,
.tab_box04.on .line_txt_box .tit,
.tab_box04.on .line_txt_box .detail,
.tab_box04.on .line_txt_box .desc,
.tab_box04.on .line_txt_box .list_tag,
.tab_box05.on .line_txt_box .tit,
.tab_box05.on .line_txt_box .detail,
.tab_box05.on .line_txt_box .desc,
.tab_box05.on .line_txt_box .list_tag {
    animation: fadeInUp 0.5s ease-out forwards;
}

.tab_box01.on .line_txt_box .tit,
.tab_box02.on .line_txt_box .tit,
.tab_box03.on .line_txt_box .tit,
.tab_box04.on .line_txt_box .tit,
.tab_box05.on .line_txt_box .tit {
    animation-delay: 0s;
}

.tab_box01.on .line_txt_box .detail,
.tab_box02.on .line_txt_box .detail,
.tab_box03.on .line_txt_box .detail,
.tab_box04.on .line_txt_box .detail,
.tab_box05.on .line_txt_box .detail {
    animation-delay: 0.1s;
}

.tab_box01.on .line_txt_box .desc,
.tab_box02.on .line_txt_box .desc,
.tab_box03.on .line_txt_box .desc,
.tab_box04.on .line_txt_box .desc,
.tab_box05.on .line_txt_box .desc {
    animation-delay: 0.2s;
}

.tab_box01.on .line_txt_box .list_tag,
.tab_box02.on .line_txt_box .list_tag,
.tab_box03.on .line_txt_box .list_tag,
.tab_box04.on .line_txt_box .list_tag,
.tab_box05.on .line_txt_box .list_tag {
    animation-delay: 0.35s;
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(25px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
/* 애니메이션 효과 */
/* m21 : sec05 */

/* --- m21 --- */

/* --- m22 --- */
/* m22 : sec02 */

.drop_img{
	width: 100%;
	max-width: 800px;
	height: auto;
	border-radius: 70px;
	overflow: hidden;
	margin: 80px auto 0;
	filter: drop-shadow(0 0 50px rgba(61, 197, 255, 0.8));
}

.drop_img img{
	width: 100%;
}
/* m22 : sec02 */

/* m22 : sec03 */
.prog_list{
	margin-top: 80px;
}

.prog_list ul{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 200px;
}

.prog_list ul li{
	display: flex;
	flex-direction: column;
	align-items: center;
	position: relative;
}

.prog_list ul li::after{
	content: "";
	display: block;
	width: 45%;
	border: 1px solid #4365A3;

	position: absolute;
	top: 30%;
	right: -60%;
}

.prog_list ul li:last-child::after{
	border: none;
}

.prog_list ul li .circle_box{
	position: relative;
	width: 250px;
	height: 250px;
	border-radius: 50%;

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 19px;
	margin-bottom: 24px;
}

.prog_list ul li .circle_box::before {
	content: '';
	position: absolute;
	inset: 0;          
	border-radius: 50%;
	padding: 2px;  
	background: linear-gradient(90deg, #4d6eb2, rgba(255, 255, 255, 0));

	-webkit-mask: 
    linear-gradient(#fff 0 0) content-box, 
    linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
    mask-composite: exclude;
	pointer-events: none;
}


.prog_list ul li .circle_box .prog_icon{
	width: 65px;
	height: 65px;
}

.prog_list ul li .circle_box p{
	font-size: 25px;
	color: #4365A3;
}

.prog_list ul li .txt_con{
	text-align: center;
}

.prog_list ul li .txt_con .tit{
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 20px;
}

.prog_list ul li .txt_con .tit span{
	color: #4365A3;
}

.prog_list ul li .txt_con .desc{
	font-size: 20px;
	font-weight: 300;
	line-height: 1.5;
}
/* m22 : sec03 */

/* m22 : sec04 */
.proce_list{
	margin-top: 80px;
}

.proce_list ul{
	display: flex;
	align-items: center;
	gap: 25px;
}
.proce_list ul li{
	display: flex;
	flex-direction: column;
	gap: 26px;
}
.proce_list ul li .proce_img{
	width: 100%;
	max-width: 320px;
	height: auto;
	border-radius: 50px;
	overflow: hidden;
	border: 1px solid #DDDDDD;
	transition: all 0.5s ease;
}

.proce_list ul li:hover .proce_img{
	border: 1px solid #4365A3;
}

.proce_list ul li .proce_img img{
	width: 100%;
}

.proce_list ul li .proce_txt{
	width: 320px;
	height: auto;
	border-radius: 50px;
	background: #fff;
	text-align: center;
	padding: 40px 32px;
	border: 1px solid #ededed;
	transition: all 0.5s ease;
}

.proce_list ul li:hover .proce_txt{
	background: #4365A3;
}

.proce_list ul li .proce_txt .tit{
	font-size: 22px;
	color: #222;
	margin-bottom: 15px;
}

.proce_list ul li:hover .proce_txt .tit{
	color: #fff;
}

.proce_list ul li .proce_txt .desc{
	font-size: 21px;
	color: #222;
	font-weight: 200;
	line-height: 1.5;
}

.proce_list ul li:hover .proce_txt .desc{
	color: #fff;
}
/* m22 : sec04 */

/* m22 : sec05 */
.list_con{
	display: flex;
	align-items: center;
	gap: 60px;
	margin-top: 80px;
}
.list_con .list_img{
	width: 100%;
	max-width: 520px;
	height: auto;
	border-radius: 50px;
	overflow: hidden;
}

.list_con .list_img img{
	width: 100%;
	transition: opacity 0.3s ease-in-out;
}

.list_con .list_wrap ul{
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.list_con .list_wrap ul li{
	width: 780px;
	height: auto;
	border-radius: 360px;
	background: transparent;
	border: 1px solid #EEEEEE;
	padding: 20px 30px;

	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
	gap: 15px;
}

.list_con .list_wrap ul li:hover{
	background: #4365A3;
	border: none;
	color: #fff;
}

.list_con .list_wrap ul li span{
	display: block;
	width: 30px;
	height: 31px;
	background: url('/img/sub/check_icon_gray.png') no-repeat;
	background-size: cover;
}

.list_con .list_wrap ul li:hover span{
	background: url('/img/sub/check_icon_wh.png') no-repeat;
}

.list_con .list_wrap ul li p{
	font-size: 23px;
}
/* m22 : sec05 */

/* --- m22 --- */

/* --- m23 --- */
/* m23 : sec03 */

.prog_list.blue ul li::after{
	content: "";
	display: block;
	width: 45%;
	border: 1px solid #fff;

	position: absolute;
	top: 38%;
	right: -62%;
}

.prog_list.blue ul li:last-child::after{
	border: none;
}

.prog_list.blue ul li .circle_box{
	position: relative;
	width: 250px;
	height: 250px;
	border-radius: 50%;
	background: linear-gradient(135deg, rgba(0, 179, 255, 0.35), rgba(0, 179, 255, 0) );

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 19px;
	margin-bottom: 24px;
}

.prog_list.blue ul li .circle_box::before {
	content: '';
	position: absolute;
	inset: 0;          
	border-radius: 50%;
	padding: 2px;  
	background: linear-gradient(90deg, #fff, rgba(255, 255, 255, 0));

	-webkit-mask: 
    linear-gradient(#00B3FF 0 0) content-box, 
    linear-gradient(#00B3FF 0 0);
	-webkit-mask-composite: xor;
    mask-composite: exclude;
	pointer-events: none;
}

.prog_list.blue ul li .circle_box p{
	font-size: 25px;
	color: #fff;
}

.prog_list.blue ul li .txt_con .tit{
	font-size: 24px;
	font-weight: 500;
	margin-bottom: 20px;
	color: #fff;
	line-height: 1.5;
}

.prog_list.blue ul li .txt_con .tit span{
	color: #ABD2F3;
}
/* m23 : sec03 */
/* --- m23 --- */

/* --- m24 --- */

/* m24 : sec04 */
.type_tab_btn {
	margin: 80px 0 70px;
	cursor: pointer;
	border-bottom: 1px solid #E8E8E8;
	padding-bottom: 35px;
}

.type_tab_btn ul{
	display: flex;
	gap: 100px;
	align-items: center;
	justify-content: center;
}

.type_tab_btn ul li {
	width: fit-content;
	font-size: 21px;
	color: #444;
	text-align: center;
	font-weight: 300;
}

.type_tab_btn ul li.on{
	color: #4365A3;
	font-weight: 600;
}

.type_box01, .type_box02, .type_box03, .type_box04{
    display: none;
}

.type_box01.on, .type_box02.on, .type_box03.on, .type_box04.on {
    display: block;
}

.type_tab_con .flex_wrap{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 110px;
}

.type_tab_con .flex_wrap .img{
	width: 100%;
	max-width: 500px;
	height: auto;
	border-radius: 20px;
	overflow: hidden;
}

.type_tab_con .flex_wrap .img img{
	width: 100%;
}

.type_tab_con .flex_wrap .type_txt_box{
	width: 45%;
}

.type_tab_con .flex_wrap .type_txt_box .type{
	width: fit-content;
	padding: 5px 20px;
	border-radius: 360px;
	border: 1px solid #4365A3;
	background: #fff;
	font-size: 25px;
	font-weight: 500;
	color: #4365A3;
}

.type_tab_con .flex_wrap .type_txt_box .tit{
	font-size: 23px;
	margin: 20px 0 14px;
}

.type_tab_con .flex_wrap .type_txt_box .tit span{
	color: #4365A3;
	font-weight: 500;
}

.type_tab_con .flex_wrap .type_txt_box .desc{
	width: 80%;
	font-size: 20px;
	color: #444;
	line-height: 1.5;
	font-weight: 300;
	margin-bottom: 45px;
}

.type_tab_con .flex_wrap .type_txt_box ul li{
	font-size: 21px;
	color: #444;

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

.type_tab_con .flex_wrap .type_txt_box ul li + li{
	margin-top: 14px;
}

.type_tab_con .flex_wrap .type_txt_box ul li span{
	display: block;
	color: #4365A3;
}

/* 애니메이션 효과 */

.type_tab_con .flex_wrap .type_txt_box .type,
.type_tab_con .flex_wrap .type_txt_box .tit,
.type_tab_con .flex_wrap .type_txt_box .desc,
.type_tab_con .flex_wrap .type_txt_box li {
    opacity: 0;
}

.type_box01.on .type_txt_box .type,
.type_box01.on .type_txt_box .tit,
.type_box01.on .type_txt_box .desc,
.type_box01.on .type_txt_box li,
.type_box02.on .type_txt_box .type,
.type_box02.on .type_txt_box .tit,
.type_box02.on .type_txt_box .desc,
.type_box02.on .type_txt_box li,
.type_box03.on .type_txt_box .type,
.type_box03.on .type_txt_box .tit,
.type_box03.on .type_txt_box .desc,
.type_box03.on .type_txt_box li,
.type_box04.on .type_txt_box .type,
.type_box04.on .type_txt_box .tit,
.type_box04.on .type_txt_box .desc,
.type_box04.on .type_txt_box li {
    animation: fadeInUp 0.5s ease-out forwards;
}

.type_box01.on .type_txt_box .type,
.type_box02.on .type_txt_box .type,
.type_box03.on .type_txt_box .type,
.type_box04.on .type_txt_box .type{
    animation-delay: 0s;
}

.type_box01.on .type_txt_box .tit,
.type_box02.on .type_txt_box .tit,
.type_box03.on .type_txt_box .tit,
.type_box04.on .type_txt_box .tit {
    animation-delay: 0.1s;
}

.type_box01.on .type_txt_box .desc,
.type_box02.on .type_txt_box .desc,
.type_box03.on .type_txt_box .desc,
.type_box04.on .type_txt_box .desc {
    animation-delay: 0.2s;
}

.type_box01.on .type_txt_box li,
.type_box02.on .type_txt_box li,
.type_box03.on .type_txt_box li,
.type_box04.on .type_txt_box li {
    animation-delay: 0.35s;
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(25px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
/* m24 : sec04 */

/* m24 : sec06 */
.flex_list_con > ul > li{
	display: flex;
	gap: 80px;
	align-items: center;
}

.flex_list_con > ul > li + li{
	margin-top: 120px;
}

.flex_list_con > ul > li .sub_tit_wrap{
	text-align: left;
}

.flex_list_con > ul > li .img{
	width: 100%;
	max-width: 680px;
	border-radius: 50px;
	overflow: hidden;
}

.flex_list_con > ul > li .img img{
	width: 100%;
}
/* m24 : sec06 */
/* --- m24 --- */

/* --- m25 --- */

/* m25 : sec05 */
.list_con .list_wrap.bg_wh ul li{
	background: #fff;
}

.list_con .list_wrap.bg_wh ul li:hover{
	background: #4365A3;
}
/* m25 : sec05 */
/* --- m25 --- */

/* --- m31 --- */

/* m31 : sec06 */

.pin{
	width: 100%;
    height: 100vh;
    overflow: hidden;
    position: relative;
	padding: 25rem 0 !important;
}

.sp_scroll_con{
	position: relative;
	display: flex;
	gap: 275px;
	height: 100%;
}

.sp_scroll_con .line{
	width: 1px;
	height: 100vh;
	background: #fff;
	position: absolute;
	top: -22.6%;
	left: 50%;
	transform: translateX(-50%);
}

.sp_scroll_con .scroll_list {
    position: relative;
    height: 100%;
    /* overflow: hidden */
}

.sp_scroll_con .scroll_list ul {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    will-change: transform;
}

.sp_scroll_con .scroll_list ul li{
	opacity: 0.25;
    transition: opacity 0.4s ease, transform 0.4s ease;
    will-change: opacity, transform;
}

.sp_scroll_con .scroll_list ul li.active {
    opacity: 1;
}

.sp_scroll_con .scroll_list ul li + li{
	margin-top: 100px;
}

.sp_scroll_con .scroll_list ul li .type{
	width: fit-content;
	font-size: 18px;
	color: #4365A3;
	background: #fff;
	border-radius: 360px;
	padding: 7px 20px;
	text-align: center;
	letter-spacing: 0%;
	font-weight: 400;
	position: relative;
}

.sp_scroll_con .scroll_list ul li .type::before{
	display: block;
    content: "";
    width: 106px;
    height: 12px;
    background: url('/img/sub/circle_line_row.png') no-repeat;
    background-size: contain;

    position: absolute;
    top: 50%;
    right: 100%;
    left: auto;
    margin-right: 0px; 

    transform: translateY(-50%);
}

.sp_scroll_con .scroll_list ul li .tit{
	font-size: 25px;
	color: #fff;
	font-weight: 500;
	margin: 15px 0 20px;
}

.sp_scroll_con .scroll_list ul li .desc{
	font-size: 21px;
	color: #fff;
	font-weight: 100;
	line-height: 1.5;
}
/* m31 : sec06 */


/* m31 : sec07 */
.con0301 .clinic_slide .progress .thumb1 {
	width: 50%;
}

.con0301 .clinic_slide .progress .thumb2 {
	width: 100%;
}
/* m31 : sec07 */
/* --- m31 --- */

/* --- m32 --- */
/* m32 : sec02 */
.need_list {
	margin-top: 80px;
}

.need_list ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 50px;
}
.need_list ul li{
	width: 400px;
	height: 250px;
	border-radius: 50px;
	background: #F0F0F0;
	box-shadow: 4px 4px 5px rgba(0,0,0,0.05);

	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
}

.need_list ul li p{
	font-size: 24px;
	color: #444;
	line-height: 1.5;
	text-align: center;
}
/* m32 : sec02 */

/* m32 : sec04 */
.sharp_img {
	width: 100%;
	max-width: 785px;
	margin: 60px auto 70px;
	border-radius: 50px;
	overflow: hidden;
}

.sharp_img img{
	width: 100%;
}

.sharp_list ul{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 50px;
}

.sharp_list ul li{
	width: 420px;
	height: 100px;
	font-size: 20px;
	color: #222;
	text-align: center;
	font-weight: 500;
	border: 1px solid #4365A3;
	border-radius: 360px;

	display: flex;
	align-items: center;
	justify-content: center;

	position: relative;
}

.sharp_list ul li::after{
	content: "";
	display: block;
	width: 50px;
	border: 1px dashed #4365A3;

	position: absolute;
	top: 50%;
	right: -12%;
	transform: translateY(-50%);
}

.sharp_list ul li:last-child::after{
	border: none;
}
/* m32 : sec04 */

/* m32 : sec05 */
.con0302 .sec5 .sub_tit_wrap .tit span{
	font-size: 64px;
}

.con0302 .sp_scroll_con .spin_img{
	width: 500px;
}

.con0302 .sp_scroll_con .spin_img img{
	width: 100%;
}

.con0302 .sp_scroll_con .scroll_list ul li .type::before{
	right: 96%;
}
/* m32 : sec05 */

/* m32 : sec06 */
.list_tab_btn {
	margin: 50px 0 70px;
	cursor: pointer;
}

.list_tab_btn ul{
	display: flex;
	gap: 20px;
	align-items: center;
	justify-content: center;
}

.list_tab_btn ul li {
	width: 200px;
	padding: 12px 0 ;
	border-radius: 360px;
	font-size: 18px;
	color: #22222250;
	background: #F7F7F7;
	text-align: center;
}

.list_tab_btn ul li.on{
	color: #ffffff;
	background: #222222;
}

.list_box01, .list_box02, .list_box03 {
    display: none;
}

.list_box01.on, .list_box02.on, .list_box03.on {
    display: block;
}

.list_tab_con .tit{
	font-size: 30px;
	color: #222;
	font-weight: 500;
	text-align: center;
}

.list_tab_con .desc{
	font-size: 21px;
	color: #444;
	font-weight: 300;
	line-height: 1.5;
	margin: 10px 0 60px;
	text-align: center;
}

.list_tab_con .desc b{
	font-weight: 500;
	color: #222;
}

.list_tab_con .lens_list ul{
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	gap: 5px;
}

.list_tab_con .lens_list ul li{
	width: 350px;
	height: 240px;
	border-radius: 10px;
	background: #F7F7F7;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.list_tab_con .lens_list ul li .lens_img{
	width: 220px;
	height: 100px;
}

.list_tab_con .lens_list ul li .lens_img img{
	width: 100%;
}

.list_tab_con .lens_list ul li .lens_type{
	font-size: 18px;
	color: #4365A3;
	margin: 20px 0 5px;
}

.list_tab_con .lens_list ul li .lens_tit{
	font-size: 19px;
	color: #222;
}

/* 애니메이션 효과 */

.list_tab_con .tit,
.list_tab_con .desc,
.list_tab_con .lens_list {
    opacity: 0;
}

.list_box01.on .tit,
.list_box01.on .desc,
.list_box01.on .lens_list,
.list_box02.on .tit,
.list_box02.on .desc,
.list_box02.on .lens_list,
.list_box03.on .tit,
.list_box03.on .desc,
.list_box03.on .lens_list {
    animation: fadeInUp 0.5s ease-out forwards;
}

.list_box01.on .tit,
.list_box02.on .tit,
.list_box03.on .tit{
    animation-delay: 0s;
}

.list_box01.on .desc,
.list_box02.on .desc,
.list_box03.on .desc {
    animation-delay: 0.1s;
}

.list_box01.on .lens_list,
.list_box02.on .lens_list,
.list_box03.on .lens_list  {
    animation-delay: 0.2s;
}

@keyframes fadeInUp {
    0% {
        opacity: 0;
        transform: translateY(25px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}
/* m32 : sec06 */
/* --- m32 --- */

/* --- m33 --- */
.diff_lens_type_con{
	margin-top: 80px;

	display: flex;
	align-items: center;
	justify-content: center;
	gap: 40px;
}

.diff_lens_type{
	position: relative;
}

.diff_lens_type .diff_lens_img{
	width: 710px;
	border-radius: 50px;
	overflow: hidden;
	box-shadow: 0px 0px 25px rgba(68,149,253,0.1);
}

.diff_lens_type .diff_lens_img img{
	width: 100%;
}

.diff_lens_type .diff_lens_txt{
	position: absolute;
	top: 0;
	left: 0;

	box-shadow: 0px 0px 25px rgba(68,149,253,0.1);
}

.diff_lens_type .diff_lens_txt ul{
	width: 350px;
	padding: 47px 50px;
	border-radius: 50px;
	background: #fff;
}

.diff_lens_type .diff_lens_txt ul p{
	width: 250px;
	padding: 10px 0;
	font-size: 25px;
	color: #fff;
	font-weight: 500;
	border-radius: 360px;
	background: #BFBFBF;
	text-align: center;
}

.diff_lens_type .diff_lens_txt ul li{
	font-size: 21px;
	color: #222;
	line-height: 1.5;
	padding: 30px 0;
	text-align: center;
}

.diff_lens_type .diff_lens_txt ul li + li{
	border-top: 1px dashed #BBBBBB;
}

.diff_lens_type .diff_lens_txt ul li:last-child{
	padding-bottom: 0;
}

.diff_lens_type .diff_lens_txt ul p.on{
	background: linear-gradient(to right, #19365B, #194B89);
}

.diff_lens_type .diff_lens_txt ul li span{
	color: #4365A3;
	font-weight: 500;
}
/* --- m33 --- */

/* --- m34 --- */
/* m34 : sec02 */
.pre_op {
	display: flex;
	align-items: center;
	gap: 200px;
}
.pre_op .pre_line{
	width: 1px;
	height: 150px;
	background: #BBBBBB;
	margin: 40px 0;
}

.pre_op .pre_tit{
	font-size: 25px;
	font-weight: 500;
	color: #222;
}

.pre_op .pre_tit b{
	color: #4365A3;
	display: inline-block;
	position: relative;
}

.pre_op .pre_tit b::before{
	display: block;
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 6px;
	background: #4365A3;

	position: absolute;
	top: -6px;
	left: 6px;

}

.pre_op .pre_desc{
	font-size: 21px;
	line-height: 1.5;
	color: #444;
	margin-top: 20px;
}

.pre_check_con{
	width: 50%;
}

.pre_check_con ul li{
	width: 100%;
	height: auto;
	border-radius: 360px;
	background: #EEEEEE;
	padding: 30px 40px;
	cursor: pointer;
	transition: background 0.3s ease, padding 0.3s ease;
}

.pre_check_con ul li + li{
	margin-top: 20px;
}

.pre_check_con ul li .title{
	display: flex;
	align-items: center;
	gap: 10px;
}

.pre_check_con ul li .title .type{
	width: fit-content;
	font-size: 18px;
	color: #fff;
	padding: 7px 15px;
	letter-spacing: 0%;
	border-radius: 360px;
	background: #BBBBBB;
	transition: background 0.3s ease, color 0.3s ease;
}

.pre_check_con ul li .title p{
	font-size: 25px;
	color: #222222;
	transition: color 0.3s ease;
}

.pre_check_con ul li .txt_box {
    display: none;
}

.pre_check_con ul li .txt_box .tit{
	font-size: 25px;
	font-weight: 500;
	color: #fff;
	margin: 15px 0 20px 0;
}

.pre_check_con ul li .txt_box .disc{
	font-size: 21px;
	line-height: 1.5;
	color: rgba(255,255,255,0.8);
	font-weight: 300;
}

.pre_check_con ul li.on {
    background: linear-gradient(to right, #466294, #375284);
    padding: 35px 40px;
	border-radius: 35px;
}

.pre_check_con ul li.on .title .hidden{
	display: none;
}

.pre_check_con ul li.on .title .type {
    background: rgba(255,255,255,0.2);
    color: #fff;
}

/* m34 : sec02 */

/* m34 : sec05 */
.flex_list{
	margin-top: 60px;
}
.flex_list ul li{
	display: flex;
	align-items: center;
	gap: 10px;
}

.flex_list ul li + li{
	margin-top: 10px;
}

.flex_list ul li span{
	display: block;
	width: 24px;
	height: 24px;
	background: url('/img/sub/check_icon.png') no-repeat;
	background-size: contain;
}

.flex_list ul li p{
	font-size: 23px;
	color: #222222;
}
/* m34 : sec05 */
/* --- m34 --- */

/* --- m35 --- */
/* m35 : sec03 */
.prog_list_flex{
	display: flex;
	align-items: center;
	gap: 170px;
}

.prog_list_flex .sub_tit_wrap .desc{
	margin-top: 80px;
}

.prog_list_flex .prog_list{
	width: 50%;
}

.prog_list_flex .prog_list ul{
	gap: 100px;
}

.prog_list_flex .prog_list.blue ul li .circle_box{
	width: 220px;
	height: 220px;
}

.prog_list_flex .prog_list.blue ul li::after{
	width: 25%;
	right: -35%;
	top: 45%;
}

.prog_list.blue ul li .circle_box p.on{
	text-align: center;
}
/* m35 : sec03 */

/* m35 : sec04 */

.acodbox.on .txtbox{
	padding: 0;
}

.acodbox.on ul li{
	border: none;
	background: #EEEEEE;
}

.acodbox.on ul li.on{
	background: linear-gradient(to right, #466294, #375284);
	padding: 35px 40px;
}

.acodbox.on ul li .title p{
	width: fit-content;
    font-size: 18px;
    color: #fff;
    padding: 7px 15px;
	font-weight: 200;
    letter-spacing: 0%;
    border-radius: 360px;
    background: #BBBBBB;
    transition: background 0.3s ease, color 0.3s ease;
}

.acodbox.on ul li .title span{
	font-size: 25px;
    color: #222222;
	margin-left: 2.5rem;
	opacity: 1;
    transition: color 0.3s ease;
}

.acodbox.on ul li .txtbox .tit{
	font-size: 25px;
    font-weight: 500;
    color: #fff;
    margin: 15px 0 20px 0;
}

.acodbox.on ul li .txtbox .disc{
	font-size: 21px;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.8);
    font-weight: 200;
}

.acodbox.on ul li.on .title p{
	background: rgba(255,255,255,0.2);
}

.acodbox.on ul li.on .hidden{
	display: none;
}

.acodbox.on ul li.on .title{
	padding: 0;
}

/* m35 : sec04 */

/* m35 : sec05 */
.check_line{
	padding-top: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 45px;
}

.check_line ul .tit{
	width: 500px;
	padding: 10px;
	text-align: center;
	border-radius: 360px;
	background: #EEEEEE;
	font-size: 26px;
	color: #444;
}

.check_line ul.on .tit{
	background: #4365A3;
	color: #fff;
}

.check_line ul li{
	display: flex;
	align-items: center;
	gap: 10px;
	border-bottom: 1px solid #BBBBBB;
	padding: 30px 0 30px 95px;
	text-align: center;
}

.check_line ul:nth-of-type(1) li{
	width: 109%;
}

.check_line ul li:nth-of-type(1){
	padding-top: 50px;
}

.check_line ul li:last-child{
	border-bottom: none;
}


.check_line ul li span{
	display: block;
	width: 30px;
	height: 30px;
	background: url("/img/sub/exmark_icon.png") no-repeat;
	background-size: contain;
}

.check_line ul.on li span{
	display: block;
	width: 30px;
	height: 30px;
	background: url("/img/sub/check_icon.png") no-repeat;
	background-size: contain;
}

.check_line ul li p{
	font-size: 24px;
	color: #444;
}

.check_line ul.on li p{
	font-size: 26px;
	font-weight: 500;
	color: #222;
}
/* m35 : sec05 */

/* m35 : sec06 */
.ad_bn{
	padding: 100px;
}
.ad_bn .tit{
	width: fit-content;
	font-size: 30px;
	color: #fff;
	font-weight: 500;
	text-align: center;
	padding: 10px 80px;
	border: 1px solid rgba(255,255,255,0.5);
	background: linear-gradient(5deg, #3a719f, #000000, #3a719f);
	border-radius: 360px;
	margin: 0 auto;
}

.ad_bn .desc{
	margin-top: 35px;
	font-size: 26px;
	line-height: 1.5;
	color: #fff;
	font-weight: 200;
	text-align: center;
}
/* m35 : sec06 */
/* --- m35 --- */


/* --- m41 --- */

/* m41 : sec01 */

.scroll_row {
	width: 100%;
	max-width: 120rem;
	position: relative;
	border-radius: 5rem;
	overflow: hidden;
	margin: 5rem auto 0;
}

.scroll_row .imgbox {
	display: block;
	padding-top: 50rem;
	position: relative;
	overflow: hidden;
}

.scroll_row .imgbox div {
	display: block;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
}

.scroll_row .imgbox figure,
.scroll_row .imgbox img {
	height: 100%;
	max-width: none;
}

.scroll_row .imgbox .img_a {
	z-index: 1;
	opacity: 50%;
}

.scroll_row .dragbox {
	width: 70.9rem;
	position: absolute;
	bottom: 4rem;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	align-items: center;
	gap: 3rem;
	height: 5.8rem;
	padding: 1rem 4rem;
	z-index: 33;
	border-radius: 5rem;
	background-color: rgba(255, 255, 255, 0.9);
}

.scroll_row .dragbox .drag_control {
	position: relative;
	width: 38rem;
	height: 3rem;
	margin: 0 auto;
}

.scroll_row .dragbox .drag_control .handle {
	z-index: 1;
	position: absolute;
	width: 1px;
	height: 1px;
	left: 50%;
	top: 50%;
	margin-top: -1.6rem;

}

.scroll_row .dragbox .drag_control .handle::before {
	content: '';
	width: 3rem;
	height: 3rem;
	background: #fff;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 50%;
	top: 0;
	cursor: pointer;
	box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.07);
}

.scroll_row .dragbox .drag_control::after {
	content: '';
	width: 100%;
	height: 4px;
	position: absolute;
	top: 50%;
	left: 0;
	background: rgba(187, 187, 187, 0.7);
}

.scroll_row .dragbox .subject {
	font-size: 2.2rem;
	white-space: nowrap;
}

.deg_row .imgbox {
	display: flex;
	justify-content: center;
	margin: 5rem 0 7rem;
}

/* m41 : sec01 */

/* m41 : sec02 */
.de_row3 {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.de_row3 li {
	width: calc(33.3% - 10rem/3);
	min-height: 10rem;
	padding: 2rem;
	background: #fff;
	border-radius: 5rem;
	border: solid 1px var(--main-color);
	position: relative;
	z-index: 1;
	text-align: center;
	line-height: 1.5;
	font-size: 2rem;
}

.de_row3 li p span {
	color: var(--main-color);
}

.de_row3 li p b {
	font-weight: 600;
}

.de_row3 li+li::before {
	content: '';
	width: 5rem;
	height: 2px;
	position: absolute;
	top: 50%;
	left: -5rem;
	transform: translateY(-50%);
	z-index: -1;
	background: url('../img/sub/dot_line.png') no-repeat left center/auto 100%;
}

/* m41 : sec02 */

/* m41 : sec03 */

.step_row3 {
	display: flex;
	gap: 5rem;
	margin-top: 8rem;
}

.step_row3>li {
	width: calc(33.3% - 10rem/3);
}

.step_row3 .top {
	text-align: center;
	padding: 2.7rem 4rem 3.6rem;
	background-color: #fff;
	border-radius: 2rem;
	position: relative;
}

.step_row3 .top::after {
	content: '';
	width: 2rem;
	height: 6rem;
	background: url('../img/sub/circle_line20x60.png') no-repeat center center/cover;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
}

.step_row3 .tag {
	display: inline-block;
	width: 12rem;
	line-height: 3.5rem;
	text-align: center;
	font-size: 1.8rem;
	color: #fff;
	border-radius: 5rem;
	margin-bottom: 2.2rem;
}

.step_row3 li:nth-of-type(1) .tag {
	background-color: #7F9BCE;
}

.step_row3 li:nth-of-type(2) .tag {
	background-color: #4365A3;
}

.step_row3 li:nth-of-type(3) .tag {
	background-color: #304A7B;
}

.step_row3 ol {
	margin-top: 2.7rem;
}

.step_row3 ol li {
	font-size: 2rem;
	font-weight: 200;
	line-height: 1.4;
	padding-left: 3.2rem;
	text-align: left;
	background: url('../img/sub/ico_chk22x22.png') no-repeat left center/2.2rem;
}

.step_row3 ol li+li {
	margin-top: 1.1rem;
}

.step_row3 .bot {
	margin-top: 3rem;
}

/* m41 : sec03 */

/* m41 : sec04 */

.row5_list {
	display: flex;
	align-items: center;
	gap: 4rem;
	margin-top: 7rem;
}

.row5_list li {
	width: calc(20% - 16rem/5);
	text-align: center;
	font-size: 2.3rem;
}

.row5_list figcaption {
	margin-top: 2rem;
}

/* m41 : sec04 */

/* m41 : sec05 */

.step_row4 {
	display: flex;
	justify-content: space-between;
	margin-top: 11rem;
}

.step_row4 li {
	width: calc(25% - 8.1rem/4);
	text-align: center;
	transition: transform 0.34s linear;
}

.step_row4 li .step_ico {
	display: inline-block;
	width: 25rem;
	line-height: 6rem;
	border-radius: 5rem;
	background-color: #fff;
	border: solid 1px #DDD;
	position: relative;
	font-size: 2.2rem;
	color: var(--main-color);
	transition: all 0.34s linear;
}

.step_row4 li .step_ico::after {
	content: '';
	width: 1rem;
	height: 5rem;
	background: url('../img/sub/circle_line10x50.png') no-repeat center center/cover;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	transition: background 0.3s linear;
}

.step_row4 li .subject {
	font-size: 2.5rem;
	margin-top: 7.5rem;
	transition: color 0.3s linear;
}

.step_row4 li .disc {
	margin-top: 2rem;
	font-size: 2.1rem;
	font-weight: 200;
	line-height: 1.6;
}

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

.step_row4 li:hover .step_ico {
	color: #fff;
	background-color: var(--main-color);
	border-color: var(--main-color);
}

.step_row4 li:hover .step_ico::after {
	background-image: url('../img/sub/circle_line10x50_b.png');
}


.step_row4 li:hover .subject {
	color: var(--main-color);
	font-weight: 600;
}

.step_row4 li:hover .disc {
	font-weight: 400;
}

/* m41 : sec05 */

/* m41 : sec06 */

.con0401 .sec6 {
	padding: 8.1rem 0;
}

/* m41 : sec06 */

/* m41 : sec07 */

.clinic_slide_wr {
	margin-top: 8rem;
	margin-left: 28rem;
	overflow: hidden;
	cursor: none;
}

.clinic_slide_wr .clinic_slide {
	overflow: visible;
}

.clinic_slide .c_tem {
	display: flex;
	gap: 7rem;
}

.clinic_slide .txtbox {
	position: relative;
	flex: 1;
}

.clinic_slide .tag {
	display: inline-block;
	width: fit-content;
	padding: 2px 20px;
	line-height: 3.5rem;
	text-align: center;
	font-size: 1.8rem;
	color: var(--main-color);
	background: rgba(127, 155, 206, 0.2);
	border-radius: 5rem;
	margin-bottom: 2.5rem;
	letter-spacing: 0%;
	font-weight: 300;
}

.clinic_slide .subject {
	font-size: 2.8rem;
	font-weight: 600;
	margin-bottom: 1.2rem;
	color: #222222;
}

.clinic_slide dl {
	display: flex;
	align-items: center;
	font-size: 2.2rem;
	line-height: 1.4;
	margin-bottom: 5rem;
}

.clinic_slide dl dt {
	padding-left: 2.1rem;
	position: relative;
	color: #444444;
}

.clinic_slide dl dt::before {
	content: '';
	width: 1rem;
	height: 1rem;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	background-color: #7F9BCE;
	border-radius: 50%;
}

.clinic_slide dl dd {
	margin-left: 1rem;
	padding-left: 1.3rem;
	position: relative;
}

.clinic_slide dl dd b {
	font-weight: 500;
	color: var(--main-color);
}

.clinic_slide dl dd::before {
	content: '|';
	font-size: 2.2rem;
	color: #DDD;
	line-height: 1.4;
	position: absolute;
	left: 0;
	top: 0;
}

.clinic_slide .disc {
	font-size: 2.1rem;
	font-weight: 200;
	line-height: 1.6;
	color: #444444;
}

.clinic_slide .progress {
	margin-top: 9.5rem;
	display: flex;
	align-items: center;
	gap: 1.2rem;
	position: absolute;
	bottom: 0.3rem;
	left: 0;
}

.clinic_slide .progress p {
	font-size: 1.8rem;
	font-weight: 600;
}

.clinic_slide .progress .now {
	color: #555;
}

.clinic_slide .progress .total {
	color: #888;
}

.clinic_slide .progress .bar {
	width: 5rem;
	height: 0.2rem;
	position: relative;
	background-color: #DDD;
	overflow: hidden;
}

.clinic_slide .progress .thumb {
	height: 0.2rem;
	background: #555;
	position: absolute;
	top: 0;
	left: 0;
}

.clinic_slide .progress .thumb1 {
	width: 25%;
}

.clinic_slide .progress .thumb2 {
	width: 50%;
}

.clinic_slide .progress .thumb3 {
	width: 75%;
}

.clinic_slide .progress .thumb4 {
	width: 100%;
}

/* m41 : sec07 */

/* --- m42 --- */

/* m42 : sec02 */

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

.info_row2 {
	display: flex;
	gap: 5rem;
	padding: 6rem 7rem;
	border-radius: 5rem;
	background-color: #fff;
}

.info_row2 li {
	width: calc(50% - 2.5rem);
	text-align: center;
}

.info_row2 figcaption {
	display: inline-block;
	padding: 0 2.5rem;
	line-height: 4rem;
	font-size: 2.2rem;
	color: #fff;
	border-radius: 5rem;
	margin-bottom: 2.9rem;
	background-color: #BBB;
}

.info_row2 .on figcaption {
	background-color: var(--main-color);
}

.info_row2 .disc {
	margin-top: 2.5rem;
	line-height: 1.5;
	font-size: 2rem;
	font-weight: 200;
}

.info_row2 .disc b {
	font-weight: 500;
}

.zoom_row .info_row2 {
	position: relative;
}

.zoom_row .info_row2::before {
	content: '';
	width: 24.7rem;
	height: 6.7rem;
	background: url('../img/sub/magnif.png') no-repeat center center/cover;
	position: absolute;
	top: 20.6rem;
	left: -19.7rem;
	opacity: 0;
	transition: opacity 0.5s linear;
}

.zoom_row .info_row2 li {
	opacity: 0;
	transition: opacity 0.5s linear;
}

.zoom_row.aos-animate .info_row2 li {
	opacity: 1;
	transition-delay: 0.8s;
}

.zoom_row.aos-animate .info_row2 li.on {
	transition-delay: 1s;
}

.zoom_row.aos-animate .info_row2::before {
	opacity: 1;
	transition-delay: 0.5s;
}

/* m42 : sec02 */

/* m42 : sec03 */

.acod_wr {
	display: flex;
	margin-top: 7rem;
	justify-content: space-between;
}

.acod_wr .imgbox {
	width: 40%;
	border-radius: 50px;
	overflow: hidden;
}

.acod_wr .imgbox img{
	width: 100%;
}

.acod_wr .imgbox img:not(.on) {
	display: none;
}

.acod_wr .acodbox {
	width: 57.35%;
}

.acodbox ul li {
	background: #fff;
	border: solid 1px #EEE;
	border-radius: 3.5rem;
}

.acodbox ul li+li {
	margin-top: 2rem;
}

.acodbox .title {
	display: flex;
	align-items: center;
	font-size: 2.5rem;
	padding: 2rem 2.5rem;
}

.acodbox .title i {
	display: block;
	width: 4rem;
	height: 4rem;
	background: url('../img/sub/ico_up40x40.png') no-repeat center center/cover;
	margin-right: 3rem;
	transition: background 0.4s linear;
}

.acodbox .title span {
	font-size: 2.2rem;
	color: #fff;
	opacity: 0.5;
	margin-left: 0.5rem;
}

.acodbox ul li.on .title {
	color: #fff;
}

.acodbox ul li.on .title i {
	background-image: url('../img/sub/ico_down40x40.png');
}

.acodbox .txtbox {
	display: none;
	padding: 0 3rem 2rem 9.5rem;
}

.acodbox .txtbox .disc {
	font-size: 2.1rem;
	font-weight: 200;
	line-height: 1.5;
	color: #fff;
}

.acodbox .txtbox .tagbox {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-top: 2.5rem;
}

.acodbox .txtbox .tagbox span {
	font-size: 1.8rem;
	font-weight: 200;
	padding: 0 1.5rem;
	background: #fff;
	line-height: 3.2rem;
	white-space: nowrap;
	color: #444;
	border-radius: 0.8rem;
}

.acodbox .txtbox .tagbox.w50 {
	width: 60%;
}

.acodbox ul li.on {
	background-color: var(--main-color);
	color: #fff;
	padding-bottom: 2rem;
}

/* m42 : sec03 */

/* m42 : sec04 */

.hov_row3 {
	display: flex;
	margin-top: 12rem;
	gap: 5rem;
}

.hov_row3 li {
	width: calc(33.33% - 10rem/3);
	text-align: center;
	transition: transform 0.4s linear;
}

.hov_row3 li .img {
	position: relative;
	border-radius: 4rem;
}

.hov_row3 li .img::after {
	content: '';
	width: 1rem;
	height: 5rem;
	background: url('../img/sub/circle_line10x50_b.png') no-repeat center center/cover;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
}

.hov_row3 li .subject {
	font-size: 2.5rem;
	margin-top: 7rem;
	transition: color 0.3s linear;
}

.hov_row3 li .disc {
	margin-top: 1.5rem;
	font-size: 2.1rem;
	font-weight: 200;
	line-height: 1.6;
}

.hov_row3 li:hover {
	transform: translateY(-4rem);
}

.hov_row3 li:hover .img {
	box-shadow: 0 0 1.5rem rgba(51, 51, 51, 0.5);
}

.hov_row3 li:hover .subject {
	font-weight: 600;
	color: var(--main-color);
}

.hov_row3 li:hover .disc {
	font-weight: 400;
}

/* m42 : sec04 */
/* m42 */

/* m43 */
/* m43 : sec03 */

.pro_out{
	padding-top: 80px;
}

.pro_out ul{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 50px;
}

.pro_out ul li{
	display: flex;
	flex-direction: column;
	align-items: center;
}
.pro_out ul li .pro_out_img{
	width: 100%;
	height: auto;
}

.pro_out ul li .pro_out_img img{
	width: 100%;
}

.pro_out ul li .pro_out_img.on{
	position: relative;
}

.pro_out ul li .pro_out_img.on::before{
	display: block;
	content: "DANGER";
	width: 100px;
	height: 30px;
	line-height: 30px;
	letter-spacing: 0%;
	border-radius: 8px;
	background: #4365A3;
	color: #fff;
	font-size: 18px;
	text-align: center;
	position: absolute;
	top: -13px;
	left: 50%;
	transform: translateX(-50%);
	font-weight: 200;
}

.pro_out ul li .pro_out_img.on img{
	border: 3px solid #4365A3;
	border-radius: 40px;
}

.pro_out ul li .pro_out_img::after{
	content: "";
	display: block;
	width: 10px;
	height: 50px;
	background: url("/img/sub/circle_line10x50_b.png") no-repeat;
	background-size: contain;

	position: relative;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}

.pro_out ul li .pro_out_title{
	display: flex;
	align-items: center;
	margin: 20px 0 15px 0;
}

.pro_out ul li .pro_out_title .type{
	font-size: 25px;
	color: #4365A3;
}

.pro_out ul li .pro_out_title .type::after{
	display: inline-block;
	content: "";
	width: 2px;
	height: 19px;
	background: #BBBBBB;
	margin: 0 10px;
}

.pro_out ul li .pro_out_title .name{
	font-size: 25px;
	font-weight: 500;
	color: #222222;
}

.pro_out ul li .desc{
	font-size: 21px;
	color: #444444;
	line-height: 1.5;
	text-align: center;
}
/* m43 : sec03 */

/* m43 : sec04 */
.list_con .list_wrap ul li .bold{
	font-size: 23px;
	font-weight: 500;
}

.list_con .list_wrap ul li .bold::after{
	content: "";
	display: inline-block;
	width: 2px;
	height: 18px;
	background: #BBBBBB;
	margin-left: 13px;
}

.list_con .list_wrap ul li h6{
	font-size: 23px;
	font-weight: 400;
}
/* m43 : sec04 */

/* m43 : sec06 */
.con0403 .clinic_slide .progress .thumb1 {
	width: 35%;
}

.con0403 .clinic_slide .progress .thumb2 {
	width: 65%;
}

.con0403 .clinic_slide .progress .thumb3 {
	width: 100%;
}
/* m43 : sec06 */

/* m43 */

/* m44 */
/* m44 : sec02 */
.con0404 .sharp_list ul li{
	flex-direction: column;
	gap: 7px;
}
/* m44 : sec02 */

/* m44 : sec03 */
.con0404 .type_tab_con .flex_wrap .type_txt_box .type{
	border: none;
	font-weight: 500;
	color: #222;
	padding: 0;
}

.con0404 .type_tab_con .flex_wrap .type_txt_box ul{
	margin-top: 38px;
}
/* m44 : sec03 */


/* m44 : sec06 */
.con0404 .clinic_slide .progress .thumb1 {
	width: 35%;
}

.con0404 .clinic_slide .progress .thumb2 {
	width: 65%;
}

.con0404 .clinic_slide .progress .thumb3 {
	width: 100%;
}
/* m44 : sec06 */
/* m44 */

/* m45 */

/* m45 : sec03 */
.con0405 .type_tab_con .flex_wrap .type_txt_box .type{
	border: none;
	font-weight: 500;
	color: #222;
	padding: 0;
}

.con0405 .type_tab_con .flex_wrap .type_txt_box ul{
	margin-top: 38px;
}
/* m45 : sec03 */

/* m45 : sec06 */
.con0405 .clinic_slide .progress .thumb1 {
	width: 50%;
}

.con0405 .clinic_slide .progress .thumb2 {
	width: 100%;
}
/* m45 : sec06 */
/* m45 */

/* m51 */
/* m51 : sec02 */
.glau_img{
	width: 750px;
	margin: 0 auto;
}

.glau_img img{
	width: 100%;
}

.glau_list{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 50px;
	margin-top: 30px;
}

.glau_list li{
	width: 420px;
	padding: 30px 0;
	border: 1px solid #fff;
	border-radius: 360px;

	display: flex;
	align-items: center;
	justify-content: center;
}

.glau_list li p{
	font-size: 20px;
	color: #fff;
	font-weight: 200;
}

.glau_list li p span{
	font-weight: 500;
	color: #ABD2F3;
}
/* m51 : sec02 */

/* m51 : sec03 */
.con0501 .type_tab_con .flex_wrap .type_txt_box .type{
	border: none;
	font-weight: 500;
	color: #222;
	padding: 0;
}

.con0501 .type_tab_con .flex_wrap .type_txt_box ul{
	margin-top: 38px;
}
/* m51 : sec03 */

/* m51 : sec06 */
.glau_type_con {
	padding-top: 80px;
}

.glau_type_con .glau_type_img{
	width: 100%;
	max-width: 435px;
	border-radius: 20px;
	overflow: hidden;
}

.glau_type_con .glau_type_img img{
	width: 100%;
}

.glau_type_con .glau_type_txt .title{
	font-size: 28px;
	font-weight: 500;
	margin: 40px 0 20px 0;
}

.glau_type_con .glau_type_txt .desc{
	font-size: 21px;
	font-weight: 200;
	color: #444444;
	line-height: 1.5;
}

.glau_type_con .special {
	display: flex;
	align-items: baseline;
	margin-top: 25px;
}

.glau_type_con .special .type{
	display: flex;
	align-items: center;
	gap: 5px;
}

.glau_type_con .special .type::after{
	content: "";
	display: block;
	width: 2px;
	height: 18px;
	background: #DDDDDD;
	margin: 0 10px;
}

.glau_type_con .special .type span{
	display: inline-block;
	width: 10px;
	height: 10px;
	border-radius: 10px;
	background: #7F9BCE;
}

.glau_type_con .special .type p{
	font-size: 22px;
	font-weight: 500;
}

.glau_type_con .special .type_desc{
	font-size: 22px;
	color: #4365A3;
	line-height: 1.5;
	font-weight: 300;
}

.gl-swiper-scrollbar{
	height: 1px;
	margin-top: 70px;
	background: rgba(0,0,0,0.2);
}

.gl-swiper-scrollbar .swiper-scrollbar-drag{
	background: #4365A3;
}
/* m51 : sec06 */
/* m51 */

/* m52 */
/* m52 : sec05 */
.con0502 .clinic_slide .progress .thumb1 {
	width: 35%;
}

.con0502 .clinic_slide .progress .thumb2 {
	width: 65%;
}

.con0502 .clinic_slide .progress .thumb3 {
	width: 100%;
}
/* m52 : sec05 */
/* m52 */

/* m53 */
/* m53 : sec03 */
.custom_con ul{
	display: flex;
	align-items: center;
	gap: 50px;
	align-items: center;
	justify-content: center;
	padding-top: 80px;
}
.custom_con ul li{
	width: 100%;
	max-width: 420px;
	border-radius: 50px;
	border: 1px solid #fff;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 30px;

	padding: 80px 0;
}

.custom_con ul li .num{
	width: 47px;
	height: 47px;
	border-radius: 47px;
	border: 1px solid #fff;
	font-size: 20px;
	color: #fff;
	font-weight: 500;
	text-align: center;
	line-height: 47px;
}

.custom_con ul li .desc{
	font-size: 20px;
	line-height: 1.5;
	font-weight: 200;
	color: #fff;
	text-align: center;
}

.custom_con ul li .desc span{
	font-weight: 500;
	color: #ABD2F3;
}
/* m53 : sec03 */

/* m53 : sec04 */
.clinic_slide .disc span{
	font-weight: 500;
	color: #4365A3;
}
.con0503 .clinic_slide dl{
	margin-top: 2rem;
	flex-direction: column;
	align-items: flex-start;
}

.con0503 .clinic_slide dl dt + dt{
	margin-top: 12px;
}

.con0503 .clinic_slide .progress .thumb1 {
	width: 50%;
}

.con0503 .clinic_slide .progress .thumb2 {
	width: 100%;
}
/* m53 : sec04 */

/* m53 : sec06 */
.con0503 .type_tab_con .flex_wrap .type_txt_box .type{
	border: none;
	font-weight: 500;
	color: #222;
	padding: 0;
}

.con0503 .type_tab_con .flex_wrap .type_txt_box ul{
	margin-top: 38px;
}
/* m53 : sec06 */
/* m53 */

/* m61 */
/* m61 : sec04 */
.ch_step_con {
	padding-top: 80px;
}

.ch_step_list{
	padding-top: 25px;
}

.ch_step_list ul{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
}

.ch_step_list ul li{
	width: 188px;
	padding: 38px 0;
	border-radius: 30px;
	background: rgba(255,255,255,0.3);

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 20px;

	transition: all 0.5s ease;
	cursor: pointer;
}

.ch_step_list ul li .type{
	width: 90px;
	padding: 6px;
	border-radius: 360px;
	background: #fff;
	font-size: 19px;
	color: #222;
	text-align: center;
}

.ch_step_list ul li .desc{
	font-size: 19px;
	color: #fff;
}

.ch_step_list ul li:hover{
	background: #fff;
}

.ch_step_list ul li:hover .type{
	background: #4365A3;
	color: #fff;
}

.ch_step_list ul li:hover .desc{
	color: #444444;
}
/* m61 : sec04 */

/* m61 : sec05 */

.re_scre_con{
	display: flex;
	align-items: center;
	gap: 88px;

	padding-top: 80px;
}

.re_scre_con .line{
	display: block;
	width: 1px;
	height: 890px;
	background: #4365A3;
}

.re_scre_con .re_scre_flex ul{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 30px;
}

.re_scre_con .re_scre_flex ul li{
	display: flex;
	align-items: center;
	gap: 36px;
	
}

.re_scre_con .re_scre_flex ul li .re_scre_img{
	width: 100%;
	max-width: 320px;
	border-radius: 50px;
	box-shadow: 4px 4px 5px rgba(0,0,0,0.05);

	position: relative;
}

.re_scre_con .re_scre_flex ul li .re_scre_img::before{
	content: "";
	display: block;
	width: 14px;
	height: 14px;
	border-radius: 14px;
	background: #4365A3;

	position: absolute;
	top: 50%;
	left: -94px;
	transform: translateY(-50%);
}

.re_scre_con .re_scre_flex ul li .re_scre_img img{
	width: 100%;
}

.re_scre_con .re_scre_flex ul li .re_secre_list {
	width: 910px;
	padding: 60px;
	border-radius: 50px;
	background: rgba(240,240,240,0.5);
	box-shadow: 4px 4px 5px rgba(0,0,0,0.05);

	display: flex;
	align-items: center;
	gap: 70px;
}

.re_scre_con .re_scre_flex ul li .re_secre_list .type{
	width: fit-content;
	padding: 5px 20px;
	border-radius: 360px;
	font-size: 24px;
	color: #fff;
	background: #222222;
	text-align: center;
}

.re_scre_con .re_scre_flex ul li .re_secre_list .type.blue{
	background: #4365A3;
}

.re_scre_con .re_scre_flex ul li .re_secre_list .type.blue02{
	background: #ABD2F3;
}

.re_scre_con .re_scre_flex ul li .re_secre_list .txt_box{
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.re_scre_con .re_scre_flex ul li .re_secre_list .txt_box .tit_box .tit{
	font-size: 24px;
	font-weight: 500;
	color: #444444;
}

.re_scre_con .re_scre_flex ul li .re_secre_list .txt_box .tit_box span{
	display: block;
	width: 2px;
	height: 19px;
	background: #C7C7C7;
	margin: 0 10px;
}

.re_scre_con .re_scre_flex ul li .re_secre_list .txt_box .tit_box{
	display: flex;
	align-items: center;
}

.re_scre_con .re_scre_flex ul li .re_secre_list .txt_box .tit_box .sub_tit{
	font-size: 19px;
	font-weight: 200;
	color: #444444;
}

.re_scre_con .re_scre_flex ul li .re_secre_list .txt_box .desc{
	font-size: 19px;
	font-weight: 200;
	color: #444444;
}
/* m61 : sec05 */
/* m61 */

/* m62 */
/* m62 : sec03 */
.danger_up{
	padding-top: 80px;
}

.danger_up .danger_type{
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: 28px;
}
.danger_up .danger_type .box{
	width: 360px;
	padding: 10px;
	background: #EEEEEE;
	border-radius: 360px;
	font-size: 26px;
	color: #444444;
	font-weight: 500;
	text-align: center;
}

.danger_up .danger_type .box.on01{
	background: #ABD2F3;
}

.danger_up .danger_type .box.on02{
	background: #4365A3;
	color: #fff;
}

.danger_list{
	padding-top: 40px;
}

.danger_list ul li {
	display: flex;
	align-items: center;
	gap: 80px;
	text-align: center;
	padding: 20px 0;
	border-bottom: 1px solid #BBBBBB;
}

.danger_list ul li .tit{
	width: 13%;
	text-align: left;
	font-size: 26px;
	color: #222;
	font-weight: 500;
}

.danger_list ul li .figure01{
	width: 360px;
	font-size: 24px;
	color: #888888;
}

.danger_list ul li .figure02{
	width: 360px;
	font-size: 24px;
	color: #444444;
}

.danger_list ul li .figure03{
	width: 360px;
	font-size: 26px;
	color: #4365A3;
	font-weight: 600;
}
/* m62 : sec03 */

/* m62 : sec11 */
.con0602 .type_tab_con .flex_wrap .type_txt_box .type{
	padding: 0;
	color: #222222;
	background: transparent;
	border: none;
}
/* m62 : sec11 */
/* m62 */

/* m63 */
/* m63 : sec02 */
.dream_merit{
	padding-top: 80px;
}
.dream_merit ul {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 80px;
}
.dream_merit ul li{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-self: center
}

.dream_merit ul li .dream_img{
	width: 100%;
	border-radius: 50px;
	overflow: hidden;
}

.dream_merit ul li .dream_img img{
	width: 100%;
}

.dream_merit ul li .point{
	width: fit-content;
	font-size: 19px;
	color: #222;
	border-radius: 360px;
	background: #fff;
	padding: 7px 17px;
	text-align: center;
	margin: 30px 10px;
}

.dream_merit ul li .tit{
	font-size: 30px;
	color: #fff;
	font-weight: 500;
}

.dream_merit ul li .tit span{
	color: #ABD2F3;
}

.dream_merit ul li .desc{
	font-size: 20px;
	color: #fff;
	line-height: 1.5;
	text-align: center;
	margin-top: 15px;
}
/* m63 : sec02 */

/* m63 : sec04 */
.pro_graph{
	padding-top: 80px;
}

.pro_graph .tit_wrap{
	background: #F7F7F7;
	border-top: 1px solid #4365A3;

	display: flex;
	align-items: center;
}

.pro_graph .tit_wrap p{
	width: calc(100% / 4);
	font-size: 26px;
	font-weight: 500;
	color: #222;
	text-align: center;
	padding: 15px 0;
}

.pro_graph .desc_wrap{
	border-bottom: 1px solid #D9D9D9;

	display: flex;
	align-items: center;
}

.pro_graph .desc_wrap p{
	width: calc(100% / 4);
	font-size: 24px;
	color: #888888;
	text-align: center;
	padding: 15px 0;
}
/* m63 : sec04 */

/* m63 : sec05 */

.dream_pro{
	padding-top: 80px;
}

.dream_pro ul{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 80px;
}

.dream_pro ul li{
	display: flex;
	flex-direction: column;
	gap: 26px;
	justify-content: center;
	cursor: pointer;
	transition: all 0.5s ease-in-out;
}

.dream_pro ul li .dream_pro_img{
	width: 400px;
	border-radius: 50px;
	border: 1px solid #DDDDDD;
	overflow: hidden;
}

.dream_pro ul li .dream_pro_name{
	width: 400px;
	padding: 5px 0;
	text-align: center;
	font-size: 26px;
	color: #222222;
	border: 1px solid #DDDDDD;
	border-radius: 360px;
	background: #fff;
}

.dream_pro ul li:hover .dream_pro_img{
	border: 1px solid #4365A3;
}

.dream_pro ul li:hover .dream_pro_name{
	background: #4365A3;
	color: #fff;
}
/* m63 : sec05 */
/* m63 */

/* m64 */
/* m64 : sec02 */
.con0604 .dream_merit ul{
	gap: 320px;
}
/* m64 : sec02 */

/* m64 : sec04 */

.flex_list_con{
	padding-top: 80px;
}

.flex_txt_con .tit_con {
	display: flex;
	align-items: center;
	gap: 15px;
}

.flex_txt_con .tit_con .type{
	width: fit-content;
	padding: 5px 25px;
	text-align: center;
	border-radius: 50%;
	background: #444444;
	font-size: 20px;
	color: #fff;
	font-weight: 500;
}

.flex_txt_con .tit_con .title{
	font-size: 32px;
	font-weight: 600;
	color: #333;
	letter-spacing: -2%;
}

.flex_txt_con .tit_con .title span{
	font-size: 20px;
	color: #888;
	margin-left: 4px;
	font-weight: 300;
}

.flex_txt_con .desc{
	font-size: 20px;
	margin-top: 20px;
}

.flex_txt_con .flex_list{
	display: flex;
	align-items: center;
	gap: 50px;
}

.flex_txt_con .flex_list .percent{
	width: 178px;
	padding: 20px;
	border-radius: 150px;
	background: #F7F7F7;
	text-align: center;
}

.flex_txt_con .flex_list .percent p{
	font-size: 32px;
	color: #4365A3;
	line-height: 0.9;
}

.flex_txt_con .flex_list .percent p span{
	font-size: 60px;
	color: #4365A3;
	font-weight: 600;
}

.flex_txt_con .flex_list .percent b{
	font-size: 20px;
	font-weight: 400;
	color: #333;
}

.flex_txt_con .flex_list .percent.on{
	background: #4365A3;
}

.flex_txt_con .flex_list .percent.on p,
.flex_txt_con .flex_list .percent.on p span,
.flex_txt_con .flex_list .percent.on b{
	color: #fff;
}
/* m64 : sec04 */

/* m64 : sec05 */
.mysite_merit{
	padding-top: 80px;
}
.mysite_merit ul {
	display: flex;
	align-items: center;
	justify-content: center;
}
.mysite_merit ul li{
	width: calc(100%/4);
	padding: 38px;
	border-radius: 50px;
	border: 1px solid #DADADA;

	display: flex;
	flex-direction: column;
	gap: 90px;

	transition: all 0.3s ease;
	cursor: pointer;

}

.mysite_merit ul li .icon{
	width: 70px;
	height: 70px;
	background-size: contain;
	margin: 0 0 0 190px;
	transition: all 0.3s ease;
}

.mysite_merit ul li .txt_box .type{
	width: fit-content;
	padding: 5px 20px;
	border-radius: 50%;
	background: #4365A3;
	color: #fff;
	font-size: 18px;
	text-align: center;
	transition: all 0.3s ease;
}

.mysite_merit ul li .txt_box .title{
	font-size: 30px;
	font-weight: 500;
	color: #444444;
	margin: 10px 0  15px 0;
	transition: all 0.3s ease;
}

.mysite_merit ul li .txt_box .desc{
	font-size: 20px;
	color: #444444;
	line-height: 1.5;
	transition: all 0.3s ease;
}

.mysite_merit ul li:hover{
	background: linear-gradient(to right, #1D3E67, #2668BC);
}

.mysite_merit ul li:hover .txt_box .type{
	background: #fff;
	color: #4365A3;
}

.mysite_merit ul li:hover .txt_box .title,
.mysite_merit ul li:hover .txt_box .desc{
	color: #fff;
}

.mysite_merit ul li .icon.ico01{
	background: url('/img/sub/m64_sec05_icon01.png') no-repeat;
}

.mysite_merit ul li .icon.ico02{
	background: url('/img/sub/m64_sec05_icon02.png') no-repeat;
}

.mysite_merit ul li .icon.ico03{
	background: url('/img/sub/m64_sec05_icon03.png') no-repeat;
}

.mysite_merit ul li .icon.ico04{
	background: url('/img/sub/m64_sec05_icon04.png') no-repeat;
}

.mysite_merit ul li:hover .icon.ico01{
	background: url('/img/sub/m64_sec05_icon01_wh.png') no-repeat;
}

.mysite_merit ul li:hover .icon.ico02{
	background: url('/img/sub/m64_sec05_icon02_wh.png') no-repeat;
}

.mysite_merit ul li:hover .icon.ico03{
	background: url('/img/sub/m64_sec05_icon03_wh.png') no-repeat;
}

.mysite_merit ul li:hover .icon.ico04{
	background: url('/img/sub/m64_sec05_icon04_wh.png') no-repeat;
}
/* m64 : sec05 */
/* m64 */

/* m65 */
/* m65 : sec03 */
.eye_sight {
	padding-top: 80px;
}

.eye_sight ul li{
	display: flex;
	align-items: center;
	gap: 70px;
}

.eye_sight ul li + li{
	margin-top: 10px;
}

.eye_sight ul li .type{
	width: 9%;
	font-size: 24px;
	font-weight: 500;
	color: #222222;	
}

.eye_sight ul li .type.on{
	color: #4365A3;
}

.eye_sight ul li .type_img{
	width: 120px;
}

.eye_sight ul li .type_img img{
	width: 100%;
}

.eye_sight ul li .type_shape_con{
	width: 965px;
	height: 93px;
	border-radius: 360px;
	background: #EEEEEE;

	display: flex;
	align-items: center;
	gap: 16px;
}

.eye_sight ul li .type_shape_con .type_shape{
	width: 745px;
	height: 72px;
	border-radius: 360px;
	background: #fff;
}

.eye_sight ul li .type_shape_con .type_shape{
	display: flex;
	align-items: center;
	margin: 0 14px;
}

.eye_sight ul li .type_shape_con .type_shape .vision{
	font-size: 24px;
	font-weight: 500;
	color: #444444;
	padding: 40px;
}

.eye_sight ul li .type_shape_con .type_shape span{
	display: block;
	width: 1px;
	height: 50px;
	background: #D9D9D9;
}

.eye_sight ul li .type_shape_con .type_shape .shape{
	width: 460px;
	height: 61px;
	margin: 0 auto;
}

.eye_sight ul li .type_shape_con .type_shape .shape img{
	width: 100%;
}

.eye_sight ul li .type_shape_con p{
	font-size: 24px;
	color: #222222;
	font-weight: 600;
}

.eye_sight_desc{
	width: 100%;
	border: 4px solid #4365A3;
	padding: 52px;
	text-align: center;
	margin-top: 75px;
}

.eye_sight_desc .desc_em{
	font-size: 40px;
	font-weight: 200;
	margin-bottom: 20px;
}

.eye_sight_desc .desc_em span{
	font-weight: 600;
	color: #4365A3;
}

.eye_sight_desc .desc{
	font-size: 21px;
	font-weight: 200;
	color: #444444;
	line-height: 1.5;
}

.eye_sight_desc .desc span{
	font-weight: 500;
	color: #222;
}
/* m65 : sec03 */
/* m65 */

/* m71 */
/* m71 : sec02 */
.diff_cure{
	padding-top: 80px;
}

.diff_cure ul{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 35px;
}
.diff_cure ul li{
	width: calc(100%/3);
	border-radius: 50px;
	background: #fff;
	padding: 60px 0;

	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 50px;
}

.diff_cure ul li .icon{
	width: 186px;
	height: 186px;
	object-fit: contain;
}

.diff_cure ul li .txt_con {
	text-align: center;
}

.diff_cure ul li .txt_con .type{
	width: fit-content;
	font-size: 19px;
	color: #fff;
	text-align: center;
	padding: 8px 20px;
	text-align: center;
	border-radius: 360px;
	background: #4365A3;
	margin: 0 auto;
}

.diff_cure ul li .txt_con .tit{
	font-size: 30px;
	color: #4365A3;
	margin: 14px 0;
	font-weight: 600;
}

.diff_cure ul li .txt_con .desc{
	font-size: 20px;
	line-height: 1.5;
	color: #444444;
}

.diff_cure ul li .txt_con .desc span{
	font-weight: 600;
	color: #4365A3;
}
/* m71 : sec02 */
/* m71 */

/* m72 */
/* m72 : sec04 */
.con0702 .proce_list ul{
	gap: 50px;
}
.con0702 .proce_list ul li .proce_img{
	max-width: 420px;
}

.con0702 .proce_list ul li .proce_txt{
	width: 420px;
}
/* m72 : sec04 */

/* m72 : sec05 */
.con0702 .custom_con ul li .num{
	width: 100%;
	border: none;
	font-size: 26px;
	font-weight: 600;
}

.con0702 .custom_con ul li{
	gap: 0;
	padding: 40px 0;
}
/* m72 : sec05 */
/* m72 */

/* m73 */
/* m73 : sec02 */
.con0703 .infobox{
	display: flex;
	flex-direction: column;
	align-items: center;
    gap: 5rem;
    padding: 6rem 7rem;
    border-radius: 5rem;
    background-color: #fff;
}

.con0703 .infobox .info_row2{
	display: flex;
	padding: 0;
	border-radius: 0;
	background-color: transparent;
}

.con0703 .infobox .disc{
	font-size: 20px;
	line-height: 1.5;
}

.con0703 .infobox .disc b{
	font-weight: 500;
}

.con0703 .zoom_row .info_row2::before{
	top: 15.6rem;
	left: -31.7rem;
}
/* m73 : sec02 */

/* m73 : sec03 */
.con0703 .type_tab_con .flex_wrap .type_txt_box .type{
	border: none;
	font-weight: 500;
	color: #222;
	padding: 0;
}

.con0703 .type_tab_con .flex_wrap .type_txt_box ul{
	margin-top: 38px;
}
/* m73 : sec03 */
/* m73 */

/* m82 : 비급여 항목 */
.sound_only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* 테이블 레이아웃 */
.cert_table_wrap {
	width: 100%;
	margin: 0 auto;
	padding-top: 6rem;
}

.cert_table_wrap .table_title {
	font-size: 2.9rem;
	font-weight: 500;
	color: #222222;
	margin-bottom: 2rem;
	padding-top: 6rem;
}

.cert_table_wrap .table_title:nth-of-type(1){
	border-top: 1px solid #CDCDCD;
}

.cert_table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 1.5rem;
	color: #333;
}

/* 헤더 배경색 설정 */
.cert_table thead th {
	padding: 1.3rem 1.5rem;
	font-weight: 500;
	text-align: center;
	border-right: 0.1rem solid #BBBBBB;
	font-size: 1.7rem;
}

.cert_table thead th.bg_dark {
	background-color: #4365A3;
	color: #ffffff;
}

.cert_table thead th.bg_gray {
	background: rgba(67,101,163,0.3);
	color: #4365A3;
}

.cert_table thead th.bg_light {
	background-color: #e2e2e2;
	color: #333333;
	vertical-align: middle;
}

/* 본문 스타일링 */
.cert_table tbody tr:hover{
	background: rgba(67,101,163,0.1);
}

.cert_table tbody td {
	padding: 1.2rem 1.8rem;
	border-left: 0.1rem solid #BBBBBB;
	border-right: 0.1rem solid #BBBBBB;
	border-bottom: 0.1rem solid #BBBBBB;
	vertical-align: middle;

	font-size: 1.6rem;
	color: #222;
	font-weight: 300;
}

.cert_table .text_center {
	text-align: center;
}
/* m82 : 비급여 항목 */

/* 온라인 예약 */
/* m92 : sec01 */
.reserve_box{
	width: 100%;
	height: auto;
	background: url('/img/sub/reserve_bg.jpg') no-repeat;
	background-size: cover;
	padding: 90px 80px;
	border-radius: 50px;
	overflow: hidden;
	margin-top: 60px;
}

.reserve_box .tit{
	font-size: 40px;
	font-weight: 500;
	color: #fff;
	margin-bottom: 40px;
}

.reserve_box .reserve_flex{
	display: flex;
	gap: 10px;
}

.reserve_box .reserve_form {
    width: 100%;
    max-width: 550px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.reserve_box .reserve_form .form_row {
    display: flex;
    gap: 12px;
    width: 100%;
}

/* input, select 공통 스타일 */
.frm_input,
.frm_select {
    width: 100%;
    height: 50px;
    padding: 0 16px;
    font-size: 15px;
	font-weight: 300;
    color: #333;
    background-color: #ffffff;
    border: 1px solid #ffffff;
    border-radius: 12px; /* 둥근 테두리 */
    box-sizing: border-box;
    outline: none;
	margin: 10px 0 0 ;
}

/* input placeholder 색상 */
.frm_input::placeholder {
    color: #888;
}

/* select 전용 스타일 (기본 화살표 커스텀) */
.frm_select {
    color: #888; /* 기본 선택 안내 문구 색상 */
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    
    background-image: url("/img/sub/dropdown_20x20.png");
    background-repeat: no-repeat;
    background-position: right 16px center;
    background-size: 20px;
}

.frm_select:valid {
    color: #555555;
}

.agree_box {
    display: flex;
    flex-direction: column;
    gap: 12px;
	margin-top: 50px;
}

/* 동의 항목 라벨 */
.agree_item {
    display: inline-flex;
    align-items: center;
    cursor: pointer;
    user-select: none;

}

/* 기본 체크박스 숨김 */
.agree_item input[type="checkbox"] {
    display: none;
}

/* 커스텀 체크박스 사각형 */
.chk_ico {
    width: 20px;
    height: 20px;
    border: 2px solid #fff;
    border-radius: 4px; 
    margin-right: 10px;
    position: relative;
    box-sizing: border-box;
    transition: all 0.2s ease;
    background-color: transparent;
}

/* 체크 안 됐을 때 체크 표시(SVG/체크모양) 설정 */
.chk_ico::after {
    content: '';
    position: absolute;
    left: 5px;
    top: 2px;
    width: 6px;
    height: 10px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    opacity: 0;
    transition: opacity 0.2s ease;
}

/* ★ 체크되었을 때 (Checked) 스타일 */
.agree_item input[type="checkbox"]:checked + .chk_ico {
    background-color: #5278BF;
    border-color: #5278BF;
}

.agree_item input[type="checkbox"]:checked + .chk_ico::after {
    opacity: 1;
}

/* 텍스트 스타일 */
.agree_item .txt {
    font-size: 18px;
    color: #ffffff;
    line-height: 1.5;
}

.agree_item .btn_more {
    color: #ffffff;
    text-decoration: underline;
    margin-left: 4px;
    font-size: 18px;
}
/* m92 : sec01 */

/* m92 : sec02 */

.reserve_right_con{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-top: 150px;
}

.reserve_right ul {
	display: flex;
	align-items: center;
	gap: 20px;
}

.reserve_right ul li{
	width: 260px;
	border-radius: 30px;
	background: #F7F7F7;

	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 30px;
	padding: 35px 0;
}

.reserve_right ul li .tit{
	font-size: 26px;
	color: #222;
	font-weight: 500;
}

.reserve_right ul li .icon{
	display: block;
	width: 70px;
	height: 70px;
	background-size: contain;
}

.reserve_right ul li .icon.kakao{
	background: url('/img/sub/reserve_kakao_icon.png') no-repeat;
}

.reserve_right ul li .icon.naver{
	background: url('/img/sub/reserve_naver_icon.png') no-repeat;
}

.reserve_right ul li .btn{
	width: fit-content;
	border: 1px solid #222;
	border-radius: 360px;

	display: flex;
	align-items: center;
	gap: 10px;
	padding: 7px 20px;

	position: relative;
	overflow: hidden;
	z-index: 1;
	cursor: pointer;
	transition: border-color 0.4s ease;
}

.reserve_right ul li .btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background-color: #222; 
    z-index: -1;
    transition: width 0.4s ease;
}

.reserve_right ul li .btn p{
	font-size: 20px;
	font-weight: 500;
	color: #222;
	transition: color 0.4s ease;
}

.reserve_right ul li .btn span{
	display: block;
	width: 17px;
	height: 14px;
	background: url('/img/sub/arrow_btn.png') no-repeat;
	background-size: contain;
	transition: filter 0.4s ease;
}

.reserve_right ul li .btn:hover::before {
    width: 100%;
}

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

.reserve_right ul li .btn:hover span {
    filter: brightness(0) invert(1);
}
/* m92 : sec02 */

/* m92 : view_details (popup) */
.view_details_con{
	position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 999;
    
    display: none;
    align-items: center;
    justify-content: center;
}

.view_details_con.active {
    display: flex;
}

.view_details_con .view_details_bg{
	width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1;

	pointer-events: auto;
}

.view_details_con .view_details{
	width: 100%;
	max-width: 90rem;
	height: 59rem;
	padding: 5rem;
	border-radius: 20px;
	background: #fff;

	position: relative;
	z-index: 2;

	display: flex;
    flex-direction: column;
}

.view_details_con .view_details .tit_wrap{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-shrink: 0;

	padding-bottom: 2rem;
	border-bottom: 1px solid #222;
}

.view_details_con .view_details .tit_wrap p{
	font-size: 26px;
	color: #222;
	font-weight: 500;
}

.view_details_con .view_details .tit_wrap span{
	font-size: 30px;
	cursor: pointer;
}

.view_details_con .view_details .privacy_desc{
	font-size: 18px;
    line-height: 1.5;
    margin-top: 3rem;
	padding: 0 3rem 0 0;

    flex: 1; 
    min-height: 0; 
    overflow-y: scroll !important; 

    pointer-events: auto;
}

body.no_scroll {
    overflow: hidden !important;
}

.view_details_con .view_details .privacy_desc::-webkit-scrollbar {
    width: 6px;
}

/* 2. 스크롤바 배경 (트랙) */
.view_details_con .view_details .privacy_desc::-webkit-scrollbar-track {
    background: #f1f1f1;
    border-radius: 10px;
}

/* 3. 움직이는 스크롤바 막대 (막대기) */
.view_details_con .view_details .privacy_desc::-webkit-scrollbar-thumb {
    background: #222;
    border-radius: 10px;
}
/* m92 : view_details (popup) */

/* 온라인 예약 */

/* 회원가입 */

.join_wrap .join_btn{
	padding: 80px 0;
	display: flex;
	justify-content: center;
}

.join_wrap .join_btn ul{
	width: 900px;
	display: flex;
	align-items: center;
	background: #EEEEEE;
	border-radius: 360px;
}

.join_wrap .join_btn ul li{
	width: 450px;
	font-size: 22px;
	color: #888;
	padding: 22px;
	text-align: center;

	cursor: pointer;
}

.join_wrap .join_btn ul li.on{
	width: 450px;
	border-radius: 360px;
	background: #24375B;
	color: #fff;
}

.tab_con {
    display: none;
}

.tab_con.active {
    display: block;
}

/* 약관 동의 및 정보 입력 */

.join_wrap .agree_box_wrap{
	width: 100%;
	max-width: 90rem;
	margin: 0 auto;
}

.join_wrap .agree_box_wrap + .agree_box_wrap{
	margin-top: 80px;
}

.join_wrap .agree_box_wrap .tit{
	font-size: 35px;
	color: #222;
	font-weight: 500;
	margin-bottom: 25px;
}

.join_wrap .agree_box_wrap .agree_box{
	width: 100%;
	border: 1px solid #E9E9E9;
	border-radius: 30px;
	padding: 6rem;
	gap: 30px;
}

.join_wrap .agree_box_wrap .agree_box .agree_item{
	justify-content: space-between;
}

.join_wrap .agree_box_wrap .agree_box .agree_item .ico_txt_wrap{
	display: flex;
	align-items: center;
}

.join_wrap .agree_box_wrap .agree_box .agree_item .chk_ico{
	border: 1px solid #BBBBBB;
}

.join_wrap .agree_box_wrap .agree_box .agree_item input[type="checkbox"]:checked + .chk_ico{
	background-color: #24375B;
    border-color: #24375B;
}

.join_wrap .agree_box_wrap .agree_box .agree_item:nth-of-type(1){
	border-bottom: 1px solid #E9E9E9;
	padding: 0 0 3rem;
	margin-bottom: 1rem;
	justify-content: flex-start;
}

.join_wrap .agree_box_wrap .agree_box .txt.on{
	font-size: 22px;
	color: #222222;
	font-weight: 600;
}

.join_wrap .agree_box_wrap .agree_box .txt{
	font-size: 18px;
	font-weight: 400;
	color: #222;
}

.join_wrap .agree_box_wrap .agree_box .agree_item a{
	width: fit-content;
	padding: 6px 30px;
	border-radius: 360px;
	border: 1px solid #24375B;
	font-size: 18px;
	color: #24375B;
	text-decoration: none;
}
/* 이용약관동의 */

/* 개인정보입력 */
.per_info_box{
	width: 100%;
	border: 1px solid #E9E9E9;
	border-radius: 30px;
	padding: 6rem;
	gap: 30px;
}


.per_info_box .join_form {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 2rem;
}

.per_info_box .form_row {
    display: flex;
    align-items: baseline;
    width: 100%;
}

/* 상단 정렬이 필요한 행 (마케팅 동의 등) */
.form_row.alignment_top {
    align-items: flex-start;
	flex-direction: column;
	gap: 19px;
}

/* Labels */
.form_label {
    width: 19rem;
    font-size: 2rem;
    font-weight: 500;
    color: #222;
    padding-right: 1rem;
    flex-shrink: 0;
}

.form_label.required::after {
    content: '*';
    color: #FF3F3F;
    margin-left: 0.4rem;
    font-weight: bold;
}

/* Form Content */
.form_content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.form_content .frm_select{
	border: 1px solid #E9E9E9;
	height: 4.6rem;
	color: #888888;
}

/* Common Form Controls (Input, Select) */
input[type="text"],
input[type="password"],
input[type="email"],
select {
    width: 61%;
    height: 4.6rem;
    padding: 0 1.6rem;
    border: 1px solid #E9E9E9;
    border-radius: 0.8rem;
    font-size: 1.5rem;
    color: #888888;
    outline: none;
    background-color: #fff;
    transition: border-color 0.2s ease;
	font-weight: 300;
}

input[type="text"]::placeholder,
input[type="password"]::placeholder,
input[type="email"]::placeholder {
    color: #aaa;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
select:focus {
    border-color: #222;
}

/* Select 화살표 커스텀 */
select {
    appearance: none;
    -webkit-appearance: none;
    background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%3C%23666666' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 1.4rem center;
    padding-right: 3.6rem;
    cursor: pointer;
}

/* Guide Text */
.guide_txt {
    font-size: 1.6rem;
    color: #888;
    margin-top: 0.2rem;
}

/* Button & Input Group */
.input_btn_group {
    display: flex;
    gap: 1.5rem;
}

.input_btn_group input {
    flex: 0.48;
}

.btn_check {
    width: 10rem;
    height: 4.6rem;
    background-color: #222;
    color: #fff;
    border: none;
    border-radius: 0.8rem;
    font-size: 1.8rem;
    font-weight: 500;
    cursor: pointer;
    flex-shrink: 0;
}

.btn_check:hover {
    background-color: #24375B;
}

/* Multi Input Groups (Grid/Flex) */
.multi_group {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    width: 100%;
}

.multi_group.select_3 select,
.multi_group.phone_group > * {
    flex: 1;
}

.multi_group.email_group input,
.multi_group.email_group select {
    flex: 1;
}

.multi_group .dash {
    font-size: 1.4rem;
    color: #888;
}

/* Checkbox Gray Box */
.chk_bg_box {
    background-color: #F7F7F7;
    padding: 1.6rem 2rem;
    border-radius: 0.8rem;
    display: flex;
    align-items: center;
    gap: 2.4rem;
}

.chk_label {
    display: inline-flex;
    align-items: center;
    gap: 0.8rem;
    cursor: pointer;
    font-size: 1.8rem;
    color: #555;
}

.chk_label input[type="checkbox"] {
    width: 1.8rem;
    height: 1.8rem;
    border-radius: 0.4rem;
    cursor: pointer;
    accent-color: #24375B;
}
/* 개인정보입력 */

/* 버튼 */
.join_wrap .sign_up{
	display: block;
	width: 300px;
	font-size: 20px;
	color: #fff;
	text-align: center;
	font-weight: 600;
	padding: 20px 40px;
	background: #24375B;
	border-radius: 360px;
	margin: 60px  auto 0;
	cursor: pointer;
}
/* 버튼 */

/* 약관 동의 및 정보 입력 */

/* 회원가입 완료 */
.sign_com .sign_com_box{
	width: 100%;
	max-width: 90rem;
	padding: 77px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	border-radius: 30px;
	border: 1px solid #E9E9E9;
	margin: 0 auto;
}

.sign_com .sign_com_box .logo{
	width: 100%;
	max-width: 100px;
	padding-bottom: 50px;
}

.sign_com .sign_com_box .logo img{
	width: 100%;
}

.sign_com .sign_com_box .tit{
	font-size: 35px;
	font-weight: 500;
	color: #222;
	margin-bottom: 15px;
}

.sign_com .sign_com_box p{
	font-size: 20px;
	font-weight: 300;
	color: #222;
}

.sign_com .sign_com_btn{
	padding-top: 80px;
}

.sign_com .sign_com_btn ul{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 15px;
}

.sign_com .sign_com_btn ul li{
	width: 300px;
	padding: 23px 70px;
	border-radius: 360px;
	border: 1px solid #24375B;
	color: #24375B;
	font-size: 20px;
	text-align: center;
	transition: all 0.5s ease;

	cursor: pointer;
}

.sign_com .sign_com_btn ul li.on{
	border: none;
	background: #24375B;
	color: #fff;
}

.sign_com .sign_com_btn ul li:hover{
	background: #24375B;
	color: #fff;
}
/* 회원가입 완료 */

/* 회원가입 */

/* 로그인 모달창 */
.login_modal{
	position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    z-index: 999;

    display: none;
    align-items: center;
    justify-content: center;
}

.login_modal.active {
	display: flex;
}

.login_modal .login_bg{
	width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1;

	pointer-events: auto;
}

.login_modal .login_box{
	width: 100%;
	max-width: 500px;
	padding: 52px 66px;
	border-radius: 40px;
	background: #fff;
	position: relative;
	z-index: 2;

	display: flex;
	flex-direction: column;
	align-items: center;
}

.login_modal .login_box .close_btn{
	width: 50px;
	height: 50px;
	border: 1px solid #BBBBBB;
	border-radius: 50px;

	display: flex;
	justify-content: center;
	align-items: center;
	
	position: absolute;
	top: 2.5rem;
	left: 42.5rem;

	cursor: pointer;
}

.login_modal .login_box .close_btn span{
	transition: transform 0.3s ease;
	transform: rotate(0);
}

.login_modal .login_box .close_btn:hover span{
	transform: rotate(90deg);
}

.login_modal .login_box .tit_wrap .tag{
	font-size: 18px;
	color: #222;
	opacity: 0.3;
	font-weight: 300;
	text-align: center;
	letter-spacing: 5%;
}

.login_modal .login_box .tit_wrap .tit{
	font-size: 40px;
	font-weight: 600;
	color: #222;
	text-align: center;
	margin-top: 10px;
}

.login_modal .login_form {
	width: 100%;
}

.login_modal .login_form .form_row{
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.login_modal .login_form .form_row .form_label{
	font-size: 1.8rem;
	color: #222222;
	font-weight: 500;
	margin-top: 2rem;
}

.login_modal .login_form .form_row input[type="text"],
.login_modal .login_form .form_row input[type="password"],
.login_modal .login_form .form_row input[type="email"]{
	width: 100%;
}

.login_modal .login_btn{
	padding-top: 25px;
}

.login_modal .login_btn ul{
	display: flex;
	align-items: center;
	gap: 10px;
}

.login_modal .login_btn ul li{
	width: calc(100%/2);
	padding: 18px 63px;
	font-size: 1.8rem;
	color: #fff;
	border-radius: 1rem;
	background: #444444;
	text-align: center;
	cursor: pointer;
}

.login_modal .login_btn ul li.on{
	background: #4365A3;
}

.login_modal .find_btn{
	padding-top: 30px;
}

.login_modal .find_btn ul{
	display: flex;
	align-items: center;
	gap: 15px;
}

.login_modal .find_btn ul li{
	font-size: 1.8rem;
	color: #777777;
	font-weight: 500;
	cursor: pointer;
}

.login_modal .find_btn ul li + li{
	border-left: 1px solid #777777;
	padding-left: 15px;
}

/* 아이디 찾기 */
.find_id_btn{
	width: 100%;
	border-radius: 0.8rem;
	background: #4365A3;
	font-size: 1.8rem;
	color: #fff;
	text-align: center;
	padding: 19px;
	margin-top: 2.5rem;
}
/* 아이디 찾기 */

/* 로그인 모달창 */

/* 아이디 찾기 페이지 */
.join_wrap .agree_box_wrap.login{
	max-width: 60rem;
	margin-top: 80px;
}

.agree_box_wrap.login .form_label{
	width: 8rem;
}

.agree_box_wrap.login .per_info_box .form_row{
	justify-content: center;
}

.agree_box_wrap.login .find_id_btn{
	display: block;
	width: 78%;
	margin: 1.2rem auto 0;
}

.sn_find_msg {
	font-size: 2rem;
	font-weight: 200;
	line-height: 1.5;
	text-align: center;
	margin-top: 1rem;
}

.login_form {
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.find_btn{
	margin-top: 2rem;
}

.find_btn ul{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
}

.find_btn ul li{
	width: calc(100%/2.65);
	padding: 19px;
	font-size: 15px;
	border-radius: 6px;
	border: 1px solid #d2d2d2;
	color: #222;
	text-align: center;
}

.find_btn ul li.on{
	background: #222;
}

.find_btn ul li.on a{
	color: #fff;
}

.sn_login_page .login_btn ul{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 15px;
	margin-top: 80px;
}

.sn_login_page .login_btn ul li{
	width: 300px;
	padding: 23px 50px;
	border-radius: 360px;
	border: 1px solid #24375B;
	color: #24375B;
	font-size: 20px;
	text-align: center;
	transition: all 0.5s ease;

	cursor: pointer;
}

.sn_login_page .login_btn ul li.on{
	border: none;
	background: #24375B;
}

.sn_login_page .login_btn ul li.on a{
	color: #fff;
}

.sn_login_page .login_btn ul li:hover{
	background: #24375B;
}

.sn_login_page .login_btn ul li:hover a{
	color: #fff;
}
/* 아이디 찾기 페이지 */

/* 비밀번호 찾기 이메일 인증 페이지 */
.agree_box_wrap.login #captcha_info{
	display: inline-block;
	font-size: 15px;
	padding-top: 2rem;
	text-align: center;
}

.agree_box_wrap.login #captcha {
	padding: 0 5rem;
}
/* 비밀번호 찾기 이메일 인증 페이지 */


/* sub common footer */

.hash_row {
	position: relative;
	overflow: hidden;
	background: #131213;
}

.hash_row ul {
	display: flex;
	position: relative;
	z-index: 3;
}

.hash_row ul li {
	width: 33.33%;
	min-height: 65rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

.hash_row ul li+li {
	border-left: solid 1px rgba(255, 255, 255, 0.2);
}

.hash_row ul li.on {
	background: rgba(0, 0, 0, 0.25);
}

.hash_row ul li .txtbox {
	color: #e0e0e0;
	text-align: center;
	position: relative;
	transition: all 0.5s;
}

.hash_row ul li.on .txtbox {
	padding-top: 11.7rem;
}

.hash_row ul li .txtbox::before {
	content: '';
	width: 21rem;
	height: 7.7rem;
	position: absolute;
	top: 0;
	left: 50%;
	opacity: 0;
	transition: opacity 0.5s 0.15s;
	transform: translateX(-50%);
	background: url("../img/sub/hash_row_logo.png") no-repeat center center/cover;
}

.hash_row ul li.on .txtbox::before {
	opacity: 1;
}

.hash_row ul li .txtbox .ttl {
	font-size: 3rem;
	font-weight: 200;
	line-height: 1.3;
	margin-bottom: 2.5rem;
}

.hash_row ul li .txtbox .ttl span {
	color: var(--sub-color);
}

.hash_row ul li .txtbox .ttl b {
	font-size: 3.8rem;
	font-weight: 500;
}

.hash_row ul li .txtbox .stl {
	font-size: 2rem;
	font-weight: 200;
}

.hash_row ul li .txtbox .tag_box {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1.2rem;
	height: 0;
	opacity: 0;
	line-height: 1.6;
	transition: opacity 0.5s 0.15s;
}

.hash_row ul li.on .txtbox .tag_box {
	height: auto;
	opacity: 1;
}

.hash_row ul li .txtbox .tag_box span {
	display: flex;
	padding: 0.1rem 1.5rem;
	border-radius: 5rem;
	color: #fff;
	font-weight: 200;
	font-size: 1.8rem;
	text-align: center;
	background: rgba(255, 255, 255, 0.1);
}

.hash_row .bg>div {
	position: absolute;
	left: 0;
	top: 0;
	width: 105%;
	height: 105%;
	opacity: 0;
	transition: all 1s;
	background: no-repeat center center/cover;
}

.hash_row .bg>div:nth-child(1) {
	background-image: url("../img/sub/hash_row_img01.jpg");
	transform: scale(1.05) translate(-5%, 0);
}

.hash_row .bg>div:nth-child(2) {
	background-image: url("../img/sub/hash_row_img02.jpg");
	transform: scale(1.05) translate(0, 5%);
}

.hash_row .bg>div:nth-child(3) {
	background-image: url("../img/sub/hash_row_img03.jpg");
	transform: scale(1.05) translate(5%, 0);
}

.hash_row .bg>div.on {
	opacity: 1;
	transform: scale(1) translate(0);
}

.hash_row ul li.on .txtbox .stl {
	margin-bottom: 8rem;
}

.hash_row ul li.on .txtbox .tag_box {
	margin-top: 3.8rem;
}

/* sub common footer */

/* footer common wrap */

.ctt_us {
	display: block;
	padding: 15rem 0;
	background: url('../img/sub/ctt_bg.jpg') no-repeat top center/100%;
}

.ctt_us>div {
	width: 100%;
}

.ctt_us .ctt_wr {
	width: calc(100% - 4rem);
	margin: 6rem auto 0;
	max-width: 1520px;
	display: flex;
	align-items: center;
	gap: 7rem;
}

.ctt_us .ctt_wr>div {
	width: calc(50% - 3.5rem);
}

#ft {
	border-top: solid 1px rgba(255, 255, 255, 0.2);
}

#circle_c .cursor.on {
	width: 17.5rem;
	height: 17.5rem;
}

#circle_c .cursor img:nth-child(2) {
	position: absolute;
	top: 0;
	left: 0;
}

#circle_c .cursor.on img:nth-child(2) {
	animation: rotate 15s infinite linear;
}

#ft {
	background-color: #212121;
}

/* footer common wrap */