/* Dark Mode */
body.color_scheme_dark #main {
color:var(--color-black) !important;
background-color:var(--color-white) !important;
}

/* Basic */
@media screen and (max-width: 480px) {
	body {
		min-width: 320px;
	}
}

body.is-preload-0 *, body.is-preload-0 *:before, body.is-preload-0 *:after {
-moz-animation: none !important;
-webkit-animation: none !important;
-ms-animation: none !important;
animation: none !important;
-moz-transition: none !important;
-webkit-transition: none !important;
-ms-transition: none !important;
transition: none !important;
}

html {
box-sizing: border-box;
}

*, *:before, *:after {
box-sizing: inherit;
}

html, body {
background-color: #101010;
overflow: hidden;
}

/* Type */
html {
font-size: 16pt;
}

@media screen and (max-width: 1680px) {
	html {
		font-size: 12pt;
	}
}

@media screen and (max-width: 1280px) {
	html {
		font-size: 11pt;
	}
}

body, input, select, textarea {
font-weight: 400;
line-height: 1.65;
font-size: 1em;
color: #aaa;
}

p {
margin-bottom: 5px;
}

h1, h2, h3, h4, h5, h6 {
font-weight: 400;
line-height: 1.25;
margin: 0 0 0.5em 0;
}

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
color: inherit;
text-decoration: none;
}

h2 {
font-size: 1.25em;
}

h3 {
font-size: 1em;
}

h4 {
font-size: 0.9em;
}

h5 {
font-size: 0.8em;
}

h6 {
font-size: 0.7em;
}

/* Icons */
ul.icons {
cursor: default;
list-style: none;
padding-left: 0;
margin-top:1em;
}

ul.icons li {
display: inline-block;
padding: 0 1em 0 0;
}

ul.icons li:last-child {
padding-right: 0;
}

ul.icons li .icon:before {
font-size: 1rem;
}

.icon {
text-decoration: none;
border-bottom: none;
position: relative;
}

.icon:before {
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
line-height: 1;
text-transform: none !important;
font-family: 'Font Awesome 5 Free';
font-weight: 400;
}

.icon > .label {
display: none;
}

.icon:before {
line-height: inherit;
}

.icon.solid:before {
font-weight: 900;
}

.icon.brands:before {
font-family: 'Font Awesome 5 Brands';
}

/* Main */
#main {
-moz-transition: opacity 0.75s ease, right 0.75s ease, left 0.75s ease, visibility 0.75s;
-webkit-transition: opacity 0.75s ease, right 0.75s ease, left 0.75s ease, visibility 0.75s;
-ms-transition: opacity 0.75s ease, right 0.75s ease, left 0.75s ease, visibility 0.75s;
transition: opacity 0.75s ease, right 0.75s ease, left 0.75s ease, visibility 0.75s;
-webkit-overflow-scrolling: touch;
position: fixed;
top: 0;
width: 22.5em;
height: 100%;
background: #fff;
outline: 0;
overflow-x: hidden;
overflow-y: auto;
text-align: right;
visibility: visible;
z-index: 10000;
right: 0;
}

#main a {
-moz-transition: color 0.25s ease, border-bottom-color 0.25s ease;
-webkit-transition: color 0.25s ease, border-bottom-color 0.25s ease;
-ms-transition: color 0.25s ease, border-bottom-color 0.25s ease;
transition: color 0.25s ease, border-bottom-color 0.25s ease;
border-bottom: dotted 1px;
color: inherit;
text-decoration: none;
}

#main a:hover {
border-bottom-color: transparent;
color: #00D3B7;
}

#main .dark {
text-align:right;
margin-top:10px;
}

#main .dark a {
color:#aaa;
font-size:12px;
border-bottom-color: transparent;
}

#main .toggle {
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
position: absolute;
top: 0;
width: 4em;
height: 4em;
background-image: url("../img/close-small-alt.svg");
background-repeat: no-repeat;
background-size: 32px 32px;
cursor: pointer;
display: none;
z-index: 1;
background-position: 0.5em 0.5em;
left: 0;
}

body.fullscreen #main {
visibility: hidden;
right: -22.5em;
}

body.is-preload-1 #main {
opacity: 0;
right: -2em;
}

@media screen and (max-width: 1280px) {
	#main {
	width: 19em;
	}

	body.fullscreen #main {
	right: -19em;
	}
}

@media screen and (max-width: 980px) {
	#main {
	background: rgba(255, 255, 255, 0.925);
	}

	#main .toggle {
	display: block;
	}
}

