@charset "UTF-8";
/*
Theme Name: houjin-tmu
Theme URI: https://houjin-tmu.ac.jp/
Author: houjin-tmu
Author URI: houjin-tmu
Description: houjin-tmu
*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  font-size: 100%;
  vertical-align: baseline;
  outline: 0;
}

body {
  line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  background: transparent;
  font-size: 100%;
  vertical-align: baseline;
}
a[href*=pdf], a[href*=doc], a[href*=xls], a[href*=ppt] {
  display: inline-block;
  position: relative;
}
a[href*=pdf]::after, a[href*=doc]::after, a[href*=xls]::after, a[href*=ppt]::after {
  display: inline-block;
  overflow: hidden;
  width: 20px;
  height: 14px;
  margin-bottom: -4px;
  text-indent: 100%;
  white-space: nowrap;
  content: "";
}
a[href*=pdf]::after {
  background: url("img/pdf.svg") no-repeat center;
  background-size: 10px 16px;
}
a[href*=doc]::after {
  background: url("img/word.svg") no-repeat center;
  background-size: 10px 16px;
}
a[href*=xls]::after {
  background: url("img/excel.svg") no-repeat center;
  background-size: 10px 16px;
}
a[href*=ppt]::after {
  background: url("img/ppt.svg") no-repeat center;
  background-size: 10px 16px;
}

del {
  text-decoration: line-through;
}

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

input, select {
  vertical-align: middle;
}

/* common
-------------------- */
body {
  min-width: 1080px;
  color: #333;
  font-family: "メイリオ", "Meiryo", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "Yu Gothic", "ＭＳ Ｐゴシック", Roboto, "Lucida Grande", "Lucida Sans Unicode", Helvetica, Arial, Verdana, "Osaka", sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
}

a {
  color: #333;
  text-decoration: none;
}

img {
  width: 100%;
}

img[src$=".svg"] {
  width: 100%;
}

.sp {
  display: none;
}

.body_inner {
  position: relative;
  overflow: hidden;
}

.wrap {
  max-width: 1000px;
  margin: 0 auto;
  padding-right: 20px;
  padding-left: 20px;
}
@media (max-width: 768px) {
  .wrap {
    padding-right: 5%;
    padding-left: 5%;
  }
}

.flex {
  display: flex;
  justify-content: space-between;
}

.tal {
  text-align: left;
}

.ht5 {
  height: 5px;
}

.ht10 {
  height: 10px;
}

.ht15 {
  height: 15px;
}

.ht20 {
  height: 20px;
}

