/*
@sitemap title: 메인페이지 스타일시트
@sitemap desc: 메인페이지 스타일코드 입니다
@sitemap url: /css/home.css
@sitemap access: 관리자
*/
main {
    width: 1200px;
    height: auto;
    padding: 0;
	margin:20px auto 0;
}

.main-top {
    height: 200px;
    width: 100%;
    display: flex;
    justify-content: left;
    gap: 20px;
}

.main-top .top-slider {
    width: 880px;
    height: 200px;
    border: 1px solid #cce7f6;
    border-radius: 10px;
    background: #fff;
}

.main-top .login-form {
	box-sizing:border-box;
    width: 380px;
    height: 200px;
    border: 1px solid #cce7f6;
    padding: 10px;
    border-radius: 10px;
    background: #eaf6fb;
    overflow: hidden;
}

.middle-content {
    margin-top: 30px;
    width: 100%;
    height: 230px;
    border-radius: 10px;
	display:flex;
	flex-direction:row;
	gap:40px;
}

.bottom-content {
    margin-top: 30px;
    width: 100%;
    height: 500px;
    border: 1px solid #cce7f6;
    border-radius: 10px;
    background: #fff;
}
/*---------------------------------------------------*/
/*-------------------로그인 스타일------------------------*/
/*---------------------------------------------------*/
.before-login {
    flex-direction: column !important;
	padding:0;
}

.login-menu ul {
    margin: 20px 0 0;
    display: flex;
    gap: 10px;
    flex-direction: column;
    justify-content: center;
    flex-wrap: wrap;
	padding:0;
}

.login-menu .point i {
    font-size: 40px;
    color: #999;
    border: 2px solid #99d3ec;
    border-radius: 50%;
    margin: 5px;
}

.login-menu .point {
    font-size: 13px;
    text-align: right;
    padding: 0 15px;
}

.login-menu .point span {
    display: block;
    background: #fff;
    padding: 5px 10px;
    border-radius: 5px;
    color: #000;
	font-size:13px;
	width:250px;
    border: 1px solid #cce7f6;
}

.point {
    display: flex;
    justify-content: center;
    gap: 10px;
}

.point .profile-pic {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
    border: 1px solid #cce7f6;
    margin: 5px;
}
.logout-menu{
	display:flex;
	flex-direction:row;
	gap:10px;
	justify-content:center;
}
.login-menu ul li a {
    font-size: 12px;
    text-decoration: none;
    color: #fff;
    display: inline-block;
    padding: 5px 10px;
    border-radius: 5px;
    background: #5bb0d6;
    transition: background 0.3s ease, font-weight 0.3s ease;
}

.logout-button {
    text-align: center;
    display: block;
    width: 60%;
    margin: 10px auto 0;
}

.logout-button a {
    display: block;
    padding: 10px;
    background: #4a9dbf;
    text-decoration: none;
    color: #fff;
    border-radius: 30px;
    transition: background 0.3s ease, font-weight 0.3s ease;
}

.logout-button a:hover {
    background: #357f9e;
    font-weight: bold;
}

.request {
    font-size: 13px;
    padding: 10px 0;
    background: #4a9dbf;
    color: #fff;
    text-align: center;
    margin: -10px -10px 10px;
}

.before-login li {
    height: 80px;
}

.before-login li.before-login-menu {
    height: 30px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 20px;
}

.before-login li.before-login-menu a {
    line-height: 20px;
    display: inline-block;
    background: transparent;
    font-size: 14px;
    color: #4a9dbf;
}

.before-login li.before-login-menu span {
    font-size: 10px;
    display: inline-block;
    line-height: 30px;
    color: #999;
}

.before-login a.login {
    width: 60%;
    display: block;
    padding: 10px;
    font-size: 15px;
    background: #5bb0d6;
    color: #fff;
    text-align: center;
    margin: 20px auto 10px;
    transition: background 0.3s ease, font-weight 0.3s ease;
}

.before-login li.before-login-menu a:hover{
	text-decoration:underline;
	background:none;
	color:#07445d;
}
.login-menu ul li a:hover,
.before-login a.login:hover {
    background: #357f9e;
    font-weight: bold;
    color: #fff;
}
/*---------------------------------------------------*/
/*-------------------로그인 스타일 끝----------------------*/
/*---------------------------------------------------*/


/*---------------------------------------------------*/
/*-------------------top slider----------------------*/
/*---------------------------------------------------*/
.top-slider {
    width: 880px;
    height: 200px;
    overflow: hidden;
    position: relative;
}

.top-slider .swiper-slide {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative;
}

