@charset "UTF-8";

.hidden{
	display:none;
	visibility:hidden;
}
/* CSS Reset */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}
/* remember to define focus styles! */
:focus {
	outline: 0;
}
body {
	line-height: 1;
	color: black;
	background: white;
}
ol, ul {
	list-style: none;
}
/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: separate;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
	font-weight: normal;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
}
blockquote, q {
	quotes: "" "";
}

strong {
font-weight: 700;
color: #231f20;
}

em {
font-style: italic;
}

iframe {
border: 0px none;
}


/* HTML */
body {
background: #225373 url(../img/body_alasivu.jpg) no-repeat center top;
font: 100 12px/20px Arial, Helvetica, sans-serif;
color: #444;
}

h1 {
font: 400 22px/26px 'Open Sans', Arial, Helvetica, sans-serif;
color: #53971c;
padding: 5px 0;
background: url("../img/dotted_line.png") repeat-x center bottom;
margin-bottom: 12px;
}

.secondarycol h1 {
font-size: 18px;
line-height: 22px;
padding: 4px 0;
margin-bottom: 5px;
}

h2 {
font: 700 14px/20px Arial, Helvetica, sans-serif;
color: #53971c;
padding: 5px 0 10px 0;
}

h3 {
font: 700 14px/18px Arial, Helvetica, sans-serif;
color: #231f20;
padding: 5px 0 10px 0;
}

h4, h5 {
font: 700 12px/18px Arial, Helvetica, sans-serif;
color: #231f20;
padding: 5px 0 10px 0;
}

p, ul {
padding: 0 0 10px 0;
}

ol {
list-style-type: decimal;
float: none;
/* width: 488px; */
padding: 0 0 10px 20px;
padding-left: 30px;
}

ol ol {
list-style-type: lower-alpha;
}

table {
width: 100%;
margin: 0 0 10px 0;
}

table td {
padding: 5px 10px;
}

.calendar td, .calendar th {
padding: 4px 0;
text-align: center;
width: 14.3%;
border-bottom: 1px solid #f5f6f7;
border-right: 1px solid #f5f6f7;
}

.calendar thead td {
font-weight: bold;
text-transform: capitalize;
}

#content .calendar thead td a {
color: #444;
}

#content .calendar thead td a:hover {
color: #000;
}

#content .calendar tbody td a {
color: #fff;
padding: 0px;
}

/* Rakenteen määrittely */

#login {
width: 280px;
margin: 30px auto;
}

#login #header {
background: url(/media/img/header_etusivu.png) no-repeat top center;
}

#login #header .logo {
padding: 25px 0 15px 30px;
width: 218px;
}

#login #content {
background: url(/media/img/content_etusivu.png) repeat-y top center;
padding: 0 30px 10px 30px;
}

#login #footer {
background: url(/media/img/footer_etusivu.png) no-repeat top center;
padding: 30px 0 20px 0;
text-align: center;
font: 100 12px/18px Arial, Helvetica, sans-serif;
color: #fff;
}

#wrap {
width: 980px;
margin: 0 auto;
}

#wrap #search {
height: 40px;
overflow: hidden;
}

#wrap #header {
height: 120px;
background: url(/media/img/header_alasivu.png) no-repeat top left;
position: relative;
}

#wrap #header .logo {
padding: 27px 0 23px 40px;
width: 187px;
display: inline-block;
vertical-align: top;
}

.banner-right {
	display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    float: right;
    width: 728px;
    height: 90px;
    padding: 15px 20px 15px 0;
}

.banner-img-flash a {
    position: absolute;
    width: 100%;
    height: 100%;
}

.banner-img-flash {
    position: relative;
}

#menu {
width: 980px;
height: 50px;
background: #0c6e28 url(/media/img/menu_alasivu.png) no-repeat top center;
float: left;
}

#menu ul {
list-style: none;
padding: 0 30px;
}

