@import url('//cdn.jsdelivr.net/font-iropke-batang/1.2/font-iropke-batang.css');
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;700&display=swap");

  
/* 
	[z-index]

	header : 30
	hamburger 버튼 : 1001
	popup : 2000
	submenu : 10
	sub_top_menu_wrap : 2
    menu-scrolled-wrap : 11
    footer: 10
*/

/* 
    @media (max-width: 1520px) {}
    @media (max-width: 1300px) {}
    @media (max-width: 1024px) {}
    @media (max-width: 767px) {}
    @media (max-width: 425px) {}
*/


* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html {
	font-size: 62.5%;
	overflow-y: scroll;
}

html,
body {
	width: 100%;
	height: 100%;
}

body {
	font-family: 'Pretendard', 'Roboto', sans-serif;
	font-size: 1.4rem;
	color:#222;
	line-height: 1;
	letter-spacing: -0.04em;
    background-color: #323137;
}

.hidden
{
	display:none !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: 100%;
	font-weight: normal;
	margin: 0;
}

a {
	color: inherit;
	text-decoration: none;
}

a:hover,
a:active {
	color: inherit;
	text-decoration: none;
}

table {
	table-layout: fixed;
	word-break: break-all;
	border-collapse: collapse;
	border-spacing: 0;
}

img,
fieldset,
hr {
	border: none;
}

ul,
li,
ol {
	list-style: none;
	margin: 0;
}

address,
em {
	font-style: normal;
}

img,
video,
canvas {
	height: auto;
}

legend {
	display: none;
}

input,
textarea,
button {
	outline: none;
    font-family: 'Pretendard';
    cursor: pointer;
    color: #222;
}

select {
	cursor: pointer;
    font-family: 'Pretendard';
    color: #222;
}

select::-ms-expand
{
   display:none;
} 

button {
	background: none;
	border:none;
    -webkit-appearance: none;
}

button:focus{
    /* outline: 1px solid #000; */
}

.textAL {
	text-align: left !important;
}

.textAC {
	text-align: center !important;
}

.textAR {
	text-align: right !important;
}

.textCut {
	white-space: nowrap;
	text-overflow: ellipsis;
	overflow: hidden;
}

.clearfix:after {
	clear: both;
	content: '';
	display: block;
}

.hide {
	display:none !important;
}

.objectFit img {
	object-fit: cover;
	width: 100%;
	height: 100% !important;
}

.objectFitIE {
	background-size: cover;
	background-position: center center;
}

.objectFitIE img {
	opacity: 0;
}

/* 사파리 브라우저 대응 input 포커스일때 파란색 배경 제거*/
@supports (-webkit-touch-callout: none) {
	input:focus{
		outline: none;
		box-shadow: none;
	}
}

input:-webkit-autofill {
	background-color: transparent !important;
	-webkit-box-shadow: 0 0 0px 1000px white inset !important;
	box-shadow: 0 0 0px 1000px white inset !important;
}

i{
	font-style: normal;
}

img {
    border: none;
	vertical-align: middle;
}

label{
	cursor: pointer;
}

html.no_scroll {
    position: fixed;
    width: 100%;
    overflow-y: scroll;
}


/* 텍스트 정렬 */
.borderLN{
	border-left: 0 !important;
}
.borderRN{
	border-right: 0 !important;
}
.borderTN{
	border-top: 0 !important;
}
.borderBN{
	border-bottom: 0 !important;
}
.borderLRight{
	border-left: 1px solid #ECECEC !important;
}
.borderRRight{
	border-right: 1px solid #ECECEC !important;
}
.borderTRight{
	border-top: 1px solid #ECECEC !important;
}
.textAL{
	text-align: left !important;
}
.textAR{
	text-align: right !important;
}
.textAC{
	text-align: center !important;
}
table.borderLRN th{
	border-left: none !important;
	border-right: none !important;
}
table.borderLRN td{
	border-left: none !important;
	border-right: none !important;
}

