/* 印刷時はメニューなどを消す */

body{
    margin:0;
    padding:0;
}

#wrapper{
    width:100%;
    max-width:960px;
    margin:0 auto;
}

img{
    max-width:100%;
    height:auto;
}

table{
    width:100%;
}

a{
    text-decoration:none;
}

.logo{
    max-width:100%;
    height:auto;
}

table img{
    max-width:100%;
    height:auto;
}


@media screen and (max-width:768px){

    body{
        margin:0;
        padding:10px;
    }

    table{
         width:100% !important;

    }

    td{
        word-break:break-word;
    }

    #wrapper,#main{
        width:100%;
    }
}


/* --------------------
   共通設定
-------------------- */

*{
    box-sizing:border-box;
}

img{
    max-width:100%;
    height:auto;
}

/* --------------------
   タブレット・スマホ対応
-------------------- */

@media screen and (max-width:768px){

    body{
        overflow-x:hidden;
    }

    /* 全体幅 */
    #wrapper,
    #main,
    div#container,
    div#contents{
        width:100% !important;
        max-width:100% !important;
        margin-left:0 !important;
        margin-right:0 !important;
    }

    /* 表 */
    table{
        width:100% !important;
    }

    /* 下層ページの表 */
    .table_sub1,
    .table_sub2,
    .table_sub3{
        width:100% !important;
        margin:10px 0 !important;
    }

    /* 見出し */
    h1{
        font-size:1.5em !important;
    }

    h2{
        font-size:1.2em !important;
    }

    /* インデント解除 */
    .margin{
        margin-left:10px !important;
    }

    /* リスト */
    #main ul{
        width:100% !important;
        float:none !important;
    }

    /* フッター */
    .footer{
        margin-left:0 !important;
    }

}

/* レスポンシブ対応 */

img{
    max-width:100%;
    height:auto;
}

*{
    box-sizing:border-box;
}

@media screen and (max-width:768px){

    div#container,
    div#contents{
        width:100%;
        max-width:100%;
    }

    table{
        width:100% !important;
    }

    #main ul{
        width:100%;
        float:none;
    }

    .margin{
        margin-left:10px;
    }

}

@media screen and (max-width:768px){

    .logo{
        width:250px;
        height:auto;
    }

    .notice1,
    .notice2{
        display:inline-block;
    }

}

@media screen and (max-width:768px){

    .top tr,
    .top td{
        display:block;
        width:100% !important;
    }

    .top td{
        text-align:center !important;
    }
}

@media screen and (max-width:768px){

    .top tr,
    .top td{
        display:block;
        width:100% !important;
    }

    .top td{
        text-align:center !important;
    }

    .news td{
        display:block;
        width:100% !important;
    }

    .news td:nth-child(2){
        font-weight:bold;
        padding-top:0 !important;
    }
}

.top td{
    display:block;
}

.news td{
    display:block;
}

