/* ------------------------------ PC Guide ------------------------------ */
@media screen and (max-width: 1800px) {
  .header .gnb .menu > a {
    font-size: 15px;
    padding: 0 10px;
  }
  .stit {
    font-size: 2rem;
  }
  .svisual strong {
  	font-size:2rem;
  }
}

/* ------------------------------ PC Guide ------------------------------ */
@media screen and (max-width: 1400px) {
  .header .gnb {
    display: none;
  }
}

/* ------------------------------ PC Guide ------------------------------ */
@media screen and (max-width: 1300px) {
	body {padding-top:0;}
    .btn_menu {
        display: none;
    }
    
    .sitemap .menu > a.mo_vw {
        display: none;
    }
    
    .sitemap .menu > a.pc_vw {
        display: block;
    }
}

/* ------------------------------ Hover ------------------------------ */
@media screen and (min-width: 1024px) {
}

/* ------------------------------ Tablet PC ------------------------------ */
@media screen and (max-width: 1023px) {
	/* header */
	 .header {
        padding: 0 20px;
    }
    
    .logo_wrap {
        gap: 15px;
    }
    
    .logo_wrap .logo img {
        height: 35px;
    }
    
    .gnb .menu {
        margin: 0 15px;
    }
    
    .gnb .menu > a {
        font-size: 14px;
        padding: 15px 0;
    }
    
    .btn_menu {
        display: none;
    }
    
    .dm,
    .snb_wrap,
    .sitemap {
        display: none;
    }
}

