#Body #Header h1 {
width: 100px; /* ロゴ画像の幅 ?(A) */
height: 80px; /* ロゴ画像の高さ */
background-image: url(https://sasatest.xyz/sns/web/cache/img/png/w_h/admin_logo_1573179033.png); /* ロゴ画像の URL */
}
#Body #globalNav { margin-left: 100px; } /* (A)と同じ値にします */

#globalNav {
float: none;
width: auto;
}

div#notification_center {
    display: none;
}

#page_member_config #connection {
display: none;
}

.block.formBox {
    display: none;
}

/* 通知センター一旦削除 */
#notificationCenter {
    display: none;
}

div#navForDelete {
    display: none;
}


/* chrome img のぼやけるのを修正 */

img {
    image-rendering: -webkit-optimize-contrast;
}



/* コミュニティのタイムライン削除 */

div#communityTimeline {
    display: none;
}


/* コミュニティの「参加」と「退会」の削除 */

li#community__community_join {
    display: none;
}

li#community__community_quit {
    display: none;
}



/* メインエリアの装飾 */

ul.main_area_bana {
    display: flex;
    flex-direction: row;
}

ul.main_area_bana li img {
    width: 100%;
}


/* サイドバー（左）の装飾 */

img.left_bana {
    width: 100%;
}



/* サイドバー（右）の装飾 */

#sideBanner .partsHeading {
    margin-bottom: -1px;
}

#sideBanner .partsHeading:nth-of-type(n+2) {
    margin-top: 27px;
}

.side_bana , .side_bana_2 , .side_bana_3 {
    margin: 0 auto;
    margin-bottom: 3px;
    text-align: center;
    font-size: larger;
    font-weight: 700;
}


.side_bana img {
    width: 210px;
    height: 180px;
    vertical-align: text-bottom;
}

.side_bana_2 img {
    width: 210px;
    height: 150px;
    vertical-align: text-bottom;
}

.side_bana_3 img {
    width: 210px;
    height: 118px;
    vertical-align: text-bottom;
}





@media screen and (max-width: 768px) {
    .side_bana_list {
        display: flex;
        flex-wrap: wrap;
        list-style: none;
        padding: 0;
        margin: 0;
        justify-content: space-around; /* バナー間のスペースを均等に分配 */
    }

    .side_bana_list li {
        flex: 0 1 calc(50% - 10px);
        margin: 5px;
    }

    .side_bana_3 img {
        width: 100%; /* 画像がコンテナにフィットするように */
        height: auto; /* 画像の縦横比を維持 */
    }


}




/* ◆◆◆ メッセージページの装飾 ◆◆◆ */

#th_1 { width: 5%; }
#th_2 { width: 5%; }
#th_3 { width: 15%; }
#th_4 { width: 30%; }
#th_5 { width: 25%; }





/* ◆◆◆ あしあとページの装飾 ◆◆◆ */


.ashiatoList div.item p, .ashiatoList div.item ul.list {
    padding-left: 0;
}

.ashiatoList div.item {
    margin: 8px auto;
    border: none;
}

.item {
    display: none;
    flex-direction: column;
    align-items: center;
}



/* ◆◆◆ ログインページの装飾 ◆◆◆ */



#freeArea_81, #freeArea_80, #MailAddressLogin, #freeArea_82 {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 95%;
    margin: 0 auto;
    font-size: 1.15em;
margin-bottom: 15px;
}

div#freeArea_82 {
    margin-bottom: 36px;
}

.loginForm {
    margin: 0;
}

.parts.loginForm {
    width: 100%;
}

img.login {
    width: 100%;
}

div#LayoutA.loginForm {
    width: 100%;
}

div.partsHeading.loginForm {
    background-image: linear-gradient(to bottom, #33A6D9, #1B8ECF);
    border-radius: 6px;
}

.rank_botton {
    border: 2px solid #0a5b2b;
    background-color: #16964b;
    background-image: linear-gradient(to bottom, #19b75b 0%, #16964b 50%, #0a5b2b 50%, #0d7c3a 100%);
    font-size: 27px;
    font-weight: bold;
    border-radius: 5px;
    box-shadow: 5px 5px #0000009e;
    padding: 3px;
    position: initial;
    display: block;
    margin: 5% auto 8%;
    width: 80%;
    /* font-size: calc(100vw * 0.045); */
}

.rank_botton a {
    position: relative;
    display: block;
    margin: 0;
    padding: 14px 0;
    text-align: center;
    color: #fff;
    text-shadow: 1px 1px #01210e;
}

div#freeArea_84 {
    margin-top: 42px;
}

#MailAddressLogin th, #MailAddressLogin td {
    padding: 12px 0px;
}

    #MailAddressLogin form {
        width: 80%;
    }

