@charset "utf-8";

/** ***************************************************************************
 * タイトル
 * ************************************************************************* */

#main .page-title {
  margin: auto auto 30px;
  display: table;
}

#main .page-title::after {
  content: '';
  width: 100%;
  margin-top: 8px;
  border-bottom: 5px solid #000;
  display: block;
}

#main .page-title img {
  width: auto;
  height: 22px;
  vertical-align: middle;
}

/* :::::::: ブレイクポイント :::::::: */

@media print, screen and (min-width:737px) {

  #main .page-title {
    margin-bottom: 40px;
  }

  #main .page-title img {
    height: 37px;
  }

}

/** ***************************************************************************
 * 紹介文
 * ************************************************************************* */

#lead .catchcopy {
  line-height: 1.4;
  font-size: 1.125em;
  font-weight: 500;
  text-align: center;
}

/* :::::::: ブレイクポイント :::::::: */

@media print, screen and (min-width:737px) {

  #lead .catchcopy {
    font-size: 1.625em;
  }

}

/** ***************************************************************************
 * コンテンツ共用
 * ************************************************************************* */

/** ***************************************************************************
 * タイトル
 */

#main .quality-contents .header {
  margin-bottom: 30px;
}

/* :::::::: ブレイクポイント :::::::: */

@media print, screen and (min-width:737px) {

  #main .quality-contents .header {
    display: flex;
    align-items: flex-end;
  }

}

/** ===========================================================================
 * タイトル
 */

#main .quality-contents .header .title {
  margin-bottom: 20px;
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: center;
  border-top: 4px double #aaa;
  border-bottom: 4px double #aaa;
}

#main .quality-contents .header .title img {
  width: auto;
  height: 16px;
  vertical-align: middle;
}

/* :::::::: ブレイクポイント :::::::: */

@media print, screen and (min-width:737px) {

  #main .quality-contents .header .title {
    margin-bottom: 0;
    padding-top: 30px;
    padding-bottom: 20px;
    padding-right: 40px;
    text-align: initial;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    border-bottom: none;
    display: flex;
    align-items: center;
    flex-grow: 1;
  }

  #main .quality-contents .header .title img {
    height: 21px;
  }

}

/** ===========================================================================
 * ページナビ
 */

#main .quality-contents .header ul.pagenav,
#main .quality-contents .header ul.pagenav li {
  margin: 0;
  padding: 0;
  list-style: none;
}

#main .quality-contents .header ul.pagenav {
  margin-bottom: -5px;
  overflow: hidden;
}

#main .quality-contents .header ul.pagenav li {
  margin-bottom: 5px;
}

#main .quality-contents .header ul.pagenav li a {
  min-width: 0;
  display: block;
}

/* :::::::: ブレイクポイント :::::::: */

@media print, screen and (min-width:737px) {

  #main .quality-contents .header ul.pagenav {
    margin-left: auto;
    margin-right: 0;
    margin-bottom: 0;
    border-bottom: 1px solid #000;
    display: flex;
    justify-content: flex-end;
    flex-grow: 4;
  }

  #main .quality-contents .header ul.pagenav li {
    width: 24%;
    min-width: 165px;
    margin-left: 5px;
  }

}

/** ***************************************************************************
 * 一覧
 */

#main .quality-contents div.list {
  max-width: none;
  margin: auto -5px -20px;
  display: flex;
  flex-wrap: wrap;
  overflow: hidden;
}

#main .quality-contents div.list div.item {
  width: 50%;
  margin-bottom: 20px;
  padding-left: 5px;
  padding-right: 5px;
}

#main .quality-contents div.list div.item.column-2 {
  width: 100%;
}

/* :::::::: ブレイクポイント :::::::: */

@media print, screen and (min-width:737px) {

  #main .quality-contents div.list {
    margin: auto -10px -50px;
  }

  #main .quality-contents div.list div.item {
    width: 25%;
    margin-bottom: 50px;
    padding-left: 10px;
    padding-right: 10px;
  }

  #main .quality-contents div.list div.item.column-2 {
    width: 50%;
  }

}

/** ===========================================================================
 * 画像
 */

#main .quality-contents div.list div.item div.image {
  padding-bottom: 84.39%;
  position: relative;
}

#main .quality-contents div.list div.item.column-2 div.image {
  padding-bottom: 41.24%;
}

#main .quality-contents div.list div.item div.image img {
  width: auto;
  max-height: 100%;
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
}

/* :::::::: ブレイクポイント :::::::: */

@media print, screen and (min-width:737px) {

  #main .quality-contents div.list div.item div.image {
    padding-bottom: 84.23%;
  }

  #main .quality-contents div.list div.item.column-2 div.image {
    padding-bottom: 39.45%;
  }

}

/** ===========================================================================
 * 内容
 */

#main .quality-contents div.list div.item dl.content,
#main .quality-contents div.list div.item dl.content > * {
  margin: 0;
  padding: 0;
}

#main .quality-contents div.list div.item dl.content {
  font-size: 0.875em;
}

#main .quality-contents div.list div.item dl.content dt {
  padding: 0.75em 0;
  font-weight: 500;
}

#main .quality-contents div.list div.item dl.content dd {
  font-size: 0.875em;
}

#main .quality-contents div.list div.item dl.content dd::after {
  content: '.';
  display: block;
  line-height: 0;
  clear: both;
  visibility: hidden;
}

/** ***************************************************************************
 * 注釈
 */

#main .quality-contents > .note {
  margin-top: 2em !important;
}
