@import url("common.css");
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..500,0..1,-50..200");



/* 비주얼 */
#visual {position:relative; width:100%; height:580px; background:#000; z-index: 10;}
#visual .visual_in{position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); z-index:9999; padding-top: 30px;}
#visual .v_txt{text-align:center;}
#visual .v_txt p{transform:translateY(60px); opacity:0; animation:v_txt 1.0s 0.3s; animation-fill-mode:both; margin-bottom: 10px;}
#visual .v_txt h2{transform:translateY(60px); opacity:0; animation:v_txt 1.0s 0.6s; animation-fill-mode:both; color:var(--white); font-size:4.111rem; line-height:113.514%; letter-spacing:var(--letter-spacing-heading);}
#visual .v_bg{position:absolute; left:0; top:0; width:100%; height:100%; overflow: hidden;}
#visual .v_bg .bg{position:absolute; left:0; top:0; width:100%; height:100%; transform: scale(1); animation: m_vsImg 1.8s;}

@keyframes m_vsImg {
	0% { -webkit-transform:scale(1.1); -ms-transform:scale(1.1); transform:scale(1.1); }
	20% { -webkit-transform:scale(1.1); -ms-transform:scale(1.1); transform:scale(1.1); }
	100% { -webkit-transform:scale(1); -ms-transform:scale(1); transform:scale(1); }
}
@keyframes v_txt {
	0% { transform:translateY(60px); opacity:0; }
	100% { transform:translateY(0); opacity:1; }
}


/* 비주얼LNB */
.visual_lnb_wrap {position: absolute; left: 0; bottom: 20px; width: 100%; transition: all .3s ease;}
.visual_lnb_in {display: flex; align-items:center; width: 90%; max-width: 1530px; margin: 0 auto; justify-content: space-between;}
.v_location {display: flex; align-items:center;}
.v_location .v_location_item {display: flex; align-items: center;}
.v_location .v_location_item a {display: flex;}
.v_location .v_location_item.home::before {display: none;}
.v_location .v_location_item::before {font-size: 20px; color: var(--white); opacity: 0.3; content: '\f46a'; margin: 0 8px;}
.v_location .depth1 {color: var(--basicW);}
.v_location .depth2 {color: var(--basicW);}


