/* CSS */

@font-face {
  font-family: 'Source Sans Pro';
  font-weight: 400;
  font-style: normal;
  src: url('/lib/Source-Sans-Pro-regular.eot');
  src: url('/lib/Source-Sans-Pro-regular.eot?#iefix') format('embedded-opentype'),
       local('Source Sans Pro'),
       local('Source-Sans-Pro-regular'),
       url('/lib/Source-Sans-Pro-regular.ttf') format('truetype'),
       url('/lib/Source-Sans-Pro-regular.woff2') format('woff2'),
       url('/lib/Source-Sans-Pro-regular.woff') format('woff'),
       url('/lib/Source-Sans-Pro-regular.svg#SourceSansPro') format('svg');
}

@font-face {
  font-family: 'Source Sans Pro';
  font-weight: 700;
  font-style: normal;
  src: url('/lib/Source-Sans-Pro-700.eot');
  src: url('/lib/Source-Sans-Pro-700.eot?#iefix') format('embedded-opentype'),
       local('Source Sans Pro Bold'),
       local('Source-Sans-Pro-700'),
       url('/lib/Source-Sans-Pro-700.ttf') format('truetype'),
       url('/lib/Source-Sans-Pro-700.woff2') format('woff2'),
       url('/lib/Source-Sans-Pro-700.woff') format('woff'),
       url('/lib/Source-Sans-Pro-700.svg#SourceSansPro') format('svg');
}

html {
  font-family: 'Source Sans Pro', sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
	background-color:#CCCCCC;
	margin:0;
	border:0;
	color:#333333;
}

