@charset "utf-8";


.head_portfolio { margin: 10px auto 00px; color: #3e3a39;  font-family: 'Pretendard', sans-serif; }
.head_portfolio .port_title {font-size: 38px; font-weight: 900; text-align: center; }
.head_portfolio .port_subtit { font-size: 20px; color:  #787878; text-align: center;  border-bottom: 1px solid #dddddd; padding: 20px 0 30px 0; margin-bottom: 30px; }
.head_portfolio .sub_desc {font-size: 22px; font-weight: bold; }
.head_portfolio li {display: inline-block; width: 33%; text-align: left; font-size: 22px; vertical-align: top; margin-top: 10px; line-height: 40px;}
.head_portfolio li:first-child{width: 65%;}

h2.title {    font-size: 30px;    font-family: 'Pretendard';    margin-bottom: 10px; }

.lnb .menu li:nth-child(1) a{color: #126fea; font-weight: 500;}

@media (max-width: 768px) {
.wrap_search  #bo_sch {width: 100%;}
.wrap_search .frm_input {width: calc(100% - 90px);}
}



/* 게시판 목록 */
#bo_list_title {margin-bottom:20px;font-size:1.2em;letter-spacing:-0.1em}

#bo_cate h2 {width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
#bo_cate ul {margin-bottom:30px;padding-left:1px;width:728px;zoom:1}
#bo_cate ul:after {display:block;visibility:hidden;clear:both;content:""}
#bo_cate li {float:left;margin-bottom:-1px}
#bo_cate a {    position:relative;    margin: 10px 30px 10px 0;
    display: inline-block;
    color: #666666;
    font-size: 20px;
    text-decoration: none;
    transition: all 0.2s;
    font-weight: 400;
    font-family: 'Paperlogy';}
#bo_cate a:focus,
#bo_cate a:hover,
#bo_cate a:active { color: #333333 ;}
#bo_cate li.on a{z-index:2;border-bottom:1px solid #565e60; font-weight: 500;}

.td_subject img {margin-left:3px}

/* 갤러리 목록 */
#bo_img {padding-bottom: 100px;}
#bo_img h2 {margin:0;padding:0;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
#bo_img_list {list-style:none;zoom:1 ;display: grid;    gap: 50px 60px;    grid-template-columns: 1fr 1fr 1fr 1fr; }


.bo_img_con {margin:0;padding:0;list-style:none; position: relative; }
.bo_img_con .bo_img_subject {display:inline-block;width:50px}


.bo_img_now .bo_img_text_href a {color:#ff4973}
.bo_img_text_href p {padding: 10px 0;}


.bo_img_href a{display: block;   overflow: hidden;  
    border: 1px solid #dfdfdf;
    position: relative;
    box-shadow: 3px 5px 21px 6px #0000001c; }
.bo_img_href a img {width: 100%;     
-webkit-transition: all 0.3s ease-in-out 0s;
    -moz-transition: all 0.3s ease-in-out 0s;
    -ms-transition: all 0.3s ease-in-out 0s;
    -o-transition: all 0.3s ease-in-out 0s;
	transition: all 0.3s ease-in-out 0s;}

.bo_img_href a:link,
.bo_img_href a:focus,
.bo_img_href a:hover {text-decoration:none}
.bo_img_href strong,
.bo_img_href span {display:inline-block;background:#f7f7f7;text-align:center;line-height:10em}

.bo_img_href a::after{content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; 
    background: #000; opacity: 0;z-index: 1;   transition: opacity 0.3s ease, visibility 0.3s ease; }

.bo_img_href a .viewebook { 
   display: flex; /* display는 항상 flex로 유지 */
    opacity: 0; /* 투명하게 */
    visibility: hidden; /* 보이지 않게 + 이벤트 차단 */
    transition: opacity 0.3s ease, visibility 0.3s ease; /* 전환 효과 적용 */
    position: absolute; 
    top: 50%; 
    left: 50%; 
    transform: translate(-50%, -50%);
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 50%;     max-width: 80px; 
    height: auto; 
    aspect-ratio: 1 / 1; 
    background: #0e357bcc; 
    border-radius: 50px; 
    padding: 10px; 
    z-index: 300;}
.bo_img_href a .viewebook p {color: #ffffff;font-size: 14px; text-align: center;      
    font-family: 'Paperlogy', sans-serif; font-weight: 600;   }

.bo_img_href a:hover .viewebook { opacity: 1; /* 불투명하게 */
    visibility: visible; /* 보이게 */}
.bo_img_href a:hover:after{opacity: 0.2;}


.bo_img_href .btn_detail a, .bo_img_href .btn_goesti  a { display: block;   background-color: transparent; color: #333333;  background: #ffffffbd;
    font-size: 14px; font-weight: normal; text-align: center;
    border-radius: 40px;    
    height: 40px;
    border-radius: 40px;
    line-height: 40px;
    margin-bottom: 10px;}

.bo_img_href .btn_detail {    position: absolute;
    top: 50%;
    left: 50%;
    transform:translate(-50%, -50%);
    z-index: 2; width: 60%;
    opacity: 0;
    -webkit-transition: ease-in-out .5s;
    -moz-transition: ease-in-out .5s;
    -ms-transition: ease-in-out .5s;
    -o-transition: ease-in-out .5s;
    transition: ease-in-out .5s;
}



.bo_img_text_href {margin:20px 0 !important;  text-align: left;  }
.bo_img_text_href a { font-size: 18px; display: block; width: 100%; height: 100%;  }
.bo_img_text_href span {display:inline !important; font-size: 16px;}
.bo_img_text_href img {margin:0 0 0 4px}
.bo_img_text_href p.-subject {font-size: 18px; word-break: keep-all; line-height: 1.5em;
padding-left: 10px; padding-right: 10px;}
.bo_img_text_href p.-divition{
    font-size: 14px;
    color: #888888;
    word-break: keep-all;
    padding: 6px 15px 4px;
    width: fit-content;
    background-color: #e9e9e9;
    border-radius: 30px;
    margin: auto;
}
@media (max-width: 768px) {
    .bo_img_text_href p.-subject {font-size: 16px;  }
}


/* 게시판 목록 공통 */
.bo_fx {margin-bottom:5px;zoom:1}
.bo_fx:after {display:block;visibility:hidden;clear:both;content:""}
.bo_fx ul {margin:0;padding:0;list-style:none}
#bo_list_total {float:left;padding-top:5px}
.btn_bo_user {float:right;margin:0;padding:0;list-style:none}
.btn_bo_user li {float:left;margin-left:5px}
.btn_bo_adm {float:left}
.btn_bo_adm li {float:left;margin-right:5px}
.btn_bo_adm input {padding:0 10px;height:25px; vertical-align:middle;cursor:pointer}
.bo_notice td {background:#f7f7f2}
.bo_notice td a {font-weight:bold}
.td_num strong {color:#000}
.bo_cate_link {display:inline-block;margin:0 3px 0 0;padding:0 6px 0 0;border-right:1px solid #e7f1ed;color:#999 !important;font-weight:bold;text-decoration:none} /* 글제목줄 분류스타일 */
.bo_current {color:#e8180c}

#bo_sch {margin-bottom:10px;padding-top:5px;text-align:center}
#bo_sch legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}

/* 게시판 쓰기 */
#char_count_desc {display:block;margin:0 0 5px;padding:0}
#char_count_wrp {margin:5px 0 0;text-align:right}
#char_count {font-weight:bold}

#autosave_wrapper {position:relative}
#autosave_pop {display:none;z-index:10;position:absolute;top:24px;right:117px;padding:8px;width:350px;height:auto !important;height:180px;max-height:180px;border:1px solid #565656;background:#fff;overflow-y:scroll}
html.no-overflowscrolling #autosave_pop {height:auto;max-height:10000px !important} /* overflow 미지원 기기 대응 */
#autosave_pop strong {position:absolute;font-size:0;line-height:0;overflow:hidden}
#autosave_pop div {text-align:right}
#autosave_pop button {margin:0;padding:0;border:0;background:transparent}
#autosave_pop ul {margin:10px 0;padding:0;border-top:1px solid #e9e9e9;list-style:none}
#autosave_pop li {padding:8px 5px;border-bottom:1px solid #e9e9e9;zoom:1}
#autosave_pop li:after {display:block;visibility:hidden;clear:both;content:""}
#autosave_pop a {display:block;float:left}
#autosave_pop span {display:block;float:right}
.autosave_close {cursor:pointer}
.autosave_content {display:none}
#fwrite {padding-bottom: 100px;}
#fwrite select{ border: 1px solid #d0d3db;
    width: 150px;
    height: 40px;
    font-size: 16px;
    display: inline-block;
    padding-left: 10px;
    border-radius: 4px;
    -o-appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: url(/img/icon_select.svg) calc(100% - 5px) center no-repeat;
    background-size: 20px;
}
#fwrite select:focus {        border: 1px solid #dddddd;        outline: none;    }
#fwrite .frm_tbl {border-top: 1px solid #dddddd; margin: 10px 0;}
#fwrite .frm_tbl td, #fwrite .frm_tbl th {border-bottom: 1px solid #dddddd; min-height: 30px; padding: 3px 0; }
#fwrite .frm_input{height: 38px;}


/* 게시판 읽기 */
#bo_v {margin-bottom:20px;padding-bottom:100px}

#bo_v_table {line-height:2.2em; width: 100%; text-align: right; color: #666666;  }

#bo_v_title {padding:26px 10px;font-size:26px; background: #f1f1f1; text-align: center; font-weight: 500;
 word-break: keep-all;}

#bo_v_info {padding:0 0px;border-bottom:0px solid #ddd}
#bo_v_info h2 {margin:0;padding:0;height:0;overflow:hidden}
#bo_v_info strong {display:inline-block;margin:0 10px 0 5px;font-weight:normal}
#bo_v_info .sv_member,
#bo_v_info .sv_guest,
#bo_v_info .member,
#bo_v_info .guest {font-weight:bold}
.profile_info { padding: 10px 0;display: flex; justify-content: space-between; align-items: center;}
.profile_info .year{padding: 10px 0; font-size: 16px; }
#bo_v_file {}
#bo_v_file h2 {margin:0;padding:0;height:0;overflow:hidden}
#bo_v_file ul {margin:0;padding:0;list-style:none}
#bo_v_file li {padding:0 10px;border-bottom:1px solid #eee;background:#f5f6fa}
#bo_v_file a {display:inline-block;padding:8px 0 7px;width:100%;color:#000;word-wrap:break-word}
#bo_v_file a:focus, #bo_v_file a:hover, #bo_v_file a:active {text-decoration:none}
#bo_v_file img {float:left;margin:0 10px 0 0}
.bo_v_file_cnt {display:inline-block;margin:0 0 3px 16px}

#bo_v_link {padding-bottom: 30px;}
#bo_v_link h2 {margin:0;padding:0;height:0;overflow:hidden}
#bo_v_link ul {margin:0;padding:0;list-style:none}
#bo_v_link li {padding:10px 0; }
#bo_v_link a {display:inline-block;padding:8px 20px 7px; background-color: var(--maincolor); color: #ffffff; font-size: 16px; text-align: center; border-radius: 30px; }
#bo_v_link a:focus, #bo_v_link a:hover, #bo_v_link a:active {text-decoration:none}
.bo_v_link_cnt {display:inline-block;margin:0 0 3px 16px}

#bo_v_top {margin:auto;padding:10px 0;zoom:1; }
#bo_v_top:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_top h2 {margin:0;padding:0;height:0;overflow:hidden}
#bo_v_top ul {margin:0;padding:0;list-style:none}

#bo_v_bot {zoom:1; margin: auto; }
#bo_v_bot:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_bot h2 {margin:0;padding:0;height:0;overflow:hidden}
#bo_v_bot ul {margin:0;padding:0;list-style:none}

.bo_v_nb {float:left}
.bo_v_nb li {float:left;margin-right:5px}
.bo_v_com {float:right}
.bo_v_com li {float:left;margin-left:5px}

#bo_v_atc {min-height:200px;height:auto !important;height:200px; max-width: 1000px; margin: auto;}
#bo_v_atc .inner {display: flex; justify-content: space-between; align-items: flex-start; padding-top: 50px; gap: 50px;}
#bo_v_atc .inner > div:nth-child(1){flex: 0 0 50%; text-align: center;}
#bo_v_atc .inner > div:nth-child(2){flex: 0 0 50%;}

#bo_v_atc_title {position:absolute;font-size:0;line-height:0;overflow:hidden}

#bo_v_img {margin:0 0 10px;width:100%;overflow:hidden;zoom:1; }
#bo_v_img:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_img img {margin-bottom:20px;max-width:400px;height:auto; width: 100%;     box-shadow: 2px 4px 15px 4px #0000001c;}

#bo_v_con {margin-bottom:30px;width:100%;line-height:1.7em;word-break:keep-all;overflow:hidden; text-align: center;}
#bo_v_con a {color:#000;text-decoration:underline}
#bo_v_con img {max-width:100%;height:auto}

#bo_v_act {margin-bottom:30px;text-align:center}
#bo_v_act a {margin-right:5px;vertical-align:top}
#bo_v_act span {display:inline-block;margin-right:5px;padding:0 10px;height:23px;border:1px solid #ccc !important;background:#fafafa !important;color:#000 !important;text-decoration:none !important;line-height:2.15em;vertical-align:top}
#bo_v_act strong {color:#ff3061}
#bo_v_act_good,
#bo_v_act_nogood {position:absolute;font-size:0;line-height:0;overflow:hidden}

#bo_v_sns {margin:0 0 20px;padding:0;list-style:none;zoom:1}
#bo_v_sns:after {display:block;visibility:hidden;clear:both;content:""}
#bo_v_sns li {float:left;margin:0 5px 0 0}

#bo_v form {padding-top:20px}

#fboardlist {padding-bottom: 50px;}
.empty_list {
    grid-column: 1 / -1;
    text-align: center;
    padding: 40px !important;
    font-size: 16px;
    background: #f9f9f9;
    border: 1px dashed #ccc;
    margin: 20px 0 50px;
}



/* 게시판 댓글 */
#bo_vc {padding:20px 20px 10px;border-top:1px solid #cfded8;border-bottom:1px solid #cfded8;background:#f5f6fa; display:none;}
#bo_vc h2 {margin-bottom:10px}
#bo_vc article {padding:0 0 10px;border-top:1px dotted #ccc}
#bo_vc header {position:relative;padding:15px 0 5px}
#bo_vc header .icon_reply {position:absolute;top:15px;left:-20px}
#bo_vc .sv_wrap {margin-right:15px}
#bo_vc .member, #bo_vc .guest, #bo_vc .sv_member, #bo_vc .sv_guest {font-weight:bold}
.bo_vc_hdinfo {display:inline-block;margin:0 15px 0 5px}
#bo_vc h1 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_vc a {color:#000;text-decoration:none}
#bo_vc p {padding:0 0 5px;line-height:1.8em}
#bo_vc p a {text-decoration:underline}
#bo_vc_empty {margin:0;padding:20px !important;text-align:center}
#bo_vc fieldset {margin:0 0 10px;padding:0}
#bo_vc #bo_vc_winfo {float:left}
#bo_vc footer {zoom:1}
#bo_vc footer:after {display:block;visibility:hidden;clear:both;content:""}

.bo_vc_act {float:right;margin:0;list-style:none;zoom:1}
.bo_vc_act:after {display:block;visibility:hidden;clear:both;content:""}
.bo_vc_act li {float:left;margin-left:5px}

#bo_vc_w {position:relative;margin:0 0 10px;padding:0 0 20px;border-bottom:1px solid #cfded8; display: none;}
#bo_vc_w h2 {position:absolute;font-size:0;line-height:0;overflow:hidden}
#bo_vc_w #char_cnt {display:block;margin:0 0 5px}

#bo_vc_sns {margin:0;padding:0;list-style:none;zoom:1}
#bo_vc_sns:after {display:block;visibility:hidden;clear:both;content:""}
#bo_vc_sns li {float:left;margin:0 20px 0 0}
#bo_vc_sns input {margin:0 0 0 5px}

#bo_vc form {padding:0}

@media (max-width: 1300px) {
	
}
@media (max-width: 900px) {
	h2.title {    font-size: 25px;  }

    .head_portfolio .port_title  {font-size: 22px;         word-break: keep-all;}
    .head_portfolio {margin: 50px 10px 30px;}
    .head_portfolio .sub_desc, .head_portfolio li {font-size: 18px; line-height: 30px;}
    .head_portfolio li  {width: 100%; margin-top: 0px;}
    .head_portfolio li:first-child{width: 100%;}
    #bo_v_table {margin-top: 0; margin-right: 10px; }
	.bo_img_text_href a {font-size: 14px; color: #555555;  background: none;         word-break: break-word;}
	.bo_img_text_href span{font-size: 11px;}
	.bo_img_href a {background: none;}
	.bo_img_href > a:after {display: none; }
    #bo_img_list {  gap: 20px 20px;    grid-template-columns: 1fr 1fr; }
    
    #bo_cate ul {width: auto;}
    #bo_cate a {width: 90px;}
    h2.view_title {font-size: 18px !important;} 

    #bo_v_title {font-size: 20px;}
    #bo_v_atc .inner {display: block;}

}
