.clearfix:after {
                content: ".";
                display: block;
                clear: both;
                visibility: hidden;
                line-height: 0;
                height: 0;
}
 
.clearfix {
          display: inline-block;
}
 
html[xmlns] .clearfix {
            display: block;
}
 
* html .clearfix {
  height: 1%;
}

body {
    background-color: #7BA46A;
    font-family: Verdana;
    margin-left: 40px;
}

div.page {
    width: 760px;
    margin: 0px 0 0;
    padding: 10px 20px;
    background-color: white;
}

div.homepage {
    width: 780px;
    margin: 15px 0;
    padding: 10px 20px;
    background-color: white;
}

.fl { float: left;  }
.fr { float: right; }
a           { text-decoration: none; color: #00D;}
a:visited   { text-decoration: none; color: #00D;}
a img {
  border: 0;
}

div.header {
    width: 780px;
    background-color: #AD9;
    padding: 15px 10px;
    margin: 35px 0 20px;
}

div.header .title {
    font-size: 2em;
    font-weight: bold;
    text-align: center;
}

div.header span.acrostic {
    font-weight: bolder;
    color: #C00;
}

div.header .mini { font-weight: normal; }
div.header .r0 { margin-left: 0px; }
div.header .r1 { margin-left: 0px; }
div.header .r2 { margin-left: 0px; }
div.header .r3 { margin-left: 0px; }
div.header .r4 { margin-left: 0px; }

div.leftcol  {
    float: left;
    width: 400px;
}

div.rightcol {
    margin-left: 450px;
}

div.subform {
    padding: 10px;
    border: 1px solid #9c9;
    width: 300px;
    margin-top: 15px;
}

div.subform form {
    margin-top: 15px;
}

div.links {
    margin-top: 50px;
    vertical-align: bottom;
}

div.links span.link {
    margin-right: 30px;
}

div.para {
    margin-top: 5px;
    margin-bottom: 5px;
}

div.event {
    margin: 20px 0;
}

div.blockquote {
    background-color: #eee;
    width: 700px;
    margin-left: auto;
    margin-right: auto;
    padding: 15px;
    border: 1px solid black;
}

.spoiler {
    color: #999;
    background-color: #999;
}

div.pubpuzzle {
    margin-top: 50px;
}

div.navlinks {
    width: 780px;
    background-color: #AD9;
    padding: 15px 10px;
    margin: 35px 0 20px;
}

div.announce h2 {
    margin-bottom: 2px;
}
div.announce h3 {
    margin-top: 2px;
}

div.story, div.details, div.payus {
    margin: 15px 0;
}

div.registration {
    margin: 20px 0 0 200px;
}

dl.faq dt {
    font-weight: bold;
}
dl.faq dd {
    margin: 3px 0 12px 0;
}

table.puzzle_list {
    border: 1px solid black;
    border-collapse: collapse;
    width: 100%;
}

table.puzzle_list td {
    border: 1px solid black;
    text-align: center;
}