#MailAddressLogin table {
    width: 100%;
    table-layout: fixed;
    margin-bottom: 20px;
}

    #MailAddressLogin th {
        width: 30%; /* thの幅を30%に設定 */
    }

    #MailAddressLogin td {
        width: 70%; /* tdの幅を70%に設定 */
    }

    #MailAddressLogin input[type="text"],
    #MailAddressLogin input[type="password"],
    #MailAddressLogin input[type="checkbox"] {
        width: 100%; /* input要素を余白いっぱいに広げる */
        box-sizing: border-box; /* パディングとボーダーを幅に含める */
        height: 40px; /* input要素の高さを設定 */
        padding: 8px; /* input要素の内側にパディングを追加 */
    }

.input_submit {
    margin: auto;
    display: flex;
    font-size: 1.8em;
    padding: 3px 39px;
}



@media screen and (max-width: 768px) {
    /* ログインページの装飾 */


.rank_botton {
    font-size: calc(100vw * 0.045);
}

#MailAddressLogin form {
    width: 100%;
}

#MailAddressLogin th {
    width: 40%;
}


}



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


.input_submit {
    font-size: initial;
}

    #MailAddressLogin tr:first-child th, 
    #MailAddressLogin tr:first-child td,
    #MailAddressLogin tr:nth-child(2) th,
    #MailAddressLogin tr:nth-child(2) td {
        display: block;
        width: 200%;
    }

    #MailAddressLogin tr:first-child td input,
    #MailAddressLogin tr:nth-child(2) td input {
        width: 100%;
        box-sizing: border-box; /* パディングとボーダーを含めた幅にする */
    }

}












/* 画像アニメーション */

.side_bana_3 :hover img , ul.main_area_bana li :hover img , img.left_bana:hover {
  transform: scale(1.03);
  transition-duration: 0.3s;
}



/* ◆◆◆ トップページのスライダー設定 ◆◆◆ */


.slider {
    width: 94%;
    margin: 0 auto;
    display: none;
}

.slick-slider {
    overflow: visible;
}

.slider img {
    width: 120%;
    left: -21px;
    position: relative;
    max-width: 500px;
    height: auto;
}

.slider .slick-slide {
    transform: scale(0.8);
    transition: all .5s;
    opacity: 1;
}

.slider .slick-slide.slick-center {
    transform: scale(1);
    opacity: 1;
}


/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 37%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #666;/*矢印の色*/
    border-right: 2px solid #666;/*矢印の色*/
    height: 15px;
    width: 15px;
}

.slick-prev {/*戻る矢印の位置と形状*/
    left: -3%;
    transform: rotate(-135deg);
}

.slick-next {/*次へ矢印の位置と形状*/
    right: -3%;
    transform: rotate(45deg);
}

/*ドットナビゲーションの設定*/

.slick-dots {
    text-align:center;
    margin:20px 0 0 0;
}

.slick-dots li {
    display:inline-block;
  margin:0 5px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:8px;/*ドットボタンのサイズ*/
    height:8px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
    background:#ccc;/*ドットボタンの色*/
    padding: 0;
    border: none;
}

.slick-dots .slick-active button{
    background:#333;/*ドットボタンの現在地表示の色*/
}


@media screen and (max-width: 768px) {
    /* スライダー画像の調整 */

    .slider img {
        width: 100%;
        max-width: calc(100vw * 0.65);
        height: auto;
        width: 100%;
        left: 0px;
        position: static;
    }

    .slider .slick-slide {
        opacity: 0.5;
    }

    .slick-prev, 
    .slick-next {
        top: 42%;
    }

}


@media screen and (max-width: 420px) {
    .slider {
        width: 100%;
    }

    .slick-prev, .slick-next {
        display: none !important; 
    }

}




/*　■■■■■■■■■■■■■■■
ここからレスポンシブ化の修正作業中
■■■■■■■■■■■■■■■■■■*/

/* ■■■ タブレットサイズ (768px) のトップページ調整 ■■■*/


