@font-face {
  font-family: 'Jost';
  font-weight: 400;
  src: local('Jost Regular'), url(../fonts/Jost-Regular.woff) format('woff');
  unicode-range: U+0041-005A, U+0061-007A, U+0030-0039;
}
@font-face {
  font-family: 'Jost';
  font-weight: 500;
  src: local('Jost Medium'), url(../fonts/Jost-Medium.woff) format('woff');
  unicode-range: U+0041-005A, U+0061-007A, U+0030-0039;
}
@font-face {
  font-family: 'Jost';
  font-weight: 600;
  src: local('Jost Semibold'), url(../fonts/Jost-Semibold.woff) format('woff');
  unicode-range: U+0041-005A, U+0061-007A, U+0030-0039;
}
@font-face {
  font-family: 'Jost';
  font-weight: 700;
  src: local('Jost Bold'), url(../fonts/Jost-Bold.woff) format('woff');
  unicode-range: U+0041-005A, U+0061-007A, U+0030-0039;
}

/* @font-face {
  font-family: 'Jost';
  font-display: swap;
  src: url('../fonts/Jost-VariableFont_wght.woff') format('woff'), url('../fonts/Jost-VariableFont_wght.ttf') format('truetype');
  unicode-range: U+0041-005A, U+0061-007A, U+0030-0039;
} */

@font-face {
  font-family: 'Pretendard';
  font-weight: 700;
  font-display: swap;
  src: local('Pretendard Bold'), url(../fonts/Pretendard-Bold.subset.woff2) format('woff2'), url(../fonts/Pretendard-Bold.subset.woff) format('woff');
}

@font-face {
  font-family: 'Pretendard';
  font-weight: 600;
  font-display: swap;
  src: local('Pretendard SemiBold'), url(../fonts/Pretendard-SemiBold.subset.woff2) format('woff2'), url(../fonts/Pretendard-SemiBold.subset.woff) format('woff');
}

@font-face {
  font-family: 'Pretendard';
  font-weight: 500;
  font-display: swap;
  src: local('Pretendard Medium'), url(../fonts/Pretendard-Medium.subset.woff2) format('woff2'), url(../fonts/Pretendard-Medium.subset.woff) format('woff');
}

@font-face {
  font-family: 'Pretendard';
  font-weight: 400;
  font-display: swap;
  src: local('Pretendard Regular'), url(../fonts/Pretendard-Regular.subset.woff2) format('woff2'), url(../fonts/Pretendard-Regular.subset.woff) format('woff');
}

:root {
  --org50: #ffdfc7;
  --org100: #ffc3a5;
  --org200: #ff9d6b;
  --org300: #ff8548;
  --org400: #ff703a;
  --org500: #f65a12;
  --org600: #ff3b13;

  /* color */
  --primary: var(--org500);

  /* bluegray-color */
  --gray-50: #fafafa;
  --gray-100: #f5f5f5;
  --gray-200: #ecedf0;
  --gray-300: #eeeeee;
  --gray-400: #bdbdbd;
  --gray-500: #9e9e9e;
  --gray-600: #757575;
  --gray-700: #616161;
  --gray-800: #424242;
  --gray-900: #424242;
  --white: #fff;
  --black: #000;
  --disabled: #fafafa;

  /* border-color */
  --border-gray: var(--bluegray-300);
  --border-blue: #e1e5eb;

  /* border-radius */
  --br-s: 4px;
  --br-m: 6px;
  --br-l: 8px;
  --br-xl: 16px;
  --br-fill: 999px;

  /* bg-color */
  --lt-blue-100: #f8fbff;
  --lt-gray-100: #fafafa;

  /* width height */
  --width-web: 1320px;
  --width-1080: 1080px;

  --padding-web: 60px;
  --padding-tablet: 34px;
  --padding-mobile: 12px;

  --head-height: 80px;
  --space-web: calc(((100% - var(--width-web)) / 2) + var(--padding-web));
  /* --space-web-mall: calc(((100% - var(--width-web)) / 2) + var(--padding-web)); */
  /* --max-wrap: 1700px;
  --min-wrap: 1920px;
  --head-height: 70px;
  --head-height-m: 60px; */

  /*font-weight */
  --f-regular: 400;
  --f-medium: 500;
  --f-semibold: 600;
  --f-bold: 700;
}

