/* CSS Document */

body {
  font-family: sans-serif;
  font-weight: 400;
  font-size:14px;
  background-color:#222;
  color:#ddd;
  line-height:20px;
}

*, *::before, *::after {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
}

p {
  margin:20px 0;
}

a, a:link, a:visited, a:active, a:hover {
  background:transparent;
  text-decoration:none;
  outline:none;
  cursor:pointer;
}
a:link {
  color:#ddd;
}
a:visited {
  color:#ddd;
}
a:active {
  color:#ddd;
}
a:hover {
  color:#fff;
  text-decoration:underline;
  text-underline-offset: 3px;  
}


.hr_pseudo {
  height:1px;
  line-height:1px;
  margin:15px 0px;
  padding:0;
  display:block;
  border-bottom:solid 1px #555;
  background-color:transparent;
}

h1 {
  font-weight:700;
  font-size:24px;
  line-height:28px;
  margin:0px 0 20px 0;
  padding:0 0 0px 0;
  border-bottom: none;
}

h2 {
  font-weight:700;
  font-size:18px;
  line-height:22px;
  margin:20px 0 20px 0;
  padding:0 0 0px 0;
}
h3 {
  font-weight:700;
  font-size:16px;
  line-height:20px;
  margin:20px 0 20px 0;
  padding:0 0 0px 0;
}

ul {
  margin: 10px 0 10px 18px;
}


.layout_header {
  width:100%;
  padding: 0 0;
  position:relative;
  border-bottom: 1px solid #555;
}
.layout_header_inner {
  padding: 30px 0px;
  margin: 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
}
.layout_header_inner img {
  width:300px;
  height:123px;
  vertical-align:top;
}  


.layout_content {
  width:100%;
  padding: 30px 10px;
  margin: 0px auto;
}
.layout_content_inner {
  width: 100%;
  max-width: 1400px;
  padding: 0px;
  margin: 0px auto;
}

.flexrow {
  display:flex;
  flex-wrap:wrap;
}
.flexrow_text {
  width:100%;
  padding: 0 0px 0 0;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  hyphens: auto;
  text-align:justify;  
}
.flexrow_image {
  margin:20px 0 0 0;
  width:100%;
}
@media only screen and (min-width: 800px) {
  .flexrow_text { width:60%; padding: 0 50px 0 0; }
  .flexrow_image { margin:20px 0 0 0; width:40%; }
}


.flexrow_image_inner {
  position: -webkit-sticky;
  position: sticky;
  top: 70px;
}
.flexrow_image img {
  width:100%;
  height:auto;
  vertical-align:top;
}

.banner {
  margin: 0 0 40px 0;
}
.banner img {
  width:100%;
  height:auto;
  vertical-align:top;
}



.layout_footer {
  width:100%;
  padding: 0 0;
  position:relative;
  border-top: 1px solid #555;
}
.layout_footer_inner {
  padding: 30px 10px;
  margin: 0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
}

.layout_footer a {
  display:inline-block;
  padding: 0px 10px;
}




