body, html{ overflow-x: hidden; }
.inner{width: 1400px; margin: 0 auto; }


/* 메인비주얼 */
#main{ background-color: #E9E4DD; }
#main .visual{ position: relative; height: 100svh; width: 100%; }
#main .visual .scroll{ position: absolute; left: 50%; bottom: 50px; transform: translate(-50%,0); display:flex; flex-flow: column; align-items: center; gap: 10px; z-index: 2; }
#main .visual .scroll strong{ font-size: 16px; color:#231815; writing-mode: vertical-rl; }
#main .visual .scroll .line{ width:1px; height: 31px; background-color: rgba(130,123,122,0.3); transform: translateX(1px); position: relative; }
#main .visual .scroll .line span{ position: absolute; left: 0; top: 0; width: 100%; height: 0; background-color: #473F3D; animation: sc 2s ease-in-out infinite; }

#main .visual .v01{ display:flex; align-items: center; justify-content: center; width: 100%; height: 100%; position: relative; transition: opacity 1.5s, transform 1.5s; opacity: 0; transform: scale(1.1); }

#main .visual.on .v01{ opacity: 1; transform: scale(1); }


#main .visual .v01 .v_txt{ position: absolute; left: 0; top: 50%; width: 100%; transform: translate(0,-50%); text-align: center; overflow: hidden; height:  72px; opacity: 0; }



#main .visual .v01 .v_txt strong{ font-size: 48px; font-weight: 500; color:#3E2C1D; letter-spacing: -0.02em; line-height: 1.5em; display: block; }

#main .visual .v02{ width: 100%; height: 100%; position: absolute; left: 0; top: 0; overflow: hidden; opacity: 0; }
#main .visual .v02 .video .dim{ display: block; width: 100%; height: 100%; background-color: #241E19; opacity: 0; position: absolute; left: 0; top: 0; z-index: 1; }
#main .visual .v02 .videobcg{ display: block; min-height: 100vh; min-width: 100vw; object-fit: fill; position: absolute; left: 50%; top: 0; transform: translate(-50%,0); clip-path: circle(0% at 50% 75%); }

/* clip-path: circle(23% at 50% 75%);*/

#main .visual .v02 .txt1{ display:flex; flex-flow: column; gap: 20px; text-align: center; align-items: center; position: absolute; left: 50%; top: 60%; transform: translate(-50%,0); z-index: 2; }
#main .visual .v02 .txt1 strong{ font-size: 80px; font-weight: 600; color:#FFFFFF; letter-spacing: -0.02em; font-weight: 600; }
#main .visual .v02 .txt1 p{ font-size: 40px; font-weight: 500; color:#FFFFFF; letter-spacing: -0.02em; }

#main .visual .v02 .txt2{ position: absolute; width: 100%; left: 50%; top: 50%; transform: translate(-50%,-50%); z-index: 3; text-align: center; display:flex; gap: 30px; flex-flow: column; opacity: 0; }
#main .visual .v02 .txt2 strong{ font-size: 120px; font-weight: 400; color:#FFFFFF; line-height: 132px; transform: translateY(50px); opacity: 0; }
#main .visual .v02 .txt2 p{ font-size: 24px; font-weight: 300; color:#FFFFFF; transform: translateY(50px); opacity: 0; }
#main .visual .v02 .txt2 p b{ font-weight: 600; }


/* 메인 공통 */
#main .con_w{ display:flex; flex-flow: column; gap: 180px; }
#main .wrap{ padding: 0 120px; max-width: 1920px; margin: 0 auto; }
#main .st01{ font-size: 44px; line-height: 1.4em; font-weight: 400; color:#3E2C1D; letter-spacing: -0.04em; }
#main .p01{ font-size: 32px; line-height: 1.5em; color: #3E2C1D; font-weight: 500; letter-spacing: -0.02em; }

