/* Pretendard Font */
@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 100;
    src: url('/font/Lato-Thin.woff2') format('font-woff2'),
         url('/font/Lato-Thin.woff') format('woff');
}

@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 300;
    src: url('/font/Lato-Light.woff2') format('font-woff2'),
         url('/font/Lato-Light.woff') format('woff');
}
@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 400;
    src: url('/font/Lato-Regular.woff2') format('font-woff2'),
         url('/font/Lato-Regular.woff') format('woff');
}
@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 700;
    src: url('/font/Lato-Bold.woff2') format('font-woff2'),
         url('/font/Lato-Bold.woff') format('woff');
}
@font-face {
    font-family: 'Lato';
    font-style: normal;
    font-weight: 900;
    src: url('/font/Lato-Black.woff2') format('font-woff2'),
         url('/font/Lato-Black.woff') format('woff');
}

/* Reset */
*,*:before,*:after {
  margin:0; padding:0; box-sizing:border-box;
}

html{
  overflow-x:hidden;
  font-family: 'Lato', sans-serif, Helvetica, Arial;
  font-size:62.5% !important;
  color:#111;
  letter-spacing:-0.02em;
  word-break:keep-all;
  word-wrap:break-word;
  box-sizing:border-box;
  animation:entry .3s ease forwards;
  opacity: 0;
}

body {
  font-size:1.6rem;
}

img{
  max-width:100%;
}

a{
  text-decoration:none;
  color:inherit;
  outline:none;
}

b,strong{
  font-weight:800 !important;
}

ul,li {
  list-style: none;
}

button{
  font-family:inherit;
  background-color:transparent;
  border:none;
  outline:none;
  cursor:pointer;
}

table{
  border-collapse:collapse;
}

input,select,textarea{
  padding-left:15px;
  padding-right:15px;
  font-family:inherit;
  background-color:#fff;
  border:1px solid #e5e5e5;
  -webkit-transition:all ease .1s;
  transition:all ease .1s;
  outline: none;
  border-radius:10px;
}

textarea{
  padding:10px;
}

select{
  padding-right:30px;
  -moz-appearance:none;
  -webkit-appearance:none;
  appearance:none;
  background-color:#fff;
  background-size:10px auto;
  /* background-image: url(); */
  background-repeat:no-repeat;
  background-position:right 10px center;
}

select::-ms-expand{
  display:none;
}

input[type=number]{
  -moz-appearance:textfield;
}

input:-moz-read-only,textarea:-moz-read-only{
  background-color:#f8f8f8;
}

input:read-only,textarea:read-only{
  background-color:#f8f8f8;
}
input::-webkit-outer-spin-button,input::-webkit-inner-spin-button{
  -webkit-appearance:none;margin:0;
}

input:not([readonly="readonly"]):not(:disabled):hover{
  border-color:#bbbbbb !important;
}

select:not(:disabled):hover{
  border-color:#bbbbbb !important;
}

textarea:not(:read-only):not(:disabled):hover{
  border-color:#bbbbbb !important;
}

input:not([readonly="readonly"]):not(:disabled):focus{
  border-color:#555555 !important;

}
select:not(:disabled):focus{
  border-color:#555555 !important;
}

textarea:not(:read-only):not(:disabled):focus{
  border-color:#555555 !important;
}

:focus{
  outline:none;
}

::placeholder{
  color:#bbbbbb;
}

:-ms-input-placeholder{
  color:#bbbbbb;
}

::-ms-input-placeholder{
  color:#bbbbbb;
}

::selection{
  color: #fff !important;
  background-color:#55aa1c !important
}

@keyframes entry {
    to{opacity: 1;}
}

@media (max-width:1024px){
    select{
      background-size:8px auto;
      background-position:right 9px center;
    }
}

.hidden {
  overflow:hidden;
}

.blind {
  overflow:hidden;
  position:absolute;
  width:1px;
  height:1px;
  clip:rect(1px,1px,1px,1px);
}

.sp{
  display:none;
}

.mo{
  display:none;
}

