header{
    display: flex;
    position: fixed;
    background: #333333;
    top: 0 ;
    margin: 0;
    width: 100vw
}
header nav ul{
    margin: 0;
    padding: 0;
}
header nav ul li {
    display:block;
    margin: 0 ;
    padding: 0.5rem 0.5rem;
    float: left
}
header nav ul li a {
    text-decoration: none;
    color: #ddd
}
.contents {
    display: flex;
    flex-flow: column nowrap;
    margin-top: 1rem;
    width: 100%
}

.article {
    overflow: hidden;
    width: 98vw;
    border-radius: 3px;
    margin: 2rem auto;
    /*position: relative;*/
    background-color: #fff;
    /*-webkit-box-shadow: 0 3px 7px -3px rgba(0, 0, 0, 0.3);*/
    /*box-shadow: 0 3px 7px -3px rgba(0, 0, 0, 0.3);*/
    transition: all 0.25s ease-in;
    border-style: solid;
    border-width: 1pt;
    /*border-bottom: 5px solid transparent;*/
}

/*.article:hover {
    -webkit-transform: translateY(-5px);
    transform: translateY(-5px);
    border: none;
    border-bottom: 5px solid #00BCD4;
}*/

.article .details {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 1em 1em 0 1em;
    font-size: 0.8em;
}
.article .date {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    text-align: right;
}
.article .category {
    -webkit-box-flex: 2;
    -ms-flex: 2;
    flex: 2;
}
.article .category p {
    font-size: 0.8em;
    padding: 3px 8px;
    cursor: pointer;
    width: 8em;
    margin: 0;
    border-radius: 10px;
    background: #00BCD4;
    text-align: center;
    color: #ffffff;
}
.article .description {
    padding: 0 1em;
}
.article .description h1 {
    font-size: 1.4em;
    margin-bottom: 0.5em;
    padding-left: 0.5em;
    border-left: solid 0.5em #00BCD4;
}
.article .description .text p {
    margin: 0;
}
.article .description a[class='outer']:after{
    margin-left: -10px;
    content: '→ 外部サイトに移動します';
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    vertical-align: middle;
    opacity: 0;
}
.article .description a[class='outer']:hover:after {
    margin-left: 5px;
    opacity: 1;
}
.article .footer a {
    float: right;
    margin-bottom: 10px;
    text-decoration: none;
    color: #00BCD4;
}
.article .footer a:after {
    margin-left: -10px;
    content: '→';
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    vertical-align: middle;
    opacity: 0;
}
.article .footer a:hover:after {
    margin-left: 5px;
    opacity: 1;
}