h3 {
    text-align: left;
    color: #333;
    margin-left: 5%;
    
    font-size: 33px;
    font-weight: bold;
}

h3.pickup {
    padding: 20px 0 10px 0;
}

div.top_content h3 {
    /*padding: 0 25px;
    margin: 10px 0;
    width: 900px;*/
    margin: auto;
    /*padding: 30px 0;*/
    text-align: center;
    font-size: 38px ;
    
}



.top_box {
    padding: 0;
    margin: 0;
}

#contents {
    padding-bottom: 0px;/*元は66px*/
}



/*************** top_box  *****************/
.logo {
    width: 200px;                       /* 横幅のサイズを指定    */
    height: auto;                      /* 縦のサイズをautoに指定    */
    float: right;
    margin: 100px 10px 0 0;
}
.character {
    width: 400px;
    height: auto;
    margin: 0 auto 0 20px;
    display: block;
    clear: both;
}
.top_image_smart {
    display: none;                     /* 781px以上で非表示   */
}
.toppage .top_box {
    position: relative;
    display: table;
    width: 100%;
    margin-top: 70px;
}

.toppage .top_box:before {
    content: "";
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 0;
}

.toppage h1 {
    font-size: 36px;
    text-align: center;
     /** 追記 **/
    font-family: 'Noto Sans JP', sans-serif !important;

}


/**
.toppage_wrap{
  width: 100%;
  height: 630px;元は600
  background-image: url(/img/top.png);
  background-size: cover;
}
*/

.top_view_botton{
    width: 374px;
    height: 64px;
    font-size: 16px;
    
    background-color: #C21630;
    color: #fff;
    font-weight: bold;
    margin: auto;
    display: block;

    text-align: center;
    line-height: 64px;

    border-radius: 8px;
    margin-top: 0px;
    margin-bottom: 0px;
}
.top_view_botton:hover{
    background-color: #F94848;
}

@media screen and (min-width: 1280px) {
.top_view_botton {
    width: 500px;
  }



}
@media screen and (max-width: 680px) {
  .toppage h1 {
      font-size: 14px;
      text-align: center;
      /** 追記 **/
      letter-spacing: 0.2em;
      font-weight: 600;
      margin: 10px 20px;
      background-color: #ffffff99;

  }
 
  .top_view_botton{
      width: 300px;
  }

  .pc_title {
    display: none;
  }
}




/*************** Jumbotron > content1 & content2  *****************/
.top_box .content1,
    .top_box .content2 {
        text-align: center;
        padding: 40px 0 0 0;
        position: relative;
        z-index: 1;
    }

    .top_box .content1 {
        font-size: 25px;
    }

    .top_box h1 {
        padding: 0px 20px;
        font-size: 40px;
        font-weight: bold;
    }



@media screen and (max-width: 780px) {
    .toppage_wrap{
        width: 100%;
        height: 72vw;/* 元は220px*/
        background-image: url(/img/top_view_smart.png);
        background-size: cover;
    }
    .logo {
        display: none;
    }
    .character {
        padding-top: 40px;
        margin-bottom: 50px;

    }
    .top_view_botton {
        padding: 0;
        width: 91% !important;
        height: 48px;
        line-height: 48px;

        font-size: 14px;
        font-weight: bold;
    }
    .top_box .content1,
    .top_box .content2 {
        padding: 50px 0 0 0;
    }

    .top_box h1 {
        font-size: 25px;
    }

    h3 {
        padding: 10px 0 5px 0;
    }

    #contents {
        padding-bottom: 0px;
    }

    .title{
        padding: 10.6vw 15px 9vw 0!important;
        margin: 0 !important;
        font-size: 2.36rem !important;
        font-weight: bold;
        
    
    }

    .top_content {
        margin-top: 0px;
        padding-bottom: 0px !important;
    }

}

/*************** pickup_project  *****************/
.pickup_project_box {
    width: 100%;
    padding: 10px 10px 20px 10px;
    margin-bottom: 0px;
}

.pickup_project {
    margin: 0 auto 20px auto;
    display: table;
    box-shadow: 0 4px 0 #ccc;
}

.pickup_project .imgholder,
.pickup_project .right {
    display: table-cell;
    vertical-align: top;
}

.pickup_project .imgholder {
    position: relative;
    max-width: 600px;
}

.pickup_project .right {
    padding: 10px 20px;
    background: #fff;
    position: relative;
    width: 700px;
}

.pickup_project h2.title a {
    color: #000;
    font-size: 18px;
}

