.category-nav ul {
margin: 0;
padding: 0;
list-style: none;
}
.category-nav a {
color: #000000;
text-decoration: none;
}
.category-nav li {
margin: 0 0 3% 0;
float: left;
width: 25%;
text-align: center;
}
.category-nav ul:after {
display: block;
clear: left;
content: '';
}
.category-nav a {
display: block;
font-size: 13px;
}
.category-nav a:after {
display: block;
content: attr(title);
font-size: 10px;
text-align: center;
white-space: nowrap;
}

.menu-nav ul {
margin: 0;
padding: 0;
list-style: none;
}
.menu-nav a {
color: #000000;
text-decoration: none;
}
.menu-nav li {
margin: 0 0 3% 0;
float: left;
width : 33.33333% ; /* 未対応ブラウザ用フォールバック */
width : -webkit-calc(100% / 3) ;
width : calc(100% / 3) ;
text-align: center;
}
.menu-nav ul:after {
display: block;
clear: left;
content: '';
}
.menu-nav a {
display: block;
font-size: 13px;
}
.menu-nav a:after {
display: block;
content: attr(title);
font-size: 10px;
text-align: center;
white-space: nowrap;
}


.sns-nav ul {
margin: 0;
padding: 0;
list-style: none;
}
.sns-nav a {
color: #000000;
text-decoration: none;
}
.sns-nav li {
margin: 0 0 3% 0;
float: left;
width: 20%;
text-align: center;
}
.sns-nav ul:after {
display: block;
clear: left;
content: '';
}
.sns-nav a {
display: block;
font-size: 13px;
}
.sns-nav a:after {
display: block;
content: attr(title);
font-size: 10px;
text-align: center;
white-space: nowrap;
}


.ham-nav ul {
margin: 0;
padding: 0;
list-style: none;
}
.ham-nav a {
color: #000000;
text-decoration: none;
}
.ham-nav li {
margin: 0 0 3% 0;
float: left;
width: 50%;
text-align: center;
}
.ham-nav ul:after {
display: block;
clear: left;
content: '';
}
.ham-nav a {
display: block;
font-size: 13px;
}
.ham-nav a:after {
display: block;
content: attr(title);
font-size: 10px;
text-align: center;
white-space: nowrap;
}

#ham-menu {
    background-color: #fff; /*メニュー背景色*/
    box-sizing: border-box;
    height: 100%;
    padding: 10px 40px; /*メニュー内左右上下余白*/
    position: fixed;
    right: -250px; /*メニュー横幅 width と合わせる*/
    top: 0;
    transition: transform 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
    width: 250px; /*メニュー横幅*/
    z-index: 1000;
}

#menu-background {
    background-color: #333; /*黒背景*/
    display: block;
    height: 100%;
    opacity: 0;
    position: fixed;
    right: 0;
    top: 0;
    transition: all 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
    width: 100%;
    z-index: -1;
}

#menu-icon {
    background-color: #fff; /*アイコン部分背景色*/
    border-radius: 0 0 0 10px; /*左下角丸*/
    color: #333; /*アイコン（フォント）色*/
    cursor: pointer;
    display: block;
    font-size: 50px; /*アイコン（フォント）サイズ*/
    height: 50px; /*アイコン縦高さ*/
    line-height: 50px; /*縦位置中央化*/
    position: fixed;
    right: 0;
    text-align: center;
    top: 0;
    width: 50px; /*アイコン横幅*/
    transition: all 0.3s linear 0s; /*0.3s はアニメーションにかかる時間*/
    z-index: 1000;
}

#menu-cb {
    display: none; /*チェックボックス本体は消しておく*/
}

#menu-cb:checked ~ #ham-menu,
#menu-cb:checked ~ #menu-icon {
    transform: translate(-250px); /*メニュー本体横幅 width と合わせる*/
}

#menu-cb:checked ~ #menu-background {
    opacity: 0.5;
    z-index: 999;
}
