/*    ------------       index      ---------      */

.index .index_mv {
    width: 100%;
    position: relative;
    height: 380px;
}
.index .index_mv .mv_video {
    position: absolute;
    top: 0; bottom: 0; left: 0; right: 0;
    overflow: hidden;
}
.index .index_mv .mv_video video {
    position: absolute;
    top: 50; left: 50;
    object-fit: cover;
    width: 100%;
    height: 100%;
}
.index .index_mv .mv_txt {
    position: absolute;
    bottom: 5px; right: 5px;
    width: calc(100% - 20px);
    max-width: 300px;
}
.index .index_mv .mv_txt img {
    width: 100%;
}
/*    ------------       content-1   news   ---------      */

.index .news {
    margin: 40px 0;
}
.index .news h2 {
    width: 100px;
    margin: 0 auto;
    margin-bottom: 20px;
    padding-bottom: 10px;
    border-bottom: 4px #5da632 solid;
}
.index .news .news_items {
    
    padding-top: 20px;
    max-height: 300px;
    overflow-y: scroll;
}
.index .news .news_items dl {

}
.index .news .news_items dl dt {
    display: inline-block;
    background: #5da632;
    color: #fff;
    padding: 2px 10px;
    font-size: 1.4rem;
}
.index .news .news_items dl dd {
    padding-left: 1em;
    margin-top: 6px;
    margin-bottom: 16px;
}
.index .news .news_items dl {

}


/*    ------------       content-2   content_menu   ---------      */

.index .content_menu {
    background: url(../img/index/bg-paper.jpg) repeat;
    padding: 60px 10px 10px 10px;
    position: relative;
}
.index .content_menu .item_wrap .item {
    position: relative;
    text-align: right;
    margin-bottom: 30px;
    z-index: 1;
}
.index .content_menu .item_wrap .item .image {
    background: #333;
    width: 100%;
    height: 240px;
    position: relative;
}
.index .content_menu .item_wrap .item .image a {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0; left: 0;
    z-index: 10;
}
.index .content_menu .item_wrap .item .image::before {
    content: "";
    width: 100%;
    height: 100%;
    background: #5da532;
    display: inline-block;
    position: absolute;
    z-index: -1;
    top: -4px; left: -4px;
}
.index .content_menu .item_wrap .item .image::after {
    content: "";
    width: 100%;
    height: 100%;
    background: #d4d600;
    display: inline-block;
    position: absolute;
    z-index: -2;
    bottom: -4px; right: -4px;
}
.index .content_menu .item_wrap .item.item_1 .image {
    background: url(../img/index/content_menu_1_sp.jpg) no-repeat top left / cover;
}
.index .content_menu .item_wrap .item.item_1 .image .inr_txt {
   position: absolute;
   bottom: 4px;
   right: 4px;
}
.index .content_menu .item_wrap .item.item_1 .image .inr_txt img {
    width: 70%;
}
.index .content_menu .item_wrap .item.item_2 .image .inr_txt,
.index .content_menu .item_wrap .item.item_3 .image .inr_txt {
   position: absolute;
 -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
    bottom: 20px; left: 20px;
    font-size: 4.8rem;
    font-weight: 600;
    letter-spacing: 4px;
    color: rgba(255,255,255,.7);
}
.index .content_menu .item_wrap .item.item_2 .image {
    background: url(../img/index/content_menu_2_sp.jpg) no-repeat top left / cover;
}
.index .content_menu .item_wrap .item.item_3 .image {
    background: url(../img/index/content_menu_3_sp.jpg) no-repeat bottom left / cover;
}
.index .content_menu .item_wrap .item.item_4 .image {
    background: url(../img/index/content_menu_4_sp.jpg) no-repeat center center / cover;
}
.index .content_menu .item_wrap .item ul {
    display: inline-block;
    text-align: left;
    margin: 8px 0;
    line-height: 1.8em;
}
.index .content_menu .item_wrap .item ul li a {
    font-size: 1.8rem;
}
.index .content_menu .item_wrap .item ul li::before {
    content: "▶";
    font-size: .8em;
    color: #5da532;
    margin-right: 4px;
}