.top-slider .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: fill; /* 여기서 핵심 */
    object-position: center center;
    display: block;
}
.slide-text {
    position: absolute;
    bottom: 50%;
    left: 50%;
    transform: translate(-50%, 50%);
    color: #fff;
    background: rgba(0,0,0,0.5);
    padding: 10px 20px;
    border-radius: 4px;
    text-align: center;
    white-space: nowrap;
}
.swiper-pagination-bullet {
    width: 12px !important;
    height: 12px !important;
    background: #4a9dbf !important;
}
.swiper-button-next::after {
    font-family: "Font Awesome 6 Free"; /* 사용 중인 버전에 맞게 */
    font-weight: 900;
    content: "\f105"; /* fas fa-chevron-right */
    font-size: 20px;
    color: #4a9dbf;
}

.swiper-button-prev::after {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    content: "\f104"; /* fas fa-chevron-left */
    font-size: 20px;
    color: #4a9dbf;
}
/*---------------------------------------------------*/
/*-------------------top slider 끝--------------------*/
/*---------------------------------------------------*/



/*---------------------------------------------------*/
/*-----------------news widget 스타일------------------*/
/*---------------------------------------------------*/

.news-widget {
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 10px;
	width: 400px;
	max-height:250px;
	overflow:hidden;
    font-size: 0.9em;
    background: #fff;
}
.news-widget:hover{
	border-color:#666;
}
.news-widget h3{
	padding-left:10px;
}
.news-title {
    font-size: 1.2em;
    font-weight: 600;
    border-bottom: 2px solid #0056b3;
    padding-bottom: 5px;
    margin-bottom: 10px;
    color: #222;
}

.news-title i {
    color: #0056b3;
    margin-right: 5px;
}

.news-title span {
    color: #555;
    font-weight: normal;
}

.news-widget ul {
    list-style: none;
    padding: 0 0 0 10px;
    margin: 20px 0 0;
}
.news-widget li {
    position: relative;
    padding-left: 1em;
    margin: 10px 0 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
	line-height:20px;
}

.news-widget li::before {
    content: '•';
    position: absolute;
    left: 0;
    color: #333;
}

.news-widget a {
    color: #333;
    text-decoration: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
    width: 100%;
}

.news-widget a:hover {
    text-decoration: underline;
}


/*---------------------------------------------------*/
/*-----------------news widget 스타일 끝----------------*/
/*---------------------------------------------------*/

