/* Tagtoru CSS v2 20161110 */

@import url('https://maxcdn.bootstrapcdn.com/font-awesome/4.5.0/css/font-awesome.min.css');

.tgtr {
  position: relative;
  width: 100%;
}

.tgtr * {
  box-sizing: border-box;
}

.tgtrbox {
  width: auto;
  height: auto;
  transition: all .2s;
  word-break: break-all;
}

.tgtrbox-photo_image,
.tgtrbox-user_iconImg {
  max-width: 100%;
  width: auto;
  height: auto;
}

.tgtr[data-tgtr-cols] .tgtrbox {
  width: 100%;
}

.tgtr[data-tgtr-cols='2'] .tgtrbox {
  width: calc(100% / 2);
}

.tgtr[data-tgtr-cols='3'] .tgtrbox {
  width: calc(100% / 3);
}

.tgtr[data-tgtr-cols='4'] .tgtrbox {
  width: calc(100% / 4);
}

.tgtr[data-tgtr-cols='5'] .tgtrbox {
  width: calc(100% / 5);
}

.tgtr[data-tgtr-cols='6'] .tgtrbox {
  width: calc(100% / 6);
}

.tgtr[data-tgtr-cols='7'] .tgtrbox {
  width: calc(100% / 7);
}

.tgtr[data-tgtr-cols='8'] .tgtrbox {
  width: calc(100% / 8);
}

.tgtr[data-tgtr-cols='9'] .tgtrbox {
  width: calc(100% / 9);
}

.tgtr[data-tgtr-cols='10'] .tgtrbox {
  width: calc(100% / 10);
}

.tgtr[data-tgtr-cols='11'] .tgtrbox {
  width: calc(100% / 11);
}

.tgtr[data-tgtr-cols='12'] .tgtrbox {
  width: calc(100% / 12);
}

@media screen and (max-width: 768px) {
  .tgtr[data-tgtr-cols-sp] .tgtrbox {
    width: 100%;
  }

  .tgtr[data-tgtr-cols-sp='2'] .tgtrbox {
    width: calc(100% / 2);
  }

  .tgtr[data-tgtr-cols-sp='3'] .tgtrbox {
    width: calc(100% / 3);
  }

  .tgtr[data-tgtr-cols-sp='4'] .tgtrbox {
    width: calc(100% / 4);
  }
}

.tgtrbox-inner {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  margin: 0;
}

.tgtrbox-user {
  flex-direction: row;
  align-items: center;
  align-content: center;
  margin: 0 0 10px;
  /*order: 1;*/
}

.tgtrbox-user_icon {
  flex: 1 0 15%;
  margin: 0;
  /*order: 1;*/
}

.tgtrbox-user_name {
  flex: 2 0 68.5%;
  margin: 0 3.25%;
  /*order: 1;*/
}

.tgtrbox-user_snsIcon {
  flex: 1 0 10%;
  font-size: 100%;
  /*order: 1;*/
}

.tgtrbox-post {
  /*order: 2;*/
}

.tgtrbox-post_text {
  margin: 0;
}

.tgtrbox-post_date {
  margin: 10px 0;
  flex-wrap: wrap;
}

@media screen and (max-width: 670px) {
  .tgtrbox-user {
    font-size: 80%;
  }

  .tgtrbox-user_snsIcon {
    font-size: 80%;
  }

  .tgtrbox-post_text {
    font-size: 80%;
  }

  .tgtrbox-post_date {
    font-size: 80%;
  }
}

.tgtrbox-icons {
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
  font-size: 140%;
  margin: 30px 5.25% 1rem;
  /*order: 3;*/
}

@media screen and (max-width: 670px) {
  .tgtrbox-icons {
    font-size: 120%;
    margin: 1rem 3.25%;
  }
}


/*--------------------
- tile
--------------------*/
.tgtr-tile {
  position: relative;
  display: flex;
  flex-wrap: wrap;
}

.tgtr-tile .tgtrbox {
  overflow: hidden;
  color: #fff;
  position: relative;
  height: auto;
  cursor: pointer;
  box-shadow: inset 0 0 1px rgba(0, 0, 0 , .2);
}

.tgtr-tile .tgtrbox::before {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  padding: 100% 0 0;
  top: 0;
}

.tgtr-tile .tgtrbox-photo {
  display: block;
  position: relative;
  z-index: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  margin: 0;
  top: 0;
}

.tgtr-tile .tgtrbox-photo::before {
  content: '';
  position: static;
  display: block;
  padding-top: 100%;
}

.tgtr-tile .tgtrbox-snslink {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  overflow: hidden;
  text-align: center;
  box-shadow: inset 0 0 1px rgba(0,0,0,.3);
  pointer-events: none;
}

.tgtr-tile .tgtrbox-photo_image {
  position: relative;
  min-height: inherit;
  vertical-align: middle;
  top: 50%;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  transform: translateY(-50%);
}

.tgtr-tile .tgtrbox:hover .tgtrbox-description {
  margin: -100% 0 0;
}

.tgtr-tile .tgtrbox-description {
  position: absolute;
  z-index: 1;
  margin: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  transition: all .5s;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  align-content: flex-start;
  padding: 10px;
}

@media screen and (max-width: 768px) {
  .tgtr-tile .tgtrbox-description {
    padding: 4.2%;
  }
}

.tgtr-tile a {
  color: #fff;
}
.tgtr-tile a:hover {
  opacity: .5;
}



/*--------------------
- grid
--------------------*/
.tgtr-grid {
  position: relative;
  display: flex;
  flex-wrap: wrap;
}

.tgtr-grid .tgtrbox {
  background: #fff;
  box-shadow: 0 0 1px rgba(0, 0, 0, .5);
}




/*--------------------
- styles
--------------------*/
.tgtr-grid__01 .tgtrbox {
  background: #eee;
  box-shadow: none;
  font-size: .67rem;
  padding: 5px;
}

.tgtr-grid__01 .tgtrbox-photo {
  margin: 0;
}

.tgtr-grid__01 .tgtrbox-photo_image {
  border-radius: 10px;
}

.tgtr-grid__01 .tgtrbox-user {
  margin: 10px 5px;
}

.tgtr-grid__01 .tgtrbox-user_name a {
  color: #444;
  text-decoration: none;
}

.tgtr-grid__01 .tgtrbox-post_text a {
  color: #2692ff;
}

.tgtr-grid__01 .tgtrbox-icons {
  border-top: solid 1px #dadada;
  margin: 10px 0;
  padding: 10px 5.25% 0;
  font-size: 1.2rem;
}

.tgtr-grid__01 .tgtrbox-icons a {
  color: #999;
  transition: all .5s;
}

.tgtr-grid__01 .tgtrbox-icons a:hover {
  color: #bbb;
}

.tgtr-grid__01 + .tgtr-more {
  text-align: center;
  font-size: .725rem;
  margin: 20px 0 0;
}

.tgtr-grid__01 + .tgtr-more a {
  display: inline-block;
  text-align: center;
  padding: 5px 10px;
  text-decoration: none;
  background: #ccc;
  color: #666;
}
