/* 메인 페이지 모바일 전용 (834px 이하) — PC(835px+) 미적용 */

@media screen and (max-width: 834px) {
	body.page-main {
		overflow-x: hidden;
	}

	/* 헤더: 배너 위 흰 로고·햄버거 */
	body.page-main #header .max768 .h-img img {
		filter: none;
	}
	body.page-main #header .max768 .h-img {
		border-bottom: 0;
		background: transparent;
		transition: background-color 0.2s ease, border-color 0.2s ease;
	}
	body.page-main .main_menu .h-img .m-menu {
		color: #fff;
		transition: color 0.2s ease;
	}
	body.page-main #header.main-mobile-scrolled .max768 .h-img {
		background: #fff;
		border-bottom: 1px solid #e5e5e5;
	}
	body.page-main #header.main-mobile-scrolled .max768 .h-img img {
		filter: brightness(0) saturate(100%) invert(11%) sepia(89%) saturate(1742%) hue-rotate(198deg) brightness(93%) contrast(98%);
	}
	body.page-main #header.main-mobile-scrolled .main_menu .h-img .m-menu {
		color: #061f5c;
	}

	/* 모바일 배너 문구 — 텍스트 크기만 축소 (슬라이더·레이아웃은 관리자 설정 유지) */
	body.page-main .main_banner > .max768 .banner-contents-html .main_banner_text h2 {
		font-size: 2.4em;
	}
	body.page-main .main_banner > .max768 .banner-contents-html .main_banner_text h3 {
		font-size: 1.55em;
	}
	body.page-main .main_banner {
		display: flex;
		flex-direction: column;
		gap: 0;
		margin-bottom: 0;
		padding-bottom: 0;
		height: auto;
		min-height: 0;
		overflow: visible;
		background-color: #3a3a3a;
		--main-servic-nav-edge-gap: 24px;
		--mb-hero-h: clamp(380px, calc(100vw * 1.22), 560px);
		--mb-gradient-h: calc(var(--mb-hero-h) * 0.33);
		--mb-nav-overlap: 52px;
	}
	/* 히어로 박스 — 슬라이더·그라데이션·도트 공통 기준 프레임 */
	body.page-main .main_banner > .max768 {
		position: relative;
		margin: 0;
		flex-shrink: 0;
		width: 100%;
		height: var(--mb-hero-h);
		min-height: 380px;
		max-height: 560px;
		overflow: hidden;
		background-color: #3a3a3a;
		isolation: isolate;
	}
	body.page-main .main_banner > .max768 .bannerWrap {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		width: 100%;
		height: 100% !important;
		max-height: 100% !important;
		margin: 0;
		padding: 0;
		overflow: hidden;
		z-index: 3;
	}
	body.page-main .main_banner > .max768 .bannerWrap .bx-wrapper,
	body.page-main .main_banner > .max768 .bannerWrap .bx-viewport {
		height: 100% !important;
		max-height: 100% !important;
	}
	body.page-main .main_banner > .max768 .bannerWrap .bx-wrapper {
		overflow: visible !important;
		margin-bottom: 0 !important;
	}
	body.page-main .main_banner > .max768 .bannerWrap .bx-viewport {
		overflow: hidden !important;
	}
	body.page-main .main_banner > .max768 .bannerWrap .banner,
	body.page-main .main_banner > .max768 .bannerWrap .banner-has-html {
		height: 100% !important;
		max-height: 100% !important;
		overflow: hidden !important;
	}
	body.page-main .main_banner > .max768 .bannerWrap .banner-has-html .banner-bg-img,
	body.page-main .main_banner > .max768 .bannerWrap .banner > img {
		width: 100% !important;
		height: 100% !important;
		max-width: 100% !important;
		max-height: 100% !important;
		object-fit: cover !important;
		object-position: center center;
	}
 body.page-main .main_banner > .max768 .bannerWrap .banner-has-html .banner-contents-html,
 body.page-main .main_banner > .max768 .banner18 .banner-has-html .banner-contents-html {
		top: 0 !important;
		bottom: 0 !important;
		height: 100% !important;
		padding-top: 0 !important;
		padding-bottom: 0 !important;
		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
	}
	/* 모바일 배너 문구 — 좌측 정렬, h2/h3(문장) 단위 줄바꿈 */
 body.page-main .main_banner > .max768 .banner-contents-html .main_banner_element,
 body.page-main .main_banner > .max768 .banner-contents-html .main_banner_element.pd {
		display: flex !important;
		justify-content: flex-start !important;
		align-items: center !important;
		padding: 0 20px !important;
		width: 100%;
		box-sizing: border-box;
	}
 body.page-main .main_banner > .max768 .banner-contents-html .main_banner_text {
		width: 100%;
		text-align: left;
	}
 body.page-main .main_banner > .max768 .banner-contents-html .main_banner_text h2,
 body.page-main .main_banner > .max768 .banner-contents-html .main_banner_text h3 {
		display: block;
		text-align: left;
		white-space: nowrap;
	}
	body.page-main .main_banner > .max768 .bx-prev,
	body.page-main .main_banner > .max768 .bx-next {
		display: none !important;
	}
	/* 그라데이션 — 메뉴 겹침 구간 위에서만 시작 (자연스러운 이어짐) */
	body.page-main .main_banner > .max768::after {
		content: '';
		position: absolute;
		left: 0;
		right: 0;
		bottom: var(--mb-nav-overlap);
		height: var(--mb-gradient-h, 33%);
		max-height: 200px;
		background: linear-gradient(
			to bottom,
			rgba(58, 58, 58, 0) 0%,
			rgba(58, 58, 58, 0.35) 30%,
			rgba(58, 58, 58, 0.68) 55%,
			rgba(58, 58, 58, 0.9) 78%,
			#3a3a3a 100%
		);
		pointer-events: none;
		z-index: 2;
	}
	/* 슬라이더 도트 — 모바일·태블릿 공통 (원형 가로 중앙) */
	body.page-main .main_banner > .max768 .bannerWrap .bx-controls {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 6;
		pointer-events: none;
		overflow: visible;
	}
	body.page-main .main_banner > .max768 .bx-pager,
	body.page-main .main_banner > .max768 .bx-wrapper .bx-pager,
	body.page-main .main_banner > .max768 .bx-wrapper .bx-controls-auto {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 20px !important;
		width: 100%;
		padding-top: 0;
		margin: 0;
		text-align: center;
		font-size: 0;
		line-height: 0;
		z-index: 6;
		pointer-events: auto;
		overflow: visible;
	}
	body.page-main .main_banner > .max768 .bx-pager-item,
	body.page-main .main_banner > .max768 .bx-pager .bx-pager-item {
		display: inline-block;
		vertical-align: bottom;
		font-size: 0;
		line-height: 0;
		margin: 0 20px;
	}
	body.page-main .main_banner > .max768 .bx-pager.bx-default-pager {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	body.page-main .main_banner > .max768 .bx-pager.bx-default-pager a,
	body.page-main .main_banner > .max768 .bx-pager.bx-default-pager .bx-pager-link {
		text-indent: -9999px;
		overflow: visible;
		display: block;
		width: 6px;
		height: 6px;
		margin: 0;
		outline: 0;
		border-radius: 50%;
		box-sizing: border-box;
		background: rgba(255, 255, 255, 0.72);
		position: relative;
	}
	body.page-main .main_banner > .max768 .bx-pager.bx-default-pager a:hover,
	body.page-main .main_banner > .max768 .bx-pager.bx-default-pager a:focus {
		background: rgba(255, 255, 255, 0.9);
	}
	body.page-main .main_banner > .max768 .bx-pager.bx-default-pager a.active {
		background: #fff;
	}
	body.page-main .main_banner .servic_nav_wrap {
		position: relative;
		z-index: 3;
		margin: calc(-1 * var(--mb-nav-overlap, 52px)) 0 0;
		padding: 0 0 var(--main-servic-nav-edge-gap);
		flex-shrink: 0;
		height: auto;
		min-height: 0;
		background-color: #3a3a3a;
		border-top: 0;
	}
	body.page-main .main_banner .servic_nav_wrap::before {
		content: '';
		position: absolute;
		top: calc(-1 * var(--mb-nav-overlap, 52px));
		left: 0;
		right: 0;
		height: var(--mb-nav-overlap, 52px);
		background: linear-gradient(
			to bottom,
			rgba(58, 58, 58, 0) 0%,
			rgba(58, 58, 58, 0.45) 50%,
			#3a3a3a 100%
		);
		pointer-events: none;
		z-index: 0;
	}
	body.page-main .main_banner .servic_nav_wrap > .servic_nav_wrap_box {
		position: relative;
		z-index: 1;
		height: auto;
		background-color: #3a3a3a;
	}
	body.page-main .main_banner .servic_nav_wrap .servic_nav {
		height: auto;
		width: 100%;
	}
	body.page-main .main_banner .servic_nav_wrap .servic_nav > ul {
		flex-direction: column;
		height: auto;
		width: 100%;
	}
	body.page-main .main_banner .servic_nav_wrap .servic_nav > ul > li {
		flex: 0 0 auto;
		height: auto;
		width: 100%;
		border-bottom-color: rgba(255, 255, 255, 0.14);
	}
	body.page-main .main_banner .servic_nav_wrap .servic_nav > ul > li:last-child {
		border-bottom: 0;
	}
	body.page-main .main_banner .servic_nav_wrap .servic_nav > ul div {
		flex-direction: row;
		align-items: center;
		justify-content: flex-start;
		width: 100%;
		height: auto;
		padding: 18px 48px 18px 0;
		box-sizing: border-box;
	}
	body.page-main .main_banner .servic_nav_wrap .servic_nav > ul div > p {
		font-size: 1.05em;
		font-weight: 500;
		margin: 0;
	}

	/* servic_nav ~ sec02 (.section shorthand가 sec02 padding을 덮지 않도록 .section.sec02_con 사용) */
	body.page-main .main_index_sections .section {
		padding: 60px 0;
	}
	body.page-main .main_index_sections .section.sec02_con {
		padding-bottom: 55px;
	}
	body.page-main .main_index_sections .section.sec03_con {
		padding: 38px 0 32px;
	}
	body.page-main .sec03_con .inner div.right,
	body.page-main .sec03_con .sec03_notice_right {
		margin-top: 12px;
	}
	body.page-main .bd-lg {
		max-width: none;
		padding-left: 20px;
		padding-right: 20px;
		box-sizing: border-box;
	}
	body.page-main .main_family_banner {
		margin-top: 0;
		border-top: 0;
	}
	body.page-main .main_family_banner .roling-wrap {
		padding-left: 20px;
		padding-right: 20px;
		box-sizing: border-box;
	}

	/* sec03 공지 카드 — 높이·패밀리사이트 여백 */
	body.page-main .sec03_con .sec03_notice_right {
		align-items: stretch;
	}
	body.page-main .sec03_con .sec03_notice_right > .main-nc-board-btn {
		position: static;
		align-self: flex-end;
		margin: 0 0 8px;
	}
	body.page-main .sec03_con .sec03_notice_right > .main-nc-board-btn .main-nc-board-btn-label {
		font-size: 16px;
	}
	body.page-main .sec03_con .sec03_notice_right > .main-nc-board-btn .main-nc-board-btn-icon {
		display: inline-block;
		width: 20px;
		height: 20px;
		background-color: currentColor;
		background-image: none;
		-webkit-mask-size: 18px 18px;
		mask-size: 18px 18px;
	}
	body.page-main .sec03_con .sec03_notice_right > ul {
		gap: 14px;
	}
	body.page-main .sec03_con .sec03_notice_right > ul > li {
		display: flex;
	}
	body.page-main .sec03_con .sec03_notice_right .main-notice {
		width: 100%;
		min-height: 250px;
		height: auto;
		padding: 18px 18px 14px;
	}
	body.page-main .sec03_con .main-nc-bot-wrap {
		flex: 1 1 auto;
		min-height: 0;
		margin-top: 10px;
		padding-top: 0;
	}
	body.page-main .sec03_con .main-nc-bot-wrap > .nc-content-txt-box {
		margin-top: 10px;
		-webkit-line-clamp: 2;
		line-clamp: 2;
	}
	body.page-main .sec03_con .main-nc-bot-wrap > .main-nc-footer {
		margin-top: auto;
		padding-top: 6px;
	}
	body.page-main .sec03_con .main-nc-more {
		opacity: 1;
		transform: none;
	}

	/* 버튼 ↔ 카드 간격 */
	body.page-main .sec02_con .main_button > ul {
		margin-top: 16px;
		margin-bottom: 36px;
	}
	body.page-main .sec02_con .inner div.right {
		margin-top: 0;
	}
	body.page-main .sec02_con .inner div.right ul {
		display: flex;
		flex-wrap: wrap;
		gap: 14px;
	}
	body.page-main .sec02_con .inner div.right li {
		width: calc((100% - 14px) / 2);
	}

	/* 카드 높이 */
	body.page-main .sec02_con .inner div.right li > .class {
		height: 210px !important;
		min-height: 0 !important;
	}
	body.page-main .sec02_con .inner div.right li .class-box {
		flex: 1;
		height: 100%;
	}
	body.page-main .sec02_con .inner div.right li .class-bottom {
		padding: 8px 10px;
	}
	body.page-main .sec02_con .inner div.right li .class-bottom > p {
		font-size: 11px;
		margin-bottom: 2px;
	}
	body.page-main .sec02_con .inner div.right li .class-bottom > h3 {
		font-size: 13px;
	}
	body.page-main .sec02_con .inner div.right li .class-hover-text > p {
		font-size: 13px;
		margin-bottom: 4px;
	}
	body.page-main .sec02_con .inner div.right li .class-hover-text {
		transform: translateY(4px);
	}
	body.page-main .sec02_con .inner div.right li .class-hover-text > h3 {
		font-size: 22px;
	}
	body.page-main .sec02_con .inner div.right li .class-apply-label {
		inset: auto;
		top: 10px;
		right: 10px;
		left: auto;
		bottom: auto;
		display: block;
		flex-direction: unset;
		align-items: unset;
		justify-content: unset;
		gap: 0;
		opacity: 1;
	}
	body.page-main .sec02_con .inner div.right li .class-hover-text {
		display: none;
	}
	body.page-main .sec02_con .inner div.right li .class-apply-label > span {
		display: inline-block;
		min-width: 0;
		height: auto;
		padding: 0;
		font-family: 'SBAggro', sans-serif;
		font-size: 13px;
		font-weight: 500;
		line-height: 1.2;
		color: transparent;
		background-image: linear-gradient(
			105deg,
			#fff 0%,
			#fff 42%,
			#1DD673 50%,
			#fff 58%,
			#fff 100%
		);
		background-size: 280% 100%;
		-webkit-background-clip: text;
		background-clip: text;
		-webkit-text-fill-color: transparent;
		border-radius: 0;
		text-align: right;
		white-space: nowrap;
		transform: none;
		transition: none;
		opacity: 0.75;
		filter: drop-shadow(0 1px 1.5px rgba(0, 0, 0, 0.28));
		animation: sec02-title-sparkle 1.8s ease-in-out infinite;
	}
	@media (hover: none) {
		body.page-main .sec02_con .inner div.right li > .class:hover::before {
			opacity: 0;
		}
		body.page-main .sec02_con .inner div.right li > .class:hover::after {
			transform: none;
		}
		body.page-main .sec02_con .inner div.right li > .class:hover .class-bottom {
			display: block;
		}
	}
	@media (prefers-reduced-motion: reduce) {
		body.page-main .sec02_con .inner div.right li .class-apply-label > span {
			animation: none;
			background: none;
			color: #fff;
			-webkit-text-fill-color: #fff;
			opacity: 0.75;
		}
	}
	body.page-main .sec02_con .inner div.right li > .class_04 .class-bottom > p,
	body.page-main .sec02_con .inner div.right li > .class_06 .class-bottom > p {
		font-size: 10px;
	}
	body.page-main .sec02_con .inner div.right li > .class_04 .class-bottom > h3,
	body.page-main .sec02_con .inner div.right li > .class_06 .class-bottom > h3 {
		font-size: 12px;
	}
	body.page-main .sec02_con .inner div.right li > .class_04 .class-hover-text > p,
	body.page-main .sec02_con .inner div.right li > .class_06 .class-hover-text > p {
		font-size: 12px;
	}
	body.page-main .sec02_con .inner div.right li > .class_04 .class-hover-text > h3,
	body.page-main .sec02_con .inner div.right li > .class_06 .class-hover-text > h3 {
		font-size: 19px;
	}
}