#menu ul.level1 li {
font: 900 12px/50px Arial, Helvetica, sans-serif;
padding: 0 0 0 0;
display: block;
float: left;
}

#menu ul.level1 li.last a {
background: none;
}

#menu ul.level1 li a {
color: #fff;
padding: 0 12px 0 10px;
display: block;
background: url(/media/img/menu_separator_alasivu.png) no-repeat center right;
text-decoration: none;
}

#menu ul.level1 li a:hover,
#menu ul.level2 li a:hover {
color: #231f20;
}

#menu ul.level1 li.current a {
color: #231f20;
}

#menu ul.level1 li.current ul li a {
color: #fff;
}

#menu ul.level1 li.current ul li a:hover {
color: #231f20;
}


#menu ul.level1 li.current ul li.current a {
color: #231f20;
}

#menu ul.level2 {
float: none;
position: absolute;
display: none;
padding: 0;
margin: 0;
}

#menu ul.level2 li,
#menu ul.level2 li.last {
font: 900 12px/32px Arial, Helvetica, sans-serif;
display: block;
float: none;
position: relative;
margin: 0;
padding: 0;
height: 32px;
width: auto;
background: url(/media/img/sub.jpg) repeat-x;
}

#menu ul.level2 li a {
position: relative;
display: block;
float: none;
white-space: nowrap;
height: 32px;
line-height: 16px;
padding: 8px;
background: transparent;
color: #fff;
}

#wrap #content {
width: 940px;
padding: 15px 20px 0 20px;
background: url(../img/content_alasivu.png) repeat-y center center;
}

#wrap #footer {
padding: 35px 0 20px 0;
background: url(../img/footer_alasivu.png) no-repeat top left;
text-align: center;
font: 100 12px/18px Arial, Helvetica, sans-serif;
color: #fff;
}

#content .clear {
width: 100%;
clear: both;
height: 1px;
line-height: 1px;
font-size: 1px;
}

#content .spacer {
height: 10px;
width: 100%;
background: #fff;
}

/* Content */

.etusivu #content .secondarycol {
float: right;
width: 240px;
padding: 15px 0 0 0;
}

.alasivu #content .secondarycol {
float: left;
width: 280px;
padding: 15px 0 0 0;
}


.etusivu #content .maincol {
float: left;
width: 690px;
padding: 15px 0 0 0;
}

.alasivu #content .maincol {
float: right;
width: 650px;
padding: 15px 0 0 0;
}


.etusivu .secondarycol .box {
margin: 0;
background: url(../img/etusivu_secondarycol_box_body.png) repeat-y left top;
}

.etusivu .secondarycol .boxheader {
background: url(../img/etusivu_secondarycol_box_header.png) no-repeat top left;
padding: 20px 0 0 0;
}

.etusivu .secondarycol .boxfooter {
background: url(../img/etusivu_secondarycol_box_footer.png) no-repeat bottom left;
padding: 0 20px 10px 20px;
}

body.etusivu .maincol .box {
margin: 0;
background: url(../img/etusivu_maincol_box_body.png) repeat-y left top;
padding: 0;
}

body.etusivu .maincol .boxheader {
background: url(../img/etusivu_maincol_box_header.png) no-repeat top left;
padding: 20px 0 0 0;
}

body.etusivu .maincol .boxfooter {
background: url(../img/etusivu_maincol_box_footer.png) no-repeat bottom left;
padding: 0 20px 10px 20px;
overflow: hidden;
}

body.etusivu .maincol .doublebox {
margin: 0;
background: url(../img/etusivu_maincol_doublebox_body.png) repeat-y left top;
padding: 0;
}

body.etusivu .maincol .doubleboxheader {
background: url(../img/etusivu_maincol_doublebox_header.png) no-repeat top left;
padding: 20px 0 0 0;
}

