@charset "UTF-8";
/* 서브 - sub css */
.wrap:not(.wrap_main) .main_cont {
	z-index: auto;
}

.img_box {text-align: center;}
.img_box img {max-width: 100%}

/* ===== 공통 안내 문구 UI ===== */
.info_desc_comm {
	display: flex;
	gap: 5px;
	align-items: flex-start;
	margin: 10px 0;
	padding: 11px 14px 10px;
	border: 1px solid #ddd;
	border-radius: 10px;
	font-size: 14px;
	line-height: 21px;
	color: #121212;
	font-weight: 500;
}

.info_desc_comm > i {
	line-height: inherit;
}

.info_desc_comm.gray {
	border-color: #ddd;
	background: #fafafa;
}

.info_desc_comm.info {
	border-color: #E1E7F5;
	background: #F8F9FF;
}

.info_desc_comm.danger {
	border-color: #F8D7DA;
	background: #FFF1F2;
}

.info_desc_comm.success {
	border-color: #D4EDDA;
	background: #F4FBF6;
}

.info_desc_comm.warning {
	border-color: #FEEDBF;
	background: #FFF7D5;
}

.info_desc_comm.info .txt_info, .info_desc_comm.info > i {
	color: #023994;
}

.info_desc_comm.danger .txt_info, .info_desc_comm.danger > i {
	color: #9F2A2F;
}

.info_desc_comm.success .txt_info, .info_desc_comm.success > i {
	color: #1E5F2E;
}

.info_desc_comm.warning .txt_info, .info_desc_comm.warning > i {
	color: #817041;
}

@media only screen and (min-width: 1200px) {
	/* ===== 공통 안내 문구 UI ===== */
	.info_desc_comm {
		gap: 8px;
		padding: 13px 16px 12px;
		font-size: 16px;
		line-height: 23px;
	}
}
/* ===== 공통 이미지 뷰 ===== */
.group_img_comm {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
	margin: 10px 0;
	text-align: center;
}

.group_img_comm img {
	width: 100%;
	border-radius: 5px 5px 0 0;
}

.group_img_comm figure {
	margin: 0;
}

.group_img_comm figcaption {
	padding: 8px 15px;
	border: 1px solid #ddd;
	border-top: 0;
	border-radius: 0 0 5px 5px;
	font-size: 14px;
	line-height: 19px;
	color: #787878;
	font-weight: 500;
	background: #fafafa;
}

/* ===== sub 공통 ===== */
.wrap .inner_sub {
	max-width: 1400px;
	padding: 20px 20px 50px;
}

.tit_sub_menu {
	display: block;
	padding-bottom: 20px;
	font-weight: 800;
}

.area_sub_left {
	display: none;
}

.area_sub_top {
	display: flex;
	align-items: center;
	gap: 10px 20px;
	flex-wrap: wrap;
	padding-bottom: 10px;
}

.list_breadcrumb {
	--gap: 8px;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: var(--gap);
	max-width: 100%;
}

.list_breadcrumb li {
	display: flex;
	align-items: center;
	gap: var(--gap);
}

.list_breadcrumb li + li::before {
	font-family: "Font Awesome 6 Pro", sans-serif;
	-webkit-font-smoothing: antialiased;
	text-rendering: auto;
	color: inherit;
	content: "\f105";
}

.list_breadcrumb .link_txt {
	display: block;
	padding: 5px;
	margin: -5px;
	font-size: 14px;
	line-height: 19px;
	color: var(--d-color-black-60);
	font-weight: 500;
}

.area_sub_top .group_etc {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-left: auto;
}

.area_sub_top .btn_etc {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 5px;
	margin: -5px;
}

.area_sub_top .btn_etc.btn_print {
	display: none;
}

.area_sub_top .btn_etc i {
	--fa-primary-color: #121212;
	--fa-secondary-color: rgb(18, 18, 18);
	font-size: 16px;
}

.layer_share .group_sns {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 5px;
	padding: 5px 0;
}

.layer_share .link_ico {
	overflow: hidden;
	width: 40px;
	height: 40px;
	border-radius: 50%;
}

.layer_share .img_share {
	width: 100%;
}

.box_pageing {text-align: center; width:100%; padding: 40px 0; }

.box_info_sub {
	display: flex;
	flex-direction: column;
	gap: 18px;
	padding: 25px;
	border-radius: 15px;
	border: 1px solid #81AEFF;
	background: #F5F9FF;
	word-break: keep-all;
	word-wrap: break-word;
}

.box_info_sub .wrap_ico {
	overflow: hidden;
	width: 64px;
	height: 64px;
	margin: 0 auto;
	border-radius: 50%;
	background: #fff;
}

.box_info_sub .img_info {
	width: 100%;
	height: auto;
}

.box_info_sub .tit_txt {
	display: block;
	font-size: 20px;
	line-height: 25px;
	color: var(--d-color-secondary-100);
	font-weight: 800;
}

.box_info_sub .txt_desc {
	padding-top: 15px;
	font-size: 14px;
	line-height: 21px;
	color: #121212;
	font-weight: 500;
}