.visual_lnb dl {display: flex; gap: 5px;}
.visual_lnb dd {position: relative;}
.visual_lnb dd .txt {width: 260px; display: block; padding: 12px 50px 12px 20px; border-radius: 10px; background: rgba(255, 255, 255, 0.15); border: 1px solid rgba(255, 255, 255, 0.2); position: relative; backdrop-filter: blur(15px); white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.visual_lnb dd .txt::before {font-size: 20px; color: var(--white); opacity: 0.6; content: '\e313'; position: absolute; right: 20px; top: 50%; margin-top: -10px; transition: all .3s ease;}
.visual_lnb dd:last-child .txt {background: var(--white); border-color: var(--white);}
.visual_lnb dd:last-child .txt::before {color: var(--main); opacity: 1;}
.visual_lnb .dlst {position: absolute; top: 100%; left: 0; width: 100%; background: var(--white); padding: 20px; border-radius:0 0 10px 10px; box-shadow: 0 20px 20px rgba(0,0,0,.05); z-index: 10; display: none;}
.visual_lnb .dlst li + li {margin-top: 8px;}
.visual_lnb .dlst a {display: block; font-size: 0.889rem; letter-spacing: var(--letter-spacing-default); line-height: 175%;}
.visual_lnb .dlst a.on {color: var(--main); font-weight: 700;}
.visual_lnb .dlst a:hover {color: var(--main);}

.visual_lnb dd .txt.on {border-radius: 10px 10px 0 0; background: var(--main) !important; border-color: var(--main) !important; color: var(--white) !important; font-weight: 700;}
.visual_lnb dd .txt.on::before {transform: rotate(180deg); color: var(--white) !important; opacity: 1;}



/* 비주얼LNB fixed */
.visual_lnb_wrap.fixed {position: fixed; top: 0; bottom: auto; left: 0; z-index: 100; padding: 12px 0; background: var(--white); box-shadow: 0 5px 15px 0 rgba(0, 0, 0, 0.10);}
.visual_lnb_wrap.fixed .v_location .v_location_item::before {color: var(--black); opacity: 0.2;}
.visual_lnb_wrap.fixed .v_location .depth1,
.visual_lnb_wrap.fixed .v_location .depth2 {color: var(--basic);}
.visual_lnb_wrap.fixed .visual_lnb dd .txt {background: var(--grayBg); border-color: var(--grayBg); color: var(--basic);}
.visual_lnb_wrap.fixed .visual_lnb dd .txt::before {color: var(--basic); opacity: 0.6;}
.visual_lnb_wrap.fixed .visual_lnb dd:last-child .txt {background: var(--main); border-color: var(--main); color: var(--white);}
.visual_lnb_wrap.fixed .visual_lnb dd:last-child .txt::before {color: var(--white); opacity: 1;}

body:has(.header.fixed) .visual_lnb_wrap.fixed {top: 88px;}


/* 모바일 LNB */
.mobile_snb {display:none;}

/* 서브타이틀 */
#subtitle{padding: 120px 0 70px; text-align:center;}



/* 기본 컨텐츠 */
.basic_cont{max-width:1530px; width: 90%; margin:0 auto 200px;}
.footer_wrap {border-top: 1px solid var(--border);}

.subpad {padding: 200px 0;}
.subpad_t {padding: 200px 0 0;}
.subpad_b {padding: 0 0 200px;}

/* 개인정보 정책 */
.policy_cont{position:relative; overflow:hidden; font-size:1rem;}
.policy_cont br{display:block;}
.policy_cont strong{font-weight:500; color:var(--black);}
.policy_cont .cont_title{font-size:1.412rem; color:var(--black); padding-bottom:18px; letter-spacing:var(--letter-spacing-default); font-weight:500;}
.policy_cont p.cont_tit {display:block; font-size:1.2em !important; padding-bottom:10px; font-weight:500; color:var(--black) !important; letter-spacing:var(--letter-spacing-default);}
.policy_cont .cont_txt {padding:0px 0px 35px 0;}
.policy_cont .cont_txt2 {padding-bottom:35px;}
.policy_cont .cont_box {padding:25px; background:var(--grayBg); margin:7px 0px 10px 0px; display:block;  letter-spacing:var(--letter-spacing-default); line-height:1.7;}

.privacy_list {width:100%; overflow:hidden; clear:both; *zoom:1; padding:4% 4% 3% 4%; border:1px solid var(--border); box-sizing:border-box; margin-bottom:30px;}
.privacy_list li {width:50%; float:left; padding-bottom:1%;}
.privacy_list li a {font-weight:500; color:var(--black);} 

/* dot_list */
.dot_list li {position: relative; padding-left: 12px;}
.dot_list li::before {content: ''; position: absolute; left: 0; top: 13px; width: 3px; aspect-ratio: 1/1; background: var(--main);}

/* Responsive Dim */
.responsive-dim {position: absolute; top: 0; bottom: 0; left: 0; right: 0; background: rgba(0,0,0,.6); z-index: 80; display:none;}
.responsive-dim p {position: absolute;top: 50%; left: 0;right: 0; text-align: center; transform: translate(0,-50%);}
.responsive-dim span {display: block; margin-top: 10px;color: var(--white); font-weight: 600; font-size: 14px; letter-spacing: -0.3pt;}
.responsive-dim i {font-size:40px; color:var(--white);}

/* 난임클리닉 / 특수클리닉 공통 */
.clinic_flex article {display: flex; align-items: center;}
.clinic_flex article + article {margin-top: 30px;}
.clinic_flex article .imgbox {width: 45%; max-width: 620px; flex-shrink: 0; border-radius: var(--borderR20); overflow: hidden;}
.clinic_flex article .imgbox img {width: 100%;}
.clinic_flex article .txtbox {padding-left: 80px; flex: 1;}
.clinic_flex article .txtbox p.eng {margin-bottom: 5px;}
.clinic_flex article .txtbox h4 {margin-bottom: 18px;}


/*******************************************************************************
    @media 1700px
*******************************************************************************/
@media all and (max-width:1700px){
.clinic_flex br {display: none;}
}

/*******************************************************************************
    @media 1500px
*******************************************************************************/
@media all and (max-width:1500px){
	
}

/*******************************************************************************
    @media 1300px
*******************************************************************************/
@media all and (max-width:1300px){
/* Visual */
#visual .v_txt h2 {font-size:3.5rem;}

/* 난임클리닉 / 특수클리닉 공통 */
.clinic_flex article {align-items: flex-start;}
.clinic_flex article .txtbox {padding-left: 50px;}
.clinic_flex article .txtbox p.eng {font-size: 1.1rem;}
.clinic_flex article .txtbox h4 {font-size: 1.6rem;}
}


/*******************************************************************************
    @media  ~980px               
*******************************************************************************/
@media all and (max-width:980px){
/* 기본 컨텐츠 */
.basic_cont{margin:0 auto 120px;}

.subpad {padding: 120px 0;}
.subpad_t {padding: 120px 0 0;}
.subpad_b {padding: 0 0 120px;}


/* 서브타이틀 */
#subtitle{padding: 80px 0 50px;}

	
/* 개인정보 정책 */
.policy_cont p.cont_tit {font-size:1.2em !important; padding-bottom:5px;}
.policy_cont .cont_txt {padding:0px 0px 25px 0; }
.policy_cont .cont_txt2 {padding-bottom:25px;}
.policy_cont .cont_box {padding:18px 18px; }

.privacy_list {margin-bottom:30px;}
.privacy_list li {width:100%;  }

/* Visual */
#visual {height: 400px;}
#visual .v_txt h2 {font-size:3rem;}

/* 비주얼 LNB */
body:has(.header.fixed) .visual_lnb_wrap.fixed {top: 80px;}

.v_location .v_location_item::before {font-size: 18px;}

.visual_lnb dd .txt {width: 170px; padding: 10px 30px 10px 15px; border-radius: 5px;}
.visual_lnb dd .txt::before {right: 10px; font-size: 18px; margin-top: -9px;}
.visual_lnb .dlst {padding: 15px; border-radius: 0 0 5px 5px;}
.visual_lnb dd .txt.on {border-radius: 5px 5px 0 0;}

/* dot_list */
.dot_list li::before {top: 12px;}

/* 난임클리닉 / 특수클리닉 공통 */
.clinic_flex article .txtbox {padding-left: 30px;}
.clinic_flex article .txtbox p.eng {margin-bottom: 2px;}
.clinic_flex article .txtbox h4 {margin-bottom: 10px;}
}


/*******************************************************************************
    @media 481~680px
*******************************************************************************/
@media all and (max-width:680px){
/* 기본 컨텐츠 */
.basic_cont{margin:0 auto 80px;}	

.subpad {padding: 80px 0;}
.subpad_t {padding: 80px 0 0;}
.subpad_b {padding: 0 0 80px;}

/* 서브타이틀 */
#subtitle{padding: 60px 0 40px;}

/* Visual */
#visual {height: 280px;}
#visual .v_txt p {margin-bottom: 5px;}
	
/* 비주얼 LNB */
.visual_lnb_wrap {display: none;}

/* 모바일 LNB */
.mobile_snb {display:block;}
.mobile_snb .tbox{display:flex;}
.mobile_snb .tbox .box{width:50%; box-sizing:border-box;}
.mobile_snb .tbox .box .dropLst{position: relative;}
.mobile_snb .tbox .box .dropLst .title{display:block; font-size:1rem; font-weight: 700; line-height:50px; letter-spacing:var(--letter-spacing-default); box-sizing:border-box; padding:0 40px 0 10%; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block; position: relative;}
.mobile_snb .tbox .box .dropLst .title:after{content:''; position:absolute; right:10%; top:50%; margin-top: -9px; transition:all .3s linear; opacity: 1; font-size: 18px; color: var(--white); content: '\e313'; font-family: var(--icon); line-height: 1; font-weight: 400;}
.mobile_snb .tbox .box.dep1 .dropLst .title:after{color: var(--main);}
.mobile_snb .tbox .box.dep1 .dropLst .title{background:var(--white); color:var(--main);}
.mobile_snb .tbox .box.dep2 .dropLst .title{background:var(--main); color:var(--white);}
.mobile_snb .tbox .box .dropLst .title.on{}
.mobile_snb .tbox .box .dropLst .title.on:after{transform:rotate(180deg);}
.mobile_snb .tbox .box .dropLst .dlst{display:none; position: absolute; left: 0; top:50px; width: 200%; background:var(--white); z-index: 99999; box-shadow:0 20px 20px rgba(0,0,0,.05);}
.mobile_snb .tbox .box.dep2 .dropLst .dlst{left: -100%;}
.mobile_snb .tbox .box .dropLst .dlst ul{}
.mobile_snb .tbox .box .dropLst .dlst ul li{}
.mobile_snb .tbox .box .dropLst .dlst ul li a{display: block; padding: 0 5%; font-size:1rem; line-height:50px; letter-spacing:var(--letter-spacing-default); box-sizing:border-box; text-overflow: ellipsis; -o-text-overflow: ellipsis; overflow: hidden; white-space: nowrap; word-wrap: normal !important; display: block;}
.mobile_snb .tbox .box .dropLst .dlst ul li a.on{background:var(--main); color:var(--white);}

.search_none .mobile_snb{display: none;}

/* dot_list */
.dot_list li {padding-left: 10px;}
.dot_list li::before {top: 9px;}

/* 난임클리닉 / 특수클리닉 공통 */
.clinic_flex span {line-height: inherit;}
.clinic_flex article {display: block;}
.clinic_flex article .imgbox {width: 100%; max-width: 100%;}
.clinic_flex article .txtbox {padding-left: 0; margin-top: 20px;}
.clinic_flex article .txtbox h4 {margin-bottom: 6px;}
}
/*******************************************************************************
    @media ~480px               
*******************************************************************************/
@media all and (max-width:480px){

}
/*******************************************************************************
    @media ~360px
*******************************************************************************/
@media all and (max-width:360px){

}

