@charset "UTF-8";

.inner {width: 1200px; margin: 0 auto;}
main .adsby_cont {
  padding-bottom: 50px;
  padding-top: 50px;
  m-width: 720px;
}

/* header */
header {

}
header .logo_wrap {
  padding: 30px 0; 
  border-bottom: 1px solid #ddd;

}
header .logo_wrap .inner{
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
header .logo_wrap h1 {
  width: 100%;
  font-size: 34px; font-weight: 600; letter-spacing: -1px;
  cursor: default;
}
header .logo_wrap a {

}
header .logo_wrap a img {
  width: 220px;
}
header .logo_wrap .right {
  position: absolute;
  top: 0px;
  right: 0;
}
header .logo_wrap .right .date_box {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  margin-bottom: 10px;
  letter-spacing: -0.5px;
  color: #666;
}

header .logo_wrap .right .date_box p {
  color:  #333;
  position: relative;
}

.form_search {
  width: auto;
}
.form_search .search_box {
  width: 100%;
  height: 35px;
  display: flex;
  align-items: center;
  gap: 8px;

}
.form_search .search_box #search-input{
  background: #ffffff;
  flex: 1;
  width: auto;
  height: 100%;
  padding: 8px 15px;
  outline: 0;
  border-radius: 3px;
  box-sizing: border-box;
  border: 1px solid #ddd;
  font-family: inherit;
  font-size: 16px;
}
.form_search .search_box #search-input::placeholder{
  font-family: inherit;
}
.form_search .search_box .search {
  width: auto;
  height: 100%;
  background: #3D3D3D;
  border-radius: 3px;
  text-align: center;
  padding: 8px;
  border: none;
  cursor: pointer;
  color: #fff;
}


header .gnb_wrap {
  text-align: center;
  border-bottom: 1px solid #ddd;
}

header .gnb_wrap ul {display: flex; flex-wrap: wrap; justify-content: center; align-items: center;}

header .gnb_wrap ul li {
  width: 14%;
}
header .gnb_wrap ul li a {
  display: block;
  width: 100%;
  height: 100%;
  font-size: 18px; font-weight: 500; letter-spacing: -1px;
  padding: 15px 0;
}

.menu_list .tab.on {
  font-weight: 700;
  color: #305996;
}

.menu_list .tab.on a{
  font-weight: 700;
}
.gnb_wrap ul li.on {
  font-weight: 700;
  color: #305996;
}
/* main */
main {}
main .banner {
  background: #f1f1f1;
}
main .main_wrap {
  padding: 50px 0;
}
main .main_wrap .main_title{
  font-size: 40px;
  font-weight: 700;
  line-height: 1.7;
  margin-bottom: 30px;
}
main .main_wrap_inr {
  display: flex; justify-content: space-between;
  margin-top: 80px;
}
main .contents {width: 75%; padding-right: 30px;  }
main .contents .news_date {
  padding: 20px 0;
  color: #666;
  letter-spacing: -0.5px;
  font-weight: 500;
}
main .contents .article_wrap {width: 100%; margin-bottom: 50px; display: flex; overflow: hidden;}
main .contents .article_wrap .article_content{
  border-top: 2px solid #000;
  padding-top: 30px;
  width: 870px;
}
main .contents .article_wrap .article {flex: 1 0 100%; }

