/*
Theme Name: English Learning
Author: wakimoto
Description: シンプルな2カラムレスポンシブテーマ
Version: 1.0
*/


@font-face {
    font-family: "Number";
    src: local("Arial");
    unicode-range: U+0030-0039;
    /* 0-9 */
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    height: 100%;
}

body {
    font-size: 14pt;
    font-family: Number, Georgia, serif;
    background-color: #f6f6f6;
    height: 100%;
    margin: 0;
}

.menu-toggle {
    display: none;
}

.menu-label {
    display: none;
    font-size: 1.5rem;
    cursor: pointer;
}

header {
    position: relative;
    padding: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1200px;
    margin: 0 auto;
    background-color: rgb(90, 90, 199);
    height: 60px;
}


.layout {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    background-color: #fff;
    min-height: calc(100% - 60px);
}

nav {
    width: 300px;
    padding: 0.5rem;
    flex-shrink: 0;
    transition: transform 0.3s ease;
}

main {
    flex-grow: 1;
    padding: 2rem;

}

h1 {
    margin-bottom: 10px;
}

a {
    text-decoration: none
}

a:hover {
    text-decoration-line: underline;
}

/* 見た目調整 */

header {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;

    .logotext,
    .logotext a,
    .logotext a:hover,
    .logotext a:visited {
        font-size: 16pt;
        font-weight: bold;
        color: #fff;
    }

    a,
    a:hover,
    a:visited {
        font-size: 12pt;
        color: #fff;
    }
}

#archives {
    margin-left: auto;
    margin-right: 10px;
}

#about {
    margin-right: 10px;
}

#hamburger {
    font-weight: bold;
    margin: 0 10px;
    color: #fff;
}

p {
    line-height: 160%;
    margin-bottom: 20px;
}

.wrapper {
    height: 100%;
}

.category, #sidebar_nav h2.category {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    font-size: 13pt;
    margin-bottom: 10px;
    padding: 2px 5px;
    font-weight: 600;
    background: linear-gradient(to right, rgb(129, 129, 206), rgb(220, 220, 240));
    color: #fff;
    width: 100%;
}

.spacer {
    margin-bottom: 10px;
    padding: 2px 5px;
    width: 100%;
}

.date {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    font-size: 12pt;
    margin-bottom: 10px;
    color: #666;
}

.post_div {
    margin-bottom: 20px;
}

.sidebar_nav_category_div {
    margin-bottom: 20px;
}

.sidebar_nav_category_div li {
    margin-bottom: 10px;
    line-height: 100%;
}

.post_div h2 {
    margin-bottom: 5px;
}

.post_content {
    margin-top: 5px;
}

.post_content p {
    line-height: 120%;
}

.post_content h3 {
    font-size: 18px;
}

#sidebar_nav h2 {
    font-size: 14pt;
    font-weight: 600;
    margin-bottom: 10px;
    line-height: 120%;
}

#sidebar_nav li {
    list-style-type: none;
}

audio {
    margin-top: 20px;
}

.small {
    font-size: 80%;
}


/* スマホ対応 */
@media (max-width: 768px) {
    .layout {
        flex-direction: row;
        position: relative;
    }

    nav {
        position: absolute;
        top: 0;
        left: 0;
        /*height: 100vh;*/
        background: white;
        transform: translateX(-100%);
        z-index: 1000;
        box-shadow: 2px 0 5px rgba(0, 0, 0, 0.1);
    }

    .menu-label {
        display: block;
        position: absolute;
        top: 1rem;
        right: 1rem;
        z-index: 1100;
    }

    .menu-toggle:checked~.layout nav {
        transform: translateX(0);
    }
}