html
{
    height: 100%;
}

body
{
	font-family: 'Meiryo', 'MS Gothic', 'Verdana', sans-serif;
    font-size: 12pt;
    background-repeat: repeat-x;
    height: 100%;
    line-height: 1.3em;
}

a
{
    text-decoration: underline;
}

strong
{
    font-weight: bold;
}

em
{
    font-style: italic;
}

div.container
{
    min-width: 320px;
    margin-left: auto;
    margin-right: auto;
}

div.header
{
    width: 95%;
    margin-left: auto;
    margin-right: auto;
}

div.main
{
    width: 95%;
    margin-left: auto;
    margin-right: auto;
}

div.sidebar
{
    width: 95%;
    margin-left: auto;
    margin-right: auto;
}

header
{
    width: 100%;
}

header #logo
{
    width: 320px;
    height: 72px;
    background-image: url('../static/logo_blog.png');
    margin-left: auto;
    margin-right: auto;
    display: block;
}

header ul
{
    text-align: center;
    padding-top: 0.1em;
    padding-bottom: 0.7em;
    margin-left: auto;
    margin-right: auto;
    display: block;
}

header ul li
{
    display: inline;
    padding-left: 0.35em;
    padding-right: 0.35em;
    font-size: 1.4em;
}

header ul li a
{
    text-decoration: none;
}

header ul li a:hover
{
    text-decoration: underline;
}

section
{
    width: 100%;
    border-style: solid;
    border-width: 1px;
    margin-bottom: 0.9em;
}

section h1.title
{
    text-align: center;
    font-weight: bold;
    margin-top: 0.5em;
    margin-bottom: 0.3em;
    margin-left: 0.4em;
    margin-right: 0.4em;
    padding-top: 0.5em;
    padding-bottom: 0.4em;
    font-size: 1.15em;
}

section h1.title a
{
    text-decoration: none;
}

section h1.title a:hover
{
    text-decoration: underline;
}

section h2.time
{
    font-size: 0.9em;
    margin-left: 1.1em;
    margin-right: 1.1em;
    text-align: right;
    font-style: italic;
}

section div
{
    margin-top: 0.4em;
    margin-left: 0.6em;
    margin-right: 0.6em;
    margin-bottom: 0.5em;
}

section div h1
{
    font-size: 1.0em;
    text-align: center;
    font-weight: bold;
    padding-top: 0.5em;
    padding-bottom: 0.1em;
}

section div h2
{
    font-size: 0.9em;
    text-align: center;
    padding-top: 0.3em;
    padding-bottom: 0.2em;
}

section div h3
{
    font-size: 0.9em;
    text-align: right;
    padding-top: 0.3em;
    padding-bottom: 0.3em;
}

section div h4
{
    font-size: 0.5em;
    text-align: center;
    padding-bottom: 0.3em;
}

section div p
{
    font-size: 0.8em;
    text-align: left;
    padding-top: 0.3em;
    padding-bottom: 0.3em;
}

section div p > code
{
    font-size: 11pt;
    font-family: Consolas, "Roboto Mono", monospace;
    margin-left: 0.4em;
    margin-right: 0.4em;
    padding-left: 0.4em;
    padding-right: 0.4em;
}

section div pre
{
    font-size: 11pt;
    font-family: Consolas, "Roboto Mono", monospace;
    text-align: left;
    margin-top: 0.4em;
    margin-left: 1.5em;
    margin-bottom: 0.4em;
    margin-right: 1.3em;
    padding-left: 0.4em;
    padding-right: 0.4em;
    word-wrap: break-word;
}

