/* =============== main =============== */
.main-content {
	min-height: calc(100vh - 233px);
	overflow: hidden;
}

.main-content section {
	position: relative;
}

.main-content .main-title {
	line-height: 1.35;
	font-size: 32px;
	font-weight: 700;
}

.main-content.header-on {
	padding-top: 100px;
}

.main-visual-section {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 26.04%;
}

.main-visual-section .wrap-inner {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: flex;
	align-items: center;
}

.main-visual-image {
	position: absolute;
	inset: 0;
}

.main-visual-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.main-visual-title p {
	font-size: 16px;
}

.main-visual-title h2 {
	margin-top: 12px;
	line-height: 1.35;
	font-size: 30px;
	font-weight: 700;
}


/* main-search-section */
.main-search-section {
	padding: 80px 0;
}

.main-search-section .wrap-inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 30px;
}

.main-search-title {
	text-align: center;
}

.main-search-title h2 {
	line-height: 1;
	font-size: 52px;
	font-weight: 800;
}

.main-search-title p {
	margin-top: 8px;
	font-size: 17px;
}

.main-search-form {
	width: 70%;
}

.search-input-group {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
}

.main-search-input {
	width: 540px;
	border: 2px solid var(--color-main);
	background: var(--color-white);
	border-radius: 40px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.main-search-input input {
	font-size: 17px;
	padding: 15px 30px;
	border-radius: 40px;
	flex: 1;
}

.main-search-input input::placeholder {
	font-size: 17px;
	color: var(--color-main);
}

.main-search-btn {
	width: 38px;
	height: 38px;
	margin-right: 14px;
	border-radius: 50%;
	flex-shrink: 0;
	background: var(--color-main) url(../images/icon-search.svg) no-repeat center center / 18px;
	transition: transform 0.3s ease;
}

.main-search-btn:hover {
	transform: scale(1.1);
}

.search-detail-btn {
	position: relative;
	width: 143px;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 14px 14px;
	border-radius: 30px;
	border: var(--border-gray);
	font-size: 17px;
	font-weight: 500;
	transition: 0.3s;
}

.search-detail-btn:hover {
	background: #F4F4FC;
}

.search-detail-btn.on {
	background: #F4F4FC;
	border-color: #F4F4FC;
	border-radius: 15px 15px 0 0;
}

.search-detail-btn::after {
	content: '';
	display: block;
	width: 24px;
	height: 24px;
	background: url(../images/icon-filter.png	) no-repeat center center / 100%;
	margin-left: 12px;
}

.search-detail-btn.on::after {
	background-image: url(../images/icon-arrow-up.svg);
}

.detail-search-group {
	position: relative;
	display: none;
	max-width: 770px;
	margin-top: 16px;
	background: #F4F4FC;
	border-radius: 15px 0 15px 15px;
	padding: 20px;
}

.detail-search-group.on {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	row-gap: 16px;
}

.detail-search-group.on::before {
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
	content: '';
	width: 190px;
	height: 30px;
	transform: translateY(-100%);
	background: #F4F4FC;
}

.detail-search-group.on::after {
	position: absolute;
	top: 0;
	right: 143px;
	z-index: -1;
	content: '';
	width: 50px;
	height: 50px;
	transform: translateY(-100%);
	background: #fff;
	border-radius: 0 0 45px 0;
}

.main-date-group {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-left: auto;
}

.main-date-group .main-date-title {
	line-height: 1.5;
	font-weight: 600;
}

.main-date-input-group {
	display: flex;
	align-items: center;
	gap: 5px;
}

.main-date-input input {
	max-width: 145px;
	padding: 8px 10px 8px 14px;
	border: 1px solid #D3D3DF;
	border-radius: 30px;
	background: #fff url('../images/icon-calendar-02.svg') no-repeat calc(100% - 10px) center;
}

.main-date-input input[type='date'].date-input {
	background: #fff url('../images/icon-calendar-02.svg') no-repeat calc(100% - 10px) center;
}

.search-keyword {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	column-gap: 19px;
	row-gap: 10px;
	margin-top: 30px;
}

.search-keyword-title {
	margin-top: 5px;
	flex-shrink: 0;
	font-size: 17px;
	font-weight: 600;
}

.search-keyword-list {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 19px;
}

.search-keyword-list li::before {
	content: '#';
}

.search-keyword-list li {
	padding: 5px 14px;
	border-radius: 30px;
	color: #6E6E6E;
	background: #F7F7F7;
}

.search-keyword-list li a:hover {
	text-decoration: underline;
}

.section-bg-text::before {
	position: absolute;
	line-height: 1;
	color: #F7F7F7;
	font-size: 100px;
	font-weight: 800;
}

.main-view-search {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	row-gap: 20px;
}

.main-view-search .main-search-input {
	flex: 1;
}

.main-view-search .main-search-title {
	text-align: left;
}

.main-view-search .main-search-title h2 {
	font-size: 42px;
}

.main-view-search .detail-search-group {
	max-width: 100%;
}

.main-view-search .search-keyword {
	justify-content: flex-start;
}

/* main-slide-section */
.main-slide-section {
	position: relative;
	padding: 65px 0;
	background: #F7F7F7;
}

.main-slide-section::before {
	top: 20px;
	left: calc((100% - 1200px) / 2);
	content: "NUMER OF DATA";
	transform: translate(-233px, -100%);
}

.main-slide-section .wrap-inner {
	display: flex;
	justify-content: space-between;
	border-radius: 30px;
	background: var(--color-bg-gray);
}

.main-slide-section .title-group {
	display: flex;
	flex-direction: column;
	width: 23%;
	padding-top: 10px;
}

.main-slide-section .slide-btn-group {
	display: flex;
	align-items: center;
	gap: 10px;
}

.main-slide-section .disc-text {
	margin-top: auto;
	font-size: 15px;
	color: #6E6E6E;
}

.main-slide-list {
	width: 76%;
	padding: 10px;
	overflow: hidden;
}

.main-slide-list .slide-item {
	position: relative;
	width: 100%;
	border-radius: 25px;
	text-align: center;
	overflow: hidden;
	transition: box-shadow 0.3s ease;
}

.main-slide-list .slide-item:hover {
	box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, 0.3);
}