@media screen and (max-width: 768px) {
  body {
    min-width: 0;
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  .flex {
    display: block;
  }
}
/* pagenaiton
-------------------- */
.main_contents .contents .wp-pagenavi {
  padding: 15px 0 0;
  line-height: 22px;
}
.main_contents .contents .wp-pagenavi .pages {
  display: none;
}
.main_contents .contents .wp-pagenavi .extend {
  display: inline-block;
  min-width: 15px;
  margin-right: 5px;
  padding: 5px 1px 3px;
  border: none;
  text-align: center;
}
.main_contents .contents .wp-pagenavi a {
  display: inline-block;
  min-width: 15px;
  margin-right: 5px;
  padding: 5px 5px 3px;
  border: 1px solid #204499;
  background: #204499;
  color: #fff;
  text-align: center;
  transition: 0.3s;
}
.main_contents .contents .wp-pagenavi a:hover {
  background: #fff;
  color: #204499;
  text-decoration: none;
}
.main_contents .contents .wp-pagenavi .current {
  display: inline-block;
  min-width: 15px;
  margin-right: 5px;
  padding: 5px 5px 3px;
  border: 1px solid #204499;
  background: #fff;
  color: #204499;
  text-align: center;
  transition: 0.3s;
}
.main_contents .contents .wp-pagenavi span.current, .main_contents .contents .wp-pagenavi .page.current {
  background: #fff;
  color: #204499;
}
.main_contents .contents .wp-pagenavi span.prev, .main_contents .contents .wp-pagenavi span.next, .main_contents .contents .wp-pagenavi .page.prev, .main_contents .contents .wp-pagenavi .page.next {
  border: none;
  transition: 0.3s;
}
.main_contents .contents .wp-pagenavi span.prev:hover, .main_contents .contents .wp-pagenavi span.next:hover, .main_contents .contents .wp-pagenavi .page.prev:hover, .main_contents .contents .wp-pagenavi .page.next:hover {
  border-top: 1px solid #204499;
  border-bottom: 1px solid #204499;
}

/* header
-------------------- */
header .wrap {
  position: relative;
}
header h1 {
  width: 260px;
  padding: 28px 0 26px;
}
header .submenu {
  font-size: 13px;
}
header .up {
  display: flex;
}
header .up li {
  padding-top: 10px;
}
header .up li.contact a {
  margin-right: 10px;
}
header .up li a {
  display: inline-block;
  position: relative;
  margin-right: 20px;
  padding: 4px 10px 4px 0;
  transition: 0.3s;
}
header .up li a::after {
  position: absolute;
  top: 50%;
  left: -13px;
  width: 7px;
  height: 11px;
  margin-top: -7px;
  background: url(img/arw_blk.svg) no-repeat;
  background-size: contain;
  content: "";
  transition: 0.3s;
}
header .up li a:hover {
  opacity: 0.65;
}
header .up li a:hover::after {
  left: -10px;
}
header .up .lang {
  padding: 0 0 0 1px;
}
header .up .lang a {
  display: inline-block;
  margin-right: 0;
  padding: 9px 13px;
  background: #444;
  color: #fff;
}
header .up .lang a::after {
  display: none;
}
header .btm {
  display: flex;
  justify-content: space-between;
  padding: 10px 0 0;
}
header .btm .fontsize {
  padding: 2px 0 0 40px;
}
header .btm .fontsize a {
  padding: 7px 10px 5px;
  border-radius: 5px;
}
header .btm .fontsize .standard {
  display: inline-block;
  margin-right: 8px;
  background: #333;
  color: #fff;
}
header .btm .fontsize .large {
  display: inline-block;
  background: #f0f0f0;
  transition: 0.3s;
}
header .btm .fontsize .large:hover {
  background: #888;
  color: #fff;
}
header _:-ms-lang(x), header .gsearch {
  position: absolute;
  top: 38px;
  right: 19px;
  width: 200px;
}
header .gsearch .cse .gsc-control-cse, header .gsearch .gsc-control-cse {
  padding: 0;
}
header .gsearch .gsc-wrapper {
  text-align: left;
}
header .gsearch .gsc-search-button-v2, header .gsearch .gsc-search-button-v2:hover, header .gsearch .gsc-search-button-v2:focus {
  border-color: transparent;
  background-color: #333;
}
header .gsearch .cse .gsc-search-button-v2, header .gsearch .gsc-search-button-v2 {
  padding: 6px 13px;
}
header .gsearch input.gsc-input {
  width: 115px !important;
  padding: 3px 0 !important;
  font-size: 13px;
}
header .gsearch input.gsc-input::-moz-placeholder {
  font-size: 11px;
}
header .gsearch input.gsc-input::placeholder {
  font-size: 11px;
}
header nav {
  background: linear-gradient(to bottom, #f7f7f7, #e4e4e4);
  font-weight: bold;
  font-size: 13px;
}
header nav .main {
  display: flex;
  justify-content: space-between;
}
header nav .main > li {
  flex-basis: 16.6666666667%;
  position: relative;
}
header nav .main > li:hover .sub {
  display: inline-block;
}
header nav .main > li > a {
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 54px;
  color: #444;
  line-height: 130%;
  transition: 0.2s;
}
header nav .main > li > a:hover {
  background: rgba(0, 0, 0, 0.05);
}
header nav .main > li .sub {
  display: none;
  position: absolute;
  top: 53px;
  left: 0;
  z-index: 10;
  width: 200px;
  padding: 15px 15px 15px 35px;
  background: linear-gradient(to bottom, #f7f7f7, #e4e4e4);
  text-align: left;
}
header nav .main > li .sub a {
  display: inline-block;
  position: relative;
  padding: 8px 0 8px;
  font-weight: normal;
  transition: 0.3s;
}
header nav .main > li .sub a::before {
  position: absolute;
  top: 50%;
  left: -13px;
  width: 7px;
  height: 11px;
  margin-top: -7px;
  background: url(img/arw_blk.svg) no-repeat;
  background-size: contain;
  content: "";
  transition: 0.3s;
}
header nav .main > li .sub a:hover {
  opacity: 0.7;
}
header nav .main > li .sub a:hover::before {
  left: -10px;
}
header nav .main > li .sub a .size {
  padding-left: 3px;
  font-size: 10px;
}
header .search {
  display: none;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {
  _::-webkit-full-page-media, _:future, :root .gsearch {
    width: 193px;
  }
}
#nav-humbg input {
  display: none;
}

.en #nav-humbg, .cn #nav-humbg {
  display: none;
}

.en header h1 {
  width: 280px;
  padding: 21px 0 15px;
}

@media screen and (max-width: 768px) {
  header h1 {
    width: 190px;
    padding: 17px 0 15px;
  }
  header .btm {
    display: none;
  }
  header .sitemap {
    display: none;
  }
  header .up .access span, header .up .contact span {
    display: none;
  }
  header .up .access a {
    display: block;
    color: #fff;
  }
  header .up .access a::after {
    top: 2px;
    left: 0;
    width: 29px;
    height: 33px;
    background: url(img/pin.svg) no-repeat;
    background-size: contain;
  }
  header .up .access a:hover::after {
    left: 0;
  }
  header .up .contact a {
    display: block;
    margin-left: 20px;
    color: #fff;
  }
  header .up .contact a::after {
    top: 3px;
    left: 0;
    width: 43px;
    height: 33px;
    background: url(img/info.svg) no-repeat;
    background-size: contain;
  }
  header .up .contact a:hover::after {
    left: 0;
  }
  header .up .lang {
    margin-top: 7px;
    margin-bottom: 7px;
    font-size: 10px;
  }
  header .up .lang a {
    padding: 9px 9px;
  }
  header .up .en {
    margin-left: auto;
  }
  header .submenu {
    border-top: 1px solid #f0f0f0;
    font-size: 13px;
  }
  #nav-humbg {
    display: block;
    position: relative;
    text-align: left;
  }
  .nav-unshown {
    display: none;
  }
  #nav-open {
    display: inline-block;
    position: absolute;
    top: -80px;
    right: 15px;
    z-index: 20;
    width: 25px;
    height: 40px;
    vertical-align: middle;
    cursor: pointer;
    transition: 0.3s;
  }
  #nav-open span.bd, #nav-open span.bd::before, #nav-open span.bd::after {
    display: block;
    position: absolute;
    width: 25px;
    height: 1px;
    border-radius: 3px;
    background: #222;
    content: "";
    cursor: pointer;
    transition: 0.4s;
  }
  #nav-open span.bd::before {
    bottom: -8px;
  }
  #nav-open span.bd::after {
    bottom: -16px;
  }
  #nav-open span.txt {
    position: absolute;
    bottom: 7px;
    left: -2px;
    transform: scale(0.85);
    color: #333;
    font-size: 10px;
    text-align: center;
  }
  #nav-open span.txt::before {
    content: "MENU";
  }
  #nav-input:checked ~ #nav-open span.bd {
    transform: translateY(20px) rotate(-135deg);
  }
  #nav-input:checked ~ #nav-open span.bd::before {
    opacity: 0;
  }
  #nav-input:checked ~ #nav-open span.bd::after {
    bottom: -19px;
    transform: translateY(-18px) rotate(-90deg);
  }
  #nav-input:checked ~ #nav-open span.txt {
    bottom: -17px;
    padding-left: 3px;
  }
  #nav-input:checked ~ #nav-open span.txt::before {
    content: "close";
  }
  #nav-close {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0;
    transition: 0.3s ease-in-out;
  }
  #nav-content {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 9999;
    transform: translateX(105%);
    overflow: auto;
    width: 80%;
    height: 100%;
    background: rgba(255, 255, 255, 0.96);
    transition: 0.3s ease-in-out;
  }
  #nav-content .wrap {
    max-width: 900px;
    margin: 0 auto;
    padding-top: 9vh;
    padding-right: 30px;
    padding-left: 30px;
  }
  #nav-input:checked ~ #nav-open {
    display: inline-block;
    z-index: 999999999;
    width: 30px;
    height: 30px;
    vertical-align: middle;
    cursor: pointer;
  }
  #nav-input:checked ~ #nav-close {
    display: block;
    opacity: 0.3;
  }
  #nav-input:checked ~ #nav-content {
    transform: translateX(0%);
    box-shadow: 6px 0 25px rgba(0, 0, 0, 0.15);
  }
  header .search {
    display: block;
  }
  #srch-humbg {
    display: block;
    position: relative;
    text-align: left;
  }
  .srch-unshown {
    display: none;
  }
  #srch-open {
    display: inline-block;
    position: absolute;
    top: 12px;
    right: 68px;
    z-index: 20;
    width: 25px;
    height: 40px;
    vertical-align: middle;
    cursor: pointer;
    transition: 0.4s;
  }
  #srch-open span.txt {
    position: absolute;
    bottom: 7px;
    left: -2px;
    transform: scale(0.85);
    color: #333;
    font-size: 10px;
    text-align: center;
  }
  #srch-open span.txt::before {
    content: "SEARCH";
  }
  #srch-open img {
    width: 23px;
    margin-top: -2px;
    margin-left: 7px;
  }
  #srch-input:checked ~ #srch-open {
    top: 33px;
    right: 22px;
  }
  #srch-input:checked ~ #srch-open img {
    display: none;
  }
  #srch-input:checked ~ #srch-open span.txt {
    bottom: -17px;
    padding-left: 3px;
  }
  #srch-input:checked ~ #srch-open span.txt::before {
    content: "";
  }
  #srch-input:checked ~ #srch-open span.bd, #srch-input:checked ~ #srch-open span.bd::after {
    display: block;
    position: absolute;
    width: 25px;
    height: 1px;
    border-radius: 3px;
    background: #fff;
    content: "";
    cursor: pointer;
    transition: 0.4s;
  }
  #srch-input:checked ~ #srch-open span.bd {
    transform: translateY(20px) rotate(-135deg);
  }
  #srch-input:checked ~ #srch-open span.bd::after {
    bottom: -19px;
    transform: translateY(-18px) rotate(-90deg);
  }
  #srch-close {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0;
    transition: 0.3s ease-in-out;
  }
  .srch_area {
    position: fixed;
    top: 0;
    right: 0;
    z-index: 9999;
    transform: translateX(-105%);
    overflow: auto;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.56);
    transition: 0.3s ease-in-out;
  }
  .srch_area .ggl {
    padding: 90px 30px;
  }
  .srch_area .ggl input.gsc-input {
    padding: 3px 0 !important;
    font-size: 13px;
  }
  .srch_area .ggl input.gsc-input::-moz-placeholder {
    font-size: 11px;
  }
  .srch_area .ggl input.gsc-input::placeholder {
    font-size: 11px;
  }
  #srch-input:checked ~ #srch-open {
    display: inline-block;
    z-index: 999999999;
    width: 30px;
    height: 30px;
    vertical-align: middle;
    cursor: pointer;
  }
  #srch-input:checked ~ #srch-close {
    display: block;
    opacity: 0.3;
  }
  #srch-input:checked ~ .srch_area {
    transform: translateX(0%);
    box-shadow: 6px 0 25px rgba(0, 0, 0, 0.15);
  }
  header nav {
    background: none;
  }
  header nav .main {
    display: block;
  }
  header nav .main li:hover .sub {
    display: none;
  }
  .en header h1 {
    width: 199px;
    padding: 13px 0 6px;
  }
  .en #nav-humbg {
    display: block;
  }
}
.slides {
  overflow: hidden;
  width: 100%;
  min-width: 1080px;
  height: 263px;
  background-color: rgba(0, 0, 0, 0.5);
}
@media (max-width: 768px) {
  .slides {
    width: 100%;
    min-width: 0;
    height: auto;
  }
}

