
.title-detail{
    padding:20px;
    /*font-size:12px;*/
    margin-bottom:50px;
}
.title-detail-vertical{
    padding:20px;
    /*font-size:12px;*/

}
.title-detail-bottom{
    font-size:13px;
    display:flex;
}
.title-detail-bottom-vertical{
    font-size:12px;
    display:flex;
}
.title-detail-top{
    font-size:16px;
    font-weight:600;
}
.title-detail-bottom-left{
    font-weight: 500;
    margin-right:20px;
}

.review-section-sidebar{

    width:130px;
    background-color: #4eafe7;
    border:1px solid #0f1fd5;
    border-radius: 5px;
    color:#ffffff;
    font-weight:600;
}
.review-section-sidebar:hover{


background-color: #8ed5ff;
border:1px solid #0f1fd5;

color:#ffffff;
}
.review-section-sidebar-vertical{
width:35px;
padding-right:4px;
padding-top:5px;
padding-bottom: 5px;
background-color: #4eafe7;
border:1px solid #0f1fd5;
border-radius: 5px;
color:#ffffff;
font-weight:600;
}
.review-section-sidebar-vertical:hover{
background-color: #8ed5ff;
border:1px solid #0f1fd5;
color:#ffffff;
}
.row{
    width:100%;
    padding-left:20px;
    padding-right:10px;
    padding-bottom:14px;
    padding-top:14px;
    font-weight: 400;
    font-size:14px;
}
.row:hover{
    background-color:#ebebeb;
    color:#373737c9 !important;
}
.row-vertical{
    padding-left:10px;
    padding-right:10px;
    padding-top:15px;
    font-weight: 400;
    font-size:14px;
    position: relative;
}
.row-vertical:hover{
    /*padding-bottom:5px;*/
    /*padding-top:10px;*/
    font-weight: 400;
    font-size:14px;
    background-color:#ebebeb;
    color:#373737c9 !important;
}
/*a.custom-link:hover:visited {
    color: #777777c9;
}*/
.row-vertical-line {
    position: relative;  /* 相対位置指定を行い、疑似要素の基準点を設定 */
    /*padding-left: 10px;*/  /* 内容と線の間にスペースを設ける */
}

.row-vertical-line::before {
    content: "";         /* 疑似要素の内容は空に */
    position: absolute;  /* 絶対位置指定で親要素に対して位置決定 */
    left: 0;             /* 親要素の左端に配置 */
    top: 0;              /* 上端からスタート */
    bottom: 0;           /* 下端まで伸ばす */
    width: 0.25px;          /* 線の幅を1ピクセルに設定 */
    background-color: #747474; /* 線の色を黒に設定 */
    z-index: 1;          /* 必要に応じてz-indexで順序を調整 */
}
hr{
    margin:0;
}
.row-chapter{
    font-size:14px;
    font-weight: 500;
    background-color: #e7e7e7;
    width:100%;
    padding-top:25px;
    padding-bottom:5px;
    text-align: center;
    margin-bottom: 10px;
    /*height:50px;*/
    border:1px solid #dddddd;

}
.row-chapter-vertical{
    font-size:14px;
    font-weight: 500;
    background-color: #e7e7e7;
    color:#000000;
    height:100%;
    padding-left:15px;
    padding-right:15px;
    text-align: center;
    /*margin-bottom: 10px;*/
    /*height:50px;*/
    border:1px solid #dddddd;

}
a.custom-link:visited {
    color: #b7b7b7c9;
}
.title-sidebar-underline {
    color:  rgb(0, 0, 0);
    text-decoration: none;
    position: relative;
    font-size:18px;
    font-weight: 600;
}
.flex-sidebar{
    display:flex;
    justify-content: space-between;
    margin-top:15px;
}
.flex-sidebar .child1 {
    flex: 1;  /* 他のアイテムと同じ割合でスペースを占める */
}
.flex-sidebar .child2 {
    flex: 1;  /* 他のアイテムと同じ割合でスペースを占める */
}
.flex-sidebar-vertical{
    display:flex;
    justify-content: space-between;

}
.title-follow-sidebar{
    width:130px;
    background-color: #e5e5e5;
    border:1px solid #000000;
    padding-top:5px;
    padding-bottom:5px;
    font-weight:600;
    border-radius: 5px;
}
.title-follow-sidebar:hover{

    background-color: #ededed;
    border:1px solid #000000;
    padding-top:5px;
    padding-bottom:5px;


}
.title-follow-sidebar-vertical{
    width:35px;
    background-color: #e5e5e5;
    border:1px solid #000000;
padding:5px 0 ;
    font-weight:600;
    border-radius: 5px;
}
.title-follow-sidebar-vertical:hover{
    background-color: #ededed;
    border:1px solid #000000;

}


