@charset "UTF-8";


h1,h2,h3,h4,h5,h6,strong,th,.bold{font-weight:700;}
table caption {overflow:hidden;width:0;height:0;margin:0;padding:0;font-size:0;line-height:0;text-indent:-999em;}
img{border:0;max-width:100%;vertical-align:top;}

em {font-style:normal; display:block;}
.blind {position:absolute;overflow:hidden;width:0;height:0;margin:0;padding:0;font-size:0;line-height:0;}
.semibold {font-weight:600;}
img[usemap] {border:none; height:auto; max-width:100%; width:auto;}

a{
	color:inherit;
	text-decoration:none;
	-webkit-transition: all 0.2s ease-in-out;
	   -moz-transition: all 0.2s ease-in-out;
		-ms-transition: all 0.2s ease-in-out;
		 -o-transition: all 0.2s ease-in-out;
			transition: all 0.2s ease-in-out;
}
a:hover,
a:active{
	-webkit-transition: all 0.2s ease-in-out;
	   -moz-transition: all 0.2s ease-in-out;
		-ms-transition: all 0.2s ease-in-out;
		 -o-transition: all 0.2s ease-in-out;
			transition: all 0.2s ease-in-out;
}

::-webkit-input-placeholder {color:#999; font-weight:300;}
:-moz-placeholder {color:#999; font-weight:300;}
::-moz-placeholder {color:#999; font-weight:300;}
:-ms-input-placeholder {color:#999; font-weight:300;}
:placeholder-shown {color:#999; font-weight:300;}


.mgb55 {margin-bottom:55px !important;}

.f-s30 {font-size:30px; line-height:1.4em;}
.f-s60 {font-size:60px;}


.blue-color {color:#15D2CC;}


.input {height:55px; padding:4px 10px;color:#1b1b1b; background:#fff; font-size:20px; line-height:1.5em; letter-spacing:-.025em; border:1px solid #dcdcdc;}
.input[readonly] {background-color:#eee; color:#878787;}
select.input {padding-right:40px; background:#fff url('../img/bbs/select.png') right 14px center no-repeat; -webkit-appearance:none; -moz-appearance:none; appearance:none;}
select.input::-ms-expand {display:none;}
textarea.input {height:auto; padding:7px 14px; overflow:auto; resize:none;}

/* Chrome, Safari, Edge, Opera */
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox  */
input[type='number'] {
  -moz-appearance: textfield;
  appearance: textfield;
}

.video-container {position:relative; padding-bottom:56.25%; overflow:hidden;}
.video-container video,
.video-container iframe {position:absolute; top:0; left:0; width:100%; height:100%;}



/* header */
#header {position:fixed; top:0; left:0; width:100%; transition: all 0.2s; z-index:101;}
#header .inner {position:relative; max-width:1760px; width:100%;}
.sitelogo {position:absolute; top:50%; left:20px; margin-top: -15.5px; z-index:2}
.sitelogo a {display:block; width:214px; height:32px; background:url('../img/common/logo.png') 0 0 no-repeat; background-size:contain;} 
html:lang(en) .sitelogo a { background-image:url('../img/common/logo_en.png');} 

#header:hover {background:#000;}
#gnb {position:relative;}
#gnb > ul {display:flex;justify-content:center; }
#gnb > ul > li {position: relative; text-align:center; padding:0 45px; }
#gnb > ul > li > a {display:block; color:#fff; font-size:20px; line-height:110px; font-weight: 700;}
#gnb > ul > li:nth-child(2) .submenu,
#gnb > ul > li:nth-child(3) .submenu {width:240px; margin-left:-120px;}

#gnb .submenu {display:none; position:absolute; top:90px; left:50%; background:rgba(0,0,0,.55); transition: .3s; width:164px; margin-left:-82px; border:1px solid; border-image:linear-gradient(-34deg, #00fff5 0%, #9000ff 100%); border-image-slice: 1; box-shadow:0 5px 15px rgba(0,255,255,.55); z-index:50;}
#gnb .submenu > ul {position:relative; padding:25px 30px;}
#gnb .submenu > ul > li {margin-bottom:5px;}
#gnb .submenu > ul > li:last-child {margin-bottom: 0;}
#gnb .submenu > ul > li > a {display:block; color:rgba(255,255,255,.8); font-size:18px;line-height:40px; font-weight:300;}
#gnb .submenu > ul > li > a:hover {color:#fff; font-weight: 500;}
#gnb .depth3 {display:none;}


.lang {position:absolute; top:50%; right:20px; width:27px; transform: translateY(-50%);}
.lang .tit {display:block; width:100%;position:relative; width:100%; height:24px; background:url('../img/common/ico_lang.png') 0 50% no-repeat; background-size:contain;}
.lang ul {position:absolute; top:30px; left:50%; padding:4px; width:60px; transform: translateX(-50%); background:#fff; border-radius: 4px; border:1px solid #dfdfdf; transition: all 0.2s; z-index:-9999em; opacity:0;}
.lang ul li {margin-bottom:3px; text-align:center; padding-bottom:3px;border-bottom: 1px solid #dfdfdf;}
.lang ul li:last-child {margin-bottom:0; border-bottom:0; padding-bottom:0;} 
.lang ul li a {display:bolck; font-size:14px; line-height:1.4em; font-weight: 500; color:#000;}
.lang.active ul {opacity:1; z-index:10;}

:lang(en) #gnb {margin-left:160px;}
:lang(en) #gnb > ul > li {padding:0 30px;}
:lang(en) #gnb > ul > li:nth-child(2) .submenu {width:400px; margin-left:-200px;}
:lang(en) #gnb > ul > li:nth-child(3) .submenu {width:500px; margin-left:-250px;}
:lang(en) #gnb .submenu {width:240px; margin-left:-120px;}


/* for mobile */
.btn-m-menu {display:none; position:absolute; top:50%; margin-top:-12px; right:20px; width:30px; height:24px; text-align:center; z-index:50;}
.btn-m-menu span {position:absolute; left:0; right:0; top:50%; margin-top:-1px; width:100%; height:2px; background:#fff;}
.btn-m-menu span:before,
.btn-m-menu span:after {content:" "; position:absolute; left:0; right:0; height:2px; background:#fff;}
.btn-m-menu span:before {top:-8px;}
.btn-m-menu span:after {bottom:-8px;}

.mobile-navigation {display:none; position:fixed; top:0; right:0; width:70%; height:100%; overflow:auto; transition:.3s ease-in-out; -ms-transform:translateX(100%); transform:translateX(100%); background:#000; z-index:1005;}
.mobile-navigation .head {padding-left:20px;}
.mobile-navigation .head a {display:flex; align-items:center; height:80px;}
.mobile-navigation .head img {height:26px}
.mobile-navigation .nav-menu>ul>li {border-bottom:1px solid #333;}
.mobile-navigation .nav-menu>ul>li>a {position:relative; padding:15px 20px; display:block; color:#fff; font-size:1.4rem; line-height:1.3em; font-weight: 700;}
.mobile-navigation .nav-menu>ul>li>a:after {content:""; position:absolute; top:50%; right:30px; transform:translateY(-75%) rotate(45deg); width:10px; height:10px; border-right:2px solid #fff; border-bottom:2px solid #fff;}
.mobile-navigation .nav-menu>ul>li:nth-child(4)>a:after,
.mobile-navigation .nav-menu>ul>li.active:nth-child(4)>a:after {transform:translateY(-50%) rotate(-45deg);}
.mobile-navigation .nav-menu>ul>li.active>a {color:#fff;}
.mobile-navigation .nav-menu>ul>li.active>a:after {transform:translateY(-35%) rotate(-135deg); border-color:#fff;}
.mobile-navigation .nav-menu .submenu {display:none; margin:-1px 0 0 0; padding:0 20px 30px; background:#000;}
.mobile-navigation .nav-menu .submenu>ul>li>a {display:block; padding:8px 0; color:#fff; font-size:1.2rem; line-height:1.3em;}
.mobile-navigation .close {position:absolute; top:26px; right:30px; width:24px; height:24px; opacity:1;}
.mobile-navigation .close:before,
.mobile-navigation .close:after {content:" "; position:absolute; top:50%; left:0; width:100%; height:2px; background:#fff;}
.mobile-navigation .close:before {transform:rotate(45deg);}
.mobile-navigation .close:after {transform:rotate(-45deg);}
.mobile-overlay {display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:#000; opacity:.6; z-index:1003}

html.menu-opened {overflow:hidden;}
html.menu-opened .mobile-navigation {-ms-transform:translateX(0); transform:translateX(0);}
html.menu-opened .mobile-overlay {display:block;}


html.header-fixed #header {background:rgba(0,0,0,.50);}
html.header-fixed #header:hover {background:#000;}
html.header-fixed #gnb > ul > li > a {line-height:80px;}
html.header-fixed #gnb .submenu  {top:70px;}



/* footer */
#footer {padding:90px 0; background:#000; color:#c6c6c6;}
#footer .inner {display:flex;}
#footer .bar {padding:0 10px;}

.foot-logo {order:2; margin-left:50px; text-align:right;}
.foot-logo .logo {margin-bottom: 26px;}
.foot-logo .text {font-size:40px; line-height:1.2em; font-weight: 500; color:#fff;}
.foot-info {order:1; flex:1 1 auto; min-width:0; width:1%; font-size:16px; line-height:1.88em;}
.foot-info p {font-weight: 500;}
.foot-info p strong {font-weight: 700; color:#fff;}
.foot-info .copy {padding-top: 36px; font-weight: 300; color:#fff; opacity:.60;}


.top-btn {display:none !important;}

.quick-link {position:fixed; bottom:56px; right:50px; text-align:center; width:104px; height: 104px; display:flex; align-items: center; justify-content: center; font-size:18px; line-height:1.4em; font-weight: 700; color:#fff; border-radius: 100%;  z-index:100;}
.quick-link span {position:relative; z-index:3;}
.quick-link:after {content:""; position:absolute; top:50%; left:50%; transform: translate(-50%, -50%); width:104px; height:104px; border-radius:100%; background: linear-gradient(35deg,#00fff5, #9000ff); box-shadow:0 5px 15px rgba(0,255,255,.55); z-index:0; transition: transform 0.3s ease;}
.quick-link:before {content:""; position:absolute; top:50%; left:50%; background:#000; transform: translate(-50%, -50%); width:96px; height:96px; z-index:1; border-radius: 100%;}
.quick-link:hover:after {animation: rotate 2s linear infinite;}
.quick-link.active {bottom:160px;}

@keyframes rotate {
  from { transform: translate(-50%, -50%) rotate(0deg); }
  to { transform: translate(-50%, -50%) rotate(360deg); }
}

.scroll-top {position:fixed; bottom:540px; right:50px; z-index:900; display:none; transition:none; overflow: hidden;}
.scroll-top .top {width:54px; height:54px; background:#fff url('../img/common/top.png') 50% 50% no-repeat; border-radius:100%; text-align:center;}
.scroll-top.active {display:flex; bottom:40px;}