@media only screen and (min-width: 1200px) {
	/* ===== sub 공통 ===== */
	.wrap .inner_sub {
		display: flex;
		gap: 40px;
		align-items: flex-start;
		padding: 62px 15px 100px;
		transition: gap 0.3s;
	}
	.tit_sub_menu {
		padding-bottom: 30px;
	}
	.area_sub_top {
		padding-bottom: 7px;
	}
	.list_breadcrumb .link_txt:hover {
		color: var(--d-color-black-100);
		text-decoration: underline;
		text-underline-offset: 3px;
	}
	.area_sub_top .btn_etc.btn_print {
		display: flex;
	}
	.layer_share .group_sns {
		gap: 10px;
	}
	.layer_share .link_ico {
		width: 50px;
		height: 50px;
	}
	.area_sub_top .group_etc {
		gap: 20px;
	}
	.area_sub_top .btn_etc {
		padding: 8px;
		margin: -8px;
	}
	.area_sub_top .btn_etc i {
		font-size: 18px;
	}
	.box_pageing {max-width: 50%; margin: 0 auto; }
	.box_info_sub {
		flex-direction: row;
		gap: 24px;
		padding: 30px 30px 46px;
	}
	.box_info_sub .wrap_ico {
		flex: none;
		width: 112px;
		height: 112px;
	}
	.box_info_sub .tit_txt {
		padding-top: 9px;
		font-size: 24px;
		line-height: 29px;
	}
	.box_info_sub .txt_desc {
		font-size: 18px;
		line-height: 26px;
	}
	.area_sub_left {
		display: block;
		flex: none;
		width: 280px;
		transition: width 0.3s;
	}
	.area_sub_left .head_menu {
		padding-bottom: 27px;
	}
	.area_sub_left .head_menu .tit_txt {
		font-size: 36px;
		line-height: 43px;
		color: #121212;
		font-weight: 800;
	}
	.area_sub_left .body_menu {
		border-top: 1px solid #000;
	}
	.list_menu_left > li {
		border-bottom: 1px solid #ddd;
	}
	.list_menu_left [class*=link_depth][target=_blank]::after {
		flex: none;
		margin-top: 1px;
		font-size: 0.85em;
		font-family: "Font Awesome 6 Pro", sans-serif;
		-webkit-font-smoothing: antialiased;
		text-rendering: auto;
		content: "\f08e";
	}
	/* ===== left 2뎁스 스타일 ===== */
	.list_menu_left .link_depth2 {
		display: flex;
		align-items: flex-start;
		gap: 10px;
		padding: 18px 12px 18px 0;
		font-size: 20px;
		line-height: 24px;
		color: #121212;
		font-weight: 700;
	}
	.list_menu_left .link_depth2.on,
	.list_menu_left .link_depth2[aria-expanded=true],
	.list_menu_left .link_depth2:hover,
	.list_menu_left .link_depth2:focus {
		color: #0051D9;
	}
	.list_menu_left .link_depth2:has(+ .cont_menus)::after {
		flex: none;
		margin-left: auto;
		font-size: 0.7em;
		font-family: "Font Awesome 6 Pro", sans-serif;
		-webkit-font-smoothing: antialiased;
		text-rendering: auto;
		content: "\f078";
	}
	.list_menu_left .link_depth2[aria-expanded=true]:has(+ .cont_menus)::after {
		transform: rotate(180deg);
	}
	/* ===== 3뎁스 expanded ===== */
	.list_menu_left .cont_menus {
		display: grid;
		grid-template-rows: 0fr;
		opacity: 0;
		visibility: hidden;
		transition: all 0.3s;
	}
	.list_menu_left .link_depth2[aria-expanded=true] + .cont_menus {
		grid-template-rows: 1fr;
		opacity: 1;
		visibility: visible;
	}
	/* ===== left 3뎁스 스타일 ===== */
	.list_menu_left_depth3 {
		overflow: hidden;
	}
	.list_menu_left_depth3 > li + li {
		padding-top: 5px;
	}
	.list_menu_left_depth3 > li:last-child {
		padding-bottom: 11px;
	}
	.list_menu_left_depth3 .link_depth3 {
		--line-height: 25px;
		display: flex;
		align-items: flex-start;
		gap: 5px;
		padding: 10px 12px 10px 20px;
		font-size: 18px;
		line-height: var(--line-height);
		color: #646464;
		font-weight: 600;
	}
	.list_menu_left_depth3 .link_depth3::before {
		flex: none;
		margin: calc(var(--line-height) / 2) 5px 0 0;
		width: 3px;
		height: 3px;
		border-radius: 50%;
		background: currentColor;
		transform: translateY(-50%);
		content: "";
	}
	.list_menu_left_depth3 .link_depth3:hover,
	.list_menu_left_depth3 .link_depth3:focus {
		color: #121212;
	}
	/* ===== left 3뎁스 선택 스타일 ===== */
	.list_menu_left_depth3 .link_depth3.on {
		border-radius: 8px;
		color: #121212;
		background: #F8F8F8;
	}
	.cont_sub {
		flex: 1;
		min-width: 0;
	}
}
/* 인사말 */
.cont_speach {
	--padding-speach-x: 15px;
}

.cont_speach .head_speach {
	position: relative;
	padding: 30px var(--padding-speach-x) 235px;
	word-break: keep-all;
}