@media screen and (max-width: 768px) {
    /* タブレットサイズ向けの調整 */




    /* div枠の余白調整 */
    div.parts, div.dparts {
        margin-bottom: 15px;
    }

    /* 主要要素の幅を100%に設定 */
    #Body, #Container, #Header, #HeaderContainer, #topBanner, #Contents, #ContentsContainer, #localNav, #LayoutA, #Top {
        width: 100%;
    }

    #LayoutA, #LayoutB, #LayoutC{
        width: 98%;
        margin: 0 auto;
    }



    /* ◆headerメニュー幅の調整◆ */

    #Header {
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
    }

    #Header h1 {
        align-self: flex-start;
        margin-top: 42px;
    }

    #globalNav {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding-bottom: 42px;
    }





    /* ◆幅調整した時のコンテンツの並び替え◆ */


    /* sideBannerを下に移動 */
    #sideBanner {
        order: 1;
    }

    /* LeftとCenterの幅を調整 */
    #Left {
        width: 30%;
    }
    #Center {
        width: 70%;
    }

    /* 問題1: 余分なオーバーフローの削除 */
    body, #Container {
        overflow-x: hidden;
    }

    /* 問題2: globalNavのスタイル修正 */
    #globalNav {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }

    /* 問題3: LeftとCenterの間隔調整 */
    #Left, #Center {
        margin: 0;
        padding: 0;
    }

    /* sideBannerが表示されるようにする */
    #sideBanner {
        display: block;
        order: 2;  /* #Centerの後に来るようにorderを設定 */
    }
    #Center {
        order: 1;
    }

    /* 768px以下のレスポンシブ対応 */
    #Container {
        min-width: unset;
    }
    #HeaderContainer,
    #ContentsContainer,
    #FooterContainer {
        width: 100%;
    }

    /* 768px以下の並び順の対応 */
    #Main {
        display: flex;
        flex-direction: column;
    }
    #Left {
        order: 3;  /* #sideBannerが1、#Centerが2と仮定してorderを設定 */
    }
    #Center {
        order: 2;
    }
    #sideBanner {
        order: 1;
    }

    /* 768px以下の表示の対応 */
    #Left,
    #sideBanner {
        display: block;
        width: 100%;
    }

    #ContentsContainer {
        display: flex;
        flex-direction: column;
    }

    #Center, #sideBanner, #Left {
        order: 0;
        width: 100%;
    }

    #Center {
        order: 1;
    }

    #sideBanner {
        order: 2;
        width: 95%;
        margin: 0 auto;
    }

    #Left {
        order: 3;
    }

    body #LayoutA #Center {
        width: 100%;
        float: none;
    }

    #LayoutA #Center div.partsHeading {
        background-image: url(../../opSkinBasicPlugin/images/bg_parts_heading_720.gif);
    }
}



/* ■■■ スマートフォンサイズ (420px) のトップページ調整 ■■■*/

@media screen and (max-width: 420px) {
    /* スマートフォンサイズ向けの調整 */

    /* div枠の余白調整 */
    div.parts, div.dparts {
        margin-bottom: 30px;
    }

    
    /* 主要要素の幅を100%に設定 */
    #Body, #Container, #Header, #globalNav {
        width: 100%;
    }

    /* 画像のサイズをモバイル画面に合わせて調整 */
    img {
        max-width: 100%;
        height: auto;
    }

    /* テキストサイズの調整 */
    body {
        font-size: 16px;
    }
    
    #HeaderContainer {
    text-align: center; /* 水平方向の中央揃え */
}

    /* サイトロゴを中央に配置 */

    #Body #Header h1 {
        display: inline-block; /* ブロック要素として扱いつつ、インラインの振る舞いを持たせる */
        margin: 0 auto; /* 上下のマージンを0にし、左右のマージンを自動で調整 */
        width: 100px;
        height: 80px;
        background-image: url(https://sasatest.xyz/sns/web/cache/img/png/w_h/admin_logo_1573179033.png);
        background-repeat: no-repeat;
    }

    #Header h1 {
        align-self: flex-start;
        margin-top: 42px;
    }


    /* お知らせボックスの編集 */
    .informationBox {
        padding-left: 0;
        margin-bottom: 30px;
    }

    .informationBox div.body {
        border-left: none;
    }



}




/* ■■■ ハンバーガーメニュー ■■■ */




li#globalNav_ashiato_list , li#globalNav__member_profile_mine {
    display: none;
}


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


li#globalNav_ashiato_list , li#globalNav__member_profile_mine {
    display: block;
}


    /* ◆メニューボタン◆ */

    .openbtn4 {
        position: absolute;
        background: #57a2c7;
        cursor: pointer;
        width: 50px;
        height: 50px;
        border-radius: 5px;
        top: 55px;
        right: 15px;
        z-index: 99999;
    }

    /*ボタン内側*/
    .openbtn4 span{
        display: inline-block;
        transition: all .4s;/*アニメーションの設定*/
        position: absolute;
        left: 14px;
        height: 3px;
        border-radius: 2px;
        background: #fff;
        width: 45%;
    }

    .openbtn4 span:nth-of-type(1) {
        top:15px; 
    }

    .openbtn4 span:nth-of-type(2) {
        top:23px;
    }

    .openbtn4 span:nth-of-type(3) {
        top:31px;
    }

    /* activeクラスが付与されると線が回転して×に */

    .openbtn4.active span:nth-of-type(1) {
        top: 18px;
        left: 18px;
        transform: translateY(6px) rotate(-45deg);
        width: 30%;
    }

    .openbtn4.active span:nth-of-type(2) {
        opacity: 0;/*真ん中の線は透過*/
    }

    .openbtn4.active span:nth-of-type(3){
        top: 30px;
        left: 18px;
        transform: translateY(-6px) rotate(45deg);
        width: 30%;
    }


    /* ◆ドロップダウンメニュー◆ */


    #Body #globalNav {
        margin-left: initial;
        padding: 0;
    }


    #globalNav {
        position: fixed;
        z-index: 999;
        top: -120%;
        left: 0;
        width: 100%;
        height: 100vh;
        background: rgba(153, 153, 153); 
        transition: all 0.6s;
    }

    #globalNav.panelactive {
        top: 0;
    }


