/*====================
        COMMON
====================*/
p, li, a, dl {
    line-height: 2em;
    font-size: 14px;
}

li {
    list-style: none;
}

a:hover {
    text-decoration: none;
}

dl {
    margin: 4em 0;
}

dt {
    color: #3333CC;
    font-weight: bold;
}

dd {
    padding: 0.6em;
    background-color: #ccc
}

small {
    display: block;
    text-align: right;
    font-size: 10px;
}

img {
    display: block;
    margin-bottom: 40px;
}

article img,
section img {
    width: 350px;
}



/* clear fix */
.clearfix {
    zoom: 1;
}

.clearfix:after {
    content: "";
    display: block;
    clear: both;
}



/* web font */
@font-face {
    font-family: 'mplus-2c-light';
    src: url('../font/mplus-2c-light.woff') format('woff');
}

@font-face {
    font-family: 'mplus-2c-regular';
    src: url('../font/mplus-2c-regular.woff') format('woff');
}








/*====================
        HEADER
====================*/
#header,
#content,
#footer {
    width: 820px;
    margin: auto;
}

#header h1 {
    float: left;
    margin-top: 25px;
}

#header .info {
    float: right;
    margin-top: 25px;
}

#header .info li a {
    color: #000;
    text-decoration: none;
}

#header .info li a:hover {

    border-bottom: 1px solid;
}



/*====================
       CONTENT
====================*/
#content {
    margin-top: 22px; 
}



/*====================
      UTILITIES
====================*/
#utilities {
    margin-top: 23px;
    width: 220px;
    float: left;
}

#utilities h2 {
    background-image: url(../img/title_icon.gif);
    background-repeat: no-repeat;
    background-position: left bottom;
    font-family: mplus-2c-light;
    font-size: 20px;
    padding-bottom: 12px;
}

#utilities p,
#utilities li,
#utilities a {
    font-size: 13px;
}

#utilities .news,
#utilities .update {
    padding-bottom: 64px;
}

#utilities .news div,
#utilities .update #g-navi {
    margin-left: 4px;
}
   
#utilities .news ul li {
    list-style-type: disc;
    margin-left: 18px;
}

#utilities .update #g-navi li {
    margin: 10px 0;
    font-size: 12px;
}

#utilities .update #g-navi li a {
    display: block;
    color: #000;
    line-height: 1.3em;
}

#utilities .update #g-navi li a:hover {
    text-decoration: none;
}



/*====================
        MAIN
====================*/
#main {
    margin-top: 23px;
    margin-left: 28px;
    float: left;
    width: 527px;
}

#main article {
    margin-bottom: 5em;
}

#main h2 {
    background-image: url(../img/title_icon.gif);
    background-repeat: no-repeat;
    background-position: left bottom;
    font-family: mplus-2c-regular;
    font-size: 23px;
    padding-bottom: 12px;
}

#main .date {
    margin-top: 8px;
    color: #999;
}

#main p {
    margin: 20px 0;
}

#main dt {
    font-weight: bold;
    margin: 0;
}

#main dt:before {
    content: "Q. ";
    font-family: serif;
}

#main dd {
    background-color: #eee;
    margin-bottom: 2.4em;
    border-radius: 8px;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
}

#main dd:before {
    content: "A. ";
    font-family: serif;
}

#main .more a {
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    padding: 5px 14px;
    background-color: #222;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
}

#main .more a:hover {
    background-color: #666;
}

#content .return {
    display: none;
    position: fixed;
    right: 40px;
    bottom: 40px;
}


/*====================
        FOOTER
====================*/
#footer {
    padding: 1em 0;
    border-top: 1px solid #999999;
}