@media screen and (max-width: 480px) {
	#main {
	-moz-transition: opacity 0.5s ease, visibility 0.5s;
	-webkit-transition: opacity 0.5s ease, visibility 0.5s;
	-ms-transition: opacity 0.5s ease, visibility 0.5s;
	transition: opacity 0.5s ease, visibility 0.5s;
	width: 100%;
	background: #fff;
	text-align: center;
	}

	body.is-preload-1 #main {
	left: auto !important;
	right: auto !important;
	}

	body.fullscreen #main {
	left: auto !important;
	right: auto !important;
	opacity: 0;
	}

	#main .toggle {
	display: none;
	}
}

/* Header */
#header {
padding: 3em 2.25em 1.75em 2.25em ;
}

#header h1 {
font-size: 2.25em;
font-weight: 700;
}

/* Footer */
#footer {
padding: 2.25em 2.25em 1em 2.25em ;
}

#footer .copyright {
list-style: none;
padding: 0;
}

#footer .copyright li {
display: inline-block;
font-size: 0.8em;
margin-left: 0.35em;
padding: 0;
}

#footer .copyright li:first-child {
margin-left: 0;
}

#footer .icons a {
border-bottom-color: transparent;
}

/* Thumbnails */
#thumbnails {
display: -moz-flex;
display: -webkit-flex;
display: -ms-flex;
display: flex;
-moz-flex-wrap: wrap;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
padding: 0 0.75em;
}

#thumbnails article {
position: relative;
width: 50%;
background: #101010;
outline: 0;
}

#thumbnails article .thumbnail {
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
display: block;
position: relative;
border: 0;
outline: 0;
}

#thumbnails article .thumbnail img {
display: block;
width: 100%;
}

#thumbnails article .thumbnail:before {
pointer-events: none;
-moz-transition: opacity 0.25s ease;
-webkit-transition: opacity 0.25s ease;
-ms-transition: opacity 0.25s ease;
transition: opacity 0.25s ease;
content: '';
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
box-shadow: inset 0 0 0 2px #00D3B7, inset 0 0 0px 3px rgba(0, 0, 0, 0.15);
opacity: 0;
z-index: 1;
}

#thumbnails article .thumbnail:focus:before {
opacity: 0.5;
}

#thumbnails article h2, #thumbnails article p {
display: none;
}

#thumbnails article.active .thumbnail:before {
opacity: 1;
}

@media screen and (max-width: 480px) {
	#thumbnails article .thumbnail:before {
	display: none;
	}
}

/* Slide View Area*/
@-moz-keyframes spinner {
0% {
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-ms-transform: rotate(0deg);
transform: rotate(0deg);
}

100% {
-moz-transform: rotate(360deg);
-webkit-transform: rotate(360deg);
-ms-transform: rotate(360deg);
transform: rotate(360deg);
}
}

@-webkit-keyframes spinner {
0% {
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-ms-transform: rotate(0deg);
transform: rotate(0deg);
}

100% {
-moz-transform: rotate(360deg);
-webkit-transform: rotate(360deg);
-ms-transform: rotate(360deg);
transform: rotate(360deg);
}
}

@-ms-keyframes spinner {
0% {
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-ms-transform: rotate(0deg);
transform: rotate(0deg);
}

100% {
-moz-transform: rotate(360deg);
-webkit-transform: rotate(360deg);
-ms-transform: rotate(360deg);
transform: rotate(360deg);
}
}

@keyframes spinner {
0% {
-moz-transform: rotate(0deg);
-webkit-transform: rotate(0deg);
-ms-transform: rotate(0deg);
transform: rotate(0deg);
}

100% {
-moz-transform: rotate(360deg);
-webkit-transform: rotate(360deg);
-ms-transform: rotate(360deg);
transform: rotate(360deg);
}
}

#viewer {
-moz-transition: opacity 0.75s ease, width 0.75s ease;
-webkit-transition: opacity 0.75s ease, width 0.75s ease;
-ms-transition: opacity 0.75s ease, width 0.75s ease;
transition: opacity 0.75s ease, width 0.75s ease;
background-color: #282828;
position: absolute;
width: calc(100vw - 22.5em);
height: 100vh;
top: 0;
left: 0;
}

#viewer .inner {
pointer-events: none;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 2;
}

#viewer .inner > * {
pointer-events: auto;
}