#main .sq{ position: relative; font-weight: 700; line-height: inherit; display: inline-block; }
#main .sq:after{ content:""; display: block; width: calc(100% + 10px); height: 100%; border-radius: 8px; background-color: #0A594B; position: absolute; left: -5px; top: 0; font-size: inherit; font-weight: inherit; color: #fff; font-family: 'Pretendard', sans-serif; line-height: inherit; text-align: center; transition: clip-path .5s; clip-path: polygon(0 0, 0 0, 0 100%, 0% 100%); }

#main .on .sq:after{ clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }


/* con01 */
#main .con01 .wrap{ display:flex; justify-content: space-between; }
#main .con01 .left{ height: 100vh; display:flex; flex-flow: column; justify-content: center; gap: 160px; } 
#main .con01 .list{ display:flex; flex-flow: wrap; width: 1000px; justify-content: space-between; padding: 210px 0; align-items: flex-start; }
#main .con01 .list > div:nth-child(2){ margin-top: 400px; }
#main .con01 .list > div{ display: flex; flex-flow: column; gap: 190px 0; }
#main .con01 .list .img img{ display: block; border-radius: 12px; }
#main .con01 .list .txt p{ font-size: 24px; line-height: 1.5em; color: #82776D; font-weight: 500; letter-spacing: -0.02em; word-break: keep-all; }
#main .con01 .list .txt p b{ color:#0A594B; }
#main .con01 .list > div > div{ display: flex; flex-flow: column; gap: 30px; width: 420px; }
#main .con01 .m_tit{ display: flex; flex-flow: column; gap: 30px; }
#main .con01 .m_tit .st01 .sq:after{ content:"상위 1%"; }

#main .con01 .sc{ width: 128px; position: relative; }
#main .con01 .sc .bg{ position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); animation: cirs 20s linear infinite; }

.sc svg #LINE path {
  fill: none;               /* 채움 제거 */
  stroke: #0a594b;          /* 라인 색 */
  stroke-width: 3;          /* 라인 두께 */
  stroke-linecap: round;    /* 끝 둥글게(선택) */
  vector-effect: non-scaling-stroke; /* SVG 스케일 시 두께 유지(선택) */
}


@keyframes cirs{
	0%{
		transform: translate(-50%,-50%) rotate(0);
	}
	100%{
		transform: translate(-50%,-50%) rotate(360deg);
	}
}

/* con02 */
#main .con02 { position: relative; }
#main .con02 .m_tit .st01 .sq:after{ content:"아끼던 노하우"; }
#main .con02 .c01{ height: 100svh; width: 100%; display: flex; align-items: center; justify-content: center; position: absolute; left: 0; top: 0; z-index: 10; }
#main .con02 .c01 .m_tit{ display:flex; flex-flow: column; align-items: center; text-align: center; gap: 20px; }
#main .con02 .c02 { opacity: 0; transform: translateY(300px); }
#main .con02 .c02 .m_tit{ text-align: center; }
#main .con02 .c02 .txt{ display:flex; flex-flow: column; align-items: center; text-align: center; gap: 40px; }
#main .con02 .c02 .r_list{ margin-top: 60px; position: relative; z-index: 1; }
#main .con02 .c02 .r_list ul{ display: flex; gap: 30px; animation: loops 30s linear infinite; }
#main .con02 .c02 .r_list ul li{ display:flex; gap: 30px; }
#main .con02 .c02 .r_list ul li img{width: 320px}
#main .con02 .c02 .r_list ul li div:nth-child(odd){ transform: translateY(110px); }
#main .con02 .c02 .arrow .bg img{ display:block; max-width: 100%; margin: 0 auto; } 
#main .con02 .c02 .arrow { position: relative; margin-top: -150px; }
#main .con02 .c02 .arrow .dot{ position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); }
#main .con02 .c02 .arrow .dot svg circle{ animation: dots 2s linear infinite; opacity: 0; }
#main .con02 .c02 .arrow .dot svg #타원_3{ animation-delay: .2s; }
#main .con02 .c02 .arrow .dot svg #타원_4{ animation-delay: .4s; }
#main .con02 .c02 .arrow .dot svg #타원_5{ animation-delay: .6s; }
#main .con02 .c02 .txt{ margin-top: -60px; }