@media(max-width:1024px){
  .sp{display:block;}
  .pc{display:none;}
}
@media(max-width:768px){
  .tb{display:none;}
  .mo{display:block;}
}


/* Text Color */
.color-point {
  color:#1fb8df !important;
}

.color-green {
  color:#67be8d !important;
}


/* Main */
.main {
  display: block;
  overflow: hidden;
  min-height:calc(100vh - 160px);
}


/* Container */
.container {
  max-width:1310px;
  width:100%;
  margin:auto;
  padding:0px 15px;
}


/* Sticky */
[data-header="sticky"] .header-primary::before {
  background-color: #fff;
  box-shadow: 0px 2px 6px 0px rgba(24,24,24,.12);
}

[data-header="sticky"] .header-primary__logo a {
  background-image: url('/img/common/footer-logo.png');
}

@media (min-width: 1200px) {

  [data-header="sticky"] .header-primary__contents {
    color:#333;
  }

}


/* [data-header="sticky"] .header-menu__link {
  color:#333;
} */


/* Theme */
[data-header-theme="white"] .header-primary::before {
  background-color: #fff;
}

[data-header-theme="white"] .header-primary__logo a {
  background-image: url('/img/common/footer-logo.png');
}

[data-header-theme="white"] {
  background-color:#fff;
  box-shadow: 0px 2px 6px 0px rgba(24,24,24,.12);
}

@media (min-width: 1200px) {

  [data-header-theme="white"] .header-menu__link {
    color:#333;
  }

}


/* Header */
.header{
  width: 100%;
  position:relative;
  top:0;
  left:0;
  z-index:10000;
}

.header-primary {
  width:100%;
  position:fixed;
  z-index:2;
}

.header-primary::before{
  content:'';
  display: block;
  width:100%;
  height:100%;
  background:rgba(19,19,19,0.3);
  position:absolute;
  top:0;
  left:0;
  transition:all .3s ease;
  /* -webkit-transform-origin: top;
  transform-origin: top;
  animation: header-background-off ease .5s forwards; */
}

.header-primary__contents {
  max-width:1320px;
  width:100%;
  margin:auto;
  padding:0 20px;
  color: #ffffff;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:justify;
  -ms-flex-pack:justify;
  justify-content:space-between;
  position:relative;
}

.header-primary__logo {
  display:block;
  margin-top:26px;
  width:281px;
  aspect-ratio: 1/0.167;
}

.header-primary__logo a {
  display:block;
  width:100%;
  height:100%;
  background:url('/img/common/logo.png') no-repeat center /cover;
}

.header-right__container {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  position:relative;
}

.header-menu {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  z-index:10000;
  position:relative;
}

.header-menu__list {
  position:relative;
}

.header-menu__link {
  line-height:1;
  font-size:1.8rem;
  font-weight:400;
  display:block;
  padding:41px 40px;
}

.header-primary__contents .link__blue {
  color:#1fb8df !important;
}

.header-menu__link h2 {
  font-size:inherit;
  font-weight:inherit;
  color:inherit;
}

/* Large devices (desktops, less than 1200px) - lg */
@media (max-width: 1200px) {

  .header-primary {
    display: block;
    height:60px;
  }

  .header-right__container {
    overflow-y: auto;
    display: block;
    z-index: 9999;
    position: fixed;
    top: 0;
    right: -100%;
    padding: 80px 24px;
    max-width: 550px;
    width: 100%;
    height: 100%;
    background: #111111;
    -webkit-transition: all ease .35s;
    transition: all ease .35s;
  }

  .header-primary__left {
    position:static;
  }

  .header-primary__logo {
    margin:0;
    width:170px;
    position: absolute;
    top:15px;
    left:15px;
  }

  [data-header-mobile="on"] .header-right__container { right: 0; }

  .header-menu {
    display: block;
  }

  .header-menu__link {
    font-size:1.6rem;
    padding:25px 10px;
  }

  .header-menu__list {
    border-bottom: 1px solid #424242;
  }

}
/* Medium devices (tablets, less than 1024px) - md */
@media (max-width: 1024px) {

}
/* Small devices (landscape phones, less than 767px) - sm */
@media (max-width: 767px) {

}
/* Extra small devices (portrait phones, less than 500px) - xl */
@media (max-width: 500px) {

}