/* ==========================================================================
	General Styles
========================================================================== */

body {
  font-family: 'Jost', 'Pretendard', sans-serif;
  color: var(--bluegray-600);
  font-weight: var(--f-medium);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size: 14px;
}

::selection {
  color: #fff;
  background: #f16c4b;
}

.section {
  padding: 100px 0;
}

.cont-width {
  width: 100%;
  max-width: var(--width-web);
  padding-left: var(--padding-web);
  padding-right: var(--padding-web);
  margin: 0 auto;
  position: relative;
}

.cont-tit {
  width: 100%;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 12px;
  margin-bottom: 50px;
}

.cont-tit h3 {
  font-size: 40px;
  font-weight: var(--f-semibold);
}
.cont-tit p {
  font-size: 16px;
  color: var(--gray-600);
}

/* ==========================================================================
	$Header
========================================================================== */
#header {
  position: fixed;
  width: 100%;
  left: 0;
  right: 0;
  z-index: 999;
  background-color: var(--white);
}
#header .head {
  height: var(--head-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  -moz-transition: padding 0.3s;
  -o-transition: padding 0.3s;
  -webkit-transition: padding 0.3s;
  transition: padding 0.3s;
}
#header .logo {
  display: inline-block;
  width: 80%;
}
#header.header__scroll {
  background-color: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(20px);
  box-shadow: 0 2px 7px rgba(0, 0, 0, 0.1);
}

/* nav */
.nav__menu {
  display: flex;
  align-items: center;
  gap: 50px;
}
.nav__menu a {
  font-size: 18px;
  color: var(--gray-900);
  text-transform: uppercase;
}
.nav__menu a:hover,
.nav__menu .active {
  color: var(--primary);
  font-weight: var(--f-semibold);
}

.nav__toggle {
  display: none;
}

/* ==========================================================================
	visual
========================================================================== */
.visual {
  height: 800px;
  display: flex;
  padding-top: var(--head-height);
  background-image: url(../images/visual.png);
  background-size: cover;
  background-position: center top;
  background-repeat: no-repeat;
  -moz-background-size: cover;
  -o-background-size: cover;
  -webkit-background-size: cover;
}
.visual .cont-width {
  display: flex;
  align-items: center;
}
.visual__text {
  font-size: 66px;
  color: var(--white);
  font-weight: var(--f-semibold);
  text-transform: capitalize;
  word-break: keep-all;
}

.visual__text p {
  font-size: 20px;
  font-weight: var(--f-regular);
  text-transform: none;
  margin-top: 20px;
}

/* ==========================================================================
	About
========================================================================== */

.about {
  position: relative;
  width: 50%;
  display: flex;
  flex-direction: column;
  gap: 20px;
  z-index: 4;
}
.about__tit {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-size: 28px;
  color: var(--gray-900);
}
.about__tit strong {
  font-weight: var(--f-semibold);
}
.about__tit p {
  font-size: 18px;
  color: var(--gray-700);
}
.about__textarea {
  position: relative;
  border-left: 1px solid var(--primary);
  padding: 20px 0 20px 20px;
  word-break: keep-all;
}
.about__textarea p {
  word-break: keep-all;
  color: var(--gray-600);
  font-weight: var(--f-medium);
  line-height: 24px;
}
.about__radius {
  position: absolute;
  top: 0;
  left: -12px;
  width: 12px;
  height: 12px;
  background-color: var(--primary);
  -webkit-border-radius: 12px 0 0 0;
  -moz-border-radius: 12px 0 0 0;
}