.cont_speach .head_speach::after {
	position: absolute;
	bottom: 0;
	left: var(--padding-speach-x);
	right: var(--padding-speach-x);
	height: 1px;
	background: linear-gradient(to right, rgba(227, 227, 227, 0) 0%, rgba(205, 205, 205, 0.69) 15%, #C3C3C3 50%, rgba(215, 215, 215, 0.66) 85%, rgba(255, 255, 255, 0) 100%);
	content: "";
}

.cont_speach .head_speach .tit_txt {
	font-size: 30px;
	line-height: 38px;
	color: #121212;
	font-weight: 800;
}

.cont_speach .head_speach .tit_txt em {
	color: #18419F;
	font-weight: inherit;
}

.cont_speach .head_speach .txt_desc {
	max-width: 330px;
	padding-top: 18px;
	font-size: 16px;
	line-height: 23px;
	color: #121212;
	font-weight: 600;
}

.cont_speach .head_speach .img_mayor {
	position: absolute;
	bottom: 0;
	right: -25px;
	width: 370px;
}

.cont_speach .head_speach .img_manifesto {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 300px;
}

.cont_speach .desc_speach {
	padding: 30px var(--padding-speach-x) 0;
	font-size: 14px;
	line-height: 23px;
	color: #121212;
	font-weight: 500;
	word-break: keep-all;
}

.cont_speach .txt_name {
	padding-top: 30px;
	font-size: 14px;
	line-height: 23px;
	color: #121212;
	font-weight: 500;
	text-align: right;
}

.cont_speach .txt_name strong {
	margin-left: 5px;
	font-size: 28px;
}

@media only screen and (min-width: 768px) {
	.cont_speach {
		--padding-speach-x: 25px;
	}
	.cont_speach .head_speach {
		padding: 45px var(--padding-speach-x) 100px;
	}
	.cont_speach .head_speach .tit_txt {
		font-size: 38px;
		line-height: 47px;
	}
	.cont_speach .head_speach .txt_desc {
		max-width: 380px;
		font-size: 18px;
		line-height: 25px;
	}
	.cont_speach .head_speach .img_mayor {
		width: 510px;
	}

	.cont_speach .desc_speach {
		padding: 38px var(--padding-speach-x) 0;
		font-size: 15px;
		line-height: 24px;
	}
	.cont_speach .txt_name {
		padding-top: 50px;
		font-size: 15px;
		line-height: 24px;
	}
	.cont_speach .txt_name strong {
		margin-left: 10px;
		font-size: 34px;
	}
	.cont_speach .head_speach .img_manifesto{
		width: 400px;
	}
}
@media only screen and (min-width: 1400px) {
	/* 인사말 */
	.cont_speach {
		--padding-speach-x: 50px;
	}
	.cont_speach .head_speach {
		padding: 57px var(--padding-speach-x) 84px;
	}
	.cont_speach .head_speach .tit_txt {
		font-size: 45px;
		line-height: 54px;
	}
	.cont_speach .head_speach .txt_desc {
		max-width: 400px;
		font-size: 20px;
		line-height: 28px;
	}
	.cont_speach .head_speach .img_mayor {
		right: -49px;
		width: 772px;
	}
	.cont_speach .desc_speach {
		padding: 43px var(--padding-speach-x) 0;
		font-size: 16px;
		line-height: 26px;
	}
	.cont_speach .txt_name {
		padding-top: 72px;
		font-size: 16px;
		line-height: 26px;
	}
	.cont_speach .txt_name strong {
		font-size: 40px;
	}

	.cont_speach .head_speach .img_manifesto {		
		right: 0;
		width: 425px;
	}
}


/* 프로필 시작 */

.blind{
    overflow:hidden;
    position:absolute;
    width:1px;
    height:1px;
    margin:-1px;
    clip:rect(0,0,0,0);
}

/* layout */
.greeting_page{
    transition: all 0.3s;
}

/* top visual */
.greeting_visual{
    position:relative;
    overflow:hidden;
    min-height: 500px;
    padding:48px 0 0;
    background:#fff;
}

/* 상단 큰 흰색 곡면 */
.greeting_visual_bg_round{
    position: absolute;
    width: 525px;
    height: 241px;
    border-radius: 0 140px 140px 0;
    background: #ffffff;
    z-index: 1;
    display: flex;
    align-items: center;
}

/* 좌하단 연한 블루 라운드 바 */
.greeting_visual_bg_bar{
    position:absolute;
    left:0;
    bottom :0;
    width:290px;
    height: 115px;
    border-radius: 24px 0 0 24px;
    background: linear-gradient(88deg, #d6e4ff 0%, #eef4ff 40%, #f5f9ff4f 60%, #ffffff00 80%, #ffffff00 100%);
    z-index:1;
}

/* 우측 인물 뒤 배경 그라데이션 01 */
.greeting_visual_bg_blue_gr_01{
    position: absolute;
    width: 190px;
    height: 190px;
    right: 137px;
    background: radial-gradient(circle at center, rgba(0, 217, 255, 0.95) 0%, rgba(27, 225, 255, 0.72) 22%, rgba(108, 237, 255, 0.34) 52%, rgba(255, 255, 255, 0) 100%);
    filter: blur(22px);
    opacity: 35%;
}

/* 우측 인물 뒤 배경 그라데이션 02 */
.greeting_visual_bg_blue_gr_02{
    position: absolute;
    width: 155px;
    height: 155px;
    right: 37px;
    background: radial-gradient(circle at center, rgba(0, 133, 255, 0.96) 0%, rgba(28, 152, 255, 0.82) 18%, rgba(76, 176, 255, 0.58) 40%, rgba(143, 206, 255, 0.28) 66%, rgba(255, 255, 255, 0) 100%);
    filter: blur(26px);
    opacity: 35%;
}

/* 우측 인물 뒤 배경 그라데이션 03 */
.greeting_visual_bg_blue_gr_03{
    position: absolute;
    width: 380px;
    height: 380px;
    right: 56px;
    background: radial-gradient(circle at center, rgba(13, 76, 255, 0.98) 0%, rgba(24, 96, 255, 0.92) 14%, rgba(55, 122, 255, 0.78) 28%, rgba(98, 153, 255, 0.52) 46%, rgba(146, 186, 255, 0.28) 63%, rgba(193, 216, 255, 0.12) 78%, rgba(255, 255, 255, 0) 100%);
    filter: blur(30px);
    opacity: 35%;
}

/* 왼쪽 텍스트 영역 */
.greeting_visual_text{
    position:relative;
    z-index:3;
}

.greeting_visual_title{
    color:#1f3560;
    font-size:28px;
    font-weight:800;
    line-height:1.28;
    letter-spacing:-0.04em;
}

.greeting_visual_title strong{
    color:#6b90ff;
    font-weight:800;
}

.greeting_visual_desc{
    color:#2c4166;
    font-size:17px;
    font-weight:500;
    line-height:1.55;
    letter-spacing:-0.03em;
}

/* 우측 인물 */
.greeting_visual_photo{
    position:absolute;
    right:36px;
    bottom:0;
    z-index:3;
    width:325px;
}

.greeting_visual_photo img{
    width: 325px;
    height:auto;
    object-fit:contain;
}

/* 서명 */
.greeting_visual_sign{
    position: absolute;
    right: 465px;
    bottom: 21px;
    z-index: 4;
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
}

.greeting_visual_sign_img{
    width:125px;
    /* margin:0 auto; */
}

.greeting_visual_sign_img img{
    width:100%;
    height:auto;
    object-fit:contain;
}

.greeting_visual_sign_name{
    margin-top:4px;
    color:#2a3652;
    font-size:16px;
    font-weight:500;
    line-height:1.3;
    letter-spacing:-0.03em;
}

/* contents */
.greeting_content{
    padding:88px 48px 132px;
}

.greeting_content_title{
    margin-bottom:28px;
    color:#1f3560;
    font-size:20px;
    font-weight:800;
    line-height:1.4;
    letter-spacing:-0.03em;
}

.greeting_content_text{
    color:#34486d;
    font-size:17px;
    font-weight:500;
    line-height:1.9;
    letter-spacing:-0.03em;
}

.greeting_content_text p + p{
    margin-top:24px;
}

/* 하단 서명 텍스트 */
.greeting_bottom_sign{
    margin-top:78px;
    text-align:right;
    color:#1f3560;
}

.greeting_bottom_sign_job{
    display:inline-block;
    margin-right:14px;
    font-size:16px;
    font-weight:500;
}

.greeting_bottom_sign_name{
    display:inline-block;
    font-size:34px;
    font-weight:800;
    line-height:1;
    letter-spacing:-0.04em;
}

/* base : mobile (~480) */
 .greeting_page{
        max-width:100%;
    }

    .greeting_visual{
        padding: 0;
        transition: all 0.3s;
    }

    .greeting_visual_bg_round{
        top: 0;
        width: 328px;
        height: 231px;
    }

    .greeting_visual_bg_bar{
        width: 160px;
        height: 160px;
        border-radius: 100%;
    }

    .greeting_visual_bg_blue_gr_01{
        width: 120px;
        height: 120px;
        right: 104px;
        bottom: 159px;
        filter:blur(20px);
    }

    .greeting_visual_bg_blue_gr_02{
        width: 130px;
        height: 130px;
        right: 5px;
        bottom: 81px;
        filter:blur(22px);
    }

    .greeting_visual_bg_blue_gr_03{
        width: 200px;
        height: 200px;
        right: 76px;
        bottom: 24px;
        filter:blur(26px);
    }

    .greeting_visual_text{
        padding: 7px 10px;
        display: flex;
        flex-direction: column;
        word-break: keep-all;
        gap: 10px;
    }

    .greeting_visual_title{
        font-size: 22px;
    }

    .greeting_visual_desc{
        font-size:16px;
    }

    .greeting_visual_desc br{
        display:block;
    }

    .greeting_visual_photo{
        position:absolute;
        right: 0px;
        bottom: -181px;
        width: 285px;
        margin:0;
    }

	.greeting_visual_photo img{
		width: 100%;
		/* height:auto; */
		/* object-fit:contain; */
		bottom: 0;
		/* margin-bottom: -226px; */
		/* bottom: 12px; */
	}

    .greeting_visual_sign{
        right: 10px;
    }

    .greeting_visual_sign_img{
        width:108px;
    }

    .greeting_visual_sign_name{
        font-size:14px;
    }

    .greeting_content{
        padding: 68px 10px 96px;
    }

    .greeting_content_title{
        margin-bottom:24px;
        font-size:19px;
    }

    .greeting_content_text{
        font-size:16px;
    }

    .greeting_bottom_sign{
        margin-top:62px;
    }

    .greeting_bottom_sign_job{
        font-size:15px;
    }

    .greeting_bottom_sign_name{
        font-size:30px;
    }


@media (min-width:480px){
    .greeting_page{
        max-width:100%;
    }

    .greeting_visual{
        min-height: 459px;
        padding: 0;
    }

    .greeting_visual_bg_round{
        width: 469px;
        height: 235px;
    }

    .greeting_visual_bg_bar{
        width: 160px;
        height: 160px;
        border-radius: 100%;
    }

    .greeting_visual_bg_blue_gr_01{
        width: 220px;
        height: 220px;
        right: 40px;
        top: 50px;
        filter:blur(20px);
    }

    .greeting_visual_bg_blue_gr_02{
        width: 230px;
        height: 230px;
        right: 4px;
        top: 148px;
        filter:blur(22px);
    }

    .greeting_visual_bg_blue_gr_03{
        width: 400px;
        height: 400px;
        right: 35px;
        bottom: -89px;
        filter:blur(26px);
    }

    .greeting_visual_text{
        padding: 30px 0 0 30px;
    }

    .greeting_visual_title{
        font-size: 22px;
    }

    .greeting_visual_desc{
        margin-top: 5px;
        font-size:16px;
    }

    .greeting_visual_desc br{
        display:block;
    }

    .greeting_visual_photo{
        /* position:absolute; */
        right: -13px;
        bottom: -152px;
        width: 265px;
        margin:0;
    }

	.greeting_visual_photo img{
		width: 100%;
		/* height:auto; */
		/* object-fit:contain; */
		bottom: 0;
		/* margin-bottom: -226px; */
		/* bottom: 12px; */
	}

    .greeting_visual_sign{
        right: 211px;
        bottom: 10px;
    }

    .greeting_visual_sign_img{
        /* width:108px; */
    }

    .greeting_visual_sign_name{
        font-size:14px;
    }

    .greeting_content{
        padding: 68px 10px 96px;
    }

    .greeting_content_title{
        margin-bottom:24px;
        font-size:19px;
    }

    .greeting_content_text{
        font-size:16px;
    }

    .greeting_bottom_sign{
        margin-top:62px;
    }

    .greeting_bottom_sign_job{
        font-size:15px;
    }

    .greeting_bottom_sign_name{
        font-size:30px;
    }
}

/* 768px~ */
@media (min-width:768px){
    .greeting_visual{
        min-height: 475px;
    }

    .greeting_visual_bg_round{
        width: 590px;
        height: 379px;
        border-radius: 0 180px 180px 0;
    }

    .greeting_visual_bg_bar{
        left:0;
        bottom:0;
        width: 324px;
        height: 115px;
        border-radius:54px 0 0 54px;
    }

    .greeting_visual_bg_blue_gr_01{
        width: 290px;
        height: 290px;
        right: 90px;
        top: 12px;
        filter:blur(22px);
    }

    .greeting_visual_bg_blue_gr_02{
        width: 290px;
        height: 290px;
        right: 0px;
        top: 94px;
        filter:blur(26px);
    }

    .greeting_visual_bg_blue_gr_03{
        width: 580px;
        height: 580px;
        right: 30px;
        top: 104px;
        filter:blur(30px);
    }

    .greeting_visual_text{
        padding: 100px 0 0 50px;
    }

    .greeting_visual_title{
        font-size: 32px;
        /* line-height:1.28; */
    }

    .greeting_visual_desc{
        /* margin-top:24px; */
        font-size: 20px;
        /* line-height:1.55; */
    }

    .greeting_visual_photo{
        right: -51px;
        bottom: -202px;
        width:438px;
    }

	.greeting_visual_photo img{
		width: 85%;
		/* height:auto; */
		/* object-fit:contain; */
		bottom: 0;
		/* margin-bottom: -226px; */
		/* bottom: 12px; */
	}

    .greeting_visual_sign{
        right: 297px;
        bottom: 20px;
    }

    .greeting_visual_sign_img{
        /* width:125px; */
    }

    .greeting_visual_sign_name{
        font-size:16px;
    }

    .greeting_content{
        padding: 88px 30px 132px;
    }

    .greeting_content_title{
        margin-bottom:28px;
        font-size:20px;
    }

    .greeting_content_text{
        font-size:17px;
        line-height:1.9;
    }

    .greeting_content_text p + p{
        margin-top:24px;
    }

    .greeting_bottom_sign{
        margin-top:78px;
    }

    .greeting_bottom_sign_job{
        margin-right:14px;
        font-size:16px;
    }

    .greeting_bottom_sign_name{
        font-size:34px;
    }
}


/* 1024px~ */
@media (min-width:1024px){
    .greeting_visual{
        min-height: 475px;
    }

    .greeting_visual_bg_round{
        width: 595px;
        height: 384px;
        border-radius: 0 180px 180px 0;
    }

    .greeting_visual_bg_bar{
        left:0;
        bottom:0;
        width: 324px;
        height: 115px;
        border-radius:54px 0 0 54px;
    }

    .greeting_visual_bg_blue_gr_01{
        width: 290px;
        height: 290px;
        right: 150px;
        top: 12px;
        filter:blur(22px);
    }

    .greeting_visual_bg_blue_gr_02{
        width: 290px;
        height: 290px;
        right:37px;
        top: 94px;
        filter:blur(26px);
    }

    .greeting_visual_bg_blue_gr_03{
        width: 580px;
        height: 580px;
        right: 90px;
        top: 104px;
        filter:blur(30px);
    }

    .greeting_visual_text{
        padding: 90px 0 0 40px;
    }

    .greeting_visual_title{
        font-size: 38px;
        line-height:1.28;
    }

    .greeting_visual_desc{
        /* margin-top:24px; */
        font-size: 20px;
        /* line-height:1.55; */
    }

    .greeting_visual_photo{
        /* position: absolute; */
        right: 90px;
        bottom: -252px;
        width:438px;
    }


    .greeting_visual_sign{
        right: 420px;
        bottom: 20px;
    }

	.greeting_visual_photo img {
        width: 100%;
        /* bottom: 0; */
	}
        

    .greeting_visual_sign_name{
        font-size:16px;
    }

    .greeting_content{
        padding: 88px 30px 132px;
    }

    .greeting_content_title{
        margin-bottom:28px;
        font-size:20px;
    }

    .greeting_content_text{
        font-size:17px;
        line-height:1.9;
    }

    .greeting_content_text p + p{
        margin-top:24px;
    }

    .greeting_bottom_sign{
        margin-top:78px;
    }

    .greeting_bottom_sign_job{
        margin-right:14px;
        font-size:16px;
    }

    .greeting_bottom_sign_name{
        font-size:34px;
    }
}
/* 프로필 끝 */


/*일정*/
.weekly_calendar {}
a.schdul-prev{position: absolute; top:30px; left:-40px; display: inline-block;width: 40px;height: 40px;text-indent: -9999px;margin: 10px;vertical-align: top;background:url(https://www.gwangju.go.kr/home/siiru/images/cal_prev.jpg) no-repeat;}
a.schdul-next{position: absolute; top:30px; right:-40px; display: inline-block;width: 40px;height: 40px;text-indent: -9999px;margin: 10px;vertical-align: top;background:url(https://www.gwangju.go.kr/home/siiru/images/cal_next.jpg) no-repeat;}
.weekly_calendar p.cal_month {text-align:center; font-size:30px; color:#333; font-weight:bold; margin:20px 0;}
.weekly_list {position: relative;width:90%; margin:0 auto;}
.weekcal {position: relative; display:flex; flex-wrap:wrap; justify-content: space-between; }

div.weekly_con {position: relative; width: calc(100%/7); border-right:1px solid #ddd;}
div.weekly_con:nth-child(7) {border-right:0 none;}
div.last_day {border-right:0 none;}
div.weekly_con span {display:block; text-align:center;}
div.weekly_con span.day {font-size:15px; color:#333; font-weight:bold; padding:10px 0;}
div.weekly_con span.date {font-size:17px; color:#111; font-weight:bold; padding:10px 0;}
div.weekly_con span.date.date_on {background:#1946a5; color:#fff; margin:2px;}
div.weekly_con span.sat {color:#1e4ed1;}
div.weekly_con span.sun {color:#d11e1e;}

@media all and (min-width:1024px){
	.weekly_calendar p.cal_month {margin:30px 0;}
	.weekly_list {width:70%; }
	div.weekly_con span.day {font-size:18px; padding:20px 0;}
	div.weekly_con span.date {font-size:26px; padding:20px 0;}
	div.weekly_con span.date.date_on {margin:0 10px;border-radius:5px; }
}


/* 프로필 시작 */
@charset "utf-8";

:root{
	--color_navy:#111111;
	--color_blue: #2344a3;
	--color_blue2:#2d63ff;
	--color_sky:#21d6f2;
	--color_gray:#8b8b8b;
	--color_light_gray:#ececec;
	--color_line:#e6e6e6;
	--color_bg:#f7f7f7;
	--color_white:#ffffff;
}

/* 상단 비주얼*/
.history_visual{
	transition: all 0.3s;
	position:relative;
	overflow:hidden;
	border-radius:16px;
	min-height:245px;
}

.history_visual_img{
	width:100%;
	height: 282px;
	object-fit:cover;
}

.history_visual_overlay{
	position:absolute;
	inset:0;
	background:
		linear-gradient(
			90deg,
			rgba(0,151,214,.58) 0%,
			rgba(0,151,214,.25) 36%,
			rgba(0,0,0,.15) 100%
		);
}

.history_visual_inner{
	position:absolute;
	top:50%;
	left:0;
	width:100%;
	transform:translateY(-50%);
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction: column;
	gap: 15px;
	padding:0 16px;
	text-align:center;
}

.history_year{
	flex:none;
	color:#fff;
	font-size: 42px;
	font-weight:700;
	line-height:1;
	letter-spacing:-0.03em;
}

.history_line{
	flex:none;
	width:18px;
	height:1px;
	background:#fff;
	opacity:.9;
}

.history_visual_title{
	flex:none;
	color:#fff;
	font-size: 24px;
	font-weight:500;
	line-height:1.3;
	white-space:nowrap;
	letter-spacing:-0.03em;
}

/* 프로필 섹션 공통 */
.history_section{
	margin-top:38px;
}

.history_section_birth{
	margin-top:44px;
}

.history_section_head{
	display:flex;
	align-items:center;
	gap:12px;
	margin-bottom:20px;
	padding-left:16px;
}

.history_section_year{
	color:#111;
	font-size:22px;
	font-weight:800;
	line-height:1;
	letter-spacing:-0.03em;
}

.history_section_title{
	color:var(--color_blue);
	font-size:16px;
	font-weight:700;
}


/* 인적사항 */
.history_intro{
	margin-top:22px;
}

.history_intro_badge{
	width:150px;
	height:28px;
	margin:0 auto -14px;
	border-radius:999px;
	background:linear-gradient(90deg, var(--color_sky) 0%, #4f9cf6 100%);
	color:#fff;
	font-size:14px;
	font-weight:700;
	display:flex;
	align-items:center;
	justify-content:center;
	position:relative;
	z-index:2;
}

.history_intro_box{
	display:flex;
	flex-direction:column;
	align-items: center;
	gap:14px;
	padding:30px 20px 24px;
	border-radius:20px;
	color: #090909;
	font-size: 18px;
	border-radius: 0.5em;
	background: #ffffff;
	border: 1px solid #ffffff;
	transition: all 0.3s;
	box-shadow: 6px 6px 12px #e9e9e9, -6px -6px 12px #ffffff;
}

.history_intro_profile{
	color: var(--color_blue);
	font-size: 22px;
	font-weight:700;
	line-height:1.1;
	letter-spacing:-0.05em;
}

.history_intro_text{
	color:#b8bcc8;
	font-size:14px;
	font-weight:500;
	text-align: center;
}



/* 타임라인 */
.history_timeline{
	position:relative;
	margin-left: 25px;
}


.history_timeline_item{
	position:relative;
	display:flex;
	flex-direction:column;
	gap:4px;
	padding-bottom:24px;
}

.history_timeline_item:last-child{
	padding-bottom:0;
}

.history_timeline_item::before{
	content:"";
	position:absolute;
	left:-4px;
	top:10px;
	width:7px;
	height:7px;
	border-radius:50%;
	background:var(--color_blue);
}

.history_timeline_year{
	flex:none;
	margin-left:14px;
	color:#333;
	font-size:15px;
	font-weight:700;
	line-height:1.5;
}

.history_timeline_item::after {
	content:"";
	position: absolute;
	top: 17px;
	left: -1px;
	bottom: calc(100% + 10px);
	background: var(--color_line);
	width:1px;height:100%;
}

.history_timeline_item:last-child::after { 
	content: normal; 
}

.history_timeline_content{
	flex:1;
	min-width:0;
	padding-left:14px;
}

.history_timeline_desc{
	color:#3a3a3a;
	font-size:14px;
	line-height:1.65;
	font-weight:500;
}

.history_timeline_point{
	margin:2px 0 2px;
	color:var(--color_blue);
	font-size:14px;
	line-height:1.55;
	font-weight:800;
}

.history_timeline_birth .history_timeline_item{
	padding-bottom:22px;
}

.history_timeline_birth .history_timeline_item_start::before{
	top:10px;
}

/* 768px 이상 */
@media (min-width:768px){

	.history_wrap{
		padding:8px 8px 60px;
	}

	.history_visual{
		min-height:340px;
		border-radius:16px;
	}

	.history_visual_img{
		height:382px;
	}

	.history_visual_inner{
		gap:14px;
		padding:0 42px;
		flex-direction: row;
	}

	.history_year{
		font-size:44px;
	}

	.history_line{
		width:42px;
	}

	.history_visual_title{
		font-size:26px;
	}

	/* 인적사항 */
	.history_intro{
		margin-top:24px;
	}

	.history_intro_badge{
		width:160px;
		height:30px;
		margin:0 auto -15px;
		font-size:15px;
	}

	.history_intro_box{
		gap:24px;
		display: flex;
		flex-direction: row;
		padding: 32px 35px;
		border-radius:20px;
		width: 100%;
		align-items: center;
		justify-content: center;
		margin: 0 auto;
	}

	.history_intro_profile{
		font-size: 26px;
	}

	.history_intro_text{
		font-size: 18px;
		text-align: center;
	}   

	.history_section{
		margin-top:40px;
	}

	.history_section_birth{
		margin-top:48px;
	}

	.history_section_head{
		gap:16px;
		margin-bottom:24px;
		padding-left:28px;
	}

	.history_section_year{
		font-size:24px;
	}

	.history_section_title{
		font-size:17px;
	}

	.history_timeline{
		margin-left:40px;
	}

	.history_timeline_item{
		flex-direction:row;
		gap:18px;
		padding-bottom:26px;
	}

	.history_timeline_item::before{
		left:-4px;
		top:10px;
	}

	.history_timeline_year{
		flex:0 0 100px;
		margin-left:16px;
		font-size:15px;
		line-height:1.6;
	}

	.history_timeline_content{
		padding-left:0;
	}

	.history_timeline_desc,
	.history_timeline_point{
		font-size:15px;
	}
}

/* 1024px 이상 */
@media (min-width:1024px){

	.history_wrap{
		padding:8px 8px 66px;
	}

	.history_visual{
		min-height:410px;
		border-radius:16px;
	}

	.history_visual_img{
		height:auto;
	}

	.history_visual_inner{
		padding: 0 34px;
		flex-direction: row;
	}

	.history_year{
		font-size: 50px;
		font-weight: 800;
	}

	.history_line{
		width: 47px;
	}

	.history_visual_title{
		font-size: 25px;
	}


	/* 인적사항 */
	.history_intro{
		margin-top:24px;
	}

	.history_intro_badge{
		width:160px;
		height:30px;
		margin:0 auto -15px;
		font-size:15px;
	}

	.history_intro_box{
		gap:24px;
		display: flex;
		flex-direction: row;
		padding: 32px 35px;
		border-radius:20px;
		width: 100%;
		align-items: center;
		justify-content: center;
		margin: 0 auto;
	}

	.history_intro_profile{
		font-size: 26px;
	}

	.history_intro_text{
		font-size: 18px;
		text-align: center;
	}   



	.history_section{
		margin-top:42px;
	}

	.history_section_birth{
		margin-top:52px;
	}

	.history_section_head{
		gap:18px;
		margin-bottom:26px;
		padding-left:36px;
	}

	.history_section_year{
		font-size:26px;
	}

	.history_section_title{
		font-size:24px;
	}

	.history_timeline{
		margin-left:75px;
	}

	.history_timeline_item{
		gap:20px;
		padding-bottom:28px;
	}

	.history_timeline_year{
		flex:0 0 150px;
		margin-left:16px;
		font-size:16px;
	}

	.history_timeline_desc{
		font-size:15px;
		line-height:1.65;
	}

	.history_timeline_point{
		font-size:15px;
		line-height:1.55;
	}
}

/* 1200px 이상 (최종 시안 기준) */
@media (min-width:1200px){

	.history_wrap{
		max-width:1200px;
		padding:8px 8px 70px;
	}

	.history_visual{
		min-height:482px;
		border-radius:16px;
	}

	.history_visual_img{
		width:100%;
		height:auto;
		min-height:482px;
		object-fit:cover;
	}

	.history_visual_inner{
		top:50%;
		left:0;
		width:100%;
		padding:0 93px;
		transform: translateY(-50%);
		display:flex;
		align-items:center;
		justify-content:space-between;
		gap:0;
		flex-direction: row;
	}

	.history_year{
		color:#fff;
		font-size:66px;
		font-weight:800;
		letter-spacing:-0.03em;
	}

	.history_line{
		width: 62px;
		height:1px;
		background:#fff;
	}

	.history_visual_title{
		color:#ffffff;
		font-size:37px;
		font-weight:500;
		white-space:nowrap;
	}

	/* 인적사항 */
	.history_intro{
		margin-top:24px;
	}

	.history_intro_badge{
		width:160px;
		height: 40px;
		margin:0 auto -15px;
		font-size:15px;
	}

	.history_intro_box{
		gap:24px;
		display: flex;
		flex-direction: row;
		padding: 32px 35px;
		border-radius:20px;
		width: 100%;
		align-items: center;
		justify-content: center;
		margin: 0 auto;
	}

	.history_intro_profile{
		font-size: 26px;
	}

	.history_intro_text{
		font-size: 18px;
		text-align: center;
	}    

	.history_section{
		margin-top:80px;
	}

	.history_section_birth{
		margin-top:80px;
	}

	.history_section_head{
		display:flex;
		align-items:center;
		gap: 35px;
		margin-bottom:26px;
		padding-left: 10px;
	}

	.history_section_year{
		color:#111;
		font-size:26px;
		font-weight:800;
		line-height:1;
		letter-spacing:-0.03em;
	}

	.history_section_title{
		color:var(--color_blue);
		font-size:24px;
		font-weight:700;
	}

	.history_timeline{
		position:relative;
		margin-left: 170px;
	}

	.history_timeline_item{
		position:relative;
		display:flex;
		flex-direction:row;
		gap:20px;
		padding-bottom:28px;
	}

	.history_timeline_item:last-child{
		padding-bottom:0;
	}

	.history_timeline_item::before{
		content:"";
		position:absolute;
		left:-4px;
		top:9px;
		width:7px;
		height:7px;
		border-radius:50%;
		background:var(--color_blue);
	}

	.history_timeline_year{
		margin-left:16px;
		color:#333;
		font-size:22px;
		font-weight:700;
		line-height:1.6;
	}

	.history_timeline_content{
		flex:1;
		min-width:0;
		padding-left:0;
	}

	.history_timeline_desc{
		color:#3a3a3a;
		font-size:22px;
		line-height:1.65;
		font-weight:500;
	}

	.history_timeline_point{
		margin:2px 0 2px;
		color:var(--color_blue);
		font-size:22px;
		line-height:1.55;
		font-weight:800;
	}

	.history_timeline_birth .history_timeline_item{
		padding-bottom:24px;
	}

	.history_timeline_birth .history_timeline_item_start::before{
		top:12px;
	}
}
/* 프로필 끝 */