.main-slide-list .slide-item::before {
	content: '';
	display: block;
	width: 100%;
	padding-bottom: 130.28%;
}

.main-slide-list .slide-item-title {

}

.main-slide-list .slide-item-title {
	position: absolute;
	top: 12%;
	left: 0;
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: flex-start;
	z-index: 1;
}

.main-slide-list .slide-item-title .title {
	padding: 7px 15px;
	line-height: 1.5;
	font-size: 17px;
	font-weight: 600;
	background: var(--color-white);
	border-radius: 30px;
}

.main-slide-list .slide-item-01 .title {
	color: #E568AD;
}
.main-slide-list .slide-item-02 .title {
	color: #596492;
}
.main-slide-list .slide-item-03 .title {
	color: #FFC240;
}
.main-slide-list .slide-item-04 .title {
	color: #FF8340;
}
.main-slide-list .slide-item-05 .title {
	color: #3792FC;
}
.main-slide-list .slide-item-06 .title {
	color: #29BE5D;
}
.main-slide-list .slide-item-07 .title {
	color: #AF7E53;
}
.main-slide-list .slide-item-08 .title {
	color: #8A5EF2;
}

.main-slide-list .slide-item-title .number {
	margin-top: 8px;
	font-size: 30px;
	font-weight: 500;
	color: var(--color-white);
}

.main-slide-list .slide-item-title .number span {
	font-size: 34px;
	font-weight: 700;
}

.main-slide-list .slide-item img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.main-slide-section .slide-btn-group {
	margin-top: 50px;
}

.main-slide-section .slide-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background: var(--color-white);
	flex-shrink: 0;
	transition: box-shadow 0.3s ease;
}

.main-slide-section .slide-btn:hover {
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.2);
}

.main-slide-section .slide-btn::before {
	content: '';
	display: block;
	width: 6.5px;
	height: 13px;
	background: url(../images/icon-slide-btn-arrow.svg) no-repeat center center / 100%;
}

.main-slide-section .slide-btn.next::before {
	transform: rotate(180deg);
}

.main-notice-section {
	padding: 80px 0;
}

.main-notice-section::before {
	top: 76px;
	right: calc((100% - 1200px) / 2);
	z-index: -1;
	content: "UPDATE DATA";
	transform: translateX(255px);
}

.main-notice-section .wrap-inner {
	display: flex;
	align-items: flex-start;
	gap: 64px;
}

.main-notice-section .notice-group {
	width: 60%;
}

.main-notice-section .title-group {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.main-notice-section .title-group .more-btn {
	color: #666;
}

.main-notice-section .notice-list-wrap {
	margin-top: 10px;
	padding-top: 6px;
	border-top: 1px solid #222;
}

.main-notice-section .notice-list {

}

.main-notice-section .notice-list li {
	border-bottom: 1px solid #D5D5D5;
}

.main-notice-section .notice-list a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	padding: 18px 0;
	transition: 0.3s;
}

