@charset "utf-8";
/*------------------------------------------------------------------------------------------
*
*
    item_sp.css
*
*
------------------------------------------------------------------------------------------ */
/* --------------------------------------------------------------------------------------------------------------
*
    max-width: 640px;
*
-------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width: 640px) {

/* --------------------------------------------------
*
    #modal_detail
*
-------------------------------------------------- */
#modal_detail{
    margin: 20px 20px 50px 20px;
    overflow: hidden;
    background-color: #fff;
    border-radius: 20px;
}

#modal_detail .inner{
    overflow-x: hidden;
    padding: 0 15px;
}

#modal_detail .img_slider{
    width: calc(100vw - 55px) !important;
    margin: 0 0 45px 0;
    opacity: 0;
}

#modal_detail .img_slider.on{
    opacity: 1;
    transition: opacity .8s ease;
}

#modal_detail .img_slider img{
    width: 100%;
    height: auto;
    opacity: 0;
}

#modal_detail .img_slider .slick-slide{
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

#modal_detail h2{
    font-size: 1.25rem;
    letter-spacing: .05em;
    line-height: 1.7em;
}

#modal_detail .price{
    margin: 0 0 20px 0;
    font-size: 1rem;
    color: #b3b3b3;
    line-height: 1.5em;
    letter-spacing: .025em;
}

#modal_detail .shop{
    padding: 0 0 20px 0;
    margin: 0 0 20px 0;
    border-bottom: 1px solid #eee;
}

#modal_detail .shop dl{
    width: 100%;
    display: table;
}

#modal_detail .shop dt{
    padding: 3px 0 0 0;
    min-width: 45px;
    display: table-cell;
    vertical-align: top;
    white-space: nowrap;
}

#modal_detail .shop dt span{
    padding: 2px 5px 3px 5px;
    font-size: 1rem;
    letter-spacing: .15em;
    color: #fff;
    background-color: #ff9d16;
    line-height: 1em;
    display: inline-block;
}

#modal_detail.type_topic .shop dt span{
    background-color: #4dbc18;
}

#modal_detail .shop dd{
    display: table-cell;
    vertical-align: top;
    font-size: 1.1rem;
    color: #ff9d16;
    letter-spacing: .1em;
    line-height: 1.7em;
}

#modal_detail.type_topic .shop dd{
    color: #4dbc18;
}

#modal_detail .shop dd span{
    display: block;
    vertical-align: top;
    position: relative;
}

#modal_detail .shop dd span a{
    display: inline-block;
    padding: 3px 10px 4px 10px;
    font-size: .85rem;
    letter-spacing: .15em;
    border-radius: 25px;
    color: #fff;
    background-color: #bbb;
    line-height: 1em;
    display: inline-block;
    transition: opacity .1s ease .0s;
}

.is_pc #modal_detail .shop dd span a:hover,
.is_sp #modal_detail .shop dd span a.touch{
    opacity: .7;
    transition: opacity .15s ease .05s;
}


#modal_detail .comment{
    padding: 0 0 10px 0;
    border-bottom: 1px solid #eee;
}

#modal_detail .comment dl{
    width: 100%;
    margin: 0 0 20px 0;
    display: table;
}

#modal_detail .comment .title dt{
    padding: 0 0 0 0;
    width: 50px;
    display: table-cell;
    vertical-align: top;
}

#modal_detail.type_topic .face{
    margin-right: -15px;
    position: relative;
    left: -5px;
}

#modal_detail .comment .title dt img{
    width: 48px;
}

#modal_detail .comment .title dd{
    padding: 1px 0 0 0;
    display: table-cell;
    vertical-align: middle;
    font-size: 1.25rem;
    color: #000;
    letter-spacing: .1em;
    line-height: 1.6em;
}

#modal_detail .comment .txt{
    margin: 0 0 20px 0;
    font-size: 1rem;
    line-height: 1.777em;
    color: #000;
}

.is_pc #modal_detail .comment .txt a:hover,
.is_sp #modal_detail .comment .txt a.touch{
    text-decoration: underline;
}