#globalNav ul {
    position: absolute;
    z-index: 999;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 80%;
}


#globalNav li{
    list-style: none;
    text-align: center; 
    border-left: none;
    border-right: none;
    float: none;
    border-bottom: 1px solid;
}

#globalNav li:first-child {
    border-top: 1px solid;
}

#globalNav li a{
    color: #333;
    text-decoration: none;
    padding:10px;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: bold;
}

}

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

    .openbtn4 {
        top: 13px;
    }


}



/* ■■■ localNavメニューボタン (768px) の調整 ■■■ */


.dropdown-trigger {
    display: none;
}



/* 768px以下の画面幅でのスタイル */
@media screen and (max-width: 768px) {
    .dropdown-trigger {
        display: block;
        position: absolute;
        width: 100%;
        border: none;
        padding: 5px;
        color: #FFFFFF;
    }

    #localNav {
        margin-bottom: 40px;
    }

    #localNav li {
        line-height: 30px;
        float: none;
    }

    /* ドロップダウンメニューのスタイル */
    ul.default , ul.friend , ul.community {
        display: none;
    }

    ul.default.show , ul.friend.show , ul.community.show {
        display: block;
        margin-top: 20px;
    }

    .default-dropdown-trigger {
        background: transparent url(../../opSkinBasicPlugin/images/bg_localnav_default.gif) repeat-y 0 0;
    }
    .friend-dropdown-trigger {
        background: transparent url(../../opSkinBasicPlugin/images/bg_localnav_friend.gif) repeat-y 0 0;
    }
    .community-dropdown-trigger {
        background: transparent url(../../opSkinBasicPlugin/images/bg_localnav_community.gif) repeat-y 0 0;
    }

}













/* #LayoutB（日記ページ）のRWD化 */

@media (max-width: 768px) {

    div#LayoutB {
        display: flex;
        flex-direction: column-reverse;
    }

    #LayoutB #Center {
        float: right;
        width: 90%;
        margin: 0 auto;
    }

    #LayoutB #Left {
        float: none;
        width: 90%;
        margin:15px auto 30px;
        display: flex;
        flex-direction: row;
    }

    #LayoutB #Center div.partsHeading {
        background: transparent url(../images/bg_parts_heading_720.gif) no-repeat 0 0;
    }

    .parts.calendar {
        display: none;
    }

    .parts.pageNav {
        width: 100%;
        padding-left: 1%;
    }

    #LayoutB #Center div.partsHeading {
        background: transparent url(../../opSkinBasicPlugin/images/bg_parts_heading_720.gif) no-repeat 0 0;
    }

    #LayoutB #Left div.partsHeading {
        background: transparent url(../../opSkinBasicPlugin/images/bg_parts_heading_720.gif) no-repeat 0 0;
    }

    #diaryForm th {
        width: 20px;
    }

    .form th {
        width: 20px;
    }

    /* #LayoutB（ランキングページ）のRWD化 */
    .parts.rankingSideNav {
        display: none;
    }


}


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

    /* スマートフォンサイズ向けの調整 */

    .diaryDetailBox dt , .commentList dt{
        float: none;
        padding-top: 5px;
        text-align: left;
        border-bottom: 1px solid #CCCCCC;
        width: auto;
        border-right: none;
    }

    .diaryDetailBox dd , .commentList dd{
        margin-left: 0;
        border-left: 0;
    }

    .commentList dl {
        margin-bottom: 30px;
    }


}





/* #LayoutC （コミュニティトピック関連）のRWD化 */

@media (max-width: 768px) {

    #LayoutC #Center {
        width: 97%;
        margin: 0 auto;
    }

}


@media (max-width: 420px) {

    #LayoutC .commentList dt {
        width: 100%;
    }

    #LayoutC .commentList dd {
        margin-left: 0;
    }

.topicDetailBox dt {
    float: none;
    width: 100%;
    padding: 5px;
    text-align: left;
    border-bottom: 1px solid #CCCCCC;
}

.topicDetailBox dd {
    zoom: 1;
    margin-left: 0;
    border-left: none;
}

}



/* #LayoutA （プロフ等）のRWD化 */

@media (max-width: 768px) {

    #LayoutA #Left {
        float: none;
        width: 90%;
        margin: auto;
    }

}


