

*{box-sizing:border-box}

html{scroll-behavior:smooth;scroll-padding-top:100px;-webkit-tap-highlight-color:transparent}
body{
	margin:0; background:var(--c-bg); color:var(--c-fg);
	font-family:var(--ff); font-size:var(--fs-body); line-height:1.75;
	word-break:keep-all; -webkit-font-smoothing:antialiased;
	overflow-x:hidden;
}
input,select,textarea{font-family:inherit}
img{max-width:100%; display:block}
a{color:inherit; text-decoration:none}
button{font:inherit; color:inherit; border:0; background:none; cursor:pointer}
h1,h2,h3,h4{margin:0; line-height:1.35; letter-spacing:-.02em; font-weight:700}
p{margin:0}
ul,ol{margin:0; padding:0; list-style:none}

:focus-visible{outline:3px solid var(--c-accent); outline-offset:3px; border-radius:0}

i[class*="xi-"], i[class*="fa-"]{
	display:inline-block; line-height:1; font-style:normal; vertical-align:-.08em;
}
i[class*="xi-"]{font-size:1.1em}

.sr-only,
.sound_only{
	position:absolute; left:0; width:1px; height:1px; padding:0; margin:-1px;
	overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}
.wrap{--wrap-pad:1.25rem; width:100%; max-width:var(--wrap); margin:0 auto; padding:0 var(--wrap-pad)}

#hd_pop{position:relative; z-index:1000; height:0}
#hd_pop h2{
	position:absolute; width:1px; height:1px; padding:0; margin:-1px;
	overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}
.hd_pops{position:absolute; background:var(--c-surface); box-shadow:var(--sh-2)}
.hd_pops_con{max-width:100%}
.hd_pops_con img{max-width:100%; height:auto}
.hd_pops_footer{display:flex; background:var(--c-deep)}
.hd_pops_footer button{
	flex:1 1 auto; padding:.7rem .5rem; border:0; background:transparent;
	color:var(--c-on-deep); font-size:.8125rem; cursor:pointer;
}
.hd_pops_footer button:hover{background:var(--ft-soft)}
.hd_pops_footer .hd_pops_close{flex:0 0 auto; padding-left:1rem; padding-right:1rem}

.btn{
	display:inline-flex; align-items:center; gap:.6rem;
	min-height:48px; padding:.7rem 1.25rem;
	border-radius:0; font-weight:600; font-size:var(--fs-sm);
	transition:transform .35s var(--ez), box-shadow .35s var(--ez), background-color .3s var(--ez);
	white-space:nowrap;
}
.btn i{line-height:1}
.btn--primary{background:var(--c-accent); color:var(--c-on-accent); box-shadow:var(--sh-accent)}
.btn--primary:hover{background:var(--c-accent-deep); transform:translateY(-3px)}
.btn--primary:active{transform:scale(.98)}

.btn--ghost{
	background:var(--glass-nav-hover); color:var(--glass-nav-text);
	border:1px solid var(--glass-nav-edge);
	backdrop-filter:blur(6px);
}
.btn--ghost:hover{background:var(--glass-nav-line); transform:translateY(-3px)}
.btn--ghost:active{transform:scale(.98)}

.btn--quiet{background:var(--c-surface); color:var(--c-fg); border:1px solid var(--c-line); box-shadow:var(--sh-1)}
.btn--quiet:hover{transform:translateY(-3px); box-shadow:var(--sh-2)}
.btn--quiet:active{transform:scale(.98)}

.hdr{
	position:fixed; inset:0 0 auto 0; z-index:100;
	height:76px;
	transition:background-color .45s var(--ez), box-shadow .45s var(--ez), border-color .45s var(--ez);
	border-bottom:1px solid transparent;
}
.hdr__in{
	height:76px; display:flex; align-items:center; gap:1rem;
	max-width:var(--wrap); margin:0 auto; padding:0 1.25rem;
}
.brand{
	display:inline-flex; align-items:center; gap:.65rem; flex:none;
	color:var(--glass-nav-text); transition:color .45s var(--ez);
}
.brand__name{
	font-size:1.25rem; line-height:1; font-weight:800; letter-spacing:-.055em;
}
.brand__dot{color:var(--glass-nav-text); transition:color .45s var(--ez)}
.brand__type{
	position:relative; padding-left:.7rem;
	font-size:.625rem; line-height:1; font-weight:700;
	letter-spacing:.2em; text-transform:uppercase;
	color:rgba(255,255,255,.76); transition:color .45s var(--ez);
}
.brand__type::before{
	content:""; position:absolute; left:0; top:50%;
	width:1px; height:18px; background:rgba(255,255,255,.34);
	transform:translateY(-50%); transition:background-color .45s var(--ez);
}

.hdr__in>nav{flex:none}
.hdr--menu-left .hdr__in>nav{margin-right:auto}
.hdr--menu-center .hdr__in>nav{margin-left:auto; margin-right:auto}
.hdr--menu-right .hdr__in>nav{margin-left:auto}
.gnb{display:none}
.gnb>li{position:relative}
.gnb__a{
	display:flex; align-items:center; gap:.3rem; white-space:nowrap;
	height:76px; padding:0 1.05rem; font-weight:600; font-size:.95rem;
	color:var(--glass-nav-text); transition:color .45s var(--ez);
}

.sub{
	position:absolute; top:70px; left:50%;
	min-width:212px; max-width:calc(100vw - 24px); border-radius:0;

	background:linear-gradient(180deg, var(--glass-nav-top) 0%, var(--glass-nav-mid) 55%, var(--glass-nav-btm) 100%);
	border:0;
	border-top:2px solid var(--glass-nav-edge);
	box-shadow:var(--sh-3);
	opacity:0; visibility:hidden; pointer-events:none;

	transform:translateX(calc(-50% + var(--sub-shift, 0px))) translateY(8px);

	transition:opacity .3s var(--ez-out), transform .3s var(--ez-out), visibility 0s .3s;
}
.sub::before{
	content:""; position:absolute; left:50%; top:-10px;
	width:0; height:0; transform:translateX(calc(-50% - var(--sub-shift, 0px)));
	border-left:8px solid transparent;
	border-right:8px solid transparent;
	border-bottom:8px solid var(--glass-nav-edge);
}

@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){
	.sub{-webkit-backdrop-filter:blur(24px) saturate(180%); backdrop-filter:blur(24px) saturate(180%)}
}

.sub__core{padding:.35rem}

.sub[data-cols] .sub__core{
	display:grid; grid-auto-flow:column;
	grid-template-rows:repeat(var(--sub-rows,6), auto);
}
.sub[data-cols="2"]{min-width:412px}
.sub[data-cols="3"]{min-width:612px}
.sub a{
	display:flex; align-items:center; gap:.5rem;
	padding:.68rem .95rem; border-radius:0;
	font-size:.9rem; color:var(--glass-nav-sub); text-align:left;
	transition:background-color .24s var(--ez), color .24s var(--ez);
}

.sub a::before{
	content:""; width:2px; height:1.05em; flex:0 0 2px;
	background:var(--c-accent); border-radius:0;
	transform:scaleY(0); transform-origin:center;
	transition:transform .24s var(--ez-out);
}
.sub a:hover,
.sub a:focus-visible{background:var(--glass-nav-hover); color:var(--glass-nav-text)}
.sub a:hover::before,
.sub a:focus-visible::before{transform:scaleY(1)}
.gnb>li:hover .sub,
.gnb>li.is-open .sub{
	opacity:1; visibility:visible; pointer-events:auto;
	transform:translateX(calc(-50% + var(--sub-shift, 0px))) translateY(0);
	transition:opacity .3s var(--ez-out), transform .3s var(--ez-out), visibility 0s;
}

.util{display:none; align-items:center; justify-content:flex-end; gap:.1rem; flex:none}
.util__b{
	position:relative;
	display:inline-flex; align-items:center; justify-content:center; gap:.4rem;
	min-width:44px; height:44px; padding:0 .55rem;
	border-radius:0; font-size:.9rem; font-weight:600;
	color:var(--c-on-accent);
	transition:color .45s var(--ez), background-color .3s var(--ez);
}
.util__b i{font-size:1.25rem; line-height:1}

.util__b span{
	position:absolute; width:1px; height:1px; padding:0; margin:-1px;
	overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}
.util__b:hover{background:rgba(255,255,255,.16)}
.util__sep{
	width:1px; height:20px; margin:0 .3rem; flex:none;
	background:rgba(255,255,255,.3); transition:background-color .45s var(--ez);
}

.srch{
	position:absolute; top:100%; left:0; right:0; border-radius:0;
	background:linear-gradient(135deg, rgba(255,255,255,.1), rgba(255,255,255,.02)), var(--glass-nav-bg);
	border-top:2px solid var(--glass-nav-edge);
	border-bottom:0;
	box-shadow:var(--sh-3);
	opacity:1; visibility:hidden; pointer-events:none;
	transform:none;
	transition:none;
}

@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){
	.srch{-webkit-backdrop-filter:blur(24px) saturate(180%); backdrop-filter:blur(24px) saturate(180%)}
}
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){
	.srch{background:var(--glass-solid)}
}
.hdr.is-search .srch{
	opacity:1; visibility:visible; pointer-events:auto; transform:none;
	transition:none;
}
.srch__in{
	display:flex; align-items:center; gap:.5rem;
	max-width:var(--wrap); margin:0 auto; padding:1rem 1.25rem;
}
.srch__f{flex:1 1 auto; min-width:0; display:flex; align-items:center; gap:.5rem}
.srch__f input{
	flex:1 1 auto; min-width:0; height:48px; padding:0 .95rem;
	border-radius:0; border:1px solid var(--c-line);
	background:var(--c-surface); color:var(--c-fg); font:inherit;
}
.srch__f input::placeholder{color:var(--c-fg-3)}
.srch__f input:focus,
.srch__f input:focus-visible,
.mnav__srch input:focus,
.mnav__srch input:focus-visible{outline:0;box-shadow:none}
.srch__go{
	flex:none; min-height:48px; padding:0 1.15rem; border-radius:0;
	display:inline-flex; align-items:center; gap:.4rem;
	background:var(--c-accent); color:var(--c-on-accent); font-weight:600; font-size:var(--fs-sm);
	transition:background-color .3s var(--ez);
}
.srch__go:hover{background:var(--c-accent-deep)}
.srch__x{
	flex:none; width:44px; height:44px; border-radius:0;
	display:flex; align-items:center; justify-content:center;
	color:var(--glass-nav-sub); font-size:1.3rem;
	transition:background-color .3s var(--ez), color .3s var(--ez);
}
.srch__x:hover{background:var(--glass-nav-hover); color:var(--glass-nav-text)}