.slider {
  opacity: 0;
  transition: 0.5s;
}
.slider.slick-initialized {
  opacity: 1;
}
.slider > .item:not(:first-child) {
  display: none;
}

.slick-list {
  padding: 0 calc((100vw - 1080px) / 2) !important;
}
.slick-list::before, .slick-list::after {
  position: absolute;
  top: 0;
  z-index: 1;
  width: calc((100vw - 1080px) / 2);
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  content: "";
}
.slick-list::before {
  left: 0;
}
.slick-list::after {
  right: 0;
}

.slick-slide {
  line-height: 0;
}

/* topmain
-------------------- */
.topmain {
  padding: 30px 0;
  background: #f0f0f0;
}
.topmain .wrap {
  display: flex;
  justify-content: space-between;
}
.topmain .topics, .topmain .release {
  flex-basis: 36%;
}
.topmain .topics .title, .topmain .release .title {
  display: flex;
  justify-content: space-between;
  margin-bottom: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.05);
  border-right: 1px solid rgba(0, 0, 0, 0.05);
  border-left: 1px solid rgba(0, 0, 0, 0.05);
  background: linear-gradient(to bottom, #f7f7f7, #e4e4e4);
}
.topmain .topics h2, .topmain .release h2 {
  padding: 12px 15px 9px;
  font-size: 14px;
  text-align: left;
}
.topmain .topics .ico, .topmain .release .ico {
  display: flex;
  background: #272727;
  font-size: 11px;
}
.topmain .topics .ico a, .topmain .release .ico a {
  display: block;
  color: #fff;
  transition: 0.3s;
}
.topmain .topics .ico a:hover, .topmain .release .ico a:hover {
  background: rgba(255, 255, 255, 0.15);
}
.topmain .topics .ico .list, .topmain .release .ico .list {
  position: relative;
  border-right: 1px solid #acb3c5;
}
.topmain .topics .ico .list a, .topmain .release .ico .list a {
  padding: 12px 10px 12px 36px;
}
.topmain .topics .ico .list a::before, .topmain .release .ico .list a::before {
  position: absolute;
  top: 50%;
  left: 10px;
  width: 16px;
  height: 16px;
  margin-top: -8px;
  background: url(img/list.svg) no-repeat;
  background-size: contain;
  content: "";
}
.topmain .topics .ico .rss a, .topmain .release .ico .rss a {
  padding: 9px 10px 8px;
}
.topmain .topics .ico .rss img, .topmain .release .ico .rss img {
  width: 16px;
  opacity: 0.8;
}
.topmain .topics ul, .topmain .release ul {
  text-align: left;
}
.topmain .topics li, .topmain .release li {
  margin-bottom: 12px;
  padding: 10px 15px 8px;
  border-left: 3px solid #3a5c9c;
  background: #fff;
  font-weight: bold;
  font-size: 13px;
  line-height: 18px;
}
.topmain .topics li a, .topmain .release li a {
  color: #204499;
  transition: 0.3s;
}
.topmain .topics li a:hover, .topmain .release li a:hover {
  margin-left: 2px;
  opacity: 0.75;
}
.topmain .topics li .size, .topmain .release li .size {
  padding-left: 3px;
  font-size: 10px;
}
.topmain .topics ul.fixed, .topmain .release ul.fixed {
  margin-bottom: 12px;
}
.topmain .topics ul.fixed li, .topmain .release ul.fixed li {
  margin-bottom: 0;
  border-bottom: 1px solid #bac0ce;
}
.topmain .topics ul.fixed li:last-child, .topmain .release ul.fixed li:last-child {
  border-bottom: none;
}
.topmain .topics ul.fixed li.important_list, .topmain .release ul.fixed li.important_list {
  padding: 21px 15px 18px;
  font-size: 14px;
}
@media (max-width: 768px) {
  .topmain .topics ul.fixed li.important_list, .topmain .release ul.fixed li.important_list {
    font-size: 13px;
  }
}
.topmain .topics ul.fixed li.important_list a, .topmain .release ul.fixed li.important_list a {
  display: block;
  margin-top: 6px;
}
.topmain .topics ul.fixed li .recruit, .topmain .topics ul.fixed li .agreement, .topmain .topics ul.fixed li .news, .topmain .topics ul.fixed li .important, .topmain .release ul.fixed li .recruit, .topmain .release ul.fixed li .agreement, .topmain .release ul.fixed li .news, .topmain .release ul.fixed li .important {
  margin-right: 10px;
  padding: 1px 5px 0;
  color: #fff;
  font-size: 12px;
}
.topmain .topics ul.fixed li .recruit, .topmain .release ul.fixed li .recruit {
  background: #c77f0d;
}
.topmain .topics ul.fixed li .agreement, .topmain .release ul.fixed li .agreement {
  background: #4f8a0c;
}
.topmain .topics ul.fixed li .news, .topmain .release ul.fixed li .news {
  background: #5d388a;
}
.topmain .topics ul.fixed li .important, .topmain .release ul.fixed li .important {
  background: #ca0000;
  font-size: 13px;
}

