/* CSS Document */
@charset "utf-8";
body{
    padding: 0;
    margin: 0;
}
.sp_only{
    display: block;
}
.pc_only{
    display: none;
}
*{
	word-break: break-all;
	line-break: strict;
	word-wrap: break-word;
	overflow-wrap: break-word;
	text-rendering: optimizeLegibility;
    box-sizing: border-box;
    font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif!important;
}
a{
    color: inherit;
    text-decoration: none;
}
a:visited{
    color: inherit;
    text-decoration: none!important;
}
a:hover {
    color: inherit;
    text-decoration: none!important;
}
a:active {
    color: inherit;
    text-decoration: none!important;
}
.jouon{
    padding: 5px 20px;
    background: #FF8800;
    color: #fff;
    display: inline-block;
    text-align: center;
}
.swiper-slide img{
    max-width: 100%;
    height: auto;
}
input{
    appearance: none;
    -webkit-appearance: none;
}
.mv_wrap,
.img_wrap{
    text-align: center;
}
.mv_wrap img,
.img_wrap img{
    max-width: 100%;
    height: auto;
}
.swiper-slide img{
    max-width: 100%;
    height: auto;
}
header ~ main{
    margin: 130px 0 0;
}
.breadcrumbs_wrap{
    padding: 15px;
    width: 100%;
    background: #eee;
}
.breadcrumbs{
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    width: 100%;
    align-items: flex-start;
    list-style: none;
}
.breadcrumbs li{
    margin: 0 20px 0 0;
    position: relative;
}
.breadcrumbs li::after{
    content:">";
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translate(150%, -50%);
}
.breadcrumbs li:last-of-type::after{
    content: none;
}

.category_name{
    text-align: center;
    margin: 60px auto 100px;
    font-size: 1.8em;
    font-weight: normal;
    position: relative;
}
.category_name::after{
    content:"";
    width: 90px;
    height: 1px;
    border-top: 1px solid #707070;
    position: absolute;
    bottom: -20px;
    left: 50%;
    transform: translate(-50% , -50%);
    display: block;
}

/*header*/
.top_red{
    padding: 5px 15px;
    margin: 0;
    background: #B90101;
    text-align: center;
    color: #fff;
    font-size: 14px;
}
header{
    background: #3B3333;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    z-index: 1000;
    height: 90px;
}
.top_logo_wrap{
    width: 100%;
    padding: 35px 15px 0;
    text-align: left;
    margin: 0;
}
.top_logo_wrap > .main_word{
    display: none;
    font-size: 1.1em;
    font-weight: normal;
}
.top_nav{
    margin: 0;
    padding: 0;
    list-style: none;
}
.top_nav li:nth-of-type(1){
    display: none;
}
.top_nav li:nth-of-type(6),
.top_nav li:nth-of-type(2){
    position: fixed;
    top: 31px;
    right: 106px;
    width: 53px;
    height: 57px;
    background: #585555;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.top_nav li:nth-of-type(6){
    background: #B90101;
    right: 53px;
}
.top_nav li:nth-of-type(6) a,
.top_nav li:nth-of-type(2) a{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.top_nav li:nth-of-type(6) a{
    line-height: 1;
}
.top_nav li:nth-of-type(2) a picture{
    line-height: 1.1;
}
.top_nav li:nth-of-type(6) a span,
.top_nav li:nth-of-type(2) a span{
    color: #fff;
    font-size: 8px;
}
.top_nav li:nth-of-type(3),
.top_nav li:nth-of-type(4),
.top_nav li:nth-of-type(5){
    height: 41px;
    width: 33.333vw;
    position: fixed;
    top: 88px;
    background: #fff;
    left: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.top_nav li:nth-of-type(4){
    left: 33.3333%;
}
.top_nav li:nth-of-type(5){
    left: 66.6666%;
}
.top_nav li:nth-of-type(3) a,
.top_nav li:nth-of-type(4) a,
.top_nav li:nth-of-type(5) a{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    border-right: 1px solid #707070;
    width: 100%;
    height: 100%;
}
.top_nav li:nth-of-type(3) a{
    border-left: 1px solid #707070;
}
#top_nav_check ~ label{
    height: 17px;
    width: 22px;
    display: block;
    position: fixed;
    top: 50px;
    right: 21px;
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
    transition: .2s all;
}
#top_nav_check ~ label::after{
    content:"";
    display: block;
    border-top: 1px solid #fff;
    position: absolute;
    top: 49%;
    left: 0;
    width: 100%;
    height: 1px;
    transition: .2s all;
}
#top_nav_check:checked ~ label{
    transform: translate(-5px , 5px)rotate(45deg);
    border-bottom: none;
    transition: .2s all;
}
#top_nav_check:checked ~ label::after{
    transform: translate(0px , -9px)rotate(-90deg);
    transition: .2s all;
}
#top_nav_check ~ nav ul{
    position: fixed;
    top: 129px;
    left: 0;
    width: 0;
    height: calc(100vh - 129px);
    background: #fff;
    padding: 0;
    margin: 0;
    transition: .2s all;
    opacity: 0;
    visibility: hidden;
    border-top: 1px solid #707070;
}
#top_nav_check ~ nav ul li{
    border-bottom: 1px solid #707070;
}
#top_nav_check ~ nav ul li a{
    display: block;
    padding: 15px;
}
#top_nav_check:checked ~ nav ul{
    width: 100vw;
    transition: .2s all;
    opacity: 1;
    visibility: visible;
}




