@charset "utf-8";

/*-------------------------------------------------------------------
    파일정의 : 유틸리티
-------------------------------------------------------------------*/

/* float */
.cf::after{ display: block; clear: both; content: ""; }

.fl-none{ float: none; }

.fl-l{ float: left; }
.fl-r{ float: right; }

/* Display */

/* Margin */
.m0{ margin: 0px !important; }

.mt0{ margin-top: 0px !important; }
.mt4{ margin-top: 4px !important; }
.mt5{ margin-top: 5px !important; }
.mt8{ margin-top: 8px !important; }
.mt10{ margin-top: 10px !important; }
.mt12{ margin-top: 12px !important; }
.mt15{ margin-top: 15px !important; }
.mt20{ margin-top: 20px !important; }
.mt25{ margin-top: 25px !important; }
.mt30{ margin-top: 30px !important; }
.mt35{ margin-top: 35px !important; }
.mt40{ margin-top: 40px !important; }
.mt45{ margin-top: 45px !important; }
.mt50{ margin-top: 50px !important; }
.mt55{ margin-top: 55px !important; }
.mt60{ margin-top: 60px !important; }
.mt65{ margin-top: 65px !important; }
.mt70{ margin-top: 70px !important; }
.mt75{ margin-top: 75px !important; }
.mt80{ margin-top: 80px !important; }
.mt85{ margin-top: 85px !important; }
.mt90{ margin-top: 90px !important; }
.mt95{ margin-top: 95px !important; }
.mt100{ margin-top: 100px !important; }

.mb0{ margin-bottom: 0px !important; }
.mb4{ margin-bottom: 4px !important; }
.mb5{ margin-bottom: 5px !important; }
.mb8{ margin-bottom: 8px !important; }
.mb10{ margin-bottom: 10px !important; }
.mb12{ margin-bottom: 12px !important; }
.mb15{ margin-bottom: 15px !important; }
.mb20{ margin-bottom: 20px !important; }
.mb25{ margin-bottom: 25px !important; }
.mb30{ margin-bottom: 30px !important; }
.mb35{ margin-bottom: 35px !important; }
.mb40{ margin-bottom: 40px !important; }
.mb45{ margin-bottom: 45px !important; }
.mb50{ margin-bottom: 50px !important; }
.mb55{ margin-bottom: 55px !important; }
.mb60{ margin-bottom: 60px !important; }
.mb65{ margin-bottom: 65px !important; }
.mb70{ margin-bottom: 70px !important; }
.mb75{ margin-bottom: 75px !important; }
.mb80{ margin-bottom: 80px !important; }
.mb85{ margin-bottom: 85px !important; }
.mb90{ margin-bottom: 90px !important; }
.mb95{ margin-bottom: 95px !important; }
.mb100{ margin-bottom: 100px !important; }

/* Padding */
.p0{ padding: 0px !important; }

.pt0{ padding-top: 0px !important; }
.pt4{ padding-top: 4px !important; }
.pt5{ padding-top: 5px !important; }
.pt8{ padding-top: 8px !important; }
.pt10{ padding-top: 10px !important; }
.pt12{ padding-top: 12px !important; }
.pt15{ padding-top: 15px !important; }
.pt20{ padding-top: 20px !important; }
.pt25{ padding-top: 25px !important; }
.pt30{ padding-top: 30px !important; }
.pt35{ padding-top: 35px !important; }
.pt40{ padding-top: 40px !important; }
.pt45{ padding-top: 45px !important; }
.pt50{ padding-top: 50px !important; }
.pt55{ padding-top: 55px !important; }
.pt60{ padding-top: 60px !important; }
.pt65{ padding-top: 65px !important; }
.pt70{ padding-top: 70px !important; }
.pt75{ padding-top: 75px !important; }
.pt80{ padding-top: 80px !important; }
.pt85{ padding-top: 85px !important; }
.pt90{ padding-top: 90px !important; }
.pt95{ padding-top: 95px !important; }
.pt100{ padding-top: 100px !important; }

.pb0{ padding-bottom: 0px !important; }
.pb4{ padding-bottom: 4px !important; }
.pb5{ padding-bottom: 5px !important; }
.pb8{ padding-bottom: 8px !important; }
.pb10{ padding-bottom: 10px !important; }
.pb12{ padding-bottom: 12px !important; }
.pb15{ padding-bottom: 15px !important; }
.pb20{ padding-bottom: 20px !important; }
.pb25{ padding-bottom: 25px !important; }
.pb30{ padding-bottom: 30px !important; }
.pb35{ padding-bottom: 35px !important; }
.pb40{ padding-bottom: 40px !important; }
.pb45{ padding-bottom: 45px !important; }
.pb50{ padding-bottom: 50px !important; }
.pb55{ padding-bottom: 55px !important; }
.pb60{ padding-bottom: 60px !important; }
.pb65{ padding-bottom: 65px !important; }
.pb70{ padding-bottom: 70px !important; }
.pb75{ padding-bottom: 75px !important; }
.pb80{ padding-bottom: 80px !important; }
.pb85{ padding-bottom: 85px !important; }
.pb90{ padding-bottom: 90px !important; }
.pb95{ padding-bottom: 95px !important; }
.pb100{ padding-bottom: 100px !important; }

