@charset "utf-8";

/*
h1 {
  font-size: 3.2rem; / 32px /
}

p {
  font-size: 1.6rem; / 16px /
}
*/

/* 기본 (데스크탑) */
html {
  font-size: 62.5%; /* 16px * 0.625 = 10px */
}

/* 태블릿 (화면 너비 768px 이하) */
@media (max-width: 768px) {
  html {
  /*  font-size: 50%;*/ /* 전체적으로 글자가 20% 작아짐 */
  }
}

/* 모바일 (화면 너비 480px 이하) */
/*
@media (max-width: 480px) {
  html {
    font-size: 40%; 
  }
}
*/
body {margin:0;padding:0;font-size:14px;}
html, body{color:black;letter-spacing:-0.02em;}

html, h1, h2, h3, h4, h5, h6, form, fieldset, img {margin:0;padding:0;border:0}
h1, h2, h3, h4, h5, h6 {font-size:1em;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}

ul, dl,dt,dd {margin:0;padding:0;list-style:none}
legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
label, input, button, select, img {vertical-align:middle;font-size:1em}
input, button {margin:0;padding:0;font-size:1em}
input[type="submit"] {cursor:pointer}
button {cursor:pointer}

textarea, select {font-size:1em}
select {margin:0}
p {margin:0;padding:0;word-break:keep-all}
hr {display:none}
pre {overflow-x:scroll;font-size:1.1em}

