/* Mobile First CSS */
/* default - °¡·Î ÇØ»óµµ°¡ 768px ÀÌÇÏ */
	html{
		font-size: 0.7rem;
	}

	nav,
	.loginBox,
	.fullMenuBg {
		display: none; /* ±âº»ÀûÀ¸·Î ¼û±è */
	}

	.logoBox {
		width: 100%;
		max-width: 130px;
	}

	.logoBox img{
		max-inline-size: 100%;
		block-size: auto;
		object-fit: contain;
	}

	.menuToggle {
		display: block;
		cursor: pointer;
		position: relative;
		z-index: 999;
		/* ÇÜ¹ö°Å ¸Þ´º ¾ÆÀÌÄÜ ½ºÅ¸ÀÏ¸µ */
	}

	.menuToggle .bar {
		display: block;
		width: 25px;
		height: 3px;
		background-color: #333;
		margin: 5px 0;
		transition: transform 0.3s ease-in-out;
	}

	.mobileMenu {
		background: var(--orange);
		color: #fff;
		border-top: 1px solid #ddd;
		position: fixed;
		top: 100px;
		right: -100%;
		width: 100%;
		height: 100%;
		z-index: 1000;
		overflow: auto;
		text-align: right;
		transition: right 0.3s ease-in-out;
	}

	.mobileMenu.open {
		display: block;
		right: 0; /* ¿ÞÂÊÀ¸·Î ½½¶óÀÌµù */
	}

	/* 'X' ¸ð¾çÀ¸·Î º¯°æ ½Ã */
	.menuToggle.open .bar:nth-child(1) {
		transform: rotate(45deg) translate(5px, 5px);
		position: absolute;
	}

	.menuToggle.open .bar:nth-child(2) {
		opacity: 0;
	}

	.menuToggle.open .bar:nth-child(3) {
		transform: rotate(-45deg) translate(5px, -5px);
		position: absolute;
	}

	.mobileDepth1 > a{
		font-size: var(--title-s);
		font-weight: 700;
		width: 100px;
	}

	.mobileDepth2 li{
		font-size: var(--text-m);
	}

	.mobileLoginBox{
		margin: 10px auto;
	}

	.mobileDepth1Area{
		width: 100%;
		text-align: left;
		display: flex;
		flex-direction: column;
	}

	.mobileDepth1{
		width: 65%;
		margin: 5px auto;
		display: flex;
		align-items: flex-start;
		justify-content: flex-start;
		gap: 20px;
		position: relative;
		border-bottom:1px solid #fff;
		padding-bottom: 10px;
	}

	.mobileDepth1:last-of-type{
		border-bottom: none;
	}


	.mobileLoginBox{
		display: inline-block;
		background: #fff;
		padding: 5px 10px;
		color: var(--orange);
		border-radius: 30px;
		font-size: var(--text-m);
		margin: 15px;
	}

	.footerInner{
		padding: 20px;
		flex-direction: column;
		gap: 10px;
		text-align: center;
		align-items: center;
		justiy-content: center;
	}

	.footerInner .leftBox{
		max-width: 100px;
	}

	.leftBox img{
		max-inline-size: 100%;
		block-size: auto;
		object-fit: contain;
	}

	.textM{
		font-size: var(--text-m);
		margin-bottom: 1rem;
	}

	.companyInfo{
		margin-bottom: 0.5rem;
	}

	#videoWrapPc{
		height: 100%;
		margin-top: 100px;
	}

	.videoWrapInner{
		height: 100%;
		margin-top: 120px;
		overflow: visible;
	}

	.secInner{
		margin: 0 auto;
		width: 100%;
		padding: 20px;
	}

	.split{
		font-size: var(--title-m);
	}

	.TxtWrap{
		margin-top: 3rem;
	}

	.cricleBox{
		flex-direction: column;
		height: 100%;
		overflow: visible;
		align-items: center;
		gap: 20px;
	}

	.circleItem{
		width: 300px;
		height: 300px;
		position: relative;
    top: 0%;
    left: 0%;
    transform: none;
	}

	.circleItem::after {
		width: 240px;
		height: 240px;
	}

	.circleItem .engFont{
		font-size: var(--title-s);
	}

	.circleItem .desFont{
		font-size: var(--text-m);
	}

	#dumImg{
		width: 150px;
	}

	.textStyle{
		font-size: var(--text-l);
	}

	.section2 .secTitle{
		padding: 20px;
	}

	.section2 .secTitle .engFont{
		font-size: var(--title-l);
	}

	.section2 .cards{
		flex-direction: column;
		position: relative;
		left: 0%;
    top: 0%;
		transform: none;
		width: 80%;
		margin: 2rem auto;
	}

	.section2 .cards .card{
		width: 100%;
	}

	.section3 .secInner{
		flex-direction: column;
	}

	.section3 .secTitle .engFont{
		font-size: var(--title-xl);
		text-align: center;
	}

	.section3 .listBox{
		width: 100%;
		margin: 2rem auto;
	}

	.section3 .listBox .listItem{
		flex-direction: column;
	}

	.subPage .visualWrap{
		margin-top: 100px;
	}

	.subPage .visualWrap{
		font-size: var(--title-xl);
	}

	#aboutUs1 .secItems{
		flex-direction: column;
	}

	#aboutUs1 .secItems .leftItems{
		width: 100%;
	}

	#aboutUs1 .secItems .leftItems .secItem{
		height: 170px;
	}

	#aboutUs1 .secItems .leftItems .titleDeco{
		width: 60px;
	}

	#aboutUs1 .secItems .secItem .txtP{
		font-size: var(--text-l);
	}

	#aboutUs1 .secItems .secItemRight{
		width: 100%;
	}

	#aboutUs1 .secItems .secItemRight h4{
		font-size: var(--title-l);
	}

	#aboutUs2{
		padding: 20px;
	}

	#aboutUs2 p{
		font-size: var(--text-s);
	}

	#aboutUs3 .secItems .secItem{
		width: 100%;
		height: 150px;
	}

	.subPage#business .secItems .secItemRight .videoBox{
		position: relative;
	}

	.subPage h4{
		font-size: var(--title-l);
	}

	.subPage#business #aboutUs2 .secItem{
		flex-direction: column;
		gap: 50px;
	}


	.subPage#business #aboutUs2 .secItem .listItem{
		width: 100%;
		gap: 20px;
	}

	.subPage#business #aboutUs2 .secItem .listItem img{
		height: 100px;
	}

	.subPage#business #aboutUs2 .secItem .listItem p{
		font-size: var(--text-l);
	}

	.subPage#business #aboutUs2 .secItem .listItem:not(:last-child)::after {
		width: 0px;
	}

	.subPage#business #aboutUs3{
		flex-direction: column;
	}

	.subPage#business #aboutUs3 .TitleWrap{
		width: 100%;
	}

	.subPage#business #aboutUs3 .TitleWrap p{
		font-size: var(--text-m);
	}

	.subPage#business #aboutUs3 .cardWrap{
		width: 100%;
		flex-direction: row;
	}

	.subPage#business #aboutUs3 .cardBox.cardBoxLeft .cardBody{
		min-height: 100px;
	}

	#work #aboutUs2 .engFont{
		font-size: var(--title-l);
	}

	#work .secItems > p{
		padding: 15px;
	}

	#work #aboutUs2 .secItemCon{
		flex-direction: column;
	}

	#work #aboutUs2 .secItemCon .txtBox{
		text-align: center;
		width: 100%;
	}

	#work #aboutUs2 .secItemCon img{
		width: 100%;
	}

	#work #aboutUs2 .secItemCon:nth-child(odd) .txtBox{
		text-align: center;
	}

	#work #aboutUs2 .secItemCon .txtBox .txtBoxP{
		font-size: var(--text-s);
	}

	#aboutUs #aboutUs4{
		flex-direction: column;
		padding: 10px;
		gap: 10px;
	}

	#container{
		width: 100%;
	}

	#work #aboutUs1 .secItems{
		padding: 20px;
		gap: 20px;
	}

	#work #aboutUs1 .leftItems{
		width: 100%;
	}

	#work #aboutUs1 h4{
		font-size: var(--title-s);
		text-align: center;
	}

	#work #aboutUs1 h4 span{
		font-size: 30px;
	}

	#work #aboutUs1 .leftItems p{
		font-size: var(--text-s);
		text-align: center;
	}

	#work #aboutUs1 .leftItems{
		gap: 20px;
	}

	#work #aboutUs1 .leftItem{
		gap: 20px;
		flex-direction: column;
	}

	#work #aboutUs1 .videoWrapLeft, #work #aboutUs1 .videoWrapCenter, #work #aboutUs1 .videoWrapRight{
		gap: 20px;
	}

	#work #aboutUs1 .rightItems{
		width: 100%;
	}

	#work #aboutUs1 .videoWrapLeft{
		width: 100%;
	}

	#work #aboutUs1 .videoWrapCenter{
		width: 100%;
	}

