/* 사이즈 공통 시작 */

.fontBlue {
    color: #0095ff;
}

.fontOrange {
    color: #E74C3C;
}

.fontWeightBold {
    font-weight: bold;
}

/* 사이즈 공통 끝 */


td img {
    max-width: 100%;
    height: auto;
    display: block;
}


.tdYear {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.spanMonth {
    color: #ff5a00;
    /*display: inline-block;*/
    font-weight: 700;
    border: 0.15rem solid #ff5a00;
    border-radius: 0.8rem;
    padding: 0.1rem;
}


.rounded-box1 {
    width: 90%;
    border: 2px solid #ddd; /* 테두리 색상 */
    border-radius: 15px; /* 둥근 테두리 */
    padding: 20px; /* 내부 여백 */
    background-color: #f9f9f9; /* 배경색 (선택 사항) */
}

.rounded-box1_1 {
    border: 2px solid #00dc10;
    border-radius: 15px; /* 둥근 테두리 */
    padding: 20px; /* 내부 여백 */
    background-color: white; /* 배경색 (선택 사항) */

    transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out; /* 마우스 오버시 효과 1/2 */
}

.rounded-box1_1:hover { /* 마우스 오버시 효과 2/2 */
transform: scale(1.05);
box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.15);
}


.rounded-box {
    border: 2px solid #ddd; /* 테두리 색상 */
    border-radius: 15px; /* 둥근 테두리 */
    padding: 20px; /* 내부 여백 */
    background-color: #f9f9f9; /* 배경색 (선택 사항) */
    height: 81vh;
}


#bodyDiv{
    width: 100%;
    height: 100vh;
}

#tab1, #tab2, #tab3, #tab4{
    display: block;
    overflow: hidden;
}




.topMenu{
    width: 100%;
    height: 50px;
    display: flex;
    align-items: bottom;
    position: fixed;
    top: 0;
    left: 50px;
    background-color:rgba(255, 255, 255, 0.8);
    white-space: nowrap;
    z-index: 999;
}

.topMenu a {
    margin-left: 3rem;
    text-decoration: none;
    color: black;
    font-size: 30px;
    font-weight: 600;
}

.topMenu.hidden { /* 숨길 때 위로 이동 */
    transform: translateY(-100%);
}

.topMenuTab {
    text-decoration: none;
    font-size: 16px;
    color: black;
    transition: transform 0.2s, color 0.2s; /* 크기와 색상 변경에 애니메이션 효과 추가 */
}

.topMenuTab:hover {
    transform: scale(1.2);
    color: #ff5733;
}

.logo {
    transition: transform 0.2s;
}

.logo:hover {
    transform: scale(1.1);
}



.moveText {
    display: inline-flex;
    align-items: center;
    gap: 5px; /* 요소 간 간격 */
    position: relative;
}
.moveText:hover {
    /* 전체 이동 효과를 개별적으로 설정하므로 여기는 비어 둠 */
}
.moveText .plus,
.moveText .text {
    transition: transform 0.5s ease, opacity 0.5s ease; /* 이동과 투명도 변화 */
}

.moveText .plus.left {
    opacity: 1; /* 초기 상태에서 보임 */
    transform: translateX(0);
}
.moveText:hover .plus.left {
    opacity: 0; /* 마우스 올리면 사라짐 */
    transform: translateX(-20px); /* 왼쪽으로 이동 */
}

.moveText .text {
    opacity: 1; /* 초기 상태에서 보임 */
    transform: translateX(0);
    transition-delay: 0.1s; /* 약간의 딜레이 */
}
.moveText:hover .text {
    transform: translateX(-20px); /* 왼쪽으로 이동 */
}

.moveText .plus.right {
    position: absolute;
    right: -20px; /* 오른쪽에 배치 */
    opacity: 0; /* 초기 상태에서 안 보임 */
    transform: translateX(0);
    transition-delay: 0.2s; /* 더 긴 딜레이 */
}
.moveText:hover .plus.right {
    opacity: 1; /* 마우스 올리면 나타남 */
    transform: translateX(-20px); /* 위치 이동 */
}




