/* 細々としたstyle */
.block { display: block; box-sizing: border-box; }
.w100 { width: 100%; }
.w95 { width: 95%; }
.w90 { width: 90%; }
.w85 { width: 85%; }
.w80 { width: 80%; }
.w75 { width: 75%; }
.w70 { width: 70%; }
.w66 { width: 66.6%; }
.w65 { width: 65%; }
.w60 { width: 60%; }
.w55 { width: 55%; }
.w50 { width: 50%; }
.w45 { width: 45%; }
.w40 { width: 40%; }
.w35 { width: 35%; }
.w33 { width: 33.3%; }
.w30 { width: 30%; }
.w25 { width: 25%; }
.w20 { width: 20%; }
.w15 { width: 15%; }
.w10 { width: 10%; }
.w5 { width: 5%; }
.align-center { text-align: center; }
.align-right { text-align: right; }

.margin-v1 {margin : 1em 0;}

.line-common {line-height: 1.5;}
.size14 {font-size: 0.58em;}
.size18 {font-size: 0.75em;}
.size20 {font-size: 0.83em;}
.size24 {font-size: 1.5em;}
.size30 {font-size: 1.875em;}
.bold {font-weight: bold;}

/* フレックスボックス */
.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
}
.flex.inline {
    display : -ms-inline-flexbox;
    display : -webkit-inline-flex;
    display : inline-flex;
}
.flex.row {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
}
.flex.column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
}
.flex.wrap {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.flex.nowrap {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}
.flex.justify-content-start {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}
.flex.justify-content-end {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
}
.flex.justify-content-center {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}
.flex.justify-content-around {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: space-around;
    justify-content: space-around;
}
.flex.justify-content-evenly {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-justify-content: space-around; /* aroundで代用 */
    justify-content: space-evenly;
}
.flex.align-items-center {
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}
.flex.align-items-start {
    -webkit-box-align: start;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    align-items: flex-start;
}
.flex.align-items-end {
    -webkit-box-align: end;
    -ms-flex-align: end;
    -webkit-align-items: flex-end;
    align-items: flex-end;
}
.flex.align-items-baseline {
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    -webkit-align-items: baseline;
    align-items: baseline;
}

/* フレックスボックス 子要素 */
.flex .align-self-center {
    -webkit-align-self: center;
    align-self: center;
}
.flex .align-self-start {
    -webkit-align-self: flex-start;
    align-self: flex-start;
}
.flex .align-self-end {
    -webkit-align-self: flex-end;
    align-self: flex-end;
}
.flex .align-self-baseline {
    -webkit-align-self: baseline;
    align-self: baseline;
}
.flex .no-grow {
    -webkit-flex-grow: 0;
    flex-grow: 0;
}
.flex .no-shrink {
    -webkit-flex-shrink: 0;
    flex-shrink: 0;
}

/* フレックス幅指定 */
.flex .basis95 {-webkit-flex-basis: 95%;-ms-flex-preferred-size: 95%;flex-basis: 95%;}
.flex .basis90 {-webkit-flex-basis: 90%;-ms-flex-preferred-size: 90%;flex-basis: 90%;}
.flex .basis85 {-webkit-flex-basis: 85%;-ms-flex-preferred-size: 85%;flex-basis: 85%;}
.flex .basis80 {-webkit-flex-basis: 80%;-ms-flex-preferred-size: 80%;flex-basis: 80%;}
.flex .basis75 {-webkit-flex-basis: 75%;-ms-flex-preferred-size: 75%;flex-basis: 75%;}
.flex .basis70 {-webkit-flex-basis: 70%;-ms-flex-preferred-size: 70%;flex-basis: 70%;}
.flex .basis66 {-webkit-flex-basis: 66.6%;-ms-flex-preferred-size: 66.6%;flex-basis: 66.6%;}
.flex .basis65 {-webkit-flex-basis: 65%;-ms-flex-preferred-size: 65%;flex-basis: 65%;}
.flex .basis60 {-webkit-flex-basis: 60%;-ms-flex-preferred-size: 60%;flex-basis: 60%;}
.flex .basis55 {-webkit-flex-basis: 55%;-ms-flex-preferred-size: 55%;flex-basis: 55%;}
.flex .basis50 {-webkit-flex-basis: 50%;-ms-flex-preferred-size: 50%;flex-basis: 50%;}
.flex .basis45 {-webkit-flex-basis: 45%;-ms-flex-preferred-size: 45%;flex-basis: 45%;}
.flex .basis40 {-webkit-flex-basis: 40%;-ms-flex-preferred-size: 40%;flex-basis: 40%;}
.flex .basis35 {-webkit-flex-basis: 35%;-ms-flex-preferred-size: 35%;flex-basis: 35%;}
.flex .basis33 {-webkit-flex-basis: 33.3%;-ms-flex-preferred-size: 33.3%;flex-basis: 33.3%;}
.flex .basis30 {-webkit-flex-basis: 30%;-ms-flex-preferred-size: 30%;flex-basis: 30%;}
.flex .basis25 {-webkit-flex-basis: 25%;-ms-flex-preferred-size: 25%;flex-basis: 25%;}
.flex .basis20 {-webkit-flex-basis: 20%;-ms-flex-preferred-size: 20%;flex-basis: 20%;}
.flex .basis15 {-webkit-flex-basis: 15%;-ms-flex-preferred-size: 15%;flex-basis: 15%;}
.flex .basis10 {-webkit-flex-basis: 10%;-ms-flex-preferred-size: 10%;flex-basis: 10%;}
.flex .basis5 {-webkit-flex-basis: 5%;-ms-flex-preferred-size: 5%;flex-basis: 5%;}

.flex, .flex * {
    box-sizing: border-box;
}