/* 태블릿 전용 (481~834px) — PC 배너(banner15)·500px 고정·폰/PC 미적용 */
@media screen and (min-width: 481px) and (max-width: 834px) {
	body.page-main .main_banner {
		--mb-hero-h: 500px;
		--mb-gradient-h: 120px;
		--mb-nav-overlap: 0px;
	}
	/* 모바일 배너 숨김, PC 배너 표시 */
	body.page-main .main_banner > .max768 {
		display: none !important;
	}
	body.page-main .main_banner > .min768 {
		display: block !important;
		position: relative !important;
		top: auto !important;
		left: auto !important;
		width: 100% !important;
		height: 500px !important;
		min-height: 500px !important;
		max-height: 500px !important;
		margin: 0;
		overflow: hidden;
		flex-shrink: 0;
		background-color: #3a3a3a;
		isolation: isolate;
	}
	/* 로그인 박스만 숨김 — banner-contents-html 내부 문구는 제외 */
 body.page-main .main_banner > .min768 > .main_banner_element {
		display: none !important;
	}
	/* 슬라이더·이미지 — 전 구간 500px 고정, 가로 넘침 크롭 */
	body.page-main .main_banner > .min768 .bannerWrap,
	body.page-main .main_banner > .min768 .bannerWrap.banner15,
	body.page-main .main_banner > .min768 .bannerWrap .bx-wrapper,
	body.page-main .main_banner > .min768 .bannerWrap .bx-viewport,
	body.page-main .main_banner > .min768 .bannerWrap .bx-viewport > ul,
	body.page-main .main_banner > .min768 .bannerWrap .bx-viewport > ul > li,
	body.page-main .main_banner > .min768 .bannerWrap .bx-viewport .bx-clone {
		height: 500px !important;
		min-height: 500px !important;
		max-height: 500px !important;
	}
	body.page-main .main_banner > .min768 .bannerWrap {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		width: 100%;
		margin: 0;
		padding: 0;
		overflow: hidden;
		z-index: 3;
	}
	body.page-main .main_banner > .min768 .bannerWrap .bx-wrapper {
		overflow: visible !important;
		margin-bottom: 0 !important;
	}
	body.page-main .main_banner > .min768 .bannerWrap .bx-viewport {
		overflow: hidden !important;
	}
	body.page-main .main_banner > .min768 .bannerWrap .banner,
	body.page-main .main_banner > .min768 .bannerWrap .banner-has-html {
		position: relative !important;
		height: 500px !important;
		min-height: 500px !important;
		max-height: 500px !important;
		overflow: hidden !important;
	}
	body.page-main .main_banner > .min768 .bannerWrap .banner-has-html .banner-bg-img,
	body.page-main .main_banner > .min768 .bannerWrap .banner > img,
	body.page-main .main_banner > .min768 .bannerWrap .banner > a > img {
		position: absolute !important;
		top: 0 !important;
		left: 0 !important;
		width: 100% !important;
		height: 500px !important;
		min-height: 500px !important;
		max-height: none !important;
		max-width: none !important;
		object-fit: cover !important;
		object-position: center center;
		display: block !important;
	}
	body.page-main .main_banner > .min768 .bx-prev,
	body.page-main .main_banner > .min768 .bx-next {
		display: none !important;
	}
	/* 그라데이션 */
	body.page-main .main_banner > .min768::after {
		content: '';
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		height: var(--mb-gradient-h, 120px);
		max-height: 120px;
		background: linear-gradient(
			to bottom,
			rgba(58, 58, 58, 0) 0%,
			rgba(58, 58, 58, 0.35) 30%,
			rgba(58, 58, 58, 0.68) 55%,
			rgba(58, 58, 58, 0.9) 78%,
			#3a3a3a 100%
		);
		pointer-events: none;
		z-index: 2;
	}
	/* 도트 — 모바일과 동일 */
	body.page-main .main_banner > .min768 .bannerWrap .bx-controls {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 6;
		pointer-events: none;
		overflow: visible;
	}
	body.page-main .main_banner > .min768 .bx-pager,
	body.page-main .main_banner > .min768 .bx-wrapper .bx-pager,
	body.page-main .main_banner > .min768 .bx-wrapper .bx-controls-auto {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 20px !important;
		width: 100%;
		padding-top: 0;
		margin: 0;
		text-align: center;
		font-size: 0;
		line-height: 0;
		z-index: 6;
		pointer-events: auto;
		overflow: visible;
	}
	body.page-main .main_banner > .min768 .bx-pager-item,
	body.page-main .main_banner > .min768 .bx-pager .bx-pager-item {
		display: inline-block;
		vertical-align: bottom;
		font-size: 0;
		line-height: 0;
		margin: 0 24px;
	}
	body.page-main .main_banner > .min768 .bx-pager.bx-default-pager {
		display: flex;
		justify-content: center;
		align-items: center;
	}
	body.page-main .main_banner > .min768 .bx-pager.bx-default-pager a,
	body.page-main .main_banner > .min768 .bx-pager.bx-default-pager .bx-pager-link {
		text-indent: -9999px;
		overflow: visible;
		display: block;
		width: 6px;
		height: 6px;
		margin: 0;
		outline: 0;
		border-radius: 50%;
		box-sizing: border-box;
		background: rgba(255, 255, 255, 0.72);
		position: relative;
	}
	body.page-main .main_banner > .min768 .bx-pager.bx-default-pager a:hover,
	body.page-main .main_banner > .min768 .bx-pager.bx-default-pager a:focus {
		background: rgba(255, 255, 255, 0.9);
	}
	body.page-main .main_banner > .min768 .bx-pager.bx-default-pager a.active {
		background: #fff;
	}
	/* 문구 — 좌측 정렬 (PC와 동일) */
 body.page-main .main_banner > .min768 .bannerWrap .banner-has-html .banner-contents-html,
 body.page-main .main_banner > .min768 .banner15 .banner-has-html .banner-contents-html {
		top: 0 !important;
		bottom: 0 !important;
		height: 100% !important;
		display: flex !important;
		align-items: center !important;
		justify-content: flex-start !important;
		z-index: 4;
		padding-bottom: 36px !important;
		box-sizing: border-box !important;
	}
 body.page-main .main_banner > .min768 .banner-contents-html .main_banner_element,
 body.page-main .main_banner > .min768 .banner-contents-html .main_banner_element.pd {
		display: flex !important;
		justify-content: flex-start !important;
		align-items: center !important;
		padding: 0 48px !important;
		width: 100%;
		box-sizing: border-box;
	}
 body.page-main .main_banner > .min768 .banner-contents-html .main_banner_text {
		width: 100%;
		text-align: left;
	}
 body.page-main .main_banner > .min768 .banner-contents-html .main_banner_text h2,
 body.page-main .main_banner > .min768 .banner-contents-html .main_banner_text h3 {
		display: block;
		text-align: left;
		white-space: nowrap;
	}
	body.page-main .main_banner > .min768 .banner-contents-html .main_banner_text h2 {
		font-size: 2.85em;
	}
	body.page-main .main_banner > .min768 .banner-contents-html .main_banner_text h3 {
		font-size: 1.85em;
	}
	/* 메뉴 — 배너 바로 아래 */
	body.page-main .main_banner .servic_nav_wrap {
		margin-top: 0 !important;
		z-index: 2;
		background-color: #3a3a3a !important;
	}
	body.page-main .main_banner .servic_nav_wrap::before {
		display: none !important;
	}
	body.page-main .main_banner .servic_nav_wrap > .servic_nav_wrap_box {
		background-color: #3a3a3a !important;
	}
	body.page-main .main_banner .servic_nav_wrap .servic_nav > ul div {
		padding: 18px 56px 18px 28px;
	}
	/* main_index 960px 패딩(100px) 덮어쓰기 — 태블릿 본문 */
	body.page-main .main_index_sections .section {
		padding: 60px 0;
	}
	body.page-main .main_index_sections .section.sec02_con {
		padding-bottom: 55px;
	}
	body.page-main .main_index_sections .section.sec03_con {
		padding: 38px 0 32px;
	}
	body.page-main .main_index_sections .main_title h2,
	body.page-main .main_index_sections .main_title h2 > b {
		font-size: 25px;
	}
	body.page-main .main_index_sections .main_title span {
		font-size: 13px;
		margin-bottom: 14px;
	}
	body.page-main .main_index_sections .main_title {
		margin-bottom: 8px;
	}
	body.page-main .main_index_sections .main_text > p,
	body.page-main .main_index_sections .main_button li > input {
		font-size: 16px;
	}
	body.page-main .sec02_con .inner div.right ul {
		display: flex;
		flex-wrap: wrap;
		gap: 14px;
	}
	body.page-main .sec02_con .inner div.right ul > li {
		width: calc((100% - 14px) / 2);
	}
	body.page-main .sec02_con .inner div.right li:nth-child(4),
	body.page-main .sec02_con .inner div.right li:nth-child(5),
	body.page-main .sec02_con .inner div.right li:nth-child(6) {
		margin-top: 0;
	}
	body.page-main .sec02_con .inner div.right li > .class {
		height: 195px !important;
		min-height: 0 !important;
	}
	body.page-main .sec03_con .inner div.right {
		margin-top: 12px;
	}
	body.page-main .sec03_con .sec03_notice_right > ul {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: flex-start;
	}
	body.page-main .sec03_con .sec03_notice_right > ul > li {
		display: flex;
		flex: 1 1 0;
		width: auto;
		max-width: calc(50% - 8px);
	}
	body.page-main .bd-lg {
		padding-left: 28px;
		padding-right: 28px;
	}
}