#main .con02 .c02 .txt .p01{ opacity: 0; transform: translateY(50px); }


/* con03 */
#main .con03 { margin-top: 150px; }
#main .con03 .wrap > div{ display:flex; justify-content: space-between; flex-flow: row-reverse; padding: 70px 0; border-bottom: 1px solid #D6D0C8; }
#main .con03 .wrap > div:last-child{ border-bottom: 0; }
#main .con03 .wrap > div .img img{  display: block; border-radius: 12px; width: 240px; transform: scale(2); transform-origin: right top; }

/* width: 240px; */

#main .con03 .wrap > div .txt{ display:flex; gap: 60px; padding-left: 0; transform: translateX(200px); opacity: 0; }
#main .con03 .wrap > div .txt .num{ font-size: 120px; font-weight: 400; color:#D8CFC7; }
#main .con03 .wrap > div .txt .txt2{ padding-top: 30px; display:flex; flex-flow: column; gap: 30px; }
#main .con03 .wrap > div .txt .txt2 strong{ font-size: 36px; line-height: 1.3em; font-weight: 500; letter-spacing: -0.04em; color:#3E2C1D; }
#main .con03 .wrap > div .txt .txt2 p{ font-size: 26px; line-height: 1.4em; font-weight: 400; letter-spacing: -0.04em; color:#564D47; }



/* con04 */
#main .con04 .m_tit .st01 .sq:after{ content:"100만을 향한 여정"; }
#main .con04 .y_list{ position: relative; padding-left: 120px; margin-top: 80px; }
#main .con04 .y_list:after{ width: 293px; height: 293px; content:""; display: block; position: absolute; left: -80px; top: 60px; background: url('/img/main/con04_bg.png') center center no-repeat; transform: translateX(-50%); animation: cir 30s linear infinite; }
#main .con04 .y_list ul{ display:flex; gap: 60px 88px; flex-flow: wrap; }
#main .con04 .y_list ul li{ width: calc(50% - 44px); }
#main .con04 .y_list ul li .video iframe{ width: 100%; height: auto; aspect-ratio: 16/9; border-radius: 12px; }
#main .con04 .y_list ul li{ display:flex; flex-flow: column; gap: 30px; }
#main .con04 .y_list ul li .txt { display:flex; flex-flow: column; gap: 20px; }
#main .con04 .y_list ul li .txt strong{ font-size: 24px; letter-spacing: -0.02em; font-weight: 500; color: #3E2C1D; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; display: block; }
#main .con04 .y_list ul li .txt p{ font-size: 18px; line-height: 30px; color:#80746B; letter-spacing: -0.02em; }


/* con05 */
#main .con05{ background-color: #fff; }
#main .con05 .c01{ background: #E9E4DD;
background: linear-gradient(180deg, rgba(233, 228, 221, 1) 0%, rgba(255, 255, 255, 1) 100%); }
#main .con05 .m_tit .st01 .sq:after{ content:"셀프 체크리스트"; }
#main .con05 .m_tit{ display:flex; justify-content: center; text-align: center; }
#main .con05 .c_list{ margin-top: 60px; }
#main .con05 .c_list ul{ display:flex; flex-flow: wrap; gap: 30px; justify-content: center; }
#main .con05 .c_list ul li{ width: calc(20% - 48px); height: 190px; cursor: pointer; border-radius: 8px; border: 2px solid #E3E1DD; background-color: #fff; padding: 30px; padding-bottom: 0; display:flex; flex-flow: column; gap: 12px; transition: border .3s; }
#main .con05 .c_list ul li strong{ font-size: 20px; line-height: 1.5em; color: #787470; font-weight: 500; letter-spacing: -0.02em; word-break: keep-all; transition: color .3s; }
#main .con05 .c_list ul li svg circle{ transition: fill .3s; }

#main .con05 .c_list ul li.on{ border-color: #0A594B; }
#main .con05 .c_list ul li.on strong{ color: #3E2C1D; }
#main .con05 .c_list ul li.on svg circle{ fill: #0A594B; }