/* CSS reset - see https://github.com/necolas/normalize.css/blob/master/normalize.css */
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }
a { background-color: transparent; }
a:active, a:hover { outline: 0; }
b, strong { font-weight: bold; }
h1 { font-size: 2em; margin: 0.67em 0; }
img { border: 0; }
hr { box-sizing: content-box; height: 0; }
pre { overflow: auto; }
code, kbd, pre, samp { font-family: "Lucida Console", Monaco, monospace; font-size: 0.9em; }
button, select { text-transform: none; }
button, html input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; cursor: pointer; }
button[disabled], html input[disabled] { cursor: default; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
input { line-height: normal; }
input[type="search"] { -webkit-appearance: textfield; box-sizing: content-box; }
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
textarea { overflow: auto; }
table { border-collapse: collapse; border-spacing: 0; }
td, th { padding: 0; }
input[type="search"], input[type="text"], input[type="password"], input[type="email"], textarea { -webkit-appearance:none; -webkit-border-radius:0; margin:0; }

/* ----------------------------------------------------------------------
 * Global settings
 * ---------------------------------------------------------------------- */

button, input, textarea, select, option {
	font-family: 'Source Sans Pro', sans-serif; font-size:1.0em; padding:0px 2px;
}
input, textarea, select { vertical-align:baseline; }
a { color:#BB0000; }
a:visited { color:#996666; }
tt, code { background-color:#E6E6E6; padding:2px 3px; font-size:0.9em; }

.center { text-align:center; }
.small { font-size:0.9em; color:#666666; }
.big { font-size:1.3em; line-height:1.5em; }
.stroke { text-decoration:line-through; }

span.ico:before {
	background:url(images/sprite.png) no-repeat 0px 0px;
	content:" ";
	display:inline-block;
	width:16px;
	margin-right:2px;
}

span.icoDE:before { height:11px; background-position:0px 0px; }
span.icoAT:before { height:11px; background-position:0px -11px; }
span.icoCH:before { height:11px; background-position:0px -22px; }
span.icoEU:before { height:11px; background-position:0px -33px; }
span.icoGB:before { height:11px; background-position:0px -44px; }
span.icoUS:before { height:11px; background-position:0px -55px; }
span.icoYes:before { height:14px; background-position:-16px 0px; }
span.icoNo:before { height:14px; background-position:-16px -42px; }
span.icoWarn:before { height:14px; background-position:-16px -14px; }

i.icoEnvelope, i.icoDownload, i.icoShoppingCart, i.icoFacebook, i.icoTwitter, i.icoKey, i.icoSignIn, i.icoSearch, i.icoGithub {
	display:inline-block;
	width:20px; height:20px;
	/* border:1px solid #990000; */
	background-image:url(images/sprite.svg);
	background-size: 160px 60px;
}

i.icoEnvelope { background-position: 0px 0px; }
i.icoDownload { background-position: -20px 0px; }
i.icoShoppingCart { background-position: -40px 0px; }
i.icoFacebook { background-position: -60px 0px; }
i.icoTwitter { background-position: -80px 0px; }
i.icoKey { background-position: -100px 0px; }
i.icoSignIn { background-position: -120px 0px; }
i.icoSearch { background-position: -140px 0px; }
i.icoGithub { background-position: 0px -40px; }

i.icoEnvelope.white { background-position: 0px -20px; }
i.icoDownload.white { background-position: -20px -20px; }
i.icoShoppingCart.white { background-position: -40px -20px; }
i.icoFacebook.white { background-position: -60px -20px; }
i.icoTwitter.white { background-position: -80px -20px; }
i.icoKey.white { background-position: -100px -20px; }
i.icoSignIn.white { background-position: -120px -20px; }
i.icoSearch.white { background-position: -140px -20px; }

i.icoH2Tux, i.icoH2Server, i.icoH2Key, i.icoH2Lock, i.icoH2Magic, i.icoH2Gears {
	display:inline-block;
	width:30px; height:30px;
	/* border:1px solid #990000; */
	background-image:url(images/sprite.svg);
	background-size: 240px 90px;
	margin-bottom:-6px;
}
i.icoH2Tux { background-position: -30px -60px; }
i.icoH2Server { background-position: -60px -60px; padding-right:3px; }
i.icoH2Key { background-position: -90px -60px; padding-right:3px; }
i.icoH2Lock { background-position: -120px -60px; }
i.icoH2Magic { background-position: -150px -60px; }
i.icoH2Gears { background-position: -180px -60px; padding-right:3px; }

a.button { text-decoration:none; }

button[type="submit"].icoEnvelope:before, button[type="submit"].icoKey:before, button[type="submit"].icoSignIn:before,
button[type="submit"].icoSearch:before, button[type="submit"].icoShoppingCart:before,
a.button.icoEnvelope:before
{
	content:"";
	display:inline-block;
	width:20px; height:20px;
	background-image:url(images/sprite.svg);
	background-size: 160px 60px;
	background-position: 0px -20px;
	margin-bottom:-4px;
	margin-right:4px;
}

button[type="submit"].icoEnvelope:before, a.button[type="submit"].icoEnvelope:before { background-position: 0px -20px; }
button[type="submit"].icoShoppingCart:before { background-position: -40px -20px; }
button[type="submit"].icoKey:before { background-position: -100px -20px; }
button[type="submit"].icoSignIn:before { background-position: -120px -20px; }
button[type="submit"].icoSearch:before { background-position: -140px -20px; }

.wrap { padding:0px 10px; }

@media (min-width:960px) {
	.wrap {
		max-width:950px;
		margin:0px auto;
	}
}

@media (max-width:960px) {
	.wrap {
		/* margin:0px 10px 0px 0px; */
	}
}

h1 { color:#666666; font-weight:normal; }
h2 { color:#888888; font-weight:normal; border-bottom:1px solid #DDDDDD; box-shadow:0px 1px 0px #FFFFFF;
	text-shadow:1px 1px 1px rgba(0,0,0,0.1);
}
h3 { color:#666666; font-weight:normal; border-bottom:1px solid #DDDDDD; }

span.crtsh {
	border:1px solid #990000;
	background:#FFFFFF;
	padding:1px 3px;
	font-size:0.8em;
	margin-left:3px;
}
span.crtsh > a {
	color:#990000;
	font-weight:bold;
}

/* ----------------------------------------------------------------------
 * Grid
 * ---------------------------------------------------------------------- */
div.grid {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.grid_1, .grid_2, .grid_3, .grid_4, .grid_5, .grid_6, .grid_7, .grid_8, .grid_9, .grid_10, .grid_11, .grid_12 {
	display:inline;
	float:left;
	margin-right:1%;
	margin-bottom:6px;
	box-sizing:border-box;
	padding:2px 4px 4px 4px;
	/* background:#DDDDDD; */
}

.grid > div:last-child {
	margin-right:0;
	/* background:#990000; */
}

.grid_1 { width:7.4166%; }
.grid_2 { width:15.8333%; }
.grid_3 { width:24.2499%; }
.grid_4 { width:32.6666%; }
.grid_5 { width:41.0833%; }
.grid_6 { width:49.4999%; }
.grid_7 { width:57.9166%; }
.grid_8 { width:66.3333%; }
.grid_9 { width:74.7499%; }
.grid_10 { width:81.1666%; }
.grid_11 { width:91.5833%; }
.grid_12 { width:100%; }

@media (max-width:768px) {
	div.grid { display:block; }
	.grid.layout_5_5_2 > .grid_5 { width:48.4999% }
	.grid.layout_5_5_2 > .grid_2 { width:100%; }
}

@media (max-width:640px) {
	div.grid { display:block; }
	.grid.layout_8_4 > .grid_8, .grid.layout_8_4 > .grid_4,
	.grid.layout_5_5_2 > .grid_5, .grid.layout_5_5_2 > .grid_2,
	.grid.layout_6_6 > .grid_6
	{ width:100%; }
	.grid.layout_2_2_2_2_4 > .grid_2 { width:24.2499%; }
	.grid.layout_2_2_2_2_4 > .grid_2:nth-child(4) { margin-right:0; }
	.grid.layout_2_2_2_2_4 > .grid_4 { width:100%; }
	.grid.layout_4_4_4 > .grid_4 { width:49.4999%; }
	.grid.layout_4_4_4 > .grid_4:nth-child(2) { margin-right:0; }
	.grid.layout_4_4_4 > .grid_4:last-child { width:100%; }
}

@media (max-width:460px) {
	.grid.layout_2_2_2_2_4 > .grid_2 { width:49.4999%; }
	.grid.layout_2_2_2_2_4 > .grid_2:nth-child(2n) { margin-right:0; }
	.grid.layout_2_2_2_2_4 > .grid_4 { width:100%; }
	.grid.layout_4_4_4 > .grid_4 { width:100%; }
}

/* ----------------------------------------------------------------------
 * Header
 * ---------------------------------------------------------------------- */

header {
	display:block;
	position:relative;
	background: #EEEEEE;
	z-index:20;
	height:60px;
}

#imgLogo { position:relative; left:0px; top:8px; }
#navTopToggle { display:none; }

#navTopLang {
	margin-top:12px;
	margin-right:6px;
	padding:0px 6px;
	float:right;
	border:1px solid #BBBBBB;
	background:none;
	color:#666666;
	width:150px;
	position:relative;
}

#navTopLang ul { list-style:none; margin:0; padding:0; position:absolute; top:-1px; left:-1px; width:162px;
	background-color:#FCFCFC; background-color:rgba(255, 255, 255, 0.9); border:1px solid #BBBBBB; box-shadow:0px 0px 8px rgba(0,0,0,0.4);
	display:none;
}
#navTopLang li { margin:0; padding:0; }
#navTopLang li + li { border-top:1px solid #BBBBBB }
#navTopLang a { display:block; text-decoration:none; color:#666666; padding:0px 6px; }
#navTopLang a:hover { background-color:#EEEEEE; }
#navTopLang:hover ul { display:block; }

#navTopSearch {
	margin-top:12px;
	float:right;
}
#navTopSearch input {
	border:1px solid #BBBBBB;
	background-color:#FCFCFC;
	width:100px;
	padding:0px 3px;
}

@media (max-width:640px) {
	header { height:40px; }
	#imgLogo { width:167px; height:32px; top:5px; }
}

@media (max-width:460px) {
	body { margin-top:40px; }
	header {
		border-bottom:4px solid #888888;
		box-shadow:0px -8px 16px 8px rgba(0, 0, 0, 0.4);
		position:fixed; top:0px; left:0px;
		width:100%;
	}
	#navTopLang, #navTopSearch { display:none; }
	#navTopToggle {
		display:block;
		position:absolute;
		right:4px;
		top:4px;
		width:32px;
		height:32px;
		border-radius:4px;
		background: #f0f9ff;
		background: linear-gradient(to bottom, #999999 0%, #777777 100%);
	}
}

/* ----------------------------------------------------------------------
 * Top Navigation
 * ---------------------------------------------------------------------- */

#navTop {
	position:relative;
	background: #999999;
	box-shadow:0px -8px 16px 8px rgba(0, 0, 0, 0.4);
	z-index:19;
	height:32px;
}

#navTop.scroll {
	position:fixed;
	width:100%;
}
#navTop.scroll + main, #navTop.scroll + section {
	margin-top:32px;
}

#navTop ul {
	list-style:none;
	padding:0;
	margin:0px 0px 0px -10px;
}