main .contents .article_wrap ul .adsby {
  margin-bottom: 50px;
}
main .contents .article_wrap ul li:not(:last-child) {margin-bottom: 50px;}
main .contents .article_wrap ul li h2 {font-size: 33px; font-weight: 600; letter-spacing: -1.5px; line-height: 1.4; color: #222; margin-bottom: 25px;}
main .contents .article_wrap ul li h3 {font-size: 25px; font-weight: 600; margin-bottom: 20px;}
main .contents .article_wrap ul li p {font-size: 18px; letter-spacing: -1px; line-height: 1.7;}
main .contents .article_wrap ul li .des {
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
  margin-bottom: 20px;
}
main .contents .article_wrap ul li .img_box {
  width: 100%;
  margin-top: 40px;
}
main .contents .article_wrap ul li .img_box img {
  max-width: 100%;
  object-fit: cover;
  max-height: 400px;
  width: 100%;
}

main .contents .adsense_wrap {
  margin: 30px 0;
}


main .contents .news_wrap {
  border-top: 1px solid #ddd; 
  padding: 50px 0;
}
main .contents .news_wrap h2 {font-size: 28px; font-weight: 700; letter-spacing: -1px; margin-bottom: 30px; color: #bf0e0e;}
main .contents .news_wrap .swiper-wrapper {
  display: flex;
  padding-bottom: 80px;
}
main .contents .news_wrap ul {display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat( 2, 1fr); gap: 18px;}
main .contents .news_wrap ul li:hover a {
  text-decoration: underline;
}
main .contents .news_wrap ul li a {
  width: 100%;
  height: 100%;
  display: block;
}
main .contents .news_wrap ul li img {    
  height: 185px;
  object-fit: cover; width: 100%; margin-bottom: 10px;
}

main .contents .news_wrap ul li .txt_box{
  overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
}

main .contents .news_wrap ul li p {font-size: 17px; letter-spacing: -1px; line-height: 1.3; }

/* 주요기사 */
main .contents .top_news_wrap {
  border-top: 1px solid #ddd; padding-top: 50px;
}
main .contents .top_news_wrap h2 {font-size: 28px; font-weight: 700; letter-spacing: -1px; margin-bottom: 30px;}
main .contents .top_news_wrap .swiper-wrapper {
  display: flex;
  padding-bottom: 80px;
}
main .contents .top_news_wrap ul {display: grid; grid-template-columns: repeat(3, 1fr); grid-template-rows: repeat( 2, 1fr); gap: 18px;}

main .contents .top_news_wrap ul li {
  background: #f1f1f1; 
  border: 1px solid #ddd;
}
main .contents .top_news_wrap ul li:hover a {
  text-decoration: underline;
}
main .contents .top_news_wrap ul li a {
  display: block;
  width: 100%;
  height: auto;
  font-size: 0;
}
main .contents .top_news_wrap ul li img {   
  width: 100%;
  height: 166px;
  object-fit: cover;
}
main .contents .top_news_wrap ul li .txt_box {
  padding: 15px;
  box-sizing: border-box;
}
main .contents .top_news_wrap ul li p {
  font-size: 17px;
  letter-spacing: -1px;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;

}
/********************************aisde*****************************************************************  */

main aside {
  width: 35%;     
  padding-left: 30px;
}

main aside  h2 {font-size: 26px; font-weight: 600; letter-spacing: -1.5px; margin-bottom: 30px;}

/* 함께 볼 만한 정보 */
main aside .aside_cont1 {

}
main aside .aside_cont1 ul {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 18px;
  margin-bottom: 50px;
}
main aside .aside_cont1 ul li {
  border-radius: 10px; 
  background: #fff;
  border: 1px solid #ddd;
  overflow: hidden;
}
main aside .aside_cont1 ul li:hover a {
  text-decoration: underline;
}
main aside .aside_cont1 ul li a{
  display: block;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
}
main aside .aside_cont1 ul li a img{
  width: 100%;
  height: 100%;
  max-height: 109px;
  object-fit: cover;
}
main aside .aside_cont1 ul li a .txt_box {
  padding: 15px;
}
main aside .aside_cont1 ul li a p{
  font-size: 16px; letter-spacing: -1px; line-height: 1.4; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; color: #2d2d2d;
}
/* BESTNEWS  */
main aside .aside_cont2 {
  padding: 20px;
  border: 1px solid #ddd;
  margin-top: 50px;
}
main aside .aside_cont2 ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
main aside .aside_cont2 ul li:hover a p{
  text-decoration: underline;
}
main aside .aside_cont2 ul li a {
  display: block;
  width: 100%;
  height: 100%;
}
/* main aside .aside_cont2 ul li a:hover .txt_box p {
  text-decoration: underline;
} */
main aside .aside_cont2 ul li a .txt_box{
  display: flex;
  align-items: center;
  gap: 10px;
}
main aside .aside_cont2 ul li a .txt_box .num{
  min-width: 30px;
  display: inline-block;
  width: 30px;
  height: 30px;
  color: #717171;
  background: #fff;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #ddd;
}
main aside .aside_cont2 ul li:nth-child(-n+2) a .txt_box .num {
  background: #ff6600;
  color: #fff;
  border: 1px solid transparent;
}
main aside .aside_cont2 ul li a .txt_box p{
  font-size: 16px; letter-spacing: -1px; line-height: 1.4; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; color: #2d2d2d;
}
/* 가장 많이 보는 정보 */
main aside .aside_cont3 {
  margin-top: 50px;
}
main aside .aside_cont3 ul li:hover a {
  text-decoration: underline;
}
main aside .aside_cont3 ul li:not(:last-child) {margin-bottom: 20px;}

main aside .aside_cont3 ul li a {height: 78px; display: flex; align-items: center; gap: 12px;}
main aside .aside_cont3 ul li a img {min-width: 110px; width: 110px; height: 100%; border-radius: 10px; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px; object-fit: cover;}
main aside .aside_cont3 ul li a p {font-size: 16px; letter-spacing: -1px; line-height: 1.4; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; color: #2d2d2d;}

table {
  width: 100%;
  border-collapse: collapse;
  margin: 20px 0;
  font-family: Arial, sans-serif;
  color: #333;
}

th, td {
  padding: 12px 15px;
  text-align: left;
  border-bottom: 1px solid #ddd;
}

th {
  background-color: #f2f2f2;
  color: #555;
  font-weight: bold;
  text-transform: uppercase;
}




/* masking */
/* #masking {
  width: 100%; height: 100%; position: fixed; top: 0; left: 0; background: rgba(0, 0, 0, 0.7); z-index: 999;
  
}
  #masking .masking_inner {
    width: 100%; height: 100%; 
    display: flex; align-items: center; justify-content: center;
  }
.loader {
  width: 100px;
  height: 100px;
  border: 8px solid #FFF;
  border-bottom-color: transparent;
  border-radius: 50%;
  display: inline-block;
  box-sizing: border-box;
  animation: rotation 1s linear infinite;
}

@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}  */