.en .topmain .img {
  line-height: 0;
}
.en .topmain .con {
  padding: 10px 20px;
  background: #fff;
  text-align: left;
}
.en .topmain .con ul {
  padding-left: 15px;
  line-height: 22px;
}
.en .topmain .con ul.link a {
  display: inline-block;
  position: relative;
  padding: 5px 0 3px;
  color: #204499;
  transition: 0.3s;
}
.en .topmain .con ul.link a::before {
  position: absolute;
  top: 50%;
  left: -13px;
  width: 7px;
  height: 11px;
  margin-top: -5px;
  background: url(img/arw_blk.svg) no-repeat;
  background-size: contain;
  content: "";
  transition: 0.3s;
}
.en .topmain .con ul.link a:hover {
  opacity: 0.7;
}
.en .topmain .con ul.link a:hover::before {
  left: -10px;
}
.en .topmain .con ul.link a .size {
  padding-left: 3px;
  font-size: 10px;
}
.en .topmain .con ul.link .summery_con {
  padding-bottom: 6px;
  font-size: 12px;
  line-height: 18px;
}
.en .topmain .con ul.square li {
  position: relative;
  margin-bottom: 6px;
}
.en .topmain .con ul.square li::before {
  position: absolute;
  top: 0;
  left: -16px;
  color: #325194;
  content: "■";
}
.en .topmain .con ul.disc li {
  position: relative;
  margin-bottom: 6px;
}
.en .topmain .con ul.disc li::before {
  position: absolute;
  top: 0;
  left: -16px;
  color: #325194;
  content: "・";
}
.en .topmain .con ul .exp {
  display: block;
  margin-top: -4px;
  padding-bottom: 5px;
  line-height: 20px;
}
.en .topmain .topics, .en .topmain .release {
  margin-bottom: 20px;
}
.en .topmain .topics li, .en .topmain .release li {
  margin-bottom: 0;
  padding: 0;
  border-left: 0;
}

@media screen and (max-width: 768px) {
  .topmain .wrap {
    display: block;
  }
}
/* /topmain*/
/* sidebar
-------------------- */
.sidebar .bnrs a {
  display: block;
  margin-bottom: 6px;
  border: 1px solid #ccc;
  line-height: 0;
  transition: 0.3s;
}
.sidebar .bnrs a img {
  width: 217px;
}
.sidebar .bnrs a:hover {
  opacity: 0.7;
}
.sidebar .bnrs .covid-19-bnr a {
  border: none;
}
.sidebar .cate {
  width: 217px;
  margin-bottom: 20px;
  text-align: left;
}
.sidebar .cate .topcate a {
  display: block;
  padding: 14px 20px 12px;
  background: #333;
  color: #fff;
  font-size: 14px;
}
.sidebar .cate ul li a {
  display: block;
  position: relative;
  padding: 11px 20px 10px 35px;
  font-size: 12px;
  line-height: 145%;
  transition: 0.2s;
}
.sidebar .cate ul li a::before {
  position: absolute;
  top: 50%;
  left: 15px;
  width: 7px;
  height: 11px;
  margin-top: -7px;
  background: url(img/arw_blk.svg) no-repeat;
  background-size: contain;
  content: "";
  transition: 0.3s;
}
.sidebar .cate ul li a:hover {
  background: #d9d9d9;
}
.sidebar .cate ul li a:hover::before {
  left: 18px;
}
.sidebar .cate ul li a .size {
  padding-left: 3px;
  font-size: 10px;
}
.sidebar .cate ul li:nth-child(2n-1) {
  background: #fff;
}
.sidebar .cate ul li:nth-child(2n) {
  background: #f8f8f8;
}

