@font-face {
	font-family:Calibri;
	src:url("/fonts/Calibri.woff") format("woff");
}
@font-face {
	font-family:Myriad;
	src:url("/fonts/MyriadWebPro.woff") format("woff");
	font-weight:normal;
}
@font-face {
	font-family:Myriad;
	src:url("/fonts/MyriadWebPro-Bold.woff") format("woff");
	font-weight:bold;
}
@font-face {
	font-family:Myriad;
	src:url("/fonts/MyriadWebPro-Italic.woff") format("woff");
	font-style:italic;
}

@font-face {
	font-family:SpoqaHanSansNeo;
	src:url("/fonts/SpoqaHanSansNeo-Regular.woff") format("woff");
	font-weight:normal;
}
@font-face {
	font-family:SpoqaHanSansNeo;
	src:url("/fonts/SpoqaHanSansNeo-Light.woff") format("woff");
	font-weight:lighter;
}
@font-face {
	font-family:SpoqaHanSansNeo;
	src:url("/fonts/SpoqaHanSansNeo-Medium.woff") format("woff");
	font-weight:bold;
}


* {
	box-sizing:border-box;
	-line-height:1.5em;
}
body {
	font-family:Myriad;
	font-weight:normal;
	padding:0;
	padding-bottom:20px;
	margin:0;
	background-color:#f5f5f5;
	background-image:url(/images/x4.png);
}


div.menu-area {
	width:100%;
	padding:0 20px 20px 20px;
	margin:0 auto;
	background-color:white;
}


div.menuset {
	height:45px;
	margin:20px 0 50px 0;
}

div.menu {
	width:180px; height:100%;
	font-size:1.2em;
	background-color:#666;
	font-family:Calibri;
	color:white;
	float:left;
	margin:0 5px 10px 0;
	text-align:center;
	cursor:pointer;
	display:flex; justify-content:center; align-items:center;
	transition:background-color 0.2s ease;
}
div.menu:last-child {
	margin-right:0;
}
div.menu:hover {
	background-color:black;
	transition:background-color 0.2s ease;
}
div.menu.selected {
	background-color:red;
}

div.menu[name="intro"]::after {
	content:"Intro";
}
div.menu[name="lesson"]::after {
	content:"Lesson";
}
div.menu[name="tool"]::after {
	content:"Tool";
}
div.menu[name="hardware"]::after {
	content:"Hardware";
}
div.menu[name="service"]::after {
	content:"Service";
}



div.headline {
	width:100%; height:80px;
	background-color:red;
	color:white;
	font-size:x-large;
	display:flex; justify-content:center; align-items:center;
}
div.bottomline {
	width:1020px;
	margin:20px auto;
	color:#666;
	text-align:center;
	font-family:Myriad;
	font-size:0.9em;
}
div.bottomline::after {
	content:"Copyright 2022-2025. Mediacast, Inc.";
}

div.motd {
	width:100%;
	margin:0 auto;
	padding:0 20px;
	background-color:white;
	border:1px solid transparent;
}

div.canvas {
	width:1020px;
	margin:0 auto;
	background-color:white;
	padding:20px;
	border:1px solid rgba(48,48,48,.25);
	border-width:0 1px 1px 1px;
	box-shadow:4px 4px 9px rgba(96,96,96,.2);
}

div.footer {
	width:100%;
	padding:30px;
	margin-top:20px;
	font-size:0.95em;
	border-top:1px solid #ccc;
	color:#999;
	background-color:white;
}

div.subject {
	width:100%;
	max-width:960px;
	padding:12px 20px;
	margin:15px 0 0 0;
	margin:50px 0 30px 0;
	color:white;
	background-color:rgba(67,112,177,1);
	border-radius:3px;
	display:flex; justify-content:left; align-items:center;
	column-gap:8px;
}
.normal {
	font-weight:normal;
}
.bold {
	font-weight:bold;
}	
.dimmed {
	opacity:65%;
}
.italic {
	font-style:italic;
}
.larger {
	font-size:1.1em;
}

div.abstract {
	width:100%;
	padding:5px;
	font-size:0.95em;
	font-weight:normal;
	-color:#888;
} 


div.intro {
	margin:10px 0;
	color:#666;
	font-size:0.95em;
}

