@charset "utf-8";

/* #header{border-bottom: 1px solid #202026;} */
#header{border-bottom: 1px solid #cbcbcb;}
#header .logo a{background-image: url('../img/layout/logo_black.png');}
#header .pc_nav .depth01 > li > a{color: #202026;}
#header .right .lang a{color: #202026; border-color: #0d0d0d; background: #fff;}
#header .right .lang a span::before{border-color: #202026;}
.sns div a.facebook{background-position: 0 -50px ;}
.sns div a.instagram{background-position: -50px -50px ;}
.sns div a.twitter{background-position: -100px -50px ;}
.sns div a.youtube{background-position: -150px -50px ;}
.sns div a.blog{background-position: -200px -50px;}
.sns div a.gsio {background-position: -250px -50px;}

.nav_open{background-position: 0 -22px;}

.wrap04{max-width: 1400px; margin: 0 auto;}

#snb{margin-top: 120rem; line-height: 55rem; display: flex; align-items: center;}

.snb_wrap{border-bottom:1px solid #202026; display: none;}
#snb > li{border-right: 1px solid #202026; position: relative;}
#snb > li.home{border-left: 1px solid #202026;}

#snb > li > a{display: block; color: #202026; background: url('../img/sub/snb_arrow.png') no-repeat center right; font-size: 18rem; font-weight: 500; padding-right: 32rem;}
#snb > li.home > a{display: block; text-indent: -9999px; background: url('../img/sub/loca_home.png') no-repeat center center; width: 55rem; height: 55rem;}

#snb > li:not(.home){padding: 0 20rem; min-width: 244rem;}

#snb > li > div{display: none; position: absolute; left: -1rem; width: 101%; background: #fff; border: 1px solid #202026; z-index: 10;}
#snb > li > div a{display: block; color: #202026; line-height: normal; padding: 14rem 20rem; border-bottom: 1px dashed rgba(0,0,0,0.4); font-size: 17rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
#snb > li > div a:last-child{border-bottom: none;}

#snb > li > div a.on{font-weight: 600; color: #04809f;}

#snb a[target="_blank"] span{position: relative; padding-right: 22rem;  background: url('../img/content/t_blank.png') no-repeat right;}

.sub_vis{background: url('../img/sub/snb_bg.png') no-repeat top right; padding: 80rem 10rem; background-size: contain; margin-top: 156rem;}

.sub_vis h3{font-size: 46rem; font-weight: 500; color: #202026;}

.sub_vis .loca{display: flex; margin-top: 20rem;}
.sub_vis .loca li{margin-right: 40rem; position: relative; }
.sub_vis .loca li::before{position: absolute; content: "";background: url('../img/sub/loca_arrow.png') no-repeat center center; background-size: contain; right: -20rem; width: 5rem; height: 9rem; top: 50%; transform: translateY(-50%);}
.sub_vis .loca li:last-child::before{display: none;}
.sub_vis .loca li a{font-size: 18rem; color: #4c4c4c;}
.sub_vis .loca li:last-child a{font-weight: 500;color: #202026;}

#content{padding: 30rem 10rem 150rem;}

@media all and (max-width:1600px) {
    #snb{margin-top: 100rem;}
    .sub_vis{margin-top: 137rem;}
  }
@media all and (max-width:1300px) {
    .sub_vis{padding: 50rem 10rem;}
    .sub_vis h3{font-size: 37rem;}
  }
  @media all and (max-width:990px) {
    .sub_vis{padding: 50rem 10rem;  background-position: top right -106rem;}
    }
@media all and (max-width:910px) {
  .sub_vis .loca{flex-wrap: wrap; margin-top: 14rem;}
  }
  @media all and (max-width:840px) {
    .sub_vis{padding: 30rem 10rem; background: none;}
    .sub_vis h3{font-size: 33rem;}
    }

@media all and (max-width:500px) {
    #snb > li.home{border-left: none;}
    #snb > li:not(.home){min-width: 180rem;}
    #snb > li > a{white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-size: 16rem;}
    .sub_vis .loca li{margin-right: 30rem;}
    .sub_vis .loca li::before{width: 6rem; height: 12rem;}
  }

  .bod_title{color: #3d3d3d;}


  /* 달력 */
  /*이달의축제및행사 - 달력 공통스타일 수정주의*/
.monthTab ul {display:table; table-layout:fixed; overflow:hidden; width:100%; margin-bottom:20px; border:1px solid #ccc;}
.monthTab ul li {display:table-cell; border-left:1px solid #ccc;}
.monthTab ul li:first-child {border-left:0;}
.monthTab ul li a {display:block; padding:10px 0; background: #f2f2f2; color:#555; text-align:center;}
.monthTab ul li:hover a,
.monthTab ul li.on a {padding:8px 0; border-bottom:2px solid #008caf; background:#fff; color:#008caf; font-weight:600;}
@media all and (max-width:480px){
  .monthTab ul li a {font-size:13px;}
}

.calendar { position:relative; /*overflow:hidden;*/}
.calendar .monthTab {border:5px solid #ededed;  margin-bottom:40px;}
.calendar .monthTab ul {  margin-bottom:0; }
.calendar .monthTab div {position:relative; padding:20px; }
.calendar .monthTab div p {text-align:center; font-size:30px; font-weight:600; }
.calendar .monthTab div a { position:absolute; color:#555; font-size:16px; padding:0 0 0 25px; left:20px; top:50%; margin-top:-12.5px; }
.calendar .monthTab div a.next {padding:0 25px 0 0; left:auto; right:20px; }
.calendar .monthTab div a::before {content:''; position:absolute; top:2px; left:0; background:url('/design/42gyeongsan/img/sub/calArrow.gif') no-repeat 0 0; width:12px; height:21px; }
.calendar .monthTab div a.next::before { background-position:-12px 0; left:auto; right:0; }
.calendar .cal { position:relative; float:left; width:30%; border:1px solid #ccc; padding:20px 30px; }
.calendar .cal::after {content:''; position:absolute; left:0; top:75px; width:100%; height:40px; background:#008caf; z-index:-1;}
.calendar .cal > p {font-size:25px; text-align:center; line-height:1.5; margin-bottom:15px;}
.calendar .cal > p span {display:block; font-size:12px; color:#999; letter-spacing:0;}
.calendar .cal table { width:100%; table-layout:fixed; text-align:center;}
.calendar .cal table th {color:#fff; padding:7px 0 15px; width:14.28%; }
.calendar .cal table td { padding:4px; font-size:13px;}
.calendar .cal table td span.date a {display:block; padding:7px 0; background:#eee; color: #202026;}
.calendar .cal table td span.date a.on {background:#333; color:#fff; }
.calendar .control {overflow:hidden; padding-bottom:20px; }
.calendar .control .floatL {font-size:17px; margin-bottom:10px; font-weight:500; }
.calendar .control .floatL span {padding:0 5px; }
.calendar .control .floatL .fest { color:#008921;}
.calendar .control .floatL .hang { color:#d34500;}
.calendar .control .floatL .gong {color:#008caf;}
.calendar .control .floatL .jun {color:#8e2ad4;}
.calendar .control .floatR a { float:left; display:block; width:36px; height:36px; border:1px solid #ddd; background:url('/design/42gyeongsan/img/sub/listtypeOff.gif') no-repeat 0 0; text-indent:-9999px; margin-left:10px; }
.calendar .control .floatR a.on,
.calendar .control .floatR a:hover { background:url('/design/42gyeongsan/img/sub/listtypeOn.gif') no-repeat; border:1px solid #333; }
.calendar .control .floatR a.type4 {background-position:0 0; }
.calendar .control .floatR a.type3 {background-position:-36px 0;}
.calendar .control .floatR a.type1 {background-position:-72px 0;}
.calendar .control .floatR a.type2 {background-position:-108px 0;}
.calendar .type1,
.calendar .type2,
.calendar .type3,
.calendar .type4 {display:none;}
.calendar .type1.on,
.calendar .type2.on,
.calendar .type3.on,
.calendar .type4.on {display:block;}
.calendar .type1 { overflow:hidden;}
.calendar .type1 .detail {float:right; width:65%;}
.calendar .type1 .detail h4 { display:inline-block; margin:0 0 10px !important; font-size:18px !important; border:1px solid #999;  padding:4px 20px; text-align:center; border-radius:20px; }
.calendar .type1 .detail dl { border-bottom:1px solid #ddd; padding:15px 0; }
.calendar .type1 .detail dl dt {position:relative; /*padding-left:18px;*/}
/*.calendar .type1 .detail dl dt::before { content:''; position:absolute; left:0; top:8px; width:4px; height:4px; border:3px solid #008caf; border-radius:5px; }*/
.calendar .type1 .detail dl dt span {color:#fff; padding:2px 7px; margin-right:5px; border-radius:3px;  }
.calendar .type1 .detail dl dt span.fest { background:#008921;}
.calendar .type1 .detail dl dt span.hang { background:#d34500;}
.calendar .type1 .detail dl dt span.gong {background:#008caf;}
.calendar .type1 .detail dl dt span.jun {background:#8e2ad4;}
.calendar .type1 .detail dl dt span.state {background:#008caf;}
.calendar .type1 .detail dl dt span.black {color:#333 !important; padding:0}
.calendar .type1 .detail dl dd { color:#666; font-weight:400; margin-top:5px; }
.calendar .type2 .cal {width:100%; float:none; }
.calendar .type2 .cal table th {padding:7px 0 20px;}
.calendar .type2 .cal table td {position:relative; height:100px; padding:45px 5px 5px; text-align:left; vertical-align:top; border-left:1px dashed #ccc; border-top:1px dashed #ccc;  }
.calendar .type2 .cal table tr:first-child td {border-top:0;}
.calendar .type2 .cal table tr td:first-child {border-left:0;}
.calendar .type2 .cal table td > span { position:absolute; left:5px; top:5px; padding:0; width:30px; line-height:30px; text-align:center; }
.calendar .type2 .cal table td p { line-height:22px; max-height:44px;  overflow:hidden;}
.calendar .type2 .cal table td p a { position:relative; color:#555; margin-bottom:5px; display:inline-block; display: -webkit-box; text-overflow: ellipsis;  -webkit-line-clamp: 2; -webkit-box-orient: vertical; word-break:break-all; padding-left:10px; }
/*.calendar .type2 .cal table td p a::before { content:''; position:absolute; top:8px; left:0; width:4px; height:4px; background:#008caf;}*/
.calendar .type2 .cal table td p a span.state {display:inline-block; color:#fff; padding:0 5px; margin-right:5px; background:#008caf; border-radius:3px; font-size:12px; }
.calendar .type2 .cal table td p a span.fest { background:#008921;}
.calendar .type2 .cal table td p a span.hang { background:#d34500;}
.calendar .type2 .cal table td p a span.gong {background:#008caf;}
.calendar .type2 .cal table td p a span.jun {background:#8e2ad4;}
.calendar .type2 .cal table td p a span.bold { padding-right:5px; }
.calendar .control a.on::before,
.calendar .control a::before,
.calendar .control a::after{display: none;}
@media all and (max-width:1023px){
  .calendar .cal { width:40%; }
  .calendar .type1 .detail { width:55%; }
}
@media all and (max-width:768px){
  .calendar .cal { width:100%; padding:20px; }
  .calendar .cal::after {height:35px; top:68px; }
  .calendar .cal > p {font-size:20px;}
  .calendar .cal table th {padding:5px 0 12px;}
  .calendar .cal table td span {padding:3px 0;}
  .calendar .type1 .detail { width:100%; }
  .calendar .type1 .detail h4 {margin:30px auto 10px !important;}
  .calendar .type2 .cal table td {height:80px;}
}
@media all and (max-width:700px){
  .calendar .type2 .cal { overflow-x:scroll;}
  .calendar .type2 .cal::after {width:700px;}
  .calendar .type2 .cal table {width:700px;}
}
@media all and (max-width:480px){
  .calendar .monthTab div {padding:10px;}
  .calendar .monthTab div p {font-size:24px;}
  .calendar .monthTab div a {font-size:14px; padding: 0 0 0 15px; left:10px;}
  .calendar .monthTab div a.next {padding:0 15px 0 0 ; right:10px;}
  .calendar .control .floatL,
  .calendar .control .floatR {width:100%; font-size:15px; text-align:center;}
  .calendar .control .floatR a {float:none; display:inline-block; vertical-align:top;}
  .calendar .type2 .cal {padding:20px 0;}
  .calendar .type2 .cal table th {padding:5px 0 12px;}
  .calendar .type2 .cal table td {height:150px;}
}

.cultureList {border-top:2px solid #444;}
.cultureList dl {position:relative; border-bottom:1px solid #d2d2d2;}
.cultureList dl dt { position:absolute; left:0; width:200px; height:210px; box-shadow: 2px 2px 5px rgba(0,0,0,0.1); overflow:hidden; border:1px solid #ddd; }
.cultureList dl dt a {display:block;}
.cultureList dl dd { margin: 20px 0 20px 250px; padding-top:10px; min-height:210px;}
.cultureList dl dd .title {font-size:20px; margin-bottom:20px; font-weight:500;}
.cultureList dl dd .title span { color: #fff; padding: 2px 7px; margin-right: 5px; font-size: 16px; border-radius:3px; }
.cultureList dl dd .title span.fest {background:#008921;}
.cultureList dl dd .title span.hang {background:#d34500;}
.cultureList dl dd .title span.gong {background:#008caf;}
.cultureList dl dd .title span.jun {background:#8e2ad4;}
.cultureList dl dd li {position:relative; color:#555; padding:3px 0 3px 100px; min-height:31px;}
.cultureList dl dd li span {position:absolute; left:0; }
.cultureList dl dt span.more {position:absolute; right:0; bottom:0; padding:9px 10px 8px 30px; background:#444 url('/design/42gyeongsan/img/sub/listMore.png') no-repeat 10px center; color:#fff; font-size:13px; font-weight:400; }

.cultureList.type4 {border-top:0;}
.cultureList .list dl { float:left; width: 22.75%; margin: 0 0 40px 3%; box-shadow: 2px 2px 5px rgba(0,0,0,0.1); border:1px solid #ddd; }
.cultureList .list dl:nth-child(4n+1) {margin-left:0; clear:both;}
.cultureList .list dl dt {position:relative; left:0; width:100%; height:250px; box-shadow:none; }
.cultureList .list dl dt img {width:100%;}
.cultureList .list dl dd {margin:20px; padding-top:0; min-height:auto;}
.cultureList .list dl dd .title { font-size:18px; }
.cultureList .list dd li {font-size:14px; padding:3px 0 3px 70px;}
.noEvent {background:#eee; text-align:center; font-size:18px; padding:50px 0; }
@media all and (max-width:1023px){
  .cultureList .list dl {width:31.33%;}
  .cultureList .list dl:nth-child(4n+1) { margin: 0 0 40px 3%; clear:none;}
  .cultureList .list dl:nth-child(3n+1) {margin-left:0; clear:both;}
}
@media all and (max-width:768px){
  .cultureList dl dt {width:130px; height:150px; }
  .cultureList dl dd {margin:20px 0 20px 160px; padding-top:0; min-height:auto; }
  .cultureList dl dd .title { font-size:18px; margin-bottom:10px;}
  .cultureList dl dd .title span {font-size:15px;}
  .cultureList dl dd li {font-size:13px;}
  .cultureList .list dl {width:48.5%; margin: 0 0 20px 3%;}
  .cultureList .list dl:nth-child(3n+1) { margin: 0 0 20px 3%; clear:none;}
  .cultureList .list dl:nth-child(2n+1) {margin-left:0; clear:both;}
  .cultureList .list dl dt span.more {bottom:0;}
}
@media all and (max-width:480px){
  .cultureList dl dt {width:100px; height:140px;}
  .cultureList dl dt span.more {bottom:0; padding: 9px 16.5px 8px 36.5px; background-position:15px center;}
  .cultureList dl dd {margin:20px 0 20px 120px;}
  .cultureList dl dd li {padding:2px 0 2px 70px;}
  .cultureList .list dd li {padding:2px 0;}
	.cultureList .list dl dt {height:180px;}
	.cultureList .list dl dd {margin:15px;}
  .cultureList .list dl dd .title {font-size:15px; word-break:break-all;}
  .cultureList .list dl dd ul {display:none;}
}


/* 사이트맵 */
.sitemap_wrap .depth1{display: flex;}
.sitemap_wrap .depth1 li{width: calc((100% - 80px)/4); margin-right: 20px;}
.sitemap_wrap .depth1 li:last-child{display: none;}
.sitemap_wrap .depth1 li a{display: block; padding: 11px 22px; border-radius: 12px; border: 2px solid #e7e7e7; color: #3d3d3d; font-weight: 500; transition-property: border; transition-duration:0.5s;}
.sitemap_wrap .depth1 li a:hover{font-weight: 600;color: #04809f; border-color: #04809f; } 
.sitemap_wrap .depth1 li a span{position: relative; padding-left: 18px;}
.sitemap_wrap .depth1 li a span::before{position: absolute; content: ""; background: #a7a7a7; width: 4px; height: 4px; border-radius: 50px; left: 5px; top: 50%; transform: translateY(-50%);}
.sitemap_wrap .depth1 li a:hover span::before{background-color: #04809f;}

@media all and (max-width:910px){
  .sitemap_wrap .depth1{flex-wrap: wrap; gap: 16px; }
  .sitemap_wrap .depth1 li{width: calc((100% - 40px) / 3); margin-right: 0;}
  .sitemap_wrap .depth1 li a{padding: 8px 16px; font-size: 16px;}
}
@media all and (max-width:480px){
  .sitemap_wrap .depth1{gap: 10px;}
  .sitemap_wrap .depth1 li a span{padding: 0;}
  .sitemap_wrap .depth1 li a span::before{display: none;}
}

/* 외국어 */

.wrap04.en .sitemap_wrap .depth1 li{width: calc((100% - 60px)/4);}
.wrap04.en .sitemap_wrap .depth1 li:last-child {display:block; margin-right:0;}

@media all and (max-width:991px){
.wrap04.en .sitemap_wrap .depth1 li a{padding:10px;}
}

@media all and (max-width: 910px){
.wrap04.en .sitemap_wrap .depth1 li {width:calc((100% - 48px)/4);}
}

@media all and (max-width:768px){
.wrap04.en .sitemap_wrap .depth1 li {width:calc((100% - 16px) / 2);}
}


/*FAQ*/
.faq{position: relative;}
	.FAQ_menu{display: grid; grid-template-columns: repeat(4,1fr); width: 100%; padding: 10px 0; justify-content: space-between; align-items: center; gap: 20px; font-size: 20rem; cursor: pointer; background: #fff;  box-shadow: rgba(255, 255, 255, 0.2) 0px 1px 1px 0px inset, rgba(50, 50, 93, 0.25) 0px 0px 50px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px; padding: 10px; border-radius: 100px; border: 1px solid #ddd;}
	.FAQ_menu .active{font-weight: 600; position: relative; color: #fff; background-color: #095eac; padding: 10px 30px; border-radius: 100px;}
	.FAQ_menu > li {padding: 10px 30px; text-align: center;}
	.faq dd,.faq_depth{padding-left: 30px;}
	
	.faq_sub > dl{padding: 30rem 3% 30rem 3%; margin-top: 50px; box-shadow: rgba(0, 0, 0, 0.05) 0px 6px 24px 0px, rgba(0, 0, 0, 0.08) 0px 0px 0px 1px; border-radius: 30px;}

	.fst_div{margin-top: 0 !important;}

	.faq dt{font-size: 26rem; font-weight: 600; margin: 0rem 0 20rem;}
	.faq h4{font-size: 30rem;}


	@media(max-width:1030px){
		.FAQ_menu{font-size: 15rem;}
		.faq_sub > dl{padding: 20rem 30px 20rem 30px;}
		.faq h4{font-size: 30rem; padding-left: 30px;}
	}
	@media(max-width:799px){
		.FAQ_menu{grid-template-columns: repeat(2,1fr); border-radius:30px; gap: 0px;}
	}