@media (max-width:1024px) {
	main {
		width: 100%;
		height: auto;
		padding: 0 ;
		margin:0 0 0 0;
		overflow-x:hidden;
	}

	.main-top {
		height: 200px;
		width: 100%;
		display: block;
		justify-content: center;
		gap: 0px;
	}

	.main-top .top-slider {
		width: 100%;
		height: 200px;
		border: none;
		border-radius: 0px;
		background: #fff;
	}

	.main-top .login-form {
		display:none;
	}

	.middle-content {
		margin-top: 30px;
		padding:0 5px;
		width: 100%;
		height: auto;
		border-radius: 10px;
		display:block;
		box-sizing:border-box;
	}

	.bottom-content {
		margin: 30px 0;
		padding:0 5px;
		width: 100%;
		height: 500px;
		border: none;
		border-radius: 0;
		background: transparent;
	}
	/*---------------------------------------------------*/
	/*-------------------로그인 스타일------------------------*/
	/*---------------------------------------------------*/
	.before-login {
		flex-direction: column !important;
	}

	.login-menu ul {
		margin: 20px 0 0;
		display: flex;
		gap: 10px;
		flex-direction: column;
		justify-content: center;
		flex-wrap: wrap;
	}

	.login-menu .point i {
		font-size: 40px;
		color: #999;
		border: 2px solid #99d3ec;
		border-radius: 50%;
		margin: 5px;
	}

	.login-menu .point {
		font-size: 13px;
		text-align: right;
		padding: 0 15px;
	}

	.login-menu .point span {
		display: block;
		background: #fff;
		padding: 5px 10px;
		border-radius: 5px;
		color: #000;
		font-size:13px;
		width:250px;
		border: 1px solid #cce7f6;
	}

	.point {
		display: flex;
		justify-content: center;
		gap: 10px;
	}

	.point .profile-pic {
		width: 40px;
		height: 40px;
		border-radius: 50%;
		object-fit: cover;
		border: 1px solid #cce7f6;
		margin: 5px;
	}
	.logout-menu{
		display:flex;
		flex-direction:row;
		gap:10px;
		justify-content:center;
	}
	.login-menu ul li a {
		font-size: 12px;
		text-decoration: none;
		color: #fff;
		display: inline-block;
		padding: 5px 10px;
		border-radius: 5px;
		background: #5bb0d6;
		transition: background 0.3s ease, font-weight 0.3s ease;
	}

	.logout-button {
		text-align: center;
		display: block;
		width: 60%;
		margin: 10px auto 0;
	}

	.logout-button a {
		display: block;
		padding: 10px;
		background: #4a9dbf;
		text-decoration: none;
		color: #fff;
		border-radius: 30px;
		transition: background 0.3s ease, font-weight 0.3s ease;
	}

	.logout-button a:hover {
		background: #357f9e;
		font-weight: bold;
	}

	.request {
		font-size: 13px;
		padding: 10px 0;
		background: #4a9dbf;
		color: #fff;
		text-align: center;
		margin: -10px -10px 10px;
	}

	.before-login li {
		height: 80px;
	}

	.before-login li.before-login-menu {
		height: 30px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		gap: 20px;
	}

	.before-login li.before-login-menu a {
		line-height: 20px;
		display: inline-block;
		background: transparent;
		font-size: 14px;
		color: #4a9dbf;
	}

	.before-login li.before-login-menu span {
		font-size: 10px;
		display: inline-block;
		line-height: 30px;
		color: #999;
	}

	.before-login a.login {
		width: 60%;
		display: block;
		padding: 10px;
		font-size: 15px;
		background: #5bb0d6;
		color: #fff;
		text-align: center;
		margin: 20px auto 10px;
		transition: background 0.3s ease, font-weight 0.3s ease;
	}

	.before-login li.before-login-menu a:hover{
		text-decoration:underline;
		background:none;
		color:#07445d;
	}
	.login-menu ul li a:hover,
	.before-login a.login:hover {
		background: #357f9e;
		font-weight: bold;
		color: #fff;
	}
	/*---------------------------------------------------*/
	/*-------------------로그인 스타일 끝----------------------*/
	/*---------------------------------------------------*/


	/*---------------------------------------------------*/
	/*-------------------top slider----------------------*/
	/*---------------------------------------------------*/
	.top-slider {
		width: 100%;
		height: 200px;
		overflow: hidden;
		position: relative;
	}

	.top-slider .swiper-slide {
		width: 100%;
		height: 100%;
		overflow: hidden;
		position: relative;
	}

	.top-slider .swiper-slide img {
		width: 100%;
		height: 100%;
		object-fit: fill; /* 여기서 핵심 */
		object-position: center center;
		display: block;
	}
	.slide-text {
		position: absolute;
		bottom: 50%;
		left: 50%;
		transform: translate(-50%, 50%);
		color: #fff;
		background: rgba(0,0,0,0.5);
		padding: 10px 20px;
		border-radius: 4px;
		text-align: center;
		white-space: nowrap;
	}
	  :root {
		--swiper-navigation-size: 30px !important;
	  }
	.swiper-pagination-bullet {
		width: 12px !important;
		height: 12px !important;
		background: #4a9dbf !important;
	}
	.swiper-button-next,
	.swiper-button-prev {
		width: 30px;
		height: 30px;
	}

	.swiper-button-next::after,
	.swiper-button-prev::after {
		font-size: 10px;
	}
	
	.swiper-button-next::after,
	.swiper-button-prev::after	{
		font-family: "Font Awesome 6 Free"; /* 사용 중인 버전에 맞게 */
		font-weight: 900;
		content: "\f105"; /* fas fa-chevron-right */
		color: #4a9dbf;
	}

	/*---------------------------------------------------*/
	/*-------------------top slider 끝--------------------*/
	/*---------------------------------------------------*/



	/*---------------------------------------------------*/
	/*-----------------news widget 스타일------------------*/
	/*---------------------------------------------------*/

	.news-widget {
		border: 1px solid #ddd;
		border-radius: 6px;
		padding: 10px;
		width: 100%;
		max-height:100%;
		overflow:hidden;
		font-size: 0.9em;
		background: #fff;
		margin-bottom:30px;
		box-sizing:border-box;
	}
	.news-widget:hover{
		border-color:#666;
	}
	.news-widget h3{
		padding-left:10px;
	}
	.news-title {
		font-size: 1.2em;
		font-weight: 600;
		border-bottom: 2px solid #0056b3;
		padding-bottom: 5px;
		margin-bottom: 10px;
		color: #222;
	}

	.news-title i {
		color: #0056b3;
		margin-right: 5px;
	}

	.news-title span {
		color: #555;
		font-weight: normal;
	}

	.news-widget ul {
		list-style: none;
		padding: 0 0 0 10px;
		margin: 20px 0 0;
	}
	.news-widget li {
		position: relative;
		padding-left: 1em;
		margin: 10px 0 0;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
		line-height:20px;
	}

	.news-widget li::before {
		content: '•';
		position: absolute;
		left: 0;
		color: #333;
	}

	.news-widget a {
		color: #333;
		text-decoration: none;
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
		display: block;
		width: 100%;
	}

	.news-widget a:hover {
		text-decoration: underline;
	}
}
/* Swiper 기본 화살표 숨기기 */
.swiper-button-next,
.swiper-button-prev {
    display: none !important;
}
.swiper .arrow {
    display: none;
}
.big-arrow-left,
.big-arrow-right {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}
.big-arrow-left img,
.big-arrow-right img {
    display: block !important;
}