.smap{
	position:fixed; inset:0 0 auto 0; z-index:120;
	opacity:1; visibility:hidden; pointer-events:none;
	transition:none;
}
.smap.is-open{
	opacity:1; visibility:visible; pointer-events:auto;
	transition:none;
}

.smap__bg{position:fixed; inset:0; background:transparent}
.smap__panel{
	position:relative; margin-top:76px; border-radius:0;
	max-height:calc(100vh - 76px); overflow-y:auto;

	background:linear-gradient(180deg, var(--glass-nav-top) 0%, var(--glass-nav-mid) 55%, var(--glass-nav-btm) 100%);
	border:0;
	border-top:2px solid var(--glass-nav-edge);
	box-shadow:var(--sh-3);
	transform:none;
	transition:none;
}

@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){
	.smap__panel{-webkit-backdrop-filter:blur(24px) saturate(180%); backdrop-filter:blur(24px) saturate(180%)}
}
.smap__hd{
	display:flex; align-items:center; justify-content:flex-end;
	max-width:var(--wrap); margin:0 auto; padding:.6rem 1.25rem 0;
}
.smap__x{
	width:44px; height:44px; border-radius:0;
	display:flex; align-items:center; justify-content:center;
	font-size:1.4rem; color:var(--glass-nav-sub);
	transition:background-color .3s var(--ez), color .3s var(--ez);
}
.smap__x:hover{background:var(--glass-nav-hover); color:var(--glass-nav-text)}

.smap__nav{
	max-width:var(--wrap); margin:0 auto; padding:.5rem 1.25rem 1.75rem;
}

.smap__g{
	display:grid; grid-template-columns:190px minmax(0,1fr); gap:0 1.25rem; align-items:start;
	padding:.9rem 0;
	border-top:1px solid var(--glass-nav-line);
}
.smap__g:first-child{border-top:0}

.smap__g h2{
	padding-top:.5rem;
	font-size:1rem; color:var(--glass-nav-text);
}
.smap__g h2 a{color:inherit}
.smap__links{display:flex; flex-wrap:wrap; gap:.1rem .25rem}

.smap__g a{
	display:flex; align-items:center; gap:.5rem;
	min-height:44px; padding:.5rem .7rem; border-radius:0;
	font-size:.9rem; color:var(--glass-nav-sub);
	transition:background-color .24s var(--ez), color .24s var(--ez);
}
.smap__g a::before{
	content:""; width:2px; height:1.05em; flex:0 0 2px;
	background:var(--c-accent);
	transform:scaleY(0); transform-origin:center;
	transition:transform .24s var(--ez-out);
}
.smap__g a:hover,
.smap__g a:focus-visible{background:var(--glass-nav-hover); color:var(--glass-nav-text)}
.smap__g a:hover::before,
.smap__g a:focus-visible::before{transform:scaleY(1)}
.burger{
	margin-left:auto; width:48px; height:48px; border-radius:0;
	display:flex; align-items:center; justify-content:center;
	font-size:1.5rem; color:var(--c-on-accent);
	-webkit-tap-highlight-color:transparent;
	transition:none;
}
.burger:hover,
.burger:focus,
.burger:focus-visible,
.burger:active{background:transparent;outline:0;box-shadow:none}

.hdr.is-solid, .hdr.is-menu{background:var(--c-surface); border-bottom-color:var(--c-line); box-shadow:var(--sh-1)}
.hdr.is-solid .brand, .hdr.is-menu .brand,
.hdr.is-solid .gnb__a, .hdr.is-menu .gnb__a,
.hdr.is-solid .util__b, .hdr.is-menu .util__b,
.hdr.is-solid .burger, .hdr.is-menu .burger{color:var(--c-fg)}
.hdr.is-solid .brand__dot, .hdr.is-menu .brand__dot{color:var(--c-primary)}
.hdr.is-solid .brand__type, .hdr.is-menu .brand__type{color:var(--c-fg-3)}
.hdr.is-solid .brand__type::before,
.hdr.is-menu .brand__type::before{background:var(--c-line)}
.hdr.is-solid .gnb__a:hover{color:var(--c-accent)}
.hdr.is-solid .burger:hover{background:transparent; color:var(--c-fg)}
.hdr.is-solid .util__b:hover, .hdr.is-menu .util__b:hover{background:var(--c-surface-2); color:var(--c-accent-deep)}
.hdr.is-solid .util__sep, .hdr.is-menu .util__sep{background:var(--c-line)}
.hdr.is-menu .burger,
.hdr.is-menu .burger:hover{background:transparent}

.hdr.is-solid .srch{
	background:var(--glass-solid);
	border-top-color:var(--c-accent);
	box-shadow:var(--sh-3), inset 0 1px 0 var(--glass-hi);
	-webkit-backdrop-filter:none;
	backdrop-filter:none;
}
.hdr.is-solid .srch__x{color:var(--c-fg-2)}
.hdr.is-solid .srch__x:hover{background:var(--glass-hover); color:var(--c-accent-deep)}

.hdr.is-solid .sub{
	background:var(--glass-solid);
	border-color:var(--glass-line);
	border-top-color:var(--c-accent);
	box-shadow:var(--sh-3), inset 0 1px 0 var(--glass-hi);
	-webkit-backdrop-filter:none;
	backdrop-filter:none;
}
.hdr.is-solid .sub::before{border-bottom-color:var(--c-accent)}
.hdr.is-solid .sub a{color:var(--c-fg-2)}
.hdr.is-solid .sub a:hover,
.hdr.is-solid .sub a:focus-visible{background:var(--glass-hover); color:var(--c-accent-deep)}

.smap.is-solid .smap__panel{
	background:var(--glass-solid);
	border-top-color:var(--c-accent);
	border-bottom-color:var(--glass-line);
	box-shadow:var(--sh-3), inset 0 1px 0 var(--glass-hi);
	-webkit-backdrop-filter:none;
	backdrop-filter:none;
}
.smap.is-solid .smap__x,
.smap.is-solid .smap__g a{color:var(--c-fg-2)}
.smap.is-solid .smap__g h2{border-bottom-color:var(--c-line); color:var(--c-fg)}
.smap.is-solid .smap__g{border-top-color:var(--c-line)}
.smap.is-solid .smap__x:hover,
.smap.is-solid .smap__g a:hover,
.smap.is-solid .smap__g a:focus-visible{background:var(--glass-hover); color:var(--c-accent-deep)}

.mnav{
	position:fixed; inset:76px 0 0 0; z-index:99;
	background:var(--c-surface); overflow-y:auto; padding:1rem 1.25rem 3rem;
	opacity:0; visibility:hidden; transform:translateY(-8px);
	transition:opacity .35s var(--ez-out), transform .35s var(--ez-out), visibility 0s .35s;
}
.mnav.is-open{
	opacity:1; visibility:visible; transform:translateY(0);
	transition:opacity .35s var(--ez-out), transform .35s var(--ez-out), visibility 0s;
}
.mnav__item{border-bottom:1px solid var(--c-line-soft)}
.mnav__btn{
	width:100%; display:flex; align-items:center; justify-content:space-between;
	min-height:56px; font-weight:700; font-size:1rem; text-align:left;
}
.mnav__btn i{color:var(--c-fg-3); transition:transform .4s var(--ez-out)}
.mnav__item.is-open .mnav__btn i{transform:rotate(180deg)}
.mnav__panel{display:none; padding:0 0 .75rem}
.mnav__panel a{display:block; min-height:44px; padding:.6rem .9rem; color:var(--c-fg-2); border-radius:0}
.mnav__panel a:hover{background:var(--c-accent-soft); color:var(--c-accent-deep)}

.mnav__srch{display:flex; gap:.5rem; margin-bottom:1.1rem}
.mnav__srch input{
	flex:1 1 auto; min-width:0; height:48px; padding:0 .95rem;
	border-radius:0; border:1px solid var(--c-line);
	background:var(--c-surface); color:var(--c-fg); font:inherit;
}
.mnav__srch input::placeholder{color:var(--c-fg-3)}
.mnav__srch button{
	flex:none; width:48px; height:48px; border-radius:0;
	display:flex; align-items:center; justify-content:center;
	background:var(--c-accent); color:var(--c-on-accent); font-size:1.2rem;
}
.mnav__mem{display:flex; gap:.5rem; margin-bottom:1.25rem}
.mnav__mem button, .mnav__mem a{
	flex:1 1 0; min-height:48px; border-radius:0;
	display:inline-flex; align-items:center; justify-content:center; gap:.45rem;
	border:1px solid var(--c-line); background:var(--c-surface);
	font-size:var(--fs-sm); font-weight:600; color:var(--c-fg);
}
.mnav__mem i{font-size:1.15rem}
.mnav__mem button:hover, .mnav__mem a:hover{background:var(--c-accent-soft); color:var(--c-accent-deep)}

.mnav__quick{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.5rem; margin-top:1.5rem}
.mnav__quick-item{
	min-height:52px; border-radius:0;
	display:inline-flex; align-items:center; justify-content:center; gap:.45rem;
	border:1px solid var(--c-line); background:var(--c-surface);
	font-size:var(--fs-sm); font-weight:600; color:var(--c-fg);
}
.mnav__quick-item i{color:var(--c-accent); font-size:1.15rem}
.mnav__quick-item:hover{background:var(--c-accent-soft); color:var(--c-accent-deep)}
.mnav__quick-item:hover i{color:var(--c-accent-deep)}

