@charset "UTF-8";
@media (max-width: 1000px) {
    .container {
        flex-direction: column;
    }

    .main, .aside {
        width: 100%;
    }

    .aside {
        height: auto;
        overflow-y: auto;
        position: static;
    }

    .section_disabled {
        display: none;
        min-height: auto;
    }

    aside .section {
        padding: 2rem;
    }

    .thumbnail-container {
        width: calc((100% - 1em) / 2);
    }

    .thumbnail-container_accordion {
        width: 100%;
    }

    aside p {
        padding: 0 1.5rem; 
   }

    .heading-box_theme_aside {
        padding: 0.25rem 1.25rem;
    }
}

@media (max-width: 600px) {
    /* .html {
        line-height: 1.8;
    } */
    .img-container img {
        max-width: 100%;
    }

    .container {
        margin-top: 10px;
        /* padding: 1rem; */
    }

    .section {
        padding: 1rem;
        /* min-height: auto; */
    }

    .section_sticky-Contents {
        display: none;
    }

    .h1 {
        /* スマホではタイトルのサイズが1.5倍 */
        font-size: 1.5rem;
        padding: 0 1rem;
    }

    .breadcrumb {
        padding: 0 1rem;
    }

    .outline {
        padding: 0 1rem;
    }

    .heading-box {
        padding: 0.3rem 0.75rem;
    }

    .h2 {
        font-size: 1.25rem;
    }

    .subheading-box {
        padding: 0 1rem;
    }

    .main .h3, .subheading-box .ex {
        font-size: 1.125rem;
    }

    .main section > p, .description {
        margin: 1rem;
    }

    .section > .ul, .section > .ol {
        margin-left: 1rem;
        margin-right: 1rem;
    }

    .conclusion {
        margin: 0 1rem;
    }

    .box {
        padding: 1rem;
    }

    .box__title {
        font-size: 1.125rem;
    }

    .explanation_links {
        gap: 0 1em;
    }

    .section__table {
        display: block;
        min-width: calc(100% - 2rem);
        margin: 1rem;
    }

    aside .section {
        padding: 1rem;
    }

    .thumbnail-container {
        width: 100%;
    }

    aside p {
        padding: 0 1rem; 
   }

   /* ナビゲーションメニュー */
   nav ul li span {
        font-size: 0.8rem;
    }

   /* 前提知識・応用記事などアコーディオン中のサムネ */
   .thumbnail-container_accordion .box-shadow {
    width: 100%;
    }   

   /* ページ遷移・ページトップボタン */

    .button-container_theme_mobile {
        display: flex;
    }

    .button-container_theme_PC {
        display: none;
    }

    .transition-button {
        padding: 0.5em;
    }

    /* スマホ用改行 */
    .br-sp {
        display: block;
    }

    /* スマホ用メッセージ */
    .mobile {
        display: block;
    }

    .adsense .p {
        margin: 1rem;
    }
}