﻿@charset "utf-8";
/* CSS Document */

/* Wrap */
.wrap { width: 100%; max-width: 1380px; margin: 0 auto; word-break: keep-all; }

/* PC, 모바일 표시 */
.p_ver { display: inline-block!important; }
.m_ver { display: none!important; }
/*키워드숨김*/
.keywordhide{overflow: hidden; display: inline-block; position: relative; z-index: -1; border: 0; width: 1px; height: 1px; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%);}

.d-flex{display: flex;}
.gap-sm{gap:0.5rem}
.gap-md{gap:1rem}
/* 버튼 스타일 01 */
.btn_style_01 { display: inline-flex; gap: 10px; align-items: center; height: 60px; padding: 0 1.5rem; border-radius: 500rem; border: none; overflow: hidden; color: #fff; position: relative; transition: var(--transition); }
.btn_style_01 .btn_txt { transform: translateX(15px); font-size: 1.2em; font-weight: 600; transition-duration: 0.3s;  line-height: 1; }
.btn_style_01 .iconer { transform: translateY(50px); transition-duration: 0.3s; display: inline-flex!important; align-items: center; justify-content: center; font-weight: 400; font-size: 1.35em; }
.btn_style_01:hover .btn_txt { transform: translateX(0px); }
.btn_style_01:hover .iconer { transform: translateY(0%); }

/* 버튼 스타일 02 */
.btn_style_02 { display: inline-flex; gap: 10px; align-items: center; height: 50px; padding: 0 1.5rem; border-radius: 500rem; border: none; overflow: hidden; color: #fff; position: relative; transition: var(--transition); font-size: 1.1em; font-weight: 600; }

.btn_down{ display: flex; gap: 10px; align-items: center; width: fit-content; height: 50px; padding: 0 1.25rem; border-radius: 500rem; border: none; overflow: hidden; background-color: var(--pink); color: #fff!important; transition: var(--transition); font-size: 1.1em; font-weight: 600;}

/* 폼 스타일 01 */
.form_style_01 .fieldset_label { font-weight: 700; transition: var(--transition); }
.form_style_01 .fieldset_label sup { color: var(--slate_gray); font-size: 0.9em; font-weight: 500; margin-left: 0.5rem; opacity: 0.7;}
.form_style_01 .fieldset_label sup.red { color: var(--red); }
.form_style_01 input[type="text"], .form_style_01 input[type="number"], .form_style_01 input[type="password"], .form_style_01 input[type="tel"], .form_style_01 select { border: solid 1px #ddd; border-radius: var(--br_01); height: 56px; padding: 0 1rem; font-size: 1em; transition: var(--transition); }
/*.form_style_01 [id$="fieldset"]:focus-within .fieldset_label { color: var(--blue_01); }*/
.form_style_01 [id$="fieldset"]:focus-within input[type="text"], 
.form_style_01 [id$="fieldset"]:focus-within input[type="password"], 
.form_style_01 [id$="fieldset"]:focus-within input[type="tel"], 
.form_style_01 [id$="fieldset"]:focus-within input[type="number"], 
.form_style_01 [id$="fieldset"]:focus-within select { border: solid 1px var(--blue_01); }

/* 라디오 셀렉트 */
.radio_button_group { display: flex; justify-content: space-between; }
.radio_button_group .radio_input { display: none; }
.radio_button_group label { display: inline-flex; align-items: center; justify-content: center; border: solid 1px #ddd; flex: 1; margin-right: 2%; box-sizing: border-box; font-weight: 600; transition: var(--transition); color: #888; border-radius: var(--br_01); height: 56px; }
	.radio_button_group label:last-child { margin-right: 0; }
.radio_button_group .radio_input:checked + .radio_label { border: solid 1px var(--blue_01); background-color: rgba(15,115,233,0.1); color: var(--blue_01); }
.radio_button_group label.disabled { background-color: rgba(0,0,0,0.05)!important; color: #888888!important; cursor: not-allowed; }

/* 테이블 스타일 01 */
.table_style_01 { border-bottom: 1px solid var(--border_color); width: 100%; }
.table_style_01 tr { border-top: 1px solid var(--border_color); }
.table_style_01 tr:first-of-type { border-top: 1px solid #111!important; }
.table_style_01 th { background-color: #f8f8f8; font-weight: bold; }
.table_style_01 th, .table_style_01 td { padding: 1rem; text-align: center; }

/* 체크박스 */
.checkbox_ctr { display: inline-block; position: relative; padding-left: 35px; cursor: pointer; font-size: 16px; user-select: none; height: 25px; }
.checkbox_ctr * { box-sizing: content-box; webkit-box-sizing: content-box!important; -moz-box-sizing: content-box!important; }
.checkbox_ctr input { position: absolute; opacity: 0; cursor: pointer; height: 0; width: 0; }
.checkbox_ctr .checkmark { position: absolute; top: 0; left: 0; height: 25px; width: 25px; background-color: #eee; border-radius: 4px; transition: background-color 0.3s; transform: scale(0.9); transform-origin: left; }
.checkbox_ctr .checkmark::after { content: ""; position: absolute; display: none; left: 9px; top: 4px; width: 5px; height: 10px; border: solid white; border-width: 0 3px 3px 0; transform: rotate(45deg); }
.checkbox_ctr input:checked ~ .checkmark { background-color: var(--orange); }
.checkbox_ctr input:checked ~ .checkmark:after { display: block; }
.checkbox_ctr input:checked ~ .checkmark:after { animation: checkAnim 0.2s forwards; }
@keyframes checkAnim {
  0% { height: 0; }
  100% { height: 10px; }
}

/* 섹션 타이틀 */
.sec_tit { margin-bottom: 3.5rem; text-align: center; }
.sec_tit .main_txt { font-size: 2.8rem; margin-bottom: 1rem; line-height: 1.32; font-family: var(--p_font); }
.sec_tit .desc_txt { font-size: 1.25em; font-weight: 500; opacity: 0.7; }

/* 변수 */
:root {
	/* 트랜지션 */
	--transition: 0.3s ease-out;
	
	/* 패딩,마진 */
	--sec_pd: 6.5rem;
	
	/* 모서리 곡률 */
	--br_01: 0.5rem;
	--br_02: 0.8rem;

	/* 컬러 */
	--blue_01: #0f73e9;
	--blue_01_hover: #0b5698;
	--blue_02: #2d4ec8;
	--blue_02_hover: #1d3578;
	--red: #e81c2c;
	--orange: #ffa000;
	--pink: #FF5A97;
	--yellow: #ffdb4e;
	--light_gray: hsla(225,33%,95%,0.25);	
	--slate_gray: #636e8a;
	--slate_gray_hover: #45506c;
	--border_color: #ebebeb;
	--gradient: linear-gradient(135deg, #1a78cd, #6d4ed6);	
	--gradient_02: linear-gradient(to right bottom, #e0f3ff 35%, #9bd6fb 120%);

	/* 폰트 */
	--p_font: 'JalnanGothic';
}

/*Animations*/
[data-animate-in] {
    opacity: 0;
    transition: transform 0.8s ease, opacity 2s ease
}

[data-animate-in="up"] {
    transform: translate3d(0, 24px, 0)
}

[data-animate-in="left"] {
    transform: translate3d(-25%, 0, 0)
}

[data-animate-in="right"] {
    transform: translate3d(25%, 0, 0)
}

[data-animate-in="down"] {
    transform: translate3d(0, -24px, 0)
}

[data-animate-in="fadeIn"] {
    transform: translate3d(0, 0, 0)
}

[data-animate-in].in-view {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    transition: transform 0.6s ease, opacity 0.6s ease
}

.fade-in {
    opacity: 0;
    transition: opacity 1s ease
}

.page-loaded .fade-in,.page-loaded.fade-in {
    opacity: 1
}

.isSafari.isTouch [data-animate-in],.isSafari.isTouch [data-animate-in="up"] {
    opacity: 1;
    transition: none;
    transform: none
}
@keyframes MyScale {
    from {
        transform: scale(1.1);
        opacity: 0;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}
@keyframes opacity {
    0% { opacity: 0.5; }
	100% { opacity: 1; }
}

@keyframes zoom {
	2.5%, 7.5%, 12.5%, 17.5%, 100% { transform: scale(1); }
	5%, 10%, 15% { transform: scale(0.9); }
}

@keyframes float {
	0% { transform: scale(1); }
	50% { transform: scale(0.92); }
	100% { transform: scale(1); }
}

/* ==================== 모바일 레이아웃 ==================== */

@media ( max-width: 1400px ) {
	/* Wrap */
	.wrap { padding-left: 1rem; padding-right: 1rem; }
}

@media ( max-width: 900px ) {
	/* PC, 모바일 표시 */
	.p_ver { display: none!important; }
	.m_ver { display: inline-block!important; }
	
	/* 버튼 스타일 01 */
	.btn_style_01 { height: 48px !important; color: #fff !important; gap: 5px; font-size: 0.9em; line-height: 1.2; padding: 0 2rem; }
	.btn_style_01:hover { color: #fff !important; }
	.btn_style_01 .btn_txt { transform: translateX(0); }
	.btn_style_01 .iconer { transform: translateY(0); font-size: 1.3em; margin-left: 0.2rem; }
	.btn_style_01 .iconer svg { width: 20px; height: 20px; }
	.btn_style_01:hover .iconer { transform: translateY(0); }
	
	/* 버튼 스타일 02 */
	.btn_style_02 { height: 44px; padding: 0 1.5rem; gap: 6px; }

	/* 섹션 타이틀 */
	.sec_tit { margin-bottom: 2.5rem; }
	.sec_tit .main_txt { font-size: 2rem; }
	.sec_tit .desc_txt { font-size: 1.15em; padding: 0 2rem; }
	
	/* 체크박스 */
	.checkbox_ctr { height: 22px; padding-left: 25px; transform: scale(0.9); transform-origin: left; }
	.checkbox_ctr .checkmark { height: 22px; width: 22px; }
	.checkbox_ctr .checkmark::after { top: 3px; left: 7px; }
	
	/* 폼 스타일 01 */
	.form_style_01 input[type="text"], .form_style_01 input[type="number"], .form_style_01 input[type="password"], .form_style_01 input[type="tel"], .form_style_01 select { height: 48px; padding: 0 0.8rem; }
	
	/* 라디오 셀렉트 */
	.radio_button_group label { height: 48px; }
	.btn_down{ margin: auto;}
	/* 변수 */
	:root {
		/* 패딩,마진 */
		--sec_pd: 4rem;
	}
}