body.etusivu .maincol .doubleboxfooter {
background: url(../img/etusivu_maincol_doublebox_footer.png) no-repeat bottom left;
padding: 0 20px 10px 20px;
overflow: hidden;
}

body.etusivu .maincol .leftbox {
width: 300px;
float: left;
}

body.etusivu .maincol .rightbox {
width: 300px;
float: right;
}


body.alasivu .maincol .box {
margin: 0;
background: url(../img/alasivu_maincol_box_body.png) repeat-y left top;
padding: 0;
}

body.alasivu .maincol .boxheader {
background: url(../img/alasivu_maincol_box_header.png) no-repeat top left;
padding: 20px 0 0 0;
}

body.alasivu .maincol .boxfooter {
background: url(../img/alasivu_maincol_box_footer.png) no-repeat bottom left;
padding: 0 20px 10px 20px;
overflow: hidden;
}

.alasivu .secondarycol .box {
margin: 0;
background: url(../img/alasivu_secondarycol_box_body.png) repeat-y left top;
}

.alasivu .secondarycol .boxheader {
background: url(../img/alasivu_secondarycol_box_header.png) no-repeat top left;
padding: 20px 0 0 0;
}

.alasivu .secondarycol .boxfooter {
background: url(../img/alasivu_secondarycol_box_footer.png) no-repeat bottom left;
padding: 0 20px 10px 20px;
}

#rakennus {
border: none;
margin: 10px 0 0 0;
}

/* Content elements */

#content p.btn {
background: url(../img/btn_a.png) no-repeat left top;
padding: 0 0 14px 5px;
display: block;
height: 24px;
float: left;
}

#content p.btn a {
background: url(../img/btn_a_span.png) no-repeat right top;
display: block;
width: auto;
height: 24px;
padding: 0 18px 0 5px;
font: 900 11px/24px Arial, Helvetica, sans-serif;
text-transform: uppercase;
color: #fff;
text-decoration: none;
}

#content p.btn a:hover {
color: #231f20;
}

#content ul li {
background: url(../img/li_alasivu.png) no-repeat top left;
padding: 0 0 0 17px;
}

#content a {
color: #396f9d;
text-decoration: none;
}

#content a:hover {
color: #1c364d;
}

.kuvaoikealle {
float: right;
margin: 5px 5px 10px 20px;
}

/* Language selection */

#lang {
width: 65px;
height: 24px;
padding: 8px 0 8px 7px;
background: url(../img/search_separator.png) no-repeat left center;
float: right;
}

ul#langSelection li {
display: block;
width: 24px;
height: 24px;
float: left;
}

ul#langSelection li a {
display: block;
width: 24px;
height: 24px;
text-indent: -5000px;
}

ul#langSelection li#selectLang-FI a {
background-image: url(../img/search_lang_fi.png);
}

ul#langSelection li#selectLang-EN a {
background-image: url(../img/search_lang_en.png);
}

ul#langSelection li a {
background-position: top center;
background-repeat: no-repeat;
}

ul#langSelection li a:hover {
background-position: bottom center;
}

/* Search Form */

.searchform {
padding: 20px 0;
}

#searchform {
float: right;
height: 24px;
padding: 8px 6px 8px 0;
color: #225373;
line-height: 24px;
/*background: url(../img/search_separator.png) no-repeat left center; */
}

#searchform .search-input {
width: 146px;
height: 18px;
background: url(../img/search_input_field.png) no-repeat center center;
border: 0px none;
vertical-align: middle;
padding: 3px 3px;
font: 500 12px/18px Arial, Helvetica, sans-serif;
}

#searchform input.search-btn {
width: 62px;
height: 24px;
background: url(../img/search_input_submit.png) no-repeat top center;
border: 0px none;
cursor: pointer;
color: #fff;
vertical-align: middle;
font: 500 12px/18px Arial, Helvetica, sans-serif;
padding: 3px 0;
}

#searchform input.search-btn:hover {
background-position: bottom center;
color: #bdf;
}

