@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP');
@import url(//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css);
@import url(//use.fontawesome.com/releases/v5.0.6/css/all.css);

/*共通*/
.emphasis {color:#b9040d;}

.top, .contentsWrap {
    margin: 0 auto;
    max-width: 960px;
    width: 96%;
}

/* nav */
#navArea{
    font-family: 'Noto Serif JP', serif;
    margin: 1rem auto;
}
.navList {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    width: 100%;
    gap:1rem
}
.navItem {
    width: calc((100% - 2rem) / 3);
    text-align:center;
    box-sizing:border-box;
}
.navItem a{
    position:relative;
    display:block;
    background:#fbb84b;
    padding: .8rem 0 ;
    font-size: 1.25rem;
    font-weight:bold;
    color:#b50021;
    line-height:1;
    border:2px solid #b50021;
    box-sizing:border-box;
    outline:solid 2px #fff;
    outline-offset:-5px;
    transition:.3s;
}
.navItem a::after{
    font-family: "FontAwesome";
    content: "\f105";
    font-weight: 100;
    position:absolute;
    left:1rem;
    top: 50%;
    transform: translateY(-50%);
}
.navItem a:hover{
    background:#b50021;
    color:#fff;
}

.attentionList {
    margin: 2rem auto;
    font-size: 0.875rem;
}

/* 項目名 */
.heading {
    margin: 5rem auto 2rem;
    background:#b9040d;
    padding: .5rem;
    font-family:"Noto Serif JP", serif;
    font-size:2rem;
    font-weight:bold;
    color:#fff;
    text-align:center;
    letter-spacing:3px;
}
.t47 {
    margin:2rem 0 1rem;
    font-family:"Noto Serif JP", serif;
    font-size:1.5rem;
    font-weight:bold;
    letter-spacing: 2px;
}

/* 表 */
.scroll {
    max-width: 960px;
    max-height: 500px;
    height: auto;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
}
.scroll::-webkit-scrollbar {
    width:15px;
    height:15px;
}
.scroll::-webkit-scrollbar-track {background:#ededed;}
.scroll::-webkit-scrollbar-thumb {
    background: #c9c9c9;
    border-radius: 99px;
}
.information {
    width: 100%;
    box-sizing: border-box;
}
.information th, .information td{
    width: 300px;
    vertical-align: middle;
    padding: .8rem;
    border-right: 1px solid #c9c9c9;
    border-bottom: 1px solid #c9c9c9;
    white-space:nowrap;
}
.information tr:first-child th{
    border-top: 1px solid #c9c9c9;
}
.information th:first-child, .fixedRow {
    border-left: 1px solid #c9c9c9;
}
.information tr:nth-child(even) td {
    background:#fff;
}
.information tr:nth-child(odd) td {
    background: #f4dadd;
}
.fixed,
.fixedCol,
.fixedRow {
    position: sticky;
    top: 0;
    left: 0;
    color: #fff;
    background: #b50021;
    font-weight:bold;
}
.fixed:before,
.fixedCol:before,
.fixedRow:before {
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    width: 100%;
    height: 100%;
    border: 1px solid #c9c9c9;
    z-index: -1;
}
.fixed{
    z-index: 2;
}
.fixedCol, .fixedRow {
    z-index: 1;
}
.fixedRow a {
    text-decoration: underline;
    color: #385eaa;
}

/*注釈*/
.caution {
    margin: 2rem auto;
    font-size: 0.875rem;
}

@media screen and (max-width: 767px) {
    
    /*nav*/
    .navItem {
        width: calc((100% - 1rem) / 2);
    }
    .navItem a {
        font-size: 1.125rem;
    }
    
    /*項目名*/
    .heading {
        font-size: 1.5rem;
    }
    .t47 {
        font-size: 1.25rem;
    }
    
    /*表*/
    .scroll {
        max-height: 300px;
        font-size: 0.875rem;
    }
    .information th, .information td {
        padding: .8rem .5rem;
    }
    .information .fixedRow {
        white-space: normal;
        min-width: 140px;
    }
}