#navTop ul > li {
	display:inline-block;
	font-size:1.25em;
	line-height:30px;
}

#navTop > div > ul > li.active {
	background:#777777;
}

#navTop a {
	color:#FFFFFF;
	text-shadow:0px 1px 0px rgba(0,0,0,0.4);
	text-decoration:none;
	display:inline-block;
	height:32px;
	padding:0px 10px;
}

#navTop > div > ul > li:hover {
	background:#888888;
}

#navTop ul li ul {
	display:none;
	background-color:rgba(249, 249, 249, 0.9);
	position:absolute;
	margin-left:0px;
	border-left:10px solid rgba(153, 0, 0, 0.8);
	border-right:1px solid #999999;
	border-bottom-left-radius:6px;
	border-bottom-right-radius:6px;
	box-shadow:0px 4px 8px rgba(0, 0, 0, 0.4);
}

#navTop ul li ul > li {
	display:block;
	font-size:0.9em;
	border-bottom:1px solid #999999;
}

#navTop ul > li ul > li + li {
	margin:0;
}

#navTop ul li ul > li > a {
	color:#666666;
	text-shadow:none;
	display:block;
	height:auto;
	margin:0px;
	padding:0px 8px 2px 8px;
}

#navTop ul li ul > li > a:hover {
	background:#DDDDDD;
}

