
.main_wrap section{position: relative;overflow: hidden;}
.main_wrap .sec_title p.title{font-size: 60px;line-height: 1.4;font-weight: 600 !important;}
}.main_wrap .sec_title .sub_title{font-size: 24px;font-weight: bold;margin-bottom: 24px;}
.main_wrap .sec_title p.title span.bold {
    font-weight: 600 !important;
}
.main_wrap .center_wrap{display: flex;flex-direction: column;justify-content: center;height: 100%;}
@media screen and (min-width: 769px) and (max-width: 1279px) {
    .main_wrap .sec_title p.title{font-size: 44px;}
}
@media screen and (max-width: 768px) {
    .main_wrap .sec_title p.title{font-size: 32px;}
}

.visual_sec{width: 100%;height: 100vh;background: #000;}
.visual_sec .bg{position: absolute;inset:0;width: 100%;height: 100%;opacity: 1;z-index: 1;background: #000;}
.visual_sec .bg #video_wrap {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.visual_sec .bg #video_wrap::before {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.3);
    display: block;
    content: '';
    z-index: 1;
}

.visual_sec .bg #video_wrap video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
}

.visual_sec .visual_btn {
    position: relative;
    z-index: 10 !important;
}
.visual_sec .main_title{z-index: 2;display: flex;justify-content: center;flex-direction: column;height: 100%;}
.visual_sec .main_title p.txt1{font-size: 60px;color:#fff;font-weight: 600;line-height: 1.4;opacity: 0;letter-spacing: -4%;}
.visual_sec .main_title p.txt2{font-size: 24px;color:#fff;font-weight: 400;line-height: 1.4;opacity: 0;margin-top: 24px;letter-spacing: -3%;}

.visual_sec .main_title p.txt1 {
  animation: slideup 0.8s .1s forwards;
}

.visual_sec .main_title p.txt2 {
  animation: slideup 0.8s .3s forwards;
}

@keyframes slideup {
  from {
    opacity: 0;
    transform: translateY(70px);
  }

  to {
    opacity: 1;
    transform: none;
  }
}
.visual_sec .visual_btn{background: rgba(60, 58, 103, 0.5);padding: 15px 20px;border-radius: 12px;position: absolute;left: 60px;bottom: 60px;z-index: 2;
display: flex;align-items: center;gap:16px;animation: slideup 0.8s .1s forwards;opacity: 0;backdrop-filter: blur(5px);border: solid 1px #9CA3AF;}
.visual_sec .visual_btn .img_box{width: 132px;height: 75px;background: url('/ivf/img/main/visual_btn_img.png') center center /cover;}
.visual_sec .visual_btn p{color:#fff;font-size: 18px;font-weight: 700;}
.visual_sec .visual_btn span{width: 30px;height: 30px;display: inline-flex;align-items: center;justify-content: center;background: #fff url('/ivf/img/main/more_arrow_bk.svg') center center no-repeat;border:solid 1px #D1D5DB;border-radius: 100%;}
@media screen and (min-width: 769px) and (max-width: 1279px) {
    .visual_sec .main_title {padding: 0 10vw;}
.visual_sec .main_title p.txt1{font-size: 40px;}
    .visual_sec .main_title p.txt2{font-size: 22px;}
    .visual_sec .visual_btn{transform: scale(0.8) !important;transform-origin: left;left: 10vw;}
}

@media screen and (max-width: 768px) {
    .visual_sec .main_title {padding: 0 10vw;justify-content: end;padding-bottom: 74px;}
    .visual_sec .main_title p.txt1{font-size: 26px;}
    .visual_sec .main_title p.txt2{font-size: 16px;}
    .visual_sec .visual_btn{display: none;}
}


.sec01{padding: 140px 0;}
.sec01 .sec_title{margin-bottom: 64px;}
.sec01 .list_wrap {display:flex; align-items:center;}
.sec01 .img_wrap {flex:0 0 50%; position:relative; width:50%;overflow: hidden;height: 700px}
.sec01 .img_wrap img {opacity:0;z-index:1; position:relative;}
.sec01 .img_wrap .ani_color {width:100%; height:100%; background:var(--brand); position:absolute; top:0; left:0;z-index:2;    transition: opacity .5s;}
.sec01 .img_wrap .ani_color {translate: none; rotate: none; scale: none; transform-origin: 100% 50%; transform: scale(0, 1);}
.sec01 .list_wrap.aos-animate .ani_color {animation:sec01Ani--top 1.2s cubic-bezier(.215,.61,.355,1) 0.2s forwards;}
.sec01 .list_wrap.aos-animate .img_wrap img{animation:sec01ImgAni 0.9s 0.5s forwards;}
.sec01 .txt_link {flex:0 0 50%; padding-left:70px; width:50%;}
.sec01 .txt_link .tit {font-size:56px;font-weight: 700;line-height: 1.4;margin-bottom: 24px;}
.sec01 .txt_link .sub_tit { color:var(--brand);font-size:34px; line-height:1; margin-bottom:40px; font-weight:700;}
@keyframes sec01Ani--top {
	0% {
		transform: scale(1, 0);
		transform-origin: top;
	}
	40% {
		transform: scale(1, 1);
	}
	50% {
		transform: scale(1, 1);
	}
	100% {
		transform: scale(1, 1) translateY(100%);
	}
}

@keyframes sec01ImgAni {
	0%{opacity:0;}
	50%{opacity:1;}
	100%{opacity:1;}
}
@media screen and (min-width: 769px) and (max-width: 1279px) {
.sec01{padding: 100px 16px;}
 .sec01 .img_wrap{height: auto;}
 .sec01 .txt_link{padding-left: 30px;}
 .sec01 .txt_link .sub_tit{font-size: 22px;margin-bottom: 20px;}
    .sec01 .txt_link .tit{font-size: 34px;margin-bottom: 20px;}
}

@media screen and (max-width: 768px) {
    .sec01{padding: 50px 16px;}
    .sec01 .sec_title{margin-bottom: 20px;}
    .sec01 .list_wrap{flex-direction: column;gap:32px}
    .sec01 .img_wrap{width: 100%;flex:auto;height: auto;aspect-ratio: 343 / 376;max-height: 450px;}
    .sec01 .img_wrap img{width: 100%;height: 100%;object-fit: cover;}
    .sec01 .txt_link{width: 100%;flex:auto;padding: 0;}
    .sec01 .txt_link .sub_tit{font-size: 18px;margin-bottom: 16px;}
    .sec01 .txt_link .tit{font-size: 26px;margin-bottom: 16px;}
    .sec01 .txt_link .font18{font-weight: 400 !important;}
    .sec01 .list_wrap:last-child{flex-direction: column-reverse;margin-top: 20px;}
}

.sec02{height: 100vh;}
.sec02 .sec02_cont01{background: var(--brand);height: 100%;}
.sec02 .sec02_cont01 .sec_title{position: absolute;top:30%;left: 50%;transform: translate(-50%,-50%);width:100%}
/* .sec02 .sec02_cont01 .sec_title p{} */
.sec02 .sec02_cont01 .title_wrap {
    position: relative;
    height:168px;
}

.sec02 .sec02_cont01 .title_wrap .title1,
.sec02 .sec02_cont01 .title_wrap .title2 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    margin: 0;
}
.sec02 .sec02_cont01 .sec_title p.title2{opacity: 0;}
.sec02 .sec02_cont01 .sec_title .font24{margin-top: 32px;opacity: 0;}
.sec02 .sec02_cont01 .sec_title p.font24{
    letter-spacing: -2%;
}
.sec02 .sec02_cont01 .img_box,
.sec02 .sec02_cont01 .img_box02 {
  width: 470px;
  height: 320px;
  border-radius: 24px;
  overflow: hidden;
  position: absolute;
  left: 50%;transform: translateX(-50%);
  top:40%
}

.sec02 .sec02_cont01 .img_box02 {
  position: absolute;
  left: 50%;
  top: calc(50% + 57px);
  margin: 0;
  transform: translateX(-50%);
  opacity: 0;
}
.sec02 .sec02_cont01 .img_box02::before{
    display: inline-block;
    content: '';
    position: absolute;
    inset:0;
    background: rgba(0, 0, 0, 0.4);
}
.sec02 .sec02_cont01 .img_box img,
.sec02 .sec02_cont01 .img_box02 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 1279px) {
    .sec02{height: 540px;}
    .sec02 .sec02_cont01 .img_box01{opacity: 0;}
    .sec02 .sec02_cont01 .img_box02{opacity: 1;width: 100%;height: 100%;inset: 0;
        transform: none;border-radius: 0;}
.sec02 .sec02_cont01 .img_box02 img{object-position: left;}
        .sec02 .sec02_cont01 .sec_title{top:50%;z-index: 2;width: 100%;}
        .sec02 .sec02_cont01 .sec_title p.title{font-size: 32px;}
    .sec02 .sec02_cont01 .sec_title .font24{opacity: 1;font-size: 18px;margin-top: 24px;}
}
@media screen and (max-width: 768px) {
 .sec02 .sec02_cont01 .sec_title p.title{font-size: 22px;}
    .sec02 .sec02_cont01 .sec_title .font24{font-size: 14px;}
}
.sec03{padding: 140px 0;}
.sec03 .cont_wrap{display: grid;grid-template-columns: 1fr 1fr 1fr;grid-template-rows: 1fr 1fr;gap:20px;margin-top: 52px;}
.sec03 .cont_wrap>div{border-radius: 24px;overflow: hidden;background: #fff;height: 400px;padding: 40px;position: relative;}
.sec03 .cont_wrap>div a{display: block;}
.sec03 .cont_wrap>div .title{width: 100%;display: flex;align-items: center;gap:16px}
.sec03 .cont_wrap>div .title .icon{width: 40px;height: 40px;background:rgba(255, 255, 255, 0.3) url('/ivf/img/main/more_arrow_wt.svg') center center no-repeat;
    border:solid 1px #D1D5DB;backdrop-filter: blur(8px);
    border-radius: 500px;
    display: block;content: '';overflow: hidden;position: relative;opacity: 0;transition: opacity 0.6s;}
.sec03 .cont_wrap>div .title .icon img{position: absolute;bottom: 3px;left:4px;}
.sec03 .cont_wrap .text_box{position: relative;z-index: 2;}
.sec03 .cont_wrap .text_box .title{font-size: 40px;font-weight: 700;margin-bottom: 16px;color:#fff}
.sec03 .cont_wrap .img_box{position: absolute;bottom: 0;right: 0;width: 100%;height: 100%;transition: transform 0.6s;}
.sec03 .cont_wrap .img_box img{width: 100%;height: 100%;  object-fit: cover;}
.sec03 .cont_wrap .box01{grid-column: 1/3;}
.sec03 .cont_wrap .box02{grid-column: 3/4;grid-row: 1/4;height: 820px;}
.sec03 .cont_wrap .chip_flex{display: flex;gap:16px 10px;max-width: 320px;flex-wrap: wrap;}
.sec03 .cont_wrap .chip_flex p{background: rgba(255, 255, 255, 0.1);color:#fff;display: inline-flex;
    justify-content: center;line-height: 34px;border:solid 1px #fff;padding: 0 20px;
border-radius:900px;height: 37px;font-size: 18px;font-weight: 700;}
.sec03 .cont_wrap .box03 .chip_flex{max-width: 300px;}

@media screen and (min-width: 1200px) {
    .sec03 .cont_wrap>div:hover .img_box{transform: scale(1.2);}
.sec03 .cont_wrap>div:hover .title .icon{opacity: 1;}
}
@media screen and (min-width: 769px) and (max-width: 1279px) {
    .sec03{padding: 100px 16px;}
    .sec03 .cont_wrap{display: flex;flex-wrap: wrap;}
    .sec03 .cont_wrap>div{height: 300px !important;width: calc(50% - 16px);padding: 32px 30px;}
    .sec03 .cont_wrap .text_box .title{font-size: 32px;}
}
@media screen and (max-width: 768px) {
.sec03{padding: 50px 16px;}
.sec03 .cont_wrap{display: flex;flex-direction: column;}
.sec03 .cont_wrap>div{aspect-ratio: 1/1;height: auto !important;padding: 32px 30px;max-height: 400px;}
.sec03 .cont_wrap .text_box .title{font-size: 26px;}
.sec03 .cont_wrap>div .title .icon{opacity: 1;}
.sec03 .cont_wrap .chip_flex p{font-size: 16px;height: 34px;}
.sec03 .cont_wrap .img_box img.mo_none{display: none;}
}

.sec04 {background:  url('/ivf/img/main/sec04_bg.png') center center /cover;padding: 140px 0;text-align: center;}
.sec04 .sec_title{margin-bottom: 52px;}
.sec04 .container,.sec04 .swiper{overflow: visible;}
.sec04 .swiper-wrapper {
  transition-timing-function: linear !important;
}
.sec04 .swiper-wrapper:not([style*="transform"]) {
  justify-content: center;
}

.sec04 .swiper-slide{padding: 40px 30px;border: 1px solid #D1D5DB;box-shadow: 4px 4px 4px rgba(94, 71, 117, 0.1);border-radius: 24px;height: 380px;background-color: #fff;width: 320px;position: relative;text-align: left;}
.sec04 .swiper-slide .chip{display: inline-block;line-height: 1.4;padding: 5px 20px;
border-radius:900px;min-height: 38px;font-size: 18px;margin-bottom: 24px;max-width: 100%;}
.sec04 .swiper-slide:nth-child(odd) .chip{border:solid 1px var(--brand);color:var(--brand)}
.sec04 .swiper-slide:nth-child(even) .chip{background:var(--brand);color:#fff}
.sec04 .swiper-slide .bottom{position: absolute;bottom: 40px;color:var(--brand);display: -webkit-box;width: calc(100% - 60px);
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    word-wrap: break-word;}
.sec04 .swiper-slide p.tit{display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  overflow: hidden;
  text-overflow: ellipsis;
  word-wrap: break-word;}
.sec04 .more_btn{height: 55px;line-height: 55px;width: auto;padding: 0 60px 0 30px;margin-top: 52px;font-size: 1.8rem;font-weight: 600;background:var(--brand) url('/ivf/img/main/more_arrow_wt.svg') right 24px center no-repeat;color:#fff;}
@media screen and (min-width: 769px) and (max-width: 1279px) {
    .sec04{padding: 100px 16px;}
}
@media screen and (max-width: 768px) {
.sec04{padding: 60px 0;}
.sec04 .sec_title{margin-bottom: 30px;}
.sec04 .swiper-slide{height: auto;aspect-ratio: 300/340;padding: 40px 20px;width: 300px;}
.sec04 .swiper-slide p.tit{font-size: 18px;}
.sec04 .more_btn{margin-top: 20px;font-size: 16px;height: 52px;line-height: 52px;}

}
.sec05 {padding: 140px 0;}
.sec05 .cont_wrap{gap:16px;margin-top: 50px;padding: 10px;}
.sec05 .cont_wrap>div{box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.15);flex:1;height: 400px;border-radius: 20px;padding: 50px 40px;transition: all 0.4s;position: relative;}
.sec05 .cont_wrap>div a{display: flex;flex-direction: column;justify-content: space-between;height: 100%;}
.sec05 .cont_wrap>div .icon{position: absolute;bottom: 35px;right:35px}
.sec05 .cont_wrap>div .font18{margin-top: 20px;}
.sec05 .cont_wrap>div::after{width: 29px;height: 15px;display: block;content: '';background:  url('/ivf/img/main/more_arrow_wt.svg') center center /cover;position: absolute;right: 35px;top: 60px;}
.sec05 .cont_wrap>div.box01 a{pointer-events: none;cursor: default;}
.sec05 .cont_wrap>div.box01 {
 background: #9EA9BC;
}
.sec05 .cont_wrap>div.box02{
  background: #E3E7EE;
}
.sec05 .cont_wrap>div.box02::after{background-image:  url('/ivf/img/main/more_arrow_bk.svg') }
.sec05 .cont_wrap>div.box03{
 background: var(--brand);
}
.sec05 .cont_wrap>div.box04{
  background: #432264;
}
@media screen and (min-width: 769px) and (max-width: 1279px) {
    .sec05{padding: 100px 16px;}    
    .sec05 .sec_title{text-align: center;}
    .sec05 .cont_wrap{flex-wrap: wrap;}
    .sec05 .cont_wrap>div{height: 250px !important;width: calc(50% - 8px);flex:initial;padding: 30px;}
    .sec05 .cont_wrap>div::after{top:35px}
}
@media screen and (max-width: 768px) {
    .sec05{padding: 50px 16px;}
    .sec05 .sec_title{text-align: center;}
    .sec05 .cont_wrap{flex-direction: column;padding: 0;}
.sec05 .cont_wrap>div{height: auto;aspect-ratio: 343/300;padding: 30px;max-height: 300px;}
.sec05 .cont_wrap>div .icon{right:30px;bottom: 30px;}
.sec05 .cont_wrap>div::after{top:35px}
.sec05 .cont_wrap>div .font18{font-size: 18px;margin-top: 15px;}
}
