@charset "UTF-8";

header {
    display: flex;
    align-items: center;
    background-color: black;
    color: white;
    padding: 10px 20px;
}

header picture {
    margin-right: 10px;
}

header h1 {
    flex: 1;
    font-size: 18px;
    font-family: 'Arial', sans-serif;
}

header nav {
    margin-left: auto;
}

header a {
    color: white;
    text-decoration: none;
}

.container {
    margin: 0 auto;
}

.center-column {
    text-align: left;
    padding: 0 20px;
}

.right-column h2{
    margin: 5px 10px;
    padding: 0 20px;
}

/* リスト・見出しをアプリ幅(500px)に合わせて中央寄せ */
.center-column h2,
.center-column ul,
.center-column ol,
.center-column p,
.center-column .freq-table {
    width: auto;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}

.freq-table {
    border-collapse: collapse;
    font-size: 14px;
}

.freq-table th,
.freq-table td {
    border: 1px solid #ccc;
    padding: 5px 16px;
    text-align: center;
}

.freq-table thead {
    background-color: #2d6a4f;
    color: white;
}

.freq-table tbody tr:nth-child(even) {
    background-color: #dafae7;
}

/* iframeの高さを920pxに固定（square-app-createlink.cssの512pxを上書き） */
#box {
    width: 100%;
    max-width: 500px;
    height: 920px;
    margin: 10px auto 0;
}

@media (min-width: 768px) {
    #box {
        width: 500px;
        height: 920px;
    }
}

footer {
    background-color: black;
    color: white;
    text-align: center;
    padding: 16px 0;
}

footer p {
    margin: 6px 0;
}

footer a {
    color: white;
}

/* タブレット(768px〜1023px)では関連リンクを下に配置 */
@media (min-width: 768px) and (max-width: 1023px) {
    .right-column {
        flex-basis: 100%;
    }
}

/* デスクトップ(1024px〜)では関連リンクを右に配置 */
@media (min-width: 1024px) {
    .right-column {
        flex-basis: 30%;
    }
}