@media screen and (max-width: 768px) {
  .sidebar .bnrs {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .sidebar .bnrs div {
    flex-basis: 48.5%;
  }
  .sidebar .bnrs a img {
    width: 100%;
  }
  .sidebar .cate {
    display: none;
  }
}
/* /sideber */
/* main
-------------------- */
.main_contents {
  padding: 30px 0;
  background: #f0f0f0;
}
.main_contents > .wrap {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .main_contents > .wrap {
    display: block;
  }
}
.main_contents .contents {
  flex-basis: 670px;
  padding: 30px 45px;
  background: #fff;
  font-size: 13px;
  text-align: left;
}
@media (max-width: 768px) {
  .main_contents .contents {
    margin-bottom: 9vw;
    padding: 7vw 8vw 1vw;
  }
}
@media (max-width: 768px) {
  .main_contents .contents.keika {
    padding-bottom: 7vw;
  }
}
.main_contents .contents a {
  color: #204499;
  word-break: break-all;
}
.main_contents .contents a:hover {
  text-decoration: underline;
}
.main_contents .contents a[href*=pdf]::after, .main_contents .contents a[href*=doc]::after, .main_contents .contents a[href*=xls]::after, .main_contents .contents a[href*=ppt]::after {
  margin-bottom: -2px;
}
.main_contents .contents h1 {
  margin-bottom: 25px;
  padding-top: 4px;
  padding-bottom: 20px;
  border-bottom: 3px solid #325194;
  font-size: 24px;
  line-height: 32px;
}
@media (max-width: 768px) {
  .main_contents .contents h1 {
    padding-bottom: 5vw;
    font-size: 20px;
    line-height: 130%;
  }
}
.main_contents .contents h1.font23 {
  font-size: 23px;
}
@media (max-width: 768px) {
  .main_contents .contents h1.font23 {
    font-size: 19px;
  }
}
.main_contents .contents .contents_con {
  padding: 26px 0;
}
.main_contents .contents h2 {
  margin: 30px 0 18px -45px;
  padding-top: 3px;
  padding-left: 12px;
  border-left: 45px solid #325194;
  font-weight: bold;
  font-size: 18px;
  line-height: 120%;
}
@media (max-width: 768px) {
  .main_contents .contents h2 {
    margin: 8vw 0 5vw -30px;
    padding-left: 12px;
    border-left: 30px solid #325194;
    line-height: 120%;
  }
}
.main_contents .contents h2:first-child {
  margin-top: 0;
}
.main_contents .contents h3 {
  margin-top: 25px;
  margin-bottom: 20px;
  padding: 9px 12px 6px;
  border: 1px solid #dadde6;
  background: #f5f6fa;
  font-weight: bold;
  font-size: 16px;
}
@media (max-width: 768px) {
  .main_contents .contents h3 {
    margin-top: 6vw;
    margin-bottom: 5vw;
    padding: 2.5vw 4vw 2vw;
    font-size: 14px;
  }
}
.main_contents .contents h4 {
  margin-bottom: 12px;
  color: #1a2d57;
  font-size: 14px;
  line-height: 21px;
}
.main_contents .contents h5 {
  position: relative;
  margin-bottom: 8px;
  font-weight: bold;
  font-size: 13px;
}
.main_contents .contents h5::before {
  padding-right: 3px;
  color: #325194;
  content: "■";
}
.main_contents .contents h6 {
  margin-bottom: 12px;
}
.main_contents .contents p {
  min-height: 1em;
  margin-bottom: 15px;
  font-size: 13px;
  line-height: 22px;
}
@media (max-width: 768px) {
  .main_contents .contents p {
    margin-bottom: 4vw;
    font-size: 13px;
    line-height: 168%;
    text-align: left;
  }
}
.main_contents .contents p.has-small-font-size {
  font-size: 11px;
}
.main_contents .contents p.summery {
  margin-bottom: 22px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ddd;
  font-size: 15px;
}
.main_contents .contents p.has-text-align-right {
  text-align: right;
}
.main_contents .contents p.list {
  margin-left: 1.2em;
}
.main_contents .contents p.list a {
  display: inline-block;
  position: relative;
  padding: 5px 0 3px;
  color: #204499;
  transition: 0.3s;
}
.main_contents .contents p.list a::before {
  position: absolute;
  top: 50%;
  left: -13px;
  width: 7px;
  height: 11px;
  margin-top: -7px;
  background: url(img/arw_blk.svg) no-repeat;
  background-size: contain;
  content: "";
  transition: 0.3s;
}
.main_contents .contents p.list a:hover {
  opacity: 0.7;
}
.main_contents .contents p.list a:hover::before {
  left: -10px;
}
.main_contents .contents p.list a .size {
  padding-left: 3px;
  font-size: 10px;
}
.main_contents .contents p.list .summery_con {
  padding-bottom: 6px;
  font-size: 12px;
  line-height: 18px;
}
.main_contents .contents img {
  height: auto;
}
.main_contents .contents blockquote {
  margin-bottom: 20px;
  padding: 20px 20px 10px;
  border: 1px solid #d7dbe4;
  background: #fafafa;
}
.main_contents .contents .has-text-align-center {
  text-align: center;
}
.main_contents .contents .block-columns {
  display: flex;
  flex-wrap: nowrap;
  box-sizing: border-box;
  margin-bottom: 1.75em;
}
@media (max-width: 768px) {
  .main_contents .contents .block-columns {
    flex-wrap: wrap;
  }
}
.main_contents .contents .block-column {
  flex-grow: 1;
  flex-basis: 0;
  min-width: 0;
  margin-right: 20px;
  word-break: break-word;
  overflow-wrap: break-word;
}
@media (max-width: 768px) {
  .main_contents .contents .block-column {
    margin-right: 0;
  }
}
.main_contents .contents .block-column:last-child {
  margin-right: 0;
}
.main_contents .contents .block-gallery {
  margin: 2.5em 0;
}
.main_contents .contents .block-gallery.columns-2 .blocks-gallery-grid {
  justify-content: space-between;
  padding: 0;
}
@media (max-width: 768px) {
  .main_contents .contents .block-gallery.columns-2 .blocks-gallery-grid {
    display: block;
  }
}
.main_contents .contents .block-gallery.columns-2 .blocks-gallery-grid .blocks-gallery-item {
  flex-grow: unset;
  flex-basis: 48%;
  width: auto;
  margin: 0 0 1.5em 0;
}
.main_contents .contents .block-pullquote {
  padding: 0;
  text-align: left;
}
.main_contents .contents .block-pullquote.donate {
  padding: 0.6em 0 0.3em;
}
.main_contents .contents .block-pullquote.donate blockquote {
  max-width: none;
  margin: 0;
  padding: 10px;
  border: none;
  background: transparent;
  text-align: center;
}
@media (max-width: 768px) {
  .main_contents .contents .block-pullquote.donate blockquote p {
    font-size: unset;
    text-align: center;
  }
}
.main_contents .contents .block-pullquote.donate blockquote strong {
  display: block;
  margin-bottom: 0.4em;
  font-size: 22px;
}
.main_contents .contents .block-image {
  width: 70%;
  margin: 22px 0 35px;
}
@media (max-width: 768px) {
  .main_contents .contents .block-image {
    width: auto;
    margin: 5vw 0;
  }
}
.main_contents .contents .block-image.vertical {
  width: 40%;
}
@media (max-width: 768px) {
  .main_contents .contents .block-image.vertical {
    width: 60%;
    margin: 5vw auto;
  }
}
.main_contents .contents .block-image.size-large {
  width: 100%;
}
.main_contents .contents .block-file {
  margin-bottom: 12px;
}
.main_contents .contents .block-file a:last-child {
  display: none;
}
.main_contents .contents .block-file a:first-child {
  display: inline-block;
}
.main_contents .contents .block-media-text.alignwide {
  display: flex;
  margin-bottom: 25px;
}
.main_contents .contents .block-media-text.alignwide.has-media-on-the-right {
  flex-direction: row-reverse;
}
.main_contents .contents .block-media-text.alignwide.has-media-on-the-right figure {
  margin-right: 0;
  margin-left: 20px;
}
.main_contents .contents .block-media-text.alignwide.has-media-on-the-right figure img {
  width: 280px;
}
.main_contents .contents .block-media-text.alignwide figure {
  margin-right: 20px;
}
.main_contents .contents .block-media-text.alignwide figure img {
  width: 125px;
}
.main_contents .contents .block-media-text .block-media-text__content {
  grid-area: unset;
  width: 80%;
  word-break: unset;
}
.main_contents .contents .has-vivid-red-color {
  color: #e80000;
}
.main_contents .contents .bggry {
  margin-bottom: 20px;
  padding: 20px 20px 20px;
  border: 1px solid #d7dbe4;
  background: #fafafa;
}
.main_contents .contents .bggry a[href*=pdf]::after, .main_contents .contents .bggry a[href*=doc]::after, .main_contents .contents .bggry a[href*=xls]::after {
  margin-bottom: -2px;
}
.main_contents .contents ul, .main_contents .contents ol {
  margin-bottom: 5px;
  padding-left: 15px;
  line-height: 22px;
  list-style: revert;
}
.main_contents .contents ul.link, .main_contents .contents ol.link {
  list-style: none;
}
.main_contents .contents ul.link a, .main_contents .contents ol.link a {
  display: inline-block;
  position: relative;
  padding: 5px 0 3px;
  color: #204499;
  transition: 0.3s;
}
.main_contents .contents ul.link a::before, .main_contents .contents ol.link a::before {
  position: absolute;
  top: 50%;
  left: -13px;
  width: 7px;
  height: 11px;
  margin-top: -7px;
  background: url(img/arw_blk.svg) no-repeat;
  background-size: contain;
  content: "";
  transition: 0.3s;
}
.main_contents .contents ul.link a:hover, .main_contents .contents ol.link a:hover {
  opacity: 0.7;
}
.main_contents .contents ul.link a:hover::before, .main_contents .contents ol.link a:hover::before {
  left: -10px;
}
.main_contents .contents ul.link a .size, .main_contents .contents ol.link a .size {
  padding-left: 3px;
  font-size: 10px;
}
.main_contents .contents ul.link .summery_con, .main_contents .contents ol.link .summery_con {
  padding-bottom: 6px;
  font-size: 12px;
  line-height: 18px;
}
.main_contents .contents ul.square, .main_contents .contents ol.square {
  list-style: none;
}
.main_contents .contents ul.square li, .main_contents .contents ol.square li {
  position: relative;
  margin-bottom: 6px;
}
.main_contents .contents ul.square li::before, .main_contents .contents ol.square li::before {
  position: absolute;
  top: 0;
  left: -16px;
  color: #325194;
  content: "■";
}
.main_contents .contents ul.disc, .main_contents .contents ol.disc {
  list-style: none;
}
.main_contents .contents ul.disc li, .main_contents .contents ol.disc li {
  position: relative;
  margin-bottom: 6px;
}
.main_contents .contents ul.disc li::before, .main_contents .contents ol.disc li::before {
  position: absolute;
  top: 0;
  left: -16px;
  color: #325194;
  content: "・";
}
.main_contents .contents ul .exp, .main_contents .contents ol .exp {
  display: block;
  margin-top: -4px;
  padding-bottom: 5px;
  line-height: 20px;
}
.main_contents .contents ul.news, .main_contents .contents ol.news {
  padding-left: 0;
  list-style: none;
}
.main_contents .contents ul.news li, .main_contents .contents ol.news li {
  margin-bottom: 10px;
  padding: 4px 0 5px 15px;
  border-left: 3px solid #3a5c9c;
  font-weight: bold;
}
.main_contents .contents ul.news li.important_list, .main_contents .contents ol.news li.important_list {
  padding: 21px 15px 18px;
  font-size: 14px;
}
.main_contents .contents ul.news li p, .main_contents .contents ol.news li p {
  padding-bottom: 0;
  font-size: 13px;
  line-height: 21px;
}
.main_contents .contents ul.news li p.date, .main_contents .contents ol.news li p.date {
  margin-bottom: 0;
}
.main_contents .contents ul.news li p.cap, .main_contents .contents ol.news li p.cap {
  padding-top: 2px;
  font-weight: normal;
  font-size: 12px;
  line-height: 17px;
}
.main_contents .contents ul.news li p.txt, .main_contents .contents ol.news li p.txt {
  margin-bottom: 0;
}
.main_contents .contents ul.news li .imprtant, .main_contents .contents ol.news li .imprtant {
  margin-right: 10px;
  padding: 1px 5px 0;
  background: #b33920;
  color: #fff;
  font-weight: normal;
  font-size: 12px;
}
.main_contents .contents ul.news li span.news, .main_contents .contents ol.news li span.news {
  margin-right: 10px;
  padding: 1px 5px 0;
  background: #5d388a;
  color: #fff;
  font-size: 12px;
}
.main_contents .contents ul.news li .important, .main_contents .contents ol.news li .important {
  margin-right: 10px;
  padding: 1px 5px 0;
  background: #ca0000;
  color: #fff;
  font-size: 13px;
}
.main_contents .contents ul.anken_list, .main_contents .contents ol.anken_list {
  list-style: none;
}
.main_contents .contents ul.anken_list li, .main_contents .contents ol.anken_list li {
  margin-bottom: 7px;
  padding-left: 30px;
  line-height: 140%;
  text-indent: -30px;
}
.main_contents .contents ul.year-list, .main_contents .contents ol.year-list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 25px;
  padding-top: 12px;
  border-top: 1px solid #3a5c9c;
  list-style: none;
}
.main_contents .contents ul.year-list li, .main_contents .contents ol.year-list li {
  padding-right: 25px;
}
@media (max-width: 768px) {
  .main_contents .contents ul.year-list li, .main_contents .contents ol.year-list li {
    flex-basis: 25%;
    padding-right: 0;
  }
}
.main_contents .contents .summery ul {
  margin-bottom: 20px;
  padding-bottom: 5px;
  border-bottom: 1px solid #ddd;
  font-size: 15px;
}
.main_contents .contents .summery ul li {
  padding-bottom: 8px;
}
.main_contents .contents .nobd table td {
  min-width: 70px;
  padding: 5px 20px 7px;
  border: none;
}
.main_contents .contents .block-table {
  width: 100%;
  margin-bottom: 20px;
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.donate table {
    display: table;
  }
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.donate table tr {
    background: transparent;
  }
}
.main_contents .contents .block-table.donate table tr:nth-child(2n) {
  background: #f0f0f0;
}
.main_contents .contents .block-table.donate table td {
  padding: 12px 13px 10px;
  font-size: 12px;
  line-height: 21px;
  text-align: left;
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.donate table td {
    padding: 0 9px !important;
    width: auto !important;
    display: flex;
    height: 45px;
    align-items: center;
  }
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.donate table td.pc {
    display: none !important;
  }
}
.main_contents .contents .block-table.personal-bronz-table {
  border-bottom: none;
}
.main_contents .contents .block-table.personal-bronz-table table {
  /*
  tr {
      &:last-child {
          background: transparent;
          td {
              &:nth-child(1), &:nth-child(2) {
                  background: #f0f0f0;

                  @include sp {
                      background: transparent;
                  }
              }
              &:nth-child(3), &:nth-child(4), &:nth-child(5) {
                  border: none;

                  @include sp {
                      display: none;
                  }
              }
          }
      }
  }
  */
}
.main_contents .contents .block-table.personal-bronz-table table td {
  padding: 12px 9px 10px;
  font-size: 11px;
  letter-spacing: -0.05em;
}
.main_contents .contents .block-table.thl td:first-child {
  background: #f5f6fa;
}
.main_contents .contents .block-table.tht_blu tr:first-child td {
  background-color: #465983;
  color: #fff;
  font-weight: bold;
}
.main_contents .contents .block-table.small td {
  min-width: 0;
  padding: 7px 10px 6px;
  font-size: 10px;
  line-height: 14px;
}
.main_contents .contents .block-table.small td .man {
  color: #36f;
}
.main_contents .contents .block-table.small td .woman {
  color: #f00;
}
.main_contents .contents .block-table.harrassement_contact td {
  padding: 6px 3px 6px 8px;
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.harrassement_contact td {
    padding: 3px;
  }
}
.main_contents .contents .block-table.harrassement_contact td:nth-child(1) {
  width: 11%;
  padding-right: 3px;
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.harrassement_contact td:nth-child(1) {
    width: auto;
  }
}
.main_contents .contents .block-table.harrassement_contact td:nth-child(3) {
  width: 14%;
  padding-right: 3px;
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.harrassement_contact td:nth-child(3) {
    width: auto;
  }
}
.main_contents .contents .block-table.harrassement_contact td:nth-child(4) {
  width: 7%;
  padding-right: 3px;
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.harrassement_contact td:nth-child(4) {
    width: auto;
  }
}
.main_contents .contents .block-table.harrassement_contact td:nth-child(5) {
  width: 21%;
  padding-right: 3px;
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.harrassement_contact td:nth-child(5) {
    width: auto;
  }
}
.main_contents .contents .block-table.harrassement_contact td:nth-child(6) {
  width: 19%;
  padding-right: 3px;
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.harrassement_contact td:nth-child(6) {
    width: auto;
  }
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.anken_table tr, .main_contents .contents .block-table.publicoffer tr {
    display: block;
    margin-bottom: 15px;
  }
}
.main_contents .contents .block-table.anken_table th, .main_contents .contents .block-table.publicoffer th {
  padding: 11px 11px 8px;
  border: 1px solid #d7dbe4;
  background-color: #465983;
  color: #fff;
  font-weight: bold;
  font-size: 13px;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.anken_table th, .main_contents .contents .block-table.publicoffer th {
    display: none;
  }
}
.main_contents .contents .block-table.anken_table td, .main_contents .contents .block-table.publicoffer td {
  padding: 8px 11px 4px;
  font-size: 13px;
  vertical-align: middle;
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.anken_table td, .main_contents .contents .block-table.publicoffer td {
    display: block;
    font-size: 12px;
  }
}
.main_contents .contents .block-table.anken_table td.itembg1, .main_contents .contents .block-table.publicoffer td.itembg1 {
  background: #f5f6fa;
  white-space: nowrap;
}
.main_contents .contents .block-table.anken_table td.itembg2, .main_contents .contents .block-table.publicoffer td.itembg2 {
  background: #eee;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .main_contents .contents .block-table.publicoffer td:first-child {
    padding: 11px 11px 8px;
    border: 1px solid #d7dbe4;
    background-color: #465983;
    color: #fff;
    font-weight: bold;
    font-size: 12px;
    text-align: center;
  }
}
.main_contents .contents .block-table table {
  width: 100%;
}
.main_contents .contents .block-table td {
  min-width: 0;
  padding: 12px 20px 10px;
  border: 1px solid #d7dbe4;
  font-size: 14px;
  line-height: 21px;
}
.main_contents .contents .block-table td.col {
  background: #f5f6fa;
}
.main_contents .contents.spap .publicoffer th {
  padding: 8px 5px 6px;
  font-size: 12px;
  line-height: 15px;
}
.main_contents .contents.spap .publicoffer td {
  padding: 6px 3px 4px 7px;
  font-size: 12px;
  line-height: 17px;
}
.main_contents .contents.spap .publicoffer td p {
  padding-bottom: 1px;
  font-size: 12px;
  line-height: 17px;
}
.main_contents .contents.keika ul {
  padding-left: 0;
}
.main_contents .contents.keika ul.specific_list {
  position: relative;
  margin-left: 1.5em;
  padding-left: 0;
}
.main_contents .contents.keika ul.specific_list li::before {
  position: absolute;
  left: -1.5em;
  content: "・";
}
.main_contents .contents.keika ul li {
  margin-bottom: 10px;
  padding-left: 0;
  line-height: 135%;
  text-indent: 0;
}
.main_contents .contents .chairperson {
  width: 146px;
  padding-right: 30px;
  text-align: center;
}
@media (max-width: 768px) {
  .main_contents .contents .chairperson {
    margin: 0 auto;
  }
}
.main_contents .contents .chairperson + div {
  flex: 1;
}
.main_contents .contents .chairperson .img {
  padding-bottom: 0;
  line-height: 0;
}
.main_contents .contents .chairperson img {
  width: 150px;
}
.main_contents .contents .chairperson .role {
  margin: 5px 0;
  padding: 3px 0;
  font-size: 12px;
  line-height: 16px;
}
@media (max-width: 768px) {
  .main_contents .contents .chairperson .role {
    text-align: center;
  }
}
.main_contents .contents .chairperson .name {
  margin-bottom: 20px;
  font-size: 16px;
}
@media (max-width: 768px) {
  .main_contents .contents .chairperson .name {
    text-align: center;
  }
}
.main_contents .contents .donate p {
  margin-bottom: 0;
}
.main_contents .contents .block-button__link {
  display: block;
  width: -moz-max-content;
  width: max-content;
  min-width: 110px;
  margin: 1em auto;
  padding: 11px 30px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .main_contents .contents .nobd table td {
    min-width: 40px;
  }
  .main_contents .contents table {
    display: block;
    overflow-x: auto;
  }
  .main_contents .contents table td {
    min-width: 70px;
    padding: 12px 10px 10px;
    font-size: 12px;
    line-height: 18px;
  }
  .main_contents .contents .block-media-text.alignwide {
    display: block;
  }
  .main_contents .contents .block-media-text.alignwide.has-media-on-the-right figure {
    margin-right: 0;
    margin-left: 0;
  }
  .main_contents .contents .block-media-text.alignwide.has-media-on-the-right figure img {
    width: 100%;
  }
}
/* /main_contents */
/* breadcrumb
-------------------- */
.breadcrumb {
  background: #fff;
}
.breadcrumb ul {
  display: flex;
  justify-content: flex-start;
  padding: 11px 0 10px;
}
.breadcrumb ul li {
  position: relative;
  padding-right: 15px;
  padding-left: 29px;
  font-size: 12px;
}
.breadcrumb ul li::before, .breadcrumb ul li::after {
  position: absolute;
  top: 50%;
  content: "";
}
.breadcrumb ul li::before {
  right: -26px;
  z-index: 2;
  margin-top: -16px;
  border: 16px solid transparent;
  border-left: 16px solid #fff;
}
.breadcrumb ul li::after {
  position: absolute;
  top: 50%;
  right: -30px;
  z-index: 1;
  margin-top: -18px;
  border: 18px solid transparent;
  border-left: 18px solid #f0f0f0;
  content: "";
}
.breadcrumb ul li a:hover {
  text-decoration: underline;
}
.breadcrumb ul li:first-child {
  padding-left: 0;
}
.breadcrumb ul li:last-child {
  font-weight: bold;
}
.breadcrumb ul li:last-child::before, .breadcrumb ul li:last-child::after {
  display: none;
}