#viewer .inner:before {
background-image: -moz-linear-gradient(left, rgba(16,16,16,0.2), rgba(16,16,16,0) 10em, rgba(16,16,16,0)), -moz-linear-gradient(right, rgba(16,16,16,0.2), rgba(16,16,16,0) 10em, rgba(16,16,16,0));
background-image: -webkit-linear-gradient(left, rgba(16,16,16,0.2), rgba(16,16,16,0) 10em, rgba(16,16,16,0)), -webkit-linear-gradient(right, rgba(16,16,16,0.2), rgba(16,16,16,0) 10em, rgba(16,16,16,0));
background-image: -ms-linear-gradient(left, rgba(16,16,16,0.2), rgba(16,16,16,0) 10em, rgba(16,16,16,0)), -ms-linear-gradient(right, rgba(16,16,16,0.2), rgba(16,16,16,0) 10em, rgba(16,16,16,0));
background-image: linear-gradient(left, rgba(16,16,16,0.2), rgba(16,16,16,0) 10em, rgba(16,16,16,0)), linear-gradient(right, rgba(16,16,16,0.2), rgba(16,16,16,0) 10em, rgba(16,16,16,0));
content: '';
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

#viewer .inner .toggle {
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
position: absolute;
top: 5px;
width: 4em;
height: 4em;
background-image: url("../img/close.svg");
background-repeat: no-repeat;
background-size: 64px 64px;
cursor: pointer;
z-index: 1;
right: 0;
background-position: calc(100% - 0.75em) 0.75em;
}

#viewer .inner .nav-next,
#viewer .inner .nav-previous {
-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
position: absolute;
top: 50%;
width: 6em;
height: 6em;
margin-top: -3em;
background-image: url("../img/arrow.svg");
background-position: center;
background-repeat: no-repeat;
background-size: contain;
cursor: pointer;
}

#viewer .inner .nav-previous {
-moz-transform: scaleX(-1);
-webkit-transform: scaleX(-1);
-ms-transform: scaleX(-1);
transform: scaleX(-1);
left: 0;
}

#viewer .inner .nav-next {
right: 0;
}

#viewer .slide {
-moz-transition: opacity 0.5s ease-in-out;
-webkit-transition: opacity 0.5s ease-in-out;
-ms-transition: opacity 0.5s ease-in-out;
transition: opacity 0.5s ease-in-out;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: 1;
z-index: 1;
}

#viewer .slide .caption {
background-image: -moz-linear-gradient(bottom, rgba(16,16,16,0.75), rgba(16,16,16,0.25) 80%, rgba(16,16,16,0));
background-image: -webkit-linear-gradient(bottom, rgba(16,16,16,0.75), rgba(16,16,16,0.25) 80%, rgba(16,16,16,0));
background-image: -ms-linear-gradient(bottom, rgba(16,16,16,0.75), rgba(16,16,16,0.25) 80%, rgba(16,16,16,0));
background-image: linear-gradient(bottom, rgba(16,16,16,0.75), rgba(16,16,16,0.25) 80%, rgba(16,16,16,0));
padding: 2em 2em 1em 2em;
position: absolute;
bottom: 0;
left: 0;
width: 100%;
color: rgba(255, 255, 255, 0.5);
z-index: 1;
}

#viewer .slide .caption h2, #viewer .slide .caption h3, #viewer .slide .caption h4, #viewer .slide .caption h5, #viewer .slide .caption h6, .slide .caption a {
color: #fff;
}

#viewer .slide .caption h2 a { 
border-bottom: dotted 1px;
color: inherit;
}

#viewer .slide .caption p span {
margin-right:10px;
}

#viewer .slide .image {
-moz-transition: opacity 0.5s ease-in-out;
-webkit-transition: opacity 0.5s ease-in-out;
-ms-transition: opacity 0.5s ease-in-out;
transition: opacity 0.5s ease-in-out;
left:0;
top: 0;
height: 100%;
background-repeat: no-repeat;
background-size: cover;
opacity: 0;
margin:0 auto;
width: 100%;
}

#viewer .slide:before {
-moz-animation: spinner 1s linear infinite;
-webkit-animation: spinner 1s linear infinite;
-ms-animation: spinner 1s linear infinite;
animation: spinner 1s linear infinite;
-moz-transition: opacity 0.5s ease-in-out;
-webkit-transition: opacity 0.5s ease-in-out;
-ms-transition: opacity 0.5s ease-in-out;
transition: opacity 0.5s ease-in-out;
content: '';
display: block;
position: absolute;
top: 50%;
left: 50%;
width: 3em;
height: 3em;
background-image: url("../img/spinner.svg");
background-position: center;
background-repeat: no-repeat;
background-size: contain;
margin: -1.5em 0 0 -1.5em;
opacity: 0;
}

#viewer .slide.loading:before {
opacity: 1;
}