/*****   work   *****/
.work {
  position: relative;
}
.work__tit-box {
  position: relative;
  z-index: 2;
  background: linear-gradient(90deg, var(--primary) calc(var(--space-web) + 200px), rgba(0, 0, 0, 0) calc(var(--space-web) + 216px) 100%);
}
.work__tit {
  width: 30%;
  max-width: fit-content;
  font-size: 50px;
  font-weight: var(--f-semibold);
  color: var(--white);
  border-top-right-radius: 80px;
  background-color: var(--primary);
  padding: 50px 70px 110px 0;
}
.work__tit em {
  display: block;
}
.work-area {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0) calc(var(--space-web) + 216px), #0b0a0a var(--space-web) 100%);
  margin-top: -250px;
}
.work-grid {
  display: grid;
  justify-content: flex-end;
  gap: 12px;
  grid-template-columns: repeat(3, minmax(100px, 270px));
  padding-top: 40px;
  padding-bottom: 40px;
}
.work__img {
  width: 45%;
  max-width: 526px;
  position: absolute;
  bottom: -92px;
  right: var(--padding-web);
  display: inline-flex;
  justify-content: flex-end;
  transition: all 0.3s;
  z-index: 3;
}
.work__img img {
  width: 100%;
}
.work-area__item {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  gap: 12px;
  padding: 30px 20px;
  color: var(--gray-400);
  background-color: #232323;
  border: 1px solid var(--gray-600);
  border-radius: var(--br-m);
}
.work-area__item--tit {
  font-size: 16px;
  line-height: 24px;
  font-weight: var(--f-semibold);
  color: var(--gray-200);
  word-break: keep-all;
}
.work-area__item--cont {
  word-break: keep-all;
  line-height: 24px;
}

/* ==========================================================================
	kerberos
========================================================================== */
.kerberos {
 /* background-color:#FFFBF8; */
 padding-top: 0!important
}
.kerberos-header{
  text-align: center;

}
.kerberos-header__small-tit{
  font-size: 22px;
  color: var(--gray-700);
  margin-bottom:12px;
}
.kerberos-header__tit{
  font-size: 30px;
  color: var(--gray-900);
  font-weight: var(--f-bold);
  margin-bottom: 26px;
}
.kerberos-header__tit span{
  color: var(--primary);
}
.kerberos-header__desc{
  font-size: 16px;
  color: var(--gray-700);
  line-height: 28px;
  padding: 0 270px;
}
.kerberos-point{
 display: flex;
 align-items: center;
 justify-content: center;
 gap:100px;
 margin:120px 0;
}
.kerberos-point__img {
  display: flex;
  justify-content: flex-end;
   transition: all 0.3s;
  }

.kerberos-point__list {
 display: flex;
flex-direction: column;
 gap:24px;
}
.kerberos-point__list li{
 display: flex;
 align-items: center;
 gap: 8px;
 color: var(--gray-800);
 font-size: 18px;
 font-weight: var(--f-bold);
}
.kerberos-summary{
  width: 100%;
    display: grid;
    gap:50px;
    grid-template-columns: repeat(3, minmax(100px, 360px));
    justify-content: space-between;
}
.kerberos-summary__block{
  display: flex;
  align-items: flex-start;
  gap:20px;
}
.kerberos-summary__desc{
  margin-top:12px ;
  color: var(--gray-600);
  line-height: 20px;
}
.kerberos-summary__tit{
  font-size: 16px;
  color: var(--primary);
  font-weight: var(--f-semibold);
}
/* ==========================================================================
	$partner
========================================================================== */
.partner {
  background-color: var(--gray-100);
}
.partner .cont-width {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  padding-top: 42px;
  padding-bottom: 42px;
}
.partner img {
  height: 36px;
}