@media screen and (max-width: 768px) {
	body.page-main .main_index_sections .main_title h2,
	body.page-main .main_index_sections .main_title h2 > b {
		font-size: 25px;
	}
	body.page-main .main_index_sections .main_title span {
		font-size: 13px;
		margin-bottom: 14px;
	}
	body.page-main .main_index_sections .main_title {
		margin-bottom: 8px;
	}
	body.page-main .main_index_sections .main_text > p,
	body.page-main .main_index_sections .main_button li > input {
		font-size: 16px;
	}
	body.page-main .sec02_con .inner div.right li > .class {
		height: 195px !important;
		min-height: 0 !important;
	}
	body.page-main .sec03_con .sec03_notice_right .main-notice {
		min-height: 250px !important;
	}
}

@media screen and (max-width: 555px) {
	body.page-main .main_index_sections .main_title span {
		font-size: 11px;
	}
	body.page-main .main_index_sections .main_title h2,
	body.page-main .main_index_sections .main_title h2 > b {
		font-size: 23px;
	}
	body.page-main .main_index_sections .section {
		padding: 50px 0;
	}
	body.page-main .main_index_sections .section.sec02_con {
		padding-bottom: 55px;
	}
	body.page-main .main_index_sections .section.sec03_con {
		padding: 36px 0 32px;
	}
	body.page-main .sec02_con .inner div.right li > .class {
		height: 180px !important;
		min-height: 0 !important;
	}
}

@media screen and (max-width: 480px) {
	body.page-main .main_banner > .max768 .bx-pager-item,
	body.page-main .main_banner > .max768 .bx-pager .bx-pager-item {
		margin: 0 18px;
	}
	body.page-main .main_banner > .max768 .banner-contents-html .main_banner_text h2 {
		font-size: 2.1em;
	}
	body.page-main .main_banner > .max768 .banner-contents-html .main_banner_text h3 {
		font-size: 1.35em;
	}
	body.page-main .bd-lg {
		padding-left: 16px;
		padding-right: 16px;
	}
}