.pickup_project p.description {
    font-size: 13px;
}

.pickup_project .graph_footer {
    position: absolute;
    bottom: 0px;
    width: 90%;
}

.pickup_project .grid_footer {
    font-size: 12px;
    display: table;
    width: 100%;
}

.pickup_project .grid_footer div {
    display: table-cell;
    width: 33%;
    text-align: center;
    padding-bottom: 5px;
}

/*************** プロジェクト一覧 *****************/

.grid {
    position: relative;
}
.grid_string{
    position: absolute;
}

.toppage_pj_content {
    width: 100%;
    max-width: 410px;
    padding: 5px;
    margin: 0 auto;
    
}

.copmment_list {
    bottom: 0;
    background: rgb(255 255 255 / 45%);
    width: 100%;
    height: 300px;
    color: #000;
    padding: 1% 3%;
    margin: 0;
    display: block !important;
    margin:100px
    
}

.comment_list a {
    display: block;
}

.top_comment {
    margin: 5px 10px;
    padding-left: 1em;
    text-indent: -1.5em;
    
}

.comment-inline{
    float: left;
}

.box-shadow {
    box-shadow: 3px 3px 2px #7777776e;
}




/****** success ******/
.pickup_project .project_success {
    position: absolute;
    top: 0;
    left: 50%;
    width: 80%;
    margin-left: -40%;
    padding: 4px 0;
    background: #c21630;
    color: #fff;
    font-weight: bold;
    text-align: center;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
}

@media screen and (max-width: 1200px) {
    .pickup_project .right {
        width: 550px;
    }
}

@media screen and (max-width: 1100px) {
    .pickup_project .right {
        width: 500px;
    }
}

@media screen and (max-width: 1000px) {
    .pickup_project .right {
        width: 450px;
    }
}

@media screen and (max-width: 900px) {
    .pickup_project .right {
        width: 400px;
    }
}

@media screen and (max-width: 749px) {
    .pickup_project {
        display: block;
        max-width: 600px;
    }

    .pickup_project .imgholder,
    .pickup_project .right {
        display: block;
        margin: 0;
    }

    .pickup_project .right {
        padding: 10px 10px 10px 10px;
        background: #fff;
        position: relative;
        width: 100%;
    }

    .pickup_project h2.title {
        margin: 0 0 10px 0;
    }

    .pickup_project h2.title a {
        color: #000;
        font-size: 15px;
    }

    .pickup_project .graph_footer {
        position: relative;
        width: 100%;
        margin: 0 auto;
    }

    .pickup_project .grid_footer {
        font-size: 12px;
        display: table;
    }

    .pickup_project .grid_footer div {
        display: table-cell;
        width: 33%;
        text-align: center;
        padding-bottom: 0px;
    }
}
/*************** twitter sosial  *****************/
.twitter_btn {
  color: #fff;
  font-weight: 600;
  margin: 0 auto;
  display: block;
}

/*************** report & category  *****************/
.top_content {
    margin-top: 0px;
    padding-bottom: 0px;
}


/** 追加**/
.grid_container {
    margin: 10px !important;
}

.grid_title{
    word-wrap: break-word;
    overflow-wrap: break-word;
}

#tabcontrol {
    /*width: 100%;*/
    text-align: center;
    /*border-bottom: 2px solid #fff ;*/
    margin: 0 auto !important;
}





.gnav{
    width: 100% !important;
}

.tab{
    /*width: 100% !important;*/
}

.tab p{
    margin: 0;
    
}

#tabcontrol a {
    display: block;            /* インラインブロック化 */
    border-width: 0;     /*下以外の枠線を引く */
    border-top: 0px;
    border-right: 1px;
    border-bottom: 0px;
    border-left: 0px;
    /*border-style: solid;              /* 枠線の種類：実線 */
    border-color: #D8D8D8;              /* 枠線の色：黒色 */
    border-radius: 0; /* 枠線の左上角と右上角だけを丸く */
    padding: 0.7em 0.7em;              /* 内側の余白 */
    text-decoration: none;            /* リンクの下線を消す */
    color: #464646;                     /* 文字色：黒色 */
    background-color: white;          /* 背景色：白色 */
    font-weight: bold;                /* 太字 */
    position: relative;               /* JavaScriptでz-indexを調整するために必要 */
    
}

#tabcontrol a:hover {
    /*background-color: #C21630 !important;       /* カーソル当てたら色変える */
    /*color: white !important;*/
}