.en .breadcrumb {
  border-top: 1px solid #f0f0f0;
}

@media screen and (max-width: 768px) {
  .breadcrumb {
    display: none;
  }
}
/* footer
-------------------- */
footer .mono {
  padding-top: 30px;
  background: #d4d4d4;
  color: #333;
  text-align: left;
}
footer .mono .up > div {
  flex-basis: 23%;
}
footer .mono section {
  padding-bottom: 15px;
}
footer .mono a {
  display: inline-block;
  color: #444;
  transition: 0.3s;
}
footer .mono a:hover {
  transform: translateX(2px);
  opacity: 0.8;
}
footer .mono h6 {
  padding-bottom: 10px;
  font-size: 14px;
}
footer .mono p {
  padding-bottom: 6px;
  font-size: 12px;
  line-height: 16px;
}
footer .mono .size {
  font-size: 10px;
}
footer .di {
  padding: 8px 0;
  background: #333;
  color: #fff;
}
@media (max-width: 768px) {
  footer .di {
    padding: 12px 0;
  }
}
footer .di p {
  font-size: 12px;
  text-align: right;
}
@media (max-width: 768px) {
  footer .di p {
    line-height: 150%;
    letter-spacing: 0.06em;
  }
}
footer .btm {
  font-size: 13px;
}
footer .btm span::before {
  padding-right: 5px;
  content: "｜";
}
footer .btm span:last-child::after {
  padding-left: 5px;
  content: "｜";
}
footer .logo img {
  transform: translateY(-10px);
  width: 210px;
}