.main-notice-section .notice-list a:hover {
	color: var(--color-main);
	text-decoration: none;
}

.main-notice-section .notice-list .notice-title {
	line-height: 1.5;
	font-size: 17px;
}

.main-notice-section .notice-list .notice-date {
	flex-shrink: 0;
	color: #666;
	font-size: 16px;
}

.main-notice-section .data-group {
	width: 40%;
	padding: 36px 40px;
	margin-top: 58px;
	background: #fff;
	border-radius: 16px;
	border: 1px solid #24379C;
}

.main-notice-section .data-card {
	min-height: 92px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 0;
	line-height: 1.5;
}

.main-notice-section .data-card + .data-card {
	margin-top: 25px;
	padding-top: 50px;
	border-top: 1px solid #D5D5D5;
}

.main-notice-section .data-card .data-title {
	display: flex;
	align-items: center;
	gap: 20px;
	font-size: 20px;
	font-weight: 600;
}

.main-notice-section .data-card .number-group {
	display: flex;
	align-items: center;
	gap: 10px;
}

.main-notice-section .data-card .number-group .number {
	font-size: 32px;
	font-weight: 700;
	color: var(--color-main);
}

.main-notice-section .data-card .number-group span {
	font-size: 28px;
	font-weight: 500;
}

.main-data-section {
	padding: 65px 0;
	background: #F4F4FC;
}

.main-data-section::before {
	top: 55px;
	left: 50%;
	z-index: 0;
	content: "DATA APPLY";
	transform: translateX(-50%);
	color: #EBEBF8;
}

.main-data-section .main-card-list {
	display: flex;
	align-items: stretch;
	gap: 34px;
	margin-top: 23px;
}

.main-data-section .main-card-item {
	flex: 1;
}

.main-data-section .main-card-item a {
	position: relative;
	display: block;
	height: 100%;
	padding: 40px 34px;
	border-radius: 16px;
	background-color: #FFF;
	transition: 0.3s;
	word-break: keep-all;
}

.main-data-section .main-card-item a::before {
	content: "";
	display: block;
	width: 70px;
	height: 70px;
	margin-bottom: 12px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	transition: 0.3s;
}

.main-data-section .main-card-item:nth-child(1) a::before {
	background-image: url("/rsrchSport/images/main-data-card-img01.svg");
}

.main-data-section .main-card-item:nth-child(2) a::before {
	background-image: url("/rsrchSport/images/main-data-card-img02.svg");
}

.main-data-section .main-card-item:nth-child(3) a::before {
	background-image: url("/rsrchSport/images/main-data-card-img03.svg");
}

.main-data-section .main-card-item a::after {
	position: absolute;
	top: 30px;
	right: 30px;
	content: "";
	width: 44px;
	height: 44px;
	background: url("/rsrchSport/images/arrow-up-right.svg") no-repeat center / 100%;
	transition: 0.3s;
}

.main-data-section .main-card-item a:hover,
.main-data-section .main-card-item a:focus-visible {
	background-color: #24379C;
}

.main-data-section .main-card-item:nth-child(1) a:hover::before,
.main-data-section .main-card-item:nth-child(1) a:focus-visible::before{
	background-image: url("/rsrchSport/images/main-data-card-img01_active.svg");
}

.main-data-section .main-card-item:nth-child(2) a:hover::before,
.main-data-section .main-card-item:nth-child(2) a:focus-visible::before {
	background-image: url("/rsrchSport/images/main-data-card-img02_active.svg");
}

.main-data-section .main-card-item:nth-child(3) a:hover::before,
.main-data-section .main-card-item:nth-child(3) a:focus-visible::before{
	background-image: url("/rsrchSport/images/main-data-card-img03_active.svg");
}

.main-data-section .main-card-item a:hover::after,
.main-data-section .main-card-item a:focus-visible::after{
	background-image: url("/rsrchSport/images/arrow-up-right_active.svg");
}

.main-data-section .main-card-item .title {
	font-size: 22px;
	font-weight: 700;
	transition: 0.3s;
}

.main-data-section .main-card-item .text {
	margin-top: 10px;
	font-weight: 500;
	color: #666;
	transition: 0.3s;
}

.main-data-section .main-card-item a:hover .title,
.main-data-section .main-card-item a:focus-visible .title {
	color: #fff;
}

.main-data-section .main-card-item a:hover .text,
.main-data-section .main-card-item a:focus-visible .text {
	color: #fff;
}