#tabbody ul {
    /*border: 1px solid black;  枠線：黒色の実線を1pxの太さで引く */
    margin-top: -1px;        /* 上側にあるタブと1pxだけ重ねるために「-1px」を指定 */
    /*padding: 40px 100px ;            /* 内側の余白量 */
    background-color: #ffffff; /* 背景色 */
    position: relative;      /* z-indexを調整するために必要 */
    z-index: 0;              /* 重なり順序を「最も背面」にするため */
    /**border: 1px solid #abfda8;
    border-image: linear-gradient(to top right, #abfda8 0%, #02bdf5 100%);**/
    border-image-slice: 1;
}

.article ul{
    margin: 0 !important;
    
}

.article ul {
    display: block;
    list-style-type: disc;
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 0;
}



.article {
    
    width: 100%;
    
}





.thum_img{
    
    width: 100%;
    
}



.grid_title a{
    width: 100% !important;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-all;
    word-break: break-word;
    display: block;
}



.top_title h2{
    font-size: 33px;
    font-weight: bold;
    margin: 0 !important;
    padding: 20px;
}

.top_com h2 {
    font-size: 22px;
    font-weight: bold;
    margin-top: 5px;
}



.comment_first h2{
    font-size: 20px;
    margin-top: 0;
    margin-bottom: 10px;
}



.comment_list {
    width: 100%;
    vertical-align: top;
}


.top_com .comment_list a{
    width: 100% !important;
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-all;
    
    
}

.com_content{
    word-wrap: break-word;
    overflow-wrap: break-word;
    word-break: break-all;
    word-break: break-word;
    padding: 0 5px;
    }




.more{
    position: absolute;
    right: 45px;
    bottom: 25px;
    
    font-size: 21px;
    
}




.gnav {
    overflow-x: auto !important;
    overflow-y: hidden !important;
}
.gnav ul {
    display: table !important;
}
.gnav ul li {
    display: table-cell !important;
    white-space: nowrap !important;
}



/** PC(780px以上)**/
@media (min-width: 781px) {
.sp{
    display: none;
}



div.top_content h3 {
    /*padding: 0 25px;
    margin: 10px 0;*/
    width: 100%;
    margin: auto;
    padding: 76px 0 28px 0;
}

.navibar{
    
    height: 68px;
    margin: 0 auto;
    /*border-bottom: 1px solid;*/
    border-color: #D8D8D8;
}

.nav_bg{
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);

    height: 48px;
    background-color: #FFFFFF;

    
}

#tabcontrol {
    margin: 10px auto !important;
}

.tab {
    height: 48px;
    
    font-size: 18px;
    
}


.article_first_pc{
    width: 900px;
    height: 450px; 
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 20px;
}

.thum_first img{
    object-fit: cover ;
    width: 900px;
    height: 300px;
}

.thum_first .movie{
    object-fit: cover ;
    width: 900px !important;
    height: 300px !important;
}

.thum_first .prof_img {
    object-fit: cover;
    width: 900px !important;
    height: 300px !important;
}


.title_first{
    width: 900px;
    height: 75px;
    background: #fdfcfc;
    position: relative;
}

.comment_first{
    width: 900px;
    height: 75px;
    background: #f4f4f4;
}




.list_contents{
    /*width: 900px;*/
    height: 200px;
    margin: 0 auto 25px auto;
    display: flex !important;
    box-shadow:3px 3px 3px #f7f7f7;
    
}

.top_thum{
    width: 300px ;
    height: 200px;
    vertical-align: top;
}




.top_title{
    width: 600px;
    height: 200px;
    vertical-align: top;
    position: relative;
    padding: 5px 10px;
    background: #fdfcfc;
    
}




.prof_img{
    object-fit: cover;
    width: 300px;
    height: 200px; /*相対的な値はvwで設定できる*/
}

.movie {
    object-fit: cover;
    width: 300px;
    height: 200px !important;
}


}

/** 1番目の記事 **/


.title_first h2{
    font-size: 20px;
    margin-top: 0;
    margin-bottom: 10px;
}



.comment_first{
    width: 100%;
    position: relative;
}

.come{
    display: flex;
}


.title_first .more {
    position: absolute;
    right: 0;
    bottom: 0;
}

.comment_first .more{
    position: absolute;
    right: 10px;
    bottom: 0;
}



/** スマホ画面 **/
@media (max-width: 780px) {
.pc {
    display: none;
}
#tabcontrol {
    max-width: 648px !important;
    margin: 10px auto !important;
    padding: 0 20px;
}