/* width */
.w30 {width: 30px !important;}
.w40 {width: 40px !important;}
.w45 {width: 45px !important;}
.w50 {width: 50px !important;}
.w55 {width: 55px !important;}
.w60 {width: 60px !important;}
.w65 {width: 65px !important;}
.w70 {width: 70px !important;}
.w75 {width: 75px !important;}
.w80 {width: 80px !important;}
.w85 {width: 85px !important;}
.w90 {width: 90px !important;}
.w95 {width: 95px !important;}
.w100 {width: 100px !important;}
.w105 {width: 105px !important;}
.w110 {width: 110px !important;}
.w115 {width: 115px !important; min-width: 0 !important;}
.w120 {width: 120px !important;}
.w130 {width: 130px !important;}
.w140 {width: 140px !important;}
.w150 {width: 150px !important;}
.w160 {width: 160px !important;}
.w165 {width: 165px !important;}
.w170 {width: 170px !important; min-width: 0 !important;}
.w180 {width: 180px !important;}
.w200 {width: 200px !important;}
.w260 {width: 260px !important;}
.w280 {width: 280px !important;}
.w340 {width: 340px !important;}
.w365 {width: 365px !important;}
.w400 {width: 400px !important;}
.w500 {width: 500px !important;}
.w800 {width: 800px !important;}

.wp100 {width: 100% !important; max-width: none !important; min-width: 0 !important;}

/* Align*/
.ta-l{ text-align: left !important; }
.ta-c{ text-align: center !important; }
.ta-r{ text-align: right !important; }

/* 말줄임 */

/* Flexible */
.fx{ display: flex !important; }

.fd-c{ flex-direction: column !important; }

.fx.wrap{ flex-wrap: wrap !important; }

.jc-fs{ justify-content: flex-start !important; }
.jc-fe{ justify-content: flex-end !important; }
.jc-c{ justify-content: center !important; }
.jc-sb{ justify-content: space-between !important; }

.ai-fs{ align-items: flex-start !important; }
.ai-fe{ align-items: flex-end !important; }
.ai-c{ align-items: center !important; }
.ai-s{ align-items: stretch !important; }

.fx-none{ flex: none !important; }

.fx1{ flex: 1 0 !important; min-height: 0; min-width: 0;}
.fx2{ flex: 2 0 !important; min-height: 0; min-width: 0;}
.fx3{ flex: 3 0 !important; min-height: 0; min-width: 0;}

.gap5 {gap: 5px 5px !important;}
.gap10 {gap: 10px 10px !important;}
.gap20 {gap: 20px 20px !important;}
.gap30 {gap: 30px 30px !important;}
.gap40 {gap: 40px 40px !important;}
.gap50 {gap: 50px 50px !important;}

/*-------------------------------------------------------------------
    @Only (Display 스타일은 다양하므로 숨길경우만 사용)
-------------------------------------------------------------------*/
/* Device */
.dv-pc .hide-pc, 
.dv-pad .hide-pad,
.dv-mobile .hide-mobile,
.dv-android .hide-android, 
.dv-ios .hide-ios {display:none !important;}
 
/* Media */
@media screen { .hide-screen {display:none !important;} }
@media print { .hide-print {display:none !important;} }

/*-------------------------------------------------------------------
    @Color Set
    - 배경: bg-, 텍스트: txt-, 라인: line-
    - 밝은: -light, 어두운: -dark, 더 밝은/어두운: ~er
-------------------------------------------------------------------*/
/* 기본 */
.bg-none {background-color:transparent !important;}
.txt-none {color:transparent !important;}
.line-none {border-color:transparent !important;}
 
/* 배경 */
.bg-gray {background-color: #F8F9FA !important;}

/* 텍스트 */
.txt-white {color: #ffffff !important;}
.txt-malibu {color: #748FFC !important;}
.txt-blue {color: #4C6EF5 !important;}
.txt-royalblue {color: #3B5BDB !important;}
.txt-red {color: #FA5252 !important;}
.txt-violet {color: #0052d1 !important;}
.txt-slateblue {color: #1E6AE1 !important;}
.txt-yellow {color: #FAB005 !important;}
.txt-mango {color: #E67700 !important;}
.txt-ecstasy {color: #FD7E14 !important;}
.txt-dark {color: #343A40 !important;}
.txt-gray {color: #868E96 !important;}

/* 라인 */