/* footer */
.footer_category{
    padding: 20px 15px;
    background: #1E1D1D;
    color: #fff;
    text-align: left;
    margin: 0;
}
.footer_wrap ul{
    padding: 0;
    list-style: none;
    width: 100%;
    margin: 0;
}
.footer_guide_list,
.footer_price_list,
.footer_cat_list{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
}
.footer_guide_list li:nth-child(1),
.footer_guide_list li:nth-child(2),
.footer_guide_list li:nth-child(3),
.footer_guide_list li:nth-child(4),
.footer_price_list li,
.footer_cat_list li{
    position: relative;
    width: 50%;
    border-bottom: 1px solid #E1DFDF;
}
.footer_guide_list li:nth-child(1),
.footer_guide_list li:nth-child(3){
    border-right: 1px solid #E1DFDF;
}
.footer_guide_list li,
.footer_cat_list li:nth-child(1){
    width: 100%;
    position: relative;
}
.footer_guide_list li{
    border-bottom: 1px solid #E1DFDF;
}
.footer_price_list li:nth-child(odd),
.footer_cat_list li:nth-child(even){
    border-right: 1px solid #e1dfdf;
}
.footer_guide_list li a,
.footer_price_list li a,
.footer_cat_list li a{
    display: block;
    padding: 15px;
}
.footer_guide_list li a::before,
.footer_price_list li a::before,
.footer_cat_list li a::before{
    content:"";
    width: 11px;
    height: 11px;
    border-right: 3px solid #000;
    border-top: 3px solid #000;
    display: block;
    position: absolute;
    top: 38%;
    right: 15px;
    transform: rotate(45deg);
}
.footer_guide_list li:nth-child(1) a,
.footer_guide_list li:nth-child(2) a,
.footer_guide_list li:nth-child(3) a,
.footer_guide_list li:nth-child(4) a{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}
.footer_guide_list li:nth-child(1) a span,
.footer_guide_list li:nth-child(2) a span,
.footer_guide_list li:nth-child(3) a span,
.footer_guide_list li:nth-child(4) a span{
    width: 100%;
    display: block;
    text-align: center;
}
.footer_guide_list li:nth-child(1) a::before,
.footer_guide_list li:nth-child(2) a::before,
.footer_guide_list li:nth-child(3) a::before,
.footer_guide_list li:nth-child(4) a::before{
    display: none;
}
.footer_sns_wrap{
    width: 100%;
    padding: 15px;
    background: #F8F8F8;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
}
.footer_sns_wrap > .img_wrap{
    width: 50%;
    text-align: center;
}
.footer_sns_wrap > ul{
    width: 50%;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
}
.footer_sns_wrap > ul li{
    margin: 0 10px 0 0;
}
.sp_footer_info_wrap{
    margin: 0;
    padding: 15px;
    background: #F8F8F8;
}
.sp_footer_info_wrap > p:nth-child(3),
.sp_footer_info_wrap > p:nth-child(1){
    margin: 0;
    text-align: center;
    width: 100%;
}
.sp_footer_info_wrap > p:nth-child(2){
    margin: 1em auto;
    text-align: center;
}
.sp_footer_info_wrap > p:nth-child(2) a{
    display: inline-block;
    padding: 15px 30px;
    border: 1px solid #B4ADAD;
    background: #fff;
}
.footer_info{
    width: 100%;
    padding: 15px;
    text-align: center;
}
.pc_footer_wrap{
    display: none;
}

.related_wrap,
.recently_wrap{
    padding: 30px 15px;
    background: #F8F8F8;
}
.related_wrap{
    background: transparent;
}
.related_wrap h2,
.recently_wrap h2{
    margin: 0 auto;
    text-align: center;
    padding: 0 0 60px;
    position: relative;
}
.related_wrap h2::before,
.recently_wrap h2::before{
    content:"";
    width: 40px;
    border-top: 1px solid #707070;
    position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translate(-50% , 0);
}
.related_inner,
.recently_inner{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 0;
    margin: 0 auto 2em;
    max-width: 1100px;
}
.related_inner .column,
.recently_inner .column{
    width: 31%;
    margin: 0 0 1em;
}
.related_inner .column:nth-of-type(3n + 2),
.recently_inner .column:nth-of-type(3n + 2){
    margin: 0 3% 1em;
}