#modal_detail .comment .txt br{ display: inherit !important;}

#modal_detail .comment .date{
    font-size: .85rem;
    color: #ff9d16;
    letter-spacing: .1em;
}

#modal_detail.type_topic .comment .date{
    color: #4dbc18;
}

#modal_detail .foot{
    padding: 20px 0;
    overflow: hidden;
}

#modal_detail .foot:after{
    content: '';
    display: block;
    clear: both;
}

#modal_detail .foot .l{
    margin: 0 0 15px 0;
    position: relative;
}

#modal_detail .foot .l p span{
    margin: 0 0 4px 0;
    padding: 3px 5px;
    display: inline-block;
    background-color: #eee;
    color: #7d7d7d;
    font-size: 1rem;
    letter-spacing: .1em;
}

#modal_detail .foot .r{
    padding: 5px 0 0 0;
    text-align: center;
}

#modal_detail .share .title,
#modal_detail .share ul,
#modal_detail .share li{
    display: inline-block;
    vertical-align: middle;
}

#modal_detail .share .title{
    margin: 0 5px 0 0;
    font-size: 1rem;
    color: #7d7d7d;
}

#modal_detail .share li{
    margin: 0 5px;
}

#modal_detail .share li img{
    width: 33px;
}

.modal_yt,
.modal_yt iframe{
    width: 100%;
    height: calc((100vw - 55px)*.5625);
    margin: 0 0 20px 0;
    border-radius: 20px 20px 0 0;
    position: relative !important;
}

.is_sp .modal_yt{
    margin-bottom: 50px;
}

/* --------------------------------------------------
*
    #related_post
*
-------------------------------------------------- */
#related_post h4{
    width: 220px;
    height: 45px;
    margin: 0 auto 20px auto;
    display: block;
    border-radius: 45px;
    background-color: #fff;
    line-height: 45px;
    text-align: center;
    font-size: 1.15rem;
}

/* --------------------------------------------------
*
    #related_list
*
-------------------------------------------------- */
#related_list{
    margin: 0 auto;
}

#related_list ul{
    letter-spacing: -.40em;
}

#related_list li{
    width: calc(50% - 10px);
    margin: 0 5px 20px 5px;
    overflow: hidden;
    border-radius: 10px;
    background-color: #fff;
    display: inline-block;
    letter-spacing: normal;
    vertical-align: top;
}

#related_list li a{
    padding: 0 0 10px 0;
    display: block;
    color: #000;
    transition: opacity .1s ease .0s;
}

.is_pc #related_list li a:hover,
.is_sp #related_list li a.touch{
    opacity: .8;
    transition: opacity .15s ease .05s;
}

#related_list li .img{
    margin: 0 0 20px 0;
    text-align: center;
}

#related_list li .img img{
    width: 100%;
    opacity: 1 !important;
}

#related_list .title{
    width: 100%;
    padding: 0 10px;
    margin: 0 0 15px 0;
    box-sizing: border-box;
    display: table;
    border-bottom: 1px solid #eee;
    position: relative;
}

#related_list .title .face{
    width: 48px;
    vertical-align: top;
}

#related_list .title .face img{
    width: 42px;
}

#related_list .title .col{
    margin: 10px 0 0 0;
    vertical-align: top;
}

#related_list .title h3{
    margin: 0 0 10px 0;
    font-size: 1rem;
    letter-spacing: .05em;
    line-height: 1.5em;
}

#related_list .title .date{
    width: 100%;
    text-align: left;
    margin: 15px 0 0 0;
    font-size: 12px;
    color: #ff9d16;
    position: absolute;
    top: 0;
    left: 55px;
}

#related_list .shop{
    margin: 0 0 6px 0;
    padding: 0 15px;
    font-size: .9rem;
    letter-spacing: .05em;
    line-height: 1.5em;
}

#related_list .item{
    padding: 0 15px;
    font-size: .85rem;
    color: #b3b3b3;
    letter-spacing: .025em;
    line-height: 1.5em;
}

} /* ----- max-width: 640px ----- */