/* Links */

#links {
float: right;
height: 24px;
padding: 8px 6px;
color: #225373;
line-height: 24px;
}

#links li {
display: block;
height: 24px;
float: left;
background: url(../img/search_separator.png) no-repeat right center;
padding: 0 3px 0 0;
}

#links li a {
display: block;
padding: 0 6px 0 6px;
height: 24px;
color: #fff;
text-decoration: none;

}

#links li a:hover {
text-decoration: underline;
color: #000;
}

#links a#fb {
padding-left: 22px;
background: url(../img/facebook_icon.png) no-repeat left center;
}


/* News list */

.newslist p {
padding: 0 0 6px 0;
background: url(../img/dotted_line.png) repeat-x bottom center;
margin: 0 0 5px 0;
}

.newslist h3 {
font: 900 12px/18px Arial, Helvetica, sans-serif;
padding: 0;
}

/* Calendar list */

.calendarlist .item {
padding: 0 0 6px 0;
background: url(../img/dotted_line.png) repeat-x bottom center;
margin: 0 0 5px 0;
overflow: hidden;
}

.calendarlist .text {
float: left;
width: 230px;
}

.calendarlist .text p {
padding: 0;
}

.calendarlist p.date {
color: #636465;
font-size: 11px;
}

.calendarlist p.date span {
color: #444;
}

.calendarlist .image {
float: right;
width: 60px;
}

.calendarlist .image img {
border: 1px solid #c3c4c5;
padding: 2px;
background: #fff;
}

/* Lomakkeet */

.formHolder td {
vertical-align: middle;
padding: 4px 10px 4px 0;
}

td.formLabelHolder {
font-weight: bold;
vertical-align: top;
}

.formField-heading th {
padding: 8px 0;
font-size: 14px;
font-weight: bold;
}


.formTextinput, .formEmailinput, .formTextarea, .search_keywords {
font: 100 12px/18px Arial, Helvetica, sans-serif;
border: 1px solid #c0c2c4;
-moz-border-radius: 4px;
border-radius: 4px;
padding: 4px;
width: 280px;
}

.search_keywords {
margin-right: 5px;
}


.formTextinput:focus, .formEmailinput:focus, .formTextarea:focus, .search_keywords:focus {
border: 1px solid #909294;
}

.formSubmit, .search_submit {
font: 900 12px/18px Arial, Helvetica, sans-serif;
background: url(../img/menu_alasivu.png) no-repeat center center;
border: 1px solid #53971C;
-moz-border-radius: 4px;
border-radius: 4px;
padding: 4px;
width: 80px;
color: #fff;
cursor: pointer;
}

.formSubmit:hover, .search_submit:hover {
color: #000;
}

.Required {
color: #a00;
padding: 0 3px;
font-weight: bold;
}

a.kalenterilinkki {
text-align: center;
/* background: url(../img/li_alasivu.png) no-repeat top left; */
padding: 5px 0;
}
p.event, .calendar2 p { 
color: #000000; 
padding: 0 6px;
}

#subnavlist .calendar2 p.event{
	display:list-item;
	list-style-type:square;
	margin-left:13px;
	padding-left:0px;
}

#subnavlist .calendar2 p.event a.kalenterilinkki{
	text-align:left;
}

.calendar2 a.kalenterilinkki:hover {

text-decoration: underline;
}

.calendar2 {  
padding: 10px 5px 5px; 
}

.secondarycol ul#navlist ul {
margin: 0 0 0 -78px;
padding: 0px;
}

.secondarycol ul#navlist li {
margin: 0px;
padding: 0px;
list-style-type: none;
background: none;
}

#navcontainer {padding: 0px;}

ul#navlist {
padding: 0px;
}

ul#navlist li a {
background-color: transparent;
}

ul#navlist li a:hover
{
background-color: transparent;
}

ul#navlist li a:active
{
padding: 0;
}