/* checkbox radio 숨기는 태그 */
.visually_hidden {
    position: absolute !important;
    width: 0px !important;
    height: 0px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

/* 레이아웃 길이 설정 */
.layout_max{
	max-width: 1460px;
	width: 100%;
	margin: 0 auto;
	padding-left: 30px;
	padding-right: 30px;
}
.layout_max.no_padding{
	padding-left: 0;
	padding-right: 0;
}
@media screen and (max-width: 1590px) {
	.layout_max{
		width: 100%;
		padding-left: 40px;
		padding-right: 40px;
	}
}
@media screen and (max-width: 1024px) {
	.layout_max{
		padding-left: 40px;
		padding-right: 40px;
	}
}
@media screen and (max-width: 767px) {
	.layout_max{
		padding-left: 15px;
		padding-right: 15px;
	}
}




/* safari 대응 password는 시스템 기본 폰트 */
input[type="password"] {

}
input[type="password"]::placeholder{

}


/* 폰트 start*/
@font-face {
	font-family: 'Pretendard';
	src: url('/assets/bsd01/font/Pretendard-Light.woff') format('woff');
	font-weight: 300;
	font-style: normal;
}
@font-face {
	font-family: 'Pretendard';
	src: url('/assets/bsd01/font/Pretendard-Regular.woff') format('woff');
	font-weight: 400;
	font-style: normal;
}
@font-face {
	font-family: 'Pretendard';
	src: url('/assets/bsd01/font/Pretendard-Medium.woff') format('woff');
	font-weight: 500;
	font-style: normal;
}
@font-face {
	font-family: 'Pretendard';
	src: url('/assets/bsd01/font/Pretendard-SemiBold.woff') format('woff');
	font-weight: 600;
	font-style: normal;
}
@font-face {
	font-family: 'Pretendard';
	src: url('/assets/bsd01/font/Pretendard-Bold.woff') format('woff');
	font-weight: 700;
	font-style: normal;
}
@font-face {
	font-family: 'Pretendard';
	src: url('/assets/bsd01/font/Pretendard-ExtraBold.woff') format('woff');
	font-weight: 800;
	font-style: normal;
}

@font-face {
    font-family: 'Gyeonggi_Batang_Regular';
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/2410-3@1.0/Batang_Regular.woff2?v=2') format('woff2');
    src: url('https://fastly.jsdelivr.net/gh/projectnoonnu/2410-3@1.0/Batang_Regular.woff?v=2') format('woff');
    font-weight: 400;
    font-style: normal;
}

@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100..900&display=swap');
/* 폰트 end*/




/* swiper 기본 start */
.swiper-wrapper{
	z-index: 0;
}




/* TabMenu */
.tab_menu .tab{
    cursor: pointer;
}
.tab_content > div:not(:first-child) {
    display: none;
}





/* footer start */
.footer
{
    position:relative;
    width:100%;
    height:451px;
    background:#323137;
	z-index:10;
}
.footer .top
{
    position:relative;
    width:100%;
    height: 60px;
    min-height:60px;
    border-bottom:1px solid #43414D;
}
.footer .top > ul
{
    height:100%;
    display:flex;
}
.footer .top ul li
{
    font-size:18px;
    font-weight:300;
    color:#FFFFFF;
    letter-spacing:-0.9px;
}
.footer .top ul li a
{
    display:flex;
    align-items:center;
    padding:10px 30px;
    min-height:60px;
}
.footer .top > ul > li
{
    position:relative;
    flex-basis:20%;
    flex-shrink:0;
    border-right:1px solid #43414D;
}
.footer .top > ul > li:last-child
{
    border-right:0;
}
.footer .top > ul > li > a
{
    position:relative;
}
.footer .top > ul > li > a:after
{
    content:'';
    position:absolute;
    top:50%;
    right:30px;
    width:15px;
    height:15px;
    transform: translateY(-50%);
    background: url(/assets/bsd01/image/common/footer_plus.svg) no-repeat center/15px 15px;

    /* ✅ 합성/블렌딩 영향 최소화 */
    isolation: isolate;
    mix-blend-mode: normal;
    filter: none;

    /* ✅ 레이어 안정화(이게 의외로 잘 먹음) */
    will-change: auto;
    transform: translateY(-50%) translateZ(0);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    transition: 0.3s;
}
.footer .top > ul > li.active > a:after
{  
    content: '';
    background:url(/assets/bsd01/image/common/footer_minus.svg) no-repeat center/15px 15px;
    transform: translateY(-50%) translateZ(0) rotate(180deg);
}
.footer .top > ul > li > ul
{
    display:none;
    position:absolute;
    bottom:59px;
    left:0;
    width:100%;
    max-height: 600px;
    background:#1E1F25;
    outline:1px solid #1E1F25;
    z-index:10;
    border-right:1px solid #242C31;
    overflow-y: auto;
}
.footer .top > ul > li > ul::-webkit-scrollbar{
    width: 5px;
    height: 100%;
    border-radius: 2.5px;
}
.footer .top > ul > li > ul::-webkit-scrollbar-thumb{
    width: 5px;
    border-radius: 2.5px;
    background-color: #7c7c7c;
}
.footer .top > ul > li:last-child > ul
{
    border-right:0;
}
.footer .top > ul > li > ul li
{
    border-bottom:1px solid #242C31;
}
.footer .top > ul > li > ul li:last-child
{
    border-bottom: 0px;
}
.footer .conts
{
    position:relative;
    width:100%;
    margin-top:70px;
    font-size:15px;
    font-weight:300;
    letter-spacing:-0.75px;
    color:#B6B8BA;
    padding-bottom:40px;
    display: flex;
}
.footer .conts > span
{
    display:block;
    margin-top:26px;
}
.footer .conts ul
{
    display:flex;
    align-items:center;
    margin-top:15px;
}
.footer .conts ul li + li
{
    margin-left:20px;
}
.footer .conts ul li span
{
    letter-spacing:0;
}
.footer .conts .left_zone{

}
.footer .conts .right_zone{
    flex: 1;
    padding-left: 135px;
    width: 100%;
}
.footer .copy
{
    position:relative;
    width:100%;
    display:flex;
    justify-content:space-between;
    align-items:center;
    overflow: auto;
    padding: 10px 0;
}
.footer .copy .left
{
    font-size:16px;
    font-weight:300;
    letter-spacing:-0.8px;
    color:rgba(193, 196, 198, 1);
    display: flex;
    gap: 43px;
}
.footer .copy .left .link_w
{
    color: #FFF;
}
.footer .copy .left > *
{
    display: unset;
    transition:all .3s;
    font-size: 17px;
    font-weight: 300;
    white-space: nowrap;
}
.footer.ie_style .copy .left > *
{
    display:inline-block;
}
.footer .copy .left > *.active,
.footer .copy .left > *:hover
{
    color:#fff;
}
.footer .info{
    padding-top: 40px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}
.footer .info .floor{
    font-size: 17px;
    font-weight: 300;
}
.footer .info .floor:nth-of-type(2){
    display: flex;
    gap: 40px;
    letter-spacing: 0;
}
.footer .copy .floore .address{

}
.footer .copyright_wrap{
    margin-top: 27px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}
.footer .copyright_wrap .left{
    text-align: center;
    line-height: 1.2;
    letter-spacing: 0;
}
.footer .copyright_wrap .right{
    display: flex;
    align-items: center;
    gap: 10px;
}
.footer .copyright_wrap .right .item{
    width: 35px;
    height: 35px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #fff;
    border-radius: 50%;
}
.footer .copyright_wrap .line{
    flex: 1;
    height: 1px;
    background-color: #43414D;
}
@media screen and (max-width:1499px)
{
    .footer .layout{
        max-width: 100%;
        padding: 0 60px;
    }
}
@media screen and (max-width:1279px)
{
    .footer
    {
        height:auto;
        padding-bottom:100px;
    }
    .footer .layout{
        padding: 0 40px;
    }

    .footer .copy
    {
        flex-flow:column wrap;
        justify-content:flex-start;
        align-items:flex-start;
    }
    .footer .conts .right_zone{
        padding-left: 100px;
    }
    .footer .conts .left_zone{
        width: 170px;
    }
    .footer .conts .left_zone img{
        width: 100%;
        height: 100%;
        object-fit: contain;
    }
}

@media screen and (max-width:1024px)
{
    .footer {
        padding-bottom: 30px;
    }
    .footer .layout
    {
        padding:0 20px;
    }
    .footer .top,
    .footer .top ul li a
    {
        min-height:55px;
    }
    .footer .top > ul
    {
        padding:0;
    }
    .footer .top ul li
    {
        font-size:16px;
    }
    .footer .top ul li a
    {
        padding:0 15px;
    }
    .footer .top > ul > li > a:after
    {
        right:20px;
        width:13px;
        height:13px;
        background-size:13px;
    }
    .footer .top > ul > li > ul
    {
        max-height: 500px;
        bottom:55px;
    }
    .footer .conts
    {
        margin-top:40px;
        flex-direction: column;
        align-items: center;
    }
    .footer .conts .right_zone{
        padding-left: 0;
        flex: none;
    }
    .footer .copy
    {
        margin-top:20px;
        align-items: center;
    }

    .footer .copy .left {
        font-size: 16px;
        gap: 25px;
    }
    .footer.ie_style .copy .left
	{
		width: 100%;
	}
    .footer .copy .left > *
    {
        margin-left:0;
        line-height:1.5;
    }
    .footer .copyright_wrap{
        flex-direction: column;
    }
    .footer .copyright_wrap .line{
        display: none;
    }

    .footer .info {
        padding-top: 20px;
        align-items: center;
    }
}

@media screen and (max-width:767px)
{
    .footer
    {
        padding-bottom:50px;
    }
    .footer .top
    {
        border-bottom:0;
    }
    .footer .top,
    .footer .top ul li a
    {
        height:auto;
        min-height: auto;
    }
    .footer .top > ul
    {
        flex-wrap: wrap;
        height: auto;
    }
    .footer .top > ul > li
    {
        flex-basis:100%;
        border-bottom:1px solid #242C31
    }
    .footer .top ul li a
    {
        padding:13px 14px;
        font-size: 15px;
    }
    .footer .top > ul > li > a:after
    {
        
    }
    .footer .top > ul > li > ul
    {
        bottom:42px;
    }
    .footer .conts
    {
        margin-top:30px;
        padding-bottom:20px;
        font-size:14px;
    }
    .footer .conts > span
    {
        line-height: 18px;
    }
    .footer .conts ul{
        position: relative;
    }
    .footer .conts ul.clearfix
    {
        flex-flow:column wrap;
        align-items:flex-start;
    }
    .footer .conts ul li
    {
        margin-bottom:10px;
    }
    .footer .conts ul li + li
    {
        margin-left:0;
    }
    .footer .copy .left
    {
        font-size: 14px;
        gap: 5px 19px;
        flex-wrap: wrap;
        justify-content: center;

    }
    .footer .copy .left > *
    {
        font-size: 16px;
    }
    .footer .conts .left_zone{
        width: 138px;
    }
    .footer .info .floor{
        text-align: center;
    }
    .footer .info .floor:nth-of-type(2){
        flex-direction: column;
        gap: 5px;
    }
}
/* footer end */



header {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    height: auto;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    z-index: 30;
    transition: 0.5s;
}
/* header .layout_max::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(-180deg, rgba(255, 255, 255, 0) 0%, rgba(0, 0, 0, 0.3) 100%);
    z-index: 0;
} */
/* header.active .layout_max::before{
    display: none;
} */
header.active{
    border-bottom: 1px solid #E8E8E8;
    background-color: #fff;
}
header::before{
    content: "";
    position: absolute;
    top: 86.5px;
    left: 0;
    width: 100%;
    height: 1px;
    border-bottom: 1px solid #E8E8E8;
    display: none;
}
header.active::before{
    display: block;
}
header.sub::before{
    display: block;
}
header .layout_max{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    z-index: 1;
    padding-left: 0;
    padding-right: 0;
    max-width: 100%;
}
header.active .layout_max{
    /* max-width: calc(100% - 436px); */
}
header .layout_max > .center{
    flex: 1;
}
header .layout_max > div .nav{
    width: 100%;
}
header .layout_max .left{
    height: auto;
    width: 100%;
    max-width: 250px;
    position: relative;
    top: 0;
    left: 0;
    padding-left: 20px;
    z-index: 1;
}
header .layout_max .left h1{
    height: 90px;
    display: flex;
    align-items: center;
}
header .layout_max .right{
    width: 100%;
    max-width: 300px;
    position: relative;
    top: 0;
    right: 0;
    padding-right: 30px;
    z-index: 1;
}
header .layout_max .right .in{
    height: 90px;
    display: flex;
    justify-content: flex-end;
}
header h1 {
    width: 218px;
}
header h1 a{
    width: 100%;
    height: 100%;
    display: inline-flex;
    align-items: center;
}
header h1 a img{
    width: 100%;
}
header nav {
    position: relative;
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 0px;
}
header nav > div{
    width: 100%;
    display: flex;
    justify-content: center;
}

/* header nav > div .menu-1st ul{
    transition: 0.5s;
    max-width: 700px;
    width: 100%;
}
header.active nav > div .menu-1st ul{
    max-width: calc(100% - 500px);
} */









header nav > div .menu-1st{
    transition: 0.5s;
    width: 100%;
    max-width: 900px;
    /* background-color: rgba(106, 142, 35, 0.089); */
    /* background-color: orange; */
}
header.active nav > div .menu-1st{
    /* max-width: calc(100% - 500px); */
    max-width: 100%;
}
header nav > div .menu-1st ul li{
    flex: 0 0 auto;
    height: 90px;
    display: flex;
    align-items: center;
    padding: 0 30px;
    /* transition: 0.5s; */
    color: #fff;
    /* background-color: orange; */
    /* flex: 1; */
}
header nav > div .menu-1st ul li.active{

}
header nav > div .menu-1st ul li.active > a::before{
    content: "";
    position: absolute;
    bottom: 1px;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #E5002B;
}
header.sub nav > div .menu-1st ul li > a{
    position: relative;
    color: #000;
}
header nav > div .menu-1st ul > li > a{
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    text-align: center;
    height: 100%;
    color: #fff;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    /* transition: 0.5s; */
}
header nav > div .menu-1st ul > li > a > span{
    width: 100%;
    display: block;
    /* overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis; */
}
header.active nav > div .menu-1st ul > li > a{
    color: #000;
}
header.active nav > div .menu-1st ul li > a{
    /* white-space: wrap; */
}
header.active nav > div .menu-1st ul li{
    flex: 1;
    padding: 0 20px;
}

header.active nav > div .menu-1st > ul:has(> li:nth-child(1):last-child) > li{
  max-width: 100%;
}
header.active nav > div .menu-1st > ul:has(> li:nth-child(2):last-child) > li{
  max-width: 50%;
}
header.active nav > div .menu-1st > ul:has(> li:nth-child(3):last-child) > li{
  max-width: 33.333%;
}
header.active nav > div .menu-1st > ul:has(> li:nth-child(4):last-child) > li{
  max-width: 25%;
}
header.active nav > div .menu-1st > ul:has(> li:nth-child(5):last-child) > li{
  max-width: 20%;
}
header.active nav > div .menu-1st > ul:has(> li:nth-child(6):last-child) > li{
 max-width: 16.667%;
}
header.active nav > div .menu-1st > ul:has(> li:nth-child(7):last-child) > li{
  max-width: 14.286%;
}
header.active nav > div .menu-1st > ul:has(> li:nth-child(8):last-child) > li{
  max-width: 12.5%;
}
header nav > div .menu-2nd{
    width: 100%;
    display: flex;
    /* padding-top: 30px; */
    /* padding-bottom: 50px; */
    display: none;
    opacity: 0;
    transition: opacity 0.5s;
}
header.active nav > div .menu-2nd{
    opacity: 1;
}
header nav > div .menu-2nd[style*='display: block']{
    display: flex !important;
}
header nav > div .menu-2nd ul{
    flex: 1;
    border-right: 1px solid #E8E8E8;
    margin-top: 30px;
    margin-bottom: 50px;
}
header nav > div .menu-2nd:has(> ul:nth-child(1):last-child) > ul{
  max-width: 100%;
}
header nav > div .menu-2nd:has(> ul:nth-child(2):last-child) > ul{
  max-width: 50%;
}
header nav > div .menu-2nd:has(> ul:nth-child(3):last-child) > ul{
  max-width: 33.333%;
}
header nav > div .menu-2nd:has(> ul:nth-child(4):last-child) > ul{
  max-width: 25%;
}
header nav > div .menu-2nd:has(> ul:nth-child(5):last-child) > ul{
  max-width: 20%;
}
header nav > div .menu-2nd:has(> ul:nth-child(6):last-child) > ul{
 max-width: 16.667%;
}
header nav > div .menu-2nd:has(> ul:nth-child(7):last-child) > ul{
  max-width: 14.286%;
}
header nav > div .menu-2nd:has(> ul:nth-child(8):last-child) > ul{
  max-width: 12.5%;
}
header nav > div .menu-2nd ul:last-of-type{
    border-right: 0;
}
header nav > div .menu-2nd ul li{
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 18px;
    font-weight: 500;
    color: #333333;
    height: auto;
}
header nav > div .menu-2nd > ul > li > a{
    width: 100%;
    text-align: center;
    display: block;
    padding: 11px 11px;
}
header nav .menu-1st {
    width: 100%;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
header nav .menu-1st > ul{
    width: 100%;
    height: auto;
    list-style-type: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    align-items: center;
    font-size: 21px;
    font-weight: 600;
    color: #fff;
    /* transition: 0.5s; */
    gap: 0px;
    flex: 1;
}
header.active nav .menu-1st > ul {
    gap: 0;
}
header nav .menu-1st > ul > li{
    text-align: center;
}
header.active nav .menu-1st > ul > li{
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}
header nav .menu-1st > ul > li .menu-1st_tit {
    text-align: center;
}
header.active nav .menu-1st > ul > li{

}
header .right_wrap{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 30px;
    color: #fff;
    font-size: 14px;
    font-family: "Gyeonggi_Batang_Regular";
}
header .right_wrap a{
    white-space: nowrap;
}
header.active .right_wrap{
    color: #222;
}
header.active .right_wrap .ham_btn img{
    content: url(/assets/bsd01/image/page/main/icon_ham_black.svg);
}
header.white_bg_st{
    background-color: #fff;
    position: relative;
    border-bottom: 1px solid #F3F3F3;
}
header.white_bg_st nav ul{
    color: #222;
}
header.white_bg_st .right_wrap{
    color: #222;
}
header.white_bg_st h1 a img{
    content: url(/assets/bsd01/image/logo_color.svg);
}
header.white_bg_st .right_wrap .ham_btn img{
    content: url(/assets/bsd01/image/icon_ham_black.svg);
}
header.active{

}
header.active h1 a img{
    content: url(/assets/bsd01/image/page/main/logo_color.svg);
}
header > .layout_max ul.page_top_navi > li > ul{
    position: absolute;
    top: 0;
    left: 0;
    /* background-color: #fff; */
    width: 100%;
	min-height: 420px;
    top: 90px;
	padding-left: calc((100% - 1800px) / 2);
	padding-right: calc((100% - 1800px) / 2);
	padding-top: 45px;
	display: flex;
	flex-wrap: wrap;
	align-content: flex-start;
	gap: 15px 40px;
	display: none;
}
header > .layout_max ul.page_top_navi > li > ul[style*='display: block']{
    display: flex !important;
}
header > .layout_max ul.page_top_navi > li:first-of-type > ul{
	display: flex;
	display: none;
}
header > .layout_max ul.page_top_navi > li > ul > li{
	width: 21%;
}
header > .layout_max ul.page_top_navi > li > ul > li > a{
	display: inline-flex;
	width: 100%;
	padding-top: 15px;
	padding-bottom: 15px;
	font-weight: 500;
	font-size: 17px;
	position: relative;
	border-bottom: 1px solid #E5E5E5;
}
header > .layout_max ul.page_top_navi > li > ul > li.active > a{
	border-bottom: 1px solid #231915;
}
header > .layout_max ul.page_top_navi > li > ul > li > a::after{

}
header > .layout_max ul.page_top_navi > li > ul > li > ul{
	display: flex;
	flex-direction: column;
	padding-top: 7.5px;
}
header > .layout_max ul.page_top_navi > li > ul > li > ul > li{

}
header > .layout_max ul.page_top_navi > li > ul > li > ul > li > a{
	display: inline-flex;
	width: 100%;
	font-weight: 400;
	color: #6A646A;
	font-size: 16px;
	padding: 10px 0;
}
header > .layout_max ul.page_top_navi > li > ul > li > ul > li.active > a{
	color: #D66F50;
	text-decoration: underline;
	text-decoration-color: #D66F50;
	text-underline-position: under;
}
header > .layout_max ul.page_top_navi > li > ul > li > ul > li:hover > a{
	color: #D66F50;
	text-decoration: underline;
	text-decoration-color: #D66F50;
	text-underline-position: under;
}
header > .layout_max ul.page_top_navi::before{
	content: '';
    position: absolute;
    top: 0px;
    left: 0;
    width: 100%;
    height: 0px;
    background-color: #ffffff70;
    transition: height .3s;
    box-shadow: 0px 50px 50px rgb(0 0 0 / 7%);
	z-index: -1;
}
header > .layout_max ul.page_top_navi.scroll::before{
	border-top: 1px solid #eee;
}

header > .layout_max ul.page_top_navi.scroll::after{
    content: "";
    background: url(/assets/ccd01/image/navi_top_deco.png) top center no-repeat;
    background-size: contain;
    top: 100px;
    left: 0;
    position: absolute;
    width: calc((100% - 1200px) / 2 + 250px);
    height: 145px;
    pointer-events: none;
}
header > .layout_max ul.page_top_navi.scroll::before{
	height: 360px;
}
header.sub{
    position: absolute;
    background-color: #fff;
    /* border-bottom: 1px solid #E8E8E8; */
}
header.sub nav .menu-1st > ul{
    color: #000;
}
header.sub .right_wrap{
    color: #000;
}
header.sub .right_wrap .ham_btn img{
    content: url(/assets/bsd01/image/page/main/icon_ham_black.svg);
}







@media (max-width: 1910px) {

}
@media (max-width: 1500px) {
    header{
        padding-left: 20px;
        padding-left: 0;
        padding-right: 0;
    }
    header nav > div .menu-1st{
        max-width: 750px;
    }
    header nav > div .menu-1st ul li{
        font-size: 16px;
    }
}
@media (max-width: 1440px) {
    header .layout_max > .center{
        display: none;
    }
    header .layout_max .left{
        min-width: auto;
    }
    header .layout_max .right{
        min-width: auto;
        max-width: auto;
        width: auto;
        padding-right: 20px;
    }
    header .right_wrap{
        min-width: auto;
    }
    header .layout_max > div{
        flex: none;
    }
}
@media (max-width: 1200px) {

}
@media (max-width: 1024px) {
    
}
@media (max-width: 767px) {
    header h1{
        width: auto;
    }
    header h1 a img{
        width: 130px;
    }
    header .layout_max .left{
        padding-left: 10px;
    }
    header .layout_max .left h1{
        height: 45px;
    }
    header .layout_max .right{
        padding-right: 0;
    }
    header .layout_max .right .in{
        height: 45px;
    }
    header .right_wrap{
        width: auto;
        justify-content: flex-end;
        padding-right: 3px;
    }
    header .right_wrap > a{
        display: none;
    }
    header::before{
        top: 45px;
    }
}













.container{
    background-color: #fff;
}
.container.sub{
    padding-top: 90px;
}
.container .menu-path{
    padding-top: 55px;
    padding-bottom: 60px;
}
.container .menu-path .area.top{
    display: flex;
    justify-content: space-between;
    padding-bottom: 40px;
}
.container .menu-path .breadcrumb{
    display: flex;
    align-items: center;
    gap: 0 35px;
}
.container .menu-path .breadcrumb span{
    font-size: 18px;
    position: relative;
}
.container .menu-path .breadcrumb span:last-of-type{
    font-weight: 700;
}
.container .menu-path .breadcrumb span:last-of-type::after{
    display: none;
}
.container .menu-path .breadcrumb span::after{
    content: "";
    position: absolute;
    top: 50%;
    right: -17.5px;
    transform: translateY(-50%);
    width: 3px;
    height: 3px;
    background-color: #666666;
    display: inline-block;
    border-radius: 50%;
}
.container .menu-path h2{
    font-size: 40px;
    font-weight: 700;
    display: block;
    font-family: "Gyeonggi_Batang_Regular";
}

.container .menu-path .area.bottom{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
}
.container .menu-path .area.bottom .scroll_container{
    width: calc(100% - 90px);
    overflow: hidden;
}
.container .menu-path .area.bottom ul{
    /* display: flex; */
    /* gap: 7px; */
    /* width: 100%; */
    /* overflow: auto; */
}
.container .menu-path .area.bottom .scroll_container ul li{
    font-size: 17px;
    font-weight: 500;
    color: #666666;
    text-align: center;
    border: 1px solid #D5DBE9;
    border-radius: 25px;
    white-space: nowrap;
    width: auto;
    margin-right: 8px;
}
.container .menu-path .area.bottom .scroll_container ul li a{
    display: inline-flex;
    padding: 15px 28px;
}
.container .menu-path .area.bottom .scroll_container ul li.active{
    background-color: #004A9C;
    border: 1px solid #004A9C;
    color: #fff;
}
.container .menu-path .area.bottom .share_wrap{
    /* width: 90px; */
    position: relative;
    padding-left: 30px;
    margin-top: 4px;
    z-index: 10;
    display: flex;
    gap: 6.5px;
}
.container .menu-path .area.bottom .share_wrap .btn{
    width: 38px;
    aspect-ratio: 1/1;
    border-radius: 50%;
    border: 1px solid #666666;
    display: flex;
    align-items: center;
    justify-content: center;
}
.container .menu-path .area.bottom .share_wrap .btn.btn_qr > img{
    padding: 10px;
}
.container .menu-path .area.bottom .share_wrap .btn.btn_qr.active{
    border: 1px solid #24A3A7;
    background-color: #2ABDC2;
}
.container .menu-path .area.bottom .share_wrap .btn.btn_qr.active img{
    content: url(/assets/bsd01/image/common/icon_qr_white.svg);
}
.container .menu-path .area.bottom .share_wrap .btn > img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.container .menu-path .area.bottom .share_wrap.active .btn_share{
    border: 1px solid #24A3A7;
    background-color: #2ABDC2;
}
.container .menu-path .area.bottom .share_wrap.active .btn_share img{
    content: url(/assets/bsd01/image/common/icon_share.svg);
}
.container .menu-path .area.bottom .share_wrap .btn_share:hover{
    border: 1px solid #24A3A7;
    background-color: #2ABDC2;
}
.container .menu-path .area.bottom .share_wrap .btn_share:hover img{
    content: url(/assets/bsd01/image/common/icon_share.svg);
}
.container .menu-path .area.bottom .share_wrap ul{
    position: relative;
    display: flex;
    gap: 5px;
    position: absolute;
    top: calc(100% + 10px);
    right: -13px;
    padding: 9px;
    border: 1px solid #BDCFDC;
    border-radius: 25px;
    background-color: #F5F7FC;
    display: none;
    z-index: 1;
}
.container .menu-path .area.bottom .share_wrap ul::after{
    position: absolute;
    content: '';
    width: 13px;
    height: 9px;
    top: -9px;
    right: 27px;
    background: url(/assets/bsd01/image/common/share_wrap_arrow.svg) no-repeat;
}
.container .menu-path .area.bottom .share_wrap.active ul{
    display: flex;
}
.container .menu-path .area.bottom .share_wrap ul[style*='display: block']{
    display: flex !important;
}
.container .menu-path .area.bottom .share_wrap ul li{
    width: 32px;
    aspect-ratio: 1/1;
    background-color: #FFE812;
    border-radius: 50%;
}
.container .menu-path .area.bottom .share_wrap ul li button{}
.container .menu-path .area.bottom .share_wrap ul li button img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.container .menu-path .area.bottom .share_wrap ul li:nth-of-type(2){background-color: #06BE34;}
.container .menu-path .area.bottom .share_wrap ul li:nth-of-type(3){background-color: #3A5CA9;}
.container .menu-path .area.bottom .share_wrap ul li:nth-of-type(4){background-color: #000000;}
.container .menu-path .area.bottom .share_wrap ul li:nth-of-type(5){background-color: #366e9b;}
@media (max-width: 1024px) {
    .container .menu-path {
        padding-top: 40px;
        padding-bottom: 35px;
    }
    .container .menu-path h2 {
        font-size: 35px;
    }
    .container .menu-path .breadcrumb{
        display: none;
    }
    .container .menu-path .area.top{
        text-align: center;
        justify-content: center;
        padding-bottom: 0;
        margin-top: 0px;
    }
    .container .menu-path .area.bottom{
        margin-top: 30px;
    }
    .container .menu-path .area.bottom .share_wrap{
        position: absolute;
        top: 20px;
        right: 20px;
    }
    .container .menu-path .area.bottom .scroll_container{
        width: 100%;
    }
    .container .menu-path{
        position: relative;
    }
    .container .menu-path .area.bottom ul{

    }
    .container .menu-path .area.bottom ul:not(:has(.swiper-slide-active)){
        justify-content: center;
    }
}
@media (max-width: 767px) {
    .container.sub{
        padding-top: 90px;
    }
    .container .menu-path{
        padding-top: 0;
        padding-bottom: 0px;
    }
    .container .menu-path .area.top{
        display: none;
    }
    .container .menu-path .area.bottom{
        align-items: center;
        margin: 0;
    }
    .container .menu-path .area.bottom .scroll_container ul li a{
        padding: 10px 14px;
        font-size: 14px;
    }
    .container .menu-path .area.bottom .share_wrap{
        margin-top: 0;
        display: none;
    }
    .container .menu-path .area.bottom .scroll_container{
        width: 100%;
    }
    .container .menu-path .area.bottom .scroll_container ul li{
        margin-top: 25px;
        margin-bottom: 25px;
    }
    .container .menu-path .breadcrumb{
        display: none;
    }
}












.full-menu{
    position: fixed;
    top: 0%;
    left: 100%;
    width: 100%;
    height: 100dvh;
    min-height: 100%;
    overflow: hidden;
    z-index: 101;
    background-color: #fff;
    transition: left 0.5s ease-in-out;
    display: flex;
    justify-content: space-between;
    left: 0;
    display: none;
}
.full-menu[style*='display: block']{
    display: flex !important;
}
.hover_after .full-menu{
    display: none;
}
.full-menu.active{
    left: 0;
}
.full-menu .btn-close{

}
.full-menu .body{
    width: calc(100% - 80px);
    background-color: #FFFFFF;
}
.full-menu .body .top_logo{
    width: 100%;
    height: 90px;
    display: flex;
    align-items: center;
    padding-left: 20px;
    border-bottom: 1px solid #E8E8E8;
}
.full-menu .body .depth-1{
    padding-left: 135px;
    padding-top: 10px;
    padding-bottom: 40px;
    overflow: auto;
    height: calc(100% - 90px);

    /* 스크롤바 숨기기 - 모든 브라우저 대응 */
    scrollbar-width: none;      /* Firefox */
    -ms-overflow-style: none;   /* IE, Edge */
}
.full-menu .body .depth-1::-webkit-scrollbar {
    display: none;              /* Chrome, Safari */
}
.full-menu .body .depth-1 > li{
    padding: 50px 0;
    display: flex;
}
.full-menu .body .depth-1 > li > a{
    color: #004A9C;
    font-size: 35px;
    font-weight: 600;
    width: 380px;
    min-width: 380px;
}
.full-menu .body .depth-1 > li > ul.depth-2{
    width: calc(100% - 380px);
    display: flex;
}
.full-menu .body .depth-1 > li > ul.depth-2 > li{
    width: 25%;
}
.full-menu .body .depth-1 > li > ul.depth-2 > li > a{
    color: #222222;
    font-size: 22px;
    font-weight: 600;
}
.full-menu .body .depth-1 > li > ul.depth-2 > li > ul.depth-3 {
    padding-top: 25px;
    display: flex;
    flex-direction: column;
    gap: 17px;
    color: #333333;
    font-size: 18px;
}
.full-menu .body .depth-1 > li > ul.depth-2 > li > ul.depth-3 > li{}
.full-menu .side{
    width: 80px;
    padding: 25px 6px;
    background-color: #004A9C;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
}
.full-menu .side .top_position{
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
}
.full-menu .side .top_position .btn-close{
    width: 40px;
    height: 40px;
}
.full-menu .side .top_position .login_wrap{
    display: flex;
    flex-direction: column;
    margin-top: 15px;
    width: 100%;
}
.full-menu .side .top_position .login_wrap a{
    color: #fff;
    padding: 15px 0;
    border-bottom: 1px solid #ffffff30;
    text-align: center;
}
.full-menu .side .top_position .login_wrap a:last-of-type{
    border-bottom: 0;
}
.full-menu .side .bottom_position{
    display: flex;
    flex-direction: column;
    text-align: center;
}
.full-menu .side .bottom_position a{
    
}
.full-menu .side .bottom_position a + a{
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid #ffffff30;
}
.full-menu .side .bottom_position a .image{

}
.full-menu .side .bottom_position a .text{
    font-size: 15px;
    font-weight: 600;
    color: #fff;
}
@media (max-width: 1520px) {
    .full-menu .body .depth-1 > li > a{
        width: 250px;
        min-width: 250px;
        font-size:26px;
    }
    .full-menu .body .depth-1 > li > ul.depth-2{
        width: calc(100% - 250px);
    }
}
@media (max-width: 1300px) {
    .full-menu .body .depth-1 > li{
        flex-direction: column;
        gap: 30px;
    }
    .full-menu .body .depth-1 > li > ul.depth-2{
        width: 100%;
    }
    .full-menu .body .depth-1{
        padding-left: 30px;
    }
    .full-menu .body .depth-1 > li > a{
        font-size: 25px;
    }
    .full-menu .body .depth-1 > li > ul.depth-2 > li > a{
        font-size: 20px;
    }
    .full-menu .body .depth-1 > li > ul.depth-2 > li > ul.depth-3 > li{
        font-size: 17px;
    }
}
@media (max-width: 1024px) {}
@media (max-width: 767px) {
    .full-menu .body .top_logo{
        height: 45px;
        padding-left: 10px;
    }
    .full-menu .body .top_logo img{
        width: 130px;
    }
    .full-menu .body .depth-1{
        padding-top: 0;
        padding-left: 0;
    }
    .full-menu .body .depth-1 > li{
        padding: 0;
        gap: 0;
    }
    .full-menu .body .depth-1 > li > a{
        width: 100%;
        max-width: 100%;
        height: 60px;
        display: flex;
        align-items: center;
        padding: 0 30px;
        color: #000;
        border-bottom: 1px solid #22222210;
        font-size: 19px;
        position: relative;
    }
    .full-menu .body .depth-1 > li > a.deco::before{
        content: "";
        position: absolute;
        top: 50%;
        right: 15px;
        transform: translateY(-50%);
        background: url(/assets/bsd01/image/common/icon_ham_arrow.svg) center center no-repeat;
        background-size: contain;
        width: 15px;
        height: 13px;
        transition: transform 0.3s;
    }
    .full-menu .body .depth-1 > li > a.deco.reversal::before{
            transform: translateY(-50%) rotate(180deg);
    }
    .full-menu .body .depth-1 > li > ul.depth-2{
        display: none;
        padding-left: 20px;
        background-color: #F8F8F8;
    }
    .full-menu .body .depth-1 > li > ul.depth-2 > li {
        display: flex;
        width: 100%;
        border-bottom: 1px solid #22222210;
    }
    .full-menu .body .depth-1 > li > ul.depth-2 > li > a{
        width: 115px;
        min-width: 115px;
        padding-left: 10px;
        padding-top: 15px;
        padding-bottom: 15px;
        padding-right: 15px;
        font-size: 15px;
        flex: 1;
    }
    .full-menu .body .depth-1 > li > ul.depth-2 > li > ul{
        width: calc(100% - 115px);
    }
    .full-menu .body .depth-1 > li > ul.depth-2 > li > ul.depth-3{
        padding-top: 0;
        gap: 0;
    }
    .full-menu .body .depth-1 > li > ul.depth-2 > li > ul.depth-3 li{
        border-bottom: 1px solid #00000020;
    }
    .full-menu .body .depth-1 > li > ul.depth-2 > li > ul.depth-3 li:last-of-type{
        border-bottom: 0;
    }
    
    .full-menu .body .depth-1 > li > ul.depth-2 > li > ul.depth-3 li a{
        padding: 15px 0;
        display: block;
        width: 100%;
        font-size: 15px;
    }
    
}
@media (max-width: 425px) {}













.aside{
    position: fixed;
    right: 2.5%;
    bottom: 50%;
    transform: translateY(50%);
    width: 80px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 1;
}

.aside .btn{
    position: relative;
    width: 76px;
    height: 76px;
    transform: rotate(8deg) translateY(0);
    background: transparent linear-gradient(157deg, #114BEB 0%, #FC244C 100%) 0% 0% no-repeat padding-box;
    box-shadow: 3px 5px 15px #00000033;
    /* border: 1px solid #FFFFFF33; */
    border-radius: 20px 20px 13px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    /* transition: height 0.5s, width 0.5s; */
    transition: 0.3s;
    z-index: 2;
    cursor: pointer;
}
.aside .btn::after {
    position: absolute;
    content: '';
    width: 74px;
    height: 74px;
    border: 1px solid rgba(255,255,255,0.2);
    top: 0;
    left: 0;
    z-index: 1;
    border-radius: 20px 20px 13px 20px;
    transition: 0.5s;
}
.aside.active .btn{
    width: 53px;
    height: 53px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    /* UI Properties */
    transform: rotate(0deg) translateY(33px);
    /* border: 1px solid #FFFFFF33; */
    border-radius: 20px;
}

.aside.active .btn::after {
    width: 51px;
    height: 51px;
    border: 1px solid rgba(255,255,255,0.2);
    border-radius: 20px;
}

.aside .btn .text{
    display: block;
    transform:rotate(-8deg);
    color: #fff;
    opacity: 1;
    transition: 0.5s;
}
.aside.active .btn .text{
    display: none;
}
.aside .btn .icon{
    display: none;
    color: #fff;
    width: 17px;
    aspect-ratio: 1/1;
}
.aside .btn .icon img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.aside > .ul_wrap{
    z-index: 1;
    position: relative;
    background: #FFFFFF;
    border-radius: 46px;
    max-height: 0px;
    transition: 0.5s;
    overflow: hidden;
    box-sizing: border-box;
    box-shadow: 0px 8px 25px #0000001A;
}
.aside.active > .ul_wrap{
    height: auto;
    max-height: 500px;
}
.aside .ul_wrap ul{
    padding: 35px 21px;
    padding-top: 45px;
    display: flex;
    flex-direction: column;
    gap: 19px 0;
}
.aside .ul_wrap ul li{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.aside .ul_wrap ul .image{
    text-align: center;
}
.aside .ul_wrap ul .text{
    white-space: nowrap;
    font-size: 15px;
    font-weight: 600;
    color: #222;
    text-align: center;
}
@media (max-width: 1520px) {}
@media (max-width: 1300px) {}
@media (max-width: 1024px) {}
@media (max-width: 767px) {
    .aside{
        display: none;
    }
}
@media (max-width: 425px) {}










.preparing_div{
    padding: 70px 0;
    padding-bottom: 240px;
    font-size: 35px;
}
@media (max-width: 1520px) {}
@media (max-width: 1300px) {}
@media (max-width: 1024px) {}
@media (max-width: 767px) {
    .preparing_div{
        font-size: 23px;
        padding-bottom: 127px;
    }
}
@media (max-width: 425px) {}









.menu-scrolled-wrap{
    position: fixed;
    top: -60px;
    left: 0;
    z-index: 11;
    width: 100%;
    overflow: hidden;
}
.menu-scrolled-wrap.active{
    top: 0;
    overflow: initial;
}
.menu-scrolled{
    box-shadow: 0px 0px 10px #0000000D;
    background-color: #fff;
    border-bottom: 1px solid #e8edf9;
    width: 100%;
    transition: 0.5s;
}

.menu-scrolled .layout_max{
    display: flex;
    height: 60px;
}
.menu-scrolled .home{
    height: 100%;
    aspect-ratio: 1/1;
    background-color: #004A9C;
    display: flex;
    align-items: center;
    justify-content: center;
}
.menu-scrolled .home img{
    width: 25px;
    object-fit: contain;
}
.menu-scrolled ul.depth_wrap{
    display: flex;
    flex: 1;
}
.menu-scrolled ul.depth_wrap > li{
    position: relative;
    width: 33.3333%;
    border-right: 1px solid #e8edf9;
    border-left: 0;
    box-sizing: border-box;
    margin-left: -1px;
}
.menu-scrolled ul.depth_wrap > li:first-of-type{
    margin-left: 0;
}
.menu-scrolled ul.depth_wrap > li > button{
    display: inline-flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 0 30px;
    font-size: 18px;
    position: relative;
}
.menu-scrolled ul.depth_wrap > li > button::before{
    content: "";
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    background: url(/assets/bsd01/image/common/icon_menu_arrow_sky.svg) center center no-repeat;
    background-size: contain;
    width: 20px;
    height: 8px;
    transition: 0.3s;
}
.menu-scrolled ul.depth_wrap > li.active > a::before{
    transform: translateY(-50%) rotate(180deg);
}
.menu-scrolled ul.depth_wrap > li.active > a{
    background-color: #004A9C;
    color: #fff;
}
.menu-scrolled ul.depth_wrap > li > ul{
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #ffffff;
    color: #525252;
    display: none;
    max-height: 100dvh;
    overflow: auto;
    border: 1px solid #e8edf9; 
}

.menu-scrolled ul.depth_wrap > li > ul li {
    height: 55px;
    display: flex;
    align-items: center;
    font-size: 18px;
    border-bottom: 1px solid #e8edf9;
}
.menu-scrolled ul.depth_wrap > li > ul li:last-child {
    padding-bottom: 10px;
    border-bottom: 0px;
}
.menu-scrolled ul.depth_wrap > li > ul li.active {
    background: #004a9c;
    color: #FFF;    
    font-weight: 500;
}

.menu-scrolled ul.depth_wrap > li > ul li:hover {
    background: #7094bb;
    color: #FFF;   
}
.menu-scrolled ul.depth_wrap > li > ul li a {
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 0 30px;
}

@media (max-width: 1520px) {}
@media (max-width: 1300px) {
    .menu-scrolled .layout_max{
        padding-left: 0;
        padding-right: 0;
    }
}
@media (max-width: 1024px) {}
@media (max-width: 767px) {
    .menu-scrolled .layout_max{
        height: 45px;
    }
    .menu-scrolled ul.depth_wrap > li{
        display: none;
        border: 0;
    }
    .menu-scrolled ul.depth_wrap > li:last-of-type{
        display: block;
        flex: 1;
    }
    .menu-scrolled ul.depth_wrap > li > ul{
        border: 0;
        border-bottom: 1px solid #e8edf9;
    }
    .menu-scrolled ul.depth_wrap > li > ul li{
        height: 45px;
        font-size: 15px;
    }
    .menu-scrolled ul.depth_wrap > li > ul li a{
        padding: 0 15px;
    }
    .menu-scrolled ul.depth_wrap > li > button{
        padding: 0 15px;
        font-size: 16px;
    }
    .menu-scrolled ul.depth_wrap > li > ul li:last-child{
        padding-bottom: 0;
    }
    .menu-scrolled .home{
        width: 45px;
        height: 45px;
    }
    .menu-scrolled .home img{
        width: 17px;
    }
    .menu-scrolled-wrap{
        position: absolute;
        top: 0px;
        padding-top: 46px;
        overflow: visible;
    }
    .active.menu-scrolled-wrap{
        position: fixed;
        top: 0;
        padding-top: 0;
    }
}
@media (max-width: 425px) {}












/* 페이징 */
div.bbsBottom {
    position: relative;
    overflow: hidden;
    display: block;
    width: 100%;
    padding: 0px;
    text-align: right;
}
div.bbsBottom.border{
    border-top: 1px solid #e5e5e5;
}

div.bbsBottom div.bbsBtn {
    position: relative;
    display: inline-block;
    text-align: right;
    margin: 0 0 10px;
    padding: 0px;
}

div.bbsBtn a,
div.bbsBtn button { 
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 110px;
    height: 55px;
    padding: 0 20px 1px;
    text-align: center;
    background: #ffffff;
    font-size: 18px;
    color: #000000;
    border-radius: 8px;
    border: 1px solid #d3d2d2;
}
div.bbsBtn a:hover,
div.bbsBtn button:hover {
    background: #ffffff;
    color: #004A9C;
    border: 1px solid #004A9C;
}
div.bbsBtn.gray a{
    background: #fff;
}

div.bbsBtnJubo  { 
    text-align: center;
    padding: 30px 0 0px;
    border-top: 1px solid #d7d7d7;
}

div.bbsNavi { 
    position: relative;
    display: block;
    margin: 0 auto;
    overflow: hidden;
    width: auto;
    text-align: center;
    padding: 0 0 5px;
}

div.bbsNavi > ul {
    display: inline-flex;
    align-items: center;
    margin: 0 10px;
    font-size: 20px;
}
div.bbsNavi > ul li a{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 40px;
    height: 40px;
}
div.bbsNavi > ul li.active a{
    color: #E5002B;
    font-weight: 900;
}

div.bbsNavi > ul .btnPrev,
div.bbsNavi > ul .btnNext {
    position: relative;
}

div.bbsNavi > ul .btnPrev a,
div.bbsNavi > ul .btnNext a
{
    display:block;
}


div.bbsNavi > ul .numbers {
    position: relative;
    display: inline-block;
}

div.bbsNavi > ul .numbers a {
    position: relative;
    display: inline-block;
    width: 28px;
    height: 28px;    
    line-height: 26px;
    font-size: 13px;
    margin: 0 5px;
    padding: 0px;
}

div.bbsNavi > ul .numbers a.active {
    background: #f95053;
    color: #FFF;
    border-radius: 50%;
    width: 26px;
    height: 26px;
}
@media screen and (max-width:767px){
    div.bbsNavi > ul li a{
        width: 35px;
        height: 35px;
        font-size: 17px;
    }
    div.bbsNavi > ul li a img{
        width: 100%;
        height: 100%;
    }
    div.bbsBtn a,
    div.bbsBtn button{
        min-width: auto;
        height: 40px;
        font-size: 15px;
        padding: 0 17px 0;
    }
}









/* 서브페이지 공통 */
.sub_page{
    padding-bottom: 150px;
}
.minus_margin{
    margin-top: -100px;
}
@media (max-width: 1520px) {}
@media (max-width: 1300px) {}
@media (max-width: 1024px) {
    .minus_margin{
        margin-top: 0;
    }
}
@media (max-width: 767px) {
    .sub_page{
        padding-bottom: 75px;
    }
    .minus_margin{
        margin-top: 30px;
    }
}
@media (max-width: 425px) {}









/* 하단 버튼 공통 */
.bottom_btn_wrap{
    display: flex;
    justify-content: center;
    margin-top: 65px;
}
.bottom_btn_wrap .list{
    display: flex;
    gap: 10px;
}
.bottom_btn_wrap .list .item{
    min-width: 165px;
    height: 65px;
    border-radius: 10px;
    background-color: #A6ADBE;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 20px;
    font-weight: 500;
    color: #fff;
}
.bottom_btn_wrap .list .item.blue{
    background-color: #004A9C;
}
.bottom_btn_wrap .list .item > *{
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    width: 100%;
    height: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0 30px;
}
.bottom_btn_wrap .list .item a{
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media (max-width: 1520px) {}
@media (max-width: 1300px) {}
@media (max-width: 1024px) {}
@media (max-width: 767px) {
    .bottom_btn_wrap{
        margin-top: 45px;
    }
    .bottom_btn_wrap .list .item{
        min-width: auto;
        height: 45px;
        padding: 0 0px;
        font-size: 16px;
    }
    .bottom_btn_wrap .list .item > *{
        padding: 0 20px;
    }
}
@media (max-width: 425px) {}










div.basic_bottom{
    display: flex;
    justify-content: space-between;
    padding-top: 60px;
}
div.basic_bottom.right{
    justify-content: flex-end;
}
div.basic_bottom .several{
    display: flex;
    gap: 7px;
}
div.basic_bottom .btnListNext{
    display: flex;
    gap: 7px;
}
div.basic_bottom .btnListNext a{
    width: 55px;
    height: 55px;
    aspect-ratio: 1/1;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 9px;
    border: 1px solid #D6D7DB;
    border-radius: 10px;
}
div.basic_bottom .btnListNext a i{
    font-size: 27px;
    color: #666666;
}
div.basic_bottom .right_area{
    display: flex;
    gap: 7px;
}
@media (max-width: 1520px) {}
@media (max-width: 1300px) {}
@media (max-width: 1024px) {}
@media (max-width: 767px) {
    div.basic_bottom{
        padding-top: 25px;
    }
    div.basic_bottom .btnListNext a{
        width: 40px;
        height: 40px;
        aspect-ratio: 1/1;
    }
    div.basic_bottom .btnListNext a i{
        font-size: 20px;
    }
}
@media (max-width: 425px) {}










/* board 공통 */
.search_wrap_st01{
    position: relative;
    display: inline-block;
    max-width: 100%;
}
.search_wrap_st01 .bbsSearchBox{
    width: 380px;
    height: 60px;
    border: 1px solid #222222;
    border-radius: 30px;
    padding: 0px 25px;
    padding-right: 50px;
    font-size: 18px;
}
.search_wrap_st01 .bbsSearchBox::placeholder{
    color: #7B7B7B;
    font-size: 18px;
}
.search_wrap_st01 .bbsSearchBtn{
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    width: 35px;
    height: 35px;
}
@media (max-width: 1520px) {}
@media (max-width: 1300px) {}
@media (max-width: 1024px) {}
@media (max-width: 767px) {
    .search_wrap_st01 .bbsSearchBox{
        width: 100%;
        height: 45px;
        padding-left: 15px;
    }
    .search_wrap_st01 .bbsSearchBox::placeholder{
        font-size: 16px;
    }
}
@media (max-width: 425px) {}










.toast {
    position: fixed;
    left: 50%;
    bottom: 0px;
    transform: translateX(-50%);
    background: #004A9C;
    color: #fff;
    padding: 15px 20px;
    border-radius: 9999px;
    font-size: 14px;
    line-height: 1;
    box-shadow: 0 6px 20px rgba(0,0,0,0.18);
    opacity: 0;
    pointer-events: none;
    z-index: 9999;
    transition: 0.4s;
    display: none;
}
.toast.active{
    /* background-color: #E5002B; */
    bottom: 24px;
    opacity: 1;
    display: block;
}








/* 에디터 속 텍스트 스타일 */
.jubo_inside_title{
    display: block !important;
    padding: 20px 0 !important;
    font-size: 26px !important;
}
.jubo_inside_name{
    display: block !important;
    padding-bottom: 40px !important;
}
@media (max-width: 767px) {
    
}
@media (max-width: 425px) {

}
/* 에디터 속 텍스트 스타일 end */








/* noto_sans 우선 */
.noto_font{
    font-family: "Noto Sans KR", sans-serif;
}










/* 모달 기본 */
.modal{
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: none;
}
.modal.is-open{ display: block; }

/* 딤 */
.modal__dim{
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.35);
}

/* 패널 */
.modal__panel{
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 400px;
  max-width: calc(100% - 32px);
  border-radius: 30px;
  overflow: hidden;
  box-shadow: 0 18px 50px rgba(0,0,0,0.25);
  display: flex;
  flex-direction: column;
}

/* 헤더 */
.modal__head{
    height: 75px;
    background: #004A9C; /* 스샷처럼 진한 파랑 */
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-left: 35px;
    padding-right: 20px;
}
.modal__title{
    margin: 0;
    font-size: 22px;
    font-weight: 600;
    color: #fff;
}
.modal__close{
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
    border-radius: 10px;
}
.modal__close:hover{
  background: rgba(255,255,255,0.12);
}

/* 바디 */
.modal__body{
    padding: 15px;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    gap: 15px;
    flex: 1;
}
.modal__qr{
    display: block;
    width: 190px;
    height: 190px;
    margin: 45px auto 45px;
    background: #f6f6f6;
}
.modal__qr canvas{
    display: none;
}
.modal__qr img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

/* 링크 복사 UI */
.modal__copy{
    display: flex;
    gap: 8px;
    align-items: center;
    border: 1px solid #D3D5D9;
    border-radius: 18px;
    padding: 9px 15px;
    background: #F5F7FC;
}
.modal__copy input{
    border: 0;
    outline: none;
    width: 100%;
    font-size: 18px;
    color: #222;
    background: transparent;
}
.modal__copyBtn{
    flex: 0 0 auto;
    border: 0;
    background: #004A9C;
    color: #fff;
    padding: 7px 12px;
    border-radius: 999px;
    font-size: 15px;
    font-weight: 500;
    cursor: pointer;
}
.modal__copyBtn:active{ 
    transform: translateY(1px); 
}

.modal__hint{
    font-size: 16px;
    color: #004A9C;
    text-align: center;
}
.modal__hint div{
    padding: 20px 0;
}

/* btn_top */
.btn_top {
    position: fixed;
    bottom: 30px;
    right: 2.5%;
    z-index: 10;
}

.btn_top > a {
    display: flex;
    width: 50px;
    height: 50px;
    overflow: hidden;
    border-radius: 50%;
    box-shadow: 0px 5px 15px rgba(0,0,0,0.15);
    border: 1px solid rgba(189,207,220, 0.3);
    background: rgba(255, 255, 255, 0.9);
    text-transform: uppercase;
    text-decoration: none;

    /* transition */
    -webkit-transition: 1s;
    -moz-transition: 1s;
    transition: 1s;
}

.btn_top > a:hover {
    background: #fff;
    border: 1px solid #004A9C;
}

.btn_top > a > img {
    display: block;
    width: 100%;

    /* transition */
    -webkit-transition: 1s;
    -moz-transition: 1s;
    transition: 1s;
}