/* =============== search =============== */
.search-result-group{
	padding: 50px 0 80px;
}

.search-title-group {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 0;
}

.search-title-group .title {
	font-size: 22px;
}

.empty-list {
	padding: 22px;
	text-align: center;
	border-top: 1px solid var(--color-black);
	border-bottom: 1px solid #CCC;
	line-height: 1.5;
	color: #666;
}

.result-more-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	margin-top: 20px;
	padding: 10px 20px;
	border: 1px solid #CCC;
	line-height: 1.5;
	font-size: 15px;
	font-weight: 500;
	color: #8C8C8C;
	transition: background 0.3s ease;
}

.result-more-btn:hover {
	background: #e6e6e6;
}

.result-more-btn::after {
	content: '';
	display: block;
	width: 12px;
	height: 12px;
	background: url(../images/icon-plus.svg) no-repeat center center / 100%;
}

.select-group {
	display: flex;
	align-items: flex-end;
	gap: 30px;
}

.select-group.column {
	align-items: flex-start;
	flex-direction: column;
}

.select-group .select-label {
	margin-right: 30px;
	font-weight: 500;
}

.select-group .select-label.essential::before {
	margin-right: 5px;
}

.select-group .select-normal + .select-label {
	margin-left: 30px;
}

.select-group .select-wrap.column {
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.select-group .select-wrap.row {
	display: flex;
	flex-direction: row;
	gap: 10px;
	flex-wrap: wrap;
}

.select-group .select-wrap.row .select-label {
	padding-top: 10px;
}

.select-group .radio-group {
	height: 40px;
}

.select-group .btn {
	height: 40px;
}

.chart-grid-group {
	display: flex;
	gap: 32px;
}

.chart-grid-group + .chart-grid-group {
	margin-top: 32px;
}

.chart-grid-group.grid-row {
	flex-direction: row;
}

.chart-grid-group.grid-col {
	flex-direction: column;
}

.chart-item {
	display: flex;
	flex-direction: column;
	gap: 16px;
	padding: 24px;
	border: var(--border-gray);
	border-radius: 8px;
}

.chart-content {
	height: 300px;
}

.chart-content.map-chart {
	height: 500px;
}

.chart-content.has-select {
	height: 245px;
}

.chart-content .table-normal {
	height: 300px;
}

.chart-content.has-select .table-normal {
	height: 245px;
}

.chart-grid-group.grid-col.chart-item + .chart-item {
	margin-top: 32px;
}

.chart-content .table-normal table th,
.chart-content .table-normal table td {
	padding: 10px 8px;
	font-size: 14px;
}

.chart-content .table-normal table tr:hover {
	background: #f4f4fc;
}

.chart-content .table-normal table td:hover {
	background: #e1e1f0;
}

.chart-content .table-normal table th:hover {
	background: #dedede;
}

.chart-grid-group.grid-one .chart-item {
	width: 100%;
}

.chart-grid-item {
	width: calc(50% - 16px);
	min-width: 584px;
	max-width: 584px;
}

.iframe-content {
	width: 100%;
}

.chart-grid-3 .chart-item {
	width: calc((100% /3) - 16px);
	min-width: 378px;
	max-width: 378px;
}

.population-total {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px;
	background: #F4F4FC;
	border-radius: 10px;
	color: var(--color-main);
}

.population-total .data-label {
	font-size: 18px;
	font-weight: 600;
}

.population-total .data-value span {
	font-size: 24px;
	font-weight: 700;
}

.population-data-item {
	display: flex;
	justify-content: space-between;
	padding: 16px 20px;
	border-bottom: var(--border-gray);
}

.population-data-item .data-label {
	font-size: 18px;
	color: var(--color-gray-2);
}

.population-data-item .data-value-group {
	text-align: right;
}

.population-data-item .data-rank b {
	display: inline-block;
	font-size: 24px;
	font-weight: 700;
}

.population-data-item .data-value-percent {
	margin-top: 5px;
	font-weight: 700;
	font-size: 18px;
}

.population-data-item .data-value-group .down-percent {
	color: var(--color-accent-blue);
}

.population-data-item .data-value-group .down-percent::after {
	content: '▼';
	font-size: 10px;
	margin-left: 5px;
}

.population-data-item .data-value-group .up-percent {
	color: var(--color-red);
}

.population-data-item .data-value-group .up-percent::after {
	content: '▲';
	font-size: 10px;
	margin-left: 5px;
}

.no-dat-box {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 100%;
	background: var(--color-bg-gray);
}

.no-dat-box.bg-white {
	background: var(--color-white);
}

.no-dat-box::before {
	content: '';
	width: 35px;
	height: 35px;
	margin-bottom: 8px;
	margin-top: -15px;
	background: url(../images/alert-circle.svg) no-repeat center center / 100%;
	color: #8e8e8e;
}

.no-dat-box .p-txt {
	font-size: 18px;
	font-weight: 700;
	color: var(--color-text-gray);
}

.no-dat-box .s-txt {
	font-size: 14px;
	font-weight: 500;
	color: #8e8e8e;
}

.list-content-wrap {
	display: flex;
	flex-direction: column;
	border-bottom: var(--border-gray);
	border-top: 1px solid var(--color-black);
}

.list-content-head {
	flex: 0 0 auto;
	padding: 18px 16px;
	background: #F7F7F7;
	font-weight: 500;
}

.list-content-head span {
	color: var(--color-main);
	font-weight: 700;
}

.list-content-body {
	flex: 1 1 100%;
	overflow-y: auto;
}

.list-content-wrap .list-group {

}

.list-content-wrap .list-item {
	position: relative;
	border-bottom: var(--border-gray);
}

.list-content-wrap .list-item::before {
	position: absolute;
	top: 50%;
	right: 10px;
	content: '';
	display: inline-block;
	width: 28px;
	height: 28px;
	transform: translateY(-50%);
	background: url(../images/icon-marker-default.svg) no-repeat center center / 100%;
}

.list-content-wrap .list-item.active::before {
	background: url(../images/icon-marker-active.svg) no-repeat center center / 100%;
}

.list-content-wrap .list-item a {
	display: block;
	padding: 16px 42px 16px 16px;
}

.list-content-wrap .list-item-title {
	font-size: 17px;
	font-weight: 500;
	transition: color 0.3s ease;
}

.list-content-wrap .list-item a:hover .list-item-title,
.list-content-wrap .list-item.active .list-item-title {
	color: var(--color-main);
}

.list-content-wrap .list-item-text {
	margin-top: 5px;
	font-size: 14px;
	color: var(--color-gray);
}

/* =============== data-list =============== */
.data-search-section {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 34px;
	background: var(--color-bg-gray);
	border-radius: 6px;
}

.data-search-wrap {
	display: flex;
	gap: 20px;
}

.data-search-wrap.column {
	flex-direction: column;
}

.data-search-wrap:last-of-type {
	width: 86%;
}

.data-search-group {
	flex: 1;
}

.data-search-group.medium-size {
	flex: 1.2;
}

.data-search-group.large-size {
	flex: 1.5;
	max-width: 40%;
}

.data-search-label{
	margin-bottom: 12px;
	line-height: 1.5;
	font-size: 18px;
	font-weight: 500;
}

.search-checkbox-group {
	height: 158px;
	overflow: auto;
	padding: 20px;
	border: var(--border-gray);
	border-radius: 5px;
	background: var(--color-white);
}

.data-search-section .date-input-wrap {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 5px;
}

.flatpickr-input + input[type='text'].normal-input:read-only {
	background-color: #fff;
	color: #222;
}

.data-search-btn {
	position: absolute;
	right: 34px;
	bottom: 34px;
}

.data-list-section {
	display: flex;
	gap: 4%;
}

.data-list-section .data-list-detail {
	flex: 1;

}

.data-list-section .data-list-detail .table-normal {
	height: 430px;
}

.data-list-section .data-list {
	flex: 1;
}

.data-list-section .data-list .table-normal {
	height: 430px;
	overflow: auto;
}

.data-list-section .title-group {
	min-height: 35px;
}

.data-popup-search .data-search-group {
	display: flex;
	max-width: unset;
}

.data-popup-search .data-search-label {
	flex-shrink: 0;
	width: 150px;
	margin-bottom: 0;
}

/* =============== window-popup =============== */
.window-popup-inner {
	max-width: 1000px;
	margin: 20px;
}

/* =============== board-detail =============== */
.board-detail-wrap {
	line-height: 1.5;
}

.board-detail-wrap .board-header {
	padding: 20px;
	border-bottom: var(--border-gray);
}

.board-detail-wrap .board-title {
	line-height: 1.5;
	font-size: 22px;
	font-weight: 500;
}

.board-detail-wrap .board-info {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 5px;
	margin-top: 20px;
	font-size: 15px;
}

.board-info-label {
	color: var(--color-gray);
}

.board-info-label + .board-info-label::before {
	content: '';
	display: inline-block;
	width: 1px;
	height: 10px;
	background: #CFCFCF;
	margin: 0 10px;
}

.board-detail-wrap .board-body {
	padding: 20px;
	border-bottom: var(--border-gray);
}

.board-detail-wrap .board-body .board-content {
	min-height: 400px;
	line-height: 1.5;
}

.board-detail-wrap .board-footer {
	padding: 20px;
	border-bottom: var(--border-gray);
}

.board-detail-wrap .file-group {
	display: flex;
}

.board-detail-wrap .file-group .board-footer-title {
	width: 120px;
	font-weight: 500;
}

.board-file-list .board-file-item {

}

.board-file-list .board-file-item + .board-file-item {
	margin-top: 10px;
}

.discbox {
	padding: 34px;
	background: #F4F4FC;
	border-radius: 5px;
}

.discbox-title {
	color: var(--color-main);
}

.discbox-content {
	margin-top: 10px;
	color: var(--color-gray);
}

.alert-text {
	margin-top: 20px;
	font-weight: 500;
	color: var(--color-gray-2);
}

.uploaded-file-group {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: 10px;
	font-size: 14px;
}

.uploaded-file-group .file-name {
	display: inline-block;
	gap: 10px;
}

.upload-delete-btn {
	display: inline-block;
	width: 18px;
	height: 18px;
	vertical-align: middle;
	flex-shrink: 0;
	background: url(../images/icon-header-close.svg) no-repeat center center / 14px;
}

.essential::before {
	content: '*';
	color: var(--color-red);
}

[class*="content-title"] + .terms-box {
	border-top: 2px solid var(--color-black);
}

.terms-box {
	padding: 34px;
	background: var(--color-bg-gray);
}

.terms-content {
	min-height: 200px;
	max-height: 300px;
	overflow: auto;
	white-space: pre-line;
}

/* intro */
.intro-title strong {
	display: inline-block;
	font-size: 30px;
	font-weight: 700;
	color: var(--color-main);
}

.intro-text-group {
	padding-left: 40px;
	font-size: 18px;
	word-break: keep-all;
}

.intro-toggle-btn {
	display: flex;
	margin-bottom: 14px;
	line-height: 1.5;
	text-align: left;
	font-weight: 500;
}

.intro-toggle-btn::before {
	content: '▼';
	margin-top: 4px;
	margin-right: 5px;
	font-size: 12px;
}

.intro-toggle-group.active .intro-toggle-btn::before {
	content: '▲';
}

.intro-toggle-content {
	max-height: 0;
	padding: 0 30px;
	visibility: hidden;
	background: var(--color-bg-gray);
	transition: 0.3s ease;
	opacity: 0;
	border-radius: 6px;
}

.intro-toggle-group.active .intro-toggle-content {
	max-height: 500px;
	padding: 30px;
	visibility: visible;
	opacity: 1;
}

.intro-toggle-content li + li {
	margin-top: 10px;
}

.intro-toggle-content li {
	text-indent: -20px;
	padding-left: 20px;
}

.bullet-list > li {
	position: relative;
	line-height: 1.7;
	padding-left: 12px;
	text-indent: initial;
}

.bullet-list > li::before {
	position: absolute;
	top: 12px;
	left: 0;
	content: "";
	display: inline-block;
	width: 4px;
	height: 4px;
	border-radius: 50%;
	margin-right: 5px;
	background: #666;
	vertical-align: middle;
	text-indent: initial;
}

.hyphen-list > li {
	line-height: 1.7;
	text-indent: -12px;
	margin-left: 12px;
}

.hyphen-list > li::before {
	content: "-";
	margin-right: 3px;
}

.custom-list > li::before {
	content: "";
}

.indent-list > li {
	line-height: 1.7;
	text-indent: -17px;
	margin-left: 17px;
}

.indent-text {
	line-height: 1.7;
	text-indent: -17px;
	margin-left: 17px;
}

.flex-text {
	display: flex;
	align-items: flex-start;
	gap: 5px;
}

.flex-text-shrink {
	flex-shrink: 0;
}

.img-wrap img {
	width: 100%;
}

.intro-stepbox-list {
	display: flex;
	/*grid-template-columns: repeat(auto-fill, minmax(240px, 2fr));*/
	gap: 30px;
	overflow: auto;
}

.intro-stepbox-list.col-6 {
	/*grid-template-columns: repeat(auto-fill, minmax(160px, 2fr));*/
}

.intro-stepbox-list.col-5 {
	/*grid-template-columns: repeat(auto-fill, minmax(210px, 2fr));*/
	gap: 20px;
}

.intro-stepbox-item {
	position: relative;
	flex: 1;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	padding: 20px;
	background: #F4F4FC;
	border-radius: 15px;
	text-indent: 0;
	text-align: center;
	border: 3px solid #e2e2ff;
}

.intro-stepbox-item + .intro-stepbox-item::before {
	position: absolute;
	top: 50%;
	left: -15px;
	content: "";
	width: 7px;
	height: 22px;
	transform: translate(-100%, -50%);
	background: url("/rsrchSport/images/intro-icon-arrow.svg") no-repeat center / 100%;
}

.intro-stepbox-list.col-5 .intro-stepbox-item + .intro-stepbox-item::before {
	left: -10px;
}

.intro-stepbox-list .title-text {
	font-weight: 700;
	font-size: 18px;
	color: var(--color-main);
}

.intro-stepbox-list .text {
	color: #000;
	margin-top: 10px;
	font-size: 16px;
	word-break: keep-all;
}

.intro-stepbox-list.col-5 .intro-stepbox-item {
	justify-content: flex-start;
	gap: 10px;
	padding: 30px 20px;
	border: 3px solid #e2e2ff;
	min-width: 220px;
}

.intro-stepbox-list.col-5 .text {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	justify-content: center;
	/*text-align: left;*/
	font-size: 15px;
	color: #444;
}

/* =============== media query =============== */
@media screen and (max-width: 1000px) {
	.section-bg-text::before {
		display: none;
	}

	.main-search-section .wrap-inner {
		flex-direction: column;
		gap: 30px;
	}

	.main-search-form {
		width: 100%;
	}

	.main-notice-section .wrap-inner {
		flex-direction: column;
		gap: 30px;
	}

	.main-notice-section .notice-group {
		width: 100%;
	}

	.main-notice-section .data-group {
		width: 100%;
		margin-top: 0;
		padding: 10px 20px;
	}

	.data-search-section {
		padding: 20px;
	}

	.data-search-wrap {
		flex-direction: column;
	}

	.data-search-wrap:last-of-type {
		width: 100%;
	}

	.search-checkbox-group {
		max-height: 160px;
		padding: 16px;
	}

	.data-search-group.large-size {
		max-width: 100%;
	}

	.data-search-btn {
		position: initial;
		align-self: center;
	}

	.chart-grid-group.grid-row {
		flex-direction: column;
	}

	.chart-grid-item {
		width: 100%;
		min-width: auto;
	}

	.chart-item {
		padding: 20px;
	}

}

@media screen and (max-width: 768px) {
	.main-content .main-title {
		font-size: 22px;
	}

	.section-bg-text::before {
		display: none;
	}

	.main-visual-section {
		padding-bottom: 51.04%;
	}

	.main-visual-image img {
		object-position: 39%;
	}

	.main-visual-title h2 {
		font-size: 21px;
	}

	.main-search-section {
		padding: 60px 0;
	}

	.main-search-title h2,
	.main-view-search .main-search-title h2{
		font-size: 30px;
	}

	.search-input-group {
		gap: 10px;
	}

	.main-search-input input {
		width: 90%;
		padding: 12px 0 12px 16px;
		text-overflow: ellipsis;
	}

	.main-search-btn {
		margin-right: 5px;
	}

	.search-detail-btn {
		flex-shrink: 0;
		width: 50px;
		height: 50px;
		padding: 0;
		border-radius: 50%;
	}

	.search-detail-btn::after {
		margin-left: 0;
	}

	.search-detail-btn span {
		display: none;
	}

	.detail-search-group {
		margin-top: 10px;
	}

	.detail-search-group.on::before {
		width: 100px;
	}

	.detail-search-group.on::after {
		right: 50px;
		width: 50px;
		border-radius: 0 0 33px 0;
	}

	.main-date-group {
		flex-wrap: wrap;
	}

	.search-keyword {
		padding-left: 0;
	}

	.search-keyword-title {
		font-size: 15px;
	}

	.search-keyword-list {
		column-gap: 5px;
		row-gap: 8px;
	}

	.search-keyword-list li {
		font-size: 14px;
	}

	.main-slide-section {
		padding: 30px 0 50px;
	}

	.main-slide-section .wrap-inner {
		flex-direction: column;
	}

	.main-slide-section .title-group {
		width: 100%;
	}

	.main-slide-section .slide-btn-group {
		margin-top: 10px;
	}

	.main-slide-section .slide-btn {
		width: 40px;
		height: 40px;
	}

	.main-slide-list {
		width: auto;
		margin-right: -20px;
	}

	.main-notice-section {
		padding: 50px 0;
	}

	.main-notice-section .notice-list .notice-title {
		font-size: 16px;
	}

	.main-notice-section .notice-list .notice-date {
		font-size: 14px;
	}

	.main-notice-section .data-card {
		min-height: auto;
	}

	.main-notice-section .data-card + .data-card {
		margin-top: 0;
		padding-top: 20px;
	}

	.main-notice-section .data-card .data-title {
		gap: 10px;
		font-size: 17px;
	}

	.main-notice-section .data-card img {
		width: 35px;
	}

	.main-notice-section .data-card .number-group {
		gap: 5px;
	}

	.main-notice-section .data-card .number-group .number {
		font-size: 23px;
	}

	.main-notice-section .data-card .number-group span {
		font-size: 22px;
	}

	.main-data-section {
		padding: 40px 0;
	}

	.main-data-section .main-card-list {
		flex-direction: column;
		gap: 20px;
		margin-top: 10px;
	}

	.main-data-section .main-card-item a {
		padding: 20px 24px;
	}

	.main-data-section .main-card-item a::before {
		width: 50px;
		height: 50px;
	}

	.main-data-section .main-card-item a::after {
		width: 30px;
		height: 30px;
	}

	.main-data-section .main-card-item .title {
		font-size: 18px;
	}

	.main-data-section .main-card-item .text {
		font-size: 14px;
	}

	.search-title-group {
		margin-bottom: 10px;
	}

	.search-title-group .title {
		font-size: 18px;
	}

	.search-result-group{
		padding: 10px 0 80px;
	}

	.chart-item .btn-group {
		gap: 5px;
		margin-left: auto;
	}

	.data-list-section {
		flex-direction: column;
		gap: 20px;
	}

	.data-list-section .data-list .table-normal {
		max-height: 300px;
	}

	.data-popup-search .data-search-group {
		flex-direction: column;
		gap: 10px;
	}

	.board-detail-wrap .board-header {
		padding: 20px 0;
	}

	.board-detail-wrap .board-title {
		font-size: 18px;
	}

	.board-detail-wrap .board-body {
		padding: 20px 0;
	}

	.board-detail-wrap .board-footer {
		padding: 20px 0;
	}

	.board-detail-wrap .file-group .board-footer-title {
		width: 100px;
	}

	.discbox {
		padding: 20px;
	}

	.terms-box {
		padding: 20px;
	}

	.intro-title strong {
		font-size: 20px;
	}

	.intro-text-group {
		padding-left: 0;
		font-size: 16px;
	}

	.select-group {
		flex-wrap: wrap;
		gap: 20px;
	}

	.select-group .select-normal + .select-label {
		margin-left: 0;
	}

	.select-group .radio-group {
		height: auto;
	}

	.population-data-item {
		flex-direction: column;
		padding: 16px 0;
	}

	.population-data-item .data-label {
		font-size: 16px;
	}

	.data-search-wrap {
		gap: 15px;
	}

	.data-search-label {
		font-size: 16px;
	}

	.chart-content .table-normal table th,
	.chart-content .table-normal table td {
		font-size: 13px;
	}

	.intro-stepbox-list {
		gap: 20px;
		overflow: auto;
	}

	.intro-stepbox-item {
		padding: 14px;
		min-width: 100px;
	}

	.intro-stepbox-list {
		flex-direction: column;
		flex-wrap: wrap;
		align-items: center;
	}

	.intro-stepbox-list .intro-stepbox-item {
		flex: unset;
		width: 100%;
		max-width: 300px;
	}

	.intro-stepbox-item + .intro-stepbox-item::before {
		left: -7.5px;
	}

	.intro-stepbox-list .intro-stepbox-item + .intro-stepbox-item::before {
		top: 0;
		left: 50%;
		width: 6px;
		transform: translate(-50%, -100%) rotate(90deg);
	}

	.intro-stepbox-list.col-5 .intro-stepbox-item + .intro-stepbox-item::before {
		left: 50%;
	}

	.intro-stepbox-list .title-text {
		font-size: 15px;
	}

	.intro-stepbox-list .text {
		margin-top: 5px;
		font-size: 13px;
	}
}

@media screen and (max-width: 428px) {
	.main-date-input-group {
		flex-wrap: wrap;
	}

	.main-date-input:first-of-type {
		width: 100%;
	}

	.main-date-input:last-of-type {
		width: calc(100% - 15px);
	}

	.main-date-input input {
		width: 100%;
		max-width: 100%;
	}

	.main-date-group .main-date-title {
		width: 100%;
	}

}