#main .con05 .c02{ background: #FFFFFF;
background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(233, 228, 221, 1) 100%); }
#main .con05 .c02 .arrow img{ display: block; margin: 0 auto; }
#main .con05 .c02 .arrow { margin-bottom: 40px; opacity: 0; transform: translateY(-100px);}
#main .con05 .c02 .chk_list{ width: 1440px; margin: 0 auto; display:flex; gap: 50px; opacity: 0; transform: translateY(60px); }
#main .con05 .c02 .chk_list > div{ width: 33.3333333333%; height: 315px; position: relative; border-radius: 12px; background-color: #FFFFFF; cursor: pointer; }
#main .con05 .c02 .chk_list > div:after{ content:""; display: block; width: 1.5px; height: calc(100% - 120px); position: absolute; right: -25px; top: 50%; transform: translate(0,-50%); background: url('/img/main/con05_line.png') center top no-repeat; }
#main .con05 .c02 .chk_list > div:last-child:after{ display: none; }
#main .con05 .c02 .chk_list .question{ display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; flex-flow: column; text-align: center; gap: 16px; }
#main .con05 .c02 .chk_list .question strong{ font-size: 28px; line-height: 38px; color:#3E2C1D; font-weight: 500; letter-spacing: -0.02em; }
#main .con05 .c02 .chk_list .question strong b{ color: #0A594B; }
#main .con05 .c02 .chk_list .question .icon{ display:flex; gap: 8px; }
#main .con05 .c02 .chk_list .answer{ width: 100%; height: 100%; transition: opacity .5s; opacity: 1; display:flex; align-items: center; justify-content: center; text-align: center; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); border-radius: 12px; opacity: 0; }
#main .con05 .c02 .chk_list .answer:after{ content:""; display: block; width: 100%; height: 100%; border-radius: 12px; background-color: #0A594B; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%) scale(.9); transition: transform .5s; }
#main .con05 .c02 .chk_list .answer strong{ font-size: 26px; line-height: 38px; color:#FFFFFF; font-weight: 500; letter-spacing: -0.02em; position: relative ;z-index: 1; }

#main .con05 .c02 .chk_list .answer strong .sq1{ position: relative; font-weight: 700; line-height: inherit; display: inline-block; margin: 0 3px; }
#main .con05 .c02 .chk_list .answer strong .sq1:after{ content:""; display: block; width: calc(100% + 10px); height: 100%; border-radius: 4px; background-color: #fff; position: absolute; left: -5px; top: 0; font-size: inherit; font-weight: inherit; color: #0A594B; font-family: 'Pretendard', sans-serif; line-height: inherit; text-align: center; }

#main .con05 .c02 .chk_list > div:nth-child(1) .answer strong .sq1:after{ content:"신메뉴 교육"; }
#main .con05 .c02 .chk_list > div:nth-child(2) .answer strong .sq1:after{ content:"변화가 필요한 시점"; }
#main .con05 .c02 .chk_list > div:nth-child(3) .answer strong .sq1:after{ content:"업그레이드"; }
#main .con05 .c02 .chk_list > div:hover .answer{ opacity: 1; width: 100%; height: 100%; }

#main .con05 .c02 .chk_list > div:hover .answer:after{ transform: translate(-50%,-50%) scale(1); }

#main .con06 .m_tit{ margin-bottom: 60px; }
#main .con06 .btn_list ul{ display:flex; gap: 30px; }
#main .con06 .btn_list ul li{ width: 50%; }
#main .con06 .btn_list ul li .img{ border-radius: 12px; overflow: hidden; }
#main .con06 .btn_list ul li .img:after{ content:""; display: block; width: 100%; height: 100%; position: absolute; left: 0; top: 0; background: #000000;
background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 100%); opacity: .5; transition: opacity .5s; }
#main .con06 .btn_list ul li .img img{ display: block; width: 100%; transition: transform .5s; }
#main .con06 .btn_list ul li a{ display:block; position: relative; border-radius: 12px; overflow: hidden; }
#main .con06 .btn_list ul li .txt{ position: absolute; left: 0; bottom: 0; padding: 60px; padding-top: 0; z-index: 2;display:flex; flex-flow: column; gap: 15px; }
#main .con06 .btn_list ul li .more{ position: absolute; right: 20px; bottom: 20px; opacity: 0; transition: opacity .5s; }
#main .con06 .btn_list ul li .more .arrow{ position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); }

