/* ********************************* 定宽布局 ********************************* */
* {
    box-sizing: border-box;
    padding: 0px;
    margin: 0px;
}

body {
    font: 12px/1.5 tahoma, arial, Microsoft YaHei, sans-serif;
    text-align: justify;
    /*字体默认12px,行间距1.5倍,以及一些常用字体*/
}

html {
    scroll-behavior: smooth;
}
.w {
    width: 100%;
    min-width: 96vw;
}

.sw {
    width: 96vw;
    margin: 0 auto;
}


/* ********************************* 通用flex布局 ********************************* */
/* flex容器样式，子元素横向排列，垂直方向居中，水平方向子元素space-between */
.flex-row-sb {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* flex容器样式，子元素横向排列，垂直方向居中，水平方向子元素space-around */
.flex-row-sa {
    display: flex;
    justify-content: space-around;
    align-items: center;
}

/* flex容器样式，子元素横向排列，垂直方向居中，水平方向子元素聚中靠拢 */
.flex-row-center {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* flex容器样式，子元素横向排列，垂直方向居中，水平方向子元素聚左靠拢 */
.flex-row-left {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

/* flex容器样式，子元素横向排列，垂直方向居中，水平方向子元素聚右靠拢 */
.flex-row-right {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

/* flex容器样式，子元素纵向排列，水平方向居中，垂直方向子元素space-between */
.flex-column-sb {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
}

/* flex容器样式，子元素纵向排列，水平方向居中，垂直方向子元素space-around */
.flex-column-sa {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
}

/* flex容器样式，子元素纵向排列，水平方向居中，垂直方向子元素聚中靠拢 */
.flex-column-center {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

/* flex容器样式，子元素纵向排列，水平方向居中，垂直方向子元素聚上靠拢 */
.flex-column-top {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
}

/* flex容器样式，子元素纵向排列，水平方向居中，垂直方向子元素聚下靠拢 */
.flex-column-bottom {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
}

.index{
    min-height: 100vh;
    background-image: url(./image/bookshelf2-middle.png);
    padding-top: 5vw;
}

.index_cont{
    display: grid;
    grid-template-columns: repeat(3, 30vw);
    grid-gap: 8vw 2vw;
}
.index_box{
    position: relative;
    
}

.index_mask{
    width: 100%;
    height: 32vw;
    overflow: hidden;
}

.index_mask>img{
    max-width: 100%;
    max-height: 100%;
}

.index_text{
    position: absolute;
    bottom: 0;
    width: 100%;
    border: 1px solid #fff;
    border-radius: 2vw;
    background-color: rgba(0, 0, 0, 0.4);
    color: #fff;
    height: 10vw;
    padding: 0 2vw;
    text-align: center;
    font-weight: 300;
}