*{padding: 0;margin: 0;list-style: none;line-height: 1.5em;}
a{text-decoration: none;}
img,table,iframe{border: none; font-size: 6rem;}
html{
    scroll-behavior: smooth;
    font-size: 10%;
}
body{    
    font-family: Arial, "游ゴシック Medium", "Yu Gothic Medium", "YuGothicM", "游ゴシック体", "YuGothic", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    font-size: 100%;
    color:#222;   
}
nav{
    height: 40px;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 12;
}
.wrap1060{
    width: 100%;
    margin: 0 auto;
    position: relative;
}
header{
    background-color: #fff;
    box-shadow: 0 0 3px rgba(20, 25, 28, 0.1);
    position: relative;
    z-index: 10;
    margin-top: 45px;
}
section{    
    background-color: #e8eced;
}
.main_wrap{
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    padding-bottom: 10vh;
}
footer{
    background-color:#323537;
    padding-bottom: 20px;
    margin-top: -5px;
}

/*navi*/
#pcNavi{
    display: flex;
    flex-flow: row nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; /* iOSでの滑らかなスクロール */
    width: 100%;
    height: 40px;
    padding-top: 5px;
    background-color: #e8eced;
    border-bottom: solid 3px #fff;
}
#pcNavi li {
    flex: 0 0 auto;
    width: auto;
}
#pcNavi li a{
    float: none;
    width: auto;
    min-width: 60px; /* 最小幅を設定 */
    padding: 8px 10px 0;
    white-space: nowrap;
    display: block;
    height: 32px;
    margin: 0 2px;
    border-top-left-radius: 2px;
    border-top-right-radius: 2px;
    color: #fff;
    font-size: 8rem;
    text-align: center;
    background-color: #69787f;
    line-height: 2em;
}
#pcNavi li a:hover{
    background-color: #666;
}
#pcNavi li a.active{
    color: #222;
    background-color: #fff;
}
#pcSearch{
    float: right;
    margin-top: 2px;
    display: none;
}
.search-form-4 {
    display: flex;
    align-items: center;
    overflow: hidden;
    border: 1px solid #323537;
    border-radius: 3px;
}
.search-form-4 input {
    width: 200px;
    height: 28px;
    padding: 5px 15px 5px 0;
    border: none;
    box-sizing: border-box;
    font-size: 8rem;
    outline: none;
}
.search-form-4 input::placeholder {
    color: #69787f;
}
.search-form-4 button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 28px;
    height: 28px;
    border: none;
    background-color: #fff;
    cursor: pointer;
}
.search-form-4 button::before {
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.031 16.6168L22.3137 20.8995L20.8995 22.3137L16.6168 18.031C15.0769 19.263 13.124 20 11 20C6.032 20 2 15.968 2 11C2 6.032 6.032 2 11 2C15.968 2 20 6.032 20 11C20 13.124 19.263 15.0769 18.031 16.6168ZM16.0247 15.8748C17.2475 14.6146 18 12.8956 18 11C18 7.1325 14.8675 4 11 4C7.1325 4 4 7.1325 4 11C4 14.8675 7.1325 18 11 18C12.8956 18 14.6146 17.2475 15.8748 16.0247L16.0247 15.8748Z' fill='%23777777'%3E%3C/path%3E%3C/svg%3E");
    background-repeat: no-repeat;
    content: '';
}

/*header*/
#ttl_logo{
    height: 60px;
    margin-top: 10px;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
#hd_txt{
    font-size: 6.5rem;
    color:#69787f;
    line-height: 1.5em;
    text-align: right;
    background-color: #e8eced;
    padding: 10px 5px;
    box-shadow: 0 5px 5px -5px #111 inset;
}