#main .con06 .btn_list ul li .more .cir_txt svg{ transition: transform .5s; }
#main .con06 .btn_list ul li a:hover .more{ opacity: 1; }
#main .con06 .btn_list ul li a:hover .more .cir_txt svg{ transform: scale(.6) rotate(45deg); }
#main .con06 .btn_list ul li .txt strong{ font-size: 28px; font-weight: 500 ; color: #fff; letter-spacing: -0.04em; }
#main .con06 .btn_list ul li .txt p{ font-size: 20px; font-weight: 300; color:#FFFFFF; }

#main .con06 .btn_list ul li a:hover .img:after{ opacity: .7; }
#main .con06 .btn_list ul li a:hover .img img{ transform: scale(1.1); }

/* con07 */
#main .con07 .m_tit .st01 .sq:after{ content:"한 번의 문의"; }
#main .con07 .m_tit{ display:flex; flex-flow: column; align-items: center; text-align: center; gap: 50px; }
#main .con07 .m_tit p{ font-size: 22px; line-height: 36px; color: #655A50; letter-spacing: -0.02em; }

#main .con07 .c_btn{ display:flex; justify-content: center; position: relative; margin-top: 120px; }
#main .con07 .c_btn a:after{ content:""; display: block; width: calc(100% - 100px); height: calc(100% - 100px); border-radius: 50%; background-color: #0A594B; position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%) scale(0); transition: transform .5s; }
#main .con07 .c_btn a{ position: relative; display: block; position: relative; opacity: 0; transform: scale(.5); transition: opacity 1s, transform 1s; }
#main .con07 .c_btn .txt{ position: absolute; left: 0; top: 5%; width: 100%; height: 50%; display:flex; align-items: center; justify-content: center; flex-flow: column; gap: 12px; z-index: 1; }
#main .con07 .c_btn .cir_txt{ transition: transform .5s; }
#main .con07 .c_btn a:hover .cir_txt{ transform: rotate(45deg); }
#main .con07 .c_btn a:hover:after{ transform: translate(-50%,-50%) scale(1); }

#main .con07 .c_btn .txt strong{ font-size: 22px; font-weight: 700; color: #1A1311; letter-spacing: -0.02em; }
#main .con07 .c_btn a:hover .txt strong{ color: #fff; }
#main .con07 .c_btn a:hover .txt i svg path{ stroke: #fff; }

#footer.main_f{ margin-top: -180px; position: relative; z-index: 1; }

#main .con07.on .c_btn a{ opacity: 1; transform: scale(1); }

@keyframes cir {
	0%{
		transform: translateX(-50%) rotate(0);
	}
	100%{
		transform: translateX(-50%) rotate(360deg);
	}
}


@keyframes loops{
	0%{
		transform: translateX(0);
	}
	100%{
		transform: translateX(-100%);
	}
}

@keyframes sc{
	0%{
		height: 0;
	}
	100%{
		height: 100%;
	}
}


@keyframes dots{
	0%{
		opacity: 0;
	}
	50%{
		opacity: 1;
	}
	100%{
		opacity: 0;
	}
}


@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {

}
@media (max-width: 1850px){
	#main .con05 .c_list ul li strong br{ display: none; }
	#main .con05 .c_list ul li strong{ word-break: keep-all; }
	#main .con05 .c_list ul li { height: auto; padding-bottom: 40px; }
}