.en footer .mono {
  padding-top: 20px;
  padding-bottom: 8px;
}
.en footer .mono p {
  font-size: 11px;
  text-align: left;
}
.en footer .mono .notice {
  flex-basis: 60%;
}
@media (max-width: 768px) {
  .en footer .mono .notice {
    margin: -18px 0 26px;
  }
}
.en footer .btm {
  padding-top: 5px;
  padding-bottom: 10px;
  text-align: left;
}
.en footer .logo img {
  transform: translateY(-5px);
}

.cn footer .logo img {
  transform: translateY(-10px);
}

@media screen and (max-width: 768px) {
  footer .mono {
    padding-top: 20px;
  }
  footer .mono .up {
    display: none;
  }
  footer .mono .links {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    margin-bottom: 14px;
  }
  footer .mono .links span {
    display: block;
    padding: 0 0 10px;
    text-align: center;
  }
  footer .mono .links span::before {
    padding-right: 1px;
  }
  footer .mono .links span:first-child::before {
    content: "";
  }
  footer .mono .links span:last-child::after {
    content: "";
  }
  footer .mono .logo {
    padding-bottom: 10px;
    text-align: center;
  }
  footer .mono .logo img {
    width: 200px;
  }
  footer .btm {
    width: 325px;
    margin: 0 auto;
    font-size: 11px;
  }
  footer .di p {
    font-size: 10px;
    text-align: center;
  }
}
.en footer .btm {
  width: 100%;
}