.article_content {
    
}


.img_list_thum img{
    object-fit: cover;
    width: 100%;
    height: 100%;
    border-radius: 10px 10px 0 0;
    
}

.sp .prof_img{
    object-fit: cover;
    width: 100%;
    height: 28.8vh;
    border-radius: 10px 10px 0 0;
}

.img_list_thum .movie{
    object-fit: cover;
    width: 100% !important;
    height: 100% !important;
    border-radius: 10px 10px 0 0;
}



.title_sp .more {
    position: absolute;
    right: 10px;
    bottom: 5px;

    font-size: 14px;
}




.comment_sp .more{
    position: absolute;
    right: 0;
    bottom: 0;
}


.main_contents{
    padding: 0 !important;
}

#tabbody ul {
    
    
    padding: 0 ;            /* 内側の余白量 */
    
}

.regist{
    width: 100% !important;
}

.about_micoto{
    width: 100% !important;
    padding: 20px;
}

/* コメント募集中 アイコンとテキスト横並び*/
.section2 img{
    width: 40px !important;
	margin-right:5px !important;
	vertical-align: middle;
}
.section2 span{
    vertical-align: middle;
}
/****/

.navibar{
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}


#tabcontrol a {
    
    padding: 0;
    font-size: min(1.3vw, 12px);
    height: 32px;
    width: 72px;
    /*line-height: 32px;*/
    
}

.tab p{
    font-size: 12px;
    text-align: center;
    
    width: 72px;
    height: 32px;
    line-height: 32px;
    border-right:1px solid #707070 ;
}

.tab .last p {
    border-right:none !important;
}


/** トップロゴ**/

.top_logo{
    
    padding-top: 30px;
    
}

.character {
    width: 40% !important;
    
    margin: 0 auto !important;
    }

/***************/
.infinite-scroll-last{
    margin: 48px auto 0 auto;
}

.top_chokin_all{
    padding: 20px 0 27px 0;
    background-color: #F3F3F6;
}

.sp_b_l{
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items:flex-end;

    border-bottom: solid 2px #C21630;
    font-size: 20px;
    font-weight: bold;
    padding: 0;

    
}

.sp_question{
    position: absolute;
    top: -10px;
    right: 0;
}

.kingaku_right{
    position: relative;
}

.sp_shien_kin{
    margin-top: 30px;
}



}





.top_contents {
    width: 75%;
    margin-left: 10px;
}


.sp h2{
    font-size: 16px !important;
    margin-top: 0px;
    margin-bottom: 5px;
}



.article_content{
    background: #ffffff;
    padding-bottom: 0px;
}


/** 1番目の記事 **/
.thum_first_sp .movie{
    width: 100%;
    height: 50vw !important;
}

.thum_first_sp .prof_img{
    object-fit: cover;
    width: 100%;
    height: 50vw !important;
}

.title_first_sp h2{
    margin-top:10px;
    margin-bottom: 10px;
}

.title_first_sp {
    position: relative;
    width: 50%;
    background: #fdfcfc;
}

.title_first_sp p {
    margin: 0 !important;
}

.title_first_sp .more {
    position: absolute;
    right: 0;
    bottom: 0;
}

.comment_first_sp {
    width: 50%;
    background: #f4f4f4;
    position: relative;
    padding-bottom: 25px;
    padding-top: 10px;
}


.comment_first_sp .more {
    position: absolute;
    right: 0;
    bottom: 0;
}





.article_first{
    margin-bottom:10px;
}

.first_t_c{
    display: flex;
}


/** PC幅1281px以上は背景だけ広がる**/
.main_contents{
    max-width :1280px !important;
}

/** その他追加**/
.main_contents{
    padding:0 40px;
}

.foot_contents{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}

.regist {
    width: 40%;
}

.about_micoto{
    width: 60%;
}

.regist .top_view_botton{
    padding: 3%;
    background-color: #f4bb48;
    color: #333;
    font-weight: 600;
    margin: auto;
    display: block;
    text-align: center;
    border-radius: 30px;
    margin-top: 0px;
    margin-bottom: 0px;
    width: 60% ;
}

.regist h3{
    font-size: 16px;
    font-weight: bold;
    padding: 0; 
    margin: 0;
    text-align: center;
    margin-bottom: 30px;
}

/* コメント募集中 アイコンとテキスト横並び*/
.section2 img{
    width: 60px;
	margin-right:10px;
	vertical-align: middle;
}
.section2 span{
    vertical-align: middle;
}
/****/