/* Burger Maker */
.header-primary__mobile {
  z-index: 10000;
  display: none;
  position: absolute;
  top: 0;
  right: 0;
  width: 50px;
  height: 50px;
}

.mobile-menu__button {
  display: inline-block;
  position: relative;
  width: 100%;
  height: 100%;
}

.mobile-menu__button[aria-pressed="true"] span,
.mobile-menu__button[aria-pressed="true"] span::before,
.mobile-menu__button[aria-pressed="true"] span::after {
  background: #ffffff;
}

.mobile-menu__button--flip[aria-pressed="true"] span {
  background-color: rgba(0,0,0,0) !important;
  -webkit-transition-delay: 0.2s; transition-delay: 0.2s;
}

.mobile-menu__button--flip[aria-pressed="true"] span::before {
  margin-top: 0;
  -webkit-transform: rotate(45deg); transform: rotate(45deg);
  -webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}

.mobile-menu__button--flip[aria-pressed="true"] span::after {
  margin-top: 0;
  -webkit-transform: rotate(-45deg); transform: rotate(-45deg);
  -webkit-transition-delay: 0s, 0.2s; transition-delay: 0s, 0.2s;
}

.mobile-menu__button span {
  position: relative;
  margin: 0 auto;
}

.mobile-menu__button span::before,
.mobile-menu__button span::after {
  content: '';
  position: absolute;
}

.mobile-menu__button span,
.mobile-menu__button span::before,
.mobile-menu__button span::after {
  display: block;
  width: 25px;
  height: 3px;
  background-color: #fff;
}

.mobile-menu__button span::before {
  margin-top: -10px;
}

.mobile-menu__button span::after {
  margin-top: 10px;
}

.mobile-menu__button--flip span::before {
  -webkit-transition-property: margin, -webkit-transform;
  transition-property: margin, transform;
  -webkit-transition-duration: 0.2s; transition-duration: 0.2s;
  -webkit-transition-delay: 0.2s, 0s; transition-delay: 0.2s, 0s;
}
.mobile-menu__button--flip span::after {
  -webkit-transition-property: margin,
  -webkit-transform; transition-property: margin, transform;
  -webkit-transition-duration: 0.2s; transition-duration: 0.2s;
  -webkit-transition-delay: 0.2s, 0s; transition-delay: 0.2s, 0s;
}
@media(max-width:1200px){

  .header-primary__mobile {
    display:block;
    top:5px;
    right:5px;
  }

  [data-header="sticky"] .mobile-menu__button span,
  [data-header="sticky"] .mobile-menu__button span::before,
  [data-header="sticky"] .mobile-menu__button span::after {
    background-color: #111;
  }

  [data-header-theme="white"] .mobile-menu__button span,
  [data-header-theme="white"] .mobile-menu__button span::before,
  [data-header-theme="white"] .mobile-menu__button span::after {
    background-color: #111;
  }

  [data-header-mobile="on"] .mobile-menu__button span,
  [data-header-mobile="on"] .mobile-menu__button span::before,
  [data-header-mobile="on"] .mobile-menu__button span::after {
    background-color: #fff;
  }

}
@media(max-width:768px){

}


header .header-flex-box {
  display: flex;
  align-items: center;
}

header .h_lang{
  position: relative;
}

header .h_lang__btn {
  color: #fff;
	position: relative;
	display: flex;
	align-items: center;
	gap:10px;
	padding:8px 15px;
	font-size:1.8rem;
	font-weight:700;
	line-height: 1;
	border-radius: 20px;
	transition:all .4s cubic-bezier(0.4, 0, 0.2, 1);
	z-index:20;
}

header .h_lang__btn i {
	display: block;
	width: 20px;
	height:20px;
	background: url('/en/img/common/header_lang_on.png') no-repeat center;
}