.devm-loading{
	position:fixed; inset:0; z-index:99800;
	display:flex; flex-direction:column; align-items:center; justify-content:center; gap:22px;
	transition:opacity .45s ease, visibility .45s ease;
}
.devm-loading.is-done{pointer-events:none}
.devm-loading.is-exit-fade.is-done{opacity:0; visibility:hidden}
.devm-loading__logo{max-width:200px; max-height:44px; opacity:.92}

.devm-loading__pane{
	position:absolute; inset:0; background:var(--ldbg, #0F172A);
	transition:transform .55s cubic-bezier(.65, 0, .35, 1);
}
.devm-loading__logo,
.devm-loading__spin{position:relative; z-index:1}
.devm-loading.is-done .devm-loading__logo,
.devm-loading.is-done .devm-loading__spin{opacity:0; transition:opacity .22s ease}

.devm-loading.is-exit-split-x .devm-loading__pane{right:auto; width:50%}
.devm-loading.is-exit-split-x .devm-loading__pane--b{right:0; left:auto}
.devm-loading.is-exit-split-x.is-done .devm-loading__pane--a{transform:translateX(-100%)}
.devm-loading.is-exit-split-x.is-done .devm-loading__pane--b{transform:translateX(100%)}

.devm-loading.is-exit-split-y .devm-loading__pane{bottom:auto; height:50%}
.devm-loading.is-exit-split-y .devm-loading__pane--b{top:auto; bottom:0}
.devm-loading.is-exit-split-y.is-done .devm-loading__pane--a{transform:translateY(-100%)}
.devm-loading.is-exit-split-y.is-done .devm-loading__pane--b{transform:translateY(100%)}

.devm-loading.is-exit-up.is-done .devm-loading__pane{transform:translateY(-100%)}
.devm-loading.is-exit-down.is-done .devm-loading__pane{transform:translateY(100%)}

@media (prefers-reduced-motion:reduce){
	.devm-loading__pane{transition:none}
	.devm-loading.is-done{opacity:0; visibility:hidden}
}

.devm-loading__spin{--ldc:rgba(255,255,255,.85); display:block}
.devm-loading__spin i{display:none}

.devm-loading__spin.is-ring{
	width:38px; height:38px; border-radius:50%;
	border:3px solid currentColor; border-top-color:var(--ldc); color:rgba(128,128,128,.28);
	animation:heroSpin .8s linear infinite;
}
@keyframes heroSpin{to{transform:rotate(360deg)}}

.devm-loading__spin.is-dots{display:flex; gap:9px}
.devm-loading__spin.is-dots i{
	display:block; width:11px; height:11px; border-radius:50%; background:var(--ldc);
	animation:devmLdDots 1.1s ease-in-out infinite;
}
.devm-loading__spin.is-dots i:nth-child(2){animation-delay:.16s}
.devm-loading__spin.is-dots i:nth-child(3){animation-delay:.32s}
@keyframes devmLdDots{
	0%,80%,100%{opacity:.3; transform:translateY(0)}
	40%{opacity:1; transform:translateY(-8px)}
}

.devm-loading__spin.is-bar{
	position:relative; width:180px; height:3px; overflow:hidden;
	background:rgba(128,128,128,.28);
}
.devm-loading__spin.is-bar i:first-child{
	display:block; position:absolute; inset:0; width:40%; background:var(--ldc);
	animation:devmLdBar 1.3s cubic-bezier(.4,0,.2,1) infinite;
}
@keyframes devmLdBar{
	from{transform:translateX(-100%)}
	to{transform:translateX(350%)}
}

.devm-loading__spin.is-pulse{position:relative; width:52px; height:52px}
.devm-loading__spin.is-pulse i{
	display:block; position:absolute; inset:0; border-radius:50%;
	border:2px solid var(--ldc); opacity:0;
	animation:devmLdPulse 1.8s cubic-bezier(.2,.6,.3,1) infinite;
}
.devm-loading__spin.is-pulse i:nth-child(2){animation-delay:.6s}
.devm-loading__spin.is-pulse i:nth-child(3){animation-delay:1.2s}
@keyframes devmLdPulse{
	0%{transform:scale(.25); opacity:.9}
	100%{transform:scale(1); opacity:0}
}

.devm-loading__spin.is-square{
	width:34px; height:34px; border:3px solid var(--ldc);
	animation:devmLdSquare 1.6s cubic-bezier(.6,0,.4,1) infinite;
}
@keyframes devmLdSquare{
	0%{transform:rotate(0) scale(1)}
	50%{transform:rotate(180deg) scale(.55)}
	100%{transform:rotate(360deg) scale(1)}
}

.devm-loading__spin.is-orbit{
	position:relative;
	width:44px;
	height:44px;
}
.devm-loading__spin.is-orbit i{
	position:absolute;
	top:18px;
	left:18px;
	display:block;
	width:8px;
	height:8px;
	border-radius:50%;
	background:var(--ldc);
	animation:devmLdOrbit 1.2s linear infinite;
}
.devm-loading__spin.is-orbit i:nth-child(2){animation-delay:-.4s}
.devm-loading__spin.is-orbit i:nth-child(3){animation-delay:-.8s}
@keyframes devmLdOrbit{
	from{transform:rotate(0) translateX(16px)}
	to{transform:rotate(360deg) translateX(16px)}
}

.devm-loading__spin.is-bounce{
	display:flex;
	align-items:flex-end;
	gap:7px;
	height:38px;
}
.devm-loading__spin.is-bounce i{
	display:block;
	width:10px;
	height:10px;
	border-radius:50%;
	background:var(--ldc);
	animation:devmLdBounce .9s ease-in-out infinite alternate;
}
.devm-loading__spin.is-bounce i:nth-child(2){animation-delay:.15s}
.devm-loading__spin.is-bounce i:nth-child(3){animation-delay:.3s}
@keyframes devmLdBounce{
	from{transform:translateY(0)}
	to{transform:translateY(-20px)}
}

.devm-loading__spin.is-wave{
	display:flex;
	align-items:center;
	gap:5px;
	height:38px;
}
.devm-loading__spin.is-wave i{
	display:block;
	width:6px;
	height:30px;
	background:var(--ldc);
	animation:devmLdWave .9s ease-in-out infinite;
}
.devm-loading__spin.is-wave i:nth-child(2){animation-delay:.12s}
.devm-loading__spin.is-wave i:nth-child(3){animation-delay:.24s}
@keyframes devmLdWave{
	0%,100%{transform:scaleY(.35)}
	50%{transform:scaleY(1)}
}

.devm-loading__spin.is-flip{
	width:34px;
	height:34px;
	background:var(--ldc);
	animation:devmLdFlip 1.2s ease-in-out infinite;
}
@keyframes devmLdFlip{
	0%{transform:perspective(80px) rotateX(0) rotateY(0)}
	50%{transform:perspective(80px) rotateX(-180deg) rotateY(0)}
	100%{transform:perspective(80px) rotateX(-180deg) rotateY(-180deg)}
}

.devm-loading__spin.is-dual{
	position:relative;
	width:42px;
	height:42px;
}
.devm-loading__spin.is-dual::before,
.devm-loading__spin.is-dual::after{
	position:absolute;
	inset:0;
	border:3px solid transparent;
	border-radius:50%;
	content:"";
}
.devm-loading__spin.is-dual::before{
	border-top-color:var(--ldc);
	border-bottom-color:var(--ldc);
	animation:devmLdDual 1s linear infinite;
}
.devm-loading__spin.is-dual::after{
	inset:7px;
	border-right-color:var(--ldc);
	border-left-color:var(--ldc);
	animation:devmLdDual .75s linear infinite reverse;
}
@keyframes devmLdDual{
	to{transform:rotate(360deg)}
}

@media (prefers-reduced-motion:reduce){
	.devm-loading{transition:none}
	.devm-loading__spin,
	.devm-loading__spin i,
	.devm-loading__spin::before,
	.devm-loading__spin::after{animation:none}
	.devm-loading__spin.is-dots i{opacity:.7}
	.devm-loading__spin.is-pulse i:first-child{opacity:.7}
	.devm-loading__spin.is-bar i:first-child{width:100%}
	.devm-loading__spin.is-orbit i:nth-child(1){transform:translateX(16px)}
	.devm-loading__spin.is-orbit i:nth-child(2){transform:rotate(120deg) translateX(16px)}
	.devm-loading__spin.is-orbit i:nth-child(3){transform:rotate(240deg) translateX(16px)}
}

.sec{padding:var(--sp-7) 0}

.sec--deep{background:var(--c-deep); color:var(--c-on-deep)}

.on-deep{
	--c-fg:var(--c-on-deep);
	--c-fg-2:var(--c-on-deep-2);
	--c-fg-3:var(--c-on-deep-3);
	--c-line:var(--c-deep-line);
	--c-line-soft:var(--c-deep-line-soft);
	--c-surface:transparent;
	--c-surface-2:var(--c-deep-surface-2);
	--c-surface-3:var(--c-deep-surface-3);
	--c-accent-deep:var(--c-deep-accent);
	--c-accent-soft:var(--c-deep-accent-soft);
}
.sec--soft{background:var(--c-surface-2)}
.sec--plain{background:var(--c-surface)}
.sec__head{max-width:680px; margin:0 auto var(--sp-5); text-align:center}
.sec__head h2{font-size:var(--fs-h2)}
.sec__head p{margin-top:.85rem; color:var(--c-fg-2)}
.sec__head--on-deep h2{color:var(--c-on-deep)}
.sec__head--on-deep p{color:var(--c-on-deep-2)}

.main-news{
	border-bottom:1px solid var(--c-line-soft);
}

.main-slider{
	overflow:hidden;
}

.main-slider__full{
	width:100%;
	padding:0;
}

.main-slider__full .devm02_lts-gslide__hd,
.main-slider__full .devm02_lts-vslide__hd{
	margin-right:max(1.25rem, calc((100vw - var(--wrap)) / 2 + 1.25rem));
	margin-left:max(1.25rem, calc((100vw - var(--wrap)) / 2 + 1.25rem));
}

.rv{opacity:0; transform:translateY(26px)}
.rv.is-in{
	opacity:1; transform:none;
	transition:opacity .85s var(--ez-out), transform .85s var(--ez-out);
	transition-delay:calc(var(--i, 0) * 90ms);
}

.abt{display:grid; gap:var(--sp-4); grid-template-columns:1fr}

.abt__lead{display:flex; flex-direction:column}
.abt__lead h2{font-size:var(--fs-h2)}
.abt__desc{margin-top:1rem; color:var(--c-fg-2); font-size:var(--fs-sm)}

.abt__shot{
	position:relative; margin:var(--sp-4) 0 0; flex:1;
	min-height:220px; overflow:hidden; box-shadow:var(--sh-1);
}
.abt__shot img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}