.swiper {
    position: absolute !important;
    /* top:40%; */
    top: 340px;
    right:0;
    transform: translate(0, -50%);
    max-width: 960px;
    max-height: 660px;
}

.swiper-slide {
    text-align: center;
    font-size: 18px;

    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

.swiper-slide img {
    display: block;
    margin-left: auto;
    margin-right: 100px;
    height: 350px;
    object-fit: cover;
}




.fade {
    position: relative;
    left: 500px;
    opacity: 0;
    transition: left 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.5s linear;
 }
.fadeIn {
	transition: left 0.5s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.5s linear;
	left: 100px;
	opacity: 1;
	margin-top: 150px;
	z-index: 99;
}

.mobileTab1P {
    font-size: 1.2rem;
    max-width: 83%;
}



.tab2Table1 {
    text-shadow: 
      1px 1px 2px rgba(0, 0, 0, 0.5), 
     -1px -1px 2px rgba(0, 0, 0, 0.5), 
      2px 2px 2px rgba(0, 0, 0, 0.5), 
     -2px -2px 2px rgba(0, 0, 0, 0.5), 
      2px -2px 2px rgba(0, 0, 0, 0.5), 
     -2px 2px 2px rgba(0, 0, 0, 0.5);
}

.tab2Table2 {
	width: 50%;
}

.tab2Img1 {
	width: 70px;
	right: 50px;
}

.tab2Img2 {
	width: 120px;
}

.tab2Div1 {
	position: absolute !important;
	top: 200px;
	right: 200px;
	transform: translate(0, -50%);
	z-index: -999;
}

.tab2Img3 {
	width: 400px;
}

.tab4Img1 {
    position: relative;
    display: inline-block;
    border-radius: 5px;
    width: 100%;
    height: 0;
    background-size: contain;
    background-repeat: no-repeat;
    padding-bottom: 56.25%;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); /* 그림자 효과 */
}

.tab4Img1::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* background: linear-gradient(to right, white 10%, rgba(255, 255, 255, 0)); */
    background: linear-gradient(to right, white, rgba(255, 255, 255, 0));
    border-radius: 5px;
}





.gradation {
    background: linear-gradient(45deg, red, blue); /* 45도 방향으로 빨강에서 파랑으로 */
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-size: 40px;
    font-weight: 900;
    transition: transform 0.5s ease, opacity 0.5s ease; /* 이동과 투명도 변화 */
}



/*.moveText .text {
    opacity: 1;
    transform: translateX(0);
    transition-delay: 0.1s;
}*/
.gradation:hover {
    transform: translateX(20px); /* 왼쪽으로 이동 */
}




/* 250221. 제품 슬라이드 */

.product-container {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.product-slider {
    display: flex;
    transition: transform 0.5s ease-in-out;
    width: 700%; /* 7개 아이템이므로 100% * 7 */
}

.product {
    flex: 0 0 5%;
    box-sizing: border-box;
    padding: 20px;
    text-align: left;
    cursor: pointer;
}

.rounded-box4 {
    /*border: 1px solid #ddd;*/
    border: 1px solid #E74C3C;
    border-radius: 10px;
    padding: 20px;
    background-color: #f9f9f9;
    transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out; /* 마우스 오버시 효과 1/2 */
}

.rounded-box4:hover { /* 마우스 오버시 효과 2/2 */
    transform: scale(1.05);
    box-shadow: 0px 10px 20px rgba(119, 131, 243, 0.15);
    background-color: #e0e0e0;
}

.rounded-box4-title {
    border: 1px solid #ffe8c9;
    border-radius: 20px;
    padding: 5px;
    background-color: #ffe8c9;
}

.nav-button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    padding: 10px 15px;
    cursor: pointer;
    z-index: 999;
}

.prev { left: 10px; }
.next { right: 10px; }