ul#subnavlist { 
display: none;
padding: 0px;
margin: 0px;
}

.secondarycol ul#subnavlist li {
float: none; 
border: 1px solid #ccc;
background: #fff url(../img/calendar-bg.png) no-repeat top center;
width: 180px;
-moz-border-radius: 4px;
border-radius: 4px;
}

ul#subnavlist li h2 {
font-size:12px;
}

}
ul#subnavlist li p {
font-size:12px;
color: #000000;
}

ul#subnavlist li a
{
padding: 0px;
margin: 0px;
}

ul#navlist li:hover ul#subnavlist
{
display: block;
position: absolute;

}

ul#navlist li:hover ul#subnavlist li a
{
display: block;
}

/* Mainos */

.mainos {
padding: 3px;
width: 468px;
height: 60px;
border: 1px solid #ddd;
margin: 10px auto 0;
}

/* Linkit */

.arrow, .rss {
display: block;
height: 20px;
padding: 0 10px 0 18px;
background: url(/media/img/icon-arrow.png) no-repeat top left;
float: left;
line-height: 20px;
}

.rss { background: url(/media/img/icon-rss.png) no-repeat top left; }

/* Addthis */

.share {
clear: both;
padding: 11px 0 5px 0;
background: url("../img/dotted_line.png") repeat-x center top;
height: 20px;
}

.addthis_toolbox {
float: right;
text-align: right;
}

.print {
display: block;
height: 20px;
padding: 0 0 0 21px;
background: url(../img/printer.png) no-repeat 0 1px;
float: left;
}

ul#subnavlist li .calendar2 a
{
color:black;
}

.calendar td {
vertical-align: center;
display: table-cell;
}

/* Etusivun nostolaatikko */
.header-banner {
position: absolute;
top: 0;
right: 0;
background: url(/media/img/mainokset/ril107-2012.png) no-repeat top right;
height: 85px;
width: 500px;
padding: 35px 232px 0 0;
overflow:hidden;
}

.header-banner strong, .header-banner strong a {
color: #666;
text-decoration: none;
}

.header-banner p, .header-banner h2 {
margin: 0;
padding: 0;
text-align: right;
line-height: 18px;
opacity:0;
}

@-webkit-keyframes fadeIn {

	0%{
		opacity:0;
		-webkit-transform:translateY(40px);
	}
	100%{
		opacity:1;
		-webkit-transform:translateY(0px);
	}
}
@-moz-keyframes fadeIn {

	0%{
		opacity:0;
		-moz-transform:translateY(40px);
	}
	100%{
		opacity:1;
		-moz-transform:translateY(0px);
	}
}
@keyframes fadeIn {

	0%{
		opacity:0;
		transform:translateY(40px);
	}
	100%{
		opacity:1;
		transform:translateY(0px);
	}
}

.fadeUp{
  -webkit-animation-name: fadeIn;
     -moz-animation-name: fadeIn;
       -o-animation-name: fadeIn;
          animation-name: fadeIn;
  -webkit-animation-fill-mode: both;
  -moz-animation-fill-mode: both;
  -ms-animation-fill-mode: both;
  -o-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-duration: 1.5s;
  -moz-animation-duration: 1.5s;
  -ms-animation-duration: 1.5s;
  -o-animation-duration: 1.5s;
  animation-duration: 1.5s;
  opacity:1 !important;
}
.header-banner h2 {
font: 400 20px/24px 'Open Sans', Arial, Helvetica, sans-serif;
padding-bottom: 3px;
}

.header-banner a.link {
display: block;
padding: 2px 10px;
background: url(/media/img/menu_alasivu.png) no-repeat center center;
float: right;
color: #fff;
font-weight: bold;
text-decoration: none;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
}

.header-banner a.link:hover {
color: #000;
}

.header-banner span {
display: block;
padding: 2px 10px;
float: right;
}