.abt__nav{display:flex; flex-direction:column; background:var(--c-surface); box-shadow:var(--sh-1)}
.abt__nav li{flex:1}
.abt__nav li + li{border-top:1px solid var(--c-line-soft)}

.abt__nav li > *{
	display:flex; align-items:center; gap:1rem; height:100%;
	padding:1.05rem 1.25rem;
	transition:background .35s var(--ez-out);
}
.abt__nav a:hover{background:var(--c-accent-soft)}
.abt__ico{
	flex:none; width:42px; height:42px;
	display:flex; align-items:center; justify-content:center;
	background:var(--c-accent-soft); color:var(--c-accent-deep); font-size:1.15rem;
	transition:background .35s var(--ez-out), color .35s var(--ez-out);
}
.abt__nav a:hover .abt__ico{background:var(--c-accent); color:var(--c-on-accent)}
.abt__txt{flex:1; min-width:0}
.abt__txt b{display:block; font-size:1rem; line-height:1.5}
.abt__txt em{
	display:block; font-style:normal; line-height:1.55;
	font-size:var(--fs-xs); color:var(--c-fg-3);
}
.abt__arw{
	flex:none; color:var(--c-fg-3); font-size:1.15rem;
	transition:transform .35s var(--ez-out), color .35s var(--ez-out);
}
.abt__nav a:hover .abt__arw{transform:translateX(4px); color:var(--c-accent-deep)}

.band{background:var(--c-deep); color:var(--c-on-deep); padding:var(--sp-6) 0}
.band__in{display:grid; gap:2rem; align-items:center; grid-template-columns:1fr}
.band__lead h2{font-size:var(--fs-h2); color:var(--c-on-deep)}
.band__lead p{margin-top:.75rem; color:var(--c-on-deep-2); font-size:var(--fs-sm)}
.band__nums{display:grid; gap:1rem; grid-template-columns:repeat(2,1fr)}
.num{
	padding:1.1rem 1.2rem; border-radius:0;
	background:var(--c-deep-2);
}
.num b{display:block; margin-bottom:.35rem; font-size:1.15rem; letter-spacing:-.03em; color:var(--c-on-deep); line-height:1.35}
.num span{font-size:var(--fs-xs); color:var(--c-on-deep-2)}

.rail{padding:.75rem; margin:-.75rem}
.rail .swiper-slide{height:auto}
.rail__item{
	display:block; height:100%;
	background:var(--c-surface); border-radius:0; overflow:hidden;
	box-shadow:var(--sh-1);
	transition:transform .5s var(--ez-out), box-shadow .5s var(--ez-out);
}
.rail__item:hover{transform:translateY(-6px); box-shadow:var(--sh-3)}

.rail__ctl{display:flex; align-items:center; justify-content:center; gap:1rem; margin-top:1.25rem}
.rail__nav{
	flex:none; width:44px; height:44px; border-radius:0;
	display:flex; align-items:center; justify-content:center;
	font-size:1.35rem; color:var(--c-fg-2);
	background:var(--c-surface); border:1px solid var(--c-line); box-shadow:var(--sh-1);
	transition:color .3s var(--ez), border-color .3s var(--ez), transform .35s var(--ez-out);
}
.rail__nav:hover{color:var(--c-accent-deep); border-color:var(--c-accent); transform:translateY(-2px)}
.rail__dots.swiper-pagination{
	position:static; width:auto; display:flex; align-items:center; gap:.4rem; line-height:0;
}
.rail__dots .swiper-pagination-bullet{
	width:8px; height:8px; margin:0; border-radius:999px;
	background:var(--c-line); opacity:1;
	transition:background-color .35s var(--ez), width .35s var(--ez-out);
}
.rail__dots .swiper-pagination-bullet-active{background:var(--c-accent); width:26px}
.rail__shot{position:relative; aspect-ratio:4/3; background:var(--c-surface-2)}
.rail__shot img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.rail__txt{padding:1rem 1.1rem 1.2rem}
.rail__txt h3{font-size:1rem}
.rail__txt p{margin-top:.35rem; color:var(--c-fg-3); font-size:var(--fs-xs)}
.rail__tag{
	display:inline-block; margin-bottom:.55rem; padding:.2rem .7rem;
	border-radius:0; background:var(--c-accent-soft); color:var(--c-accent-deep);
	font-size:var(--fs-xs); font-weight:700;
}

.notice{display:grid; gap:1.25rem; grid-template-columns:1fr}

.notice__card{background:var(--c-surface); box-shadow:var(--sh-1); padding:1.2rem 1.3rem 1.4rem}

.notice__pin{
	display:flex; flex-direction:column;
	background:var(--c-surface); border-radius:0; overflow:hidden;
	box-shadow:var(--sh-1);
	transition:transform .5s var(--ez-out), box-shadow .5s var(--ez-out);
}
.notice__pin:hover{transform:translateY(-6px); box-shadow:var(--sh-3)}
.meta{display:flex; align-items:center; gap:.6rem; font-size:var(--fs-xs); color:var(--c-fg-3)}
.meta b{
	padding:.15rem .6rem; border-radius:0;
	background:var(--c-accent-soft); color:var(--c-accent-deep); font-weight:700;
}

.stats{background:var(--c-deep); color:var(--c-on-deep); padding:var(--sp-4) 0}
.stats__list{display:grid; grid-template-columns:1fr 1fr; gap:1.4rem 1rem; list-style:none; margin:0; padding:0}
.stats__it{display:block; padding-left:1rem; border-left:2px solid var(--c-accent)}

.stats__top{display:flex; align-items:baseline; gap:.35rem; margin:0}

.stats__num{
	font-size:1.8rem; font-weight:800; letter-spacing:-.04em; line-height:1.1;
	font-variant-numeric:tabular-nums; font-feature-settings:"tnum" 1;
}
.stats__lb{color:var(--c-on-deep); font-size:var(--fs-xs); font-weight:700; white-space:nowrap}
.stats__it em{display:block; margin-top:.3rem; color:var(--c-on-deep-2); font-size:var(--fs-xs); font-style:normal}

.marq{padding:var(--sp-6) 0; background:var(--c-surface-2); overflow:hidden}

