@charset "UTF-8";

/* =========================================================
　　Fix Layout 2 Column
========================================================= */
#row {
  grid-template-columns: 240px 1fr;
  grid-template-rows: 1fr;
  grid-template-areas:
    "menu main";
  column-gap: 30px;
}
#content {
  grid-area: main;
}
#menu {
  grid-area: menu;
}
@media only screen and (max-width: 960px) {
  #row {
    grid-template-columns: 1fr;
    grid-template-rows: repeat(2, auto);
    grid-template-areas:
    "main"
    "menu";
  }
  #content, #links .piece {
    margin-bottom: 30px;
  }
  #links {
    display: flex;
    flex-wrap: wrap;
  }
  #links .piece {
    flex-basis: calc(50% - 15px);
  }
  #links .piece:nth-child(odd) {
    margin-right: 30px;
  }
}
@media only screen and (max-width: 480px) {
  #links .piece {
    flex-basis: 100%;
  }
  #links .piece:nth-child(odd) {
    margin-right: 0;
  }
}

/* IE11
----------------------------------------------- */
_:lang(x)::-ms-backdrop, #row {
  -ms-grid-columns: 240px 30px 1fr;
  -ms-grid-rows: 1fr;
}
_:lang(x)::-ms-backdrop, #menu {
  -ms-grid-column: 1;
  -ms-grid-row: 1;
}
_:lang(x)::-ms-backdrop, #content {
  -ms-grid-column: 3;
  -ms-grid-row: 1;
}
@media only screen and (max-width: 960px) {
  _:lang(x)::-ms-backdrop, #row {
    -ms-grid-columns: 1fr;
    -ms-grid-rows: auto auto;
  }
  _:lang(x)::-ms-backdrop, #content {
    -ms-grid-column: 1;
    -ms-grid-row: 1;
  }
  _:lang(x)::-ms-backdrop, #menu {
    -ms-grid-column: 1;
    -ms-grid-row: 2;
  }
}