header .h_lang__ul {
	position: absolute;
	top:36px;
	width: 100%;
	text-align: center;
	opacity:0;
	visibility: hidden;
	transition:all .4s cubic-bezier(0.4, 0, 0.2, 1);
}

header .h_lang__ul::after {
	content: "";
	display: block;
	position: absolute;
	left:0;
	bottom:0;
	width: 100%;
	height:calc(100% + 36px);
	border-radius:20px;
	background-color: #1fb8df;
}

header .h_lang__ul li {
	position: relative;
	padding:10px 0px;
	z-index:10;
}

header .h_lang__ul a {
	font-size:1.8rem;
	font-weight:700;
	line-height: 1;
	color:#fff;
}

header .h_lang.on .h_lang__btn {
	color:#fff;
	background-color: #1fb8df;
}

header .h_lang.on .h_lang__btn i {
	background-image: url('/en/img/common/header_lang_on.png');
}

header .h_lang.on .h_lang__ul {
	opacity: 1;
	visibility: visible;
}


[data-header-theme="white"] .h_lang__btn,
[data-header="sticky"] .h_lang__btn{color: #333;}
[data-header-theme="white"] .h_lang__btn i,
[data-header="sticky"] .h_lang__btn i{background:url('/en/img/common/header_lang_off.png') no-repeat center}

/* Footer */
.footer {
  padding:40px 0px;
  background-color: #f3f3f3;
}

.footer__direction {
  display:flex;
  align-items: center;
  justify-content: space-between;
}

.footer__left {
  max-width: 820px;
}

.footer__tit {
  font-size:1.4rem;
  line-height:1;
  font-weight:700;
  color:#6f6f6f;
}

.footer__info {
  font-size:0px;
  padding:15px 0px 10px;
  margin:0px -12px;
}

.footer__info li {
  font-size:1.3rem;
  font-weight:300;
  color:#6f6f6f;
  margin:2px 0px;
  padding:0px 12px;
  display: inline-block;
  position: relative;
  width:100%;

}

.footer__info li::before {
  content:none;
  display: block;
  position:absolute;
  left:0;
  top:50%;
  transform: translateY(-50%);
  width:1px;
  height:12px;
  background-color: #b9b9b9;
}

.footer__info li:last-child::before {
  display: none;
}

.footer__bottom {
  display: flex;
  align-items: center;
}

.footer__bottom .capy-txt {
  font-size:1.3rem;
  font-weight:700;
  color:#6f6f6f;
  margin-right:40px;
}

.footer__bottom .link {
  display: flex;
  font-size:0;
  margin:0px -15px;
}

.footer__bottom .link li {
  font-size:1.3rem;
  font-weight:700;
  line-height:1;
  color:#262626;
  padding:0px 15px;
}

.footer__logo {
  width: 304px;
  height: 51px;
  background: url('/img/common/footer-logo.png') no-repeat center;
}

/* Large devices (desktops, less than 1200px) - lg */
@media (max-width: 1200px) {

  .footer__direction {
    flex-wrap: wrap;
    justify-content: center;
  }

  .footer__left {
    text-align: center;
    order:2;
  }

  .footer__info li::before {
    display: none;
  }

  .footer__info {
    margin:0px -4px;
  }

  .footer__info li {
    padding:0px 4px;
  }

  .footer__bottom {
    justify-content: center;
    flex-wrap: wrap;
  }

  .footer__bottom .capy-txt {
    width:100%;
    margin-right:0px;
  }

  .footer__bottom .link {
    margin:26px -8px 0px;
  }

  .footer__bottom .link li {
    padding:0px 8px;
  }

  .footer__right {
    width:100%;
    order:1;
  }

  .footer__logo {
    margin:0px auto 34px;
    height: 32px;
    background-size: auto 32px;
    background-position: left 34px center;
  }

}
/* Medium devices (tablets, less than 1024px) - md */
@media (max-width: 1024px) {




}
/* Small devices (landscape phones, less than 767px) - sm */
@media (max-width: 767px) {

}
/* Extra small devices (portrait phones, less than 500px) - xl */
@media (max-width: 500px) {

}
