@charset "UTF-8";

p,div {
  line-height: 2em;
}

section {
  margin-bottom: 60px;
}

h1 {
  border-bottom: 3px solid #FF0000;
  padding: 0 0 10px 10px;
  margin-bottom: 30px;
}


/* PC用 */
@media screen and (min-width: 768px) , print {
  #detail-flex {
    display: flex;
    justify-content: start;
    width: 100%;
    padding: 10px;
  }
  #detail-flex > #item-1 , #detail-flex > #item-2, #detail-flex > #item-3 {
    display: table;
    width: calc(26% - 10px);
    margin-right: 10px;
    background: rgba(255,255,255,0.9);
    border-radius: 10px;
    opacity: 0.8;
    position: relative;
  }
  #detail-flex > #item-1 > .item-title , #detail-flex > #item-2 > .item-title , #detail-flex > #item-3 > .item-title {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 1.4em;
    font-weight: bold;
    text-shadow: #fff 2px 0, #fff -2px 0, #fff 0 -2px, #fff 0 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px, rgba(0, 0, 0, .5) 3px 3px 3px;
    color: #003f7e;
  }
  #detail-flex > #item-1 > .item-box , #detail-flex > #item-2 > .item-box , #detail-flex > #item-3 > .item-box {
    padding: 0 10px 5px;
  }
  #detail-flex > #item-2 > #item-x , #detail-flex > #item-3 > #item-x {
    position: absolute;
    top: 40%;
    left: -20px;
    z-index: 10;
    font-size: 2.4em;
    text-shadow: #fff 2px 0, #fff -2px 0, #fff 0 -2px, #fff 0 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px, rgba(0, 0, 0, .5) 3px 3px 3px;
    color: #003f7e;
  }
  #detail-flex > #detail_main_photo-flex {
    width: 200px;
  }
  
  .composition {
    display: flex;
    justify-content: start;
    width: calc(100% - 20px - 3px);
    padding: 10px;
    border: 2px solid #666;
    margin-bottom: 20px;
  }
  .composition > img:nth-child(1) {
    margin-right: 50px;
  }
  .composition-title {
    text-align: center;
    background-color: #666;
    font-size: 1.4em;
    padding: 12px 10px 8px;
    color: #FFF;
    font-weight: bold;
  }
  
  /* 見出しリンク */
  .page-link {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: calc(100% - 10px);
    margin: 0 0 40px;
    padding: 5px;
  }
  .page-link > a {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: calc(33% - 20px - 10px);
    height: 4em;
    text-align: center;
    padding: 5px;
    border: 1px solid #999999;
    border-radius: 10px;
    background-color: #999999;
    color: #FFF;
    margin: 10px;
  }
  .page-link > a:hover {
    background-color: #ddd;
    color: #000;
  }
  .page-link > a.emphasis {
    border: 1px solid #999999;
    background-color: #1987e5;
    color: #FFF;
  }
  .page-link > a.emphasis:hover {
    background-color: #e7eef7;
    color: #00427a;
  }
  .page-link > a > span {
    display: block;
    width: 100%;
    font-size: 0.8em;
  }
}
 
/* 小さい画面用 */
@media screen and (max-width: 767px) {
  #detail-flex {
    width: calc(100% - 10px);
    padding: 10px;
  }
  #detail-flex > #item-1 , #detail-flex > #item-2 , #detail-flex > #item-3 {
    display: table;
    width: calc(100% - 10px);
    margin-bottom: 30px;
    background: rgba(255,255,255,0.9);
    padding: 10px 0;
    border-radius: 10px;
    opacity: 0.8;
    position: relative;
  }
  #detail-flex > #item-1 > .item-title , #detail-flex > #item-2 > .item-title , #detail-flex > #item-3 > .item-title {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    font-size: 1.4em;
    font-weight: bold;
    text-shadow: #fff 2px 0, #fff -2px 0, #fff 0 -2px, #fff 0 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px, rgba(0, 0, 0, .5) 3px 3px 3px;
    color: #003f7e;
  }
  #detail-flex > #item-1 > .item-box , #detail-flex > #item-2 > .item-box , #detail-flex > #item-3 > .item-box {
    padding: 0 10px 5px;
  }
  #detail-flex > #item-2 > #item-x , #detail-flex > #item-3 > #item-x {
    position: absolute;
    top: -28px;
    left: 45%;
    z-index: 10;
    font-size: 2.4em;
    text-shadow: #fff 2px 0, #fff -2px 0, #fff 0 -2px, #fff 0 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px, rgba(0, 0, 0, .5) 3px 3px 3px;
    color: #003f7e;
  }
  #detail-flex > #detail_main_photo-flex {
    text-align: center;
  }
  
  .composition {
    width: calc(100% - 20px - 3px);
    padding: 10px;
    border: 2px solid #666;
    margin-bottom: 20px;
    text-align: center;
  }
  .composition-title {
    text-align: center;
    background-color: #666;
    font-size: 1.4em;
    padding: 12px 10px 8px;
    color: #FFF;
    font-weight: bold;
  }
  
  /* 見出しリンク */
  .page-link {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: calc(100% - 40px);
    margin: 0 20px 40px;
    padding: 5px;
  }
  .page-link > a {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    width: calc(100% - 20px);
    height: 4em;
    text-align: center;
    padding: 5px;
    border: 1px solid #999999;
    border-radius: 10px;
    background-color: #999999;
    color: #FFF;
    margin-right: 5px;
    margin-bottom: 5px;
  }
  .page-link > a:hover {
    background-color: #ddd;
    color: #000;
  }
  .page-link > a.emphasis {
    border: 1px solid #999999;
    background-color: #1987e5;
    color: #FFF;
  }
  .page-link > a.emphasis:hover {
    background-color: #e7eef7;
    color: #00427a;
  }
  .page-link > a > span {
    display: block;
    width: 100%;
    font-size: 0.8em;
  }
}