/* spinner */
input.counter,
input.btnspinner{
    display: block;
}
.btnspinner{
    -ms-user-select: none;
    -moz-user-select: -moz-none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    user-select: none;
}
.spinner_area{
    width: 100%;
    display: flex;
    background: #D6D6D6;
    text-align: center;
    position: relative;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 1px;
    box-sizing: border-box;
    margin: 0;
    max-width: 280px;
}
.spinner_area::before{
    content:"";
    width:35%;
    position:absolute;
    left:32%;
    top:0;
    height:100%;
    background:transparent;
    z-index:2;
}
.spinner_area input{
	border:none;
    background: #F1EFEF;
	text-align:center;
    font-size: 25px;
    margin: auto;
    width: calc(33% - 2px);
    vertical-align: middle;
    padding: 15px 0;
    /* デフォルトのスピナーを消す */
    -webkit-appearance: none;
    -moz-appearance:textfield;
}
.spinner_area input:nth-of-type(2){
    width: 34%;
    background: #FFFFFF;
}
.spinner_area input[type="button"]{
    cursor: pointer;
}
/* 860px */
@media (min-width: 860px) {
    .sp_only{
        display: none;
    }
    .pc_only{
        display: block;
    }
    header ~ main{
        margin: 155px 0 0;
    }
    .top_logo_wrap{
        font-size: 1em;
        font-weight: normal;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        padding: 15px 40px;
    }
    .top_nav li:nth-of-type(3), 
    .top_nav li:nth-of-type(4),
    #top_nav_check ~ label,
    .top_red{
        display: none!important;
    }
    header{
        background: #fff;
        height: 150px;
    }
    .top_logo_wrap > .main_word,
    .top_nav li:nth-of-type(1){
        display: block;
    }
    .top_logo_wrap > .main_word{
        margin: -15px 0 0;
    }
    .top_nav li:nth-of-type(2),
    .top_nav li:nth-of-type(6),
    .top_nav li:nth-of-type(3), 
    .top_nav li:nth-of-type(4), 
    .top_nav li:nth-of-type(5){
        position: relative;
        top: auto;
        left: auto;
        right: auto;
        width: auto;
        height: auto;
    }
    #top_nav_check ~ nav ul li a{
        padding: 0 15px;
    }
    .top_nav li:nth-of-type(5) a{
        border-right: none;
    }
    .top_nav{
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: stretch;
        position: fixed;
        top: 50px;
        right: 10px;
    }
    .top_nav li:nth-of-type(6), 
    .top_nav li:nth-of-type(2){
        background: #fff;
    }
    .top_nav li:nth-of-type(6) a span, 
    .top_nav li:nth-of-type(2) a span{
        color: #373737;
        font-size: 1em;
    }
    .top_nav li{
        display: flex!important;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        margin: 0 10px 0 0;
    }
    .top_nav li a{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
    }
    #top_nav_check ~ nav ul{
        width: auto;
        visibility: visible;
        opacity: 1;
        display: flex;
        flex-wrap: wrap;
        list-style: none;
        height: auto;
        border-top: none;
        position: fixed;
        top: 90px;
        right: 10px;
        left: auto;
    }
    #top_nav_check ~ nav ul li{
        border-bottom: none;
    }
    
    /* footer */
    .footer_guide_list,
    .footer_price_list,
    .footer_cat_list,
    .footer_category{
        display: none;
    }
    footer{
        background: #404040;
    }
    footer ul{
        list-style: none;
    }
    footer li a{
        color: #fff!important;
    }
    .pc_footer_wrap{
        padding: 50px 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: flex-start;
    }
    .pc_footer_wrap ul:nth-child(1){
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: flex-start;
        width: 40%;
        padding: 0 0 0 15px;
        margin: 0;
        line-height: 300%;
    }
    .pc_footer_wrap ul:nth-child(1) li{
        width: 50%;
    }
    .pc_footer_wrap ul:nth-child(1) li:nth-child(1n + 5){
        width: 100%;
    }
    .pc_footer_wrap ul:nth-child(2){
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: flex-start;
        width: 50%;
        padding: 0;
        margin: 0;
        line-height: 300%;
    }
    .pc_footer_wrap ul:nth-child(2) li:nth-child(1){
        width: 100%;
    }
    .pc_footer_wrap ul:nth-child(2) li:nth-child(1n + 2){
        width: 50%;
        padding: 0 0 0 15px;
    }
    .pc_footer_sns_link{
        width: 10%;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        align-items: flex-end;
        margin: auto 0 0;
        padding: 0 15px 0 0;
    }
    .pc_footer_sns_link li{
        width: 50%;
        padding: 0 0 0 5px;
    }
    .pc_footer_sns_link li img{
        max-width: 100%;
        height: auto;
    }
    .pc_footer_info{
        width: 100%;
        border-top: 1px solid #707070;
        padding: 50px 15px;
        margin: 50px 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: flex-start;
    }
    .open_wrap,
    .add{
        padding: 0 15px;
    }
    .open_wrap > p,
    .add > p{
        margin: 0;
        line-height: 150%;
        color: #fff;
    }
    .footer_wrap{
        display: none;
    }
    .footer_info{
        background: #fff;
    }
    .footer_info small{
        color: #404040;
    }
}

/* 992px for pc*/
@media (min-width: 992px) {
}

/* 1200px for wide pc */
@media (min-width: 1200px) {
}