.top_img{
    width: 100%;
    height: 100%;

    padding-top: 80px;

}

.top_img img{
    width: 100%;
    height: 100%;
    object-fit: contain;
    
}
.top_logo{
    width: 100%;
    height: auto;
    margin: 0 auto;
    display: block;
    clear: both;
}



/****/
.post_btn{
    margin: 64px auto 0 auto;
}

.shien{
    text-align: center;
    margin: 20px auto;
    font-size: 21px;

}

@media (max-width: 780px) {
    .post_btn{
        width: 100%;
        margin: 50px auto 68px auto;
        
    }

    .shien {
        text-align: center;
        margin: 15px auto;
        font-size: 16px;
    }

    .more_btn {
        font-size: 18px;
        font-weight: bold;
    }
}


/***** 記事もっと見るボタン(全部 以外) *****/
.top_more_btn{
    width: 100%;
    text-align: center ;
    margin: 10px auto;
    cursor: pointer;
    font-size: 24px;
    font-weight: bold;
}


/******* 記事一覧 ***********/
.top_contents{
    text-align: center;
}

/******* トップ画像 ********/
.sp .top_img img{
    width: 100%;
    
    object-fit: contain;
}

.sp .top_img {
    padding-top: 58px;
}
/*****************/

input.btn_more {
    width: 70px;
    margin-top: 20px;
}

a#koko {
    display: block;
    text-align: center;
}

a#koko_sp {
    display: block;
    text-align: center;
}


/********カテゴリー文字表示**********/
.cate_none{
    display: none;
}


.ctg_all{
    position: relative;
}

.ctg_all a:after {
    content:url('../img/all.svg');
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    
}
    
.ctg_all a:hover:after{
    content:"すべて";
    
}

.ctg_otoku{
    position: relative;
}


.ctg_otoku a:after {
    content:url('../img/otoku.svg');
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
    
.ctg_otoku a:hover:after{
    content:"お店";
}

.ctg_gor{
    position: relative;
}


.ctg_gor a:after {
    content:url('../img/gor.svg');
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
    
.ctg_gor a:hover:after{
    content:"グルメ";
}

.ctg_tra{
    position: relative;
}


.ctg_tra a:after {
    content:url('../img/tra.svg');
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
    
.ctg_tra a:hover:after{
    content:"観光";
}

.ctg_ent{
    position: relative;
}

.ctg_ent a:after {
    content:url('../img/ent.svg');
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
    
.ctg_ent a:hover:after{
    content:"エンタメ";
}

.ctg_inc{
    position: relative;
}

.ctg_inc a:after {
    content:url('../img/inc.svg');
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
    
.ctg_inc a:hover:after{
    content:"事件事故";

}

.ctg_know{
    position: relative;
}

.ctg_know a:after {
    content:url('../img/know.svg');
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}
    
.ctg_know a:hover:after{
    content:"知ってほしい";
}

.tab{
    width: min(12vw, 150px);
    font-size: min(1.3vw, 12px);
    
}

.tab img{
    width: 20px;
}


.ctg_all a:hover:after,
.ctg_otoku a:hover:after,
.ctg_tra a:hover:after,
.ctg_ent a:hover:after,
.ctg_inc a:hover:after,
.ctg_know a:hover:after
{
    font-size: 16px;
}

/****************/





.tab img{
    height: 30px;
}
@media (max-width: 780px){
    .tab img{
        height: 12px;
    }
}


/*****貯金額******/
.c_s_kingaku{
    display: flex;
    justify-content: center;
}



.cover_kikaku{
    position: relative;
}

.cover_shinki{
    position: absolute;
    bottom: min(7vw,100px);
    right: 0;
    left: 0;
    margin: auto;
    
    width: 15%;
}

.cover_shinki img{
    width: 100%;
}

.sp_top_bn{
    position: relative;
}

/*トップバナー*/
.sp .top_img ul.slick-dots {
    position: absolute;
    bottom: 5px;
}

.sp .top_img .slick-dotted.slick-slider {
    margin-bottom: 0px;
    position: relative;
}


.slick-prev {
    left: 15px !important;
    z-index: 50 !important;
}

.slick-next{
    right: 25px !important;
    z-index: 50 !important;
}

.slick-prev:before, .slick-next:before {
    font-size: 35px !important;
    line-height: 1;
    color: #5d5b5b66 !important;
}

@media (max-width: 780px){
    

    .cover_shinki {
        position: absolute;
        bottom: min(130px, 13vw);
        
        width: 30%;
    }

}