#userinfo { float:right; font-size:1.25em; line-height:30px; }

@media (max-width:640px) {
	#navTop { height: 24px; }
	#navTop.scroll + main, #navTop.scroll + section { margin-top:24px; }
	#navTop ul > li { font-size:1.0em; line-height:22px; }
	#navTop a { height:24px; padding:0px 4px; }
}

@media (max-width:460px) {
	#navTop {
		box-shadow:none;
		height:auto;
		position:absolute;
		/* display:block; */
		display:none;
		background:transparent;
		left:8%;
		width:84%;
	}
	#navTop ul {
		margin:0px 16px;
		box-shadow:0px 0px 16px 8px rgba(0, 0, 0, 0.2);
		background:#EEEEEE;
		border-left:10px solid #990000;
		border-right:1px solid #999999;
		border-bottom-left-radius:6px;
		border-bottom-right-radius:6px;
	}
	#navTop ul > li {
		display:block;
		border-bottom:1px solid #999999;
		font-size:16pt;
	}
	#navTop ul > li:last-child, #navTop ul > li:last-child > a {
		border-bottom-right-radius:6px;
	}
	#navTop a {
		color:#666666;
		text-shadow:none;
		margin:0;
		padding:4px 8px 6px 8px;
	}
	#navTop li:hover {
		background:#DDDDDD;
	}
	#navTop ul li ul {
		position:relative;
		border-left:10px solid #999999;
		border-top:1px solid #999999;
		border-top-left-radius:6px;
		border-top-right-radius:6px;
		margin:4px;
	}
	#navTop ul li ul > li > a {
		padding:4px 8px 6px 8px;
	}
}

/* ----------------------------------------------------------------------
 * Various sections
 * ---------------------------------------------------------------------- */
section.sectImg {
	position:relative;
	background:#777777 no-repeat center center;
	background-size:cover;
}
section.sectImg:before {
	content:"";
	display:block;
	padding-top:30%;
}

div.sectImgContent {
	position:absolute;
	top:0;
	left:0;
	bottom:0;
	right:0;
	color:#FFFFFF;
}

/* ----------------------------------------------------------------------
 * Main Content
 * ---------------------------------------------------------------------- */

main {
	background-color:#F9F9F9;
	padding-top:8px;
	padding-bottom:16px;
}

main p { text-align:justify; }

main:after {
    content: ".";
    clear: both;
    display: block;
    visibility: hidden;
    height: 0px;
}

main > .wrap {
	padding-left:150px;
}

main.full > .wrap {
	padding-left:10px;
}

@media (min-width:960px) {
	main > .wrap {
		max-width:810px;
	}
	main.full > .wrap {
		max-width:950px;
	}
}

#subnav {
	display:block;
	float:left;
	width:140px;
	margin-left:-150px;
	/* border:1px solid #999999; */
}
#subnav.scroll {
	float:0;
	position:fixed;
}
#subnav ul { list-style:none; margin:0; padding:0; }
#subnav li.active { background-color:#EEEEEE; }
#subnav a { display:block; color:#660000; text-decoration:none; padding:4px 4px 4px 10px; }
#subnav a:hover { background-color:#EEEEEE; }

@media (max-width:640px),
only screen and (orientation:portrait) and (max-device-width:959px)
{
	#subnav { display:none; }
	main > .wrap { padding-left:10px; }
}

/* ----------------------------------------------------------------------
 * Footer
 * ---------------------------------------------------------------------- */
footer {
	font-size:0.8em;
	padding-top:12px;
	padding-bottom:12px;
	color:#666666;
}
footer a {
	color:#885555; text-decoration:none;
}
footer ul a {
	color:#666666;
}
footer a:hover {
	color:#444466;
	text-decoration:underline;
}
footer ul { list-style:none; margin:0; padding:0; }
footer li { margin:0; padding:0; font-weight:bold; }
footer li > ul > li { font-weight:normal; }