/* --------------------------------------------------------------
>>> 高額寄付者
---------------------------------------------------------------- */
.block-pullquote.donate.bronze {
  background: linear-gradient(to right, #86603e, #b08871, #dac0a9, #976c4e, #845c30);
}
.block-pullquote.donate.gold {
  background: linear-gradient(to right, #b57e10, #cb9d33, #fff1a2, #c6962b);
}
.block-pullquote.donate.silver {
  background: linear-gradient(to right, #c6cacf, #989da3, #bbb, #9a9ea5, #efefef, #cacac7);
}
.block-pullquote.donate a {
  color: #fff;
}
.block-pullquote.donate blockquote {
  color: #fff;
  text-shadow: 0 0 20px rgba(0, 0, 0, 0.7);
}

.largeDonationNav {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #ccc;
}
.largeDonationNav .item {
  flex-basis: 32.5%;
  padding-bottom: 2px;
}
@media (max-width: 768px) {
  .largeDonationNav .item {
    flex-basis: 100%;
    margin-bottom: 0.7em;
  }
}
.largeDonationNav .item .ttl {
  display: block;
  padding: 0.8em 0 0.5em;
  color: #fff;
  font-weight: 700;
  font-size: 18px;
  text-align: center;
  text-shadow: 0 0 20px rgba(0, 0, 0, 0.7);
}
.largeDonationNav .item a {
  display: block;
  margin: 1px 9px 5px;
  color: #fff;
  text-align: center;
  text-shadow: 0 0 20px rgba(0, 0, 0, 0.7);
}
.largeDonationNav .item a .bp {
  display: block;
  font-size: 12px;
}
.largeDonationNav .item a .cap {
  display: block;
  padding: 0.5em 0 0.45em;
  background: #fff;
  font-size: 11px;
  text-shadow: none;
}
@media (max-width: 768px) {
  .largeDonationNav .item a .cap {
    font-size: 10px;
  }
}
.largeDonationNav .item a .arw {
  display: inline-block;
  position: relative;
  width: 10px;
  height: 9px;
  margin-left: 0.5em;
}
.largeDonationNav .item a .arw::before, .largeDonationNav .item a .arw::after {
  position: absolute;
  top: 65%;
  left: 50%;
  width: 7px;
  height: 1px;
  content: "";
}
.largeDonationNav .item a .arw::before {
  transform: translate(-70%, -50%) rotate(45deg);
}
.largeDonationNav .item a .arw::after {
  transform: translate(-9%, -50%) rotate(-45deg);
}
.largeDonationNav .bronze {
  background: linear-gradient(to right, #86603e, #b08871, #dac0a9, #976c4e, #845c30);
}
.largeDonationNav .bronze a .cap {
  color: #86603e;
}
.largeDonationNav .bronze a .arw::before, .largeDonationNav .bronze a .arw::after {
  background: #86603e;
}
.largeDonationNav .gold {
  background: linear-gradient(to right, #b57e10, #cb9d33, #fff1a2, #c6962b);
}
.largeDonationNav .gold a .cap {
  color: #b57e10;
}
.largeDonationNav .gold a .arw::before, .largeDonationNav .gold a .arw::after {
  background: #b57e10;
}
.largeDonationNav .silver {
  background: linear-gradient(to right, #c6cacf, #989da3, #bbb, #9a9ea5, #efefef, #cacac7);
}
.largeDonationNav .silver a .cap {
  color: #989da3;
}
.largeDonationNav .silver a .arw::before, .largeDonationNav .silver a .arw::after {
  background: #989da3;
}