.parent {
 display: flex
}

.parent02 {
 margin-top: 3em
}

.child-box {
 width: 60px;
 height: 60px;
 background: #3498db
}

.child-list {
 margin: 0 -10px
}

.child-list li {
 width: 60px;
 height: 60px;
 background: #3498db;
 display: inline-block;
 margin: 0 10px;
 list-style: none
}

.parent01 .child-box {
 margin-right: auto
}

.parent02 .child-list {
 margin: 0 auto
}

.parent02 .child-box:nth-of-type(1) {
 background: #e74c3c
}

.parent02 .child-box:nth-of-type(2) {
 background: #f39c12
}

p.text {
 margin: 1.5em 0 .5em;
 color: #222;
 font-family: "Open Sans", sans-serif;
 font-size: 1.8rem;
 font-weight: 300;
 text-align: center
}

p.text:first-child {
 margin-top: 0
}

.parent {
 display: flex
}

.parent01 {
 justify-content: space-between
}

.parent02 {
 justify-content: space-around
}

.parent03 {
 justify-content: space-evenly
}

.child {
 width: 60px;
 height: 60px;
 background: #3498db
}

.parent {
 display: flex
}

.child2 {
 display: flex;
 justify-content: center;
 align-items: center;
 height: 200px;
 color: #fff;
 font-size: 1.4rem
}

.main {
 flex: 1;
 background: #3498db
}

.side {
 width: 200px;
 background: #e74c3c
}

.child3 {
 display: flex;
 justify-content: center;
 align-items: center;
 height: 200px;
 color: #fff;
 font-size: 1.4rem
}

.left {
 background: #e74c3c
}

.center {
 background: #3498db
}

.right {
 background: #f39c12
}

@media(min-width: 768px) {
 .child3:not(.center) {
  width: 150px
 }

 .parent {
  display: flex
 }

 .left {
  order: 1
 }

 .center {
  flex: 1;
  order: 2
 }

 .right {
  order: 3
 }
}

.parent2 {
 display: flex;
 justify-content: center;
 align-items: center;
 padding: 4em 0
}

.child4 {
 width: 50%;
 color: #222;
 font-family: "Open Sans", sans-serif;
 font-weight: 400
}

.item {
 display: flex;
 flex-wrap: nowrap;
 margin-bottom: 2em
}

.item-image {
 width: 50%
}

.item-image img {
 width: 100%;
 height: 100%;
 -o-object-fit: cover;
 object-fit: cover
}

.item-text {
 display: flex;
 flex-wrap: wrap;
 flex: 1;
 justify-content: center;
 align-content: center;
 align-items: center;
 padding: 3em;
 background: #eee
}

.item-text p+p {
 margin-top: 1em
}

.item:nth-child(odd) {
 flex-direction: row-reverse
}

.item-list {
 display: flex;
 flex-wrap: wrap;
 justify-content: center;
 align-items: stretch
}

.item-list._space_around {
 justify-content: space-around
}

.item2 {
 width: 49%;
 box-sizing: border-box;
 font-size: 1.4rem;
 margin-bottom: 1em
}

.item2-1 {
 width: 100%;
 box-sizing: border-box;
 margin-bottom: 1em
}

.item2-2 {
 width: 49%;
 box-sizing: border-box;
 padding: 1em;
 background-color: #fff;
 margin-bottom: 1em;
 line-height: 1.5
}

.item2-3 {
 width: 35%;
 box-sizing: border-box;
 font-size: 1.4rem;
 margin-top: 5em;
 margin-bottom: 1em
}

.item-image2 img {
 width: 99%;
 height: auto;
 vertical-align: bottom
}

.item3 {
 display: flex;
 flex-direction: column;
 width: 65%;
 padding: .5em;
 box-sizing: border-box;
 margin-bottom: 1em
}

.item3.type1{
 justify-content: center;
}

.item3 h3 {
 font-size: 1.5rem
}

.item3-0 {
 display: flex;
 flex-direction: column;
 width: 32%;
 margin-bottom: 1em
}

.item-image3 {
 min-height: 0%;
 margin-bottom: 1em
}

.item-image3 img {
 width: 100%;
 height: auto;
 vertical-align: bottom
}

.item-btn {
 margin-top: auto;
 padding-top: .5em
}

.item-btn a {
 display: block;
 padding: 0;
 background: #a9783f;
 border-radius: 4px;
 color: #fff;
 text-decoration: none;
 text-align: center
}

.item4 {
 display: flex;
 width: 49%;
 margin-top: 2em;
 padding: 1em;
 border: 1px solid #ccc;
 box-sizing: border-box
}

.item:nth-child(-n+2) {
 margin-top: 0
}

.item-image4 {
 width: 200px;
 margin-right: 1em
}

.item-image4 img {
 width: 100%;
 height: auto;
 vertical-align: bottom
}

.item-text4 {
 display: flex;
 flex: 1;
 flex-direction: column;
 justify-content: space-between
}

.item-btn4 {
 align-self: flex-end;
 margin-top: 1em
}

.item-btn4 a {
 display: inline-block;
 padding: .3em 2.5em;
 background: #3498db;
 border-radius: 4px;
 color: #fff;
 text-decoration: none;
 text-align: center
}

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

 .item2,
 .item2-2,
 .item2-3,
 .item3,
 .item3-0 {
  width: 100%
 }
}

.flex{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.space-between{
    justify-content: space-between;
}
.flex li img{
    width: 100%;
}
.flex.col3 li{
    width: 32%;
    margin-bottom: 10px;
}
.flex.col4 li{
    width: 24%;
    margin-bottom: 10px;
}


@media screen and (max-width: 800px) {
    .flex.col3 li{
        width: 49%;
    }
}
/*# sourceMappingURL=flexbox.css.map */