@import url('//fonts.googleapis.com/earlyaccess/notosanskr.css');
/* @import url('motion.css'); */
.notosanskr * { 
    font-family: 'Noto Sans KR', sans-serif;
}

@font-face {
	font-family: 'GmarketSansBold';
	src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansBold.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
    font-family: 'GmarketSansMedium';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansMedium.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'GmarketSansLight';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_2001@1.1/GmarketSansLight.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Pretendard-Regular';
    src: url('https://fastly.jsdelivr.net/gh/Project-Noonnu/noonfonts_2107@1.1/Pretendard-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
}

/*======================

1.BASIC

========================*/

body { font-family: 'Pretendard', sans-serif !important; letter-spacing: -.5px; overflow-x:hidden; height:100%; word-break: keep-all; }
/* .bg_dark { background-color: #111; color: #fff; }
.bg_dark_out { background-color: #fff; } */

/* html { overflow:hidden; height:100%;  } */

h1, h2, h3, h4, h5, h6 { font-family:'Pretendard', sans-serif; margin: 0; }
p { font-size:15px; line-height:1.6; }
p, ul {  margin: 0; padding: 0; list-style: none; }

a, a:hover, a:focus, button, button:focus { text-decoration:none !important; outline:none !important; box-shadow:none !important; transition:all 0.3s;}

*:hover { transition:all 0.3s; }

::selection { background:rgba(166, 175, 189, 0.3); }
::-moz-selection { background:rgba(166, 175, 189, 0.3); }

.back_top { display:none; text-align:center; position:fixed; bottom:10px; height:35px; width:35px; background-color:#111; z-index:10000; border-radius:3px; right:20px; transition:all 0.5s; }
.back_top:hover { background-color:#2186de;}
.back_top i { color:#fff; line-height:35px; font-size:32px; display:block; }

.clear:after { content:""; display:block; clear:both; }

/* cursor */
.cursor { position: fixed; top: 35px; left: 35px; width: 30px; height: 30px; border-radius: 50%;background-color: transparent; user-select: none; pointer-events: none; border:2px solid #fff; box-sizing:border-box; z-index: 1000; overflow: hidden; transition: all 0.2s ease-out;}
.cursor p { position:absolute; top: 50%; left: 50%; transform:translate(-50%,-50%); opacity: 0; text-align: center; font-family: 'Red Hat Display', 'Noto Sans KR', sans-serif; font-weight:500; font-size:16px; color: #fff;}
.cursor::after { content:""; z-index: -1;  border-radius: 50%; top: -3px; left: -3px; width: 30px; height: 30px; position: absolute; display:inline-block; vertical-align: top; opacity: 1; border:1px solid transparent; transition: all 0.2s ease-out;}
.cursor.on { top: 0; left: 0; width: 100px; height: 100px; border-color:transparent;}
.cursor.on::after { top: 0; left: 0; width: 100px; height: 100px; background-color:#090909; opacity: 0.7;}
.cursor.on p { opacity: 1;}
.cursor.none { top: 50px !important; left: 50px !important; width: 0 !important; height: 0 !important; border-color:transparent !important;}
.cursor.blue { width: 30px; height: 30px; border-color:#2186de; opacity: 0.6; background-color:#2186de;}
.cursor.n_cursor::after{display:none; }
.cursor.s_cursor { position:absolute; border:none;}
.cursor.s_cursor.not{opacity: 0;}

@media (max-width: 1024px) {
	.cursor { display: none;}
}

/*==========================

2.custom

============================*/

.container { max-width: 1280px;}
.section { padding: 150px 0; position:relative; background-color:#fff; }
.section_title { text-align: center; position: relative; margin-bottom: 100px; line-height: 1; }
.section_title h2 { font-size: 80px; font-weight: 900; margin-bottom: 30px; line-height: 1; text-transform: uppercase; display: inline-block; position: relative; z-index: 1; } 
.section_title h2 span { display: block; width: 30px; height: 30px; background-color: #2186de; border-radius: 50%; position: absolute; z-index: -1; top: 0; right: -10px; }
.section_title h3 {	font-size: 44px; font-weight:600; line-height: 1; letter-spacing: -.5px; padding: 24px 0 30px; }
.section_title h5 { font-size: 18px; color: #2186de;}
.section_title p { font-size: 22px; color: #606d85; font-weight: 500; }
.section_title p a { color: #2186de; border-bottom: 1px #2186de solid; display: inline-flex; align-items: center; gap: 5px;} 
.section_title p a:hover { color: #086fc9; border-color: #086fc9;} 

@media (max-width: 1024px) {
	.section { padding: 100px 0; }
	.section_title { margin-bottom: 60px;}
	.section_title h2 { font-size: 60px; }
	.section_title h3 { font-size: 36px; padding: 14px 0 20px; }
	.section_title p { font-size: 16px; line-height: 1.4; }
}
@media (max-width: 768px) {
	.section { padding: 80px 0; }
	.section_title { margin-bottom: 40px;}
	.section_title h2 { font-size: 50px; }
	.section_title h3 { font-size: 30px; padding: 10px 0 15px; }
	.section_title p { font-size: 14px; line-height: 1.4; }
}
@media (max-width: 480px) {
	.section { padding: 60px 0; }
	.section_title { margin-bottom: 30px;}
	.section_title h2 { font-size: 26px; font-weight: 700; margin-bottom: 15px;}
	.section_title h2 span { width: 15px; height: 15px; right: -10px; top: -5px;}
	.section_title h3 { font-size: 26px; padding: 8px 0 10px; }
	.section_title p { width: 80%; margin: 0 auto;}
	.section_title p br { display: none;}
	.section_title p a img { width: 6%;}
}

.bg-dark { background-color:#222 !important; color: #fff; }
.bg-dark .section_title h2 { color: #fff;}
.bg-dark .section_title p { color: rgba(255,255,255,.6);}
.bg-custom { background-color:#2186de; }
.bg-light { background-color: #f0f4ff !important;}

.text-dark { color:#000 !important; }
.text-muted { color:#666 !important; }
.text-custom { color:#2186de !important; font-weight: 500; }

svg.chk path { stroke: #2186de; }

.h-100vh { height:100vh; }
.z-index { z-index:2; }

.bg-overlay-gradient { background:#606a98; background:-webkit-linear-gradient(to right, #606a98, #041529); background:linear-gradient(to right, #606a98, #041529); opacity:0.9; position:absolute; top:0; right:0; left:0; bottom:0; width:100%; height:100%; }
.bg-overlay { background:rgba(31, 33, 37 ,0.2); position:absolute; top:0; right:0; left:0; bottom:0; width:100%; height:100%; }

.btn_more { text-align: center; padding: 20px 0 80px; }
.btn_more div { display: inline-block; font-size:16px; color: #222; font-weight: 500; line-height:30px; border-bottom: 2px #222 solid; cursor:pointer;  transition: all 0.3s ease-in-out; }
.btn_more div:hover { color:#0b5af1; border-color: #0b5af1; }

.btn { line-height: 48px; font-size: 16px; padding: 0 30px; border: 1px transparent solid; transition:all 0.3s; border-radius: 50px; }
.btn-sm { line-height: 46px; font-size: 14px; }
.btn-rounded { border-radius: 50px !important; }
.btn:hover { box-shadow: 0px 8px 24px rgba(20, 98, 206, .4) !important; }
.btn-arrow { padding: 0 26px 0 30px;}

@media (max-width: 1024px) {
	.btn { line-height: 40px; font-size: 14px; padding: 0 20px; }
	.btn-sm { line-height: 38px; font-size: 12px; }
	.btn-arrow { padding: 0 20px 0 20px;}
}
@media (max-width: 480px) {
	.btn_more div { font-size: 14px;}
}

.btn-outline-custom { border-color:#222; color:#222; font-weight: 500; background-color: #fff; }
.btn-outline-custom:hover,
.btn-outline-custom:focus,
.btn-outline-custom:active,
.btn-outline-custom.active,
.btn-outline-custom.focus,
.btn-outline-custom:active,
.btn-outline-custom:focus,
.btn-outline-custom:hover,
.open>.dropdown-toggle.btn-outline-custom { background: #fff; border-color:#2186de !important; color:#2186de !important; }

.btn-custom { background-color:#222; border-color: #222; color:#fff; }
.btn-custom:hover,
.btn-custom:focus,
.btn-custom:active,
.btn-custom.active,
.btn-custom.focus,
.btn-custom:active,
.btn-custom:focus,
.btn-custom:hover,
.open>.dropdown-toggle.btn-custom { background-color:#2186de; border-color: #2186de; color:#fff; }


.move_box { transition: all 0.5s; }
.move_box:hover { transition: all 0.5s; transform: translateY(-10px); }
.move_box:hover .btn-outline-custom { color: #2186de; border-color: #2186de;  }
.move_box:hover .btn-custom { border-color: #2186de; background-color: #2186de;}


/* custom */
.form-control::-webkit-input-placeholder { color:#ccc !important; }
.form-control::-moz-placeholder { color:#ccc !important; }
.form-control::-ms-input-placeholder { color:#ccc !important; }
.form-control::placeholder { color:#ccc !important; }


/*==========================

3.NAVBAR

============================*/

.custom-nav { height: 80px; width:100%; padding: 0 3%; z-index:999; transition:all 0.5s ease-in-out; background-color: rgba(0,0,0,0.1); }
.custom-nav.stickyadd { background-color:#fff; box-shadow:0px 0px 18px 1px rgba(0, 0, 0, 0.1); }
.custom-nav.stickyadd .navbar-nav li a { color:#000; }

.custom-nav .navbar-nav li a { color:rgba(255,255,255,.8); font-size:16px; font-weight: 500; background-color:transparent !important; position:relative; margin-left:50px; transition:all 0.4s; }
.custom-nav .navbar-nav li a:hover { color:#fff; }
.navbar-toggler { font-size:28px; margin-bottom:0px; color:#000; padding: 15px 20px;}
.navbar-toggler .icon-bar { width:20px; height:2px; display:block; background:#fff; margin:5px 0; }
.navbar-toggle { font-size:24px; margin-top:5px; margin-bottom:0px; color:#fff; }

.custom-nav.stickyadd .navbar-nav li.active a,
.custom-nav.stickyadd .navbar-nav li:hover a,
.custom-nav.stickyadd .navbar-nav li:active a { color: #0b5af1 !important;} 
.custom-nav .navbar-nav li.active a,
.custom-nav .navbar-nav li:hover a,
.custom-nav .navbar-nav li:active a { color:#fff; }
.custom-nav.stickyadd .navbar-toggler .icon-bar { background:#000;}

.nav .open>a,
.nav .open>a:focus,
.nav .open>a:hover { background-color:transparent; border-color:#2186de; }

.logo .logo-light { display:inline-block; }
.stickyadd .logo .logo-dark { display:inline-block; }
.stickyadd .logo .logo-light { display:none; }
.logo .logo-dark { display:none; }
.custom-nav .navbar-brand.logo img { height:18px; }
.custom-nav .sign_btn { background-color:rgba(19, 206, 103, 0.19); color:#2186de; }
.navbar-brand { font-size:0; }

.custom-nav-link { background-color: rgba(0,0,0,0.7);}

@media (max-width: 1024px) {
	.custom-nav { height: 60px; }
	.custom-nav .navbar-brand.logo img { height: 15px;}
}
@media (max-width:768px) {	
	.custom-nav { margin-top:0px; padding: 0;}
	.custom-nav .navbar-nav { margin-top:0px; background-color:#fff; text-align:center; border-top: 1px rgba(0,0,0,.08) solid; box-shadow: 0 15px 10px rgba(0,0,0,.05);}
	.custom-nav .navbar-nav li a { margin:0 0px; padding: 15px 0 !important; border-bottom: 1px rgba(0,0,0,.08) solid; color:#333 !important; font-size: 14px;}
	.custom-nav .navbar-nav li.active a { color:#2186de;}
	.custom-nav>.container { width:100%; max-width:inherit;}
	.custom-nav .logo { padding:0 0 0 20px;}
}


/*==========================

HOME

============================*/
.text-black { color: #000 !important;}

.home-bg { background-image:url('../images/home-bg3.jpg'); background-size:cover; background-position:center center; position:relative; }
.home-table-center { display:table-cell; vertical-align:middle; }
.home-table { display:table; width:100%; height:100%; }
.header_title { font-size: 80px; font-family: 'GmarketSansBold'; font-weight: 800; text-transform: uppercase; line-height: 1.2; mix-blend-mode: soft-light;}
.header_subtitle { font-size: 30px; margin-top: 20px; mix-blend-mode: soft-light; }


/* 슬라이드 텍스트 애니메이션 : 첫번째 슬라이드 제외 */
.StartMotion .header_title_box { display: flex; align-items: center; gap: 30px; }

/* 첫번째 슬라이드 애니메이션 : Bluesoft Xperience*/
.StartMotion .header_title1 { 
	animation: slideInLefts 1.5s ease-out 0.1s forwards;opacity: 0;
}
.StartMotion .header_title2 { 
	animation: slideInRights 1s ease-out 0.8s forwards;opacity: 0;
}
.StartMotion .header_subtitle2_1 { 
	animation: fadeInUp 1.2s ease-out 1.5s forwards;opacity: 0;
}

@keyframes slideInLefts {
	from {
		opacity: 0;
		transform: translateX(-120%) scale(0.5);
	}
	to {
		opacity: 1;
		transform: translateX(0) scale(1);
	}
}

@keyframes slideInRights {
	from {
		opacity: 0;
		transform: translateX(70%) scale(0.5);
	}
	to {
		opacity: 1;
		transform: translateX(0) scale(1);
	}
}
@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(10px) scale(1.3);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}

@keyframes fadeInDown {
	from {
		opacity: 0;
		transform: translateY(10px) scale(1.3);
	}
	to {
		opacity: 1;
		transform: translateY(0) scale(1);
	}
}
@keyframes zoomInScale {
	from {
		opacity: 0;
		transform: scale(0.5);
	}
	to {
		opacity: 1;
		transform: scale(1);
	}
}


.StartMotion .header_title2_1 { top: 30%;}
.StartMotion .header_title2_2 { top: 42%;}


/* 2025-10-20 추가 */
.home-bg3 .header_title,
.home-bg3 .header_subtitle { mix-blend-mode: normal; }
.home-bg3 .header_title { color: rgba(0,0,0,.8);}
/* .home-bg3 .header_title1 { color: #f5bf13 !important;}
.home-bg3 .header_title2 { color: #ea8018;} */
.home-bg3 .header_subtitle { color: #555 !important; font-weight: 500; }

.home-bg6 { background: linear-gradient(to bottom,  #0153bd 0%,#03a7f6 100%); }
.home-bg6 .header_title { font-family: 'GmarketSansLight'; text-transform: none; color: rgba(255, 255, 255, 0.8);}
.home-bg6 .header_title span { font-family: 'GmarketSansMedium'; color: #fff;}

.home-bg6 .header_title,
.home-bg6 .header_subtitle { mix-blend-mode: normal; }

@media (max-width: 1600px) {
	.header_title { font-size: 70px; }
}
@media (max-width: 1400px) {
	.header_title { font-size: 5vw; }
}
@media (max-width: 1024px) {
	.header_title { text-align: center;}

	
	.StartMotion .header_title_box{
		gap: 15px;
	}
	
	.StartMotion .header_subtitle2_1,
	.header_subtitle { font-size: 4vw;}
}
@media (max-width: 768px) {
	.header_subtitle { font-size: 3vw;}
	.StartMotion .header_title1 { top: 32%;}
	.StartMotion .header_title2 { top: 40%;}
	
	.StartMotion .header_title1,
	.StartMotion .header_title2 { font-size: 5vw; }
	.StartMotion .header_subtitle2_1 {font-size: 3vw; }
}

@media (max-width: 480px) {
	.StartMotion .header_title_box{
		flex-direction: column;
		gap: 10px;
	}
	.StartMotion .header_title1,
	.StartMotion .header_title2 { font-size: 7vw;  }

	.StartMotion .header_title1 { 
		animation: fadeInDown 1s ease-out 0.1s forwards; opacity: 0;
	}
	.StartMotion .header_title2 { 
		animation: fadeInUp 1s ease-out 0.8s forwards; opacity: 0;
	}
	.StartMotion .header_subtitle2_1 { 
		font-size: 3vw;
		animation: zoomInScale 1s ease-out 1.3s forwards !important; opacity: 0;
	}

}

.home-down { width:39px; height:49px; display:inline-block; background-image:url(../images/home-down.png); position:absolute; top:85%; left:50%; margin-left:-20px; z-index:1;
             opacity:0.6; filter:alpha(opacity=60);  }
.home-down:hover { opacity:1; filter:alpha(opacity=100);  }

.header_btn .btn { color:rgba(255,255,255,0.8); font-size:17px; line-height:30px; letter-spacing:-0.5px; height:60px; width:190px; background-position:center; margin:0 5px;
                   transition:all 0.5s; text-align:left; border-radius:0; position:relative; }
.header_btn .btn:after { content:""; display: block; width:10%; height:1px; background-color:rgba(255,255,255,0.5); position:absolute; right:-1px; top:29px; }
.header_btn .btn:hover { color:rgba(255,255,255,1); background-color:#2186de; background-position:center; background-repeat:no-repeat; transition:all 0.5s; background-size:60%; }
.header_btn_m { display:none; }
.header_btn_m a { display:block; border-radius:0; text-align:left; background-color:#1968b3; padding:15px 20px; border-top:1px rgba(255,255,255,.2) solid; font-size:14px; letter-spacing:0; }
.header_btn_m a:first-child { border-top:0; }
.header_btn_m a i { float:right; }

.bg-home-slider .carousel-control-next, .carousel-control-prev { 
	width:6%; opacity:.1; filter:alpha(opacity=10);
		-webkit-transition: all 0.3s ease-in-out-out; 
		-moz-transition: all 0.3s ease-in-out; 
		-o-transition: all 0.3s ease-in-out; 
		transition: all 0.3s ease-in-out; }
.bg-home-slider .carousel-item,
.bg-home-slider .carousel { width:100%; height: 100vh; }
.bg-home-slider .carousel-item { background-position:center !important; background-size: cover !important; }

.carousel-control-prev>span, .carousel-control-next>span { font-size:70px; background:rgba(0,0,0,0.3); border-radius:50%; }
.carousel-control-next:focus, .carousel-control-next:hover, .carousel-control-prev:focus, .carousel-control-prev:hover {
		opacity:.6; filter:alpha(opacity=60);
		-webkit-transition: all 0.3s ease-in-out-out; 
		-moz-transition: all 0.3s ease-in-out; 
		-o-transition: all 0.3s ease-in-out; 
		transition: all 0.3s ease-in-out; }

@media all and (min-width:768px) {
	.bg-home-slider .carousel-item:nth-of-type(1) .container { position:relative; }
	.bg-home-slider .carousel-item:nth-of-type(1) .container div.text-white { position:absolute; right:0; top:-60px; text-align:right !important; }	
}
@media (max-width: 1024px) {
	.bg-home-slider .carousel-item, .bg-home-slider .carousel { height: 80vh; }
	.carousel-control-prev>span, .carousel-control-next>span { font-size:50px; background: none;}
}


/*==========================

service

============================*/
.service { position: relative;}
.service_bg { position: absolute; display: none;}
.service_bg_1 { top: 0; left: 100px;}
.service_bg_2 { top: 0; right: 0;}
.service_wrap { margin-top: 100px;}
.service_rolling { margin-bottom: 40px;}
.service_rolling .slick-list { overflow: visible;}
.service_rolling .slick-slide { margin: 0 20px; }
.service_rolling .slick-slide img { border: 1px #eee solid; box-shadow: 0 10px 20px rgba(0,0,0,.1); width: 240px;}
.service_rolling .slick-slide img:hover { box-shadow: 5px 15px 50px rgb(80 136 207 / 59%); }

@media (max-width: 1024px) {
	.service_wrap { margin-top: 80px;}
	.service_rolling .slick-slide { margin: 0 10px; }
	.service_rolling .slick-slide img { width: 220px; }
}
@media (max-width: 768px) {
	.service_wrap { margin-top: 60px;}
	.service_rolling .slick-slide { margin: 0 10px; }
	.service_rolling .slick-slide img { width: 180px; }
}
@media (max-width: 480px) {
	.service_wrap { margin-top: 40px;}
	.service_rolling { margin-bottom: 10px;}
	.service_rolling .slick-slide { margin: 0 5px; }
	.service_rolling .slick-slide img { width: 120px; }
}


.service_box { height: 700px; border-radius: 25px; background-color: #fff; padding: 50px 40px; box-shadow: 2px 12px 42px rgb(198, 214, 234, .4); gap: 34px; border: 1px transparent solid; transition:all 0.5s; cursor: pointer; }
.service_box .title { font-size: 16px; color: #222; font-weight: 700; line-height: 1.2; display: flex; align-items: center; gap: 6px; }
.service_box .txt { font-size: 15px; color: #666; font-weight: 400; word-break: keep-all; }
.service_box ul.txt { line-height: 24px; }
.service_box ul.txt li:before { content: "-"; margin-right: 5px;}
.service_box .title_box .title { font-size: 28px; margin-bottom: 20px; }
.service_box .title_box .txt { font-size: 16px; line-height: 20px; letter-spacing: -.8px; }
.service_box .contents_box { gap: 24px; padding: 24px 0; border-top: 1px #ddd solid; border-bottom: 1px #ddd solid; height: 320px; }
.service_box .contents_box .txt_box { gap: 6px; }
.service_box .contents_box .txt_box .txt { padding-left: 22px;}
.service_box .price_custom { text-align: center; color: #2186de; font-size: 22px; font-weight: 600; line-height: 1.8; width: 80%; margin: 30px auto 0; position: relative; z-index: 2;}
.service_box .price_custom:after { content: ""; display: block; width: 100%; height: 40%; position: absolute; bottom: 0; z-index: -1; background-color: #eff5fa;}
.service_box .price { font-size: 36px; color: #222; text-align: right; line-height: 1; font-family: 'GmarketSansBold'; }
.service_box .price span { font-size: 24px; }
.service_tip { font-size: 14px; color: #999; text-align: right; margin-top: 20px;}

.service_box .btn_box { gap: 6px; margin-top: auto; }
.service_box .btn { width: 100%; }

.service_box:hover { box-shadow: 5px 15px 50px rgb(80 136 207 / 59%); }
.service_box:hover .title_box .title,
.service_box:hover .price { color: #2186de; transition:all 0.5s; }

@media (max-width: 1024px) {
	.service_box { height: 600px; padding: 40px 30px; gap: 20px; }
	.service_box .title { font-size: 14px; }
	.service_box .txt { font-size: 14px; }
	.service_box .title_box .title { font-size: 24px; margin-bottom: 10px; }
	.service_box .title_box .txt { font-size: 14px; }
	.service_box .contents_box { height: auto; padding: 20px 0; }
	.service_box .contents_box .txt_box .txt { padding-left: 16px;}
	.service_box .price_custom { font-size: 18px; margin: 20px auto 0;}
	.service_box .price { font-size: 28px; }
	.service_box .price span { font-size: 18px; }
	.service_box .btn { padding: inherit;}
	.service_tip { font-size: 12px; margin-top: 10px;}
}
@media (max-width: 768px) {
	.service_box { height: auto; padding: 40px 30px; gap: 20px; margin-bottom: 20px; }
	.service_box .title { font-size: 14px; }
	.service_box .txt { font-size: 14px; }
	.service_box .title_box .title { font-size: 24px; margin-bottom: 10px; }
	.service_box .title_box .txt { font-size: 14px; }
	.service_box .contents_box { height: auto; padding: 20px 0; }
	.service_box .contents_box .txt_box .txt { padding-left: 16px;}
	.service_box .price_custom { font-size: 18px; margin: 20px auto 0;}
	.service_box .price { font-size: 28px; }
	.service_box .price span { font-size: 18px; }
	.service_box .btn { padding: inherit;}
	.service_tip { font-size: 12px; margin-top: 10px;}
}
@media (max-width: 480px) {
	.service_wrap .row { gap: 20px;}
	.service_box { height: auto; padding: 30px; gap: 16px; }
	.service_box .contents_box { gap: 16px;}
	.service_box .price_custom { font-size: 20px; margin: 0 auto;}
}

/* service_banner */
.service_banner { height: 560px; padding: 0; background-size: cover; }
.service_banner .container { display: flex; height: 100%; position: relative; justify-content: space-between; }
.service_banner .txt_box { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; height: 100%; gap: 50px; }
.service_banner .section_title { text-align: left; margin: 0;}
.service_banner .btn { line-height: 58px; padding: 0 40px 0 50px; font-size: 18px;}
.service_banner .btn:hover { background-color: #000; border-color: #000; box-shadow: 0px 8px 24px rgba(0, 0, 0, .4) !important; }
.service_banner .btn:focus { background-color: #000; border-color: #000; }

.service_banner .img_box img { position: absolute; box-shadow: 0 30px 30px rgba(0,0,0,.1); }

.service_banner_1 { background: url('../images/service_banner.png') no-repeat center #2186de; }
.service_banner_1 .twinkle { position: absolute; }
.service_banner_1 .twinkle img { width: 100%;}
.service_banner_1 .twinkle_1 { top: 130px; left: 460px;}
.service_banner_1 .twinkle_2 { top: 200px; right: 0;}
.service_banner_1 .twinkle_3 { top: 60%; right: 37%; width: 40px; height: 40px;}
.service_banner_1 .section_title h3 {	color: #fff; }
.service_banner_1 .section_title h5 { color: #bdf3f6; font-weight: 400;}
.service_banner_1 .section_title p { color: rgba(255,255,255,0.8); }
.service_banner_1 .img_box img { bottom: 0;right: 70px; box-shadow: 0 70px 60px rgba(0,0,0,.5);}

.service_banner_2 { background: url('../images/service_banner2.png') no-repeat center #f1f4f9; }
.service_banner_2 .txt_box,
.service_banner_2 .img_box { width: 100%;}
.service_banner_2 .img_box img:nth-of-type(1) { bottom: -185px; right: 430px;}
.service_banner_2 .img_box img:nth-of-type(2) { bottom: -150px; right: 200px;} 
.service_banner_2 .img_box img:nth-of-type(3) { bottom: 60px; right: -30px;} 

@media (max-width: 1024px) {
	.service_banner { height: 400px; }
	.service_banner .txt_box { gap: 36px; }
	.service_banner .section_title h2 { font-size: 40px; }
	.service_banner .btn { line-height: 48px; padding: 0 30px 0 40px; font-size: 16px;}
	.service_banner_1 .twinkle_1 { top: 70px; left: 52%; }
	.service_banner_1 .img_box img { right: 110px; width: 22%;}

	.service_banner_2 .img_box img { width: 150px;}
	.service_banner_2 .img_box img:nth-of-type(1) {	right: 350px;}
	.service_banner_2 .img_box img:nth-of-type(2) { right: 170px;}
	.service_banner_2 .img_box img:nth-of-type(3) { bottom: 30px; right: 0;}
}
@media (max-width: 768px) {
	.service_banner { height: 300px; }
	.service_banner .txt_box { gap: 20px; }
	.service_banner .section_title h2 { font-size: 30px; }
	.service_banner .btn { line-height: 40px; padding: 0 20px 0 30px; font-size: 14px;}
	.service_banner_1 .twinkle_1 { top: 50px; left: 52%; }
	.service_banner_1 .img_box img { right: 90px; width: 22%;}

	.service_banner_2 .img_box img { width: 110px;}
	.service_banner_2 .img_box img:nth-of-type(1) {	right: 250px;}
	.service_banner_2 .img_box img:nth-of-type(2) { right: 120px;}
	.service_banner_2 .img_box img:nth-of-type(3) { bottom: -10px; right: -10px;}
}
@media (max-width: 480px) {
	.service_banner { height: 260px; }
	.service_banner .txt_box { gap: 10px; width: 100%;}
	.service_banner .section_title h2 { font-size: 24px;}
	.service_banner .section_title p { width: 65%; margin: 0; font-size: 12px;}
	.service_banner .section_title p br { display: none;}
	.service_banner .btn { line-height: 36px; padding: 0 15px 0 20px; font-size: 12px;}
	.service_banner_1 .twinkle img { width: 40%;}
	.service_banner_1 .twinkle_1 { top: 50px; left: 85%;}
	.service_banner_1 .img_box img { right: 30px; width: 30%;}

	.service_banner_2 .img_box { position: absolute; bottom: 0;}
	.service_banner_2 .img_box img { width: 50px;}
	.service_banner_2 .img_box img:nth-of-type(1) { left: auto; bottom: -40px; right: 0;}
	.service_banner_2 .img_box img:nth-of-type(2) { left: auto; bottom: -40px; right: 70px;}
	.service_banner_2 .img_box img:nth-of-type(3) { bottom: -10px; right: 140px;}
}

/* modal_custom */
.modal-content { border-radius: 25px; border: 0;}
.modal-header { display: initial; border: 0; padding: 50px 0 0; text-align: center; position: relative;}
.modal-header .modal-title { font-size: 28px; font-weight: 700; color: #222; line-height: 1.2; }
.modal-header .close { font-family: initial; margin: 0 !important; background-color: #333; border-radius: 50%; padding: 10px; color: #fff; font-size: 1.2rem; font-weight: 400; position: absolute; top: -1rem; right: -1rem; opacity: 1; text-shadow: none; }
.modal-header .close:hover,
.modal-header .close:focus { opacity: 1 !important; color: #fff !important; background-color: #000 m !important;}
.modal-body { padding: 30px 30px 40px; }

/* modal_service */
.service_detail .modal-dialog { max-width: 1160px; }
.service_detail table { width: 100%; color: #666; font-weight: 400; }
.service_detail table th,
.service_detail table td {  padding: 20px; border: 1px #e6e6e6 solid; }
.service_detail table th { width: 50%; background-color: #f9faff; border-top: 1px #111 solid; font-size: 24px; color: #111; line-height: 1.2;}
.service_detail table th span { color: #2186de; padding-right: 10px;}

.service_detail table th:first-of-type, .service_detail table td:first-of-type { border-left: 0;}
.service_detail table th:last-of-type, .service_detail table td:last-of-type { border-right: 0;}

.service_detail_list { display: inline-block; }
.service_detail_list > li { padding: 3px 0; display: flex; gap: 20px;}
.service_detail_list li { text-align: left; }
.service_detail_list li p:first-of-type { font-weight: 500; color: #111;}

@media (max-width: 1024px) {
	.service_detail .modal-dialog { max-width: 90%; margin: 20px auto;}

	.service_detail table th { font-size: 18px; }
	.service_detail table td { font-size: 14px; }
	.service_detail table td br { display: none;}
	.service_detail_list > li { gap: 10px;}
}
@media (max-width: 480px) {
	.modal-header { padding-top: 30px;}
	.modal-header .modal-title { font-size: 20px; }
	.modal-body { padding: 20px 10px 30px;}

	.service_detail table th,
	.service_detail table td { padding: 10px; vertical-align: top;}
	.service_detail table th,
	.service_detail table td,
	.service_detail table p { font-size: 12px;}
	.service_detail table td br { display: none;}
	.service_detail_list > li { gap: 5px;}
	.service_detail_list > li:last-of-type { flex-direction: column;}

	.service_detail table .btn { font-size: 12px; padding: 0 15px; margin: 2px 0; line-height: 28px;}	
}


/*==========================

overview

============================*/
.overview .row {display: grid; grid-template-columns: repeat(auto-fit, minmax(16%, 1fr)); gap: 40px; width: 100%; margin: 0 auto; }

.overview_top { margin: 0 2vw 200px;}
.overview_top div { font-size: 5.5vw; font-weight: 900; color: #fff; text-transform: uppercase; line-height: 1.4;  }
.overview_top .txt_2 { color: #222; text-shadow: -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff,1px 1px 0 #fff; text-align: right; }

.overview_icon { height: 60px; display: flex; align-items: center;}
.overview_box h3 { font-size: 26px; text-transform: uppercase; font-weight: 600; }
.overview_box p { font-size: 18px; color: #999; word-break: keep-all; line-height: 1.4; }

@media (min-width: 1920px) {
	.overview_top div { font-size: 120px;}
	.overview_top .txt_3 {font-size: 100px;}
}
@media (max-width: 1440px) {	
	.overview .row {gap: 34px;}
}
@media (max-width: 1024px) {
	.overview_top div { font-weight: 700;}
	.overview_box h3 {font-size: 24px;}
	.overview_box p {font-size: 16px;}
	.overview_box br {display: none;}
}
@media (max-width: 768px) {
	.overview_top { margin-bottom: 80px;}
	
	.overview .row {grid-template-columns: repeat(3, 1fr);; }
	.overview .row > div { width: 100%;}
	.overview_box h3 { font-size: 20px; }
	.overview_box p { font-size: 16px; }
	.overview_icon { height: 50px;}
	
}
@media (max-width: 480px) {
	.overview .row {grid-template-columns: repeat(2, 1fr);  gap: 0 34px  }
	.overview .row { flex-direction: column; margin: 0;}
	.overview .row > div { width: 100%;}
	.overview_top .txt_2 { font-size: 30px; }
	.overview_box h3 { font-size: 18px; }
	.overview_box p { font-size: 14px; }
	.overview_icon { height: 40px;}
	.overview_icon img { height: 100%;}
}

/*==========================

PORTFOLIO

============================*/
.work_menu li { margin-right:0px !important; }
.work_menu li a { padding: 0 15px; font-weight:600; display:inline-block; cursor:pointer; transition:all 0.5s; font-size:18px; line-height: 2.6; color:#9a9a9a; position: relative; z-index: 1; }
.work_menu li a:hover,
.work_menu li a.active { color:#2186de !important; }
.work_menu li a.active:after { content: ""; display: block; background-color: #2186de; width: 7px; height: 7px; border-radius: 50%; position: absolute; left: 50%; top: 0; transform: translateX(-50%); }

.work_img_box { border:none; margin:15px 0px; overflow:hidden; border-radius:8px; position:relative; box-shadow:0px 0px 10px 1px rgba(0, 0, 0, 0.1); }
.work_img_box a.img-zoom { position:absolute; width:100%; height:100%; z-index:1; }

.work_img_box .work_images { position:relative; }
.work_img_box .work_images img { transition:all .3s; }
.work_img_box .work_images .work_overlay { position:absolute; overflow:hidden; width:100%; height:100%; top:0; text-align:center; padding:0 50px; }
.work_img_box .work_images .work_overlay:after { content:''; position:absolute; background:rgba(0, 0, 0, 0); top:0; left:0; height:100%; width:100%; }
.work_img_box .work_images .work_overlay a { width:100%; height:100%; }
.work_img_box .work_images .work_overlay h4,
.work_img_box .work_images .work_overlay h6 { position:relative; z-index:2; overflow:hidden; color:transparent; transition:color 150ms ease-in-out 200ms; }
.work_img_box .work_images .work_overlay h4 { font-size:14px; line-height:18px; font-weight:normal; word-break:keep-all; }
.work_img_box .work_images .work_overlay h6 { font-size:18px; padding:40% 0 2%; }

.work_img_box:hover img { transform:scale(1.06); }
.work_img_box:hover .work_overlay:after { transition:all .8s; background:rgba(0, 0, 0, 0.8); }
.work_img_box:hover .work_overlay h4 { color:rgba(255, 255, 255, 0.6); }
.work_img_box:hover .work_overlay h6 { color:#fff; }

.work_tip { font-size:.8rem; color:#999; text-align:right; margin:2rem 0 -3rem; }


/*js/jquery.magnific-popup.min.js*/
.example-popup { position: relative; padding: 20px; width: auto; margin: 20px auto;	text-align:center; }
.example-popup img { height:auto; }
.example-popup-not-found { position: relative; background: #FFF; padding: 20px; width: auto; max-width: 500px; margin: 20px auto; }

/* portfolio */
.mfp-arrow { position:fixed; }


/*==========================

Business

============================*/
.business .row {display: grid; grid-template-columns: repeat(3, 1fr); gap: 40px; width: 100%; margin: 0 auto;}
.business_box { background-color:#fff; border-radius: 20px; position:relative; padding: 3rem; }
.business_box p { font-size:16px; line-height: 30px; color:#666; }

.business_box .business_name h5 { font-size:26px; font-weight: 600; color: #222; padding: 2rem 0; letter-spacing: -1px; background-position: left top; background-size: 40%; background-repeat:no-repeat; border-bottom:1px #ddd solid; }

.business_name_01 h5 { background-image:url(../images/business1.png); }
.business_name_02 h5 { background-image:url(../images/business2.png); }
.business_name_03 h5 { background-image:url(../images/business3.png); }

.business_features p { margin-bottom:0 !important; }

.business_box:hover .btn { box-shadow: 0px 8px 24px rgba(20, 98, 206, .4) !important; }
.business_box .btn-outline-custom:hover { background-color:#222; border-color: #222 !important; color:#fff !important; }

@media (max-width: 1024px) {
	.business_box { padding: 2rem;}
	.business_box .business_name h5 { font-size: 20px; padding: 2rem 0 1rem;}
	.business_box p { font-size: 14px; line-height: 24px;}
	.business_box .btn { padding: 0 20px; font-size: 14px;}
	.business_box .btn-outline-custom:hover { background-color:#222; border-color: #222 !important; color:#fff !important; }
}
@media (max-width: 480px) {
	.business .row {grid-template-columns: repeat(1, 1fr); }
	.business_box { width: 90%; margin: 0 auto;}
}


/* modal_business */
.business_detail .modal-dialog { max-width: 960px; }
.business_detail .modal-body { background: url(../images/business_detail.png) no-repeat 80% bottom;}
.business_detail_box { width: 80%; margin: 50px auto 80px;}
.business_detail_title { font-size: 54px; font-weight: 800; line-height: 1.2; position: relative; z-index: 1; }
.business_detail_title::after { content: ""; display: block; width: 26px; height: 26px; background-color: #2186de; border-radius: 50%; position: absolute; z-index: -1; top: 0; left: -10px;}
.business_detail_con { font-size: 16px; color: #666; line-height: 1.6; padding: 30px 0;}



/*==========================

history

============================*/
.lan_fun_icon i { font-size:50px; }
.lan_history { border:1px dashed rgba(255, 255, 255, 0.15); }
.lan_history .lan_fun_name { font-size:15px; color:rgba(255, 255, 255, 0.7); }

/* custom */
.history_con { margin:0 auto; height:400px; width: 80%;}	
.history_con ul { padding: 0; margin: 0;}
.history_con li:first-child { border-top: 1px rgba(255,255,255,0.2) solid; }
.history_con li { padding:35px 0 35px 10px; list-style:none; border-bottom: 1px rgba(255,255,255,0.2) solid; display: flex; gap: 10%; }

.history_con_year { font-size:40px; font-family: 'GmarketSansBold'; flex:2 }
.history_con_txt {font-size:16px; line-height:30px; font-weight: 400; color: rgba(255,255,255,.8);  flex:9}
.history_con a { color: rgba(255,255,255,.8); }
.history_con a:hover { color:#fff; }

@media (max-width: 1024px) {
	.history_con_year { font-size: 30px; }
	.history_con_txt { font-size: 14px; line-height: 24px;}
}
@media (max-width: 480px) {
	.history_con { height: 280px; width: 100%;}
	.history_con li { padding: 20px 0 20px 10px}
	.history_con_year { font-size: 20px; }
	.history_con_txt { font-size: 12px; line-height: 1.4;}
}


/*==========================

BLUE PARTY

============================*/
.blue_party_card { width: 80%; height: 340px; padding: 100px 34px 40px; margin: 75px auto 30px; letter-spacing: -.3px; background-color: #fff; border-radius: 25px; box-shadow: 2px 12px 42px rgb(198, 214, 234, .4); position: relative; }
.blue_party_img { width: 150px; height: 150px; border-radius: 50%; overflow: hidden; position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%); display: flex; align-items: center; justify-content: center; box-shadow: 0px 8px 24px rgba(20, 98, 206, .4) }
.blue_party_img img { width: 100%;}
.blue_party_inner { display: flex; flex-direction: column; justify-content: space-between; height: 100%; }
.blue_party_profile .name { font-size: 22px; font-weight: 500; color: #333;}
.blue_party_profile .name span { font-size: 16px; font-weight: 400; }
.blue_party_profile .role { font-size: 14px; color: #2186de; line-height: 2; font-weight: 500;}
.blue_party_profile .txt { font-size: 16px; line-height: 1.4; color: #666; font-weight: 400; border-top: 1px #e6e6e6 solid; padding-top: 14px; margin-top: 14px; letter-spacing: -1px;}
.blue_party_profile .txt span { color: #000; font-weight: 500;}
.blue_party_hashtag { display: flex; flex-wrap: wrap; gap: 5px; font-size: 13px; line-height: 1; color: #999; font-weight: 400;}

.blue_party .slick-prev:before, .blue_party .slick-next:before { display: block; width: 24px; height: 42px; font-size: 0; opacity: .2;}
.blue_party .slick-prev:before { background: url(/Web/images/blueparty_prev.png) no-repeat center; }
.blue_party .slick-next:before { background: url(/Web/images/blueparty_next.png) no-repeat center; }

@media (max-width: 1024px) {
	.blue_party_card { height: 300px; padding: 80px 20px 20px; }
	.blue_party_img { width: 120px; height: 120px; }
	.blue_party_profile .name { font-size: 18px;}
	.blue_party_profile .name span { font-size: 14px;}
	.blue_party_profile .role { font-size: 12px;}
	.blue_party_profile .txt { font-size: 14px;}
	.blue_party_hashtag { font-size: 12px;}
}
@media (max-width: 768px) {
	.blue_party_card { height: 250px; padding: 60px 20px 20px; margin: 55px auto 30px; border-radius: 15px;}
	.blue_party_img { width: 100px; height: 100px; }
	.blue_party_profile .name { font-size: 16px; line-height: 1;}
	.blue_party_profile .name span { font-size: 12px;}
	.blue_party_profile .role { font-size: 10px;}
	.blue_party_profile .txt { font-size: 12px; margin-top: 10px; padding-top: 10px;}
	.blue_party_hashtag { font-size: 10px;}
}
@media (max-width: 480px) {
	.blue_party_card { width: 90%;}
	.blue_party_img { width: 80px; height: 80px; }
}

/*==========================

BLOG

============================*/
.blog_box { border-radius: 20px; overflow: hidden; box-shadow: 0 10px 20px rgba(0,0,0,.1); margin: 15px 0; }
.blog_detail { position:relative; background-color: #fff; padding: 40px 30px 30px; gap: 15px; }
.blog_detail_title { display:block; font-size: 20px; color: #222; font-weight: 500; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.blog_detail_badge { position:absolute; font-size:15px; background:#222 center; color:#fff; border-radius: 50%; top:-30px; right: 30px; width: 60px; line-height: 60px; text-align: center; transition: all 0.3s ease-in-out; }
.blog_detail_badge:hover { background: url(/Web/images/blog_arrow.png) no-repeat center #2186de; color: transparent; }
.blog_detail_txt { font-size: 16px; color: #666; min-height:70px; line-height: 1.4; }

.blog_detail_devider { height:1px; width:100%; background-color:#eee; }
.blog_detail_bottom { font-size: 14px; }
.blog_detail_cate { font-weight: 500;}
.blog_detail_date { color: #999;}

/* custom */
#Blog { padding-bottom:9rem !important; }
#Blog .sec_subtitle span{ color:#333/*2186de*/; }
.blog_img { width:100%; }

.blog_list_top { background-color:#fff; padding:50px 0 40px; box-shadow:0px 0px 18px 1px rgba(0, 0, 0, 0.1); }
.blog_list_top h2 { text-transform:uppercase; color:#000; border-top:2px #2186de solid; font-weight:600; display:inline-block; }

@media (max-width: 480px) {
	.blog_box { border-radius: 10px;}
	.blog_detail { padding: 15px; gap: 5px;}
	.blog_detail_title { font-size: 14px;}
	.blog_detail_badge { font-size: 11px; width: 30px; height: 30px; line-height: 30px; top:-15px; right: 15px; background: #2186de;}
	.blog_detail_txt { font-size: 12px; line-height: 1.2; min-height: auto; max-height: 3.6em; overflow: hidden; text-overflow: ellipsis; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
	.blog_detail_bottom { font-size: 12px; }
}


/*==========================

FOOTER

============================*/
.footer_detail { background-color:#222527; position:relative; background-size:cover; }
.footer_detail .footer_title_border { background-color:rgba(255, 255, 255, 0.22); height:2px; width:26px; }
.footer_detail h6 { font-size:18px; }
.footer_detail .footer_menu_list li a { color:rgba(255, 255, 255, 0.42) !important; margin-bottom:10px; display:inline-block; font-size:14px; transition:all 0.5s; }
.footer_detail .footer_menu_list li a:hover { color:#fff !important; }
.footer_detail p { font-size:14px !important; color:rgba(255, 255, 255, 0.42); }

.fot_social .social-icon { border-radius:50%; background-color:rgba(255, 255, 255, 0.05); transition:all 0.5s; width:38px; color:rgba(255, 255, 255, 0.42); height:38px; display:block; font-size:18px; line-height:38px; text-align:center; }
.fot_social .social-icon:hover { color:#fff !important; }

/* custom */
footer { width:100%; background-color:#111; }
#footer { color:#808080; display: flex; justify-content: space-between; align-items: center; height: 100px;}
#footer p, #footer ul, #footer li { list-style:none; padding:0; margin:0; }
#footer .copy { font-size:14px; letter-spacing: .1px; } 
#footer .link .link_menu { position:relative; height: 100px; display: flex; align-items: center; }
#footer .link .btn-familysite { display:block; height:14px; color:rgba(255,255,255,0.7); background:url(../images/icon_familysite.png) no-repeat right -14px; padding-right: 20px; font-size: 14px; line-height:1; }

#footer .link .link_menu,
#footer .link .link_menu:hover,
#footer .link .btn-familysite { -webkit-transition:all 0.3s ease-in-out;  -moz-transition:all 0.3s ease-in-out; -o-transition:all 0.3s ease-in-out; transition:all 0.3s ease-in-out; }

#footer .link .select_list { background:rgba(0,0,0,0.6); width:120px; bottom:100px; position:absolute; display:none; right: -10px; }
#footer .link .select_list li a { color:#fff; line-height:50px !important; padding-left:15px !important; font-size:14px; display:block; background-image:none; line-height:normal; }
#footer .link .select_list li a:hover { background:#2186de; } 

#footer .link_m { display:none; }

/* for [gotop] */
.bg-funfacts { display:none; }

@media (max-width: 480px) {
    #footer .copy { font-size:12px; line-height: 1.1; }
    #footer .copy span { display: block; }
    #footer .link .link_menu { display: none;}
}

/* contact
.contact { position: fixed; bottom: 10%; right: 5%; width: 100px; height: 100px; border-radius: 50%; background: url(../images/contact_arrow.png) no-repeat center #222; box-shadow: 5px 5px 15px rgba(0,0,0,.2); transition: all 0.3s; }
.contact:hover { background-color:#2186de; transition:all 0.3s; }
.contact_btn { display: block; width: 100%; height: 100%; background: url(../images/contact_txt.png) no-repeat center; -webkit-animation: 10s linear infinite rotate; animation: 10s linear infinite rotate; transform-origin: center; }
.contact_btn:hover { animation-play-state: paused; transition:all 0.3s; }

/* contact motion
@keyframes rotate {
	from {
	  transform: rotate(0deg)
	}
	to {
	  transform: rotate(360deg)
	}
}
*/

/* contact : inquiry */
.contact { padding-top: 160px;}
.contact .tab-menu { display: flex; display: flex; margin-bottom: 20px;}
.contact .tab-menu a { display: block; width: 100%; line-height: 60px; border: 1px solid #ddd; font-size: 18px; background: #fff; color: #333; text-align: center;}
.contact .tab-menu a:hover { color: #2186de;}
.contact .tab-menu a.active { color: #fff; background: #2186de; border-color: #2186de;}

.contact .form-group { margin-bottom: 15px;}
.contact .form-group label { display: flex; gap: 5px;}
.contact .form-control,
.contact .form-select { width: 100%; padding: 1rem; height: 60px; border: 1px solid #ddd; border-radius: 8px;}
.contact .form-select { background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") no-repeat #fff;
						background-size: 16px 12px; background-position: right .75rem center; appearance: none;}
.contact .form-control::placeholder { color: #666 !important;}
.contact .form-row { display: flex; gap: 10px; margin: 0;}
.contact .form-row .form-group { flex: 1;}
.contact .radio-group { display: flex; flex-wrap: wrap; gap: 2rem; padding: 0 1rem; align-items: center;}
.contact .radio-group label { font-weight: normal; margin: 0;}
.contact .btn-group { display: flex; justify-content: center;}
.contact .btn-group .btn-custom { font-size: 18px; line-height: 60px; width: 20%; margin-top: 2rem;}
.contact textarea { height: 300px !important;}

.inquiry form h3 { font-size: 18px; color: #666; margin: 2rem 0 1rem;}

@media (max-width: 480px) {
	.contact { padding-top: 100px; font-size: 14px;}
	.contact .tab-menu a { line-height: 40px; font-size: 14px;}
	.contact .form-group { margin-bottom: 5px;}
	.contact .form-control { width: 100%; padding: 1rem; height: 50px; font-size: 14px;}
	.contact .btn-group .btn-custom { width: 50%; line-height: 40px; font-size: 14px;}

	.inquiry form h3 { font-size: 14px; margin: 1rem 0 .5rem;}
}

/* contact */
.contact_main { position: fixed; bottom: 5%; right: 2%; z-index: 999; transition: all .3s;}
.contact:hover { transition: all .3s;}
.contact_btn,
.contact_btn_animated { line-height: 70px; width: 70px; height: 70px;}
.contact_btn { display: block; font-size: 0; color: rgba(255,255,255,0); padding-left: 40px; transition: background-color 400ms ease-in-out; background: url(/Web/images/contact_icon.png) no-repeat center right 16px #2186de; border-radius: 50px 50px 10px 50px; box-shadow: 5px 5px 15px rgba(0,0,0,.2) !important;  }
.contact_btn:hover { font-size: 18px; font-weight: 600; color: #fff; width: 220px; transition:all 0.3s; }

.contact_btn_animated { position: relative; transition: box-shadow 150ms linear; overflow: hidden; }
.contact_btn_animated::before { display: block; position: absolute; top: 0; left: calc(0% - 5em); transform: skewX(-45deg); transition: left 400ms ease-in-out; background-color: rgba(255, 255, 255, 0.2); width: 2em; height: 100%; content: ''; } 
.contact_btn_animated:hover::before { left: calc(100% + 1.5em); }

.pulse { position: relative; }
.pulse::before, .pulse::after { content: ''; position: absolute; top: 0; left: 0; right: 0; bottom: 0; background: rgba(255,255,255,.4); border-radius: 50%; width: 20px; height: 20px; opacity: 0; margin: auto; }
.pulse::before { animation: pulse 1.5s infinite linear; }
.pulse::after {	animation: pulse 2s .4s infinite linear; }
@keyframes pulse {
	0% {
	  transform: scale(0);
	  opacity: 0;
	}
	33% {
	  transform: scale(1);
	  opacity: 1;
	}
	100% {
	  transform: scale(3);
	  opacity: 0;
	}
  }

@media (max-width: 1024px) {
	.contact_main { bottom: 5%; right: 2%; }
	.contact_btn { width: 50px; height: 50px; line-height: 50px; font-size: 0; background-size: 25px; background-position: center right 12px;}
	.contact_btn:hover { width: 200px; transition:all 0.3s; }
	.contact_btn_animated:hover { width: 200px; transition:all 0.3s; }
}

/* 2026.04.30 / pink / 개인정보 수집·이용 동의 블록 (inquiry.html, request.html 공통) */
.privacy-content { margin-top:16px; }
.privacy-content .form-group {display: flex;}
.privacy-content .privacy-check { display:inline-flex; align-items:center; gap:6px; cursor:pointer; }
.privacy-content .privacy-toggle { margin-left:8px; font-size:13px; color:#1a73e8 !important; text-decoration:underline !important; cursor:pointer; }
.privacy-content .privacy-toggle::after {content: '▼';}
.privacy-content .privacy-detail { display:none; margin-top:10px; padding:14px 16px; border:1px solid #e2e2e2; background:#fafafa; border-radius:4px; font-size:13px; line-height:1.7; color:#444; }
.privacy-content .privacy-detail.open { display:block; }
.privacy-content .privacy-detail p { margin:0 0 6px; }
.privacy-content .privacy-detail .privacy-note { margin-top:8px; color:#888; }
