@charset "UTF-8";

/* Shared store pages are also used by the smartphone footer link. */
@media screen and (max-width: 999px) {
    body { min-width: 0; overflow: visible; }
    .container { width: auto; padding-right: 16px; padding-left: 16px; box-sizing: border-box; }
    img, iframe, input[type="image"] { max-width: 100%; }
    img { height: auto; }
    h1 { height: auto; line-height: 1.5; margin-top: 8px; }
    header .h_top .h_logo { float: none; text-align: center; }
    header .h_top ul { float: none; margin: 12px 0 0; text-align: center; }
    header .h_top ul li, header .h_top ul li:last-child { float: none; margin: 0; }
    .h_menu ul { display: flex; flex-wrap: wrap; justify-content: center; }
    .h_menu ul li { float: none; margin: 0; padding: 8px 10px; font-size: 13px; }
    #tt_page { height: 140px; }
    #tt_page h2 { padding-top: 48px; }
    .breadcrumb { height: auto; min-height: 40px; margin-bottom: 24px; }
    .content_page { padding-bottom: 48px; }
    .store_sec .container > p { text-align: left; margin-bottom: 28px; }
    .store_sec .container > p br { display: none; }
    .store_sec .container .box, .store_sec_detail .container .box {
        width: 100%; padding: 24px 16px; margin-bottom: 32px;
    }
    .store_sec .container .box .left, .store_sec .container .box .right,
    .store_sec_detail .detail_l, .store_sec_detail .container .box .clearfix .right {
        float: none; width: auto; margin-right: 0;
    }
    .store_sec .container .box .left { text-align: center; margin-bottom: 20px; }
    .store_sec .container .box .right .content { padding: 20px 0 0; }
    .store_sec .container .box .right .content dl dt,
    .store_sec .container .box .right .content dl dd { float: none; width: auto; }
    .store_sec_detail .detail_l { margin-bottom: 24px; text-align: center; }
    .store_sec_detail .container h3 { font-size: 20px; line-height: 1.6; }
    .store_sec_detail .container .box h4 { font-size: 20px; line-height: 1.6; }
    footer .f_top, footer .f_mid, footer .f_bot { height: auto; }
    footer .f_top { padding: 16px; }
    footer .f_top ul, footer .f_top ul.link2, footer .f_top ul.link3 {
        width: auto; padding-top: 12px; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px;
    }
    footer .f_top ul li { width: calc(50% - 4px); margin: 0; }
    footer .f_mid { padding-bottom: 24px; }
    footer .f_mid h3 { padding-top: 24px; margin-bottom: 20px; }
    footer .f_mid ul { width: auto; text-align: center; }
    footer .f_mid ul li:first-child, footer .f_mid ul li:last-child { float: none; margin-bottom: 16px; }
    footer .f_bot .left, footer .f_bot .right { float: none; width: auto; }
    footer .f_bot { background-repeat: repeat-x; background-size: auto 100%; }
    footer .f_bot .right { margin-top: 20px; }
    footer .f_bot .right ul { display: flex; flex-wrap: wrap; gap: 12px 16px; }
    footer .f_bot .right ul li { float: none; margin: 0; }
}