/* ==========================================================================
	$Organization
========================================================================== */
.organi__wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 50px;
}
.organi__box {
  position: relative;
  width: 170px;
  height: 170px;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  background-color: var(--primary);
  border-radius: var(--br-fill);
  z-index: 2;
}
.organi__box--circle {
  position: relative;
}
.organi__box--circle::after {
  content: '';
  position: absolute;
  bottom: -131%;
  width: 1px;
  height: 130%;
  border-left: 1px solid var(--org300);
}
.organi__box--ellipse {
  width: 200px;
  height: fit-content;
  padding: 16px 0;
  background-color: var(--org300);
}
.organi__box--ellipse-border {
  width: 200px;
  height: fit-content;
  padding: 16px 0;
  background-color: #fff1e8;
  border: 1px solid var(--org300);
}
.organi__box--ellipse-border .organi__text {
  color: var(--org300);
}
.organi__box--ellipse-border .organi__eng {
  color: var(--org200);
}

.organi__team-wrap {
  width: 30%;
  flex-shrink: 1;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 60px;
}

.organi__team-box {
  position: relative;
  width: 100%;
  display: flex;
  justify-content: space-between;
}
.organi__team-box::before {
  content: '';
  position: absolute;
  top: -56px;
  left: 50%;
  width: 1px;
  height: 20px;
  background-color: var(--org300);
}
.organi__team-box::after {
  content: '';
  position: absolute;
  top: -37px;
  left: 75px;
  width: calc(100% - 150px);
  height: 1px;
  background-color: var(--org300);
}
.organi__box--rec {
  position: relative;
  width: 45%;
  max-width: 150px;
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: var(--br-xl);
  border: 1px solid var(--org300);
  background-color: var(--white);
  /* overflow: hidden; */
}
.organi__box--rec::before {
  content: '';
  position: absolute;
  top: -14px;
  width: 10px;
  height: 10px;
  border-radius: var(--br-fill);
  background-color: var(--org300);
}
.organi__box--rec::after {
  content: '';
  position: absolute;
  top: -38px;
  width: 1px;
  height: 20px;
  background-color: var(--org300);
}
.organi__box--rec > div:nth-child(1) {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 16px 0;
  background-color: var(--org300);
  border-radius: var(--br-xl) var(--br-xl) 0 0;
}
.organi__box--rec .organi__team {
  font-size: 14px;
  min-height: 106px;
  padding: 20px 0;
  text-align: center;
  color: var(--org300);
}

.organi__text {
  font-size: 20px;
  font-weight: var(--f-semibold);
  color: var(--white);
}
.organi__eng {
  font-size: 14px;
  color: var(--org50);
}

.organi__nth {
  width: 70%;
  display: flex;
  justify-content: space-between;
  position: relative;
}
.organi__nth::before {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 50%;
  height: 1px;
  border-bottom: 1px solid var(--org300);
  z-index: 1;
}
.organi__wrap > div:nth-child(3) {
  justify-content: space-between;
  width: 100%;
}
.organi__wrap > div:nth-child(3)::before {
  width: 80%;
  left: 10%;
  top: 40px;
}

.organi__wrap-img {
  display: none;
}
/* .bg-organization img {


/* ==========================================================================
	$contact
========================================================================== */
#location {
  background: var(--gray-50);
}
.location__map {
  width: 100%;
}

/* ==========================================================================
	$Footer
========================================================================== */
.footer {
  background-color: var(--gray-800);
  color: var(--gray-400);
}
.footer .cont-width {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding-top: 40px;
  padding-bottom: 40px;
}
.footer__info {
  max-width: 670px;
  flex-basis: 60%;
  display: flex;
  flex-direction: column;
  gap: 18px;
  word-break: keep-all;
}
.footer__info .logo--footer {
  display: flex;
  font-size: 36px;
  color: var(--white);
}
.footer__info .logo--footer strong {
  font-weight: var(--f-semibold);
  margin-left: 20px;
}

.footer .copy {
  font-size: 12px;
  color: var(--gray-500);
  flex-basis: 100%;
  margin-top: 40px;
}

.footer .owner {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px;
  text-align: right;
}
.footer .owner .mail {
  display: flex;
  gap: 4px;
  color: var(--white);
  font-size: 14px;
}
/* ==========================================================================