section div table
{
    width: 90%;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

section div table td
{
    border-style: solid;
    border-width: 1px;
}

section div table td.input-container
{
    text-align: center;
}

section div input.number
{
    border-style: solid;
    border-width: 1px;
    width: 80px;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
}

section div input.text
{
    border-style: solid;
    border-width: 1px;
    width: 90%;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
}

section div textarea
{
    border-style: solid;
    border-width: 1px;
    width: 90%;
    height: 120px;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
}

section div input.button
{
    border-style: solid;
    border-width: 1px;
    width: 8em;
    height: 1.5em;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-left: 10px;
    margin-right: 10px;
}

section div table td p
{
    font-size: 0.9em;
    text-align: left;
    padding-left: 0.3em;
    padding-top: 0.3em;
    padding-bottom: 0.2em;
}

section div div.gallery
{
    text-align: center;
}

section div div.gallery div.gallery_item
{
    vertical-align: bottom;
    text-align: center;
    display: inline-block;
}

section div img
{
    max-width: 100%;
    width: auto;
    height: auto;
    margin-left: auto;
    margin-right: auto;
    padding-top: 0.3em;
    padding-bottom: 0.3em;
    display: block;
}

section div div.left, section div div.right
{
    overflow: hidden;
}

section div div.left div, section div div.right div
{
    display: table;
    overflow: hidden;
    border-style: solid;
    border-width: 1px;
    margin: 0;
    padding-top: 0.4em;
    padding-left: 0.6em;
    padding-right: 0.6em;
    padding-bottom: 0.5em;
}

section div div.right div
{
    float: right;
}

section div div.left img, section div div.right img
{
    margin: 0.6em;
    width: 64px;
    height: 64px;
}

section div div.left img
{
    float: left;
}

section div div.right img
{
    float: right;
}

section div div.left div p img, section div div.left div p img
{
    max-width: 100%;
    width: auto;
    height: auto;
}

.video-wrapper
{
	width: 600px;
	max-width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.video-container-4-3
{
	position: relative;
	padding-bottom: 75%;
	padding-top: 1em;
	height: 0;
	overflow: hidden;
}

.video-container-16-9
{
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 1em;
	height: 0;
	overflow: hidden;
}

.video-container-4-3 iframe,
.video-container-4-3 object,
.video-container-4-3 embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.video-container-16-9 iframe,
.video-container-16-9 object,
.video-container-16-9 embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.nav
{
    padding-bottom: 1.2em;
    font-size: 0.8em;
}

.nav ul
{
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.nav ul li
{
    display: inline;
}

footer
{
    text-align: center;
    margin-top: 1.3em;
    font-size: 0.8em;
}

@media screen and (min-width:640px) /* タイトルを分ける */
{
    div.header
    {
        overflow: auto;
        padding-top: 0.8em;
        padding-bottom: 0.8em;
    }

    header #logo
    {
        display: inline-block;
        float: left;
        vertical-align: bottom;
    }

    header ul
    {
        padding-top: 1.8em;
        padding-right: 10px;
        display: inline-block;
        float: right;
        vertical-align: bottom;
        height: 100%;
    }
}

@media screen and (min-width:640px) /* コンテンツを分ける */
{
    div.container
    {
        max-width: 1280px;
        margin-left: auto;
        margin-right: auto;
        overflow: auto;
        text-align: center;
        padding-bottom: 10px;
    }

    div.header
    {
        display: block;
    }

    div.main
    {
        vertical-align: top;
        padding-left: 0.5em;
        padding-right: 0.5em;
        display: inline-block;
        width: 65%;
    }

    div.sidebar
    {
        vertical-align: top;
        width: 30%;
        display: inline-block;
        padding-right: 0.5em;
    }
}

@media screen and (min-width:1024px) /* 画像 */
{
    section div div.left img, section div div.right img
    {
        width: 128px;
        height: 128px;
    }
}

@media screen and (min-width:800px) and (max-width:1023px) /* 画像 */
{
    section div div.left img, section div div.right img
    {
        width: 96px;
        height: 96px;
    }
}

@media screen and (min-width:480px) and (max-width:639px) /* 画像 */
{
    section div div.left img, section div div.right img
    {
        width: 96px;
        height: 96px;
    }
}
