@charset "UTF-8";
/* 固定架構CSS_不動 */
@media only screen and (min-width: 960px) {
  html {
    overflow-y: auto;
    overflow-x: hidden; }

  body {
    width: calc(100vw - 15px); } }
#search #main-visual > p {
  font-family: "Hiragino Mincho W3 JIS2004", "Hiragino Mincho Pro", serif;
  margin: 0;
  font-size: 14.8px !important;
  line-height: 1.6em;
  padding: 10px;
  box-sizing: border-box; }
  @media only screen and (max-width: 959px) {
    #search #main-visual > p {
      margin: 0; } }
#search #main-visual img {
  width: 100%;
  height: auto; }

@media screen and (min-width: 960px) {
  #search #main-visual > p {
    margin: 0 !important;
    padding: 0 !important; } }
/* 固定架構CSS_不動_END */
.clearfix::after {
  content: '';
  display: block;
  height: 0;
  clear: both; }

#main-visual {
  width: 100%;
  max-width: 790px;
  margin: 0 auto; }
  #main-visual .pagebtn {
    width: 100%;
    max-width: 205px;
    margin: 20px auto; }
    #main-visual .pagebtn a {
      display: block;
      text-align: center;
      padding: 10px 14px 10px 0;
      font-size: 16px;
      line-height: 1;
      color: #fff;
      background: #3e7144;
      border-radius: 6px;
      border: 1px solid #3e7144;
      position: relative;
      text-decoration: none;
      font-family: "Hiragino Mincho W3 JIS2004", "Hiragino Mincho Pro", serif; }
      #main-visual .pagebtn a::before {
        content: "";
        width: 14px;
        height: 14px;
        background: #fff;
        border-radius: 50%;
        position: absolute;
        top: 50%;
        right: 25px;
        margin-top: -7px; }
      #main-visual .pagebtn a::after {
        content: "";
        width: 5px;
        height: 5px;
        border-bottom: 1px solid #000;
        border-right: 1px solid #000;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        top: 50%;
        right: 29px;
        margin-top: -4px; }
      #main-visual .pagebtn a:hover {
        opacity: 0.6;
        text-decoration: underline; }
  #main-visual .libraryContent .textContent p {
    line-height: 1.6em;
    font-size: 14px;
    margin: 0 !important;
    padding: 0 !important;
    font-family: "Hiragino Mincho W3 JIS2004", "Hiragino Mincho Pro", serif; }

.introBox {
  padding-top: 1%;
  padding-bottom: 1%;
  margin: auto; }
  .introBox .intro_title img {
    max-width: 376px;
    display: block;
    margin: auto;
    margin-top: 20px; }

.libraryContent {
  margin-top: 5%;
  margin-bottom: 5%;
  overflow: inherit;
  font-size: 14px; }
  .libraryContent .item {
    display: flex;
    align-items: flex-end;
    margin-bottom: 10%; }
    .libraryContent .item.item01 .textContent, .libraryContent .item.item03 .textContent {
      padding-left: 4%; }
    .libraryContent .item.item02 {
      flex-direction: row-reverse; }
      .libraryContent .item.item02 .textContent {
        padding-right: 4%; }
  .libraryContent .pic {
    width: 50%; }
  .libraryContent .textContent {
    width: 50%;
    box-sizing: border-box;
    position: relative;
    background-repeat: no-repeat;
    background-size: 53%;
    background-position: bottom right; }
    .libraryContent .textContent .title_img {
      margin-bottom: 20px; }
      .libraryContent .textContent .title_img img {
        max-width: 363px; }
  .libraryContent .border {
    padding: 3% 0;
    display: block;
    width: 100%;
    margin: 6% auto 0;
    background: url(../images/theme/library/border_line.png) no-repeat center;
    background-size: contain; }

#results {
  clear: both;
  padding-top: 10%; }

@media only screen and (max-width: 959px) {
  #search #main-visual > p {
    margin: 0 !important; } }
@media only screen and (max-width: 678px) {
  #main-visual .libraryContent .item {
    width: 100%;
    display: block; }
    #main-visual .libraryContent .item .textContent {
      margin-top: 0;
      width: 100%;
      padding: 0 10px;
      margin-bottom: 3%; }
      #main-visual .libraryContent .item .textContent .title_img {
        margin: 0 auto 3%;
        padding-top: 3%;
        max-width: 363px; }
        #main-visual .libraryContent .item .textContent .title_img img {
          width: 100%; }
    #main-visual .libraryContent .item .pic {
      box-sizing: border-box;
      padding: 0 1%;
      width: 100%; }
  #main-visual .libraryContent .border {
    max-width: 363px; } }
@media only screen and (max-width: 576px) {
  #main-visual .introBox {
    background-size: cover;
    padding-bottom: 5%; }
    #main-visual .introBox .intro_title {
      width: 92%;
      margin: auto; }
      #main-visual .introBox .intro_title img {
        max-width: none; } }