a{display:inline-block;color:#222;text-decoration:none;}
a:hover{color:black;}

*, :after, :before {
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}

input[type=text],input[type=password], textarea {
-webkit-transition:all 0.30s ease-in-out;
-moz-transition:all 0.30s ease-in-out;
-ms-transition:all 0.30s ease-in-out;
-o-transition:all 0.30s ease-in-out;
outline:none;
}

input[type=text]:focus,input[type=password]:focus, textarea:focus,select:focus {
-webkit-box-shadow:0 0 5px #9ed4ff;
-moz-box-shadow:0 0 5px #9ed4ff;
box-shadow:0 0 5px #9ed4ff;
border:1px solid #558ab7 !important;
}
input[type='text']{border:1px solid #a8a8a8;}

.placeholdersjs {color:#aaa !important}

/* 레이아웃 크기 지정 */
/* #hd, #wrapper, #ft {min-width:1200px} */

#hd_pop,
#hd_wrapper,
#tnb .inner,

#gnb .gnb_wrap,
#container_wr,
#ft_wr {width:100%}

/* 공통 - display none/block */
.is-hidden { display: none !important; }
.is-visible { display: block !important; }
img{max-width:100%;}
/* 공통 - 뷰포트 (pc / mobile) 별 display none/block */
.pc-only { display: none; }
@media (min-width: 769px) { .pc-only { display: block !important; }}
.mobile-only { display: block; }
@media (min-width: 769px) { .mobile-only { display: none !important; }}


.oneLineCut{overflow:hidden;white-space: nowrap; text-overflow: ellipsis;}
.secondLineCut{width:100%;height:50px;line-height:25px;overflow: hidden;
display: -webkit-box;
-webkit-line-clamp: 2;
-webkit-box-orient: vertical;}
.threeLineCut{width:100%;overflow: hidden;height:75px;line-height:25px;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;}

.container{position:relative;width:100%;max-width:1480px;padding:0px 20px;margin:0px auto;}

#header{position:fixed;top:0px;left:0px;width:100%;height:120px;display:flex;align-items:center;padding:0px;z-index: 1000;background-color:white; transition: all 0.3s ease;border-bottom:1px solid #eee;}
#header.scrolled {
	background-color:white;
	box-shadow: 0 2px 10px rgba(0,0,0,0.1);
	/*height:100px;*/
}

#header .logo a{display:flex;align-items:center;font-weight: 500; font-size: 24px;  }
#header .logo a img{width:100%;max-width:600px;max-height:100px;transition:all 0.3s;}
#header .logo a img.mobile{display:none;}
/*
#header.scrolled .logo a img{max-width:600px;max-height:100px;}
*/
#header .topMenu{display:grid;grid-template-columns:1fr 730px;align-items:center;}

#header .nav-menu { list-style: none;	 display: flex;margin: 0 0px 0px auto; padding: 0;}
#header .nav-menu > li > a{padding:0px 30px;display:inline-flex;align-items:center;justify-content:center;height:38px;}
#header .nav-menu > li:last-child > a{padding-right:0px;}
#header .nav-item  { position: relative;}
#header .nav-link { display: block;	color: #333;font-size:18px;font-weight:500;}
#header.scrolled .nav-link{color:#333;}


/* 드롭다운 메뉴 스타일 */
#header .dropdown { padding:10px 0px;position: absolute;	top: 100%;	left: -0px;	background-color: white;	min-width: 130px;z-index: 1000;opacity: 0;	visibility: hidden;	transform: translateY(-10px); transition: all 0.3s ease;}
#header .dropdown.show { opacity: 1;	visibility: visible;	transform: translateY(0);}
#header .dropdown-item { display: block;	color: #333;	text-decoration: none;	padding: 7px 15px;	font-size: 14px;	transition: background-color 0.3s ease;	}
#header .dropdown-item:last-child { border-bottom: none;}
#header .dropdown-item:hover {color:black;}

#header .mobileOpen{display:none;font-size:38px;padding-top:5px;margin-left:20px;;}
#headPadding{height:120px;}
/*
#header.scrolled ~ #headPadding{height:60px;} 
*/
.mFooter, .mFooterPadding{display:none;}

#header .head_info{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;}

#header .head_info .sMenu{margin-right:20px;display:flex;align-items:center;justify-content:flex-end;font-size:18px;}
#header .head_info .sMenu  a{padding:0px 15px;}
#header .head_info .sMenu  a:hover, 
#header .head_info .sMenu  a.active{font-weight:800;color:red;}			

@media (max-width: 1180px) {
	#header .mobileOpen{display:block;}
	#header .nav-menu{display:none;}
	.sideNav .sideHead{padding:0px 20px;height:120px;display:flex;align-items:center;border-bottom:1px solid #eee;}
	.sideNav .sideHead .logo{flex:1;}
	.sideNav .sideHead .logo a{display:block;}
	.sideNav .sideHead .logo img{width:100%;max-width:400px;max-height:100px;}
	.sideNav .sideHead .closebtn{margin-left:auto;font-size:32px;color:#333;}
	.sideNav .sideBody{height:calc(100% - 120px);background-color:#fff;padding:20px 0px;overflow-y:auto;}

	/* Side Language Switch */
	.sideNav .side-lang-switch{padding:20px 30px;display:flex;justify-content:center;align-items:center;gap:10px;border-bottom:2px solid #f0f0f0;}
	.sideNav .side-lang-switch .lang-btn{display:inline-flex;align-items:center;justify-content:center;width:150px;height:45px;padding:0px 20px;font-size:16px;font-weight:600;color:#666;background-color:#f5f5f5;border:2px solid #e0e0e0;border-radius:25px;transition:all 0.3s ease;}
	.sideNav .side-lang-switch .lang-btn:hover{background-color:#e8e8e8;border-color:#ccc;}
	.sideNav .side-lang-switch .lang-btn.active{background-color:#002244;color:white;border-color:#002244;}

	/* Side Menu */
	.sideNav .side-menu{padding:10px 0px;}
	.sideNav .side-menu a{display:block;padding:18px 30px;font-size:18px;color:#333;font-weight:500;border-bottom:1px solid #f0f0f0;transition:all 0.3s ease;}
	.sideNav .side-menu a:hover{background-color:#f5f5f5;padding-left:35px;}
	.sideNav .side-menu a.button{margin:10px 30px;padding:12px 25px;background-color:#002244;color:white;border-radius:25px;border-bottom:none;text-align:center;}
	.sideNav .side-menu a.button:hover{background-color:#003366;padding-left:25px;}

	/* Side Member Buttons */
	.sideNav .member{padding:30px 30px 20px 30px;display:flex;flex-direction:row;gap:12px;margin-top:20px;}
	.sideNav .member a.button{display:flex;align-items:center;justify-content:center;flex:1;height:55px;font-size:18px;font-weight:600;color:white;background-color:#002244;border-radius:30px;transition:all 0.3s ease;box-shadow:0 2px 8px rgba(0,34,68,0.15);}
	.sideNav .member a.button:hover{background-color:#003366;transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,34,68,0.25);}

	.sideNav .sideBody > ul > li{border-bottom:1px solid #eee;}
	.sideNav .sideBody > ul > li > a{display:block;padding:20px 30px;font-size:18px;color:#333;font-weight:500;}
	.sideNav .sideBody > ul > li > a:hover{background-color:#f5f5f5;}

	.sideNav .sideBody > ul > li > a.has-arrow::after{font-size:21px;font-weight:500;color:#333;}

	.sideNav .sideBody .sub-menu > ul{padding-bottom:0px;background-color:#f9f9f9;}
	.sideNav .sideBody .sub-menu ul a{display:block;padding:15px 30px 15px 50px;font-size:16px;color:#666;border-bottom:1px solid #eee;}
	.sideNav .sideBody .sub-menu ul a:hover{background-color:#f0f0f0;}
}

@media (max-width: 890px) {
	/*하단을 정의*/
	.mFooter, .mFooterPadding{display:block;}
	.mFooter{position:fixed;bottom:0px;left:0px;width:100%;height:60px;background-color:white;border-top:1px solid #ccc;box-shadow: 0 0 5px 2px rgba(0,0,0,.15);z-index:10000;}
	.mFooterPadding{width:100%;height:60px;background-color:white;}
	
	.mFooter ul{display:flex;align-items:center;}
	.mFooter ul li{position:relative;width:25%;}
	.mFooter ul li:after{position:absolute;top:50%;right:0px;display:block;content:"";width:1px;height:30px; background-color:#ddd;transform:translateY(-50%);}
	.mFooter ul li:last-child:after{display:none;}
	.mFooter ul li a{display:flex;align-items:center;justify-content:center;width:100%;height:60px;}
	.mFooter ul li a > div{width:100%;line-height:25px;text-align:center;color:#222;}
	.mFooter ul li a div.icon{font-size:20px;}
	.mFooter ul li a div.icon i{margin-right:0px;}
	.mFooter ul li a div.text{font-size:12px;}
}


/* Side Navigation Overlay */
.sideNav-overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: rgba(0, 0, 0, 0.5);
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease;
}
body.menu_open .sideNav-overlay {
	opacity: 1;
	visibility: visible;
}

/* The side navigation menu */
.sideNav {
	position: fixed;
	top: 0px;
	right: -90%;
	height: 100vh;
	width: 90%;
	max-width: 650px;
	z-index: 10000;
	background-color: white;
	overflow-x: hidden;
	transition: right 0.4s ease;
	box-shadow: -2px 0 10px rgba(0,0,0,0.2);
}
body.menu_open .sideNav{
	right: 0px;
}

.subTitle{margin-bottom:40px;font-size: 24px;font-weight: 700;text-align:center;}

/* Page Navigation */
.pageNavCon{background-color:#fff;width:100%;border-bottom:1px solid #e0e0e0;padding:10px 0 20px 0;}
.pageNav{width:100%;max-width:890px;margin:0px auto;display:flex;align-items:center;justify-content:center;gap:60px;padding:0;}
.pageNav a{position:relative;display:inline-flex;align-items:center;justify-content:center;height:70px;padding:0 80px;font-size:20px;font-weight:600;color:#666;text-decoration:none;transition:all 0.3s ease;background-color:transparent;}
.pageNav a::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:3px;background-color:#0B488D;transform:scaleX(0);transition:transform 0.3s ease;}
.pageNav a:hover::after{transform:scaleX(1);opacity:0.8}
.pageNav a:hover{color:#0B488D;}
.pageNav a.on{color:#0B488D;}
.pageNav a.on::after{transform:scaleX(1);}

#footer{padding:10px 0px 30px 0px;background-color:#14214d;color:white;}
#footer .menu{margin-bottom:40px;padding:30px 0px;display:flex;align-items:center;}
#footer .menu a{margin-right:20px;font-size:18px;color:#eee;}
#footer .menu a.privacy{font-weight:600;color:white;}

#footer .info{display:grid; grid-template-columns: 1fr 500px;}
#footer .info .logo{margin-right:100px;margin-bottom:20px;font-size:20px;font-weight:500;}
#footer .info .logo img{max-height:90px;}
#footer .info .cscenter{margin-bottom:10px;line-height:30px;font-size:18px;}
#footer .info .cscenter > div{display:flex;align-items:center;flex-wrap:wrap;}
#footer .info .cscenter .title{margin-bottom:20px;color:white;font-size:25px;font-weight:bold;}
#footer .info .cscenter .head{font-weight:600;margin-right:5px;color:#B4B9CC;}
#footer .info .cscenter .text{margin-right:15px;color:white;}
#footer .info .cscenter .text a{color:white;}
#footer .info .cscenter .addr-line2{margin-left:5px;}
#footer .copyright{padding:20px 0px;text-align:center;color:#B4B9CC;}

/*page background*/
/*
.pageBg{position:relative;width:100%;height:250px;background:url('/img/pages/notice_bg.jpg') no-repeat center center;background-size:cover;}
*/

.pageBg{
	position: relative;
	width: 100%;
	height: 370px;
	min-height: 370px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}

.pageBg .bg{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color:#002244;
	background-size: cover;
	background-position: center top;
	z-index: 1;
	opacity:0.4;
}

.pageBg .bg::after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 34, 68, 0.5);
	z-index: 2;
}

.pageBg .title{
	position: relative;
	z-index: 3;
	text-align: center;
	color: white;
}

body.en .pageBg .title{
	font-family: 'Open Sans', sans-serif;
}

body.kr .pageBg .title{
	font-family: 'Noto Sans KR', sans-serif;
}

.pageBg .title .text{
	font-size: 32px;
	font-weight: 600;
	margin-bottom: 15px;
	letter-spacing: -0.5px;
}
.pageBg .title .text .week{margin-left:3px;font-size:18px;}

.pageBg .title .head{
	font-size: 60px;
	font-weight: 700;
	letter-spacing: -0.5px;
}

#header .head_info .sMenu a.button {
margin:0px 5px;
  display: inline-flex;
  align-items:center;
  justify-content:center;
  height:40px;
  padding: 0px 30px;             /* 안쪽 여백 */
  background-color: #001f3f;      /* 주 배경: 진한 남색 (Navy) */
  color: white;                   /* 텍스트 색상 */
  text-decoration: none;
  font-size: 17px;
  font-weight: 500;
  border: none;
  border-radius: 20px;            /* 타원형 (pill shape) */
  transition: all 0.3s ease;      /* 부드러운 호버 효과 */
  cursor: pointer;
}

#header .head_info .sMenu a.button:hover {
  background-color: #003366;      /* 호버 시 조금 밝은 남색 */
}


body.pg_company .pageBg{background-image:url('/img/pages/company_bg.jpg');}
body.pg_company .pageBg .bg{}
.pageBg .pgTitle{position:absolute;top:221px;left:50%;text-align:center;color:white;font-weight:700;font-size:24px;transform:translateX(-50%);}

body.pg_program .pageBg{background-image:url('/img/pages/program_bg.jpg');}
body.pg_program .pageBg .bg{}

body.pg_qna .pageBg{background-image:url('/img/pages/qna_bg.jpg');}
body.pg_qna .pageBg .bg{}

body.pg_shop .pageBg{background-image:url('/img/pages/shop_bg.jpg');}
body.pg_shop .pageBg .bg{}

body.bo_notice .pageBg{background-image:url('/img/pages/notice_bg.jpg');}
body.bo_notice .pageBg .bg{}

iconify-icon{display:inline-block;}
.pgCont{padding:30px 0px 150px 0px;}

.pgCont .subTitle{margin-bottom:100px;line-height:40px;}
.pgCont .subTitle2{margin-bottom:10px;text-align:center;font-weight:500;font-size:16px;color:#0B488D}
body.pg_register_form .pgCont{padding-top:100px;}
/*page css*/

.ceoNum{display:flex;align-items:center;flex-wrap:wrap;}
.ceoNum .spanCon{display:flex;align-items:center;}
@media (max-width: 600px) { 
	.container{padding:0px 15px;}

	
	#footer .info .cscenter .title{font-size:20px;}
	#footer{padding:10px 0px 20px 0px;}
	#footer .menu{padding:15px 0px;}
	#footer .menu a{margin-right:15px;font-size:15px;}

	#footer .info .logo{font-size:18px;}
	#footer .info .cscenter{letter-spacing:-0.05em;}
	#footer .info .cscenter > div{display:flex;align-items:center;font-size:15px;}
	#footer .info .cscenter .text{margin-right:10px;}
	#footer .copyright{font-size:14px;}
}

@media (max-width: 480px) {
	/* 주소 줄바꿈: "마포타워 15층" 앞에서 줄바꿈 */
	#footer .info .cscenter .address{margin-bottom:3px;display:block;line-height:1.5;}
	#footer .info .cscenter .addr-line2{display:block;margin-left:0;}
	#footer .info .cscenter .head.business-num:before{display:block;content:"";}
}
@media (max-width: 410px) {
	/* Copyright 2줄 표시 */
	#footer .info .cscenter .copyright{text-align:left;line-height:1.4;}
	#footer .info .cscenter .copyright .copyright-line1,
	#footer .info .cscenter .copyright .copyright-line2{display:block;}
}
@media (max-width: 405px) {
	#footer .menu a{margin-right:10px;font-size:14px;}
	#footer .info .cscenter{font-size:14px;}
	#footer .copyright{font-size:14px;}

}

/* Floating Menu */
.floating-menu {
    position: fixed;
    bottom: 30px;
    right: 30px;
    display: none;
    flex-direction: column;
    gap: 0;
    z-index: 9999;
	
}

.floating-menu.show {
    display: flex;
	display:none;
}

.floating-btn {
    width: 60px;
    height: 60px;
    background-color: #002244;
    color: white;
    border: 1px solid #002244;
    border-radius: 0;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 3px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease;
    text-decoration: none;
    font-size: 10px;
    font-weight: 500;
}

/* TOP 버튼만 원형으로 */
#topBtn {
    border-radius: 50%;
    margin-bottom: 10px;
}

/* 나머지 메뉴들은 박스 형태로 붙이기 */
.floating-btn:not(#topBtn) {
    border-top: none;
}

.floating-btn:not(#topBtn):first-of-type {
    border-top: 1px solid #002244;
    border-radius: 8px 8px 0 0;
}

.floating-btn:not(#topBtn):last-of-type {
    border-radius: 0 0 8px 8px;
}

.floating-btn i {
    font-size: 20px;
    line-height: 1;
}

.floating-btn span {
    font-size: 10px;
    line-height: 1;
}

.floating-btn:hover {
    background-color: #fff;
    color: #002244;
    border-color: #002244;
}

/* Mobile Bottom Menu */
.mobile-bottom-menu {
    position: fixed;
    bottom: -80px;
    left: 0;
    width: 100%;
    height: 70px;
    background: #fff;
    border-top: 1px solid #e0e0e0;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.1);
    display: none;
    z-index: 9998;
    transition: bottom 0.3s ease;
}

.mobile-bottom-menu.show {
    bottom: 0 !important;
}

.mobile-bottom-menu .menu-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: #666;
    text-decoration: none;
    font-size: 11px;
    font-weight: 500;
    transition: all 0.3s ease;
}

.mobile-bottom-menu .menu-item:hover,
.mobile-bottom-menu .menu-item:active {
    background-color: #f5f5f5;
    color: #002244;
}

.mobile-bottom-menu .menu-item i {
    font-size: 24px;
    margin-bottom: 4px;
}

.mobile-bottom-menu .menu-item span {
    font-size: 13px;
    line-height: 1;
}

.time_kst{margin-bottom:10px;text-align:right;font-size:15px;color:#333;}
#footer .menu .admin{display:none;}
		
/* 반응형 - Floating Menu */
@media (max-width: 1400px) {
	#header .sMenu .admin{display:none;}
	#footer .menu .admin{display:inline-block;}
	#header .topMenu{grid-template-columns:1fr 700px;}
}
@media (max-width: 1180px) {
	#header .head_info .sMenu{display:none;}
	#header .topMenu{grid-template-columns:1fr auto;}
	#header .logo a img{max-height:42px;}
}
@media (max-width: 1080px) {
	#footer .menu{margin-bottom:25px;}
	#footer .info{display:block;}
	#footer .info .logo{margin-bottom:40px;margin-right:0px;}
	#footer .info .logo img{width:100%;max-width:450px;}
	.pgCont {padding-bottom:100px;}
}
@media (max-width: 980px) {
	.pageBg{height:300px;min-height:300px;}
	.pageBg .title .text{font-size:24px;}
	.pageBg .title .text .week{font-size:15px;}
	.pageBg .title .head{font-size:45px;}
	.pgCont {padding-bottom:80px;}
}
@media (max-width: 768px) {
	#header .lang-switch{display:flex;align-items:center;}
	#header .lang-switch a{padding-bottom:2px;}
	.container{padding:0px 20px;}
	.pageBg{height:250px;min-height:250px;}
	.pageBg .title .text{font-size:20px;}
	.pageBg .title .text .week{font-size:13px;}
	.pageBg .title .head{font-size:35px;line-height:1.1}
	#header .logo a img {max-height:35px;}
	.pgCont {padding:30px 0px 60px 0px;}
	#header {height:80px;}
	#headPadding{height:80px;}
	.sideNav .sideHead{height:80px;}
	.sideNav .sideHead .logo img{max-height:60px;}
	.sideNav .sideBody{height:calc(100% - 80px);}
	.sideNav .side-lang-switch{padding:15px 20px;}
	.sideNav .side-lang-switch .lang-btn{width:120px;height:40px;font-size:15px;}
	.sideNav .side-menu a{padding:15px 25px;font-size:17px;}
	.sideNav .side-menu a.button{margin:10px 25px;}
	.sideNav .member{padding:25px 25px 15px 25px;}
	.sideNav .member a.button{height:50px;font-size:17px;}
    .floating-menu {
        bottom: 20px;
        right: 20px;
        gap: 0;
    }

    .floating-btn {
        width: 55px;
        height: 55px;
    }

    #topBtn {
        margin-bottom: 8px;
    }

    .floating-btn i {
        font-size: 18px;
    }

    .floating-btn span {
        font-size: 9px;
    }
	.pageNavCon {padding:0px;}
	.pageNav{gap:0px;}
	.pageNav a{width:50%;height:65px;padding:0px;font-size:clamp(1.6rem, 3.8vw, 1.8rem);}	
}

@media (max-width: 650px) {
	#header .logo a img {width:100%;max-width:280px;}
	#header .mobileOpen{margin-left:10px;}

	/* 650px 이하에서 floating-menu의 a 태그 숨기기 */
	.floating-menu a.floating-btn {
		display: none;
	}

	/* 650px 이하에서 mobile-bottom-menu 보이기 */
	.mobile-bottom-menu {
		display: grid;
		grid-template-columns: repeat(4, 1fr);
	}
}

@media (max-width: 600px) {
	.pageBg{height:220px;min-height:220px;}
	
}

@media (max-width: 480px) {
	#header .container{padding:0px 10px;}
	#header .mobileOpen{margin-left:5px;}
	
	.pageBg{height:180px;min-height:180px;}
	.pageBg .title .text{font-size:16px;}
	.pageBg .title .head{font-size:26px;}
	.sideNav{width:100%;max-width:none;right:-100%;}
	body.menu_open .sideNav{right:0px;}
	.sideNav .sideHead{padding:0px 15px;}
	.sideNav .sideHead .logo img{max-width:clamp(25rem, 6.4vw, 28rem);max-height:50px;}
	.sideNav .sideHead .closebtn{font-size:28px;}
	.sideNav .side-lang-switch{padding:15px 20px;}
	.sideNav .side-lang-switch .lang-btn{width:110px;height:38px;font-size:14px;padding:0px 15px;}
	.sideNav .side-menu a{padding:15px 20px;font-size:16px;}
	.sideNav .side-menu a:hover{padding-left:25px;}
	.sideNav .side-menu a.button{margin:10px 20px;}
	.sideNav .member{padding:20px 20px 15px 20px;}
	.sideNav .member a.button{height:48px;font-size:16px;}
	.sideNav .sideBody > ul > li > a{padding:15px 20px;font-size:16px;}
	.sideNav .sideBody .sub-menu ul a{padding:12px 20px 12px 40px;font-size:15px;}
	#header .logo a img {max-width:220px;}
	#header .logo a img.mobile{display:inline-block;}
	#header .logo a img.pc{display:none;}
}

@media (max-width: 420px) {
	#header .lang-switch{font-size:16px;}
	.pageBg .title .text .divider{display:block;font-size:0;line-height:0;}
    .floating-menu {
        bottom: 90px;
        right: 15px;
        gap: 0;
    }

    .floating-btn {
        width: 50px;
        height: 50px;
    }

    #topBtn {
        margin-bottom: 8px;
    }

    .floating-btn i {
        font-size: 16px;
    }

    .floating-btn span {
        font-size: 8px;
    }
	
	#header .logo a img {max-width:clamp(16rem, 4.3vw, 18rem);}
}
@media (max-width: 350px) {
	.container{padding:0px 10px;}
}