@media (max-width: 1640px){
	#main .wrap{ padding: 0 40px; }
	#main .con01 .list{ width: 700px; padding: 120px 0; }
	#main .con01 .list .img img{ width: 100%; }
	#main .con01 .list > div > div{ width: 300px; gap: 20px; }
	#main .con01 .list .txt p{ font-size: 18px; }
	#main .con01 .left{ gap: 60px; }
	#main .st01{ font-size: 34px; }
	#main .con01 .left{ width: 300px; }
	#main .con02 .c01 .m_tit{ gap: 10px; }
	#main .p01{ font-size: 24px; }
	#main .con02 .c02 .txt{ gap: 20px; margin-top: -60px; }
	#main .con02 .c02 .arrow{ margin-top: -100px; }
	#main .con03 .wrap > div .txt .txt2 strong{ font-size: 24px; }
	#main .con03 .wrap > div .txt .txt2 p{ font-size: 20px; }
	#main .con03 .wrap > div .img img{ width: 160px; }
	#main .con05 .c_list ul li{ width: calc(20% - 40px); }
	#main .con05 .c_list ul{ gap: 20px; }
	#main .con05 .c_list ul li strong br{ display: none; }
	#main .con05 .c_list ul li strong{ font-size: 16px; }
	#main .con05 .c_list ul li{ padding: 20px; }
	#main .con05 .c02 .chk_list{ width: 100%; }
}


@media (max-width: 1300px){
	#main .visual .v01 svg{ width: 400px; height: auto; }
	#main .visual .scroll{ bottom: 30px; gap: 6px; }
	#main .visual .scroll strong{ font-size: 14px; }
	#main .visual .v01 .v_txt strong{ font-size: 30px; }
	#main .visual .v01 .v_txt{ height: 45px; }
	#main .visual .v02 .txt1{ gap: 10px; top: 65%; }
	#main .visual .v02 .txt1 strong{ font-size: 50px; }
	#main .visual .v02 .txt1 p{ font-size: 28px; }
	#main .visual .v02 .txt2 strong{ font-size: 80px; line-height: 1.1em; }
	#main .visual .v02 .txt2 p{ font-size: 18px; }
	#main .con01 .m_tit{ gap: 10px; }
	#main .con01 .left{ gap: 40px; }
	#main .con01 .left .sc svg{ width: 80px; height: auto; }
	#main .con02 .c02 .r_list ul li{ gap: 20px; }
	#main .con02 .c02 .r_list ul{ gap: 20px; }
	#main .con02 .c02 .r_list ul li img{ width: 260px; display: block; }
	#main .con03 .wrap > div{ padding: 50px 0; }
	#main .con03 .wrap > div .txt{ gap: 30px; }
	#main .con_w{ gap: 120px; }
	#main .con04 .y_list ul{ gap: 40px 30px;  }
	#main .con04 .y_list ul li{ width: calc(50% - 15px); gap: 20px; }
	#main .con04 .y_list ul li .txt{ gap: 12px; }
	#main .con04 .y_list ul li .txt strong{ font-size: 18px; }
	#main .con04 .y_list ul li .txt p{ font-size: 16px; line-height: 1.4em; }
	#main .con05 .c02 .chk_list .question strong{ font-size: 20px; line-height: 1.4em; }
	#main .con05 .c02 .chk_list .question .icon{ gap: 4px; }
	#main .con05 .c02 .chk_list .question .icon svg{ width: 28px; height: auto; }
	#main .con05 .c02 .chk_list .question{ gap: 10px; }
	#main .con05 .c02 .chk_list .answer strong{ font-size: 20px; line-height: 1.4em; }
	#main .con06 .btn_list ul li .txt{ width: 100%; padding: 40px; padding-top: 0; gap: 10px; }
	#main .con06 .btn_list ul li .txt strong{ font-size: 20px; }
	#main .con06 .btn_list ul li .txt p{ font-size: 16px; }
	#main .con06 .btn_list ul li .more{ right: 10px; bottom: 10px; }
	#main .con07 .m_tit{ gap: 20px; }
	#main .con07 .c_btn{ margin-top: 80px; }
	#main .con07 .m_tit p{ font-size: 18px; line-height: 1.4em; }
	#main .con03 .wrap > div .txt .txt2{ gap: 15px; }
}