.small {
	color:gray;
	font-size:0.85em;
}

div.text-center { text-align:center; }

div.list { margin-bottom:10px; }
div.list img { margin:5px }
div.list img:first-child { margin-left:0 }

a {
	-color:#2a65bb;
	color:#164892;
	text-decoration:none;
}

.text-button {
	display:inline-block;
	padding:9px 12px;
	padding-right:20px;
	border:1px solid rgba(67,112,177,.5); 
	border-radius:7px; 
	transition:background 0.25s ease;
}
.text-button:hover {
	cursor:pointer;
	background-color:rgba(67,112,177,1);
	color:white;
	transition:background 0.25s ease;
}
.text-button::before {
	-content:"• ";
	font-family:Calibri;
	content:"→ ";
	-color:rgba(67,112,177,.6);
}

p span.toc a {
	display:block;
	width:400px;
	margin:15px 0;
}



img.icon { height:20px }




iframe.youtube {
	border:1px solid rgba(64,64,64,.5);
	width:100%; min-height:500px;
	max-width:960px; max-height:540px;
}
iframe.youtube.TBD {
	border:1px solid rgba(64,64,64,.25);
	width:300px; height:125px;
}


iframe.ims {
	border:1px solid rgba(64,64,64,.3);
	width:800px; height:450px
}


div.lesson {
	width:960px;
	margin:0 auto;
}

div.lesson p {
	margin:50px 0 80px 0;
	font-size:1.2em;
	line-height:1.75em;
}
div.lesson img {
	display:block;
	margin:60px 0;
	max-width:960px;
}



p span.bt-play-audio {
	display:block;
	width:200px; height:33px;
	line-height:33px;
	margin-left:380px;
	font-size:0.85em;
	text-align:center;
	border-radius:15px;
	background-color:#ddd;
	color:#444;
	cursor:pointer;
	transition:background-color 0.25s ease, color 0.25s ease;
}
p span.bt-play-audio.closer {
	margin-top:-40px;
}
p span.bt-play-audio:hover {
	background-color:#999;
	color:white;
	transition:background-color 0.25s ease, color 0.25s ease;
}
p span.bt-play-audio::after {
	content:"♬ 오디오로 듣기";
}



div.lesson div.title {
	font-size:1.5em;
	font-weight:bold;
	border-bottom:1px solid #ccc;
	padding-bottom:15px;
	margin-bottom:45px;
}


div.navigation {
	border-top:1px solid #ccc;
	padding-top:15px;
	-margin-top:45px;
}


div.navigation div.target { 
	display:inline-block;
	box-sizing:content-box;
	height:1.5em;
	line-height:1.5em;
	padding:2px 15px;
	border-radius:3px;
	background-color:#2a65bb;
	color:white;
	font-weight:bold;
}

div.navigation div.arrow-left, 
div.navigation div.arrow-right,
div.navigation div.arrow-top, 
div.navigation div.arrow-bottom {
	display:inline-block;
	box-sizing:content-box;
	border:3px solid #ccc;
	width:1.5em;
	height:1.5em;
	line-height:1.5em;
	font-size:1em;
	font-family:Calibri;
	font-weight:bold;
	color:gray;
	text-align:center;
	border-radius:1.5em;
	transition:border-color 0.25s ease, color 0.25s ease;
}
div.navigation div.arrow-left:hover,
div.navigation div.arrow-right:hover,
div.navigation div.arrow-top:hover,
div.navigation div.arrow-bottom:hover {
	cursor:pointer;
	border-color:orange;
	color:black;
	transition:border-color 0.25s ease, color 0.25s ease;
}
div.navigation div.arrow-left::after {
	content:"←";
}
div.navigation div.arrow-right::after {
	content:"→";
}
div.navigation div.arrow-top::after {
	content:"↑";
}
div.navigation div.arrow-bottom::after {
	content:"↓";
}


div.float-left {
	float:left;
}
div.float-right {
	float:right;
}

.tmp-headline {
	font-size:2em;
	font-weight:bold;
}
.tmp-title {
	font-size:1.25em;
	font-weight:bold;
}
.tmp-en {
	color:#46c;
	font-family:Calibri
}
.tmp-inside {
	padding:10px 20px;
}