/*main*/
.main_lr{width: 100%;}
.main_l{width: 100%;}
.main_r{width: 100%;}
.main_box{
    min-height: 10vh;
    background-color: #fff;
    box-shadow: 0 0 3px rgba(20, 25, 28, 0.1);
    border-radius: 2px;
    box-sizing: border-box;
    line-height: 12em;
    padding-bottom: 5px;
}
.main_hd{
    font-size: 9rem;
    padding: 1em 10px;
    border-bottom: solid 1px #ddd;
    background-color: #e8eced;
}
.moreRead{
    display: block;
    font-size: 9rem;
    font-weight: bold;
    color: #0e77d0;
    text-align: center;
    background-color: #e9f3fa;
    padding: 1em 12px;
    margin: 0 10px 5px;
    border-radius: 4px;
}
.moreRead:hover{opacity: 0.8;}
.rank_r{border-top: solid 5px lightskyblue;}
.right_list{
    width: 100%;
    padding: 0 10px 10px;    
    box-sizing: border-box;
}
.right_list a{
    display: block;
    width: 100%;
    padding-top: 10px;
    position: relative;
    border-bottom: dashed 1px #ddd;
}
.right_list li:last-child a{border: none;}
.right_list a:hover{opacity: 0.7;}
.right_list .rank_no{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 9rem;
    color: #fff;
    font-weight: bold;
    line-height: 1.2em;
    text-align: center;
    background-color: lightskyblue;
    box-sizing: border-box;
    width: 24px;
    height: 24px;
    border-radius: 2px;
    position: absolute;
    top: 10px;
    left: 0;
}
.right_list .rank_ttl{
    font-size: 9.5rem;
    color: #222;
    font-weight: bold;
    padding-left: 30px;
    min-height: 2em;
}
.right_list .rank_date{
    display: block;
    font-size: 6rem;
    color: #69787f;
    letter-spacing: 0.1em;
    text-align: right;
    padding-top: 10px;
    padding-bottom: 5px;
}
.goods_r{border-top: solid 5px #222;}
.right_list .goods_img{
    display: block;
    width: 60px;
    border: solid 1px #ddd;
    position: absolute;
    top: 10px;
    left: 0;
    overflow: hidden;
}
.right_list .goods_img img{
    width: 100%;
}
.right_list .goods_name{
    height: 60px;
    font-size: 10rem;
    color: #222;
    font-weight: bold;
    padding-left: 70px;
    padding-top: 5px;
}
.right_list .goods_price{
    font-size: 8.5rem;
    color: red;
    font-weight: bold;
    text-align: right;
    margin-top: -10px;
    padding-bottom: 5px;
}
.right_list .goods_price::before{
    content: "¥";
    margin-right: 2px;
}
.right_list .goods_price::after{
    content: "（税込）";
    font-size: 6rem;
    color: #69787f;
}
.weekly_girl{border-top: solid 5px lightpink;}
.weekly_girl iframe{
    width: 310px;
    height: 450px;
    margin: 20px auto 10px;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}
.weekly_suno{
    width: 100%;
    border-top: solid 5px plum;
}
.weekly_suno .right_song{
    width: 280px;
    height: 250px;
    margin: 20px auto 10px;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}


/*footer*/
#ft_pageTop{
    display: block;
    text-align: center;
    width: 200px;
    margin: 0 auto;
    padding: 8px 0;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    font-size: 8rem;
    color: #222;
    font-weight: bold;
    background-color: #e8eced;
}
#ft_pageTop i{margin-right: 0.5em;}
#ft_txt{
    text-align: center;
    font-size: 6.5rem;
    color:lightcoral;
    font-weight: bold;
    letter-spacing: 0.5px;
    margin-top: 40px;
    padding: 0 5%;
    display: inline-block;
    width: 90%;
    line-height: 2em;
}
#ft_txt::after {
    content: '';
    display: block;
    height: 0;
    width: 100%;
}
.mobile-break {display: block;}
#ft_sns_wrap{
    margin-top: 30px;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}
#ft_sns_wrap a{
    margin: 0 1em;
    font-size: 20rem;
    color: #fff;
}
#ft_sns_wrap a:hover{
    opacity: 0.7;
}
#ft_underMenu{
    margin-top: 30px;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}
#ft_underMenu li{
    margin: 0 10px;
}
#ft_underMenu li a{
    font-size: 7rem;
    line-height: 2.4em;
    color: #fff;
}
#ft_underMenu li a:hover{
    text-decoration: underline;
    text-underline-offset: 3px;
}
#ft_copy{
    text-align: center;
    font-size: 7rem;
    color: slategray;
    font-weight: normal;
    font-style: italic;
    margin-top: 20px;
    line-height: 2.0em;
}

.loading{top: 125px;}
.no_dis_sp{display: none;}