@media (max-width: 1150px){
	#main .con01 .list{ width: 500px; padding: 120px 0; }
	#main .con01 .list > div > div{ width: 220px; }
	#main .con01 .list > div:nth-child(2){ margin-top: 200px; }
	#main .con_w{ gap: 100px; }
	#main .con02 .c02 .r_list ul li img{ width: 200px; }
	#main .st01{ font-size: 24px; }
	#main .p01{ font-size: 20px; }
	#main .con02 .c02 .arrow .bg img{ }
	#main .con03 .wrap > div .txt .txt2 p{ font-size: 16px; }
	#main .con03 .wrap > div .txt .txt2 strong{ font-size: 20px; }
	#main .con03 .wrap > div .txt .num{ font-size: 70px; }
	#main .con04 .y_list{ margin-top: 40px; padding-left: 80px; }
	#main .con04 .y_list:after{ width: 180px; height: 180px; background-size: 100% 100%; top: 0; left: -50px; }
	#main .con05 .c_list ul li{ height: auto; }
	#main .con05 .c_list ul li{width: calc(33.3333333% - 20px); }
	#main .con05 .c_list{ margin-top: 30px; }
	#main .con05 .c02 .arrow img{ width: 300px; }
	#main .con05 .c02 .chk_list{ gap: 20px; }
	#main .con05 .c02 .chk_list > div{ height: 240px; }
	#main .con05 .c02 .chk_list > div:after{ right: -10px; }
	#main .con06 .m_tit{ margin-bottom: 30px; }
	#main .con07 .c_btn .txt strong{ font-size: 18px; }
	#main .con07 .c_btn .txt i svg{ width: 6px; height: auto; }
	#main .con07 .c_btn .txt{ gap: 6px; }
	#main .con07 .c_btn .cir_txt img{ width: 280px; }
	#footer.main_f{ margin-top: -140px; }
	#main .con07 .c_btn{ margin-top: 40px; }
	#footer .f_info strong{ margin-bottom: 30px; font-size: 14px; }
	#footer .f_nav ul li a{ font-size: 14px; }
	#footer .wraps{ padding-top: 60px; }
	#footer .f_nav{ top: 60px; }
	#footer .f_info ul li{ gap: 8px; }
	#footer .f_info ul{ gap: 20px; flex-flow: column; }
	#footer .f_info ul li em{ font-size: 14px; }
	#footer .f_info ul li p{ font-size: 14px; }
	#footer .f_info .copy{ margin-top: 30px; font-size: 14px; }
	#footer .sns ul{ gap: 12px; }
	#footer .sns{ position: static; margin-top: 20px; }
	#footer{ padding-bottom: 60px; }
}


@media (max-width: 980px){
	#header{ height: 60px; }
	#header h1 a svg{ height: 18px; width: auto; }
	#main .visual .v01 .v_txt strong{ font-size: 22px; line-height: 45px; }
	#main .visual .v02 .txt1 p{ font-size: 20px; }
	#main .visual .v02 .txt1 strong{ font-size: 40px; }
	#main .visual .v02 .txt2 strong{ font-size: 50px; }
	#main .visual .v02 .txt2 p{ font-size: 16px; }
	#main .visual .v02 .txt2{ gap: 20px; }
	#main .visual .v01 svg{ width: 280px; }
	#main .con02 .c02 .r_list{ margin-top: 20px; }
	#main .con02 .c02 .arrow{ margin-top: -50px; }
	#main .con02 .c02 .txt{ gap: 10px; }
	#main .p01{ font-size: 16px; }
	#main .con02 .c02 .arrow .dot svg{ width: 3px; height: auto; }
	#main .wrap{ padding: 0 20px; }
	#main .con05 .c_list ul li{ gap: 8px; }
	#main .con05 .c_list ul li strong{ font-size: 14px; }
	#main .con05 .c_list ul li svg{ width: 20px; height: auto; }
	#main .con05 .c_list ul{ gap: 12px; }
	#main .con05 .c_list ul li{ width: calc(33.3333333% - 8px); }
	#main .con05 .c02 .chk_list { flex-flow: column; align-items: center; }
	#main .con05 .c02 .chk_list > div{ width: calc(100% - 100px); height: 180px; }
	#main .con05 .c02 .chk_list .answer strong{ font-size: 16px; }
	#main .con05 .c02 .chk_list .question strong{ font-size: 16px; }
	#main .con05 .c02 .chk_list .question .icon svg{ width: 20px; }
	#main .con06 .btn_list ul{ gap: 20px; flex-flow: column; }
	#main .con06 .btn_list ul li{ width: 100%; }
}