/*    ------------------------------       SP CSS       ------------------------      */
   
   
@media(min-width:768px) {

    .index .index_mv {
        width: 100%;
        position: relative;
        height: 600px;
    }
    .index .index_mv .mv_video {
        position: absolute;
        top: 0; bottom: 0; left: 0; right: 0;
        overflow: hidden;
    }
    .index .index_mv .mv_video video {
        position: absolute;
        top: 50; left: 50;
        object-fit: cover;
        width: 100%;
        height: 100%;
    }
    .index .index_mv .mv_txt {
        position: absolute;
        bottom: 5px; right: 5px;
        width: calc(100% - 20px);
        max-width: 300px;
    }
    .index .index_mv .mv_txt img {
        width: 100%;
    }
    /*    ------------       content-1   news   ---------      */

    .index .news {
        margin: 80px 0;
    }
    .index .news_wrap {
        display: flex;
        align-items: center;
    }
    .index .news h2 {
        width: 300px;
        margin: 0 auto;
        margin-bottom: 20px;
        padding-bottom: 10px;
        border-bottom: 0;
        text-align: center;
        
    }
    .index .news h2 img {
        width: 100px;
    }
    .index .news .news_items {
        padding-top: 20px;
        max-height: 300px;
        overflow-y: scroll;
        width: calc(100% - 300px);
    }
    .index .news .news_items dl {
        display: flex;
        margin-bottom: 25px;
        align-items: baseline
    }
    .index .news .news_items dl dt {
        display: inline-block;
        background: #5da632;
        color: #fff;
        padding: 2px 10px;
        font-size: 1.4rem;
    }
    .index .news .news_items dl dd {
        padding-left: 1em;
        margin-top: 0;
        margin-bottom: 0;
    }
    
    /*    ------------       content-2   content_menu   ---------      */

    .index .content_menu {
        background: url(../img/index/bg-paper.jpg) repeat;
        padding: 100px 20px 20px 20px;
        position: relative;
    }
    .index .content_menu .item_wrap {
        display: flex;
        justify-content: space-between;
        max-width: 1400px;
        margin: 0 auto;
    }
    .index .content_menu .item_wrap .item {
        position: relative;
        text-align: right;
        margin-bottom: 30px;
        z-index: 1;
        width: calc(100% / 4 - 20px);
    }
    .index .content_menu .item_wrap .item .image {
        background: #333;
        width: 100%;
        height: 300px;
        position: relative;
     }
    .index .content_menu .item_wrap .item .image a {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0; left: 0;
        z-index: 10;
    }
    .index .content_menu .item_wrap .item .image::before {
        content: "";
        width: 100%;
        height: 100%;
        background: #5da532;
        display: inline-block;
        position: absolute;
        z-index: -1;
        top: -4px; left: -4px;
    }
    .index .content_menu .item_wrap .item .image::after {
        content: "";
        width: 100%;
        height: 100%;
        background: #d4d600;
        display: inline-block;
        position: absolute;
        z-index: -2;
        bottom: -4px; right: -4px;
    }
    .index .content_menu .item_wrap .item.item_1 .image div {
        background: url(../img/index/content_menu_1_sp.jpg) no-repeat top left / cover;
    }
    .index .content_menu .item_wrap .item.item_1 .image .inr_txt {
       position: absolute;
       bottom: 4px;
       right: 4px;
    }
    .index .content_menu .item_wrap .item.item_1 .image .inr_txt img {
        width: 70%;
    }
    .index .content_menu .item_wrap .item.item_2 .image .inr_txt,
    .index .content_menu .item_wrap .item.item_3 .image .inr_txt {
       position: absolute;
     -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
        bottom: 10px; left: 10px;
    }
    .index .content_menu .item_wrap .item.item_2 .image {
        background: url(../img/index/content_menu_2_sp.jpg) no-repeat top left / cover;
    }
    .index .content_menu .item_wrap .item.item_3 .image {
        background: url(../img/index/content_menu_3_sp.jpg) no-repeat bottom left / cover;
    }
    .index .content_menu .item_wrap .item.item_4 .image {
        background: url(../img/index/content_menu_4_sp.jpg) no-repeat center center / cover;
    }
    .index .content_menu .item_wrap .item ul {
        display: inline-block;
        text-align: left;
        margin: 8px 0;
        line-height: 1.8em;
    }
    .index .content_menu .item_wrap .item ul li a {
        font-size: 1.8rem;
    }
    .index .content_menu .item_wrap .item ul li::before {
        content: "▶";
        font-size: .8em;
        color: #5da532;
        margin-right: 4px;
    }
}