#viewer .slide.active .image {
opacity: 1;
}

body.fullscreen #viewer {
width: 100vw;
}

body.fullscreen #viewer .inner .toggle {
background-image: url("../img/open.svg");
}

body.is-preload-1 #viewer {
opacity: 0;
}

body.is-preload-2 #viewer .slide {
opacity: 0;
}

@media screen and (max-width: 1280px) {
	#viewer {
	width: calc(100% - 19em);
	}
}

@media screen and (max-width: 980px) {
	#viewer {
	width: 100%;
	}

	#viewer .inner .toggle {
	-moz-transition: opacity 0.75s ease;
	-webkit-transition: opacity 0.75s ease;
	-ms-transition: opacity 0.75s ease;
	transition: opacity 0.75s ease;
	background-image: url("../img/open.svg");
	opacity: 0;
	right: 0;
	}

	body.fullscreen #viewer .inner .toggle {
	opacity: 1;
	}
}

@media screen and (max-width: 736px) {
	#viewer .inner .toggle {
	background-size: 32px 32px;
	}

	#viewer .inner .nav-next,
	#viewer .inner .nav-previous {
	background-image: url("../img/arrow-small.svg");
	background-size: 32px 32px;
	}

	body.fullscreen #viewer .inner .toggle {
	background-image: url("../img/open-small.svg");
	}
}

@media screen and (max-width: 479px) {
	#viewer {
	-moz-transition: opacity 0.5s ease;
	-webkit-transition: opacity 0.5s ease;
	-ms-transition: opacity 0.5s ease;
	transition: opacity 0.5s ease;
	-moz-transition-delay: 0s;
	-webkit-transition-delay: 0s;
	-ms-transition-delay: 0s;
	transition-delay: 0s;
	opacity: 0;
	background-color: #282828;
	}

	#viewer .inner .toggle {
	background-image: url("../img/close-small.svg") !important;
	background-size: 32px 32px;
	}

	#viewer .slide .caption {
	position:fixed;
	padding: 1em 1em 0.5em 1em;
	}

	#viewer .inner .toggle {
	top: 0px;
	}

	body.fullscreen #viewer {
	-moz-transition-delay: 0.5s;
	-webkit-transition-delay: 0.5s;
	-ms-transition-delay: 0.5s;
	transition-delay: 0.5s;
	opacity: 1;
	}
}

/* È®Àåº¯¼ö */
#viewer .slide .caption .starRating,
#viewer .slide .caption .starRating span { overflow:hidden;display:inline-block;height:15px;background:transparent url(../img/iconStarRating.png) no-repeat; }
#viewer .slide .caption .starRating { width:79px;vertical-align:middle;text-align:left !important; }
#viewer .slide .caption .starRating span { font-size:0;line-height:0;vertical-align:top;text-indent:-100px;*text-indent:0;background-position:0 -14px; }
#viewer .slide .caption .mg_new { display:inline-block; position:absolute; left:0px; top:10px; }
#viewer .slide .caption .mg_best { position:fixed; top:2vh; left:10px; }

/* Button */
.opener { background-color:#f58a38; background-image:linear-gradient(to bottom, #f58a38, #f57c20); border:1px solid #c25706; box-shadow:inset 0 1px 0 #ffb984, inset 0 -1px 0 #db6f1d, inset 0 0 0 1px #f59851, 0 2px 4px rgba(0, 0, 0, 0.2); color:white; text-shadow:0 1px 2px rgba(0, 0, 0, 0.3); border-radius:3px; cursor:pointer; display:inline-block; font-size:12px; font-weight:400; line-height:20px; padding:3px 10px 3px; margin:0; transition:all 20ms ease-out; vertical-align:middle; font-weight:bold; text-align:center; text-decoration:none; }
.opener:hover,
.opener:focus { color:white; background:#f57c20; border-color:#773300; box-shadow:inset 0 1px 0 #ffb984, inset 0 -1px 0 #db6f1d, inset 0 0 0 1px #f59851; }
.opener:active { color:white; background:#f57c20; box-shadow:inset 0 2px 3px rgba(0, 0, 0, 0.2); } .opener .fa { color:#c25706; text-shadow:0 1px 0 rgba(255, 255, 255, 0.3); } .opener .far { color:#c25706; text-shadow:0 1px 0 rgba(255, 255, 255, 0.3); }
.opener i { color:#c25706; text-shadow:0 1px 0 rgba(255, 255, 255, 0.3); margin:0 3px; vertical-align:middle; }
.opener a { text-decoration:none; color:#fff; }
.opener:hover a { text-decoration:none; color:#fff; }