.marq__flow{overflow:hidden; cursor:grab; touch-action:pan-y}
.marq__flow.is-dragging{cursor:grabbing}
.marq__flow .swiper-wrapper{
	display:flex; gap:12px; width:max-content;
	will-change:transform; transition:none!important;
}
.marq__flow .swiper-slide{flex:0 0 auto; width:240px; height:auto}
.marq__row{display:flex; flex-wrap:wrap; gap:.75rem; justify-content:center}
.marq__row .marq__cell{width:240px}
.marq__item{
	display:grid; grid-template-columns:72px minmax(0,1fr); align-items:center; gap:1rem;
	height:100%; padding:.85rem 1rem;
	background:var(--c-surface); border:1px solid var(--c-line);
	transition:border-color .25s var(--ez);
}
a.marq__item:hover{border-color:var(--c-accent)}
.marq__m{
	display:flex; align-items:center; justify-content:center; overflow:hidden;
	width:72px; height:72px;
	color:var(--c-accent-deep); font-size:1.25rem;
}
.marq__m img{width:100%; height:100%; object-fit:contain}
.marq__m i{font-size:2.3rem}
.marq__brand--facebook{color:#1877f2}
.marq__brand--instagram{color:#e1306c}
.marq__brand--youtube{color:#ff0033}
.marq__brand--vimeo{color:#1ab7ea}
.marq__brand--linkedin{color:#0a66c2}
.marq__brand--pinterest{color:#e60023}
.marq__brand--discord{color:#5865f2}
.marq__brand--tiktok{color:var(--c-fg)}
.marq__t{
	min-width:0; color:var(--c-fg-2);
	font-size:var(--fs-xs); font-weight:600; line-height:1.45;
}

.sup{
	padding:var(--sp-7) 0 var(--sp-8);
}
.sup__grid{
	display:grid;
	gap:var(--sp-5);
}
.sup__lede{
	max-width:720px;
	margin:0 auto;
	text-align:center;
}
.sup__lede h2{
	font-size:var(--fs-h2);
}
.sup__lede p{
	max-width:54ch;
	margin:.85rem auto 0;
	color:var(--c-fg-2);
	font-size:var(--fs-sm);
	line-height:1.75;
}
.sup__list{
	display:grid;
	grid-template-columns:repeat(4,minmax(0,1fr));
	gap:1rem;
}
.sup__item{
	display:flex;
	align-items:center;
	gap:var(--sp-3);
	min-height:112px;
	padding:1.15rem 1.2rem;
	border:1px solid var(--c-line);
	background:var(--c-surface);
	color:var(--c-fg);
	transition:border-color .28s var(--ez),color .28s var(--ez);
}
.sup__ic{
	display:flex;
	flex:0 0 44px;
	align-items:center;
	justify-content:center;
	width:44px;
	height:44px;
	border-radius:0;
	background:var(--c-accent-soft);
	color:var(--c-accent-deep);
	font-size:1.15rem;
	transition:transform .34s var(--ez-out);
}
.sup__txt{flex:1 1 auto; min-width:0}
.sup__txt strong{display:block; font-size:1rem; font-weight:600}
.sup__txt span{display:block; margin-top:.2rem; font-size:var(--fs-xs); color:var(--c-fg-3)}
.sup__go{flex:0 0 auto; color:var(--c-fg-3); transition:transform .34s var(--ez-out), color .28s var(--ez)}
.sup__item:hover{
	border-color:var(--c-accent);
	color:var(--c-accent-deep);
}
.sup__item:hover .sup__ic{transform:translateY(-2px)}
.sup__item:hover .sup__txt span{color:var(--c-accent-deep)}
.sup__item:hover .sup__go{transform:translateX(4px); color:var(--c-accent-deep)}
.sup__item:focus-visible{outline:2px solid var(--c-accent); outline-offset:2px}

@media (max-width:1023px){
	.sup__list{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}
}

@media (max-width:599px){
	.sup__list{
		grid-template-columns:1fr;
		gap:.65rem;
	}
	.sup__item{
		min-height:96px;
		padding:1rem;
	}
}

.ft{background:var(--c-deep); color:var(--c-on-deep-2); padding:var(--sp-5) 0 2rem}

.ft__head{
	display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between;
	gap:1rem 1.5rem; padding-bottom:1.2rem; border-bottom:1px solid var(--ft-line);
}
.ft__policy{display:flex; flex-wrap:wrap; align-items:center; gap:.25rem 1.5rem}
.ft__policy a{
	display:inline-flex; align-items:center; min-height:44px;
	font-size:var(--fs-sm); transition:color .3s var(--ez);
}
.ft__policy a:hover{color:var(--c-on-deep)}

.ft__policy a.is-key{color:var(--c-on-deep); font-weight:700}

.ft__top{display:grid; gap:var(--sp-5); grid-template-columns:1fr; padding-top:1.6rem}

.ft__biz{font-size:var(--fs-xs); line-height:1.9}
.ft__brand{margin-bottom:.9rem;color:var(--c-on-deep)}

.ft__brand .brand__img{height:26px}
.ft__brand .brand__dot{color:var(--c-on-deep)}
.ft__brand .brand__type{color:var(--c-on-deep-2)}
.ft__brand .brand__type::before{background:var(--ft-line)}

.ft__biz dl{display:flex; flex-wrap:wrap; gap:.1rem 1.15rem; margin:0}
.ft__biz dl>div{display:flex; gap:.4rem}
.ft__biz dt{margin:0; flex:none}
.ft__biz dd{margin:0; color:var(--c-on-deep)}

.ft__biz dl>div.is-wide dd{word-break:keep-all}
.ft__copy{margin-top:1rem; font-size:var(--fs-xs); color:var(--c-on-deep-2)}

.ft__cs h2, .ft__cs h4{font-size:var(--fs-sm); color:var(--c-on-deep); letter-spacing:-.01em}
.ft__tel{
	display:inline-flex; align-items:center; gap:.55rem; margin-top:.35rem;
	font-size:clamp(1.6rem,3.4vw,2rem); font-weight:800; color:var(--c-on-deep); letter-spacing:-.02em;
}
.ft__tel i{font-size:.75em}
.ft__hours{font-size:var(--fs-xs)}
.ft__acts{margin-top:1.1rem; display:flex; flex-wrap:wrap; gap:.6rem}
.ft__acts a{
	display:inline-flex; align-items:center; justify-content:center; gap:.4rem;
	min-height:44px; padding:.6rem 1.35rem; border-radius:0;
	font-size:var(--fs-sm); font-weight:600;
	transition:background-color .3s var(--ez), transform .3s var(--ez);
}
.ft__acts .is-quiet{background:var(--ft-soft); color:var(--c-on-deep)}
.ft__acts .is-quiet:hover{background:var(--ft-line); transform:translateY(-2px)}

.ft__util{display:flex; flex-wrap:wrap; align-items:center; gap:.75rem}
.ft__sns{
	display:flex;
	flex-wrap:wrap;
	justify-content:flex-end;
	gap:.5rem;
}
.ft__sns a{
	width:44px; height:44px; border-radius:0;
	display:inline-flex; align-items:center; justify-content:center;
	background:var(--ft-soft); color:var(--c-on-deep); font-size:1rem;
	transition:background-color .3s var(--ez), color .3s var(--ez), transform .3s var(--ez);
}
.ft__sns a:hover{background:var(--c-accent); color:var(--c-on-accent); transform:translateY(-2px)}

.ft__familybox{position:relative; display:inline-flex; align-items:center}
.ft__familybox i{position:absolute; right:.95rem; font-size:.85rem; pointer-events:none; color:var(--c-on-deep-2)}
.ft__family{
	min-height:44px; padding:.55rem 2.6rem .55rem 1rem; border-radius:0;
	background:var(--ft-soft); color:var(--c-on-deep); border:0;
	font:inherit; font-size:var(--fs-sm);
	-webkit-appearance:none; appearance:none; cursor:pointer;
}
.ft__family option{color:var(--c-fg); background:var(--c-surface)}

.qmenu{
	position:fixed; right:1.5rem; bottom:var(--devm-qmenu-bottom, 2rem); z-index:90;
	display:flex; flex-direction:column; align-items:flex-end; gap:.625rem;
	width:auto;
}
.qmenu__item,
.qmenu .totop{
	position:relative;
	display:flex; align-items:center; justify-content:center; gap:.55rem;
	overflow:hidden; width:54px; min-width:54px; height:54px; padding:0; border-radius:0;
	background:var(--c-primary); color:var(--c-on-primary);
	border:0; box-shadow:var(--sh-2);
	font-size:.75rem; font-weight:700; line-height:1.25; text-align:center; white-space:nowrap; cursor:pointer;
	transition:background-color .24s var(--ez), color .24s var(--ez), opacity .35s var(--ez), visibility 0s;
}
.qmenu__item i,
.qmenu .totop i{flex:0 0 54px; width:54px; font-size:1.2rem; line-height:54px; text-align:center}
.qmenu__item span,
.qmenu .totop span{opacity:1}
.qmenu__item:hover,
.qmenu__item:focus-visible,
.qmenu .totop:hover,
.qmenu .totop:focus-visible{background:var(--c-accent); color:var(--c-on-accent)}
.qmenu__item:focus-visible,
.qmenu .totop:focus-visible{outline:2px solid var(--c-on-accent); outline-offset:-4px}
.qmenu__item:active,
.qmenu .totop:active{background:var(--c-accent-deep); color:var(--c-on-accent)}
.qmenu .totop{
	position:relative;
	display:none;
	cursor:pointer;
}
.qmenu .totop.is-on{display:flex}
.qmenu .totop:active{transform:scale(.96)}

@media (max-width:1199px){
	.qmenu__item{display:none}
}
html.is-hdr-narrow .qmenu__item{display:none}

@media (max-width:767px){
	.qmenu{right:.75rem; bottom:.75rem; gap:0; width:58px; box-shadow:var(--sh-2)}
	.qmenu__item,
	.qmenu .totop{
		flex-direction:column; justify-content:center; gap:.35rem;
		width:58px; min-width:58px; height:56px; padding:.45rem .15rem;
		border-bottom:1px solid var(--c-primary-deep); box-shadow:none;
		font-size:.65rem;
	}
	.qmenu__item i,
	.qmenu .totop i{flex:none; width:auto; font-size:1.1rem; line-height:1}
	.qmenu .totop{border-bottom:0}
}

@media (min-width:768px){
	.qmenu__item,
	.qmenu .totop{overflow:visible}
	.qmenu__item span,
	.qmenu .totop span{
		position:absolute;
		top:50%;
		right:calc(100% + .75rem);
		width:max-content;
		height:auto;
		padding:.55rem .75rem;
		background:var(--c-primary);
		border:1px solid var(--c-primary-deep);
		box-shadow:var(--sh-1);
		color:var(--c-on-primary);
		opacity:0;
		pointer-events:none;
		transform:translate(6px,-50%);
		transition:opacity .2s var(--ez), transform .2s var(--ez);
		white-space:nowrap;
	}
	.qmenu__item span::after,
	.qmenu .totop span::after{
		position:absolute;
		top:50%;
		right:-5px;
		width:9px;
		height:9px;
		background:var(--c-primary);
		border-top:1px solid var(--c-primary-deep);
		border-right:1px solid var(--c-primary-deep);
		content:"";
		transform:translateY(-50%) rotate(45deg);
	}
	.qmenu__item:hover span,
	.qmenu__item:focus-visible span,
	.qmenu .totop:hover span,
	.qmenu .totop:focus-visible span{
		opacity:1;
		transform:translate(0,-50%);
	}
}

@media (min-width:768px){
	.ft__biz dl{gap:.1rem 1.5rem}
}

.iziModal{border-radius:0; background:var(--c-surface); box-shadow:var(--sh-3); font-family:var(--ff)}
.iziModal-overlay{background:var(--scrim-3)}

.lgn:not(.iziModal){display:none}
.lgn__hd{
	display:flex; align-items:center; justify-content:space-between; gap:1rem;
	padding:1.3rem 1.4rem 1rem; border-bottom:1px solid var(--c-line-soft);
}
.lgn__hd h2{font-size:1.2rem}
.lgn__x{
	width:44px; height:44px; border-radius:0;
	display:flex; align-items:center; justify-content:center;
	font-size:1.35rem; color:var(--c-fg-2);
	transition:background-color .3s var(--ez), color .3s var(--ez);
}
.lgn__x:hover{background:var(--c-surface-2); color:var(--c-fg)}
.lgn__form{padding:1.35rem 1.4rem 1.6rem}
.lgn__f + .lgn__f{margin-top:.9rem}
.lgn__f label{display:block; margin-bottom:.4rem; font-size:var(--fs-xs); font-weight:700; color:var(--c-fg-2)}
.lgn__f input{
	width:100%; height:48px; padding:0 .95rem;
	border-radius:0; border:1px solid var(--c-line);
	background:var(--c-surface); color:var(--c-fg); font:inherit;
}
.lgn__f input::placeholder{color:var(--c-fg-2)}
.lgn__keep{
	display:flex; align-items:center; gap:.55rem; min-height:44px; margin-top:.6rem;
	font-size:var(--fs-sm); color:var(--c-fg-2); cursor:pointer;
}
.lgn__keep input{width:18px; height:18px; accent-color:var(--c-accent)}
.lgn__submit{width:100%; justify-content:center; margin-top:.9rem; padding-left:1.5rem}

.lgn__submit.is-busy{position:relative; color:transparent; pointer-events:none}
.lgn__submit.is-busy > *{visibility:hidden}
.lgn__submit.is-busy::after{
	content:''; position:absolute; top:50%; left:50%; width:18px; height:18px; margin:-9px 0 0 -9px;
	border:2px solid rgba(255,255,255,.35); border-top-color:#fff; border-radius:50%;
	animation:devmSpin .7s linear infinite;
}
@keyframes devmSpin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){
	.lgn__submit.is-busy::after{animation-duration:2s}
}
.lgn__err{
	margin-top:.75rem; padding:.7rem .85rem;
	background:var(--c-surface-2); border-left:3px solid var(--c-danger, #DC2626);
	color:var(--c-fg); font-size:var(--fs-sm); line-height:1.6;
}
.lgn__alt{
	display:flex; flex-wrap:wrap; gap:.6rem 1.25rem; justify-content:space-between;
	margin-top:1.1rem; padding-top:1.1rem; border-top:1px solid var(--c-line-soft);
	font-size:var(--fs-sm);
}
.lgn__alt a{color:var(--c-fg-2)}
.lgn__alt a:hover{color:var(--c-accent-deep)}

.goverlay{background:var(--scrim-3)}
.glightbox-clean .gslide-media{border-radius:0; box-shadow:var(--sh-3)}
.glightbox-clean .gslide-description{background:var(--glass-deep); border-radius:0}
.glightbox-clean .gslide-title{
	font-family:var(--ff); font-size:var(--fs-sm); font-weight:700;
	color:var(--c-surface); margin-bottom:.25rem;
}
.glightbox-clean .gslide-desc{font-family:var(--ff); font-size:var(--fs-xs); color:var(--c-on-deep)}
.glightbox-clean .gclose, .glightbox-clean .gnext, .glightbox-clean .gprev{
	background:var(--glass-deep-hi); border-radius:0;
}
.glightbox-clean .gclose:hover, .glightbox-clean .gnext:hover, .glightbox-clean .gprev:hover{
	background:var(--glass-deep-line);
}

@media (min-width:768px){
	.sec{padding:var(--sp-8) 0}
	.wrap{--wrap-pad:2rem}
	.smap__nav{padding:1.5rem 2rem 3rem}
	.smap__hd{padding-left:2rem; padding-right:2rem}
	.srch__in{padding:1.1rem 2rem}
	.abt{grid-template-columns:1fr 1fr; gap:var(--sp-5)}
	.band__nums{grid-template-columns:repeat(4,1fr)}

	.notice{grid-template-columns:1fr 1fr}
	.notice__pin{grid-column:span 2}
	.stats__list{grid-template-columns:repeat(4,1fr); gap:1rem}
	.stats__num{font-size:2.1rem}
	.ft__top{grid-template-columns:1.5fr 1fr; gap:var(--sp-6)}
}
@media (min-width:1200px){
	.gnb{display:flex}
	.util{display:flex}
	.gnb__a{font-size:var(--devm-header-menu-font-size,15px)}
	.sub a{font-size:var(--devm-header-submenu-font-size,14px)}
	.util__b{font-size:var(--devm-header-util-font-size,14px)}
	.util__b i{font-size:calc(var(--devm-header-util-font-size,14px) + 6px)}
	.smap__g h2{font-size:var(--devm-header-sitemap-title-font-size,16px)}
	.smap__g h2 a{font-size:inherit}
	.smap__links a{font-size:var(--devm-header-sitemap-link-font-size,14px)}
	.brand__img{height:var(--devm-header-logo-height,22px)}
	.burger, .mnav{display:none}
	.smap__g{grid-template-columns:230px minmax(0,1fr)}
	.abt{grid-template-columns:1.15fr .85fr; gap:var(--sp-6)}
	.abt__nav li > *{padding:1.25rem 1.5rem}
	.band__in{grid-template-columns:1fr 1.5fr}

	.notice{grid-template-columns:1.25fr 1fr 1fr}
	.notice__pin{grid-column:auto}
}

@media (min-width:1280px){
	.util:not(.util--icon) .util__b span:not(.sr-only){
		position:static; width:auto; height:auto; margin:0;
		overflow:visible; clip:auto; white-space:nowrap;
	}
}

html.is-hdr-tight .util .util__b span:not(.sr-only){
	position:absolute; width:1px; height:1px; padding:0; margin:-1px;
	overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}

html.is-hdr-tighter .gnb__a{padding:0 .7rem}
html.is-hdr-tighter .util__b{min-width:38px; padding:0 .35rem}

html.is-hdr-narrow .gnb,
html.is-hdr-narrow .util{display:none}
html.is-hdr-narrow .burger{display:flex}
html.is-hdr-narrow .mnav{display:block}

@media (prefers-reduced-motion: reduce){
	html{scroll-behavior:auto}
	*,*::before,*::after{
		animation-duration:.001ms !important; animation-iteration-count:1 !important;
		transition-duration:.001ms !important; scroll-behavior:auto !important;
	}
	.rv{opacity:1; transform:none}
	.smap__panel{transform:none}
}

@media (prefers-reduced-transparency: reduce){
	.sub,
	.smap__panel{
		background:var(--glass-nav-solid);
		-webkit-backdrop-filter:none;
		backdrop-filter:none;
	}
	.srch{
		background:var(--glass-solid);
		-webkit-backdrop-filter:none;
		backdrop-filter:none;
	}

	.hdr.is-solid .sub,
	.smap.is-solid .smap__panel{background:var(--glass-solid)}
}

@media (prefers-reduced-motion:no-preference){

	.srch{transition:visibility 0s}
	.hdr.is-search .srch{transition:visibility 0s}
	.srch__in{opacity:0;transform:translate3d(0,-10px,0);transition:opacity .18s var(--ez),transform .28s var(--ez-out)}
	.hdr.is-search .srch__in{opacity:1;transform:translate3d(0,0,0)}
	.smap{transition:visibility 0s}
	.smap.is-open{transition:visibility 0s}
	.smap__hd,
	.smap__g{opacity:0;transform:translate3d(0,-10px,0);transition:opacity .18s var(--ez),transform .3s var(--ez-out)}
	.smap.is-open .smap__hd,
	.smap.is-open .smap__g{opacity:1;transform:translate3d(0,0,0)}
	.smap.is-open .smap__g:nth-child(2){transition-delay:.035s}
	.smap.is-open .smap__g:nth-child(3){transition-delay:.07s}
	.smap.is-open .smap__g:nth-child(4){transition-delay:.105s}
	.smap.is-open .smap__g:nth-child(5){transition-delay:.14s}
	@media (max-width:767px){
		.localnav__list{display:block!important;opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(0,-8px,0);transform-origin:top;transition:opacity .16s var(--ez),transform .24s var(--ez-out),visibility 0s linear .24s}
		.localnav.is-open .localnav__list{opacity:1;visibility:visible;pointer-events:auto;transform:translate3d(0,0,0);transition:opacity .18s var(--ez),transform .28s var(--ez-out),visibility 0s}
	}
}

.subvisual{position:relative;min-height:390px;display:flex;align-items:flex-end;overflow:hidden;background:var(--c-deep);color:var(--glass-nav-text)}
.subvisual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}

.subvisual.is-mo-zoom-out>img{animation:devmSvZoomOut 9s ease-out both}
.subvisual.is-mo-zoom-in>img{animation:devmSvZoomIn 9s ease-out both}
.subvisual.is-mo-up>img{animation:devmSvUp 9s ease-out both}

@keyframes devmSvZoomOut{
	from{transform:scale(1.12)}
	to{transform:scale(1.01)}
}
@keyframes devmSvZoomIn{
	from{transform:scale(1.01)}
	to{transform:scale(1.12)}
}
@keyframes devmSvUp{
	from{transform:scale(1.12) translateY(2.6%)}
	to{transform:scale(1.12) translateY(-2.6%)}
}

@media (prefers-reduced-motion:reduce){
	.subvisual.is-mo-zoom-out>img,
	.subvisual.is-mo-zoom-in>img,
	.subvisual.is-mo-up>img{animation:none}
}
.subvisual__scrim{position:absolute;inset:0;background:linear-gradient(90deg,var(--scrim-1),var(--scrim-2))}
.subvisual__body{position:relative;z-index:1;padding-top:9rem;padding-bottom:3.25rem}
.breadcrumb{display:flex;align-items:center;gap:.45rem;margin-bottom:1rem;color:var(--c-on-deep-2);font-size:var(--fs-xs)}
.breadcrumb i{font-size:.8rem}
.breadcrumb strong{color:var(--c-on-deep)}
.subvisual h1{font-size:clamp(2.1rem,4.5vw,3.25rem);letter-spacing:-.045em}
.subvisual p{margin-top:.7rem;color:var(--c-on-deep);font-size:1.05rem}
.localnav{position:sticky;top:76px;z-index:90;border-bottom:1px solid var(--c-line-soft);background:var(--c-surface);box-shadow:var(--sh-1)}
.localnav--device{display:none}
@media (min-width:1200px){
	.localnav--pc{display:block}
}
@media (min-width:768px) and (max-width:1199px){
	.localnav--tablet{display:block}
}
.localnav__in{position:relative}
.localnav__toggle{display:none}
.localnav__list{display:flex}
.localnav a{position:relative;flex:1 0 140px;min-width:140px;padding:1.15rem 1.5rem;text-align:center;color:var(--c-fg-2);font-size:var(--fs-sm);font-weight:700;white-space:nowrap}

.localnav a::after{content:"";position:absolute;left:18%;right:18%;bottom:0;height:3px;background:var(--c-primary);transform:scaleX(0);transform-origin:center;transition:transform .3s var(--ez)}
.localnav a:hover,.localnav a.is-current{color:var(--c-accent-deep)}
.localnav a.is-current::after,.localnav a:hover::after{transform:scaleX(1)}

.localnav--al-left a,
.localnav--al-center a,
.localnav--al-right a{flex:0 0 auto;min-width:0}

.localnav--scroll.localnav--al-center .localnav__list>a:first-child{margin-left:auto}
.localnav--scroll.localnav--al-center .localnav__list>a:last-child{margin-right:auto}
.localnav--scroll.localnav--al-right  .localnav__list>a:first-child{margin-left:auto}

.localnav--scroll .localnav__list{overflow-x:auto; scroll-behavior:smooth; scrollbar-width:none; -ms-overflow-style:none}
.localnav--scroll .localnav__list::-webkit-scrollbar{display:none}

.localnav--scroll.is-over .localnav__list{cursor:grab}
.localnav--scroll.is-grabbing .localnav__list{cursor:grabbing; scroll-behavior:auto; user-select:none; -webkit-user-select:none}

.localnav__arw{
	position:absolute; top:0; bottom:0; z-index:2; width:52px;
	display:flex; align-items:center; justify-content:center;
	color:var(--c-fg-2); font-size:1.15rem;
	transition:color .2s var(--ez);
}
.localnav__arw:hover{color:var(--c-accent-deep)}
.localnav__arw[hidden]{display:none}
.localnav__arw--prev{left:0; background:linear-gradient(90deg, var(--c-surface) 55%, transparent)}
.localnav__arw--next{right:0; background:linear-gradient(270deg, var(--c-surface) 55%, transparent)}

.localnav__dropdowns{display:grid;grid-template-columns:58px minmax(0,1fr) minmax(0,1fr);width:618px;max-width:100%}
.localnav a.localnav__home{display:flex;align-items:center;justify-content:center;flex:0 0 58px;min-width:58px;height:58px;padding:0;border-left:1px solid var(--c-line);border-right:1px solid var(--c-line);color:var(--c-fg);font-size:1.1rem}
.localnav a.localnav__home::after{display:none}
.localnav a.localnav__home:hover,
.localnav a.localnav__home:focus-visible{background:var(--c-surface-2);color:var(--c-accent-deep)}
.localnav__picker{position:relative;min-width:0}
.localnav__picker-toggle{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;height:58px;padding:0 1rem;border:0;background:var(--c-surface);color:var(--c-fg);font:inherit;font-size:var(--fs-sm);font-weight:800;text-align:left;cursor:pointer}
.localnav__picker--secondary .localnav__picker-toggle{border-left:1px solid var(--c-line)}
.localnav__picker--secondary .localnav__picker-toggle{border-right:1px solid var(--c-line)}
.localnav__picker-toggle span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.localnav__picker-toggle i{flex:none;color:var(--c-accent);font-size:1rem;transition:transform .2s var(--ez)}
.localnav__picker.is-open .localnav__picker-toggle{background:var(--c-surface-2)}
.localnav__picker.is-open .localnav__picker-toggle i{transform:rotate(180deg)}
.localnav__picker-list{position:absolute;top:100%;left:0;z-index:2;width:100%;border:1px solid var(--c-line);border-top:0;background:var(--c-surface);box-shadow:var(--sh-2);opacity:0;visibility:hidden;pointer-events:none;transform:translate3d(0,-8px,0);transition:opacity .16s var(--ez),transform .24s var(--ez-out),visibility 0s linear .24s}
.localnav__picker.is-open .localnav__picker-list{opacity:1;visibility:visible;pointer-events:auto;transform:translate3d(0,0,0);transition:opacity .18s var(--ez),transform .28s var(--ez-out),visibility 0s}
.localnav__picker-list button,
.localnav__picker-list a{display:block;width:100%;padding:.95rem 1rem;border:0;border-top:1px solid var(--c-line-soft);background:var(--c-surface);color:var(--c-fg-2);font:inherit;font-size:var(--fs-sm);font-weight:700;text-align:left;cursor:pointer}
.localnav__picker-list a::after{display:none}
.localnav__picker-list > button:first-child,
.localnav__secondary-group a:first-child{border-top:0}
.localnav__picker-list button:hover,
.localnav__picker-list button:focus-visible,
.localnav__picker-list a:hover,
.localnav__picker-list a:focus-visible{background:var(--c-surface-2);color:var(--c-accent-deep)}
.localnav__picker-list .is-current{background:var(--c-accent-soft);color:var(--c-accent-deep)}
.localnav__secondary-group[hidden]{display:none}

@media (min-width:768px){

	.localnav--drop .localnav__in{display:flex}
	.localnav--drop.localnav--al-center .localnav__in{justify-content:center}
	.localnav--drop.localnav--al-right  .localnav__in{justify-content:flex-end}
	.localnav--drop.localnav--al-full .localnav__dropdowns{width:100%}
}

@media (max-width:767px){
	.subvisual{min-height:330px}
	.subvisual__body{padding-top:7.5rem;padding-bottom:2.5rem}
	.localnav--mobile{display:block}

	.localnav--drop .localnav__in{display:flex}
	.localnav--drop.localnav--al-center .localnav__in{justify-content:center}
	.localnav--drop.localnav--al-right .localnav__in{justify-content:flex-end}

	.localnav--scroll .localnav__toggle{display:none}
	.localnav--scroll .localnav__list{display:flex;position:static;border:0;box-shadow:none}
	.localnav--scroll a{display:block;flex:1 0 140px;min-width:140px;padding:1rem;text-align:center}
	.localnav--scroll.localnav--al-left a,
	.localnav--scroll.localnav--al-center a,
	.localnav--scroll.localnav--al-right a{flex:0 0 auto;min-width:0}
	.localnav--scroll a::after{display:block}
	.localnav--scroll .localnav__arw{display:none}
}

.sr-only--focusable:focus,
.sr-only--focusable:focus-visible{
	position:fixed; left:1rem; top:1rem; z-index:2000;
	width:auto; height:auto; margin:0; padding:.75rem 1.25rem;
	clip:auto; overflow:visible; white-space:normal;
	background:var(--c-accent); color:var(--c-on-accent); font-weight:700;
}

.brand__img{height:22px; width:auto}
.brand__img--dark{display:none}
.hdr:not(.is-solid):not(.is-menu) .brand__img:not(.brand__img--dark){display:none}
.hdr:not(.is-solid):not(.is-menu) .brand__img--dark{display:block}

.gnb__empty{display:flex; align-items:center; height:76px; padding:0 1rem; color:var(--c-on-accent); font-size:var(--fs-sm)}
.gnb__empty a{text-decoration:underline}
.hdr.is-solid .gnb__empty{color:var(--c-fg-2)}

.mnav__solo{display:block; padding:1.05rem 1.25rem; font-weight:700}

.ft__setup{margin-top:1rem; color:var(--c-on-deep-2); font-size:var(--fs-sm)}
.ft__setup a{color:var(--c-on-deep); text-decoration:underline}
.sec__empty{padding:var(--sp-6) 0; color:var(--c-fg-3); font-size:var(--fs-sm); text-align:center}

.devm-adminbar{
	position:fixed; right:1.25rem; top:90px; z-index:900; text-align:right;
	display:flex; flex-direction:column; align-items:flex-end; gap:.5rem;
}
@media (max-width:768px){
	.devm-adminbar{right:.75rem; top:82px}
}

body.is-mnav-open .devm-adminbar{display:none}

.devm-adminbar__menu{position:relative}
.devm-adminbar__btn{
	display:inline-flex; align-items:center; gap:.45rem;
	height:46px; padding:0 1.1rem;
	background:var(--c-deep); color:var(--c-on-deep);
	box-shadow:var(--sh-2); font-size:var(--fs-sm); font-weight:700;
	cursor:pointer; list-style:none;
	transition:background-color .3s var(--ez), transform .3s var(--ez-out);
}
.devm-adminbar__btn::-webkit-details-marker{display:none}
.devm-adminbar__btn:hover{background:var(--c-accent); color:var(--c-on-accent); transform:translateY(-2px)}
.devm-adminbar__caret{margin-left:.15rem; font-size:1.1em; transition:transform .25s var(--ez)}
.devm-adminbar__menu[open] .devm-adminbar__caret{transform:rotate(180deg)}

.devm-adminbar__list{
	position:absolute; top:calc(100% + .4rem); right:0; z-index:1;
	display:flex; flex-direction:column; min-width:100%;
	background:var(--c-surface); box-shadow:var(--sh-3); text-align:left;
}
.devm-adminbar__item{
	display:flex; align-items:center; gap:.5rem;
	padding:.7rem 1.1rem; white-space:nowrap;
	color:var(--c-fg); font-size:var(--fs-sm); font-weight:600;
	transition:background-color .2s var(--ez), color .2s var(--ez);
}
.devm-adminbar__item + .devm-adminbar__item{border-top:1px solid var(--c-line)}
.devm-adminbar__item:hover{background:var(--c-accent); color:var(--c-on-accent)}
.devm-adminbar__warn{
	max-width:280px; margin-top:.5rem; padding:.65rem .85rem;
	background:var(--c-surface); box-shadow:var(--sh-2);
	color:var(--c-fg-2); font-size:var(--fs-xs); line-height:1.6; text-align:left;
}
.devm-adminbar__warn i{margin-right:.35rem; color:var(--c-accent-deep)}

.devm-adminbar--demo .devm-adminbar__btn{background:var(--c-accent); color:var(--c-on-accent)}
.devm-adminbar--demo .devm-adminbar__btn:hover{background:var(--c-accent-deep)}

.devm-modal{position:fixed; inset:0; z-index:99700; display:none}
.devm-modal.is-open{display:block}
.devm-modal__dim{position:absolute; inset:0; background:rgba(7,28,53,.72)}
.devm-modal__box{
	position:absolute; left:50%; top:50%; transform:translate(-50%,-50%);
	display:flex; flex-direction:column;
	width:min(1120px, calc(100vw - 2.5rem));
	height:min(90vh, 980px);
	overflow:hidden; border-radius:var(--devm-set-radius, 0);
	background:var(--c-surface); box-shadow:0 40px 90px rgba(7,28,53,.4);
}

.devm-modal__head{
	flex:0 0 auto; display:flex; flex-direction:column;
	padding:0; border-bottom:1px solid var(--c-line); background:var(--c-surface);
}

.devm-modal__title{
	display:flex; align-items:center; min-height:56px; padding:0 3.4rem 0 1.4rem;
	margin:0; font-size:var(--fs-md); font-weight:700; color:var(--c-fg); letter-spacing:-.01em;
}

.devm-modal__head .dpop-notice{margin:0 1.4rem 1rem}
.devm-modal__x{
	position:absolute; right:.8rem; top:.8rem; z-index:2;
	width:40px; height:40px; border:0; border-radius:var(--devm-set-radius-round, 0);
	background:transparent; color:var(--c-fg-2, var(--c-fg)); font-size:1.4rem; line-height:1; cursor:pointer;
	opacity:.7; transition:opacity .2s var(--ez);
}
.devm-modal__x:hover{opacity:1}

.devm-modal__body{display:flex; flex-direction:column; flex:1; min-height:0; overflow:hidden}
.devm-modal__load{margin:auto; padding:3rem; color:var(--c-fg-3); font-size:var(--fs-sm)}
@media (max-width:767px){
	.devm-modal__box{width:100vw; height:100vh; max-height:none; border-radius:0}
}

.lt-grid{display:grid; gap:var(--sp-4); grid-template-columns:1fr}
@media (min-width:768px){ .lt-grid{grid-template-columns:repeat(2,minmax(0,1fr))} }
@media (min-width:1024px){ .lt-grid{grid-template-columns:repeat(3,minmax(0,1fr))} }

.skinpick{border-bottom:1px solid var(--c-line-soft); background:var(--c-surface-2)}
.skinpick__f{display:flex; align-items:center; flex-wrap:wrap; gap:.6rem .85rem; padding:.85rem 0}
.skinpick__f label{display:inline-flex; align-items:center; gap:.4rem; color:var(--c-fg-2); font-size:var(--fs-sm); font-weight:700}
.skinpick__f label i{color:var(--c-accent); font-size:1.05rem}
.skinpick__f select{
	min-width:200px; height:40px; padding:0 2.2rem 0 .85rem;
	border:1px solid var(--c-line); background:var(--c-surface);
	color:var(--c-fg); font-size:var(--fs-sm); font-weight:700;
}
.skinpick__f button{
	height:40px; padding:0 1rem;
	background:var(--c-accent); color:var(--c-on-accent); font-size:var(--fs-sm); font-weight:700;
}
.skinpick__note{margin:0; color:var(--c-fg-3); font-size:var(--fs-xs)}
@media (max-width:767px){
	.skinpick__f select{flex:1 1 auto; min-width:0}
	.skinpick__note{flex:1 0 100%}
}

/* ==========================================================================
   그누보드 기본 화면 호환
   테마 전용 스킨을 제공하지 않는 새글 모음, 통합 검색, 접속자와 내용관리
   화면은 그누보드 기본 스킨으로 표시됩니다. 이 절은 그 화면들이 테마와
   같은 서식으로 보이도록 표, 입력 요소와 페이지 이동 단추를 정의합니다.
   구매자가 별도로 설치하신 외부 스킨에도 동일하게 적용됩니다.
   ========================================================================== */


/* 표 */
.tbl_wrap{margin:0 0 1.5rem}
.tbl_wrap table{
	width:100%; border-collapse:collapse; border-spacing:0;
	background:var(--c-surface); color:var(--c-fg); font-size:var(--fs-sm);
}
.tbl_wrap caption{padding:0; overflow:hidden; font-size:0; line-height:0}

.tbl_head01 thead th{
	height:auto; padding:.95rem .6rem;
	border-top:1px solid var(--c-line); border-bottom:1px solid var(--c-line);
	background:var(--c-surface-2); color:var(--c-fg-2);
	font-size:var(--fs-xs); font-weight:700; text-align:center; white-space:nowrap;
}
.tbl_head01 thead th a{color:inherit}
.tbl_head01 thead th input{vertical-align:middle}
.tbl_head01 tbody th,
.tbl_head01 td{
	height:auto; padding:.9rem .6rem;
	border-bottom:1px solid var(--c-line-soft);
	color:var(--c-fg-2); line-height:1.5; word-break:break-word;
}
.tbl_head01 tbody tr:hover td{background:var(--c-surface-2)}
.tbl_head01 tfoot th,
.tbl_head01 tfoot td{
	padding:.75rem .6rem; border-top:1px solid var(--c-line);
	background:var(--c-surface-2); text-align:center;
}
.tbl_head01 a{color:var(--c-fg)}
.tbl_head01 a:hover{color:var(--c-accent)}

/* 폼 표 */
.tbl_frm01{margin:0 0 1.5rem}
.tbl_frm01 table{width:100%; border-collapse:collapse; border-spacing:0; font-size:var(--fs-sm)}
.tbl_frm01 th{
	width:8.75rem; padding:.85rem 1rem;
	border-bottom:1px solid var(--c-line-soft); background:var(--c-surface-2);
	color:var(--c-fg-2); font-weight:700; text-align:left;
}
.tbl_frm01 td{padding:.85rem 1rem; border-bottom:1px solid var(--c-line-soft); color:var(--c-fg-2)}

/* 표의 항목 폭 */
.td_board,.td_category,.td_group,.td_mng,.td_numbig{width:5rem; text-align:center}
.td_chk{width:2.5rem; text-align:center}
.td_date,.td_stat{width:5rem; text-align:center}
.td_datetime{width:7rem; text-align:center}
.td_mb_id,.td_nick{width:6.25rem; text-align:center}
.td_name{width:6.25rem; text-align:left}
.td_num{width:3.75rem; text-align:center}

/* 자료가 없는 목록 */
.empty_table{padding:4rem 0 !important; color:var(--c-fg-3); text-align:center}
.empty_list{padding:2rem 0 !important; color:var(--c-fg-3); text-align:center}

/* 입력 요소 */
.frm_input,
.tbl_frm01 textarea,
.wr_content textarea{
	padding:0 .85rem;
	border:1px solid var(--c-line); border-radius:var(--r-input);
	background:var(--c-surface); color:var(--c-fg);
	font-family:inherit; font-size:var(--fs-sm); vertical-align:middle;
}
.frm_input{height:2.75rem}
.tbl_frm01 textarea,
.wr_content textarea{padding:.7rem .85rem; line-height:1.6}
.frm_input:focus,
.tbl_frm01 textarea:focus{border-color:var(--c-accent); outline:none}
.full_input{width:100%}
.half_input{width:49.5%}

/* 단추 */
.btn_submit{
	height:2.75rem; padding:0 1.15rem;
	border:0; border-radius:var(--r-input);
	background:var(--c-accent); color:var(--c-on-accent);
	font-family:inherit; font-size:var(--fs-sm); font-weight:700; cursor:pointer;
}
.btn_submit:hover{background:var(--c-accent-deep)}
.btn_confirm{margin:1.25rem 0 0; text-align:right}
a.btn_b01,.btn_b01{
	display:inline-flex; align-items:center; justify-content:center;
	height:2.5rem; padding:0 .95rem;
	border:1px solid var(--c-line); border-radius:var(--r-input);
	background:var(--c-surface); color:var(--c-fg-2);
	font-size:var(--fs-sm); font-weight:700; text-decoration:none; vertical-align:middle;
}
a.btn_b01:hover,.btn_b01:hover{border-color:var(--c-accent); color:var(--c-accent)}

/* 페이지 이동 */
.pg_wrap{clear:both; margin:1.75rem 0 0}
.pg{display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:.35rem; text-align:center}
.pg_page,.pg_current{
	display:inline-flex; align-items:center; justify-content:center;
	min-width:2.625rem; height:2.625rem; padding:0 .55rem;
	border:1px solid var(--c-line); border-radius:var(--r-input);
	background:var(--c-surface); color:var(--c-fg-2);
	font-size:var(--fs-sm); font-weight:700; text-decoration:none;
}
.pg a.pg_page:hover{border-color:var(--c-accent); background:var(--c-accent); color:var(--c-on-accent)}
.pg_current{border-color:var(--c-accent); background:var(--c-accent); color:var(--c-on-accent)}

/* 내용관리 화면 */
#ctt{max-width:var(--wrap); margin:0 auto; padding:3.5rem 1.25rem}
#ctt > header h1{margin:0 0 1.75rem; color:var(--c-fg); font-size:var(--fs-h2); font-weight:800}
#ctt_con{color:var(--c-fg-2); font-size:var(--fs-body); line-height:1.8}
#ctt_con img{max-width:100%; height:auto}
.ctt_img{margin:0 0 1.25rem; text-align:center}
.ctt_admin{margin:0 0 1rem; text-align:right}

/* 회원 이름을 선택하면 열리는 그누보드 기본 메뉴 */
.sv_wrap{position:relative; display:inline-block; font-weight:normal}
.sv_wrap .sv{
	position:absolute; z-index:1000; top:100%; left:0; display:none;
	min-width:7rem; margin:6px 0 0; padding:.25rem 0;
	border:1px solid var(--c-line); background:var(--c-surface); box-shadow:var(--sh-2);
	text-align:left; white-space:nowrap;
}
.sv_wrap .sv a{
	display:block; padding:0 .85rem; line-height:2.25rem;
	color:var(--c-fg-2); font-size:var(--fs-xs); font-weight:400; text-decoration:none;
}
.sv_wrap .sv a:hover{background:var(--c-surface-2); color:var(--c-accent)}
.sv_member,
.sv_guest{color:inherit; text-decoration:none}
.sv_on{display:block !important}
.sv_nojs .sv{position:static; display:block; margin:0; border:0; box-shadow:none}

/* 회원 사진 */
.profile_img{display:inline-flex; vertical-align:middle}
.profile_img img{width:22px; height:22px; border-radius:50%; object-fit:cover}

/* 검색 결과의 게시판별 건수와 검색어 강조 */
.cnt_cmt{
	display:inline-block; margin-left:.35rem;
	font-size:var(--fs-xs); font-weight:400;
}
.sch_word{color:var(--c-accent); font-weight:700}