/* °¡·Î ÇØ»óµµ°¡ 768px ÀÌ»ó */
@media(min-width: 768px){
	html{
		font-size: 0.8rem;
	}

	.mobileMenu, .menuToggle, .fullMenuBg{
		display: none;
	}

	nav, .loginBox{
		display: block;
	}

	.footerInner{
		flex-direction: row;
		text-align: left;
		gap: 60px;
	}

	.footerInner .leftBox{
		max-width: 180px;
		align-self: flex-start;
	}

	.footerInner .rightBox{
		
	}

	.copyright{
		font-size: 0.7rem;
	}

}

/* °¡·Î ÇØ»óµµ°¡ 1024px ÀÌ»ó*/
@media (min-width: 1024px) {
	html{
		font-size: 0.9rem;
	}

	.loginBox, .depth1Area{
		display: flex;
	}

	.footerInner{
		gap: 100px;
	}
}

/* °¡·Î ÇØ»óµµ°¡ 1280px ÀÌ»ó*/
@media (min-width: 1280px) {
	html{
		font-size: 1rem;
	}

	.logoBox {
		width: 100%;
		max-width: 200px;
	}

	.box { 
		width: 100px;
		height: 100px;
		background-color: orange;
	}

	.footerInner{
		padding: 50px 20px;
	}

	.dsIb{
		display: inline-block;
	}

	#videoWrapPc{
    padding: 0;
    margin: 0;
    width: 100%;
    height: 100vh;
    overflow: hidden;		
	}

	.videoWrapInner{
    height: 100vh;
    position: relative;
    overflow: hidden;
		margin-top: 0px;
	}

	#videoPc{
		width: 100vw;
    position: relative;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
	}

	.section1{
		text-align: center;
	}

	.secInner{
		margin: 7rem auto;
		max-width: 1600px;
	}

	.split{
		font-size: var(--title-xl);
		font-weight: 700;
	}

	.TxtWrap{
		margin-top: 7rem;
	}

	.cricleBox{
		width: 100%;
		height: 75vh;
		justify-content: space-around;
		position: relative;
	}

	.circleItem{
		padding: 30px;
		width: 600px;
		height: 600px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 1rem;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}

	.circleItem:hover::after{
		background: #fff;
	}

	.circleItem:hover p{
		color: var(--black);
		z-index: 2;
		transform: scale(1.07);
		transition: transform 0.4s ease-in-out;
	}

	.circleItem:hover .desFont{
		color: #A9A9A9;
	}

	.circleItem::after{
		content: ''; /* °¡»ó ¿ä¼Ò¿¡ ³»¿ëÀ» Ãß°¡ÇÏÁö ¾ÊÀ½ */
		position: absolute;
		width: 500px; /* ¿øÀÇ Áö¸§ ¼³Á¤ */
		height: 500px; /* ¿øÀÇ Áö¸§ ¼³Á¤ */
		border: 1px solid #fff; /* ¼±ÀÇ µÎ²²¿Í »ö»ó ¼³Á¤ */
		border-radius: 50%; /* ¿øÇüÀ¸·Î ¸¸µé±â À§ÇØ */
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%); /* Áß¾Ó¿¡ ¹èÄ¡ */
		z-index: 1; /* ¿øÇü ¼±ÀÌ ´Ù¸¥ ³»¿ë À§¿¡ ³ªÅ¸³ªµµ·Ï ¼³Á¤ */
	}

	.circleItemLeft{
		z-index: 11;
	}

	.circleItem .engFont{
		font-size: var(--title-xl);
	}

	.circleItem .desFont{
		font-size: var(--title-s);
		line-height: 1.2;
		font-weight: 500;
		color: #A9A9A9;
	}

	.firstCircleBox{
		position: relative;
	}

	.squareBox{
		margin-top: 3rem;
		position: relative;
		overflow: hidden;
	}

	.squareItemText{
		text-align: left;
		display: flex;
		flex-direction: column;
		gap: 10px;
	}

	.textStyle{
		font-size: var(--title-xl);
		font-weight: 700;
		text-wrap: nowrap;
	}

	.textStyle span{
		color: #A9A9A9;
	}

	.squareItemImg{
		width: 25%;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
	}

	.squareItem img{
		width: 100%;
		object-fit: contain;
	}

	.comparisonSection {
		position: relative;
		padding-bottom: 56.25%; /* to maintain aspect ratio (responsive!) */
		overflow-x: hidden;
	}

	.comparisonImage {
		width: 100%;
		height: 100%;
	}

	.afterImage {
		position: absolute;
		overflow: hidden;
		top: 0;
	}

	.afterImage > div {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
	}

	.comparisonImage > div {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		background: white;
		gap: 10px;
	}

	#dumImg{
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		width: 350px;
		z-index: 5;
	}

	#grayColor{
		color: #d9d9d9;
    -webkit-text-stroke: none; /* ¿Ü°û¼±À» Á¦°Å */
    text-shadow: none; /* ÅØ½ºÆ® ±×¸²ÀÚ Á¦°Å */
	}

	#blackColor{
		color: #000;
    -webkit-text-stroke: none; /* ¿Ü°û¼±À» Á¦°Å */
    text-shadow: none; /* ÅØ½ºÆ® ±×¸²ÀÚ Á¦°Å */
	}

	.section2{
		position: relative;
		min-height: 95vh;
		margin-bottom: 10rem;
	}

	.section2 .secTitle{
		width: 100%;
		display: flex;
		justify-content: space-between;
		font-weight: 900;
		padding: 0;
	}

	.section2 .secTitle .engFont{
		font-size: 180px;
		color: white;
	}

	.section2 .cards{
		flex-direction: row;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		display: flex;
		justify-content: center;
		width: 80%;
		gap: 30px;
		margin: 0;
	}

	.section2 .cards .card{
		flex-direction: row;
		max-width: 400px;
		width: 19%;
    min-height: 350px;
    text-align: center;
		color: var(--black);
		border-radius: 15px;
		display: flex;
		flex-direction: column;
		overflow: hidden;
		background: linear-gradient(rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.95));
		box-shadow: 0 0 10px rgba(255, 255, 255, 0.4);
		-webkit-backdrop-filter: blur(20px);
    backdrop-filter: blur(20px);
	}

	.section2 .cards .card-img{
		width: 105%;
		height: 50%;
		overflow: hidden;
	}

	.section2 .cards .card-img img{
		width: 100%;
		object-fit: cover;
	}

	.section2 .cards .card-title{
    font-size: var(--text-m);
		padding: 15px;
		font-weight: 500;
	}

	.section2 .cards .card-contents{
		font-size: var(--title-xl);
    flex-grow: 1; /* ³²Àº °ø°£À» Â÷ÁöÇÏµµ·Ï ¼³Á¤ */
    display: flex; /* Flexbox »ç¿ë */
    justify-content: center; /* °¡·Î Áß¾Ó Á¤·Ä */
    align-items: center; /* ¼¼·Î Áß¾Ó Á¤·Ä */
	}

	.section3 .secInner{
		display: flex;
		justify-content: space-between;
		align-items: center;
		flex-direction: row;
		padding: 0;
	}

	.section3 .secTitle .engFont{
		font-size: 180px;
		text-align: left;
	}

	.section3 .listBox{
		width: 44%;
		margin-top: 0;
		display: flex;
		flex-direction: column;
		gap: 15px;
	}

	.section3 .listBox .listItem{
		display: flex;
		padding: 5px 10px;
		justify-content: center;
		border: 1px solid black;
		border-radius: 10px;
		align-items: center;
		flex-direction: row;
	}

	.section3 .listBox .listItem:nth-child(odd){
		color: white;
		background: black;
	}

	.section3 .listBox .listItem strong{
		font-size: var(--text-l);
	}

	.section3 .listBox .listItem p{
		font-size: var(--text-s);
	}

	#aboutUs1 .secItems{
		flex-direction: row;
	}

	#aboutUs3 .secItems .secItem{
		width: 32.05%;
		height: 300px;
		border-radius: 15px;
		background-repeat: no-repeat;
		background-size: contain;
		background-position: right center;
		background-color: #fff;
		border: 1px solid #111;
		overflow: hidden;
		position: relative;
	}

	#aboutUs1 .secItems .secItemRight h4{
		font-size: 70px;
	}

	#aboutUs2{
		padding: 50px;
	}

	#aboutUs2 p{
		font-size: var(--text-l);
		font-weight: 500;
	}

	.subPage#business #aboutUs2 .secItem{
		flex-direction: row;
		gap: 0;
	}

	.subPage#business #aboutUs2 .secItem .listItem img{
		height: 150px;
	}

	.subPage#business #aboutUs2 .secItem .listItem:not(:last-child)::after{
		width: 1px;
	}

	.subPage#business #aboutUs3{
		flex-direction: row;
		background: #111;
		border: 1px solid #111;
		border-radius: 15px;
		display: flex;
		align-items: center;
	}

	.subPage h4{
		font-size: 70px;
	}

	.subPage#business #aboutUs3 .TitleWrap{
		width: 39%;
	}

	.subPage#business #aboutUs3 .TitleWrap p{
		font-size: var(--text-l);
	}

	.subPage#business #aboutUs3 .cardWrap{
		width: 61%;
	}

	.subPage#business #aboutUs3 .cardBox.cardBoxLeft .cardBody{
		min-height: 200px;
	}

		#work #aboutUs2 .secItemCon{
		flex-direction: row;
	}

	#work #aboutUs2 .secItemCon .txtBox{
		width: 45%;
	}

	#work #aboutUs2 .secItemCon .txtBox{
		text-align: right;

	}

	#work #aboutUs2 .secItemCon img{
		width: 55%;
	}

	#work #aboutUs2 .secItemCon:nth-child(odd) .txtBox{
		text-align: left;
	}

	#work #aboutUs2 .secItemCon .txtBox .txtBoxP{
		font-size: var(--text-m);
	}

	#work #aboutUs2 .engFont{
		font-size: var(--title-xl);
	}

	#aboutUs1 .secItems .leftItems .titleDeco{
		width: 120px;
	}

	#aboutUs1 .secItems .leftItems .secItem{
		height: 270px;
	}

	.subPage#work .visualWrap{
		margin-top: 0;
	}

	.subPage .visualWrap{
		margin-top: 0;
	}
		#aboutUs #aboutUs4{
		width: 100%;
		border-radius: 15px;
		background: #111;
		padding: 50px;
		display: flex;
		color: white;
		justify-content: space-around;
		align-items: center;
		flex-direction: row;
	}

	#aboutUs #aboutUs4 p{
		font-size: var(--text-m);
		margin-top: 1rem;
	}

	#container {
		overflow:hidden;
		width: 60%;
		height: 400px;
		position:relative;
		border-radius: 15px;
	}

	#work #aboutUs1 .secItems{
		padding: 50px;
	}

	#work #aboutUs1 .leftItems{
		width: 73%;
	}

	#work #aboutUs1 h4{
		font-size: var(--title-xl);
		text-align: left;
	}

	#work #aboutUs1 h4 span{
		font-size: 110px;
	}

	#work #aboutUs1 .leftItems p{
		font-size: var(--text-m);
		text-align: left;
	}

	#work #aboutUs1 .videoItemTitle h4{
		text-align: center;
	}

	#work #aboutUs1 .leftItems{
		gap: 50px;
	}

	#work #aboutUs1 .leftItem{
		gap: 50px;
		flex-direction: row;
	}

	#work #aboutUs1 .videoWrapLeft, #work #aboutUs1 .videoWrapCenter, #work #aboutUs1 .videoWrapRight{
		gap: 50px;
	}

	#work #aboutUs1 .secItems{
		gap: 50px;
	}

	#work #aboutUs1 .rightItems{
		width: 27%;
	}

	#work #aboutUs1 .videoWrapLeft{
		width: 36%;
	}
	#work #aboutUs1 .videoWrapCenter{
		width: 64%;
	}

}