/* ------------------------------ Mobile ------------------------------ */
@media screen and (max-width: 767px) {
	/* Header */
    .header_wrap {
        position: relative;
    }
	.header .logo_wrap{
		left:20px; 
	}
	.header .logo_wrap .txt{
		font-size:1rem;
	}
   
    .head_top {
        display: none;
    }
    
    .header {
        padding: 10px 20px;
        position: relative;
    }
    
    .logo_wrap {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 0;
    }
    
    .logo_wrap .txt {
        font-size: 16px;
        font-weight: bold;
    }
    
    .logo_wrap .logo img {
        height: 30px;
        width: auto;
    }
    
    .btn_menu {
        display: block;
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translateY(-50%);
        width: 30px;
        height: 24px;
        cursor: pointer;
        z-index: 1001;
    }
    
    .btn_menu p {
        width: 100%;
        height: 3px;
        background-color: #333;
        margin: 0;
        transition: all 0.3s ease;
        position: absolute;
    }
    
    .btn_menu .t {
        top: 0;
    }
    
    .btn_menu .m {
        top: 50%;
        transform: translateY(-50%);
    }
    
    .btn_menu .b {
        bottom: 0;
    }
    
    /* 메뉴 열림 상태 */
    .btn_menu.active .t {
        top: 50%;
        transform: translateY(-50%) rotate(45deg);
    }
    
    .btn_menu.active .m {
        opacity: 0;
    }
    
    .btn_menu.active .b {
        bottom: 50%;
        transform: translateY(50%) rotate(-45deg);
    }
    
    .gnb {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        background-color: #fff;
        z-index: 1000;
        overflow-y: auto;
        padding: 80px 20px 20px;
        box-sizing: border-box;
    }
    
    .gnb.active {
        display: block;
    }
    
    .gnb .menu {
        border-bottom: 1px solid #eee;
        margin-bottom: 0;
    }
    
    .gnb .menu > a {
        display: block;
        padding: 15px 0;
        font-size: 18px;
        font-weight: bold;
        color: #333;
        text-decoration: none;
    }
    
    .gnb .menu.on > a {
        color: #007bff;
    }
    
    .util-group {
        position: absolute;
        top: 20px;
        right: 60px;
    }
    
    .utils {
        display: flex;
        gap: 15px;
    }
    
    .utils a {
        font-size: 14px;
        color: #666;
        text-decoration: none;
    }
    
    .dm {
        display: none;
    }
    
    .snb_wrap {
        display: none;
    }
    
    .sitemap {
        display: block;
        margin-top: 20px;
    }
    
    .sitemap .menu {
        border-bottom: 1px solid #eee;
    }
    
    .sitemap .menu > a.mo_vw {
        display: block;
        padding: 15px 0;
        font-size: 16px;
        font-weight: bold;
        color: #333;
        text-decoration: none;
        position: relative;
    }
    
    .sitemap .menu > a.mo_vw:after {
        content: '+';
        position: absolute;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        font-size: 20px;
        transition: transform 0.3s ease;
    }
    
    .sitemap .menu.active > a.mo_vw:after {
        transform: translateY(-50%) rotate(45deg);
    }
    
    .sitemap .menu > a.pc_vw {
        display: none;
    }
    
    .sitemap .snb {
        max-height: 0;
        overflow: hidden;
        transition: max-height 0.3s ease;
        background-color: #f8f9fa;
    }
    
    .sitemap .menu.active .snb {
        max-height: 500px;
    }
    
    .sitemap .snb .tit {
        display: none;
    }
    
    .sitemap .snb .smenu {
        border-top: 1px solid #e9ecef;
    }
    
    .sitemap .snb .smenu:first-child {
        border-top: none;
    }
    
    .sitemap .snb .smenu a {
        display: block;
        padding: 12px 20px;
        color: #666;
        font-size: 14px;
        text-decoration: none;
    }
    
    .sitemap .snb .smenu.on a,
    .sitemap .snb .smenu a:hover {
        color: #007bff;
        background-color: #f0f8ff;
    }
	/* footer */
	.footer{
		padding:1rem 2rem;
	}
	.footer .inner{
		padding-left:0;
		font-size:1.1rem;
	}
	.footer .address {gap:4px 15px;}

	.mc04 .area {
		padding:1rem 2rem;
	}
	.mc04 .tit{font-size:1.1rem;}

	/* aside */
	.aside .home {margin-right:15px;}
	.aside dd a {font-size:1.2rem; line-height:35px;}
	.aside dt button{
		font-size:1.2rem;
		padding:0 15px;
	}
	/* default */
	.gbox{padding:40px 0; margin:40px 0;}
	.container {padding: 40px 0 60px;}

	/* main */
	.mvisual .inner {align-items:flex-start;}
	.mvisual .inner:before {top:5px; left:10px; width:80px;}
	.mvisual .tit {font-size:2.5rem;}
	.mvisual .area {font-size:1rem;}
	.mvisual li {font-size:1.2rem;}
	.mvisual ul {display:inline; text-align: left;}
	.mcon {padding-top:40px;}
	.mc01 .inner {flex-wrap:wrap;}
	.mc01 .inner a {width:100%;}
	.mc02 ul {display: flex; flex-direction: column; gap: 12px;}
	.mc02 ul li {width:100%;}
	.mc03 .inner {flex-direction: column;}
	.mc03 .board {width:100%;}

	/* introduct */
	.greeting .inner{
		flex-direction:column;
	}

	.greeting .txt {
		width:100%;
	}

	
	/* Committee */
	.committee_list .box {
		width: 100%;
	}
	.committee_list .box .name {
		font-size: 24px;
		text-align:left;
	}
	.committee_list .box .profile-image {
		width: 60px;
		height: 75px;
	}
	.committee_list .box .text-content span {
		font-size: 12px;
		padding: 0 12px;
	}
	.committee_list .box .university {
		font-size: 14px;
		text-align:left;
	}
	.committee_list .box .mail {
		font-size: 12px;
		text-align:left;
	}
	.committee_list.four .box{
		width:100%;
	}

	/* iab */
	.advisory-board-table {
		font-size: 14px;
	}

	.advisory-board-table td {
		padding: 10px 15px;
	}

	.advisory-board-table td:first-child {
		width: 150px;
	}

	.page-header h2 {
		font-size: 2em;
	}
	.name-container {
		flex-direction: column;
		text-align: center;
	}

	.profile-image {
		align-self: center;
	}
	.popup-container {
		width: 95%;
		max-height: 95vh;
	}

	.popup-header {
		padding: 20px;
	}

	.popup-content {
		padding: 20px;
		max-height: 70vh;
	}

	.personal-info {
		grid-template-columns: 1fr;
	}

	/* abstarct */
	.result-wrap .group-btn .btn-lg {font-size:1.2rem;}
	.write-wrap .write .row.table .cont .row .label {font-size:1.2rem;}

	/* infomation > venue */
	.side_tit {flex-direction:column; gap:20px;}
	.side_tit .con {width:100%;}
	.map_address {font-size:1.2rem;}
	.venue_slide .swiper-slide {height:auto;}

	/* infomation > Accommodaion */
	.hotel_list .box {width:100%;}
	.tibox {flex-direction:column;}
	.tibox .txt {width:100%;}
	.tibox div {width:100%;}
	.tibox .img {width:100%;}
	.hotel_list .tit {font-size:2rem;}
	.hotel_list dl {font-size:1.2rem;}
	.map_img .abso_txt {position:inherit;}

}