.title-sidebar-underline:hover {
    color: rgb(5, 67, 237);
    border-bottom: 2px solid rgb(55, 55, 221);
}
.sidebar-top-section{
    padding:0 10px;
}

.sidebar {
    transition: right 0.3s ease;
    overflow-y: auto;
}
.sidebar::-webkit-scrollbar {
    width: 10px; /* スクロールバーの幅 */
}

.sidebar::-webkit-scrollbar-track {
    background: #a6a6a6; /* トラック部分の背景色 */
}

.sidebar::-webkit-scrollbar-thumb {
    background: #888; /* スクロールバー自体の背景色 */
}

.sidebar::-webkit-scrollbar-thumb:hover {
    background: #3d3d3d; /* スクロールバーにマウスをホバーしたときの色 */
}

#sidebarContent {
    position: fixed;
    right: -320px; /* 初期状態で非表示（画面外） */
    top: 0;
    width: 320px;
    height: 100vh;
    background-color: white;
    z-index: 1010;
    box-shadow: -5px 0 15px rgba(0,0,0,0.1);
    transition: right 0.3s ease; /* 右方向への移動にアニメーションを適用 */
    padding-top:20px;
    /*padding-left:10px;
    padding-right:10px;*/
}
#sidebarContentSmall {
    position: fixed;
    right: -220px; /* 初期状態で非表示（画面外） */
    top: 0;
    width: 220px;
    height: 100vh;
    background-color: white;
    z-index: 1010;
    box-shadow: -5px 0 15px rgba(0,0,0,0.1);
    transition: right 0.3s ease; /* 右方向への移動にアニメーションを適用 */
    padding-top:20px;
    /*padding-left:10px;
    padding-right:10px;*/
        overflow-y: auto;                 /* 縦はスクロール可 */
        overflow-x: hidden;               /* 横スクロールを完全に無効化 */
        -webkit-overflow-scrolling: touch;/* iOS 慣性スクロール */
}
    #sidebarContentSmall::-webkit-scrollbar:horizontal{
        display: none;
    }
#sidebarContentVertical {
    position: fixed;
    bottom: -300px;
    left: 0;
    height: 300px;
    width: 100vw;
    background-color: white;
    z-index: 1010;
    box-shadow: -5px 0 15px rgba(0,0,0,0.1);
    transition: bottom 0.3s ease;
    overflow-x: auto;
    /*padding-top:10px;*/
    /*padding-left:10px;
    padding-right:10px;*/
}
#sidebarContentVerticalSmall{
    position: fixed;
    bottom: -300px;
    left: 0;
    height: 300px;
    width: 100vw;
    background-color: white;
    z-index: 1010;
    box-shadow: -5px 0 15px rgba(0,0,0,0.1);
    transition: bottom 0.3s ease;
    /*padding-top:10px;*/
    /*padding-left:10px;
    padding-right:10px;*/
}
.sidebar-small{
    position:fixed;
}
.close-button-sidebar{
   /* width:30px;
    background-color: #ffffff;*/

    border:none;
}
.close-button-sidebar:hover{
    width:30px;
    background-color: #ffffff;

    border:1px solid #0f1fd5;
}
.close-icon-sidebar{
    width:30px;
    background-color: #ffffff;
    /*border:none;*/
    padding:3px;
}
.close-icon-sidebar:hover{
    width:28px;
    background-color: #ffffff;
    /*border:none;*/
    padding:3px;
}



@media screen and (max-width: 480px) {


.title-follow-sidebar{
    width:180px;
    background-color: #e5e5e5;
    border:1px solid #000000;
    padding-top:5px;
    padding-bottom:5px;
    font-weight:600;
    border-radius: 5px;
    margin-bottom:15px;

}
.title-follow-sidebar:hover{
    background-color: #ededed;
    border:1px solid #000000;
    padding-top:5px;
    padding-bottom:5px;
}
.review-section-sidebar{
    width:180px;
    background-color: #4eafe7;
    border:1px solid #0f1fd5;
    border-radius: 5px;
    color:#ffffff;
    font-weight:600;
    margin-bottom:15px;
    padding:5px 0;
}
.review-section-sidebar:hover{
background-color: #8ed5ff;
border:1px solid #0f1fd5;
color:#ffffff;
}
.row{
    padding-left:10px;
    padding-right:0;
    padding-bottom:14px;
    padding-top:14px;
    font-weight: 400;
    font-size:14px;
}
}