@media (max-width: 800px){
	#main .visual .v01 .v_txt strong{ font-size: 18px; }
	#main .visual .v02 .txt2 strong{ font-size: 30px; }
	#main .visual .v02 .txt2 p{ font-size: 14px; }
	#main .st01{ font-size: 18px; word-break: keep-all; }
	#main .con02 .c01 .m_tit{ gap: 5px; }
	#main .con01 .left .sc{ display: none; }
	#main .con01 .wrap{ flex-flow: column; }
	#main .con01 .left{ height: auto; }
	#main .con01{ padding-top: 60px; }
	#main .con01 .left{ width: 100%; }
	#main .con01 .list{ padding: 0; margin-top: 30px; }
	#main .con01 .list{ width: 100%; }
	#main .con01 .list > div > div{ width: calc(50% - 25px); gap: 10px; }
	#main .con01 .list > div > div:nth-child(2){ margin-top: 50px; }
	#main .con01 .list > div{ gap: 0; flex-flow: row; justify-content: space-between; }
	#main .con01 .list > div:nth-child(2){ margin-top: 50px; }
	#main .con01 .list .txt p{font-size: 14px; }
	#main .con02 .c02 .txt{ margin-top: -20px; }
	#main .con03 .wrap > div{ flex-flow: column-reverse; }
	#main .con03 .wrap > div .img img{ width:100%; transform: scale(1); }
	#main .con03 .wrap > div .txt{ padding-left: 30px; }
	#main .con03 .wrap > div .txt{ flex-flow: column; gap: 10px; margin-bottom: 20px; }
	#main .con03 .wrap > div .txt .txt2{ padding-top: 0; }
	#main .con03 .wrap > div .txt .txt2 strong{ font-size: 18px; }
	#main .con03 .wrap > div .txt .txt2 p{ font-size: 14px; word-break: keep-all; }
	#main .con03 .wrap > div{ padding: 30px 0; }
	#main .con03 .wrap > div .txt .num{ font-size: 40px; }
	#main .con03 .wrap > div .txt .txt2{ gap: 8px; }
	#main .con_w{ gap: 60px; }
	#main .con04 .y_list ul{ flex-flow: column; gap: 30px; }
	#main .con04 .y_list ul li{ width: 100%; gap: 10px; }
	#main .con04 .y_list ul li .txt strong{ font-size: 16px; }
	#main .con04 .y_list ul li .txt p{ font-size: 14px; }
	#main .con04 .y_list ul li .txt{ gap: 6px; }
	#main .con05 .c_list ul li{ width: calc(50% - 6px); }
	#main .con06 .btn_list ul li .more{ display: none; }
	#main .con07 .m_tit p{ font-size: 14px; }
	#main .con02 .c01 .m_tit{ padding: 0 20px; }
	
}

@media (max-width: 540px){
	#header h1 a svg{ height: 13px; }
	#main .con01 .list > div > div{ width: calc(50% - 10px); }
	#main .con01 .list .txt p br{ display: none; }
	#main .con02 .c02 .r_list ul li img{ width: 140px; }
	#main .p01{ padding: 0 20px; word-break: keep-all; font-size: 14px; }
}

@media (max-width: 414px){
	#main .visual .v01 .v_txt strong{ font-size: 16px; }
}

@media (max-width: 300px){

}