p.social i { position:relative; top:6px; }

/* ------------------------------------------------------------------------
 * Forms and form elements
 * ------------------------------------------------------------------------ */

input[type="text"], input[type="password"], input[type="email"], input[type="search"], select, textarea {
	border:1px solid #BBBBBB;
	background-color:#FFFFFF;
	padding:3px;
	margin-bottom:4px;
	color:#993333;
	box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);
	transition:border-color ease-in-out .15s, box-shadow ease-in-out .15s
}

input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus, input[type="search"]:focus, select:focus, textarea:focus {
	border-color:#BB8888;
	outline:0;
	box-shadow:inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(153, 51, 51, 0.6)
}

form:not([novalidate]) input[type="text"]:invalid, form:not([novalidate]) input[type="password"]:invalid,
form:not([novalidate]) input[type="email"]:invalid, form:not([novalidate]) input[type="number"]:invalid,
form:not([novalidate]) textarea:invalid,
input.error, select.error, textarea.error, .error input, .error select, .error textarea
{
	border:1px solid #CC0000;
	outline:0;
}

input[type="submit"], button[type="submit"], a.button {
	background: linear-gradient(to bottom, #8ec022 0%,#668329 100%);
	border:1px solid #339933;
	border-left-color:#CCFFCC;
	border-top-color:#CCFFCC;
	box-shadow:0px 0px 6px rgba(0, 0, 0, 0.3);
	color:#FFFFFF;
	text-shadow:0px 1px 0px #335500;
	/* font-weight:bold; */
	text-transform:uppercase;
	padding:6px 10px;
	margin:6px 0px;
}

input[type="submit"]:hover, button[type="submit"]:hover, a.button:hover {
	background: linear-gradient(to bottom, #7eb012 0%,#567319 100%);
	box-shadow:0px 0px 6px rgba(0, 0, 0, 0.5);
}

a.button.gray { background: linear-gradient(to bottom, #888888 0%,#666666 100%); border-color:#444444; border-left-color:#EEEEEE; border-top-color:#EEEEEE; }

fieldset.OLD {
	border:0;
	margin:0;
	padding:0;
}

fieldset {
	border:1px solid #CCCCCC;
	margin:0px 10px;
	background-color:#F0F0F0;
}

fieldset > ol {
	list-style:none;
	margin:0;
	padding:0;
}

fieldset > ol > li {
	display:table-row;
}

fieldset > ol > li > label:first-child {
	display:table-cell;
	text-align:right;
	padding-top:4px;
	padding-right:6px;
	color:#666666;
	vertical-align:top;
}

/* ----------------------------------------------------------------------
 * Tables
 * ---------------------------------------------------------------------- */
table.tab1 > tbody > tr > th, table.tab1 > tbody > tr > td { vertical-align:baseline; }
table.tab1 > tbody > tr > th { text-align:right; padding-right:5px; color:#777777; }

table.tab2 > tbody > tr > th { text-align:left; vertical-align:baseline; border-bottom:1px solid #990000; padding-right:8px; }
table.tab2 > tbody > tr > td { vertical-align:baseline; padding-right:8px; }

table.tab3 { background-color:#EEEEEE; }
table.tab3 > tbody > tr > th { background-color:#E6E6E6; color:#666666; }
table.tab3 > tbody > tr > th.left { background-color:#EEEEEE; text-align:right; }
table.tab3 > tbody > tr > th, table.tab3 > tbody > tr > td { padding:2px 6px; border:1px solid #BBBBBB; }

.dColour { width:100%; overflow:visible; white-space:nowrap; }
.dColour:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.dColour ul { list-style:none; margin:0; padding:0; display:inline-block; position:relative; xfloat:left; z-index:1; }
.dColour li { text-align:center; padding:2px 10px; }
.dColour ul:first-child li { text-align:left; }
.dColour ul li:nth-child(2n) { background-color:#EAEAEA; }
.dColour ul.green li { background-color:#D4E3D4; }
.dColour ul.green li:nth-child(2n) { background-color:#C7D6C7; }
.dColour ul.yellow li { background-color:#FAFAD4; }
.dColour ul.yellow li:nth-child(2n) { background-color:#EDEDC7; }
.dColour ul.red li { background-color:#EBD4D4; }
.dColour ul.red li:nth-child(2n) { background-color:#DEC7C7; }
.dColour ul.active { box-shadow:0px 0px 15px rgba(0,0,0,0.5); z-index:2; }
.dColour ul > li { min-width:100px; }
.dColour ul > li > span.edition {
  display:block;
  font-weight:bold;
  font-size:1.2em;
  background:#666666;
  color:#F9F9F9;
  margin:-2px -10px 2px -10px;
}
.dColour ul.active > li > span.edition {
  padding:4px 0px;
}
.dColour ul > li > span.price {
  font-size:2.0em;
  font-weight:bold;
  color:#660000;
  text-shadow:1px 1px 0px rgba(255,255,255,0.3);
}
.dColour ul > li > span.price > sup {
  position:relative;
  top:2px;
  left:-3px;
  font-size:0.6em;
}
.dColour ul > li > span.perMonth {
  display:block;
  text-align:right;
  font-size:0.8em;
  color:#999999;
  margin-top:-3px;
}

div.box1 {
	background-color:#EEEEEE;
	/* border:1px solid #990000; */
	/* font-size:0.95em; */
	font-size:0.85em;
}
div.box1 > h3 {
	margin:-2px -4px 0px -4px;
	padding:2px 4px 4px 4px;
	background:#AAAAAA;
	color:#663333;
	/* font-size:1.1em; */
	font-size:1.0em;
}

div.entryRow { display:table-row; }
/* div.entryRow:nth-child(2n) { background-color:#E6E6E6; } */
div.entryData { display:table-cell; padding-right:4px; padding-bottom:4px; }
div.entryData:last-child { padding-right:0; }
div.entryData span.author { color:#999999; }

ul.ico { list-style:none; margin:0 0 0 10px; padding:0; }
ul.ico > li { padding-left:18px; }
ul.ico > li:before {
	background:url(images/sprite.png) no-repeat -16px 0px;
	content:" ";
	display:inline-block;
	width:14px;
	height:14px;
	margin:0px 6px 0px -20px;
	position:relative; top:1px;
}
ul.ico > li.feature:before { background-position: -16px -28px; }
ul.ico > li.bugfix:before { background-position: -16px -42px; }
ul.ico > li.other:before { background-position: -16px -56px; }
ul.ico > li.important:before { background-position:-16px -14px; }

div.note {
	background: #EEFFBB;
	background: linear-gradient(to bottom,  #F9FFF0 0%,#EEFFBB 1%,#DDFF44 100%);
	box-shadow: 0px 2px 3px #CCCCCC;
	border:1px solid #99CC00;
	border-radius: 5px;
	padding:5px 10px;
	margin:12px 0px;
}
div.note p {
	color:#333333;
	padding:0;
	/* font-size:12px; */
	/* line-height:16px; */
	margin:5px 0px;
	text-shadow:0px 1px 0px #EEFFBB;
}

div.important {
	background: #FFCC77;
	background: linear-gradient(to bottom,  #FFF0F9 0%,#FFCC77 1%,#FF9900 100%);
	box-shadow: 0px 2px 3px #AAAAAA;
	border:1px solid #CC7700;
	border-radius: 5px;
	padding:5px 10px;
	margin:12px 0px;
}

div.divTabs {
	border:1px solid #CCCCCC;
	padding:0px 10px;
}

ul.ulTabs {
	list-style:none; margin:5px 0px; padding:0px;
	background: #eeeeee;
	background: linear-gradient(to bottom, #F9F9F9 0%, #DDDDDD 100%);
	display:block;
	position:relative;
	width:100%;
	height:auto;
	margin:0px -10px;
	padding:5px 10px 0px 10px;
}

ul.ulTabs > li {
	display:inline-block;
	padding:0; margin:0;
	border-left:1px solid #CCCCCC;
	border-top:1px solid #CCCCCC;
	border-right:1px solid #CCCCCC;
	border-bottom:0;
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	padding:5px 15px;
}

ul.ulTabs > li:hover {
	background: linear-gradient(to bottom, #E9E9E9 0%, #CCCCCC 100%);
}

ul.ulTabs > li.active {
	background: #F9F9F9;
}

ul.ulFAQ > li > div { display:none; }

pre.screen, pre.code {
	background-color:#EEEEEE;
	font-size:0.9em;
	line-height:1.2em;
	padding:4px 6px;
	border:1px dashed #AAAAAA;
	overflow:auto;
}
pre.screen strong, pre.code strong {
	font-weight:bold;
	color:#000000;
	background-color:#DDDDDD;
}

pre.programlisting, pre.file {
	background-color:#EEFFCC;
	font-size:0.9em;
	line-height:1.2em;
	padding:4px 6px;
	border:1px dashed #AABB99;
	overflow:auto;
}
pre.programlisting strong, pre.file strong {
	font-weight:bold;
	color:#000000;
	background-color:#EEEECC;
}

.pic-left {
	float:left;
	padding:0px 10px 3px 0px;
}

.pic-right {
	float:right;
	padding:0px 0px 3px 10px;
}

.pic-scale {
	width:100%;
}

ol.olSearch li { padding-bottom:10px; }
ol.olSearch a { font-weight:bold; }
ol.olSearch div.description { font-size:1.0em; }
ol.olSearch div.url { font-size:0.85em; color:#339933; }

.dPartner {
  border:1px solid #BBBBBB;
  display:inline-block;
  font-size:0.9em;
  margin:0px 12px 12px 0px;
  xvertical-align:middle;
}
.dPartner > a {
  display:block;
  padding:5px;
  text-decoration:none;
  color:#777777;
  text-align:center;
  position:relative;
  width:160px;
  line-height:70px;
}
.dPartner img { vertical-align:middle; }
.dPartner > a:hover { background-color:#E6E6E6; }

ol.olImg {
	list-style:none;
	margin:0;
	padding:0;
}

ol.olImg > li {
	display:table-row;
}

ol.olImg > li > img {
	display:table-cell;
	text-align:center;
	padding-top:4px;
	padding-right:10px;
	padding-bottom:10px;
	vertical-align:top;
}

ol.olImg > li > span {
	display:table-cell;
	padding-bottom:10px;
}

/* ----------------------------------------------------------------------
 * DocBook
 * ---------------------------------------------------------------------- */
div.docHeader {
	float:right;
	background-color:#F6F6F6;
	border:1px solid #CCCCCC;
	padding:2px 6px;
	margin:0px 0px 3px 6px;
}

div.docFooter {
	border-top:1px solid #666666;
	font-size:0.9em;
}
div.docFooter td {
	font-size:0.9em;
}

table.soaptable th {
	background-color:#CCCCCC;
	padding:0px 4px;
}

table.soaptable td {
	border-bottom:1px solid #CCCCCC;
	padding:0px 4px;
	vertical-align:baseline;
}

table.soaptable td.command {
	font-family:"Lucida Console", Monaco, monospace;
	font-size:0.9em;
}

.dbTab1 > table {
	border:1px solid #BBBBBB !important;
}

.dbTab1 > table > thead > tr > th {
	border-bottom:1px solid #BBBBBB !important;
	background-color:#DDDDDD;
}

.dbTab1 > table > tbody > tr:nth-child(2n) {
	background-color:#FFFFFF;
}

.dbTab1 > table > tbody.footnotes > tr {
	border-top:1px solid #BBBBBB;
}

.dbTab1 > table th,
.dbTab1 > table td
{
	border:0 !important;
	vertical-align:baseline;
	padding:2px 4px;
}

.scrCrop table {
	border:1px solid #DDDDDD !important;
	width:auto !important;
	max-width:90% !important;
	display:inline-block;
}

/* ----------------------------------------------------------------------
 * Start page
 * ---------------------------------------------------------------------- */

.sectImgContent { font-size:2.0vw; }
#slogan1, #slogan2 {
  display:inline-block;
  font-size:3em;
  font-size:5vw;
  background:rgba(128, 0, 0, 0.6);
  padding:0px 15px;
}

a.btnTop {
  position:relative;
  vertical-align:baseline;
  /* font-size:2.0vw; */
  font-size:1.4em;
  background:rgba(160, 160, 160, 0.3);
  border:0.25vw solid #FFFFFF;
  color:#FFFFFF;
  padding:0.2vw 0.5vw;
  text-decoration:none;
}
a.btnTop:hover { background:rgba(128, 0, 0, 0.6); }
a.btnTop + a.btnTop { margin-left:3.0vw; }
a.btnTop span {
  /* border:1px solid #CCCCFF; */
  position:relative;
  display:inline-block;
  width:1em;
  height:1em;
  vertical-align:baseline;
  margin-bottom:-0.2em;
}
a.btnTop span svg {
  position:absolute;
  height:100%;
  left:0;
}
#svgDemo, #svgCart { fill:#FFFFFF; }

@media (max-width:640px) {
	a.btnTop {
		font-size:2.0em;
	}
}

/*
#versionBox {
  width:600px;
  height:60px;
  margin:0px auto;
  xborder:1px solid #CCCCCC;
  background: #f0f9ff;
  background: linear-gradient(to bottom, #F6F6F6 0%, #DDDDDD 100%);
  box-shadow:0px 0px 16px rgba(0, 0, 0, 0.5);
  position:relative;
  margin-top:-40px;
}
@media (max-width:640px) {
  #versionBox {
    display:none;
  }
}
#versionBox #dVersion {
  float:left;
  text-align:center;
  font-weight:bold;
  font-size:1.5em;
  line-height:1.1em;
  padding:2px 6px;
}
#versionBox #dVersion span { color:#666666; }
#versionBox #dDownload {
  float:right;
  width:60px;
  height:100%;
  border-left:1px solid #CCCCCC;
  box-shadow:-1px 0px 0px #F6F6F6;
  background: linear-gradient(to bottom, #FFFFCC 0%, #FFFF99 100%);
}
#versionBox #dDownload:hover {
  background: linear-gradient(to bottom, #EEEEBB 0%, #EEEE88 100%);
}
*/

div.dNews {
	border:1px solid #DDDDDD;
	background:#EEEEEE;
	padding:3px 6px;
	color:#990000;
	font-size:0.9em;
	line-height:1.2em;
}

.swiper-container {
	padding:0;
	border:1px solid #999999;
}

/* ----------------------------------------------------------------------
 * Shop
 * ---------------------------------------------------------------------- */
table.tabOrderCount { background-color:#F9F9F9; margin:0; padding:0; border-collapse:collapse;
	border-left:1px solid #E5E5E5; border-top: 1px solid #E5E5E5; border-right:1px solid #E5E5E5;
}
table.tabOrderCount tr { }
table.tabOrderCount td { border-bottom:1px solid #E5E5E5; color:#666666; line-height:13px; padding-right:12px; padding-left:8px; padding-bottom:4px; }
table.tabOrderCount td strong.sum { font-size:14px; font-weight:bold; }
table.tabOrderCount td.title { color:#990000; font-weight:bold; font-size:13px; border-bottom:0; padding-top:6px; }

table.tabOrderOverview { border-collapse:collapse; }
table.tabOrderOverview td { padding-right:8px; white-space:nowrap; }
table.tabOrderOverview td.right { text-align:right; }
table.tabOrderOverview tr.lined td { border-top:1px solid #AAAAAA; }

div.divNumSelect { position:relative; width:66px; height:36px; background:url(images/numselect-bg.png) no-repeat 0px 0px; }
div.divNumSelect > div.plus { position:absolute; top:0px; left:48px; width:18px; height:18px; background:url(images/numselect-bg.png) no-repeat -66px 0px; }
div.divNumSelect > div.minus { position:absolute; top:18px; left:48px; width:18px; height:18px; background:url(images/numselect-bg.png) no-repeat -66px -18px; }
div.divNumSelect > div.plus:hover { background-position:-84px 0px; }
div.divNumSelect > div.plus:active { background-position:-102px 0px; }
div.divNumSelect > div.minus:hover { background-position:-84px -18px; }
div.divNumSelect > div.minus:active { background-position:-102px -18px; }
div.divNumSelect input { width:46px; border:0; margin:2px; padding-top:2; background:none; font-size:23px; font-weight:bold; color:#000000; text-align:center; }
div.divNumSelect > div.error { position:absolute; left:80px; top:0px; border:2px solid #990000; background:#FF6666; padding:4px; color:#FFFFFF; }

table.tabOrderPay { margin:0; padding:0; border-collapse:collapse;
	border-left:1px solid #CCCCCC; border-top: 1px solid #CCCCCC; border-right:1px solid #CCCCCC;
}
table.tabOrderPay tr { }
table.tabOrderPay td { border-bottom:1px solid #CCCCCC; color:#666666; line-height:13px; padding-right:12px; padding-left:8px; padding-bottom:4px; }

.divFormRow { display:table-row; }
.divFormInput { display:inline-block; }

div.agbbox { padding: 3px; border:1px solid #999999; overflow:scroll; height:200px; }
div.agbbox p { font-size:0.8em; }
div.agbcheck { margin:5px 0px; padding:10px; border:1px solid #999999; background-color:#DDDDDD; }

div.errorbox { margin:5px 0px; padding:5px; border:1px solid #880000; background-color:#FFFF99; }
div.errorbox p { color:#880000; }

/* ----------------------------------------------------------------------
 * Wiki
 * ---------------------------------------------------------------------- */
div.table > table.inline { border-collapse:collapse; border:1px solid #DDDDDD; }
div.table > table.inline > thead > tr > th { text-align:left; background-color:#DDDDDD; padding-right:6px; }
div.table > table.inline > tbody > tr > td { border-bottom:1px solid #DDDDDD; padding-right:6px; vertical-align: top; }
div.level1 > blockquote { border-left:4px solid #BBBBDD; padding-left:12px; margin-left:0; color:#666666; }

/* <EOF>----------------------------------------------------------------- */
